@flighthq/displayobject 0.2.0 → 0.2.1-next.410.a23f189

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"displayObject.d.ts","sourceRoot":"","sources":["../src/displayObject.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,aAAa,EACb,wBAAwB,EACxB,oBAAoB,EACpB,2BAA2B,EAC3B,IAAI,EACJ,SAAS,EACT,OAAO,EAEP,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAMzB,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAMnG;AAED,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,GAAG,aAAa,CAE7F;AAED,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,oBAAoB,EACvE,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,EAC1C,UAAU,CAAC,EAAE,wBAAwB,EACrC,iCAAiC,CAAC,EAAE,2BAA2B,CAAC,CAAC,CAAC,GACjE,aAAa,CAaf;AAED,wBAAgB,0BAA0B,CACxC,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAC3D,oBAAoB,CAMtB;AAID,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,SAAS,UAAU,EAAE,GAAG,IAAI,CAE9G;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAEvG;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,aAAa,CAEpE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,GAAG,IAAI,CAG1F;AAMD,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,GAAG,IAAI,CAKjH;AAKD,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,aAAa,EACrB,cAAc,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI,GAC9C,IAAI,CAKN"}
1
+ {"version":3,"file":"displayObject.d.ts","sourceRoot":"","sources":["../src/displayObject.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,aAAa,EACb,wBAAwB,EACxB,oBAAoB,EACpB,2BAA2B,EAC3B,IAAI,EACJ,SAAS,EACT,OAAO,EAEP,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAMzB,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAMnG;AAED,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,GAAG,aAAa,CAE7F;AAED,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,oBAAoB,EACvE,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,EAC1C,UAAU,CAAC,EAAE,wBAAwB,EACrC,iCAAiC,CAAC,EAAE,2BAA2B,CAAC,CAAC,CAAC,GACjE,aAAa,CAcf;AAED,wBAAgB,0BAA0B,CACxC,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAC3D,oBAAoB,CAOtB;AAID,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,SAAS,UAAU,EAAE,GAAG,IAAI,CAE9G;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAEvG;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,aAAa,CAEpE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,GAAG,IAAI,CAG1F;AAMD,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,GAAG,IAAI,CAKjH;AAKD,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,aAAa,EACrB,cAAc,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI,GAC9C,IAAI,CAKN"}
@@ -1,6 +1,6 @@
1
1
  import { COLOR_ADJUSTMENT_CHANNEL_MIXING, COLOR_ADJUSTMENT_NONE, createColorTransformAdjustment, resolveColorAdjustmentsColorTransform, } from '@flighthq/adjustments';
2
2
  import { createColorTransform } from '@flighthq/materials';
3
- import { createNode, createNodeRuntime, getNodeRuntime, initAppearanceTrait, initBoundsRectangleRuntimeTrait, initBoundsRectangleTrait, initClipTrait, initMaterialTrait, initTransform2DRuntimeTrait, initTransform2DTrait, invalidateNodeAppearance, } from '@flighthq/node';
3
+ import { createNode, createNodeRuntime, getNodeRuntime, initAppearanceTrait, initBlendModeTrait, initBoundsRectangleRuntimeTrait, initBoundsRectangleTrait, initClipTrait, initMaterialTrait, initTransform2DRuntimeTrait, initTransform2DTrait, invalidateNodeAppearance, } from '@flighthq/node';
4
4
  import { DisplayObjectKind, DisplayObjectTraitsKey } from '@flighthq/types';
5
5
  // Appends one pointwise color adjustment to this object's stack (creating the stack if absent), re-fuses
6
6
  // the resolved cache, and invalidates appearance so the render walk hands the fold the new value.
@@ -20,6 +20,7 @@ export function createDisplayObjectGeneric(kind, obj, createData, createDisplayO
20
20
  initTransform2DTrait(out, obj);
21
21
  initBoundsRectangleTrait(out, obj);
22
22
  initAppearanceTrait(out, obj);
23
+ initBlendModeTrait(out, obj);
23
24
  initMaterialTrait(out, obj);
24
25
  initClipTrait(out, obj);
25
26
  return out;
@@ -27,6 +28,7 @@ export function createDisplayObjectGeneric(kind, obj, createData, createDisplayO
27
28
  export function createDisplayObjectRuntime(methods) {
28
29
  const out = createNodeRuntime(methods);
29
30
  out.traits = DisplayObjectTraitsKey;
31
+ out.stage = null;
30
32
  initTransform2DRuntimeTrait(out, methods);
31
33
  initBoundsRectangleRuntimeTrait(out, methods);
32
34
  return out;
@@ -1 +1 @@
1
- {"version":3,"file":"displayObject.js","sourceRoot":"","sources":["../src/displayObject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"displayObject.js","sourceRoot":"","sources":["../src/displayObject.ts"],"names":[],"mappings":"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"}
package/dist/stage.d.ts CHANGED
@@ -1,7 +1,5 @@
1
- import type { DisplayObject, Node, PartialNode, Rectangle, Stage, StageData, StageRuntime, StageSignals } from '@flighthq/types';
2
- export declare function computeStageLocalBoundsRectangle(out: Rectangle, source: Readonly<Node>): void;
3
- export declare function createStage(obj?: Readonly<PartialNode<Stage>>): Stage;
4
- export declare function createStageData(data?: Readonly<Partial<StageData>>): StageData;
1
+ import type { DisplayObject, Stage, StageRuntime, StageSignals } from '@flighthq/types';
2
+ export declare function createStage(obj?: Readonly<Partial<Pick<Stage, 'align' | 'color' | 'scaleMode' | 'stageHeight' | 'stageWidth'>>>): Stage;
5
3
  export declare function createStageRuntime(): StageRuntime;
6
4
  export declare function createStageSignals(): StageSignals;
7
5
  export declare function enableStageSignals(source: Stage): StageSignals;
@@ -1 +1 @@
1
- {"version":3,"file":"stage.d.ts","sourceRoot":"","sources":["../src/stage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EAEb,IAAI,EACJ,WAAW,EACX,SAAS,EACT,KAAK,EACL,SAAS,EACT,YAAY,EACZ,YAAY,EACb,MAAM,iBAAiB,CAAC;AAKzB,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAI7F;AAED,wBAAgB,WAAW,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAErE;AAED,wBAAgB,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS,CAM9E;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAIjD;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAMjD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,KAAK,GAAG,YAAY,CAG9D;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI,CAGnF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAE/E;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,YAAY,GAAG,IAAI,CAE5E;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAO/E"}
1
+ {"version":3,"file":"stage.d.ts","sourceRoot":"","sources":["../src/stage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EAGb,KAAK,EACL,YAAY,EACZ,YAAY,EACb,MAAM,iBAAiB,CAAC;AAUzB,wBAAgB,WAAW,CACzB,GAAG,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,GACnG,KAAK,CAQP;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAKjD;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAMjD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,KAAK,GAAG,YAAY,CAG9D;AAID,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,IAAI,CAGnF;AAID,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAE/E;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,YAAY,GAAG,IAAI,CAG5E;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAM/E"}
package/dist/stage.js CHANGED
@@ -1,27 +1,27 @@
1
- import { getNodeRoot, invalidateNodeLocalBounds } from '@flighthq/node';
1
+ import { createViewport, getNodeRoot, getNodeRuntime } from '@flighthq/node';
2
2
  import { createSignal, emitSignal } from '@flighthq/signals';
3
- import { EntityRuntimeKey, StageKind } from '@flighthq/types';
4
- import { createDisplayObjectGeneric, createDisplayObjectRuntime, getDisplayObjectRuntime } from './displayObject';
5
- export function computeStageLocalBoundsRectangle(out, source) {
6
- const data = source.data;
7
- out.width = data.stageWidth;
8
- out.height = data.stageHeight;
9
- }
3
+ import { EntityRuntimeKey } from '@flighthq/types';
4
+ import { createDisplayObject } from './displayObject';
5
+ // Allocates a Stage: a presentation-context Entity that owns a display-object `root` (allocated here), not a
6
+ // node in the tree. Composes createViewport for the shared root/align/scaleMode base, then layers on the
7
+ // stage-only view dimensions and background color. The entity runtime stays unbound (createViewport →
8
+ // createEntity); the root's runtime carries a back-pointer so getDisplayObjectStage resolves membership by a
9
+ // lazy walk to the root.
10
10
  export function createStage(obj) {
11
- return createDisplayObjectGeneric(StageKind, obj, createStageData, createStageRuntime);
11
+ const root = createDisplayObject();
12
+ const stage = createViewport({ align: obj?.align, root, scaleMode: obj?.scaleMode });
13
+ stage.color = obj?.color ?? null;
14
+ stage.stageHeight = obj?.stageHeight ?? 550;
15
+ stage.stageWidth = obj?.stageWidth ?? 400;
16
+ getNodeRuntime(root).stage = stage;
17
+ return stage;
12
18
  }
13
- export function createStageData(data) {
19
+ export function createStageRuntime() {
14
20
  return {
15
- color: data?.color ?? null,
16
- stageHeight: data?.stageHeight ?? 550,
17
- stageWidth: data?.stageWidth ?? 400,
21
+ binding: null,
22
+ stageSignals: null,
18
23
  };
19
24
  }
20
- export function createStageRuntime() {
21
- const out = createDisplayObjectRuntime(defaultMethods);
22
- out.stageSignals = null;
23
- return out;
24
- }
25
25
  export function createStageSignals() {
26
26
  return {
27
27
  onFullscreenChanged: createSignal(),
@@ -30,30 +30,39 @@ export function createStageSignals() {
30
30
  };
31
31
  }
32
32
  export function enableStageSignals(source) {
33
- const runtime = source[EntityRuntimeKey];
33
+ const runtime = ensureStageRuntime(source);
34
34
  return (runtime.stageSignals ??= createStageSignals());
35
35
  }
36
+ // Resolves the Stage a display object belongs to, or null when its root is not owned by a stage. Walks to the
37
+ // root (a cheap parent walk) and reads the stage back-pointer the root runtime carries.
36
38
  export function getDisplayObjectStage(source) {
37
39
  const root = getNodeRoot(source);
38
- return root.kind === StageKind ? root : null;
40
+ return getNodeRuntime(root).stage;
39
41
  }
42
+ // The stage's runtime, allocated on first access (the entity is created unbound). Callers that only read
43
+ // enabled signals should use getStageSignals, which does not allocate.
40
44
  export function getStageRuntime(source) {
41
- return getDisplayObjectRuntime(source);
45
+ return ensureStageRuntime(source);
42
46
  }
43
47
  export function getStageSignals(source) {
44
- return source[EntityRuntimeKey].stageSignals;
48
+ const runtime = source[EntityRuntimeKey];
49
+ return runtime?.stageSignals ?? null;
45
50
  }
46
51
  export function setStageSize(source, width, height) {
47
- if (source.data.stageWidth === width && source.data.stageHeight === height)
52
+ if (source.stageWidth === width && source.stageHeight === height)
48
53
  return;
49
- source.data.stageWidth = width;
50
- source.data.stageHeight = height;
51
- invalidateNodeLocalBounds(source);
54
+ source.stageWidth = width;
55
+ source.stageHeight = height;
52
56
  const runtime = source[EntityRuntimeKey];
53
- if (runtime.stageSignals)
57
+ if (runtime?.stageSignals)
54
58
  emitSignal(runtime.stageSignals.onResize);
55
59
  }
56
- const defaultMethods = {
57
- computeLocalBoundsRectangle: computeStageLocalBoundsRectangle,
58
- };
60
+ function ensureStageRuntime(source) {
61
+ const existing = source[EntityRuntimeKey];
62
+ if (existing !== undefined)
63
+ return existing;
64
+ const runtime = createStageRuntime();
65
+ source[EntityRuntimeKey] = runtime;
66
+ return runtime;
67
+ }
59
68
  //# sourceMappingURL=stage.js.map
package/dist/stage.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"stage.js","sourceRoot":"","sources":["../src/stage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAY7D,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAElH,MAAM,UAAU,gCAAgC,CAAC,GAAc,EAAE,MAAsB;IACrF,MAAM,IAAI,GAAI,MAAgB,CAAC,IAAI,CAAC;IACpC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAC5B,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAkC;IAC5D,OAAO,0BAA0B,CAAC,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,kBAAkB,CAAU,CAAC;AAClG,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAmC;IACjE,OAAO;QACL,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI;QAC1B,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,GAAG;QACrC,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,GAAG;KACpC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,0BAA0B,CAAC,cAAc,CAAiB,CAAC;IACvE,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC;IACxB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,mBAAmB,EAAE,YAAY,EAAE;QACnC,oBAAoB,EAAE,YAAY,EAAE;QACpC,QAAQ,EAAE,YAAY,EAAE;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAa;IAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAiB,CAAC;IACzD,OAAO,CAAC,OAAO,CAAC,YAAY,KAAK,kBAAkB,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAA+B;IACnE,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAE,IAAc,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAuB;IACrD,OAAO,uBAAuB,CAAC,MAAM,CAAiB,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAuB;IACrD,OAAQ,MAAM,CAAC,gBAAgB,CAAkB,CAAC,YAAY,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAa,EAAE,KAAa,EAAE,MAAc;IACvE,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM;QAAE,OAAO;IACnF,MAAM,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC/B,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;IACjC,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAiB,CAAC;IACzD,IAAI,OAAO,CAAC,YAAY;QAAE,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,cAAc,GAAqC;IACvD,2BAA2B,EAAE,gCAAgC;CAC9D,CAAC"}
1
+ {"version":3,"file":"stage.js","sourceRoot":"","sources":["../src/stage.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/displayobject",
3
- "version": "0.2.0",
3
+ "version": "0.2.1-next.410.a23f189",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/flighthq/flight.git",
@@ -32,12 +32,12 @@
32
32
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
33
33
  },
34
34
  "dependencies": {
35
- "@flighthq/adjustments": "0.2.0",
36
- "@flighthq/geometry": "0.2.0",
37
- "@flighthq/materials": "0.2.0",
38
- "@flighthq/node": "0.2.0",
39
- "@flighthq/signals": "0.2.0",
40
- "@flighthq/types": "0.2.0"
35
+ "@flighthq/adjustments": "0.2.1-next.410.a23f189",
36
+ "@flighthq/geometry": "0.2.1-next.410.a23f189",
37
+ "@flighthq/materials": "0.2.1-next.410.a23f189",
38
+ "@flighthq/node": "0.2.1-next.410.a23f189",
39
+ "@flighthq/signals": "0.2.1-next.410.a23f189",
40
+ "@flighthq/types": "0.2.1-next.410.a23f189"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@flighthq/entity": "*",
package/src/stage.test.ts CHANGED
@@ -1,14 +1,10 @@
1
- import { createRectangle } from '@flighthq/geometry';
2
1
  import { addNodeChild } from '@flighthq/node';
3
2
  import { connectSignal } from '@flighthq/signals';
4
- import type { Node, PartialNode, Stage } from '@flighthq/types';
5
- import { StageKind } from '@flighthq/types';
3
+ import type { Stage } from '@flighthq/types';
6
4
 
7
5
  import { createDisplayObject } from './displayObject';
8
6
  import {
9
- computeStageLocalBoundsRectangle,
10
7
  createStage,
11
- createStageData,
12
8
  createStageRuntime,
13
9
  createStageSignals,
14
10
  enableStageSignals,
@@ -18,16 +14,6 @@ import {
18
14
  setStageSize,
19
15
  } from './stage';
20
16
 
21
- describe('computeStageLocalBoundsRectangle', () => {
22
- it('sets out dimensions from stageWidth and stageHeight', () => {
23
- const stage = createStage({ data: { stageWidth: 800, stageHeight: 600 } });
24
- const out = createRectangle();
25
- computeStageLocalBoundsRectangle(out, stage as unknown as Node);
26
- expect(out.width).toBe(800);
27
- expect(out.height).toBe(600);
28
- });
29
- });
30
-
31
17
  describe('createStage', () => {
32
18
  let stage: Stage;
33
19
 
@@ -36,58 +22,31 @@ describe('createStage', () => {
36
22
  });
37
23
 
38
24
  it('initializes default values', () => {
39
- expect(stage.data.color).toBe(null);
40
- expect(stage.data.stageHeight).toBe(550);
41
- expect(stage.data.stageWidth).toBe(400);
42
- expect(stage.kind).toStrictEqual(StageKind);
43
- });
44
-
45
- it('allows pre-defined values', () => {
46
- const base: PartialNode<Stage> = {
47
- data: {
48
- color: 0xff0000ff,
49
- stageHeight: 1000,
50
- stageWidth: 2000,
51
- },
52
- };
53
- const obj = createStage(base);
54
- const data = base.data!;
55
- expect(obj.data.color).toStrictEqual(data.color);
56
- expect(obj.data.stageHeight).toStrictEqual(data.stageHeight);
57
- expect(obj.data.stageWidth).toStrictEqual(data.stageWidth);
58
- });
59
-
60
- it('returns a new object for better hidden-class performance', () => {
61
- const base = {};
62
- const obj = createStage(base);
63
- expect(obj).not.toStrictEqual(base);
25
+ expect(stage.color).toBe(null);
26
+ expect(stage.stageHeight).toBe(550);
27
+ expect(stage.stageWidth).toBe(400);
28
+ expect(stage.align).toBe('topleft');
29
+ expect(stage.scaleMode).toBe('noscale');
64
30
  });
65
- });
66
31
 
67
- describe('createStageData', () => {
68
- it('returns default values', () => {
69
- const data = createStageData();
70
- expect(data.stageWidth).toBe(400);
71
- expect(data.stageHeight).toBe(550);
72
- expect(data.color).toBe(null);
32
+ it('allocates a display-object root the stage points back to', () => {
33
+ expect(stage.root).toBeDefined();
34
+ expect(getDisplayObjectStage(stage.root)).toBe(stage);
73
35
  });
74
36
 
75
37
  it('allows pre-defined values', () => {
76
- const data = createStageData({ stageWidth: 1920, stageHeight: 1080 });
77
- expect(data.stageWidth).toBe(1920);
78
- expect(data.stageHeight).toBe(1080);
38
+ const obj = createStage({ color: 0xff0000ff, stageHeight: 1000, stageWidth: 2000 });
39
+ expect(obj.color).toStrictEqual(0xff0000ff);
40
+ expect(obj.stageHeight).toStrictEqual(1000);
41
+ expect(obj.stageWidth).toStrictEqual(2000);
79
42
  });
80
43
  });
81
44
 
82
45
  describe('createStageRuntime', () => {
83
- it('returns a non-null runtime', () => {
46
+ it('returns a non-null runtime with stageSignals initialized to null', () => {
84
47
  const runtime = createStageRuntime();
85
48
  expect(runtime).not.toBeNull();
86
- });
87
-
88
- it('uses computeStageLocalBoundsRectangle', () => {
89
- const runtime = createStageRuntime();
90
- expect(runtime.computeLocalBoundsRectangle).toStrictEqual(computeStageLocalBoundsRectangle);
49
+ expect(runtime.stageSignals).toBeNull();
91
50
  });
92
51
  });
93
52
 
@@ -126,17 +85,17 @@ describe('getDisplayObjectStage', () => {
126
85
  expect(getDisplayObjectStage(obj)).toBeNull();
127
86
  });
128
87
 
129
- it('returns null when the root is not a Stage', () => {
88
+ it('returns null when the root is not owned by a Stage', () => {
130
89
  const root = createDisplayObject();
131
90
  const child = createDisplayObject();
132
91
  addNodeChild(root, child);
133
92
  expect(getDisplayObjectStage(child)).toBeNull();
134
93
  });
135
94
 
136
- it('returns the Stage when it is the root', () => {
95
+ it('returns the Stage when a child is added under its root', () => {
137
96
  const stage = createStage();
138
97
  const child = createDisplayObject();
139
- addNodeChild(stage, child);
98
+ addNodeChild(stage.root, child);
140
99
  expect(getDisplayObjectStage(child)).toBe(stage);
141
100
  });
142
101
 
@@ -144,7 +103,7 @@ describe('getDisplayObjectStage', () => {
144
103
  const stage = createStage();
145
104
  const mid = createDisplayObject();
146
105
  const leaf = createDisplayObject();
147
- addNodeChild(stage, mid);
106
+ addNodeChild(stage.root, mid);
148
107
  addNodeChild(mid, leaf);
149
108
  expect(getDisplayObjectStage(leaf)).toBe(stage);
150
109
  });
@@ -156,11 +115,6 @@ describe('getStageRuntime', () => {
156
115
  const runtime = getStageRuntime(stage);
157
116
  expect(runtime).not.toBeNull();
158
117
  });
159
-
160
- it('initializes stageSignals to null', () => {
161
- const runtime = createStageRuntime();
162
- expect(runtime.stageSignals).toBeNull();
163
- });
164
118
  });
165
119
 
166
120
  describe('getStageSignals', () => {
@@ -180,8 +134,8 @@ describe('setStageSize', () => {
180
134
  it('updates stageWidth and stageHeight', () => {
181
135
  const stage = createStage();
182
136
  setStageSize(stage, 1920, 1080);
183
- expect(stage.data.stageWidth).toBe(1920);
184
- expect(stage.data.stageHeight).toBe(1080);
137
+ expect(stage.stageWidth).toBe(1920);
138
+ expect(stage.stageHeight).toBe(1080);
185
139
  });
186
140
 
187
141
  it('emits onResize when dimensions change', () => {
@@ -195,7 +149,7 @@ describe('setStageSize', () => {
195
149
  });
196
150
 
197
151
  it('does not emit onResize when dimensions are unchanged', () => {
198
- const stage = createStage({ data: { stageWidth: 400, stageHeight: 300 } });
152
+ const stage = createStage({ stageWidth: 400, stageHeight: 300 });
199
153
  let called = false;
200
154
  connectSignal(enableStageSignals(stage).onResize, () => {
201
155
  called = true;
@@ -1,7 +0,0 @@
1
- import type { DisplayObject, Stage } from '@flighthq/types';
2
- export type DisplayObjectInternal = Omit<DisplayObject, 'children' | 'parent' | 'stage'> & {
3
- children: DisplayObject[] | null;
4
- parent: DisplayObject | null;
5
- stage: Stage | null;
6
- };
7
- //# sourceMappingURL=internal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE5D,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAC,GAAG;IACzF,QAAQ,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IACjC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC"}
package/dist/internal.js DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=internal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":""}