@flighthq/render 0.5.1-next.1450.5738463 → 0.5.1-next.1467.7e2fc7d
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 +2 -2
- package/dist/renderState.d.ts.map +1 -1
- package/dist/renderState.js +5 -2
- package/dist/renderState.js.map +1 -1
- package/package.json +13 -13
- package/src/renderState.test.ts +4 -3
- package/src/renderer.test.ts +7 -4
package/README.md
CHANGED
|
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/render`. The `@fligh
|
|
|
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@0.5.1-next.
|
|
17
|
-
- [License](https://github.com/flighthq/flight/blob/
|
|
16
|
+
- [Source for @flighthq/render@0.5.1-next.1467.7e2fc7d](https://github.com/flighthq/flight/tree/7e2fc7df5378313ceaf21ba8d6ef39cc18a6f4ad/packages/render)
|
|
17
|
+
- [License](https://github.com/flighthq/flight/blob/7e2fc7df5378313ceaf21ba8d6ef39cc18a6f4ad/LICENSE.md)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderState.d.ts","sourceRoot":"","sources":["../src/renderState.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,WAAW,EACX,kBAAkB,EAElB,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAGlC,wBAAgB,iBAAiB,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAIzE;AAOD,wBAAgB,wBAAwB,IAAI,kBAAkB,
|
|
1
|
+
{"version":3,"file":"renderState.d.ts","sourceRoot":"","sources":["../src/renderState.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,WAAW,EACX,kBAAkB,EAElB,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAGlC,wBAAgB,iBAAiB,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAIzE;AAOD,wBAAgB,wBAAwB,IAAI,kBAAkB,CAkB7D;AAID,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAO3D;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,WAAW,GAAG,+BAA+B,GAAG,IAAI,CAG7G;AAID,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,kBAAkB,CAE5E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAY9G"}
|
package/dist/renderState.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { allocateEntity, createEntityRuntime, finishEntity } from '@flighthq/entity/contract';
|
|
2
|
-
import { createKeyedTable
|
|
2
|
+
import { createKeyedTable } from '@flighthq/registry/contract';
|
|
3
3
|
import { BlendMode, EntityRuntimeKey, RegistryEntryState } from '@flighthq/types/contract';
|
|
4
4
|
export function createRenderState(obj) {
|
|
5
5
|
const state = allocateEntity();
|
|
@@ -21,7 +21,10 @@ export function createRenderStateRuntime() {
|
|
|
21
21
|
runtime.registryMiss = null;
|
|
22
22
|
runtime.registries = {
|
|
23
23
|
renderers: createKeyedTable('NodeRenderer', 'Unregistered'),
|
|
24
|
-
|
|
24
|
+
// Written as null rather than left off: the field's presence is what keeps every registries object
|
|
25
|
+
// one hidden class, so the per-shape reads on the draw path stay monomorphic. The opt-in registrar
|
|
26
|
+
// fills the slot; nothing allocates a table for a state that never opts in.
|
|
27
|
+
strokeTessellator: null,
|
|
25
28
|
};
|
|
26
29
|
runtime.rendererMapId = 0;
|
|
27
30
|
runtime.tempStack = [];
|
package/dist/renderState.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderState.js","sourceRoot":"","sources":["../src/renderState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"renderState.js","sourceRoot":"","sources":["../src/renderState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAQ/D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE3F,MAAM,UAAU,iBAAiB,CAAC,GAA0B;IAC1D,MAAM,KAAK,GAAG,cAAc,EAAe,CAAC;IAC5C,qBAAqB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,oGAAoG;AACpG,0FAA0F;AAC1F,sGAAsG;AACtG,2FAA2F;AAC3F,wCAAwC;AACxC,MAAM,UAAU,wBAAwB;IACtC,MAAM,OAAO,GAAG,mBAAmB,EAAwB,CAAC;IAC5D,OAAO,CAAC,cAAc,GAAG,CAAC,CAAC;IAC3B,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,qBAAqB,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9C,OAAO,CAAC,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;IACvC,OAAO,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;IACvC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,UAAU,GAAG;QACnB,SAAS,EAAE,gBAAgB,CAAC,cAAc,EAAE,cAAc,CAAC;QAC3D,mGAAmG;QACnG,mGAAmG;QACnG,4EAA4E;QAC5E,iBAAiB,EAAE,IAAI;KACxB,CAAC;IACF,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC;IAC1B,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;IACvB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,mGAAmG;AACnG,uFAAuF;AACvF,MAAM,UAAU,kBAAkB,CAAC,KAAkB;IACnD,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC7C,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;QAAE,6BAA6B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACnG,OAAO,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC;IAC9B,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,UAAU,CAAC,sBAAsB,GAAG,SAAS,CAAC;IACtD,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,kCAAkC,CAAC,KAAkB;IACnE,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,+BAA+B,EAAE,KAAK,CAAC;IAC7F,OAAO,KAAK,EAAE,KAAK,KAAK,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACxE,CAAC;AAED,mGAAmG;AACnG,6CAA6C;AAC7C,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACtD,OAAO,KAAK,CAAC,gBAAgB,CAAuB,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAsC,EAAE,GAA0B;IACtG,KAAK,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,IAAI,IAAI,CAAC;IACnD,KAAK,CAAC,gBAAgB,GAAG,GAAG,EAAE,gBAAgB,IAAI,CAAC,CAAC;IACpD,KAAK,CAAC,sBAAsB,GAAG,GAAG,EAAE,sBAAsB,IAAI,IAAI,CAAC;IACnE,KAAK,CAAC,UAAU,GAAG,GAAG,EAAE,UAAU,IAAI,CAAC,CAAC;IACxC,KAAK,CAAC,oBAAoB,GAAG,GAAG,EAAE,oBAAoB,IAAI,IAAI,CAAC;IAC/D,KAAK,CAAC,WAAW,GAAG,GAAG,EAAE,WAAW,IAAI,CAAC,CAAC;IAC1C,KAAK,CAAC,eAAe,GAAG,GAAG,EAAE,eAAe,IAAI,SAAS,CAAC,MAAM,CAAC;IACjE,KAAK,CAAC,iBAAiB,GAAG,GAAG,EAAE,iBAAiB,IAAI,IAAI,CAAC;IACzD,KAAK,CAAC,WAAW,GAAG,GAAG,EAAE,WAAW,IAAI,KAAK,CAAC;IAC9C,KAAK,CAAC,oBAAoB,GAAG,GAAG,EAAE,oBAAoB,IAAI,qBAAqB,CAAC;IAChF,KAAK,CAAC,gBAAgB,CAAC,GAAG,wBAAwB,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAkB,EAAE,MAAkB;IAC3E,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,KAAK,EAAE,YAAY,KAAK,IAAI,IAAI,KAAK,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;QACtE,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flighthq/render",
|
|
3
|
-
"version": "0.5.1-next.
|
|
3
|
+
"version": "0.5.1-next.1467.7e2fc7d",
|
|
4
4
|
"author": "Joshua Granick and other contributors",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -38,18 +38,18 @@
|
|
|
38
38
|
"clean:dist": "tsx ../../scripts/clean-package-dist.ts"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@flighthq/adjustments": "0.5.1-next.
|
|
42
|
-
"@flighthq/camera": "0.5.1-next.
|
|
43
|
-
"@flighthq/color": "0.5.1-next.
|
|
44
|
-
"@flighthq/entity": "0.5.1-next.
|
|
45
|
-
"@flighthq/geometry": "0.5.1-next.
|
|
46
|
-
"@flighthq/log": "0.5.1-next.
|
|
47
|
-
"@flighthq/materials": "0.5.1-next.
|
|
48
|
-
"@flighthq/mesh": "0.5.1-next.
|
|
49
|
-
"@flighthq/node": "0.5.1-next.
|
|
50
|
-
"@flighthq/registry": "0.5.1-next.
|
|
51
|
-
"@flighthq/signals": "0.5.1-next.
|
|
52
|
-
"@flighthq/types": "0.5.1-next.
|
|
41
|
+
"@flighthq/adjustments": "0.5.1-next.1467.7e2fc7d",
|
|
42
|
+
"@flighthq/camera": "0.5.1-next.1467.7e2fc7d",
|
|
43
|
+
"@flighthq/color": "0.5.1-next.1467.7e2fc7d",
|
|
44
|
+
"@flighthq/entity": "0.5.1-next.1467.7e2fc7d",
|
|
45
|
+
"@flighthq/geometry": "0.5.1-next.1467.7e2fc7d",
|
|
46
|
+
"@flighthq/log": "0.5.1-next.1467.7e2fc7d",
|
|
47
|
+
"@flighthq/materials": "0.5.1-next.1467.7e2fc7d",
|
|
48
|
+
"@flighthq/mesh": "0.5.1-next.1467.7e2fc7d",
|
|
49
|
+
"@flighthq/node": "0.5.1-next.1467.7e2fc7d",
|
|
50
|
+
"@flighthq/registry": "0.5.1-next.1467.7e2fc7d",
|
|
51
|
+
"@flighthq/signals": "0.5.1-next.1467.7e2fc7d",
|
|
52
|
+
"@flighthq/types": "0.5.1-next.1467.7e2fc7d"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@flighthq/scene2d": "*",
|
package/src/renderState.test.ts
CHANGED
|
@@ -37,7 +37,8 @@ describe('createRenderState', () => {
|
|
|
37
37
|
expect(runtime.renderProxyAdapterMap).toStrictEqual(new WeakMap());
|
|
38
38
|
expect(runtime.registries).toStrictEqual({
|
|
39
39
|
renderers: createKeyedTable('NodeRenderer', 'Unregistered'),
|
|
40
|
-
|
|
40
|
+
// Present and null, not absent: the stable key set is what keeps the registries one hidden class.
|
|
41
|
+
strokeTessellator: null,
|
|
41
42
|
});
|
|
42
43
|
expect(runtime.rendererMapId).toStrictEqual(0);
|
|
43
44
|
expect(runtime.tempStack).toStrictEqual([]);
|
|
@@ -76,7 +77,8 @@ describe('createRenderStateRuntime', () => {
|
|
|
76
77
|
expect(runtime.renderProxyAdapterMap).toStrictEqual(new WeakMap());
|
|
77
78
|
expect(runtime.registries.colorAdjustments).toBeUndefined();
|
|
78
79
|
expect(runtime.registries.renderers).toStrictEqual(createKeyedTable('NodeRenderer', 'Unregistered'));
|
|
79
|
-
|
|
80
|
+
// Opt-in: the stroke kernel's slot is allocated by enable*StrokePathTessellation, never here.
|
|
81
|
+
expect(runtime.registries.strokeTessellator).toBeNull();
|
|
80
82
|
expect(runtime.rendererMapId).toStrictEqual(0);
|
|
81
83
|
expect(runtime.tempStack).toStrictEqual([]);
|
|
82
84
|
});
|
|
@@ -86,7 +88,6 @@ describe('createRenderStateRuntime', () => {
|
|
|
86
88
|
const b = createRenderStateRuntime();
|
|
87
89
|
expect(a).not.toBe(b);
|
|
88
90
|
expect(a.registries.renderers).not.toBe(b.registries.renderers);
|
|
89
|
-
expect(a.registries.strokeTessellator).not.toBe(b.registries.strokeTessellator);
|
|
90
91
|
});
|
|
91
92
|
});
|
|
92
93
|
|
package/src/renderer.test.ts
CHANGED
|
@@ -130,7 +130,7 @@ describe('copyRenderStateRegistrations', () => {
|
|
|
130
130
|
entry: { state: RegistryEntryState.Bound, value: colorAdjustmentUnsupportedGuard },
|
|
131
131
|
};
|
|
132
132
|
getRenderStateRuntime(source).registries.strokeTessellator = {
|
|
133
|
-
...
|
|
133
|
+
...createSlotTable('StrokeTessellator', 'Rasterize'),
|
|
134
134
|
entry: { state: RegistryEntryState.Bound, value: strokeTessellator },
|
|
135
135
|
};
|
|
136
136
|
getRenderStateRuntime(source).registries.renderRootGuard = {
|
|
@@ -171,15 +171,18 @@ describe('copyRenderStateRegistrations', () => {
|
|
|
171
171
|
expect(sourceRuntime.registries.colorAdjustmentUnsupportedGuard).not.toBe(sharedGuardSnapshot);
|
|
172
172
|
expect(targetRuntime.registries.colorAdjustmentUnsupportedGuard).toBe(sharedGuardSnapshot);
|
|
173
173
|
expect(targetRuntime.registries.strokeTessellator).toBe(sourceRuntime.registries.strokeTessellator);
|
|
174
|
-
expect(targetRuntime.registries.strokeTessellator
|
|
174
|
+
expect(targetRuntime.registries.strokeTessellator?.entry).toEqual({
|
|
175
175
|
state: RegistryEntryState.Bound,
|
|
176
176
|
value: strokeTessellator,
|
|
177
177
|
});
|
|
178
178
|
const sharedStrokeSnapshot = targetRuntime.registries.strokeTessellator;
|
|
179
|
-
sourceRuntime.registries.strokeTessellator = {
|
|
179
|
+
sourceRuntime.registries.strokeTessellator = {
|
|
180
|
+
...createSlotTable('StrokeTessellator', 'Rasterize'),
|
|
181
|
+
entry: null,
|
|
182
|
+
};
|
|
180
183
|
expect(sourceRuntime.registries.strokeTessellator).not.toBe(sharedStrokeSnapshot);
|
|
181
184
|
expect(targetRuntime.registries.strokeTessellator).toBe(sharedStrokeSnapshot);
|
|
182
|
-
expect(targetRuntime.registries.strokeTessellator
|
|
185
|
+
expect(targetRuntime.registries.strokeTessellator?.entry?.state).toBe(RegistryEntryState.Bound);
|
|
183
186
|
expect(targetRuntime.registries.effectPaddingResolvers).toBe(sourceRuntime.registries.effectPaddingResolvers);
|
|
184
187
|
expect(targetRuntime.registries.effectPaddingResolvers?.entries.get('acme.Effect')).toEqual({
|
|
185
188
|
state: RegistryEntryState.Bound,
|