@solidtv/renderer 1.0.0 → 1.0.2

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 (60) hide show
  1. package/dist/src/core/CoreNode.js +13 -11
  2. package/dist/src/core/CoreNode.js.map +1 -1
  3. package/dist/src/core/CoreTextNode.js +2 -1
  4. package/dist/src/core/CoreTextNode.js.map +1 -1
  5. package/dist/src/core/lib/utils.d.ts +2 -2
  6. package/dist/src/core/lib/utils.js +21 -21
  7. package/dist/src/core/lib/utils.js.map +1 -1
  8. package/dist/src/core/renderers/CoreRenderer.d.ts +0 -30
  9. package/dist/src/core/renderers/CoreRenderer.js.map +1 -1
  10. package/dist/src/core/renderers/canvas/CanvasRenderer.d.ts +2 -1
  11. package/dist/src/core/renderers/canvas/CanvasRenderer.js +128 -47
  12. package/dist/src/core/renderers/canvas/CanvasRenderer.js.map +1 -1
  13. package/dist/src/core/renderers/canvas/CanvasShaderNode.d.ts +1 -2
  14. package/dist/src/core/renderers/canvas/CanvasShaderNode.js.map +1 -1
  15. package/dist/src/core/renderers/webgl/SdfRenderOp.d.ts +5 -5
  16. package/dist/src/core/renderers/webgl/SdfRenderOp.js +8 -8
  17. package/dist/src/core/renderers/webgl/SdfRenderOp.js.map +1 -1
  18. package/dist/src/core/renderers/webgl/WebGlShaderProgram.js +3 -4
  19. package/dist/src/core/renderers/webgl/WebGlShaderProgram.js.map +1 -1
  20. package/dist/src/core/shaders/canvas/Border.js +8 -11
  21. package/dist/src/core/shaders/canvas/Border.js.map +1 -1
  22. package/dist/src/core/shaders/canvas/HolePunch.js +2 -1
  23. package/dist/src/core/shaders/canvas/HolePunch.js.map +1 -1
  24. package/dist/src/core/shaders/canvas/LinearGradient.js +23 -4
  25. package/dist/src/core/shaders/canvas/LinearGradient.js.map +1 -1
  26. package/dist/src/core/shaders/canvas/RadialGradient.js +7 -5
  27. package/dist/src/core/shaders/canvas/RadialGradient.js.map +1 -1
  28. package/dist/src/core/shaders/canvas/Rounded.js +2 -2
  29. package/dist/src/core/shaders/canvas/Rounded.js.map +1 -1
  30. package/dist/src/core/shaders/canvas/RoundedWithBorder.js +2 -2
  31. package/dist/src/core/shaders/canvas/RoundedWithBorder.js.map +1 -1
  32. package/dist/src/core/shaders/canvas/RoundedWithBorderAndShadow.js +5 -4
  33. package/dist/src/core/shaders/canvas/RoundedWithBorderAndShadow.js.map +1 -1
  34. package/dist/src/core/shaders/canvas/RoundedWithShadow.js +5 -4
  35. package/dist/src/core/shaders/canvas/RoundedWithShadow.js.map +1 -1
  36. package/dist/src/core/shaders/canvas/Shadow.js +4 -2
  37. package/dist/src/core/shaders/canvas/Shadow.js.map +1 -1
  38. package/dist/src/core/shaders/canvas/utils/render.js +0 -15
  39. package/dist/src/core/shaders/canvas/utils/render.js.map +1 -1
  40. package/dist/tsconfig.dist.tsbuildinfo +1 -1
  41. package/package.json +1 -1
  42. package/src/core/CoreNode.test.ts +2 -2
  43. package/src/core/CoreNode.ts +13 -11
  44. package/src/core/CoreTextNode.ts +3 -1
  45. package/src/core/lib/utils.ts +23 -25
  46. package/src/core/renderers/CoreRenderer.ts +0 -31
  47. package/src/core/renderers/canvas/CanvasRenderer.ts +158 -63
  48. package/src/core/renderers/canvas/CanvasShaderNode.ts +1 -2
  49. package/src/core/renderers/webgl/SdfRenderOp.ts +7 -7
  50. package/src/core/renderers/webgl/WebGlShaderProgram.ts +3 -6
  51. package/src/core/shaders/canvas/Border.ts +11 -15
  52. package/src/core/shaders/canvas/HolePunch.ts +2 -1
  53. package/src/core/shaders/canvas/LinearGradient.ts +26 -7
  54. package/src/core/shaders/canvas/RadialGradient.ts +7 -10
  55. package/src/core/shaders/canvas/Rounded.ts +5 -5
  56. package/src/core/shaders/canvas/RoundedWithBorder.ts +5 -5
  57. package/src/core/shaders/canvas/RoundedWithBorderAndShadow.ts +9 -8
  58. package/src/core/shaders/canvas/RoundedWithShadow.ts +6 -5
  59. package/src/core/shaders/canvas/Shadow.ts +7 -5
  60. package/src/core/shaders/canvas/utils/render.ts +0 -18
