@flighthq/scene2d-wgpu 0.3.0-next.1566.dcdf1d3 → 0.3.0-next.1584.a68fe91

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/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { createWgpuCacheState, createWgpuVelocityTarget, defaultWgpuBitmapTextRenderer, defaultWgpuNode2DVelocityWriter, defaultWgpuParticleEmitter2DRenderer, defaultWgpuParticleEmitter2DVelocityWriter, defaultWgpuQuadBatchRenderer, defaultWgpuRichTextRenderer, defaultWgpuScale9ShapeRenderer, defaultWgpuScene2DRenderer, defaultWgpuShapeCommands, defaultWgpuShapeRenderer, defaultWgpuSpriteRenderer, defaultWgpuTextLabelRenderer, defaultWgpuTextureShapeCommands, defaultWgpuTilemapRenderer, drawWgpuSprite, enableWgpuStrokePathTessellation, enableWgpuClipSupport, enableWgpuRenderCache, enableWgpuTextInput, refreshWgpuRenderCache, registerWgpuStandardMaterial, registerWgpuColorAdjustmentMaterialFeature, registerWgpuShapeCommands, registerWgpuVelocityWriter, renderWgpuScene2D, renderWgpuVelocity, } from './contract';
1
+ export { createWgpuCacheState, createWgpuVelocityTarget, defaultWgpuBitmapTextRenderer, defaultWgpuMorphShapeRenderer, defaultWgpuNode2DVelocityWriter, defaultWgpuParticleEmitter2DRenderer, defaultWgpuParticleEmitter2DVelocityWriter, defaultWgpuQuadBatchRenderer, defaultWgpuRichTextRenderer, defaultWgpuScale9ShapeRenderer, defaultWgpuScene2DRenderer, defaultWgpuShapeCommands, defaultWgpuShapeRenderer, defaultWgpuSpriteRenderer, defaultWgpuTextLabelRenderer, defaultWgpuTextureShapeCommands, defaultWgpuTilemapRenderer, drawWgpuSprite, enableWgpuStrokePathTessellation, enableWgpuClipSupport, enableWgpuRenderCache, enableWgpuTextInput, refreshWgpuRenderCache, registerWgpuStandardMaterial, registerWgpuColorAdjustmentMaterialFeature, registerWgpuShapeCommands, registerWgpuVelocityWriter, renderWgpuScene2D, renderWgpuVelocity, } from './contract';
2
2
  export { getWgpuShapeRasterizer, registerWgpuShapeRasterizer } from './wgpuShapeRasterizer';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,+BAA+B,EAC/B,oCAAoC,EACpC,0CAA0C,EAC1C,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,cAAc,EACd,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,0CAA0C,EAC1C,yBAAyB,EACzB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,6BAA6B,EAC7B,+BAA+B,EAC/B,oCAAoC,EACpC,0CAA0C,EAC1C,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,cAAc,EACd,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,0CAA0C,EAC1C,yBAAyB,EACzB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export { createWgpuCacheState, createWgpuVelocityTarget, defaultWgpuBitmapTextRenderer, defaultWgpuNode2DVelocityWriter, defaultWgpuParticleEmitter2DRenderer, defaultWgpuParticleEmitter2DVelocityWriter, defaultWgpuQuadBatchRenderer, defaultWgpuRichTextRenderer, defaultWgpuScale9ShapeRenderer, defaultWgpuScene2DRenderer, defaultWgpuShapeCommands, defaultWgpuShapeRenderer, defaultWgpuSpriteRenderer, defaultWgpuTextLabelRenderer, defaultWgpuTextureShapeCommands, defaultWgpuTilemapRenderer, drawWgpuSprite, enableWgpuStrokePathTessellation, enableWgpuClipSupport, enableWgpuRenderCache, enableWgpuTextInput, refreshWgpuRenderCache, registerWgpuStandardMaterial, registerWgpuColorAdjustmentMaterialFeature, registerWgpuShapeCommands, registerWgpuVelocityWriter, renderWgpuScene2D, renderWgpuVelocity, } from './contract';
