@flighthq/render-gl 0.5.1-next.743.8d09db1 → 0.5.1-next.799.62ef0c7

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.
package/README.md CHANGED
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/render-gl`. The `@fl
13
13
  This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
14
14
 
15
15
  - [Flight project](https://github.com/flighthq/flight)
16
- - [Source for @flighthq/render-gl@0.5.1-next.743.8d09db1](https://github.com/flighthq/flight/tree/8d09db125a0afd3b73ca6e039a7dd25bcb9737d0/packages/render-gl)
17
- - [License](https://github.com/flighthq/flight/blob/8d09db125a0afd3b73ca6e039a7dd25bcb9737d0/LICENSE.md)
16
+ - [Source for @flighthq/render-gl@0.5.1-next.799.62ef0c7](https://github.com/flighthq/flight/tree/62ef0c74f09f24177aac3695b2487b2d743d4fe6/packages/render-gl)
17
+ - [License](https://github.com/flighthq/flight/blob/62ef0c74f09f24177aac3695b2487b2d743d4fe6/LICENSE.md)
package/dist/glDraw.d.ts CHANGED
@@ -17,6 +17,6 @@ export declare function registerGlBlendMode(state: GlRenderState, blendMode: Ble
17
17
  export declare function setGlQuadMatrixFromOffset(state: GlRenderState, a: number, b: number, c: number, d: number, tx: number, ty: number, dx: number, dy: number): void;
18
18
  export declare function updateGlTexture(state: GlRenderState, texture: WebGLTexture, canvas: HTMLCanvasElement): void;
19
19
  export declare function useGlProgram(state: GlRenderState, shader?: GlBitmapShader): void;
20
- declare let _standardGlBlendRealizations: import("@flighthq/types/RegistryTable").KeyedTable<GlBlendRealization>;
20
+ declare let _standardGlBlendRealizations: import("@flighthq/types/RegistryTable").KeyedTable<GlBlendRealization> & import("@flighthq/types/Entity").Entity;
21
21
  export { _standardGlBlendRealizations as standardGlBlendRealizations };
22
22
  //# sourceMappingURL=glDraw.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"glDraw.d.ts","sourceRoot":"","sources":["../src/glDraw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glDraw.d.ts","sourceRoot":"","sources":["../src/glDraw.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { createEntity } from '@flighthq/entity/contract';
2
2
  import { createKeyedTable, createSlotTable } from '@flighthq/registry/contract';
3
3
  import { EntityRuntimeKey } from '@flighthq/types/contract';
4
4
  export function createEmptyGlRegistries() {
5
- return {
5
+ return createEntity({
6
6
  blendRealizations: createKeyedTable('GlBlendRealization', 'Normal'),
7
7
  compressedTextureDecoder: createSlotTable('GlCompressedTextureDecoder', 'Unregistered'),
8
8
  compressedTextureUpload: createSlotTable('GlCompressedTextureUpload', 'Unregistered'),
@@ -20,7 +20,7 @@ export function createEmptyGlRegistries() {
20
20
  strokeTessellator: createSlotTable('StrokeTessellator', 'Rasterize'),
21
21
  textureResolvers: createKeyedTable('GlTextureResolver', 'Unregistered'),
22
22
  velocityWriters: createKeyedTable('GlVelocityWriter', 'Unregistered'),
23
- };
23
+ });
24
24
  }
25
25
  export function createGlPipeline(registries) {
26
26
  const pipeline = createEntity({ registries });
@@ -1 +1 @@
1
- {"version":3,"file":"glPipeline.js","sourceRoot":"","sources":["../src/glPipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL,iBAAiB,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,QAAQ,CAAC;QACnE,wBAAwB,EAAE,eAAe,CAAC,4BAA4B,EAAE,cAAc,CAAC;QACvF,uBAAuB,EAAE,eAAe,CAAC,2BAA2B,EAAE,cAAc,CAAC;QACrF,mBAAmB,EAAE,gBAAgB,CAAC,sBAAsB,EAAE,cAAc,CAAC;QAC7E,qBAAqB,EAAE,gBAAgB,CAAC,wBAAwB,EAAE,cAAc,CAAC;QACjF,iBAAiB,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,kBAAkB,CAAC;QAC7E,qBAAqB,EAAE,gBAAgB,CAAC,wBAAwB,EAAE,kBAAkB,CAAC;QACrF,gBAAgB,EAAE,gBAAgB,CAAC,mBAAmB,EAAE,cAAc,CAAC;QACvE,uBAAuB,EAAE,CAAC;QAC1B,aAAa,EAAE,gBAAgB,CAAC,gBAAgB,EAAE,cAAc,CAAC;QACjE,oBAAoB,EAAE,CAAC;QACvB,aAAa,EAAE,gBAAgB,CAAC,gBAAgB,EAAE,cAAc,CAAC;QACjE,SAAS,EAAE,gBAAgB,CAAC,cAAc,EAAE,cAAc,CAAC;QAC3D,eAAe,EAAE,eAAe,CAAC,mBAAmB,EAAE,cAAc,CAAC;QACrE,iBAAiB,EAAE,eAAe,CAAC,mBAAmB,EAAE,WAAW,CAAC;QACpE,gBAAgB,EAAE,gBAAgB,CAAC,mBAAmB,EAAE,cAAc,CAAC;QACvE,eAAe,EAAE,gBAAgB,CAAC,kBAAkB,EAAE,cAAc,CAAC;KACtE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,UAAwC;IACvE,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,UAAU,EAAE,CAAe,CAAC;IAC5D,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC/C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,QAA8B;IACpE,OAAO,QAAQ,CAAC,UAAU,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"glPipeline.js","sourceRoot":"","sources":["../src/glPipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,UAAU,uBAAuB;IACrC,OAAO,YAAY,CAAC;QAClB,iBAAiB,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,QAAQ,CAAC;QACnE,wBAAwB,EAAE,eAAe,CAAC,4BAA4B,EAAE,cAAc,CAAC;QACvF,uBAAuB,EAAE,eAAe,CAAC,2BAA2B,EAAE,cAAc,CAAC;QACrF,mBAAmB,EAAE,gBAAgB,CAAC,sBAAsB,EAAE,cAAc,CAAC;QAC7E,qBAAqB,EAAE,gBAAgB,CAAC,wBAAwB,EAAE,cAAc,CAAC;QACjF,iBAAiB,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,kBAAkB,CAAC;QAC7E,qBAAqB,EAAE,gBAAgB,CAAC,wBAAwB,EAAE,kBAAkB,CAAC;QACrF,gBAAgB,EAAE,gBAAgB,CAAC,mBAAmB,EAAE,cAAc,CAAC;QACvE,uBAAuB,EAAE,CAAC;QAC1B,aAAa,EAAE,gBAAgB,CAAC,gBAAgB,EAAE,cAAc,CAAC;QACjE,oBAAoB,EAAE,CAAC;QACvB,aAAa,EAAE,gBAAgB,CAAC,gBAAgB,EAAE,cAAc,CAAC;QACjE,SAAS,EAAE,gBAAgB,CAAC,cAAc,EAAE,cAAc,CAAC;QAC3D,eAAe,EAAE,eAAe,CAAC,mBAAmB,EAAE,cAAc,CAAC;QACrE,iBAAiB,EAAE,eAAe,CAAC,mBAAmB,EAAE,WAAW,CAAC;QACpE,gBAAgB,EAAE,gBAAgB,CAAC,mBAAmB,EAAE,cAAc,CAAC;QACvE,eAAe,EAAE,gBAAgB,CAAC,kBAAkB,EAAE,cAAc,CAAC;KACtE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,UAAwC;IACvE,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,UAAU,EAAE,CAAe,CAAC;IAC5D,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC/C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,QAA8B;IACpE,OAAO,QAAQ,CAAC,UAAU,CAAC;AAC7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTargetPool.d.ts","sourceRoot":"","sources":["../src/glRenderTargetPool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,kBAAkB,EAElB,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAclC,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAC3C,cAAc,CAAC;AAClB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,WAAW,GACxB,cAAc,CAAC;AAClB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,UAAU,GACvB,cAAc,GAAG,IAAI,CAAC;AACzB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,wBAAwB,GACrC,cAAc,GAAG,IAAI,CAAC;AAkCzB,wBAAgB,wBAAwB,IAAI,kBAAkB,CAE7D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAG9F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAE5F"}
1
+ {"version":3,"file":"glRenderTargetPool.d.ts","sourceRoot":"","sources":["../src/glRenderTargetPool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,kBAAkB,EAElB,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAclC,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAC3C,cAAc,CAAC;AAClB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,WAAW,GACxB,cAAc,CAAC;AAClB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,UAAU,GACvB,cAAc,GAAG,IAAI,CAAC;AACzB,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAC5C,YAAY,EAAE,wBAAwB,GACrC,cAAc,GAAG,IAAI,CAAC;AAkCzB,wBAAgB,wBAAwB,IAAI,kBAAkB,CAE7D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAG9F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAE5F"}
@@ -1,3 +1,4 @@
1
+ import { createEntity } from '@flighthq/entity/contract';
1
2
  import { resolveRenderTargetDescriptor } from '@flighthq/render/contract';
2
3
  import { clearGlRenderTarget } from './glFullscreenPass';
3
4
  import { createGlRenderTarget, destroyGlRenderTarget, resolveGlRenderTargetAxes } from './glRenderTarget';
@@ -29,7 +30,7 @@ export function acquireGlRenderTarget(state, pool, descriptor, formatPolicy = 'p
29
30
  return createGlRenderTarget(state, descriptor, formatPolicy);
30
31
  }
31
32
  export function createGlRenderTargetPool() {
32
- return { free: [] };
33
+ return createEntity({ free: [] });
33
34
  }
34
35
  export function destroyGlRenderTargetPool(state, pool) {
35
36
  for (const target of pool.free)
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTargetPool.js","sourceRoot":"","sources":["../src/glRenderTargetPool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glRenderTargetPool.js","sourceRoot":"","sources":["../src/glRenderTargetPool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTexturePool.d.ts","sourceRoot":"","sources":["../src/glRenderTexturePool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EAEnB,sBAAsB,EACtB,aAAa,EACd,MAAM,0BAA0B,CAAC;AAKlC,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,mBAAmB,EACzB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAC3C,aAAa,CASf;AAED,wBAAgB,yBAAyB,IAAI,mBAAmB,CAQ/D;AAID,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAShG;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,mBAAmB,EACzB,aAAa,EAAE,aAAa,GAC3B,IAAI,CAON;AAID,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,mBAAmB,EACzB,WAAW,EAAE,aAAa,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,EAC5D,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,GACtD,CAAC,CAWH"}
1
+ {"version":3,"file":"glRenderTexturePool.d.ts","sourceRoot":"","sources":["../src/glRenderTexturePool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EAEnB,sBAAsB,EACtB,aAAa,EACd,MAAM,0BAA0B,CAAC;AAKlC,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,mBAAmB,EACzB,UAAU,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAC3C,aAAa,CASf;AAED,wBAAgB,yBAAyB,IAAI,mBAAmB,CAQ/D;AAID,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAShG;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,mBAAmB,EACzB,aAAa,EAAE,aAAa,GAC3B,IAAI,CAON;AAID,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,mBAAmB,EACzB,WAAW,EAAE,aAAa,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,EAC5D,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,GACtD,CAAC,CAWH"}
@@ -1,3 +1,4 @@
1
+ import { createEntity } from '@flighthq/entity/contract';
1
2
  import { createRenderTexture, resetTextureUvTransform } from '@flighthq/texture/contract';
2
3
  import { createGlRenderTargetPool, destroyGlRenderTargetPool } from './glRenderTargetPool';
3
4
  import { destroyGlRenderTexture, invalidateGlRenderTexture } from './glRenderTexture';
@@ -12,13 +13,13 @@ export function acquireGlRenderTexture(state, pool, descriptor) {
12
13
  return renderTexture;
13
14
  }
14
15
  export function createGlRenderTexturePool() {
15
- return {
16
+ return createEntity({
16
17
  context: null,
17
18
  destroyed: false,
18
19
  effectTargets: createGlRenderTargetPool(),
19
20
  free: [],
20
21
  leased: new Set(),
21
- };
22
+ });
22
23
  }
23
24
  // Destroys free and currently leased handles. A shutdown caller need not recover every outstanding
24
25
  // display lease first; after this call the pool cannot be acquired again.
@@ -1 +1 @@
1
- {"version":3,"file":"glRenderTexturePool.js","sourceRoot":"","sources":["../src/glRenderTexturePool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAS1F,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEtF,MAAM,UAAU,sBAAsB,CACpC,KAAoB,EACpB,IAAyB,EACzB,UAA4C;IAE5C,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACzE,2BAA2B,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC9D,uBAAuB,CAAC,aAAa,CAAC,CAAC;IACvC,aAAa,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,MAAM,CAAC;IAC3D,yBAAyB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC/B,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,KAAK;QAChB,aAAa,EAAE,wBAAwB,EAAE;QACzC,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,IAAI,GAAG,EAAE;KAClB,CAAC;AACJ,CAAC;AAED,mGAAmG;AACnG,0EAA0E;AAC1E,MAAM,UAAU,0BAA0B,CAAC,KAAoB,EAAE,IAAyB;IACxF,IAAI,IAAI,CAAC,SAAS;QAAE,OAAO;IAC3B,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACzD,KAAK,MAAM,aAAa,IAAI,QAAQ;QAAE,sBAAsB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACnF,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACrB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACpB,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACrD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAoB,EACpB,IAAyB,EACzB,aAA4B;IAE5B,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,yBAAyB,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAChC,CAAC;AAED,sGAAsG;AACtG,yFAAyF;AACzF,MAAM,UAAU,oBAAoB,CAClC,KAAoB,EACpB,IAAyB,EACzB,WAA4D,EAC5D,QAAuD;IAEvD,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,IAAI,CAAC;QACH,KAAK,MAAM,UAAU,IAAI,WAAW;YAAE,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QACrG,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;YAAS,CAAC;QACT,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;gBAAE,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAoB,EAAE,UAA4C;IACrG,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,MAAM,CAAC,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC;IACtD,MAAM,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACvG,MAAM,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAC5C,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,MAAM,CAAC;IACpD,MAAM,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACpG,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IAC1C,MAAM,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAoB,EAAE,IAAyB;IACvE,IAAI,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC9E,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAoB,EAAE,IAAyB;IACxE,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;IAC1B,CAAC;SAAM,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"glRenderTexturePool.js","sourceRoot":"","sources":["../src/glRenderTexturePool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"glSkinPaletteTexture.d.ts","sourceRoot":"","sources":["../src/glSkinPaletteTexture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAYhF,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,SAAS,GAAG,oBAAoB,CAE9E;AAID,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAExG;AAQD,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,oBAAoB,EAC7B,aAAa,EAAE,QAAQ,CAAC,YAAY,CAAC,EACrC,UAAU,EAAE,MAAM,EAClB,cAAc,SAAI,GACjB,IAAI,CAqBN"}
1
+ {"version":3,"file":"glSkinPaletteTexture.d.ts","sourceRoot":"","sources":["../src/glSkinPaletteTexture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAYhF,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,SAAS,GAAG,oBAAoB,CAE9E;AAID,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAExG;AAQD,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,oBAAoB,EAC7B,aAAa,EAAE,QAAQ,CAAC,YAAY,CAAC,EACrC,UAAU,EAAE,MAAM,EAClB,cAAc,SAAI,GACjB,IAAI,CAqBN"}
@@ -1,3 +1,4 @@
1
+ import { createEntity } from '@flighthq/entity/contract';
1
2
  // The GPU skinning bone-palette data texture: the per-mesh joint-matrix palette in an RGBA32F texture
2
3
  // the vertex shader reads with texelFetch (GLSL ES 3.0 core), one mat4 packed as four consecutive
3
4
  // RGBA32F texels. The palette is a single row (height 1), so joint j's column c is at texel x = j*4 + c.
@@ -8,7 +9,7 @@
8
9
  // uploadGlSkinPaletteTexture allocates storage sized to the palette. The caller owns the returned
9
10
  // struct and frees it with destroyGlSkinPaletteTexture.
10
11
  export function createGlSkinPaletteTexture(gl) {
11
- return { jointCapacity: 0, texture: gl.createTexture() };
12
+ return createEntity({ jointCapacity: 0, texture: gl.createTexture() });
12
13
  }
13
14
  // Frees the palette texture's GL object. The struct must not be used after this call. Deleting an
14
15
  // already-deleted GL texture is a silent no-op, so this is safe to call more than once.
@@ -1 +1 @@
1
- {"version":3,"file":"glSkinPaletteTexture.js","sourceRoot":"","sources":["../src/glSkinPaletteTexture.ts"],"names":[],"mappings":"AAEA,sGAAsG;AACtG,kGAAkG;AAClG,yGAAyG;AACzG,oGAAoG;AACpG,+FAA+F;AAC/F,+DAA+D;AAE/D,gGAAgG;AAChG,kGAAkG;AAClG,wDAAwD;AACxD,MAAM,UAAU,0BAA0B,CAAC,EAAa;IACtD,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,aAAa,EAAG,EAAE,CAAC;AAC5D,CAAC;AAED,kGAAkG;AAClG,wFAAwF;AACxF,MAAM,UAAU,2BAA2B,CAAC,EAAa,EAAE,OAAuC;IAChG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,iGAAiG;AACjG,uGAAuG;AACvG,qGAAqG;AACrG,sGAAsG;AACtG,uGAAuG;AACvG,qGAAqG;AACrG,MAAM,UAAU,0BAA0B,CACxC,EAAa,EACb,OAA6B,EAC7B,aAAqC,EACrC,UAAkB,EAClB,cAAc,GAAG,CAAC;IAElB,kGAAkG;IAClG,mGAAmG;IACnG,kGAAkG;IAClG,4DAA4D;IAC5D,MAAM,KAAK,GAAG,UAAU,GAAG,cAAc,CAAC;IAC1C,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C,8FAA8F;IAC9F,+FAA+F;IAC/F,kFAAkF;IAClF,IAAI,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QACvC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,aAA6B,CAAC,CAAC;QAC3G,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACnE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACnE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;QACrE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;QACrE,OAAO,CAAC,aAAa,GAAG,UAAU,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,aAA6B,CAAC,CAAC;IACvG,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"glSkinPaletteTexture.js","sourceRoot":"","sources":["../src/glSkinPaletteTexture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,sGAAsG;AACtG,kGAAkG;AAClG,yGAAyG;AACzG,oGAAoG;AACpG,+FAA+F;AAC/F,+DAA+D;AAE/D,gGAAgG;AAChG,kGAAkG;AAClG,wDAAwD;AACxD,MAAM,UAAU,0BAA0B,CAAC,EAAa;IACtD,OAAO,YAAY,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,aAAa,EAAG,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,kGAAkG;AAClG,wFAAwF;AACxF,MAAM,UAAU,2BAA2B,CAAC,EAAa,EAAE,OAAuC;IAChG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,iGAAiG;AACjG,uGAAuG;AACvG,qGAAqG;AACrG,sGAAsG;AACtG,uGAAuG;AACvG,qGAAqG;AACrG,MAAM,UAAU,0BAA0B,CACxC,EAAa,EACb,OAA6B,EAC7B,aAAqC,EACrC,UAAkB,EAClB,cAAc,GAAG,CAAC;IAElB,kGAAkG;IAClG,mGAAmG;IACnG,kGAAkG;IAClG,4DAA4D;IAC5D,MAAM,KAAK,GAAG,UAAU,GAAG,cAAc,CAAC;IAC1C,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C,8FAA8F;IAC9F,+FAA+F;IAC/F,kFAAkF;IAClF,IAAI,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QACvC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,aAA6B,CAAC,CAAC;QAC3G,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACnE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;QACnE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;QACrE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;QACrE,OAAO,CAAC,aAAa,GAAG,UAAU,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,aAA6B,CAAC,CAAC;IACvG,CAAC;AACH,CAAC"}
@@ -7,6 +7,6 @@ export declare function registerGlTextureResolver(state: GlRenderState, sourceKi
7
7
  export declare function registerStandardGlTextureResolvers(state: GlRenderState): void;
8
8
  export declare function resolveGlTexture(state: GlRenderState, texture: Readonly<TextureLike>, premultiply?: boolean, workingColorSpace?: RenderTargetColorSpace): WebGLTexture | null;
9
9
  declare function resolveGlImageTexture(state: GlRenderState, texture: Readonly<TextureLike>, premultiply: boolean, colorSpace: TextureColorSpace): GlTextureRealization | null;
10
- declare const _standardGlTextureResolvers: import("@flighthq/types/RegistryTable").KeyedTable<typeof resolveGlImageTexture>;
10
+ declare const _standardGlTextureResolvers: import("@flighthq/types/RegistryTable").KeyedTable<typeof resolveGlImageTexture> & import("@flighthq/types/Entity").Entity;
11
11
  export { _standardGlTextureResolvers as standardGlTextureResolvers };
12
12
  //# sourceMappingURL=glTextureResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"glTextureResolver.d.ts","sourceRoot":"","sources":["../src/glTextureResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EAGtB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EAGjB,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACZ,MAAM,0BAA0B,CAAC;AAmBlC,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAE1E;AAED,wBAAgB,wCAAwC,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAEnF;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAEzE;AAGD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAE1E;AAKD,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,iBAAiB,GAAG,IAAI,GACjC,IAAI,CAON;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAI7E;AAWD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EAC9B,WAAW,UAAQ,EACnB,iBAAiB,GAAE,sBAAiC,GACnD,YAAY,GAAG,IAAI,CAgBrB;AA8BD,iBAAS,qBAAqB,CAC5B,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EAC9B,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,iBAAiB,GAC5B,oBAAoB,GAAG,IAAI,CAO7B;AAOD,QAAA,MAAM,2BAA2B,kFAYhC,CAAC;AAEF,OAAO,EAAE,2BAA2B,IAAI,0BAA0B,EAAE,CAAC"}
1
+ {"version":3,"file":"glTextureResolver.d.ts","sourceRoot":"","sources":["../src/glTextureResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EAGtB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EAGjB,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACZ,MAAM,0BAA0B,CAAC;AAmBlC,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAE1E;AAED,wBAAgB,wCAAwC,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAEnF;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAEzE;AAGD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAE1E;AAKD,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,iBAAiB,GAAG,IAAI,GACjC,IAAI,CAON;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAI7E;AAWD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EAC9B,WAAW,UAAQ,EACnB,iBAAiB,GAAE,sBAAiC,GACnD,YAAY,GAAG,IAAI,CAgBrB;AA8BD,iBAAS,qBAAqB,CAC5B,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EAC9B,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,iBAAiB,GAC5B,oBAAoB,GAAG,IAAI,CAO7B;AAOD,QAAA,MAAM,2BAA2B,4HAYhC,CAAC;AAEF,OAAO,EAAE,2BAA2B,IAAI,0BAA0B,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/render-gl",
3
- "version": "0.5.1-next.743.8d09db1",
3
+ "version": "0.5.1-next.799.62ef0c7",
4
4
  "author": "Joshua Granick and other contributors",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -38,16 +38,16 @@
38
38
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
39
39
  },
40
40
  "dependencies": {
41
- "@flighthq/color": "0.5.1-next.743.8d09db1",
42
- "@flighthq/entity": "0.5.1-next.743.8d09db1",
43
- "@flighthq/log": "0.5.1-next.743.8d09db1",
44
- "@flighthq/scene2d": "0.5.1-next.743.8d09db1",
45
- "@flighthq/geometry": "0.5.1-next.743.8d09db1",
46
- "@flighthq/render": "0.5.1-next.743.8d09db1",
47
- "@flighthq/registry": "0.5.1-next.743.8d09db1",
48
- "@flighthq/signals": "0.5.1-next.743.8d09db1",
49
- "@flighthq/texture": "0.5.1-next.743.8d09db1",
50
- "@flighthq/types": "0.5.1-next.743.8d09db1"
41
+ "@flighthq/color": "0.5.1-next.799.62ef0c7",
42
+ "@flighthq/entity": "0.5.1-next.799.62ef0c7",
43
+ "@flighthq/log": "0.5.1-next.799.62ef0c7",
44
+ "@flighthq/scene2d": "0.5.1-next.799.62ef0c7",
45
+ "@flighthq/geometry": "0.5.1-next.799.62ef0c7",
46
+ "@flighthq/render": "0.5.1-next.799.62ef0c7",
47
+ "@flighthq/registry": "0.5.1-next.799.62ef0c7",
48
+ "@flighthq/signals": "0.5.1-next.799.62ef0c7",
49
+ "@flighthq/texture": "0.5.1-next.799.62ef0c7",
50
+ "@flighthq/types": "0.5.1-next.799.62ef0c7"
51
51
  },
52
52
  "devDependencies": {
53
53
  "typescript": "^5.3.0"
@@ -7,6 +7,10 @@ import {
7
7
  setGlRenderSurfaceProvider,
8
8
  } from './glElement';
9
9
 
10
+ function entityProvider(fields: Omit<GlRenderSurfaceProvider, keyof Entity>): GlRenderSurfaceProvider {
11
+ return createEntity(fields);
12
+ }
13
+
10
14
  describe('createGlCanvasElement', () => {
11
15
  afterEach(() => {
12
16
  resetGlRenderSurfaceProviderForTest();
@@ -14,7 +18,7 @@ describe('createGlCanvasElement', () => {
14
18
 
15
19
  it('preserves the canonical provider result identity', () => {
16
20
  const surface = {} as HTMLCanvasElement;
17
- setGlRenderSurfaceProvider({ createRenderSurface: () => surface });
21
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface: () => surface }));
18
22
  expect(createGlCanvasElement(100, 200, 2)).toBe(surface);
19
23
  });
20
24
 
@@ -25,7 +29,7 @@ describe('createGlCanvasElement', () => {
25
29
  });
26
30
 
27
31
  it('throws the same setup error when the provider refuses', () => {
28
- setGlRenderSurfaceProvider({ createRenderSurface: () => null });
32
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface: () => null }));
29
33
  expect(() => createGlCanvasElement(100, 200)).toThrowError(/enableHostWebGlRenderSurface\(\)/);
30
34
  });
31
35
  });
@@ -42,7 +46,7 @@ describe('createGlRenderSurface', () => {
42
46
  it('passes exact dimensions and the default pixel ratio to the selected provider', () => {
43
47
  const surface = {} as HTMLCanvasElement;
44
48
  const createRenderSurface = vi.fn(() => surface);
45
- setGlRenderSurfaceProvider({ createRenderSurface });
49
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface }));
46
50
 
47
51
  expect(createGlRenderSurface(100, 200)).toBe(surface);
48
52
  expect(createRenderSurface).toHaveBeenCalledOnce();
@@ -52,7 +56,7 @@ describe('createGlRenderSurface', () => {
52
56
  it('passes an explicit pixel ratio and preserves the provider result identity', () => {
53
57
  const surface = {} as HTMLCanvasElement;
54
58
  const createRenderSurface = vi.fn(() => surface);
55
- setGlRenderSurfaceProvider({ createRenderSurface });
59
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface }));
56
60
 
57
61
  expect(createGlRenderSurface(300, 150, 2.5)).toBe(surface);
58
62
  expect(createRenderSurface).toHaveBeenCalledWith(300, 150, 2.5);
@@ -61,8 +65,8 @@ describe('createGlRenderSurface', () => {
61
65
  it('selects replacements and reset restores omission', () => {
62
66
  const first = {} as HTMLCanvasElement;
63
67
  const second = {} as HTMLCanvasElement;
64
- const firstProvider = { createRenderSurface: vi.fn(() => first) };
65
- const secondProvider = { createRenderSurface: vi.fn(() => second) };
68
+ const firstProvider = entityProvider({ createRenderSurface: vi.fn(() => first) });
69
+ const secondProvider = entityProvider({ createRenderSurface: vi.fn(() => second) });
66
70
 
67
71
  setGlRenderSurfaceProvider(firstProvider);
68
72
  expect(getGlRenderSurfaceProvider()).toBe(firstProvider);
@@ -78,13 +82,13 @@ describe('createGlRenderSurface', () => {
78
82
  });
79
83
 
80
84
  it('preserves provider refusal as null', () => {
81
- setGlRenderSurfaceProvider({ createRenderSurface: () => null });
85
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface: () => null }));
82
86
  expect(createGlRenderSurface(100, 200)).toBeNull();
83
87
  });
84
88
 
85
89
  it('lets a native host provide a surface without reading document', () => {
86
90
  const surface = {} as HTMLCanvasElement;
87
- setGlRenderSurfaceProvider({ createRenderSurface: () => surface });
91
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface: () => surface }));
88
92
 
89
93
  withThrowingDocument(() => {
90
94
  expect(createGlRenderSurface(100, 200)).toBe(surface);
@@ -94,7 +98,7 @@ describe('createGlRenderSurface', () => {
94
98
  it('returns null for omission and refusal without reading document', () => {
95
99
  withThrowingDocument(() => {
96
100
  expect(createGlRenderSurface(100, 200)).toBeNull();
97
- setGlRenderSurfaceProvider({ createRenderSurface: () => null });
101
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface: () => null }));
98
102
  expect(createGlRenderSurface(100, 200)).toBeNull();
99
103
  });
100
104
  });
@@ -110,7 +114,7 @@ describe('explainGlRenderSurfaceAbsence', () => {
110
114
  });
111
115
 
112
116
  it('returns null whenever a provider is installed, including one that refuses a surface', () => {
113
- setGlRenderSurfaceProvider({ createRenderSurface: () => null });
117
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface: () => null }));
114
118
  expect(explainGlRenderSurfaceAbsence()).toBeNull();
115
119
  });
116
120
  });
@@ -121,7 +125,7 @@ describe('getGlRenderSurfaceProvider', () => {
121
125
  });
122
126
 
123
127
  it('returns the exact selected provider', () => {
124
- const provider = { createRenderSurface: () => ({}) as HTMLCanvasElement };
128
+ const provider = entityProvider({ createRenderSurface: () => ({}) as HTMLCanvasElement });
125
129
  setGlRenderSurfaceProvider(provider);
126
130
  expect(getGlRenderSurfaceProvider()).toBe(provider);
127
131
  });
@@ -129,7 +133,7 @@ describe('getGlRenderSurfaceProvider', () => {
129
133
 
130
134
  describe('resetGlRenderSurfaceProviderForTest', () => {
131
135
  it('restores provider omission', () => {
132
- setGlRenderSurfaceProvider({ createRenderSurface: () => ({}) as HTMLCanvasElement });
136
+ setGlRenderSurfaceProvider(entityProvider({ createRenderSurface: () => ({}) as HTMLCanvasElement }));
133
137
  resetGlRenderSurfaceProviderForTest();
134
138
  expect(getGlRenderSurfaceProvider()).toBeNull();
135
139
  expect(createGlRenderSurface(1, 1)).toBeNull();
@@ -142,8 +146,8 @@ describe('setGlRenderSurfaceProvider', () => {
142
146
  });
143
147
 
144
148
  it('replaces the selected provider', () => {
145
- const first = { createRenderSurface: () => ({}) as HTMLCanvasElement };
146
- const second = { createRenderSurface: () => ({}) as HTMLCanvasElement };
149
+ const first = entityProvider({ createRenderSurface: () => ({}) as HTMLCanvasElement });
150
+ const second = entityProvider({ createRenderSurface: () => ({}) as HTMLCanvasElement });
147
151
  setGlRenderSurfaceProvider(first);
148
152
  setGlRenderSurfaceProvider(second);
149
153
  expect(getGlRenderSurfaceProvider()).toBe(second);
@@ -165,3 +169,5 @@ function withThrowingDocument(run: () => void): void {
165
169
  else Object.defineProperty(globalThis, 'document', descriptor);
166
170
  }
167
171
  }
172
+ import { createEntity } from '@flighthq/entity/contract';
173
+ import type { Entity, GlRenderSurfaceProvider } from '@flighthq/types/contract';
@@ -51,6 +51,13 @@ function makeContext() {
51
51
  return { gl: makeGL() };
52
52
  }
53
53
 
54
+ function expectEntitySlot(slot: object & { readonly [EntityRuntimeKey]?: unknown }, fields: object): void {
55
+ const { [EntityRuntimeKey]: entityRuntime, ...slotFields } = slot;
56
+ expect(slotFields).toEqual(fields);
57
+ expect(Object.hasOwn(slot, EntityRuntimeKey)).toBe(true);
58
+ expect(entityRuntime).toBeUndefined();
59
+ }
60
+
54
61
  const testPipeline = createGlPipeline(createEmptyGlRegistries());
55
62
 
56
63
  function createTestGlRenderState(gl: WebGL2RenderingContext, options: GlRenderOptions = {}) {
@@ -491,26 +498,26 @@ describe('createGlRenderStateRuntime', () => {
491
498
  registry: 'GlRenderEffect',
492
499
  shape: 'keyed',
493
500
  });
494
- expect(runtime.registries.compressedTextureDecoder).toEqual({
501
+ expectEntitySlot(runtime.registries.compressedTextureDecoder, {
495
502
  entry: null,
496
503
  onMiss: 'Unregistered',
497
504
  registry: 'GlCompressedTextureDecoder',
498
505
  shape: 'slot',
499
506
  });
500
507
  expect(runtime.registries.colorAdjustments).toBeUndefined();
501
- expect(runtime.registries.compressedTextureUpload).toEqual({
508
+ expectEntitySlot(runtime.registries.compressedTextureUpload, {
502
509
  entry: null,
503
510
  onMiss: 'Unregistered',
504
511
  registry: 'GlCompressedTextureUpload',
505
512
  shape: 'slot',
506
513
  });
507
- expect(runtime.registries.shapeRasterizer).toEqual({
514
+ expectEntitySlot(runtime.registries.shapeRasterizer, {
508
515
  entry: null,
509
516
  onMiss: 'Unregistered',
510
517
  registry: 'GlShapeRasterizer',
511
518
  shape: 'slot',
512
519
  });
513
- expect(runtime.registries.strokeTessellator).toEqual({
520
+ expectEntitySlot(runtime.registries.strokeTessellator, {
514
521
  entry: null,
515
522
  onMiss: 'Rasterize',
516
523
  registry: 'StrokeTessellator',