@flighthq/scene2d 0.2.1-next.841.373388f → 0.3.0-next.906.07cea63

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.
Files changed (54) hide show
  1. package/dist/bitmap.d.ts +1 -1
  2. package/dist/bitmap.d.ts.map +1 -1
  3. package/dist/bitmap.js +2 -2
  4. package/dist/bitmap.js.map +1 -1
  5. package/dist/contract.d.ts +9 -0
  6. package/dist/contract.d.ts.map +1 -0
  7. package/dist/contract.js +9 -0
  8. package/dist/contract.js.map +1 -0
  9. package/dist/displayContainer.d.ts +1 -1
  10. package/dist/displayContainer.d.ts.map +1 -1
  11. package/dist/displayContainer.js +1 -1
  12. package/dist/displayContainer.js.map +1 -1
  13. package/dist/displayObject.d.ts +1 -5
  14. package/dist/displayObject.d.ts.map +1 -1
  15. package/dist/displayObject.js +2 -57
  16. package/dist/displayObject.js.map +1 -1
  17. package/dist/displayObjectAnimation.d.ts +1 -1
  18. package/dist/displayObjectAnimation.d.ts.map +1 -1
  19. package/dist/displayObjectAnimation.js +2 -2
  20. package/dist/displayObjectAnimation.js.map +1 -1
  21. package/dist/htmlView.d.ts +1 -1
  22. package/dist/htmlView.d.ts.map +1 -1
  23. package/dist/htmlView.js +2 -2
  24. package/dist/htmlView.js.map +1 -1
  25. package/dist/index.d.ts +1 -8
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +1 -8
  28. package/dist/index.js.map +1 -1
  29. package/dist/renderTargetNode2D.d.ts +8 -0
  30. package/dist/renderTargetNode2D.d.ts.map +1 -0
  31. package/dist/renderTargetNode2D.js +35 -0
  32. package/dist/renderTargetNode2D.js.map +1 -0
  33. package/dist/scene2d.d.ts +1 -1
  34. package/dist/scene2d.d.ts.map +1 -1
  35. package/dist/scene2d.js +4 -4
  36. package/dist/scene2d.js.map +1 -1
  37. package/dist/video.d.ts +1 -1
  38. package/dist/video.d.ts.map +1 -1
  39. package/dist/video.js +2 -2
  40. package/dist/video.js.map +1 -1
  41. package/package.json +13 -9
  42. package/src/bitmap.test.ts +9 -5
  43. package/src/displayContainer.test.ts +2 -2
  44. package/src/displayObject.test.ts +48 -38
  45. package/src/displayObjectAnimation.test.ts +3 -3
  46. package/src/htmlView.test.ts +3 -3
  47. package/src/renderTargetNode2D.test.ts +97 -0
  48. package/src/scene2d.test.ts +3 -3
  49. package/src/video.test.ts +7 -3
  50. package/dist/renderView.d.ts +0 -8
  51. package/dist/renderView.d.ts.map +0 -1
  52. package/dist/renderView.js +0 -35
  53. package/dist/renderView.js.map +0 -1
  54. package/src/renderView.test.ts +0 -104
package/dist/bitmap.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Bitmap, BitmapData, BitmapRuntime, Node, PartialNode, Rectangle } from '@flighthq/types';
1
+ import type { Bitmap, BitmapData, BitmapRuntime, Node, PartialNode, Rectangle } from '@flighthq/types/contract';
2
2
  export declare function computeBitmapLocalBoundsRectangle(out: Rectangle, source: Readonly<Node>): void;
3
3
  export declare function createBitmap(obj?: Readonly<PartialNode<Bitmap>>): Bitmap;
4
4
  export declare function createBitmapData(data?: Readonly<Partial<BitmapData>>): BitmapData;