1
+ export { createWgpuCacheState, createWgpuVelocityTarget, defaultWgpuBitmapTextRenderer, defaultWgpuMorphShapeRenderer, defaultWgpuNode2DVelocityWriter, defaultWgpuParticleEmitter2DRenderer, defaultWgpuParticleEmitter2DVelocityWriter, defaultWgpuQuadBatchRenderer, defaultWgpuRichTextRenderer, defaultWgpuScale9ShapeRenderer, defaultWgpuScene2DRenderer, defaultWgpuShapeCommands, defaultWgpuShapeRenderer, defaultWgpuSpriteRenderer, defaultWgpuTextLabelRenderer, defaultWgpuTextureShapeCommands, defaultWgpuTilemapRenderer, drawWgpuSprite, enableWgpuStrokePathTessellation, enableWgpuClipSupport, enableWgpuRenderCache, enableWgpuTextInput, refreshWgpuRenderCache, registerWgpuStandardMaterial, registerWgpuColorAdjustmentMaterialFeature, registerWgpuShapeCommands, registerWgpuVelocityWriter, renderWgpuScene2D, renderWgpuVelocity, } from './contract';
2
2
  export { getWgpuShapeRasterizer, registerWgpuShapeRasterizer } from './wgpuShapeRasterizer';
3
3
  //# 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,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,+BAA+B,EAC/B,oCAAoC,EACpC,0CAA0C,EAC1C,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,cAAc,EACd,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,0CAA0C,EAC1C,yBAAyB,EACzB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,6BAA6B,EAC7B,+BAA+B,EAC/B,oCAAoC,EACpC,0CAA0C,EAC1C,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,cAAc,EACd,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,0CAA0C,EAC1C,yBAAyB,EACzB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuScale9Shape.d.ts","sourceRoot":"","sources":["../src/wgpuScale9Shape.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EAEZ,eAAe,EAEf,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAwBlC,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,GAAG,YAAY,CAehG;AAGD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAIxF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,GAAG,IAAI,CA0F5F;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,CAEzF;AAED,eAAO,MAAM,8BAA8B,EAAE,eAI5C,CAAC"}
1
+ {"version":3,"file":"wgpuScale9Shape.d.ts","sourceRoot":"","sources":["../src/wgpuScale9Shape.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EAEZ,eAAe,EAEf,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAyBlC,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,GAAG,YAAY,CAgBhG;AAGD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAIxF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,GAAG,IAAI,CAmG5F;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,CAEzF;AAED,eAAO,MAAM,8BAA8B,EAAE,eAI5C,CAAC"}
@@ -20,6 +20,7 @@ export function createWgpuScale9ShapeData(_state, _source) {
20
20
  lastScaleX: -1,
21
21
  lastScaleY: -1,
22
22
  lastContentId: -1,
23
+ lastPixelRatio: 0,
23
24
  lastW: 0,
24
25
  entry: null,
25
26
  });
@@ -57,6 +58,7 @@ export function drawWgpuScale9Shape(state, renderProxy) {
57
58
  return;
58
59
  }
59
60
  const shapeData = getWgpuRendererData(renderProxy.rendererData);
61
+ const pixelRatio = state.pixelRatio;
60
62
  if (shapeData === null)
61
63
  return;
62
64
  const w = Math.ceil(bounds.width * source.scaleX);