@@ -14,7 +14,7 @@ export declare class CanvasRenderer extends CoreRenderer {
14
14
  reset(): void;
15
15
  render(): void;
16
16
  addQuad(node: CoreNode): void;
17
- renderContext(node: CoreNode): void;
17
+ renderContext(node: CoreNode, texture: Texture): void;
18
18
  createShaderNode(shaderKey: string, shaderType: Readonly<CanvasShaderType>, props?: Record<string, any>): CanvasShaderNode<Record<string, any>, Record<string, unknown>>;
19
19
  createShaderProgram(shaderConfig: any): null;
20
20
  supportsShaderType(shaderType: Readonly<CanvasShaderType>): boolean;
@@ -31,6 +31,7 @@ export declare class CanvasRenderer extends CoreRenderer {
31
31
  * @param color - The color to set as the clear color.
32
32
  */
33
33
  updateClearColor(color: number): void;
34
+ getTextureCoords(node: CoreNode): import('../../textures/Texture.js').TextureCoords | undefined;
34
35
  updateViewport(): void;
35
36
  getDefaultShaderNode(): null;
36
37
  }
@@ -1,6 +1,6 @@
1
1
  import { SubTexture } from '../../textures/SubTexture.js';
2
2
  import { TextureType } from '../../textures/Texture.js';
3
- import { CoreRenderer, } from '../CoreRenderer.js';
3
+ import { CoreRenderer } from '../CoreRenderer.js';
4
4
  import { CanvasTexture } from './CanvasTexture.js';
5
5
  import { parseColor } from '../../lib/colorParser.js';
6
6
  import { CanvasShaderNode } from './CanvasShaderNode.js';
@@ -37,7 +37,7 @@ export class CanvasRenderer extends CoreRenderer {
37
37
  const ctx = this.context;
38
38
  const { tx, ty, ta, tb, tc, td } = node.globalTransform;
39
39
  const clippingRect = node.clippingRect;
40
- let texture = node.renderTexture;
40
+ let texture = (node.props.texture || this.stage.defaultTexture);
41
41
  // The Canvas2D renderer only supports image textures, no textures are used for color blocks
42
42
  if (texture !== null) {
43
43
  const textureType = texture.type;
@@ -49,7 +49,7 @@ export class CanvasRenderer extends CoreRenderer {
49
49
  }
50
50
  }
51
51
  const hasTransform = ta !== 1;
52
- const hasClipping = clippingRect.width !== 0 && clippingRect.height !== 0;
52
+ const hasClipping = clippingRect.w !== 0 && clippingRect.h !== 0;
53
53
  const shader = node.props.shader;
54
54
  const hasShader = shader !== null;
55
55
  let saveAndRestore = hasTransform === true || hasClipping === true;
@@ -61,8 +61,8 @@ export class CanvasRenderer extends CoreRenderer {
61
61
  }
62
62
  if (hasClipping === true) {
63
63
  const path = new Path2D();
64
- const { x, y, width, height } = clippingRect;
65
- path.rect(x, y, width, height);
64
+ const { x, y, w, h } = clippingRect;
65
+ path.rect(x, y, w, h);
66
66
  ctx.clip(path);
67
67
  }
68
68
  if (hasTransform === true) {
@@ -81,48 +81,20 @@ export class CanvasRenderer extends CoreRenderer {
81
81
  }
82
82
  if (hasShader === true) {
83
83
  let renderContext = () => {
84
- this.renderContext(node);
84
+ this.renderContext(node, texture);
85
85
  };
86
- const quad = {
87
- width: node.props.w,
88
- height: node.props.h,
89
- colorTl: node.premultipliedColorTl,
90
- colorTr: node.premultipliedColorTr,
91
- colorBl: node.premultipliedColorBl,
92
- colorBr: node.premultipliedColorBr,
93
- texture: texture,
94
- textureOptions: node.props.textureOptions,
95
- textureCoords: node.renderTextureCoords,
96
- zIndex: node.zIndex, // zIndex usage?
97
- shader: shader,
98
- alpha: node.worldAlpha,
99
- clippingRect: clippingRect,
100
- tx,
101
- ty,
102
- ta,
103
- tb,
104
- tc,
105
- td,
106
- renderCoords: node.renderCoords,
107
- rtt: node.props.rtt,
108
- parentHasRenderTexture: node.parentHasRenderTexture,
109
- framebufferDimensions: node.parentHasRenderTexture
110
- ? node.parentFramebufferDimensions
111
- : null,
112
- };
113
- shader.render(ctx, quad, renderContext);
86
+ shader.render(ctx, node, renderContext);
114
87
  renderContext = null;
115
88
  }
116
89
  else {
117
- this.renderContext(node);
90
+ this.renderContext(node, texture);
118
91
  }
119
92
  if (saveAndRestore) {
120
93
  ctx.restore();
121
94
  }
122
95
  }
123
- renderContext(node) {
96
+ renderContext(node, texture) {
124
97
  const color = node.premultipliedColorTl;
125
- const texture = node.renderTexture;
126
98
  const textureType = texture.type;
127
99
  const tx = node.globalTransform.tx;
128
100
  const ty = node.globalTransform.ty;
@@ -130,17 +102,48 @@ export class CanvasRenderer extends CoreRenderer {
130
102
  const height = node.props.h;
131
103
  if (textureType !== TextureType.color) {
132
104
  const tintColor = parseColor(color);
133
- if (textureType !== TextureType.subTexture) {
134
- const image = texture.ctxTexture.getImage(tintColor);
135
- this.context.globalAlpha = tintColor.a ?? node.worldAlpha;
136
- this.context.drawImage(image, tx, ty, width, height);
137
- this.context.globalAlpha = 1;
138
- return;
105
+ let image;
106
+ if (textureType === TextureType.subTexture) {
107
+ image = texture.parentTexture.ctxTexture.getImage(tintColor);
108
+ }
109
+ else {
110
+ image = texture.ctxTexture.getImage(tintColor);
139
111
  }
140
- const image = texture.parentTexture.ctxTexture.getImage(tintColor);
141
- const props = texture.props;
142
112
  this.context.globalAlpha = tintColor.a ?? node.worldAlpha;
143
- this.context.drawImage(image, props.x, props.y, props.w, props.h, tx, ty, width, height);
113
+ const txCoords = node.textureCoords;
114
+ if (txCoords) {
115
+ const ix = image.width;
116
+ const iy = image.height;
117
+ let sx = txCoords.x1 * ix;
118
+ let sy = txCoords.y1 * iy;
119
+ let sw = (txCoords.x2 - txCoords.x1) * ix;
120
+ let sh = (txCoords.y2 - txCoords.y1) * iy;
121
+ let flipX = false;
122
+ let flipY = false;
123
+ if (sw < 0) {
124
+ flipX = true;
125
+ sx += sw;
126
+ sw = Math.abs(sw);
127
+ }
128
+ if (sh < 0) {
129
+ flipY = true;
130
+ sy += sh;
131
+ sh = Math.abs(sh);
132
+ }
133
+ if (flipX || flipY) {
134
+ this.context.save();
135
+ this.context.translate(tx + (flipX ? width : 0), ty + (flipY ? height : 0));
136
+ this.context.scale(flipX ? -1 : 1, flipY ? -1 : 1);
137
+ this.context.drawImage(image, sx, sy, sw, sh, 0, 0, width, height);
138
+ this.context.restore();
139
+ }
140
+ else {
141
+ this.context.drawImage(image, sx, sy, sw, sh, tx, ty, width, height);
142
+ }
143
+ }
144
+ else {
145
+ this.context.drawImage(image, tx, ty, width, height);
146
+ }
144
147
  this.context.globalAlpha = 1;
145
148
  return;
146
149
  }
@@ -162,8 +165,20 @@ export class CanvasRenderer extends CoreRenderer {
162
165
  endY = ty;
163
166
  endColor = node.premultipliedColorTr;
164
167
  }
168
+ let startColor = color;
169
+ const startAlpha = (startColor >>> 24) & 0xff;
170
+ const endAlpha = (endColor >>> 24) & 0xff;
171
+ // if one of the colors has 0 alpha, we want to match the RGB channels
172
+ // to the other color to prevent white bleed during zero alpha interpolation.
173
+ if (startAlpha === 0 && endAlpha > 0) {
174
+ startColor =
175
+ ((startColor & 0xff000000) | (endColor & 0x00ffffff)) >>> 0;
176
+ }
177
+ else if (endAlpha === 0 && startAlpha > 0) {
178
+ endColor = ((endColor & 0xff000000) | (startColor & 0x00ffffff)) >>> 0;
179
+ }
165
180
  const gradient = this.context.createLinearGradient(tx, ty, endX, endY);
166
- gradient.addColorStop(0, normalizeCanvasColor(color));
181
+ gradient.addColorStop(0, normalizeCanvasColor(startColor));
167
182
  gradient.addColorStop(1, normalizeCanvasColor(endColor));
168
183
  this.context.fillStyle = gradient;
169
184
  this.context.fillRect(tx, ty, width, height);
@@ -211,6 +226,72 @@ export class CanvasRenderer extends CoreRenderer {
211
226
  updateClearColor(color) {
212
227
  this.clearColor = normalizeCanvasColor(color);
213
228
  }
229
+ getTextureCoords(node) {
230
+ const texture = node.texture;
231
+ if (texture === null) {
232
+ return undefined;
233
+ }
234
+ const ctxTexture = texture.type === TextureType.subTexture
235
+ ? texture.parentTexture.ctxTexture
236
+ : texture.ctxTexture;
237
+ if (ctxTexture === undefined) {
238
+ return undefined;
239
+ }
240
+ const textureOptions = node.props.textureOptions;
241
+ // early exit for textures with no options unless its a subtexture
242
+ if (texture.type !== TextureType.subTexture &&
243
+ textureOptions === undefined) {
244
+ return { x1: 0, y1: 0, x2: 1, y2: 1 };
245
+ }
246
+ let x1 = 0, y1 = 0, x2 = 1, y2 = 1;
247
+ if (texture.type === TextureType.subTexture) {
248
+ const { w: parentW, h: parentH } = texture.parentTexture
249
+ .dimensions;
250
+ const { x, y, w, h } = texture.props;
251
+ x1 = x / parentW;
252
+ y1 = y / parentH;
253
+ x2 = x1 + w / parentW;
254
+ y2 = y1 + h / parentH;
255
+ }
256
+ if (textureOptions !== undefined && textureOptions !== null) {
257
+ const resizeMode = textureOptions.resizeMode;
258
+ if (resizeMode !== undefined &&
259
+ resizeMode.type === 'cover' &&
260
+ texture.dimensions !== null) {
261
+ const dimensions = texture.dimensions;
262
+ const w = node.props.w;
263
+ const h = node.props.h;
264
+ const scaleX = w / dimensions.w;
265
+ const scaleY = h / dimensions.h;
266
+ const scale = Math.max(scaleX, scaleY);
267
+ const precision = 1 / scale;
268
+ // Determine based on width
269
+ if (scaleX < scale) {
270
+ const desiredSize = precision * node.props.w;
271
+ x1 = (1 - desiredSize / dimensions.w) * (resizeMode.clipX ?? 0.5);
272
+ x2 = x1 + desiredSize / dimensions.w;
273
+ }
274
+ // Determine based on height
275
+ if (scaleY < scale) {
276
+ const desiredSize = precision * node.props.h;
277
+ y1 = (1 - desiredSize / dimensions.h) * (resizeMode.clipY ?? 0.5);
278
+ y2 = y1 + desiredSize / dimensions.h;
279
+ }
280
+ }
281
+ if (textureOptions.flipX === true) {
282
+ [x1, x2] = [x2, x1];
283
+ }
284
+ if (textureOptions.flipY === true) {
285
+ [y1, y2] = [y2, y1];
286
+ }
287
+ }
288
+ return {
289
+ x1,
290
+ y1,
291
+ x2,
292
+ y2,
293
+ };
294
+ }
214
295
  updateViewport() {
215
296
  // noop
216
297
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CanvasRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasRenderer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import type { CoreNode } from '../../CoreNode.js';
2
2
  import type { Stage } from '../../Stage.js';
3
- import type { QuadOptions } from '../CoreRenderer.js';
4
3
  import { CoreShaderNode, type CoreShaderType } from '../CoreShaderNode.js';
5
4
  export type CanvasShaderType<T extends object = Record<string, unknown>, C extends object = Record<string, unknown>> = CoreShaderType<T> & {
6
- render: (this: CanvasShaderNode<T, C>, ctx: CanvasRenderingContext2D, quad: QuadOptions, renderContext: () => void) => void;
5
+ render: (this: CanvasShaderNode<T, C>, ctx: CanvasRenderingContext2D, node: CoreNode, renderContext: () => void) => void;
7
6
  update?: (this: CanvasShaderNode<T, C>, node: CoreNode) => void;
8
7
  /**
9
8
  * Set this to true when using ctx functions that scale, clip, rotate, etc..
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasShaderNode.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasShaderNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAmB3E,MAAM,OAAO,gBAGX,SAAQ,cAAqB;IACrB,OAAO,GACb,SAAS,CAAC;IACJ,QAAQ,GAAW,EAAE,CAAC;IAC9B,QAAQ,GAAsB,EAAE,CAAC;IACjC,QAAQ,CAAU;IAClB,MAAM,CAAoC;IAE1C,YACE,SAAiB,EACjB,MAA+B,EAC/B,KAAY,EACZ,KAAa;QAEb,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAO,CAAC;YAC9B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,IAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBAEtC,IAAI,OAAO,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC3D,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CACnD,IAAI,CAAC,QAAQ,CACa,CAAC;gBAC7B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,IAAI,CAAC,QAAQ,GAAG,QAAoB,CAAC;gBACvC,CAAC;gBACD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,IAAgB,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrE,CAAC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,OAAO,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"CanvasShaderNode.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasShaderNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAmB3E,MAAM,OAAO,gBAGX,SAAQ,cAAqB;IACrB,OAAO,GACb,SAAS,CAAC;IACJ,QAAQ,GAAW,EAAE,CAAC;IAC9B,QAAQ,GAAsB,EAAE,CAAC;IACjC,QAAQ,CAAU;IAClB,MAAM,CAAoC;IAE1C,YACE,SAAiB,EACjB,MAA+B,EAC/B,KAAY,EACZ,KAAa;QAEb,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAO,CAAC;YAC9B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,IAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBAEtC,IAAI,OAAO,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC3D,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CACnD,IAAI,CAAC,QAAQ,CACa,CAAC;gBAC7B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,IAAI,CAAC,QAAQ,GAAG,QAAoB,CAAC;gBACvC,CAAC;gBACD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,IAAgB,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrE,CAAC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,OAAO,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF"}
@@ -18,10 +18,10 @@ export declare class SdfRenderOp extends CoreRenderOp {
18
18
  readonly renderer: WebGlRenderer;
19
19
  readonly shader: WebGlShaderNode;
20
20
  readonly quadBufferCollection: BufferCollection;
21
- worldAlpha: number;
22
- clippingRect: RectWithValid;
23
- readonly width: number;
24
- readonly height: number;
21
+ readonly worldAlpha: number;
22
+ readonly clippingRect: RectWithValid;
23
+ readonly w: number;
24
+ readonly h: number;
25
25
  readonly rtt: boolean;
26
26
  parentHasRenderTexture: boolean;
27
27
  framebufferDimensions: Dimensions | null;
@@ -35,7 +35,7 @@ export declare class SdfRenderOp extends CoreRenderOp {
35
35
  * Used to compute the byte offset into the element index buffer.
36
36
  */
37
37
  startQuad: number;
38
- constructor(renderer: WebGlRenderer, shader: WebGlShaderNode, quadBufferCollection: BufferCollection, worldAlpha: number, clippingRect: RectWithValid, width: number, height: number, rtt: boolean, parentHasRenderTexture: boolean, framebufferDimensions: Dimensions | null);
38
+ constructor(renderer: WebGlRenderer, shader: WebGlShaderNode, quadBufferCollection: BufferCollection, worldAlpha: number, clippingRect: RectWithValid, w: number, h: number, rtt: boolean, parentHasRenderTexture: boolean, framebufferDimensions: Dimensions | null);
39
39
  addTexture(texture: WebGlCtxTexture): number;
40
40
  draw(): void;
41
41
  }
@@ -14,8 +14,8 @@ export class SdfRenderOp extends CoreRenderOp {
14
14
  quadBufferCollection;
15
15
  worldAlpha;
16
16
  clippingRect;
17
- width;
18
- height;
17
+ w;
18
+ h;
19
19
  rtt;
20
20
  parentHasRenderTexture;
21
21
  framebufferDimensions;
@@ -29,15 +29,15 @@ export class SdfRenderOp extends CoreRenderOp {
29
29
  * Used to compute the byte offset into the element index buffer.
30
30
  */
31
31
  startQuad = 0;
32
- constructor(renderer, shader, quadBufferCollection, worldAlpha, clippingRect, width, height, rtt, parentHasRenderTexture, framebufferDimensions) {
32
+ constructor(renderer, shader, quadBufferCollection, worldAlpha, clippingRect, w, h, rtt, parentHasRenderTexture, framebufferDimensions) {
33
33
  super();
34
34
  this.renderer = renderer;
35
35
  this.shader = shader;
36
36
  this.quadBufferCollection = quadBufferCollection;
37
37
  this.worldAlpha = worldAlpha;
38
38
  this.clippingRect = clippingRect;
39
- this.width = width;
40
- this.height = height;
39
+ this.w = w;
40
+ this.h = h;
41
41
  this.rtt = rtt;
42
42
  this.parentHasRenderTexture = parentHasRenderTexture;
43
43
  this.framebufferDimensions = framebufferDimensions;
@@ -62,14 +62,14 @@ export class SdfRenderOp extends CoreRenderOp {
62
62
  if (this.clippingRect.valid === true) {
63
63
  const pixelRatio = USE_RTT && this.parentHasRenderTexture ? 1 : stage.pixelRatio;
64
64
  const clipX = Math.round(this.clippingRect.x * pixelRatio);
65
- const clipWidth = Math.round(this.clippingRect.width * pixelRatio);
66
- const clipHeight = Math.round(this.clippingRect.height * pixelRatio);
65
+ const clipWidth = Math.round(this.clippingRect.w * pixelRatio);
66
+ const clipHeight = Math.round(this.clippingRect.h * pixelRatio);
67
67
  let clipY = Math.round(options.canvas.height - clipHeight - this.clippingRect.y * pixelRatio);
68
68
  // if parent has render texture, we need to adjust the scissor rect
69
69
  // to be relative to the parent's framebuffer
70
70
  if (USE_RTT && this.parentHasRenderTexture) {
71
71
  clipY = this.framebufferDimensions
72
- ? this.framebufferDimensions.h - this.height
72
+ ? this.framebufferDimensions.h - this.h
73
73
  : 0;
74
74
  }
75
75
  glw.setScissorTest(true);
@@ -1 +1 @@
1
- {"version":3,"file":"SdfRenderOp.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/SdfRenderOp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SdfRenderOp.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/SdfRenderOp.ts"],"names":[],"mappings":"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"}
@@ -88,7 +88,7 @@ export class WebGlShaderProgram {
88
88
  if (this.lifecycle.canBatch !== undefined) {
89
89
  return this.lifecycle.canBatch(node, currentRenderOp);
90
90
  }
91
- const { time, worldAlpha, width, height } = node;
91
+ const { time, worldAlpha, w, h } = node;
92
92
  if (this.useTimeValue === true) {
93
93
  if (time !== currentRenderOp.time) {
94
94
  return false;
@@ -100,8 +100,7 @@ export class WebGlShaderProgram {
100
100
  }
101
101
  }
102
102
  if (this.useSystemDimensions === true) {
103
- if (width !== currentRenderOp.width ||
104
- height !== currentRenderOp.height) {
103
+ if (w !== currentRenderOp.w || h !== currentRenderOp.h) {
105
104
  return false;
106
105
  }
107
106
  }
@@ -161,7 +160,7 @@ export class WebGlShaderProgram {
161
160
  this.glw.uniform1f('u_alpha', renderOp.worldAlpha);
162
161
  }
163
162
  if (this.useSystemDimensions === true) {
164
- this.glw.uniform2f('u_dimensions', renderOp.width, renderOp.height);
163
+ this.glw.uniform2f('u_dimensions', renderOp.w, renderOp.h);
165
164
  }
166
165
  const shader = renderOp.shader;
167
166
  if (shader.props !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"WebGlShaderProgram.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlShaderProgram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebGlShaderProgram.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlShaderProgram.ts"],"names":[],"mappings":"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"}
@@ -44,31 +44,28 @@ export const Border = {
44
44
  this.computed.innerW = outerW - l - r;
45
45
  this.computed.innerH = outerH - t - b;
46
46
  },
47
- render(ctx, quad, renderContext) {
47
+ render(ctx, node, renderContext) {
48
48
  renderContext();
49
49
  const computed = this.computed;
50
+ const { tx, ty } = node.globalTransform;
51
+ const { w, h } = node.props;
50
52
  ctx.strokeStyle = computed.borderColor;
51
53
  if (computed.borderAsym === false && this.props.w[0] > 0) {
52
54
  ctx.lineWidth = this.props.w[0];
53
55
  ctx.beginPath();
54
- ctx.strokeRect(quad.tx + computed.outerX, quad.ty + computed.outerY, quad.width + computed.outerW, quad.height + computed.outerH);
56
+ ctx.strokeRect(tx + computed.outerX, ty + computed.outerY, w + computed.outerW, h + computed.outerH);
55
57
  return;
56
58
  }
57
- // Pre-calculate common values
58
- const tx = quad.tx;
59
- const ty = quad.ty;
60
- const width = quad.width;
61
- const height = quad.height;
62
59
  // Calculate outer rectangle (including border)
63
60
  const outerX = tx + computed.outerX;
64
61
  const outerY = ty + computed.outerY;
65
- const outerW = width + computed.outerW;
66
- const outerH = height + computed.outerH;
62
+ const outerW = w + computed.outerW;
63
+ const outerH = h + computed.outerH;
67
64
  // Calculate inner rectangle (excluding border)
68
65
  const innerX = tx + computed.innerX;
69
66
  const innerY = ty + computed.innerY;
70
- const innerW = width + computed.innerW;
71
- const innerH = height + computed.innerH;
67
+ const innerW = w + computed.innerW;
68
+ const innerH = h + computed.innerH;
72
69
  // Use clip to subtract inner from outer
73
70
  ctx.save();
74
71
  ctx.beginPath();
@@ -1 +1 @@
1
- {"version":3,"file":"Border.js","sourceRoot":"","sources":["../../../../../src/core/shaders/canvas/Border.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Border.js","sourceRoot":"","sources":["../../../../../src/core/shaders/canvas/Border.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,9 @@ export const HolePunch = {
10
10
  ctx.save();
11
11
  renderContext();
12
12
  const { x, y, w, h } = this.props;
13
+ const gt = quad.globalTransform;
13
14
  ctx.beginPath();
14
- roundRect(ctx, quad.tx + x, quad.ty + y, w, h, this.computed.radius);
15
+ roundRect(ctx, gt.tx + x, gt.ty + y, w, h, this.computed.radius);
15
16
  ctx.closePath();
16
17
  ctx.fillStyle = 'black';
17
18
  ctx.globalCompositeOperation = 'destination-out';
@@ -1 +1 @@
1
- {"version":3,"file":"HolePunch.js","sourceRoot":"","sources":["../../../../../src/core/shaders/canvas/HolePunch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EACL,iBAAiB,GAElB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAM9C,MAAM,CAAC,MAAM,SAAS,GAGlB;IACF,KAAK,EAAE,iBAAiB,CAAC,KAAK;IAC9B,MAAM;QACJ,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,uBAAuB,CAC5C,IAAI,CAAC,KAAM,CAAC,MAAc,EAC1B,IAAI,CAAC,KAAM,CAAC,CAAC,EACb,IAAI,CAAC,KAAM,CAAC,CAAC,CACd,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,aAAa;QAC7B,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,KAAM,CAAC;QACnC,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAO,CAAC,CAAC;QACtE,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;QACxB,GAAG,CAAC,wBAAwB,GAAG,iBAAiB,CAAC;QACjD,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"HolePunch.js","sourceRoot":"","sources":["../../../../../src/core/shaders/canvas/HolePunch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EACL,iBAAiB,GAElB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAM9C,MAAM,CAAC,MAAM,SAAS,GAGlB;IACF,KAAK,EAAE,iBAAiB,CAAC,KAAK;IAC9B,MAAM;QACJ,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,uBAAuB,CAC5C,IAAI,CAAC,KAAM,CAAC,MAAc,EAC1B,IAAI,CAAC,KAAM,CAAC,CAAC,EACb,IAAI,CAAC,KAAM,CAAC,CAAC,CACd,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,aAAa;QAC7B,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,KAAM,CAAC;QACnC,MAAM,EAAE,GAAG,IAAI,CAAC,eAAgB,CAAC;QACjC,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAO,CAAC,CAAC;QAClE,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;QACxB,GAAG,CAAC,wBAAwB,GAAG,iBAAiB,CAAC;QACjD,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC;CACF,CAAC"}
@@ -13,20 +13,39 @@ export const LinearGradient = {
13
13
  y0: line * Math.sin(angle) + nHeight * 0.5,
14
14
  x1: line * Math.cos(angle + Math.PI) + nWidth * 0.5,
15
15
  y1: line * Math.sin(angle + Math.PI) + nHeight * 0.5,
16
- colors: this.props.colors.map((value) => this.toColorString(value)),
16
+ colors: this.props.colors.map((value, i, arr) => {
17
+ const alpha = (value >>> 24) & 0xff;
18
+ if (alpha === 0) {
19
+ let nearestRGB = value & 0x00ffffff;
20
+ for (let step = 1; step < arr.length; step++) {
21
+ if (i - step >= 0 && ((arr[i - step] >>> 24) & 0xff) > 0) {
22
+ nearestRGB = arr[i - step] & 0x00ffffff;
23
+ break;
24
+ }
25
+ if (i + step < arr.length && ((arr[i + step] >>> 24) & 0xff) > 0) {
26
+ nearestRGB = arr[i + step] & 0x00ffffff;
27
+ break;
28
+ }
29
+ }
30
+ value = (value & 0xff000000) | nearestRGB;
31
+ }
32
+ return this.toColorString(value);
33
+ }),
17
34
  };
18
35
  },
19
- render(ctx, quad, renderContext) {
36
+ render(ctx, node, renderContext) {
20
37
  renderContext();
21
38
  const computed = this.computed;
22
- const gradient = ctx.createLinearGradient(quad.tx + computed.x0, quad.ty + computed.y0, quad.tx + computed.x1, quad.ty + computed.y1);
39
+ const { tx, ty } = node.globalTransform;
40
+ const { w, h } = node.props;
41
+ const gradient = ctx.createLinearGradient(tx + computed.x0, ty + computed.y0, tx + computed.x1, ty + computed.y1);
23
42
  const colors = computed.colors;
24
43
  const stops = this.props.stops;
25
44
  for (let i = 0; i < colors.length; i++) {
26
45
  gradient.addColorStop(stops[i], colors[i]);
27
46
  }
28
47
  ctx.fillStyle = gradient;
29
- ctx.fillRect(quad.tx, quad.ty, quad.width, quad.height);
48
+ ctx.fillRect(tx, ty, w, h);
30
49
  },
31
50
  };
32
51
  //# sourceMappingURL=LinearGradient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LinearGradient.js","sourceRoot":"","sources":["../../../../../src/core/shaders/canvas/LinearGradient.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,GAEvB,MAAM,wCAAwC,CAAC;AAUhD,MAAM,CAAC,MAAM,cAAc,GAGvB;IACF,KAAK,EAAE,sBAAsB,CAAC,KAAK;IACnC,MAAM,CAAC,IAAI;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,KAAM,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC;QACvB,MAAM,IAAI,GACR,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACtC,GAAG,CAAC;QAEN,IAAI,CAAC,QAAQ,GAAG;YACd,EAAE,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,GAAG;YACzC,EAAE,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,GAAG;YAC1C,EAAE,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,GAAG;YACnD,EAAE,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,GAAG;YACpD,MAAM,EAAE,IAAI,CAAC,KAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SACrE,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,aAAa;QAC7B,aAAa,EAAE,CAAC;QAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAwC,CAAC;QAC/D,MAAM,QAAQ,GAAG,GAAG,CAAC,oBAAoB,CACvC,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,EACrB,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,EACrB,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,EACrB,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,CACtB,CAAC;QACF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAM,CAAC,KAAK,CAAC;QAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC;QAC/C,CAAC;QACD,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC;QACzB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"LinearGradient.js","sourceRoot":"","sources":["../../../../../src/core/shaders/canvas/LinearGradient.ts"],"names":[],"mappings":"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"}