@@ -1 +1 @@
1
- {"version":3,"file":"bitmap.d.ts","sourceRoot":"","sources":["../src/bitmap.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAa,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAKlH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAS9F;AAED,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAExE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAMjF;AAED,wBAAgB,mBAAmB,IAAI,aAAa,CAEnD;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAElF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI,CAM/E"}
1
+ {"version":3,"file":"bitmap.d.ts","sourceRoot":"","sources":["../src/bitmap.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,MAAM,EACN,UAAU,EACV,aAAa,EAEb,IAAI,EACJ,WAAW,EACX,SAAS,EACV,MAAM,0BAA0B,CAAC;AAKlC,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAS9F;AAED,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAExE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAMjF;AAED,wBAAgB,mBAAmB,IAAI,aAAa,CAEnD;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAElF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI,CAM/E"}
package/dist/bitmap.js CHANGED
@@ -1,5 +1,5 @@
1
- import { invalidateNodeLocalBounds, invalidateNodeLocalContent } from '@flighthq/node';
2
- import { BitmapKind } from '@flighthq/types';
1
+ import { invalidateNodeLocalBounds, invalidateNodeLocalContent } from '@flighthq/node/contract';
2
+ import { BitmapKind } from '@flighthq/types/contract';
3
3
  import { createNode2D, createNode2DRuntime, getNode2DRuntime } from './displayObject';
4
4
  export function computeBitmapLocalBoundsRectangle(out, source) {
5
5
  const bitmapData = source.data;
@@ -1 +1 @@
1
- {"version":3,"file":"bitmap.js","sourceRoot":"","sources":["../src/bitmap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAEvF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,iCAAiC,CAAC,GAAc,EAAE,MAAsB;IACtF,MAAM,UAAU,GAAe,MAAM,CAAC,IAAkB,CAAC;IACzD,IAAI,UAAU,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;QACxC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC;QAC7C,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC;IACjD,CAAC;SAAM,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QAC5B,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;QACnC,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;IACvC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAmC;IAC9D,OAAO,YAAY,CAAC,UAAU,EAAE,GAAG,EAAE,gBAAgB,EAAE,mBAAmB,CAAW,CAAC;AACxF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAoC;IACnE,OAAO;QACL,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI;QAC1B,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;QAClC,eAAe,EAAE,IAAI,EAAE,eAAe,IAAI,IAAI;KAC/C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO,mBAAmB,CAAC,cAAc,CAAkB,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAwB;IACvD,OAAO,gBAAgB,CAAC,MAAM,CAAkB,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,KAA0B;IACvE,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC1B,yFAAyF;IACzF,0DAA0D;IAC1D,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnC,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,cAAc,GAAsC;IACxD,2BAA2B,EAAE,iCAAiC;CAC/D,CAAC"}
1
+ {"version":3,"file":"bitmap.js","sourceRoot":"","sources":["../src/bitmap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAUhG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,iCAAiC,CAAC,GAAc,EAAE,MAAsB;IACtF,MAAM,UAAU,GAAe,MAAM,CAAC,IAAkB,CAAC;IACzD,IAAI,UAAU,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;QACxC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC;QAC7C,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC;IACjD,CAAC;SAAM,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QAC5B,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;QACnC,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;IACvC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAmC;IAC9D,OAAO,YAAY,CAAC,UAAU,EAAE,GAAG,EAAE,gBAAgB,EAAE,mBAAmB,CAAW,CAAC;AACxF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAoC;IACnE,OAAO;QACL,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,IAAI;QAC1B,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;QAClC,eAAe,EAAE,IAAI,EAAE,eAAe,IAAI,IAAI;KAC/C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO,mBAAmB,CAAC,cAAc,CAAkB,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAwB;IACvD,OAAO,gBAAgB,CAAC,MAAM,CAAkB,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,KAA0B;IACvE,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC1B,yFAAyF;IACzF,0DAA0D;IAC1D,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnC,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,cAAc,GAAsC;IACxD,2BAA2B,EAAE,iCAAiC;CAC/D,CAAC"}
@@ -0,0 +1,9 @@
1
+ export * from './bitmap';
2
+ export * from './displayContainer';
3
+ export * from './displayObject';
4
+ export * from './displayObjectAnimation';
5
+ export * from './htmlView';
6
+ export * from './renderTargetNode2D';
7
+ export * from './scene2d';
8
+ export * from './video';
9
+ //# sourceMappingURL=contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,9 @@
1
+ export * from './bitmap';
2
+ export * from './displayContainer';
3
+ export * from './displayObject';
4
+ export * from './displayObjectAnimation';
5
+ export * from './htmlView';
6
+ export * from './renderTargetNode2D';
7
+ export * from './scene2d';
8
+ export * from './video';
9
+ //# sourceMappingURL=contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { DisplayObject, DisplayObjectRuntime, PartialNode } from '@flighthq/types';
1
+ import type { DisplayObject, DisplayObjectRuntime, PartialNode } from '@flighthq/types/contract';
2
2
  export declare function createDisplayObject(obj?: Readonly<PartialNode<DisplayObject>>): DisplayObject;
3
3
  export declare function createDisplayObjectRuntime(): DisplayObjectRuntime;
4
4
  export declare function getDisplayObjectRuntime(source: Readonly<DisplayObject>): Readonly<DisplayObjectRuntime>;
@@ -1 +1 @@
1
- {"version":3,"file":"displayContainer.d.ts","sourceRoot":"","sources":["../src/displayContainer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAKxF,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,GAAG,aAAa,CAE7F;AAED,wBAAgB,0BAA0B,IAAI,oBAAoB,CAEjE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAEvG"}
1
+ {"version":3,"file":"displayContainer.d.ts","sourceRoot":"","sources":["../src/displayContainer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAKjG,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,GAAG,aAAa,CAE7F;AAED,wBAAgB,0BAA0B,IAAI,oBAAoB,CAEjE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAEvG"}
@@ -1,4 +1,4 @@
1
- import { DisplayObjectKind } from '@flighthq/types';
1
+ import { DisplayObjectKind } from '@flighthq/types/contract';
2
2
  import { createNode2D, createNode2DRuntime, getNode2DRuntime } from './displayObject';
3
3
  export function createDisplayObject(obj) {
4
4
  return createNode2D(DisplayObjectKind, obj, undefined, createDisplayObjectRuntime);
@@ -1 +1 @@
1
- {"version":3,"file":"displayContainer.js","sourceRoot":"","sources":["../src/displayContainer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,mBAAmB,CAAC,GAA0C;IAC5E,OAAO,YAAY,CAAC,iBAAiB,EAAE,GAAG,EAAE,SAAS,EAAE,0BAA0B,CAAkB,CAAC;AACtG,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,OAAO,mBAAmB,EAA0B,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAA+B;IACrE,OAAO,gBAAgB,CAAC,MAAM,CAAyB,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"displayContainer.js","sourceRoot":"","sources":["../src/displayContainer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,mBAAmB,CAAC,GAA0C;IAC5E,OAAO,YAAY,CAAC,iBAAiB,EAAE,GAAG,EAAE,SAAS,EAAE,0BAA0B,CAAkB,CAAC;AACtG,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,OAAO,mBAAmB,EAA0B,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAA+B;IACrE,OAAO,gBAAgB,CAAC,MAAM,CAAyB,CAAC;AAC1D,CAAC"}
@@ -1,12 +1,8 @@
1
- import type { Adjustment, ClipRegion, ColorTransform, Node2D, Node2DDataFactory, Node2DRuntime, Node2DRuntimeFactory, Kind, MethodsOf, NodeAny, PartialNode } from '@flighthq/types';
2
- export declare function addNode2DColorAdjustment(source: Node2D, adjustment: Adjustment): void;
1
+ import type { ClipRegion, Node2D, Node2DDataFactory, Node2DRuntime, Node2DRuntimeFactory, Kind, MethodsOf, NodeAny, PartialNode } from '@flighthq/types/contract';
3
2
  export declare function createNode2D<R extends Node2DRuntime>(kind: Kind, obj?: Readonly<PartialNode<Node2D>>, createData?: Node2DDataFactory, createNode2DRuntimeFactory?: Node2DRuntimeFactory<R>): Node2D;
4
3
  export declare function createNode2DRuntime(methods?: Readonly<Partial<MethodsOf<Node2DRuntime>>>): Node2DRuntime;
5
- export declare function getNode2DColorAdjustments(source: Readonly<Node2D>): readonly Adjustment[] | null;
6
4
  export declare function getNode2DRuntime(source: Readonly<Node2D>): Readonly<Node2DRuntime>;
7
5
  export declare function isNode2D(node: NodeAny): node is Node2D;
8
6
  export declare function setNode2DClip(source: Node2D, value: ClipRegion | null): void;
9
- export declare function setNode2DColorAdjustments(source: Node2D, value: readonly Adjustment[] | null): void;
10
- export declare function setNode2DColorTransform(source: Node2D, colorTransform: Readonly<ColorTransform> | null): void;
11
7
  export { createDisplayObject } from './displayContainer';
12
8
  //# sourceMappingURL=displayObject.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"displayObject.d.ts","sourceRoot":"","sources":["../src/displayObject.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,MAAM,EACN,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,IAAI,EACJ,SAAS,EACT,OAAO,EAEP,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAMzB,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAMrF;AAED,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAClD,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EACnC,UAAU,CAAC,EAAE,iBAAiB,EAC9B,0BAA0B,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GACnD,MAAM,CAcR;AAED,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,aAAa,CAOxG;AAID,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,UAAU,EAAE,GAAG,IAAI,CAEhG;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAElF;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAEtD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,GAAG,IAAI,CAG5E;AAMD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,GAAG,IAAI,CAKnG;AAKD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI,GAAG,IAAI,CAE7G;AAyBD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"displayObject.d.ts","sourceRoot":"","sources":["../src/displayObject.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,UAAU,EACV,MAAM,EACN,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,IAAI,EACJ,SAAS,EACT,OAAO,EAEP,WAAW,EACZ,MAAM,0BAA0B,CAAC;AAGlC,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAClD,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EACnC,UAAU,CAAC,EAAE,iBAAiB,EAC9B,0BAA0B,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GACnD,MAAM,CAcR;AAED,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,aAAa,CAOxG;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAElF;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAEtD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,GAAG,IAAI,CAG5E;AAED,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,17 +1,5 @@
1
- import { COLOR_ADJUSTMENT_CHANNEL_MIXING, COLOR_ADJUSTMENT_NONE, createColorTransformAdjustment, resolveColorAdjustmentsColorTransform, } from '@flighthq/adjustments';
2
- import { createColorTransform } from '@flighthq/materials';
3
- import { createNode, createNodeRuntime, getNodeRuntime, initAppearanceTrait, initBlendModeTrait, initBoundsRectangleRuntimeTrait, initBoundsRectangleTrait, initClipTrait, initMaterialTrait, initTransform2DRuntimeTrait, initTransform2DTrait, invalidateNodeAppearance, } from '@flighthq/node';
4
- import { Node2DTraitsKey } from '@flighthq/types';
5
- // Appends one pointwise color adjustment to this object's stack (creating the stack if absent), re-fuses
6
- // the resolved cache, and invalidates appearance so the render walk hands the fold the new value.
7
- // Allocates a new array — the stack is a plain `readonly Adjustment[]`, never mutated in place.
8
- export function addNode2DColorAdjustment(source, adjustment) {
9
- const runtime = getNodeRuntime(source);
10
- const current = runtime.colorAdjustments;
11
- runtime.colorAdjustments = current === null ? [adjustment] : [...current, adjustment];
12
- resolveNode2DColorAdjustments(runtime);
13
- invalidateNodeAppearance(source);
14
- }
1
+ import { createNode, createNodeRuntime, getNodeRuntime, initAppearanceTrait, initBlendModeTrait, initBoundsRectangleRuntimeTrait, initBoundsRectangleTrait, initClipTrait, initMaterialTrait, initTransform2DRuntimeTrait, initTransform2DTrait, invalidateNodeAppearance, } from '@flighthq/node/contract';
2
+ import { Node2DTraitsKey } from '@flighthq/types/contract';
15
3
  export function createNode2D(kind, obj, createData, createNode2DRuntimeFactory) {
16
4
  const out = createNode(kind, obj, createData, createNode2DRuntimeFactory ?? createNode2DRuntime);
17
5
  initTransform2DTrait(out, obj);
@@ -30,11 +18,6 @@ export function createNode2DRuntime(methods) {
30
18
  initBoundsRectangleRuntimeTrait(out, methods);
31
19
  return out;
32
20
  }
33
- // Returns this object's pointwise color-adjustment stack (the source of truth on the node runtime), or
34
- // null when it carries none.
35
- export function getNode2DColorAdjustments(source) {
36
- return getNodeRuntime(source).colorAdjustments;
37
- }
38
21
  export function getNode2DRuntime(source) {
39
22
  return getNodeRuntime(source);
40
23
  }
@@ -45,43 +28,5 @@ export function setNode2DClip(source, value) {
45
28
  source.clip = value;
46
29
  invalidateNodeAppearance(source);
47
30
  }
48
- // Sets (or clears with null) this object's pointwise color-adjustment stack — the generic replacement for
49
- // the removed color-transform trait. A color transform is one member: `createColorTransformAdjustment`.
50
- // Re-fuses the resolved cache once here (not per frame) and invalidates appearance so the render walk
51
- // hands the fold the affine ColorTransform the stack resolves to. Null is the untinted default.
52
- export function setNode2DColorAdjustments(source, value) {
53
- const runtime = getNodeRuntime(source);
54
- runtime.colorAdjustments = value;
55
- resolveNode2DColorAdjustments(runtime);
56
- invalidateNodeAppearance(source);
57
- }
58
- // Convenience for the common single-tint path (the color-transform an agent looks for): sets this object's
59
- // adjustment stack to one `ColorTransformAdjustment`, or clears it with null. Thin wrapper over
60
- // `setNode2DColorAdjustments` — a color transform is just one adjustment in the generic stack.
61
- export function setNode2DColorTransform(source, colorTransform) {
62
- setNode2DColorAdjustments(source, colorTransform === null ? null : [createColorTransformAdjustment(colorTransform)]);
63
- }
64
- // Fuses the runtime's color-adjustment stack once into its cached affine `resolvedColorTransform`, setting
65
- // `colorAdjustmentsChannelMixing` when the fused stack has off-diagonal channel-mixing terms the 8-float
66
- // fold cannot represent yet (the render walk reports that through the shakeable guard). Called by the
67
- // accessors on change — the render walk only reads the cache, so no fuse math weighs on the base render
68
- // path. The cached ColorTransform is reused in place across re-fuses to avoid per-set allocation churn.
69
- function resolveNode2DColorAdjustments(runtime) {
70
- const adjustments = runtime.colorAdjustments;
71
- if (adjustments === null || adjustments.length === 0) {
72
- runtime.resolvedColorTransform = null;
73
- runtime.colorAdjustmentsChannelMixing = false;
74
- return;
75
- }
76
- const out = runtime.resolvedColorTransform ?? createColorTransform();
77
- const status = resolveColorAdjustmentsColorTransform(adjustments, out);
78
- if (status === COLOR_ADJUSTMENT_NONE) {
79
- runtime.resolvedColorTransform = null;
80
- runtime.colorAdjustmentsChannelMixing = false;
81
- return;
82
- }
83
- runtime.resolvedColorTransform = out;
84
- runtime.colorAdjustmentsChannelMixing = status === COLOR_ADJUSTMENT_CHANNEL_MIXING;
85
- }
86
31
  export { createDisplayObject } from './displayContainer';
87
32
  //# sourceMappingURL=displayObject.js.map
@@ -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":"AAAA,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,+BAA+B,EAC/B,wBAAwB,EACxB,aAAa,EACb,iBAAiB,EACjB,2BAA2B,EAC3B,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AAajC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,MAAM,UAAU,YAAY,CAC1B,IAAU,EACV,GAAmC,EACnC,UAA8B,EAC9B,0BAAoD;IAEpD,MAAM,GAAG,GAAG,UAAU,CACpB,IAAI,EACJ,GAAG,EACH,UAAU,EACV,0BAA0B,IAAK,mBAAwD,CAC9E,CAAC;IACZ,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/B,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACnC,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9B,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC7B,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5B,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAqD;IACvF,MAAM,GAAG,GAAG,iBAAiB,CAAC,OAAO,CAAkB,CAAC;IACxD,GAAG,CAAC,MAAM,GAAG,eAAe,CAAC;IAC7B,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;IACnB,2BAA2B,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC1C,+BAA+B,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC9C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAwB;IACvD,OAAO,cAAc,CAAC,MAAM,CAAkB,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAa;IACpC,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,eAAe,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,KAAwB;IACpE,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,wBAAwB,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAED,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,3 +1,3 @@
1
- import type { AnimationClip } from '@flighthq/types';
1
+ import type { AnimationClip } from '@flighthq/types/contract';
2
2
  export declare function applyAnimationClipToNode2D(clip: Readonly<AnimationClip>, time: number): void;
3
3
  //# sourceMappingURL=displayObjectAnimation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"displayObjectAnimation.d.ts","sourceRoot":"","sources":["../src/displayObjectAnimation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAyB,MAAM,iBAAiB,CAAC;AAK5E,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAyE5F"}
1
+ {"version":3,"file":"displayObjectAnimation.d.ts","sourceRoot":"","sources":["../src/displayObjectAnimation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAyB,MAAM,0BAA0B,CAAC;AAKrF,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAyE5F"}
@@ -1,5 +1,5 @@
1
- import { sampleAnimationTrack } from '@flighthq/animation';
2
- import { invalidateNodeAppearance, invalidateNodeLocalTransform } from '@flighthq/node';
1
+ import { sampleAnimationTrack } from '@flighthq/animation/contract';
2
+ import { invalidateNodeAppearance, invalidateNodeLocalTransform } from '@flighthq/node/contract';
3
3
  // Samples a target-free clip and applies channels carrying Node2DAnimationTarget descriptors.
4
4
  // Unknown target refs and paths are ignored, matching the scene/skeleton binding layers. Transform
5
5
  // paths invalidate local matrices; alpha/visibility paths invalidate appearance.
@@ -1 +1 @@
1
- {"version":3,"file":"displayObjectAnimation.js","sourceRoot":"","sources":["../src/displayObjectAnimation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAGxF,8FAA8F;AAC9F,mGAAmG;AACnG,iFAAiF;AACjF,MAAM,UAAU,0BAA0B,CAAC,IAA6B,EAAE,IAAY;IACpF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,SAAyC,CAAC;QACjE,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YAAE,SAAS;QACzF,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,OAAO;gBACV,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzB,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,UAAU;gBACb,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACrB,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,UAAU;gBACb,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC5B,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzB,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzB,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzB,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;gBAClC,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBAC/B,MAAM;YACR,KAAK,GAAG;gBACN,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACrB,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,GAAG;gBACN,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACrB,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM;QACV,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"displayObjectAnimation.js","sourceRoot":"","sources":["../src/displayObjectAnimation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { HtmlView, HtmlViewData, HtmlViewRuntime, Node, PartialNode, Rectangle } from '@flighthq/types';
1
+ import type { HtmlView, HtmlViewData, HtmlViewRuntime, Node, PartialNode, Rectangle } from '@flighthq/types/contract';
2
2
  export declare function computeHtmlViewLocalBoundsRectangle(out: Rectangle, source: Readonly<Node>): void;
3
3
  export declare function createHtmlView(obj?: Readonly<PartialNode<HtmlView>>): HtmlView;
4
4
  export declare function createHtmlViewData(data?: Readonly<Partial<HtmlViewData>>): HtmlViewData;
@@ -1 +1 @@
1
- {"version":3,"file":"htmlView.d.ts","sourceRoot":"","sources":["../src/htmlView.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAa,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAKxH,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAIhG;AAED,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAE9E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,YAAY,CAMvF;AAED,wBAAgB,qBAAqB,IAAI,eAAe,CAEvD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAExF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAKrF"}
1
+ {"version":3,"file":"htmlView.d.ts","sourceRoot":"","sources":["../src/htmlView.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,eAAe,EAEf,IAAI,EACJ,WAAW,EACX,SAAS,EACV,MAAM,0BAA0B,CAAC;AAKlC,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAIhG;AAED,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAE9E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,YAAY,CAMvF;AAED,wBAAgB,qBAAqB,IAAI,eAAe,CAEvD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAExF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAKrF"}
package/dist/htmlView.js CHANGED
@@ -1,5 +1,5 @@
1
- import { invalidateNodeLocalBounds } from '@flighthq/node';
2
- import { HtmlViewKind } from '@flighthq/types';
1
+ import { invalidateNodeLocalBounds } from '@flighthq/node/contract';
2
+ import { HtmlViewKind } from '@flighthq/types/contract';
3
3
  import { createNode2D, createNode2DRuntime, getNode2DRuntime } from './displayObject';
4
4
  export function computeHtmlViewLocalBoundsRectangle(out, source) {
5
5
  const data = source.data;
@@ -1 +1 @@
1
- {"version":3,"file":"htmlView.js","sourceRoot":"","sources":["../src/htmlView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,mCAAmC,CAAC,GAAc,EAAE,MAAsB;IACxF,MAAM,IAAI,GAAI,MAAmB,CAAC,IAAI,CAAC;IACvC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAqC;IAClE,OAAO,YAAY,CAAC,YAAY,EAAE,GAAG,EAAE,kBAAkB,EAAE,qBAAqB,CAAa,CAAC;AAChG,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAsC;IACvE,OAAO;QACL,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,IAAI;QAC9B,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG;QAC3B,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,mBAAmB,CAAC,cAAc,CAAoB,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAA0B;IAC3D,OAAO,gBAAgB,CAAC,MAAM,CAAoB,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAgB,EAAE,KAAa,EAAE,MAAc;IAC7E,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO;IACzE,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5B,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,cAAc,GAAwC;IAC1D,2BAA2B,EAAE,mCAAmC;CACjE,CAAC"}
1
+ {"version":3,"file":"htmlView.js","sourceRoot":"","sources":["../src/htmlView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAUpE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,mCAAmC,CAAC,GAAc,EAAE,MAAsB;IACxF,MAAM,IAAI,GAAI,MAAmB,CAAC,IAAI,CAAC;IACvC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAqC;IAClE,OAAO,YAAY,CAAC,YAAY,EAAE,GAAG,EAAE,kBAAkB,EAAE,qBAAqB,CAAa,CAAC;AAChG,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAsC;IACvE,OAAO;QACL,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,IAAI;QAC9B,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG;QAC3B,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,mBAAmB,CAAC,cAAc,CAAoB,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAA0B;IAC3D,OAAO,gBAAgB,CAAC,MAAM,CAAoB,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAgB,EAAE,KAAa,EAAE,MAAc;IAC7E,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO;IACzE,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5B,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,cAAc,GAAwC;IAC1D,2BAA2B,EAAE,mCAAmC;CACjE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,2 @@
1
- export * from './bitmap';
2
- export * from './displayContainer';
3
- export * from './displayObject';
4
- export * from './displayObjectAnimation';
5
- export * from './htmlView';
6
- export * from './renderView';
7
- export * from './scene2d';
8
- export * from './video';
1
+ export { applyAnimationClipToNode2D, computeBitmapLocalBoundsRectangle, computeHtmlViewLocalBoundsRectangle, computeVideoLocalBoundsRectangle, createBitmap, createDisplayObject, createHtmlView, createNode2D, createRenderTargetNode2D, createScene2D, createVideo, enableScene2DSignals, getScene2DRoot, getScene2DSignals, isNode2D, setBitmapImage, setHtmlViewSize, setNode2DClip, setRenderTargetNode2DSize, setScene2DSize, setVideoSmoothing, setVideoSource, } from './contract';
9
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,iCAAiC,EACjC,mCAAmC,EACnC,gCAAgC,EAChC,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,wBAAwB,EACxB,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,cAAc,EACd,eAAe,EACf,aAAa,EACb,yBAAyB,EACzB,cAAc,EACd,iBAAiB,EACjB,cAAc,GACf,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,9 +1,2 @@
1
- export * from './bitmap';
2
- export * from './displayContainer';
3
- export * from './displayObject';
4
- export * from './displayObjectAnimation';
5
- export * from './htmlView';
6
- export * from './renderView';
7
- export * from './scene2d';
8
- export * from './video';
1
+ export { applyAnimationClipToNode2D, computeBitmapLocalBoundsRectangle, computeHtmlViewLocalBoundsRectangle, computeVideoLocalBoundsRectangle, createBitmap, createDisplayObject, createHtmlView, createNode2D, createRenderTargetNode2D, createScene2D, createVideo, enableScene2DSignals, getScene2DRoot, getScene2DSignals, isNode2D, setBitmapImage, setHtmlViewSize, setNode2DClip, setRenderTargetNode2DSize, setScene2DSize, setVideoSmoothing, setVideoSource, } from './contract';
9
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,iCAAiC,EACjC,mCAAmC,EACnC,gCAAgC,EAChC,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,wBAAwB,EACxB,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,cAAc,EACd,eAAe,EACf,aAAa,EACb,yBAAyB,EACzB,cAAc,EACd,iBAAiB,EACjB,cAAc,GACf,MAAM,YAAY,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { Node, Rectangle, RenderTargetNode2D, RenderTargetNode2DData, RenderTargetNode2DOptions, RenderTargetNode2DRuntime } from '@flighthq/types/contract';
2
+ export declare function computeRenderTargetNode2DLocalBoundsRectangle(out: Rectangle, source: Readonly<Node>): void;
3
+ export declare function createRenderTargetNode2D(options: Readonly<RenderTargetNode2DOptions>): RenderTargetNode2D;
4
+ export declare function createRenderTargetNode2DData(data?: Readonly<Partial<RenderTargetNode2DData>>): RenderTargetNode2DData;
5
+ export declare function createRenderTargetNode2DRuntime(): RenderTargetNode2DRuntime;
6
+ export declare function getRenderTargetNode2DRuntime(source: Readonly<RenderTargetNode2D>): Readonly<RenderTargetNode2DRuntime>;
7
+ export declare function setRenderTargetNode2DSize(source: RenderTargetNode2D, width: number, height: number): void;
8
+ //# sourceMappingURL=renderTargetNode2D.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderTargetNode2D.d.ts","sourceRoot":"","sources":["../src/renderTargetNode2D.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,IAAI,EACJ,SAAS,EACT,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAKlC,wBAAgB,6CAA6C,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAI1G;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAAG,kBAAkB,CAOzG;AAED,wBAAgB,4BAA4B,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,GAAG,sBAAsB,CAMrH;AAED,wBAAgB,+BAA+B,IAAI,yBAAyB,CAE3E;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GACnC,QAAQ,CAAC,yBAAyB,CAAC,CAErC;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAKzG"}
@@ -0,0 +1,35 @@
1
+ import { invalidateNodeLocalBounds } from '@flighthq/node/contract';
2
+ import { RenderTargetNode2DKind } from '@flighthq/types/contract';
3
+ import { createNode2D, createNode2DRuntime, getNode2DRuntime } from './displayObject';
4
+ export function computeRenderTargetNode2DLocalBoundsRectangle(out, source) {
5
+ const data = source.data;
6
+ out.width = data.width;
7
+ out.height = data.height;
8
+ }
9
+ export function createRenderTargetNode2D(options) {
10
+ return createNode2D(RenderTargetNode2DKind, { data: options }, createRenderTargetNode2DData, createRenderTargetNode2DRuntime);
11
+ }
12
+ export function createRenderTargetNode2DData(data) {
13
+ return {
14
+ depth: data?.depth ?? false,
15
+ height: data?.height ?? 0,
16
+ width: data?.width ?? 0,
17
+ };
18
+ }
19
+ export function createRenderTargetNode2DRuntime() {
20
+ return createNode2DRuntime(defaultMethods);
21
+ }
22
+ export function getRenderTargetNode2DRuntime(source) {
23
+ return getNode2DRuntime(source);
24
+ }
25
+ export function setRenderTargetNode2DSize(source, width, height) {
26
+ if (source.data.width === width && source.data.height === height)
27
+ return;
28
+ source.data.width = width;
29
+ source.data.height = height;
30
+ invalidateNodeLocalBounds(source);
31
+ }
32
+ const defaultMethods = {
33
+ computeLocalBoundsRectangle: computeRenderTargetNode2DLocalBoundsRectangle,
34
+ };
35
+ //# sourceMappingURL=renderTargetNode2D.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderTargetNode2D.js","sourceRoot":"","sources":["../src/renderTargetNode2D.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAUpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,6CAA6C,CAAC,GAAc,EAAE,MAAsB;IAClG,MAAM,IAAI,GAAI,MAA6B,CAAC,IAAI,CAAC;IACjD,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAA4C;IACnF,OAAO,YAAY,CACjB,sBAAsB,EACtB,EAAE,IAAI,EAAE,OAAO,EAAE,EACjB,4BAA4B,EAC5B,+BAA+B,CACV,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,IAAgD;IAC3F,OAAO;QACL,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK;QAC3B,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;QACzB,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B;IAC7C,OAAO,mBAAmB,CAAC,cAAc,CAA8B,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,MAAoC;IAEpC,OAAO,gBAAgB,CAAC,MAAM,CAA8B,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,MAA0B,EAAE,KAAa,EAAE,MAAc;IACjG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO;IACzE,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5B,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,cAAc,GAAkD;IACpE,2BAA2B,EAAE,6CAA6C;CAC3E,CAAC"}
package/dist/scene2d.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Node2D, Scene2D, Scene2DRuntime, Scene2DSignals } from '@flighthq/types';
1
+ import type { Node2D, Scene2D, Scene2DRuntime, Scene2DSignals } from '@flighthq/types/contract';
2
2
  export declare function createScene2D(obj?: Readonly<Partial<Pick<Scene2D, 'align' | 'color' | 'scaleMode' | 'scene2dHeight' | 'scene2dWidth'>>>): Scene2D;
3
3
  export declare function createScene2DRuntime(): Scene2DRuntime;
4
4
  export declare function createScene2DSignals(): Scene2DSignals;
@@ -1 +1 @@
1
- {"version":3,"file":"scene2d.d.ts","sourceRoot":"","sources":["../src/scene2d.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAiB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAUtG,wBAAgB,aAAa,CAC3B,GAAG,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,GACzG,OAAO,CAYT;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CAKrD;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CAMrD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CAGpE;AAID,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,CAGvE;AAID,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,CAErF;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,cAAc,GAAG,IAAI,CAGlF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAMnF"}
1
+ {"version":3,"file":"scene2d.d.ts","sourceRoot":"","sources":["../src/scene2d.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAiB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAU/G,wBAAgB,aAAa,CAC3B,GAAG,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,GACzG,OAAO,CAYT;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CAKrD;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CAMrD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CAGpE;AAID,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,CAGvE;AAID,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,CAErF;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,cAAc,GAAG,IAAI,CAGlF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAMnF"}
package/dist/scene2d.js CHANGED
@@ -1,7 +1,7 @@
1
- import { createEntity } from '@flighthq/entity';
2
- import { getNodeRoot, getNodeRuntime } from '@flighthq/node';
3
- import { createSignal, emitSignal } from '@flighthq/signals';
4
- import { EntityRuntimeKey } from '@flighthq/types';
1
+ import { createEntity } from '@flighthq/entity/contract';
2
+ import { getNodeRoot, getNodeRuntime } from '@flighthq/node/contract';
3
+ import { createSignal, emitSignal } from '@flighthq/signals/contract';
4
+ import { EntityRuntimeKey } from '@flighthq/types/contract';
5
5
  import { createDisplayObject } from './displayObject';
6
6
  // Allocates a Scene2D: a presentation-context Entity that owns a display-object `root` (allocated here), not a
7
7
  // node in the tree. Carries the fit context (`align`/`scaleMode`) directly — fit is the Scene2D's concern, and
@@ -1 +1 @@
1
- {"version":3,"file":"scene2d.js","sourceRoot":"","sources":["../src/scene2d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scene2d.js","sourceRoot":"","sources":["../src/scene2d.ts"],"names":[],"mappings":"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"}
package/dist/video.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Node, PartialNode, Rectangle, Video, VideoData, VideoRuntime } from '@flighthq/types';
1
+ import type { Node, PartialNode, Rectangle, Video, VideoData, VideoRuntime } from '@flighthq/types/contract';
2
2
  export declare function computeVideoLocalBoundsRectangle(out: Rectangle, source: Readonly<Node>): void;
3
3
  export declare function createVideo(obj?: Readonly<PartialNode<Video>>): Video;
4
4
  export declare function createVideoData(data?: Readonly<Partial<VideoData>>): VideoData;
@@ -1 +1 @@
1
- {"version":3,"file":"video.d.ts","sourceRoot":"","sources":["../src/video.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAK/G,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAM7F;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,CAK9E;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAEjD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAE/E;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAKrE;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,CAK9E"}
1
+ {"version":3,"file":"video.d.ts","sourceRoot":"","sources":["../src/video.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKxH,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAM7F;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,CAK9E;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAEjD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAE/E;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAKrE;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,CAK9E"}
package/dist/video.js CHANGED
@@ -1,5 +1,5 @@
1
- import { invalidateNodeLocalBounds, invalidateNodeLocalContent } from '@flighthq/node';
2
- import { VideoKind } from '@flighthq/types';
1
+ import { invalidateNodeLocalBounds, invalidateNodeLocalContent } from '@flighthq/node/contract';
2
+ import { VideoKind } from '@flighthq/types/contract';
3
3
  import { createNode2D, createNode2DRuntime, getNode2DRuntime } from './displayObject';
4
4
  export function computeVideoLocalBoundsRectangle(out, source) {
5
5
  const element = source.data.source?.element;
package/dist/video.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"video.js","sourceRoot":"","sources":["../src/video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAEvF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,gCAAgC,CAAC,GAAc,EAAE,MAAsB;IACrF,MAAM,OAAO,GAAI,MAAM,CAAC,IAAkB,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3D,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC9C,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;QAC/B,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IACnC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAkC;IAC5D,OAAO,YAAY,CAAC,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,kBAAkB,CAAU,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAmC;IACjE,OAAO;QACL,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;QAClC,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,IAAI;KAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,mBAAmB,CAAC,cAAc,CAAiB,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAuB;IACrD,OAAO,gBAAgB,CAAC,MAAM,CAAiB,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAa,EAAE,KAAc;IAC7D,iGAAiG;IACjG,mEAAmE;IACnE,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IAC9B,0BAA0B,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAa,EAAE,KAA0B;IACtE,6EAA6E;IAC7E,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IAC3B,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnC,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,cAAc,GAAqC;IACvD,2BAA2B,EAAE,gCAAgC;CAC9D,CAAC"}
1
+ {"version":3,"file":"video.js","sourceRoot":"","sources":["../src/video.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAEhG,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,gCAAgC,CAAC,GAAc,EAAE,MAAsB;IACrF,MAAM,OAAO,GAAI,MAAM,CAAC,IAAkB,CAAC,MAAM,EAAE,OAA8C,CAAC;IAClG,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC9C,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;QAC/B,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IACnC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAkC;IAC5D,OAAO,YAAY,CAAC,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,kBAAkB,CAAU,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAmC;IACjE,OAAO;QACL,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;QAClC,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,IAAI;KAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,mBAAmB,CAAC,cAAc,CAAiB,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAuB;IACrD,OAAO,gBAAgB,CAAC,MAAM,CAAiB,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAa,EAAE,KAAc;IAC7D,iGAAiG;IACjG,mEAAmE;IACnE,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IAC9B,0BAA0B,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAa,EAAE,KAA0B;IACtE,6EAA6E;IAC7E,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IAC3B,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnC,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,cAAc,GAAqC;IACvD,2BAA2B,EAAE,gCAAgC;CAC9D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/scene2d",
3
- "version": "0.2.1-next.841.373388f",
3
+ "version": "0.3.0-next.906.07cea63",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/flighthq/flight.git",
@@ -13,6 +13,10 @@
13
13
  ".": {
14
14
  "types": "./dist/index.d.ts",
15
15
  "default": "./dist/index.js"
16
+ },
17
+ "./contract": {
18
+ "types": "./dist/contract.d.ts",
19
+ "default": "./dist/contract.js"
16
20
  }
17
21
  },
18
22
  "files": [
@@ -32,14 +36,14 @@
32
36
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
33
37
  },
34
38
  "dependencies": {
35
- "@flighthq/adjustments": "0.2.1-next.841.373388f",
36
- "@flighthq/animation": "0.2.1-next.841.373388f",
37
- "@flighthq/entity": "0.2.1-next.841.373388f",
38
- "@flighthq/geometry": "0.2.1-next.841.373388f",
39
- "@flighthq/materials": "0.2.1-next.841.373388f",
40
- "@flighthq/node": "0.2.1-next.841.373388f",
41
- "@flighthq/signals": "0.2.1-next.841.373388f",
42
- "@flighthq/types": "0.2.1-next.841.373388f"
39
+ "@flighthq/adjustments": "0.3.0-next.906.07cea63",
40
+ "@flighthq/animation": "0.3.0-next.906.07cea63",
41
+ "@flighthq/entity": "0.3.0-next.906.07cea63",
42
+ "@flighthq/geometry": "0.3.0-next.906.07cea63",
43
+ "@flighthq/materials": "0.3.0-next.906.07cea63",
44
+ "@flighthq/node": "0.3.0-next.906.07cea63",
45
+ "@flighthq/signals": "0.3.0-next.906.07cea63",
46
+ "@flighthq/types": "0.3.0-next.906.07cea63"
43
47
  },
44
48
  "devDependencies": {
45
49
  "typescript": "^5.3.0"
@@ -1,8 +1,12 @@
1
- import { getEntityRuntime } from '@flighthq/entity';
2
- import { createRectangle } from '@flighthq/geometry';
3
- import { getNodeLocalBoundsRevision, getNodeLocalContentRevision, getNodeLocalTransformRevision } from '@flighthq/node';
4
- import type { Bitmap, BitmapRuntime, ImageResource, Node } from '@flighthq/types';
5
- import { BitmapKind } from '@flighthq/types';
1
+ import { getEntityRuntime } from '@flighthq/entity/contract';
2
+ import { createRectangle } from '@flighthq/geometry/contract';
3
+ import {
4
+ getNodeLocalBoundsRevision,
5
+ getNodeLocalContentRevision,
6
+ getNodeLocalTransformRevision,
7
+ } from '@flighthq/node/contract';
8
+ import type { Bitmap, BitmapRuntime, ImageResource, Node } from '@flighthq/types/contract';
9
+ import { BitmapKind } from '@flighthq/types/contract';
6
10
 
7
11
  import {
8
12
  computeBitmapLocalBoundsRectangle,
@@ -1,5 +1,5 @@
1
- import type { DisplayObject } from '@flighthq/types';
2
- import { DisplayObjectKind } from '@flighthq/types';
1
+ import type { DisplayObject } from '@flighthq/types/contract';
2
+ import { DisplayObjectKind } from '@flighthq/types/contract';
3
3
 
4
4
  import { createDisplayObject, createDisplayObjectRuntime, getDisplayObjectRuntime } from './displayContainer';
5
5
 
@@ -1,26 +1,28 @@
1
- import { getEntityRuntime } from '@flighthq/entity';
2
- import { createColorTransform } from '@flighthq/materials';
3
- import type { BoundsNode, Node2D, Node2DData, Node2DRuntime, PartialNode, Rectangle } from '@flighthq/types';
4
- import { BlendMode, DisplayObjectKind, Node2DTraitsKey } from '@flighthq/types';
1
+ import { createColorMatrixAdjustment, createTintAdjustment } from '@flighthq/adjustments/contract';
2
+ import { getEntityRuntime } from '@flighthq/entity/contract';
3
+ import {
4
+ addNodeColorAdjustment,
5
+ getNodeColorAdjustments,
6
+ setNodeColorAdjustments,
7
+ setNodeColorAdjustmentsTint,
8
+ } from '@flighthq/node/contract';
9
+ import type { BoundsNode, Node2D, Node2DData, Node2DRuntime, PartialNode, Rectangle } from '@flighthq/types/contract';
10
+ import { BlendMode, DisplayObjectKind, Node2DTraitsKey } from '@flighthq/types/contract';
5
11
 
6
12
  import {
7
- addNode2DColorAdjustment,
8
13
  createDisplayObject,
9
14
  createNode2D,
10
15
  createNode2DRuntime,
11
- getNode2DColorAdjustments,
12
16
  getNode2DRuntime,
13
17
  isNode2D,
14
18
  setNode2DClip,
15
- setNode2DColorAdjustments,
16
- setNode2DColorTransform,
17
19
  } from './displayObject';
18
20
 
19
21
  function getRuntime_(obj: Node2D): Node2DRuntime {
20
22
  return getEntityRuntime(obj) as Node2DRuntime;
21
23
  }
22
24
 
23
- describe('addNode2DColorAdjustment', () => {
25
+ describe('addNodeColorAdjustment', () => {
24
26
  let obj: Node2D;
25
27
  beforeEach(() => {
26
28
  obj = createDisplayObject();
@@ -28,19 +30,19 @@ describe('addNode2DColorAdjustment', () => {
28
30
 
29
31
  it('appends to a fresh (null) stack and invalidates appearance', () => {
30
32
  const idBefore = getRuntime_(obj).appearanceId;
31
- const adjustment = { kind: 'ColorTransformAdjustment' } as never;
32
- addNode2DColorAdjustment(obj, adjustment);
33
- expect(getNode2DColorAdjustments(obj)).toEqual([adjustment]);
33
+ const adjustment = { kind: 'ColorScaleBiasAdjustment' } as never;
34
+ addNodeColorAdjustment(obj, adjustment);
35
+ expect(getNodeColorAdjustments(obj)).toEqual([adjustment]);
34
36
  expect(getRuntime_(obj).appearanceId).not.toBe(idBefore);
35
37
  });
36
38
 
37
39
  it('appends to an existing stack without mutating the previous array', () => {
38
40
  const a = { kind: 'A' } as never;
39
41
  const b = { kind: 'B' } as never;
40
- addNode2DColorAdjustment(obj, a);
41
- const first = getNode2DColorAdjustments(obj);
42
- addNode2DColorAdjustment(obj, b);
43
- expect(getNode2DColorAdjustments(obj)).toEqual([a, b]);
42
+ addNodeColorAdjustment(obj, a);
43
+ const first = getNodeColorAdjustments(obj);
44
+ addNodeColorAdjustment(obj, b);
45
+ expect(getNodeColorAdjustments(obj)).toEqual([a, b]);
44
46
  expect(first).toEqual([a]); // the earlier array was not mutated
45
47
  });
46
48
  });
@@ -136,12 +138,6 @@ describe('createNode2DRuntime', () => {
136
138
  });
137
139
  });
138
140
 
139
- describe('getNode2DColorAdjustments', () => {
140
- it('defaults to null on a fresh node', () => {
141
- expect(getNode2DColorAdjustments(createDisplayObject())).toBeNull();
142
- });
143
- });
144
-
145
141
  describe('getNode2DRuntime', () => {
146
142
  it('returns the runtime for a Node2D', () => {
147
143
  const obj = createDisplayObject();
@@ -150,6 +146,12 @@ describe('getNode2DRuntime', () => {
150
146
  });
151
147
  });
152
148
 
149
+ describe('getNodeColorAdjustments', () => {
150
+ it('defaults to null on a fresh node', () => {
151
+ expect(getNodeColorAdjustments(createDisplayObject())).toBeNull();
152
+ });
153
+ });
154
+
153
155
  describe('isNode2D', () => {
154
156
  it('returns true for display objects', () => {
155
157
  expect(isNode2D(createDisplayObject())).toBe(true);
@@ -190,7 +192,7 @@ describe('setNode2DClip', () => {
190
192
  });
191
193
  });
192
194
 
193
- describe('setNode2DColorAdjustments', () => {
195
+ describe('setNodeColorAdjustments', () => {
194
196
  let obj: Node2D;
195
197
  beforeEach(() => {
196
198
  obj = createDisplayObject();
@@ -198,33 +200,41 @@ describe('setNode2DColorAdjustments', () => {
198
200
 
199
201
  it('sets the stack and invalidates appearance', () => {
200
202
  const idBefore = getRuntime_(obj).appearanceId;
201
- const stack = [{ kind: 'ColorTransformAdjustment' }] as never;
202
- setNode2DColorAdjustments(obj, stack);
203
- expect(getNode2DColorAdjustments(obj)).toBe(stack);
203
+ const stack = [createTintAdjustment(0xffffffff)];
204
+ setNodeColorAdjustments(obj, stack);
205
+ expect(getNodeColorAdjustments(obj)).toBe(stack);
204
206
  expect(getRuntime_(obj).appearanceId).not.toBe(idBefore);
205
207
  });
206
208
 
207
209
  it('accepts null', () => {
208
- setNode2DColorAdjustments(obj, [{ kind: 'ColorTransformAdjustment' }] as never);
209
- setNode2DColorAdjustments(obj, null);
210
- expect(getNode2DColorAdjustments(obj)).toBeNull();
210
+ setNodeColorAdjustments(obj, [createTintAdjustment(0xffffffff)]);
211
+ setNodeColorAdjustments(obj, null);
212
+ expect(getNodeColorAdjustments(obj)).toBeNull();
213
+ });
214
+
215
+ it('caches a complete channel-mixing matrix without marking it unsupported', () => {
216
+ const matrix = [1, 0.5, 0, 0, 0.1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
217
+ setNodeColorAdjustments(obj, [createColorMatrixAdjustment(matrix)]);
218
+ expect(getNode2DRuntime(obj).resolvedColorMatrix).toEqual(matrix);
219
+ expect(getNode2DRuntime(obj).colorAdjustmentsUnsupported).toBe(false);
211
220
  });
212
221
  });
213
222
 
214
- describe('setNode2DColorTransform', () => {
215
- it('wraps a color transform as one ColorTransformAdjustment on the stack', () => {
223
+ describe('setNodeColorAdjustmentsTint', () => {
224
+ it('replaces the stack with one TintAdjustment built from the packed color', () => {
216
225
  const obj = createDisplayObject();
217
- setNode2DColorTransform(obj, createColorTransform({ redMultiplier: 0.5 }));
218
- const stack = getNode2DColorAdjustments(obj);
226
+ setNodeColorAdjustmentsTint(obj, 0xff0000ff);
227
+ const stack = getNodeColorAdjustments(obj);
219
228
  expect(stack?.length).toBe(1);
220
- expect(stack?.[0].kind).toBe('ColorTransformAdjustment');
229
+ expect(stack?.[0].kind).toBe('TintAdjustment');
221
230
  });
222
231
 
223
- it('clears with null', () => {
232
+ it('replaces any prior adjustments rather than layering', () => {
224
233
  const obj = createDisplayObject();
225
- setNode2DColorTransform(obj, createColorTransform({ redMultiplier: 0.5 }));
226
- setNode2DColorTransform(obj, null);
227
- expect(getNode2DColorAdjustments(obj)).toBeNull();
234
+ setNodeColorAdjustmentsTint(obj, 0xff0000ff);
235
+ setNodeColorAdjustmentsTint(obj, 0x00ff00ff);
236
+ const stack = getNodeColorAdjustments(obj);
237
+ expect(stack?.length).toBe(1);
228
238
  });
229
239
  });
230
240
 
@@ -1,6 +1,6 @@
1
- import { createAnimationChannel, createAnimationClip, createAnimationTrack } from '@flighthq/animation';
2
- import { getNodeLocalTransformRevision } from '@flighthq/node';
3
- import type { Node2DAnimationPath, Node2DAnimationTarget } from '@flighthq/types';
1
+ import { createAnimationChannel, createAnimationClip, createAnimationTrack } from '@flighthq/animation/contract';
2
+ import { getNodeLocalTransformRevision } from '@flighthq/node/contract';
3
+ import type { Node2DAnimationPath, Node2DAnimationTarget } from '@flighthq/types/contract';
4
4
 
5
5
  import { createDisplayObject } from './displayObject';
6
6
  import { applyAnimationClipToNode2D } from './displayObjectAnimation';
@@ -1,6 +1,6 @@
1
- import { createRectangle } from '@flighthq/geometry';
2
- import type { HtmlView, Node } from '@flighthq/types';
3
- import { HtmlViewKind } from '@flighthq/types';
1
+ import { createRectangle } from '@flighthq/geometry/contract';
2
+ import type { HtmlView, Node } from '@flighthq/types/contract';
3
+ import { HtmlViewKind } from '@flighthq/types/contract';
4
4
 
5
5
  import {
6
6
  computeHtmlViewLocalBoundsRectangle,
@@ -0,0 +1,97 @@
1
+ import { createRectangle } from '@flighthq/geometry/contract';
2
+ import type { Node, RenderTargetNode2D } from '@flighthq/types/contract';
3
+ import { RenderTargetNode2DKind } from '@flighthq/types/contract';
4
+
5
+ import {
6
+ computeRenderTargetNode2DLocalBoundsRectangle,
7
+ createRenderTargetNode2D,
8
+ createRenderTargetNode2DData,
9
+ createRenderTargetNode2DRuntime,
10
+ getRenderTargetNode2DRuntime,
11
+ setRenderTargetNode2DSize,
12
+ } from './renderTargetNode2D';
13
+
14
+ describe('computeRenderTargetNode2DLocalBoundsRectangle', () => {
15
+ it('writes width and height from data', () => {
16
+ const node = createRenderTargetNode2D({ width: 400, height: 300 });
17
+ const out = createRectangle(0, 0, 0, 0);
18
+
19
+ computeRenderTargetNode2DLocalBoundsRectangle(out, node as unknown as Node);
20
+
21
+ expect(out.width).toBe(400);
22
+ expect(out.height).toBe(300);
23
+ });
24
+ });
25
+
26
+ describe('createRenderTargetNode2D', () => {
27
+ it('creates a node with the requested dimensions and no depth by default', () => {
28
+ const node = createRenderTargetNode2D({ width: 320, height: 240 });
29
+
30
+ expect(node.data.depth).toBe(false);
31
+ expect(node.data.height).toBe(240);
32
+ expect(node.data.width).toBe(320);
33
+ expect(node.kind).toBe(RenderTargetNode2DKind);
34
+ });
35
+
36
+ it('enables a depth attachment when requested', () => {
37
+ const node = createRenderTargetNode2D({ width: 320, height: 240, depth: true });
38
+
39
+ expect(node.data.depth).toBe(true);
40
+ });
41
+ });
42
+
43
+ describe('createRenderTargetNode2DData', () => {
44
+ it('returns default values', () => {
45
+ const data = createRenderTargetNode2DData();
46
+
47
+ expect(data.depth).toBe(false);
48
+ expect(data.height).toBe(0);
49
+ expect(data.width).toBe(0);
50
+ });
51
+
52
+ it('allows predefined values', () => {
53
+ const data = createRenderTargetNode2DData({ depth: true, height: 600, width: 800 });
54
+
55
+ expect(data.depth).toBe(true);
56
+ expect(data.height).toBe(600);
57
+ expect(data.width).toBe(800);
58
+ });
59
+ });
60
+
61
+ describe('createRenderTargetNode2DRuntime', () => {
62
+ it('returns a non-null runtime', () => {
63
+ expect(createRenderTargetNode2DRuntime()).not.toBeNull();
64
+ });
65
+ });
66
+
67
+ describe('getRenderTargetNode2DRuntime', () => {
68
+ it('returns the node runtime', () => {
69
+ const node = createRenderTargetNode2D({ width: 1, height: 1 });
70
+
71
+ expect(getRenderTargetNode2DRuntime(node)).not.toBeNull();
72
+ });
73
+ });
74
+
75
+ describe('setRenderTargetNode2DSize', () => {
76
+ let node: RenderTargetNode2D;
77
+
78
+ beforeEach(() => {
79
+ node = createRenderTargetNode2D({ width: 100, height: 100 });
80
+ });
81
+
82
+ it('updates width and height', () => {
83
+ setRenderTargetNode2DSize(node, 640, 480);
84
+
85
+ expect(node.data.width).toBe(640);
86
+ expect(node.data.height).toBe(480);
87
+ });
88
+
89
+ it('is a no-op when size is unchanged', () => {
90
+ const runtime = getRenderTargetNode2DRuntime(node);
91
+ const before = runtime.localBoundsId;
92
+
93
+ setRenderTargetNode2DSize(node, 100, 100);
94
+
95
+ expect(runtime.localBoundsId).toBe(before);
96
+ });
97
+ });
@@ -1,6 +1,6 @@
1
- import { addNodeChild } from '@flighthq/node';
2
- import { connectSignal } from '@flighthq/signals';
3
- import type { Scene2D } from '@flighthq/types';
1
+ import { addNodeChild } from '@flighthq/node/contract';
2
+ import { connectSignal } from '@flighthq/signals/contract';
3
+ import type { Scene2D } from '@flighthq/types/contract';
4
4
 
5
5
  import { createDisplayObject } from './displayObject';
6
6
  import {
package/src/video.test.ts CHANGED
@@ -1,6 +1,10 @@
1
- import { getNodeLocalBoundsRevision, getNodeLocalContentRevision, getNodeLocalTransformRevision } from '@flighthq/node';
2
- import type { Video } from '@flighthq/types';
3
- import { VideoKind } from '@flighthq/types';
1
+ import {
2
+ getNodeLocalBoundsRevision,
3
+ getNodeLocalContentRevision,
4
+ getNodeLocalTransformRevision,
5
+ } from '@flighthq/node/contract';
6
+ import type { Video } from '@flighthq/types/contract';
7
+ import { VideoKind } from '@flighthq/types/contract';
4
8
 
5
9
  import {
6
10
  computeVideoLocalBoundsRectangle,
@@ -1,8 +0,0 @@
1
- import type { Node, PartialNode, Rectangle, RenderView, RenderViewData, RenderViewRuntime } from '@flighthq/types';
2
- export declare function computeRenderViewLocalBoundsRectangle(out: Rectangle, source: Readonly<Node>): void;
3
- export declare function createRenderView(obj?: Readonly<PartialNode<RenderView>>): RenderView;
4
- export declare function createRenderViewData(data?: Readonly<Partial<RenderViewData>>): RenderViewData;
5
- export declare function createRenderViewRuntime(): RenderViewRuntime;
6
- export declare function getRenderViewRuntime(source: Readonly<RenderView>): Readonly<RenderViewRuntime>;
7
- export declare function setRenderViewSize(source: RenderView, width: number, height: number): void;
8
- //# sourceMappingURL=renderView.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"renderView.d.ts","sourceRoot":"","sources":["../src/renderView.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,IAAI,EACJ,WAAW,EACX,SAAS,EACT,UAAU,EACV,cAAc,EACd,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AAKzB,wBAAgB,qCAAqC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAIlG;AAED,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAEpF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,cAAc,CAM7F;AAED,wBAAgB,uBAAuB,IAAI,iBAAiB,CAE3D;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAE9F;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAKzF"}
@@ -1,35 +0,0 @@
1
- import { invalidateNodeLocalBounds } from '@flighthq/node';
2
- import { RenderViewKind } from '@flighthq/types';
3
- import { createNode2D, createNode2DRuntime, getNode2DRuntime } from './displayObject';
4
- export function computeRenderViewLocalBoundsRectangle(out, source) {
5
- const data = source.data;
6
- out.width = data.width;
7
- out.height = data.height;
8
- }
9
- export function createRenderView(obj) {
10
- return createNode2D(RenderViewKind, obj, createRenderViewData, createRenderViewRuntime);
11
- }
12
- export function createRenderViewData(data) {
13
- return {
14
- height: data?.height ?? 0,
15
- renderer: data?.renderer ?? null,
16
- width: data?.width ?? 0,
17
- };
18
- }
19
- export function createRenderViewRuntime() {
20
- return createNode2DRuntime(defaultMethods);
21
- }
22
- export function getRenderViewRuntime(source) {
23
- return getNode2DRuntime(source);
24
- }
25
- export function setRenderViewSize(source, width, height) {
26
- if (source.data.width === width && source.data.height === height)
27
- return;
28
- source.data.width = width;
29
- source.data.height = height;
30
- invalidateNodeLocalBounds(source);
31
- }
32
- const defaultMethods = {
33
- computeLocalBoundsRectangle: computeRenderViewLocalBoundsRectangle,
34
- };
35
- //# sourceMappingURL=renderView.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"renderView.js","sourceRoot":"","sources":["../src/renderView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAU3D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,UAAU,qCAAqC,CAAC,GAAc,EAAE,MAAsB;IAC1F,MAAM,IAAI,GAAI,MAAqB,CAAC,IAAI,CAAC;IACzC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAuC;IACtE,OAAO,YAAY,CAAC,cAAc,EAAE,GAAG,EAAE,oBAAoB,EAAE,uBAAuB,CAAe,CAAC;AACxG,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAwC;IAC3E,OAAO;QACL,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;QACzB,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,IAAI;QAChC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,mBAAmB,CAAC,cAAc,CAAsB,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAA4B;IAC/D,OAAO,gBAAgB,CAAC,MAAM,CAAsB,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAkB,EAAE,KAAa,EAAE,MAAc;IACjF,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO;IACzE,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5B,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,cAAc,GAA0C;IAC5D,2BAA2B,EAAE,qCAAqC;CACnE,CAAC"}
@@ -1,104 +0,0 @@
1
- import { createRectangle } from '@flighthq/geometry';
2
- import type { Node, RenderView, RenderViewRenderer } from '@flighthq/types';
3
- import { RenderViewKind } from '@flighthq/types';
4
-
5
- import {
6
- computeRenderViewLocalBoundsRectangle,
7
- createRenderView,
8
- createRenderViewData,
9
- createRenderViewRuntime,
10
- getRenderViewRuntime,
11
- setRenderViewSize,
12
- } from './renderView';
13
-
14
- function makeRenderer(): RenderViewRenderer {
15
- const canvas = document.createElement('canvas');
16
- canvas.width = 100;
17
- canvas.height = 100;
18
- return { canvas, render: () => {} };
19
- }
20
-
21
- describe('computeRenderViewLocalBoundsRectangle', () => {
22
- it('writes width and height from data', () => {
23
- const view = createRenderView({ data: { width: 400, height: 300 } });
24
- const out = createRectangle(0, 0, 0, 0);
25
- computeRenderViewLocalBoundsRectangle(out, view as unknown as Node);
26
- expect(out.width).toBe(400);
27
- expect(out.height).toBe(300);
28
- });
29
- });
30
-
31
- describe('createRenderView', () => {
32
- let view: RenderView;
33
-
34
- beforeEach(() => {
35
- view = createRenderView();
36
- });
37
-
38
- it('initializes default values', () => {
39
- expect(view.data.renderer).toBeNull();
40
- expect(view.data.width).toBe(0);
41
- expect(view.data.height).toBe(0);
42
- expect(view.kind).toStrictEqual(RenderViewKind);
43
- });
44
-
45
- it('allows pre-defined values', () => {
46
- const renderer = makeRenderer();
47
- const obj = createRenderView({ data: { renderer, width: 320, height: 240 } });
48
- expect(obj.data.renderer).toStrictEqual(renderer);
49
- expect(obj.data.width).toBe(320);
50
- expect(obj.data.height).toBe(240);
51
- });
52
-
53
- it('returns a new object for better hidden-class performance', () => {
54
- const base = {};
55
- const obj = createRenderView(base);
56
- expect(obj).not.toStrictEqual(base);
57
- });
58
- });
59
-
60
- describe('createRenderViewData', () => {
61
- it('returns default values', () => {
62
- const data = createRenderViewData();
63
- expect(data.renderer).toBeNull();
64
- expect(data.width).toBe(0);
65
- expect(data.height).toBe(0);
66
- });
67
-
68
- it('allows pre-defined values', () => {
69
- const renderer = makeRenderer();
70
- const data = createRenderViewData({ renderer, width: 800, height: 600 });
71
- expect(data.renderer).toStrictEqual(renderer);
72
- expect(data.width).toBe(800);
73
- expect(data.height).toBe(600);
74
- });
75
- });
76
-
77
- describe('createRenderViewRuntime', () => {
78
- it('returns a non-null runtime', () => {
79
- expect(createRenderViewRuntime()).not.toBeNull();
80
- });
81
- });
82
-
83
- describe('getRenderViewRuntime', () => {
84
- it('returns the runtime for a RenderView', () => {
85
- const view = createRenderView();
86
- expect(getRenderViewRuntime(view)).not.toBeNull();
87
- });
88
- });
89
-
90
- describe('setRenderViewSize', () => {
91
- it('updates width and height', () => {
92
- const view = createRenderView();
93
- setRenderViewSize(view, 640, 480);
94
- expect(view.data.width).toBe(640);
95
- expect(view.data.height).toBe(480);
96
- });
97
-
98
- it('is a no-op when size is unchanged', () => {
99
- const view = createRenderView({ data: { width: 100, height: 100 } });
100
- const before = view.data.width;
101
- setRenderViewSize(view, 100, 100);
102
- expect(view.data.width).toBe(before);
103
- });
104
- });