@@ -67,20 +69,25 @@ export function drawWgpuScale9Shape(state, renderProxy) {
67
69
  w !== shapeData.lastW ||
68
70
  h !== shapeData.lastH ||
69
71
  source.scaleX !== shapeData.lastScaleX ||
70
- source.scaleY !== shapeData.lastScaleY) {
71
- shapeData.canvas.width = w;
72
- shapeData.canvas.height = h;
72
+ source.scaleY !== shapeData.lastScaleY ||
73
+ pixelRatio !== shapeData.lastPixelRatio) {
74
+ const pw = Math.ceil(w * pixelRatio);
75
+ const ph = Math.ceil(h * pixelRatio);
76
+ shapeData.canvas.width = pw;
77
+ shapeData.canvas.height = ph;
73
78
  const ctx = shapeData.ctx;
74
- ctx.clearRect(0, 0, w, h);
75
- ctx.save();
79
+ ctx.setTransform(pixelRatio, 0, 0, pixelRatio, -bounds.x * pixelRatio, -bounds.y * pixelRatio);
80
+ ctx.clearRect(bounds.x, bounds.y, w, h);
76
81
  mapScale9ShapeCommands(_remappedCommands, commands, mapper);
77
- ctx.translate(-bounds.x, -bounds.y);
78
82
  rasterizer(ctx, _remappedCommands, state);
79
- ctx.restore();
80
- // GPU textures are fixed-size: recreate the entry when the field size changes, otherwise reupload
81
- // the canvas pixels into the existing entry.
82
- if (shapeData.entry === null || shapeData.lastW !== w || shapeData.lastH !== h) {
83
- const nextEntry = createWgpuTextureEntry(state, w, h, shapeData.canvas);
83
+ ctx.setTransform(1, 0, 0, 1, 0, 0);
84
+ // GPU textures are fixed-size: recreate the entry when the device-pixel size changes — which a
85
+ // pixelRatio change does even at a fixed field size — otherwise reupload into the existing entry.
86
+ if (shapeData.entry === null ||
87
+ shapeData.lastW !== w ||
88
+ shapeData.lastH !== h ||
89
+ shapeData.lastPixelRatio !== pixelRatio) {
90
+ const nextEntry = createWgpuTextureEntry(state, pw, ph, shapeData.canvas);
84
91
  if (nextEntry === null)
85
92
  return;
86
93
  shapeData.entry?.texture.destroy();
@@ -93,6 +100,7 @@ export function drawWgpuScale9Shape(state, renderProxy) {
93
100
  shapeData.lastScaleX = source.scaleX;
94
101
  shapeData.lastScaleY = source.scaleY;
95
102
  shapeData.lastContentId = version;
103
+ shapeData.lastPixelRatio = pixelRatio;
96
104
  shapeData.lastW = w;
97
105
  }
98
106
  if (shapeData.entry === null)
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuScale9Shape.js","sourceRoot":"","sources":["../src/wgpuScale9Shape.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuScale9Shape.js","sourceRoot":"","sources":["../src/wgpuScale9Shape.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { Scene2DRenderer, RenderProxy2D, WgpuRenderState } from '@flighthq/types/contract';
2
2
  export declare function drawWgpuShape(state: WgpuRenderState, renderProxy: RenderProxy2D): void;
3
3
  export declare const defaultWgpuShapeRenderer: Scene2DRenderer;
4
+ export declare const defaultWgpuMorphShapeRenderer: Scene2DRenderer;
4
5
  //# sourceMappingURL=wgpuShape.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuShape.d.ts","sourceRoot":"","sources":["../src/wgpuShape.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,eAAe,EAIf,aAAa,EAMb,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAiGlC,wBAAgB,aAAa,CAAC,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,GAAG,IAAI,CAwHtF;AAMD,eAAO,MAAM,wBAAwB,EAAE,eAKtC,CAAC"}
1
+ {"version":3,"file":"wgpuShape.d.ts","sourceRoot":"","sources":["../src/wgpuShape.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,eAAe,EAIf,aAAa,EAMb,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAmGlC,wBAAgB,aAAa,CAAC,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,GAAG,IAAI,CAmItF;AAMD,eAAO,MAAM,wBAAwB,EAAE,eAKtC,CAAC;AAGF,eAAO,MAAM,6BAA6B,EAAE,eAA0C,CAAC"}
package/dist/wgpuShape.js CHANGED
@@ -19,6 +19,7 @@ function createWgpuShapeData(_state, _source) {
19
19
  ctx,
20
20
  image: createImageResource(canvas),
21
21
  lastContentId: -1,
22
+ lastPixelRatio: 0,
22
23
  lastW: 0,
23
24
  lastH: 0,
24
25
  meshVersion: -1,
@@ -140,23 +141,32 @@ export function drawWgpuShape(state, renderProxy) {
140
141
  const h = Math.ceil(bounds.height);
141
142
  if (w <= 0 || h <= 0)
142
143
  return;
143
- if (version !== shapeData.lastContentId || w !== shapeData.lastW || h !== shapeData.lastH) {
144
+ // Sized in device pixels with the replay pre-scaled to match, exactly as the text renderers treat
145
+ // their offscreen canvases. The quad stays in local units and samples the whole texture, so a denser
146
+ // raster is only sharper — no geometry moves with it.
147
+ const pixelRatio = state.pixelRatio;
148
+ if (version !== shapeData.lastContentId ||
149
+ w !== shapeData.lastW ||
150
+ h !== shapeData.lastH ||
151
+ pixelRatio !== shapeData.lastPixelRatio) {
144
152
  // Reassigning either canvas dimension resets its 2D context even when the value is unchanged.
145
153
  // Animated shapes invalidate their commands every frame, so resize only when their bounds change.
146
- if (shapeData.canvas.width !== w)
147
- shapeData.canvas.width = w;
148
- if (shapeData.canvas.height !== h)
149
- shapeData.canvas.height = h;
154
+ const pw = Math.ceil(w * pixelRatio);
155
+ const ph = Math.ceil(h * pixelRatio);
156
+ if (shapeData.canvas.width !== pw)
157
+ shapeData.canvas.width = pw;
158
+ if (shapeData.canvas.height !== ph)
159
+ shapeData.canvas.height = ph;
150
160
  const ctx = shapeData.ctx;
151
- ctx.clearRect(0, 0, w, h);
152
- ctx.save();
153
- ctx.translate(-bounds.x, -bounds.y);
161
+ ctx.setTransform(pixelRatio, 0, 0, pixelRatio, -bounds.x * pixelRatio, -bounds.y * pixelRatio);
162
+ ctx.clearRect(bounds.x, bounds.y, w, h);
154
163
  rasterizer(ctx, commands, state);
155
- ctx.restore();
164
+ ctx.setTransform(1, 0, 0, 1, 0, 0);
156
165
  // Re-read the canvas dimensions and bump the resource version so the batch's version-aware cache
157
166
  // re-uploads (recreating the GPU texture, which covers a size change too).
158
167
  invalidateImageResource(shapeData.image);
159
168
  shapeData.lastContentId = version;
169
+ shapeData.lastPixelRatio = pixelRatio;
160
170
  shapeData.lastW = w;
161
171
  shapeData.lastH = h;
162
172
  }
@@ -196,4 +206,6 @@ export const defaultWgpuShapeRenderer = {
196
206
  destroyData: destroyWgpuShapeData,
197
207
  submit: drawWgpuShape,
198
208
  };
209
+ // MorphShape owns a distinct kind while sharing Shape's mesh/raster renderer and cache lifecycle.
210
+ export const defaultWgpuMorphShapeRenderer = defaultWgpuShapeRenderer;
199
211
  //# sourceMappingURL=wgpuShape.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuShape.js","sourceRoot":"","sources":["../src/wgpuShape.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuShape.js","sourceRoot":"","sources":["../src/wgpuShape.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/scene2d-wgpu",
3
- "version": "0.3.0-next.1566.dcdf1d3",
3
+ "version": "0.3.0-next.1584.a68fe91",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/flighthq/flight.git",
@@ -36,23 +36,23 @@
36
36
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
37
37
  },
38
38
  "dependencies": {
39
- "@flighthq/color": "0.3.0-next.1566.dcdf1d3",
40
- "@flighthq/scene2d": "0.3.0-next.1566.dcdf1d3",
41
- "@flighthq/scene2d-canvas": "0.3.0-next.1566.dcdf1d3",
42
- "@flighthq/geometry": "0.3.0-next.1566.dcdf1d3",
43
- "@flighthq/image": "0.3.0-next.1566.dcdf1d3",
44
- "@flighthq/log": "0.3.0-next.1566.dcdf1d3",
45
- "@flighthq/node": "0.3.0-next.1566.dcdf1d3",
46
- "@flighthq/path": "0.3.0-next.1566.dcdf1d3",
47
- "@flighthq/render": "0.3.0-next.1566.dcdf1d3",
48
- "@flighthq/render-wgpu": "0.3.0-next.1566.dcdf1d3",
49
- "@flighthq/shape": "0.3.0-next.1566.dcdf1d3",
50
- "@flighthq/text": "0.3.0-next.1566.dcdf1d3",
51
- "@flighthq/textinput": "0.3.0-next.1566.dcdf1d3",
52
- "@flighthq/textlayout": "0.3.0-next.1566.dcdf1d3",
53
- "@flighthq/texture": "0.3.0-next.1566.dcdf1d3",
54
- "@flighthq/types": "0.3.0-next.1566.dcdf1d3",
55
- "@flighthq/velocity": "0.3.0-next.1566.dcdf1d3"
39
+ "@flighthq/color": "0.3.0-next.1584.a68fe91",
40
+ "@flighthq/scene2d": "0.3.0-next.1584.a68fe91",
41
+ "@flighthq/scene2d-canvas": "0.3.0-next.1584.a68fe91",
42
+ "@flighthq/geometry": "0.3.0-next.1584.a68fe91",
43
+ "@flighthq/image": "0.3.0-next.1584.a68fe91",
44
+ "@flighthq/log": "0.3.0-next.1584.a68fe91",
45
+ "@flighthq/node": "0.3.0-next.1584.a68fe91",
46
+ "@flighthq/path": "0.3.0-next.1584.a68fe91",
47
+ "@flighthq/render": "0.3.0-next.1584.a68fe91",
48
+ "@flighthq/render-wgpu": "0.3.0-next.1584.a68fe91",
49
+ "@flighthq/shape": "0.3.0-next.1584.a68fe91",
50
+ "@flighthq/text": "0.3.0-next.1584.a68fe91",
51
+ "@flighthq/textinput": "0.3.0-next.1584.a68fe91",
52
+ "@flighthq/textlayout": "0.3.0-next.1584.a68fe91",
53
+ "@flighthq/texture": "0.3.0-next.1584.a68fe91",
54
+ "@flighthq/types": "0.3.0-next.1584.a68fe91",
55
+ "@flighthq/velocity": "0.3.0-next.1584.a68fe91"
56
56
  },
57
57
  "devDependencies": {
58
58
  "@flighthq/bitmaptext": "*",
@@ -29,6 +29,7 @@ const noopRasterizer = (): void => {};
29
29
  // this file (registry reset before the mock applies, unmock + reset after), so under a shared
30
30
  // (isolate:false) worker it never leaks into the many real consumers of these functions (node,
31
31
  // interaction, shape, text) — and a sibling that pre-evaluated ./wgpuShape still picks up the stub.
32
+ let defaultWgpuMorphShapeRenderer: typeof WgpuShapeModule.defaultWgpuMorphShapeRenderer;
32
33
  let defaultWgpuShapeRenderer: typeof WgpuShapeModule.defaultWgpuShapeRenderer;
33
34
  let drawWgpuShape: typeof WgpuShapeModule.drawWgpuShape;
34
35
 
@@ -40,7 +41,7 @@ beforeAll(async () => {
40
41
  getNodeLocalBoundsRectangle: () => ({ x: 0, y: 0, width: 64, height: 48 }),
41
42
  getNodeLocalContentRevision: (source: any) => source?.data?.version ?? 0,
42
43
  }));
43
- ({ defaultWgpuShapeRenderer, drawWgpuShape } = await import('./wgpuShape'));
44
+ ({ defaultWgpuMorphShapeRenderer, defaultWgpuShapeRenderer, drawWgpuShape } = await import('./wgpuShape'));
44
45
  installWgpuMock();
45
46
  });
46
47
 
@@ -78,6 +79,10 @@ function makeMeshPassSpy(): GPURenderPassEncoder {
78
79
  }
79
80
 
80
81
  describe('defaultWgpuShapeRenderer', () => {
82
+ it('provides the MorphShape renderer alias', () => {
83
+ expect(defaultWgpuMorphShapeRenderer).toBe(defaultWgpuShapeRenderer);
84
+ });
85
+
81
86
  it('declares BatchFormat.Quad', () => {
82
87
  expect(defaultWgpuShapeRenderer.format).toBe(BatchFormat.Quad);
83
88
  });