@pixerate/editor 0.268.2 → 0.269.1

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 (58) hide show
  1. package/dist/agent/index.cjs +27 -27
  2. package/dist/agent/index.js +1 -1
  3. package/dist/animation-editor/index.cjs +61 -61
  4. package/dist/animation-editor/index.js +5 -5
  5. package/dist/brushes/import/abr.d.cts +48 -0
  6. package/dist/brushes/import/abr.d.ts +48 -0
  7. package/dist/brushes/import/bplist.d.cts +24 -0
  8. package/dist/brushes/import/bplist.d.ts +24 -0
  9. package/dist/brushes/import/pack.d.cts +82 -0
  10. package/dist/brushes/import/pack.d.ts +82 -0
  11. package/dist/brushes/import/zip.d.cts +31 -0
  12. package/dist/brushes/import/zip.d.ts +31 -0
  13. package/dist/brushes/index.cjs +26 -6
  14. package/dist/brushes/index.d.cts +2 -0
  15. package/dist/brushes/index.d.ts +2 -0
  16. package/dist/brushes/index.js +22 -2
  17. package/dist/{chunk-SIFAIGB3.js → chunk-3AJCEJNH.js} +2 -162
  18. package/dist/{chunk-YXP6X3SY.cjs → chunk-3KNQ2W6X.cjs} +697 -10
  19. package/dist/{chunk-QNY7BDFP.js → chunk-4CPOKP27.js} +1 -1
  20. package/dist/{chunk-J4GXP53R.cjs → chunk-4NMPUJUK.cjs} +86 -86
  21. package/dist/{chunk-LDOD7VCT.js → chunk-4YSPQGZW.js} +1 -1
  22. package/dist/{chunk-JBB3GDBB.cjs → chunk-56RHCIJV.cjs} +2 -2
  23. package/dist/{chunk-4IMD2TLY.cjs → chunk-AI4F33IV.cjs} +3166 -2966
  24. package/dist/{chunk-YOVXQHA3.cjs → chunk-BENSE3VX.cjs} +23 -23
  25. package/dist/{chunk-VDGBHYC7.js → chunk-F7OO3DHP.js} +157 -1
  26. package/dist/{chunk-UVTO3D4E.js → chunk-FUDP5QBB.js} +1 -1
  27. package/dist/{chunk-3XDSNIGF.js → chunk-ININNHLM.js} +687 -0
  28. package/dist/{chunk-WIC7TG73.cjs → chunk-M4UQA2T4.cjs} +18 -18
  29. package/dist/{chunk-ITURMC2M.js → chunk-N3UMQVKX.js} +176 -176
  30. package/dist/{chunk-UWEQ55MY.cjs → chunk-N4KP3UQR.cjs} +157 -1
  31. package/dist/{chunk-D5BXSOSU.js → chunk-QGVTOCNB.js} +3118 -2918
  32. package/dist/{chunk-M6DNZNVY.js → chunk-RWDSSK2I.js} +4 -2
  33. package/dist/{chunk-CVFAAZXE.cjs → chunk-SPIO2GJU.cjs} +8 -6
  34. package/dist/{chunk-RHEMMGCN.cjs → chunk-T4JPGBW3.cjs} +173 -173
  35. package/dist/{chunk-HFY5LG5J.js → chunk-THBJHPUL.js} +1 -1
  36. package/dist/{chunk-NPWWSCWT.cjs → chunk-VBRHE4AM.cjs} +35 -35
  37. package/dist/{chunk-AZC2NDAR.js → chunk-WB22XMW3.js} +6 -6
  38. package/dist/{chunk-NIBFDFYW.cjs → chunk-YBMUHIOM.cjs} +12 -172
  39. package/dist/extensions/index.cjs +18 -4
  40. package/dist/extensions/index.d.cts +1 -0
  41. package/dist/extensions/index.d.ts +1 -0
  42. package/dist/extensions/index.js +17 -3
  43. package/dist/extensions/prompt-editor.d.cts +109 -0
  44. package/dist/extensions/prompt-editor.d.ts +109 -0
  45. package/dist/generation/index.cjs +15 -15
  46. package/dist/generation/index.js +3 -3
  47. package/dist/grammar/index.cjs +4 -4
  48. package/dist/grammar/index.js +7 -7
  49. package/dist/image-editor/index.cjs +785 -785
  50. package/dist/image-editor/index.js +6 -6
  51. package/dist/index.cjs +27 -13
  52. package/dist/index.js +23 -9
  53. package/dist/paint-editor/index.cjs +91 -91
  54. package/dist/paint-editor/index.js +6 -6
  55. package/dist/vector/index.cjs +1001 -1001
  56. package/dist/vector/index.js +6 -6
  57. package/package.json +1 -1
  58. package/skills/pixerate-image-selection-masking/SKILL.md +8 -8
@@ -11,7 +11,7 @@ var _chunk3VHH6V67cjs = require('../chunk-3VHH6V67.cjs');
11
11
 
12
12
 
13
13
 
14
- var _chunkYXP6X3SYcjs = require('../chunk-YXP6X3SY.cjs');
14
+ var _chunk3KNQ2W6Xcjs = require('../chunk-3KNQ2W6X.cjs');
15
15
 
16
16
 
17
17
 
@@ -34,7 +34,7 @@ var _chunk7TD63DZPcjs = require('../chunk-7TD63DZP.cjs');
34
34
 
35
35
 
36
36
 
37
- var _chunkJ4GXP53Rcjs = require('../chunk-J4GXP53R.cjs');
37
+ var _chunk4NMPUJUKcjs = require('../chunk-4NMPUJUK.cjs');
38
38
  require('../chunk-YZWM6ZIP.cjs');
39
39
  require('../chunk-3ZRNK3RO.cjs');
40
40
 
@@ -113,7 +113,7 @@ var _chunkK7ENM55Pcjs = require('../chunk-K7ENM55P.cjs');
113
113
 
114
114
 
115
115
 
116
- var _chunkJBB3GDBBcjs = require('../chunk-JBB3GDBB.cjs');
116
+ var _chunk56RHCIJVcjs = require('../chunk-56RHCIJV.cjs');
117
117
 
118
118
 
119
119
 
@@ -186,7 +186,7 @@ var _chunkEU2ZZA6Lcjs = require('../chunk-EU2ZZA6L.cjs');
186
186
 
187
187
 
188
188
  var _chunkRDFHWAHLcjs = require('../chunk-RDFHWAHL.cjs');
189
- require('../chunk-CVFAAZXE.cjs');
189
+ require('../chunk-SPIO2GJU.cjs');
190
190
 
191
191
 
192
192
 
@@ -318,9 +318,9 @@ var _chunkW5M3J7PVcjs = require('../chunk-W5M3J7PV.cjs');
318
318
 
319
319
  var _chunk474IQG74cjs = require('../chunk-474IQG74.cjs');
320
320
  require('../chunk-XFM3OCHU.cjs');
321
- require('../chunk-NIBFDFYW.cjs');
321
+ require('../chunk-YBMUHIOM.cjs');
322
322
  require('../chunk-ALNIFK5G.cjs');
323
- require('../chunk-UWEQ55MY.cjs');
323
+ require('../chunk-N4KP3UQR.cjs');
324
324
 
325
325
 
326
326
 
@@ -380,7 +380,7 @@ function normalizeCanvas(raw) {
380
380
  function createPaintDocument(options = {}) {
381
381
  const canvas = normalizeCanvas({ width: _nullishCoalesce(options.width, () => ( 2048)), height: _nullishCoalesce(options.height, () => ( 1536)), dpi: options.dpi });
382
382
  const layer = createPaintLayer("Layer 1");
383
- return { canvas, paper: _chunkJBB3GDBBcjs.normalizePaper.call(void 0, _nullishCoalesce(options.paper, () => ( {}))), layers: [layer], activeLayerId: layer.id, strokes: [] };
383
+ return { canvas, paper: _chunk56RHCIJVcjs.normalizePaper.call(void 0, _nullishCoalesce(options.paper, () => ( {}))), layers: [layer], activeLayerId: layer.id, strokes: [] };
384
384
  }
385
385
 
386
386
  // src/paint-editor/thick.ts
@@ -511,12 +511,12 @@ var ThickStrokeDriver = (_class2 = class {
511
511
  constructor(init) {;_class2.prototype.__init2.call(this);_class2.prototype.__init3.call(this);_class2.prototype.__init4.call(this);_class2.prototype.__init5.call(this);_class2.prototype.__init6.call(this);_class2.prototype.__init7.call(this);_class2.prototype.__init8.call(this);_class2.prototype.__init9.call(this);_class2.prototype.__init10.call(this);_class2.prototype.__init11.call(this);
512
512
  this.init = init;
513
513
  const b = init.brush;
514
- this.smoother = new (0, _chunkJBB3GDBBcjs.PenSmoother)(b.tip.smoothing, b.pressureSmoothing);
515
- const copies = init.copies.length ? init.copies : [_chunkJBB3GDBBcjs.IDENTITY_COPY];
514
+ this.smoother = new (0, _chunk56RHCIJVcjs.PenSmoother)(b.tip.smoothing, b.pressureSmoothing);
515
+ const copies = init.copies.length ? init.copies : [_chunk56RHCIJVcjs.IDENTITY_COPY];
516
516
  this.copies = copies;
517
517
  const rates = _chunkNIBFKXMDcjs.exchangeRates.call(void 0, b.behavior.pickup, b.behavior.mix, 1, b.behavior.mixing);
518
518
  this.states = copies.map((c, i) => ({
519
- walker: new (0, _chunkJBB3GDBBcjs.PenDabWalker)(b, init.seed + i * 7919 | 0, c.linear),
519
+ walker: new (0, _chunk56RHCIJVcjs.PenDabWalker)(b, init.seed + i * 7919 | 0, c.linear),
520
520
  exchange: new (0, _chunkNIBFKXMDcjs.PaintExchange)(rates, init.load),
521
521
  smudge: b.impasto.tool === "knife" ? new (0, _chunkNIBFKXMDcjs.SmudgeTip)({ strength: 0.85, length: 0.6 + 0.38 * b.impasto.drag, mixing: b.behavior.mixing }, b.tip.size * 1.2) : null,
522
522
  carried: null,
@@ -662,7 +662,7 @@ var ThickStrokeDriver = (_class2 = class {
662
662
  let flow = 1;
663
663
  const effect = this.init.effect;
664
664
  if (effect) {
665
- _chunkJBB3GDBBcjs.sampleEffectAt.call(void 0, effect, d.x, d.y, this.centre, d);
665
+ _chunk56RHCIJVcjs.sampleEffectAt.call(void 0, effect, d.x, d.y, this.centre, d);
666
666
  ex.setReservoirColor(this.centre[0], this.centre[1], this.centre[2]);
667
667
  } else if (this.sampler) {
668
668
  const g = this.sampler.dab(d, this.sample);
@@ -679,7 +679,7 @@ var ThickStrokeDriver = (_class2 = class {
679
679
  let field = null;
680
680
  if (effect) {
681
681
  field = new Float32Array(n * 3);
682
- _chunkJBB3GDBBcjs.effectDabField.call(void 0, effect, rect, cov, this.centre, this.paint, field, 0, d);
682
+ _chunk56RHCIJVcjs.effectDabField.call(void 0, effect, rect, cov, this.centre, this.paint, field, 0, d);
683
683
  }
684
684
  this.medium.deposit(rect, cov, dep, this.paint, ex.paintPigment, field);
685
685
  }
@@ -1068,11 +1068,11 @@ var MarkStroke = (_class4 = class {
1068
1068
  this.options = options;
1069
1069
  this.sampler = options.paint ? new (0, _chunkNIBFKXMDcjs.PaintGradientSampler)(options.paint, _nullishCoalesce(options.seed, () => ( 0))) : null;
1070
1070
  this.tipTable = _optionalChain([this, 'access', _29 => _29.sampler, 'optionalAccess', _30 => _30.acrossTip]) ? this.sampler.tipTable(_chunkNIBFKXMDcjs.TIP_GRADIENT_STEPS) : null;
1071
- this.smoother = new (0, _chunkJBB3GDBBcjs.PenSmoother)(brush.tip.smoothing, brush.pressureSmoothing);
1072
- this.copies = _optionalChain([options, 'access', _31 => _31.copies, 'optionalAccess', _32 => _32.length]) ? options.copies : [_chunkJBB3GDBBcjs.IDENTITY_COPY];
1071
+ this.smoother = new (0, _chunk56RHCIJVcjs.PenSmoother)(brush.tip.smoothing, brush.pressureSmoothing);
1072
+ this.copies = _optionalChain([options, 'access', _31 => _31.copies, 'optionalAccess', _32 => _32.length]) ? options.copies : [_chunk56RHCIJVcjs.IDENTITY_COPY];
1073
1073
  this.seed = _nullishCoalesce(options.seed, () => ( 0));
1074
1074
  const fine = { ...brush, tip: { ...brush.tip, spacing: Math.max(0.01, Math.min(0.25, STEP_PX / Math.max(1, brush.tip.size))) } };
1075
- this.walkers = this.copies.map((c, i) => new (0, _chunkJBB3GDBBcjs.PenDabWalker)(fine, (_nullishCoalesce(options.seed, () => ( 0))) + i * 7919 | 0, c.linear));
1075
+ this.walkers = this.copies.map((c, i) => new (0, _chunk56RHCIJVcjs.PenDabWalker)(fine, (_nullishCoalesce(options.seed, () => ( 0))) + i * 7919 | 0, c.linear));
1076
1076
  this.depth = options.grain && !options.grain.flat ? Math.min(1, Math.max(0, options.paperDepth * brush.grain)) : 0;
1077
1077
  }
1078
1078
 
@@ -1151,7 +1151,7 @@ var MarkStroke = (_class4 = class {
1151
1151
  */
1152
1152
  stamp(x, y, r, kind, rotation, seed, alpha, opacity, pressure, rects) {
1153
1153
  if (!(r > 0.05) || !(alpha > 0)) return;
1154
- const sample = _chunkJBB3GDBBcjs.stampSampler.call(void 0, kind, this.options.stampArt);
1154
+ const sample = _chunk56RHCIJVcjs.stampSampler.call(void 0, kind, this.options.stampArt);
1155
1155
  if (!sample) return this.mark(x, y, r, alpha, opacity, pressure, rects);
1156
1156
  const reach = Math.max(0.5, r) * Math.SQRT2 + 1;
1157
1157
  const rect = { x: Math.floor(x - reach), y: Math.floor(y - reach), width: 0, height: 0 };
@@ -1201,7 +1201,7 @@ var MarkStroke = (_class4 = class {
1201
1201
  if (this.options.effect) {
1202
1202
  if (this.field.length < n * 3) this.field = new Float32Array(n * 3);
1203
1203
  const field = this.field.subarray(0, n * 3);
1204
- _chunkJBB3GDBBcjs.sampleEffectField.call(void 0, this.options.effect, rect, vals, field, this.pen);
1204
+ _chunk56RHCIJVcjs.sampleEffectField.call(void 0, this.options.effect, rect, vals, field, this.pen);
1205
1205
  this.coverage.accumulate(rect, vals, opacity, null, field);
1206
1206
  } else {
1207
1207
  const color = this.markColor(x, y);
@@ -1880,11 +1880,11 @@ var StickerSpray = (_class7 = class {
1880
1880
  constructor(init) {;_class7.prototype.__init29.call(this);_class7.prototype.__init30.call(this);_class7.prototype.__init31.call(this);_class7.prototype.__init32.call(this);_class7.prototype.__init33.call(this);
1881
1881
  this.init = init;
1882
1882
  const b = init.brush;
1883
- this.smoother = new (0, _chunkJBB3GDBBcjs.PenSmoother)(b.tip.smoothing, b.pressureSmoothing);
1884
- this.copies = init.copies.length ? init.copies : [_chunkJBB3GDBBcjs.IDENTITY_COPY];
1883
+ this.smoother = new (0, _chunk56RHCIJVcjs.PenSmoother)(b.tip.smoothing, b.pressureSmoothing);
1884
+ this.copies = init.copies.length ? init.copies : [_chunk56RHCIJVcjs.IDENTITY_COPY];
1885
1885
  const spacing = Math.max(0.05, 1 / Math.max(0.05, b.sticker.density * 4));
1886
1886
  const walk = { ...b, tip: { ...b.tip, spacing }, dynamics: { ...b.dynamics, scatter: 0, sizeJitter: 0, angleJitter: 0 } };
1887
- this.walkers = this.copies.map((c, i) => new (0, _chunkJBB3GDBBcjs.PenDabWalker)(walk, init.seed + i * 7919 | 0, c.linear));
1887
+ this.walkers = this.copies.map((c, i) => new (0, _chunk56RHCIJVcjs.PenDabWalker)(walk, init.seed + i * 7919 | 0, c.linear));
1888
1888
  this.medium = new (0, _chunkNIBFKXMDcjs.TileMedium)(init.target, {});
1889
1889
  this.next = init.nextId;
1890
1890
  }
@@ -1970,7 +1970,7 @@ var StickerSpray = (_class7 = class {
1970
1970
  const effect = this.init.effect;
1971
1971
  if (effect) {
1972
1972
  const rgb = [0, 0, 0];
1973
- const alpha = _chunkJBB3GDBBcjs.sampleEffectAt.call(void 0, effect, d.x + dx, d.y + dy, rgb, d);
1973
+ const alpha = _chunk56RHCIJVcjs.sampleEffectAt.call(void 0, effect, d.x + dx, d.y + dy, rgb, d);
1974
1974
  return { color: "#" + rgb.map((c) => Math.round(c * 255).toString(16).padStart(2, "0")).join(""), alpha };
1975
1975
  }
1976
1976
  const g = this.init.paint;
@@ -2099,7 +2099,7 @@ var PaintStrokeSession = (_class8 = class _PaintStrokeSession {
2099
2099
  this.layerId = init.layerId;
2100
2100
  this.base = init.surface;
2101
2101
  this.live = new Map(this.base.tiles);
2102
- this.copies = init.copies.length ? init.copies : [_chunkJBB3GDBBcjs.IDENTITY_COPY];
2102
+ this.copies = init.copies.length ? init.copies : [_chunk56RHCIJVcjs.IDENTITY_COPY];
2103
2103
  const brush = init.brush;
2104
2104
  if (init.wet) this.wetDriver = init.wet.driver;
2105
2105
  if (init.light && !init.wet && !init.sticker) this.lightTwin = this.makeLightTwin(init.light.surface);
@@ -2122,7 +2122,7 @@ var PaintStrokeSession = (_class8 = class _PaintStrokeSession {
2122
2122
  this.thickDriver = new ThickStrokeDriver({ brush, target: this.tileTarget(), channels: init.thick.channels, color: rgb(init.color), load: init.mixerLoad, seed: init.seed, copies: this.copies, paint: _nullishCoalesce(init.paint, () => ( null)), effect });
2123
2123
  } else if (brush.engine === "mixer" || brush.engine === "blender" || brush.engine === "smudge" || _chunkEU2ZZA6Lcjs.usesPaintExchange.call(void 0, brush, Boolean(init.paint))) {
2124
2124
  const rgb = (c) => [c[0] / 255, c[1] / 255, c[2] / 255];
2125
- this.wet = new (0, _chunkJBB3GDBBcjs.PaintDabStroke)(brush, {
2125
+ this.wet = new (0, _chunk56RHCIJVcjs.PaintDabStroke)(brush, {
2126
2126
  target: this.tileTarget(),
2127
2127
  color: rgb(init.color),
2128
2128
  secondary: rgb(_nullishCoalesce(init.secondary, () => ( init.background))),
@@ -2137,7 +2137,7 @@ var PaintStrokeSession = (_class8 = class _PaintStrokeSession {
2137
2137
  });
2138
2138
  } else {
2139
2139
  const opts = { grain: init.grain, paperDepth: init.paperDepth, seed: init.seed, copies: this.copies, paint: _nullishCoalesce(init.paint, () => ( null)), effect, stampArt: init.stampArt };
2140
- this.dry = brush.engine === "particle" ? new ParticleStroke(brush, opts) : brush.engine === "bristle" ? new BristleStroke(brush, opts) : new (0, _chunkJBB3GDBBcjs.DryStroke)(brush, opts);
2140
+ this.dry = brush.engine === "particle" ? new ParticleStroke(brush, opts) : brush.engine === "bristle" ? new BristleStroke(brush, opts) : new (0, _chunk56RHCIJVcjs.DryStroke)(brush, opts);
2141
2141
  }
2142
2142
  }
2143
2143
 
@@ -2660,7 +2660,7 @@ function normalizeBrushStroke(raw) {
2660
2660
  }
2661
2661
  if (st.length) out.stencils = st;
2662
2662
  }
2663
- const effect = _chunkJBB3GDBBcjs.readPaintEffectPaint.call(void 0, r.paint);
2663
+ const effect = _chunk56RHCIJVcjs.readPaintEffectPaint.call(void 0, r.paint);
2664
2664
  const paint = effect ? null : _chunkNIBFKXMDcjs.readPaintSource.call(void 0, r.paint);
2665
2665
  if (effect) out.paint = effect;
2666
2666
  else if (paint && paint.type === "gradient") out.paint = paint;
@@ -2745,7 +2745,7 @@ function paperTile(paper, r, light) {
2745
2745
  const key = `${paperKey(paper, light)}|${r.x},${r.y},${r.width},${r.height}`;
2746
2746
  let t = tileCache.get(key);
2747
2747
  if (!t) {
2748
- t = _chunkJBB3GDBBcjs.renderPaper.call(void 0, paper, r, paperGrain(paper), light);
2748
+ t = _chunk56RHCIJVcjs.renderPaper.call(void 0, paper, r, paperGrain(paper), light);
2749
2749
  if (tileCache.size > 512) tileCache.delete(tileCache.keys().next().value);
2750
2750
  tileCache.set(key, t);
2751
2751
  }
@@ -2850,11 +2850,11 @@ function header(state, options) {
2850
2850
  return out;
2851
2851
  }
2852
2852
  function serializePaintDocument(state, options = {}) {
2853
- const { layers, assets } = _chunkJ4GXP53Rcjs.serializeLayers.call(void 0, state.layers);
2853
+ const { layers, assets } = _chunk4NMPUJUKcjs.serializeLayers.call(void 0, state.layers);
2854
2854
  return { ...header(state, options), layers, assets };
2855
2855
  }
2856
2856
  async function serializePaintDocumentExternal(state, store, options = {}) {
2857
- const { layers, assets } = await _chunkJ4GXP53Rcjs.serializeLayersExternal.call(void 0, state.layers, store);
2857
+ const { layers, assets } = await _chunk4NMPUJUKcjs.serializeLayersExternal.call(void 0, state.layers, store);
2858
2858
  return { ...header(state, options), layers, assets };
2859
2859
  }
2860
2860
  function paintLayersOnly(layers, problems) {
@@ -2889,9 +2889,9 @@ function deserializePaintDocument(raw) {
2889
2889
  }
2890
2890
  const problems = [];
2891
2891
  const canvas = normalizeCanvas({ width: r.width, height: r.height, dpi: _nullishCoalesce(r.dpi, () => ( void 0)) });
2892
- const paper = _chunkJBB3GDBBcjs.normalizePaper.call(void 0, _nullishCoalesce(r.paper, () => ( {})));
2892
+ const paper = _chunk56RHCIJVcjs.normalizePaper.call(void 0, _nullishCoalesce(r.paper, () => ( {})));
2893
2893
  const assets = r.assets && typeof r.assets === "object" ? r.assets : {};
2894
- const layers = paintLayersOnly(_chunkJ4GXP53Rcjs.deserializeLayers.call(void 0, r.layers, { assets, problems }), problems);
2894
+ const layers = paintLayersOnly(_chunk4NMPUJUKcjs.deserializeLayers.call(void 0, r.layers, { assets, problems }), problems);
2895
2895
  const wanted = typeof r.activeLayerId === "string" ? r.activeLayerId : null;
2896
2896
  const activeLayerId = wanted && _chunkPVJMTLPJcjs.findLayer.call(void 0, layers, wanted) ? wanted : _nullishCoalesce(_optionalChain([_chunkPVJMTLPJcjs.flattenLayers.call(void 0, layers), 'access', _124 => _124.filter, 'call', _125 => _125((l) => l.type === "pixel"), 'access', _126 => _126.pop, 'call', _127 => _127(), 'optionalAccess', _128 => _128.id]), () => ( null));
2897
2897
  const wetEvents = Array.isArray(r.wetEvents) ? r.wetEvents.filter((e) => e && typeof e === "object" && Number.isInteger(e.clock) && typeof e.kind === "string") : [];
@@ -2907,7 +2907,7 @@ async function deserializePaintDocumentAsync(raw, store) {
2907
2907
  if (!raw || typeof raw !== "object") throw new Error("Not a paint document: expected a JSON object.");
2908
2908
  const r = raw;
2909
2909
  const problems = [];
2910
- const assets = await _chunkJ4GXP53Rcjs.resolveExternalAssets.call(void 0, _nullishCoalesce(r.assets, () => ( {})), store, problems);
2910
+ const assets = await _chunk4NMPUJUKcjs.resolveExternalAssets.call(void 0, _nullishCoalesce(r.assets, () => ( {})), store, problems);
2911
2911
  const loaded = deserializePaintDocument({ ...r, assets });
2912
2912
  return { ...loaded, problems: [...problems, ...loaded.problems] };
2913
2913
  }
@@ -2990,7 +2990,7 @@ function pointerToPenPoint(e, x, y, view) {
2990
2990
  const p = { x, y, pressure: samplePressure(e) };
2991
2991
  if (typeof e.timeStamp === "number" && Number.isFinite(e.timeStamp)) p.t = e.timeStamp;
2992
2992
  if (e.pointerType !== "pen") return p;
2993
- const o = _chunkJBB3GDBBcjs.penOrientation.call(void 0, {
2993
+ const o = _chunk56RHCIJVcjs.penOrientation.call(void 0, {
2994
2994
  x,
2995
2995
  y,
2996
2996
  altitude: typeof e.altitudeAngle === "number" ? e.altitudeAngle : void 0,
@@ -3057,18 +3057,18 @@ var thumbWorld = null;
3057
3057
  function paintWetTestStroke(brush, paper, color, width, height) {
3058
3058
  if (!thumbWorld || thumbWorld.width !== width || thumbWorld.height !== height) {
3059
3059
  _optionalChain([thumbWorld, 'optionalAccess', _131 => _131.destroy, 'call', _132 => _132()]);
3060
- thumbWorld = new (0, _chunkJ5VQYK7Tcjs.WetWorld)(width, height, _chunkJBB3GDBBcjs.wetPaperInput.call(void 0, paper), { kernel: "typescript", threads: 0 });
3061
- } else thumbWorld.setPaper(_chunkJBB3GDBBcjs.wetPaperInput.call(void 0, paper));
3060
+ thumbWorld = new (0, _chunkJ5VQYK7Tcjs.WetWorld)(width, height, _chunk56RHCIJVcjs.wetPaperInput.call(void 0, paper), { kernel: "typescript", threads: 0 });
3061
+ } else thumbWorld.setPaper(_chunk56RHCIJVcjs.wetPaperInput.call(void 0, paper));
3062
3062
  const w = thumbWorld;
3063
3063
  if (w.hasLane("thumb")) w.removeLane("thumb");
3064
3064
  w.ensureLane("thumb");
3065
- const [r, g, b] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, color);
3065
+ const [r, g, b] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, color);
3066
3066
  if (brush.wet.tool !== "paint" && brush.wet.tool !== "water") {
3067
3067
  const half = Math.ceil(height / 2);
3068
3068
  w.paint("thumb", { x: 0, y: 0, width, height: half }, null, 0.4, Array.from(_chunkJ5VQYK7Tcjs.pigmentOf.call(void 0, [r / 255, g / 255, b / 255], 0), (v) => v * 0.05));
3069
3069
  w.paint("thumb", { x: 0, y: half, width, height: height - half }, null, 0.4, Array.from(_chunkJ5VQYK7Tcjs.pigmentOf.call(void 0, [232 / 255, 196 / 255, 64 / 255], 0), (v) => v * 0.05));
3070
3070
  }
3071
- const driver = new (0, _chunkJBB3GDBBcjs.WetStrokeDriver)({
3071
+ const driver = new (0, _chunk56RHCIJVcjs.WetStrokeDriver)({
3072
3072
  world: w,
3073
3073
  laneId: "thumb",
3074
3074
  brush,
@@ -3076,9 +3076,9 @@ function paintWetTestStroke(brush, paper, color, width, height) {
3076
3076
  load: brushLoadForStroke(brush, _chunkNIBFKXMDcjs.EMPTY_MIXER_LOAD, [r / 255, g / 255, b / 255]),
3077
3077
  grain: paperGrain(paper),
3078
3078
  paperDepth: paper.depth,
3079
- paperColor: _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, paper.color),
3079
+ paperColor: _chunk56RHCIJVcjs.hexToRgb8.call(void 0, paper.color),
3080
3080
  seed: 7,
3081
- copies: [_chunkJBB3GDBBcjs.IDENTITY_COPY]
3081
+ copies: [_chunk56RHCIJVcjs.IDENTITY_COPY]
3082
3082
  });
3083
3083
  driver.push(thumbnailStroke(width, height));
3084
3084
  driver.finish();
@@ -3098,7 +3098,7 @@ function thumbnailStroke(width, height) {
3098
3098
  return pts;
3099
3099
  }
3100
3100
  function paintTestStroke(surface, brush, paper, color, width, height, stampArt) {
3101
- const [r, g, b] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, color);
3101
+ const [r, g, b] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, color);
3102
3102
  let result = surface;
3103
3103
  let thick = null;
3104
3104
  let light = null;
@@ -3119,13 +3119,13 @@ function paintTestStroke(surface, brush, paper, color, width, height, stampArt)
3119
3119
  lockTransparency: false,
3120
3120
  brush,
3121
3121
  color: [r, g, b, 255],
3122
- background: [..._chunkJBB3GDBBcjs.hexToRgb8.call(void 0, paper.color), 255],
3122
+ background: [..._chunk56RHCIJVcjs.hexToRgb8.call(void 0, paper.color), 255],
3123
3123
  grain: paperGrain(paper),
3124
3124
  paperDepth: paper.depth,
3125
3125
  seed: 7,
3126
3126
  colorHex: color,
3127
3127
  affineCopies: [],
3128
- copies: [_chunkJBB3GDBBcjs.IDENTITY_COPY],
3128
+ copies: [_chunk56RHCIJVcjs.IDENTITY_COPY],
3129
3129
  mixerLoad: brushLoadForStroke(brush, _chunkNIBFKXMDcjs.EMPTY_MIXER_LOAD, [r / 255, g / 255, b / 255]),
3130
3130
  thick: brush.engine === "impasto" ? { channels: emptyThickChannels() } : void 0,
3131
3131
  sticker: brush.engine === "sticker" ? { nextId: 1 } : void 0,
@@ -3143,7 +3143,7 @@ function renderBrushThumbnail(brush, options) {
3143
3143
  const height = Math.max(16, Math.min(512, Math.round(_nullishCoalesce(options.height, () => ( 48)))));
3144
3144
  const maxSize = height * 0.42;
3145
3145
  const b = brush.tip.size > maxSize ? _chunkEU2ZZA6Lcjs.normalizePaintBrush.call(void 0, { tip: { ...brush.tip, size: maxSize } }, brush) : brush;
3146
- const rgba = [..._chunkJBB3GDBBcjs.hexToRgb8.call(void 0, options.color), 255];
3146
+ const rgba = [..._chunk56RHCIJVcjs.hexToRgb8.call(void 0, options.color), 255];
3147
3147
  let surface = _chunk474IQG74cjs.emptySurface.call(void 0, 4);
3148
3148
  if (b.engine === "eraser") {
3149
3149
  surface = _chunk474IQG74cjs.fillRect.call(void 0, surface, { x: 0, y: 0, width, height }, rgba);
@@ -3470,7 +3470,7 @@ var MixingPad = (_class10 = class {constructor() { _class10.prototype.__init52.c
3470
3470
  }
3471
3471
  /** Paints `points` with `brush` in `color` on the pad. */
3472
3472
  run(brush, points, color) {
3473
- const [r, g, b] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, color);
3473
+ const [r, g, b] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, color);
3474
3474
  let result = null;
3475
3475
  const session = new PaintStrokeSession(
3476
3476
  { update: () => {
@@ -3488,7 +3488,7 @@ var MixingPad = (_class10 = class {constructor() { _class10.prototype.__init52.c
3488
3488
  seed: 1,
3489
3489
  colorHex: color,
3490
3490
  affineCopies: [],
3491
- copies: [_chunkJBB3GDBBcjs.IDENTITY_COPY],
3491
+ copies: [_chunk56RHCIJVcjs.IDENTITY_COPY],
3492
3492
  mixerLoad: brushLoadForStroke(brush, _chunkNIBFKXMDcjs.EMPTY_MIXER_LOAD, [r / 255, g / 255, b / 255])
3493
3493
  }
3494
3494
  );
@@ -3579,7 +3579,7 @@ var MixingPad = (_class10 = class {constructor() { _class10.prototype.__init52.c
3579
3579
  this.run(knife, stir, "#000000");
3580
3580
  }
3581
3581
  const mixed = _chunk2VX55NFMcjs.mixPigments.call(void 0,
3582
- paints2.map((p) => _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, p.color).map((v) => v / 255)),
3582
+ paints2.map((p) => _chunk56RHCIJVcjs.hexToRgb8.call(void 0, p.color).map((v) => v / 255)),
3583
3583
  paints2.map((p) => p.parts)
3584
3584
  );
3585
3585
  const core = _chunkEU2ZZA6Lcjs.normalizePaintBrush.call(void 0, { tip: { ...PAD_BLOB.tip, size: R * 1.1, hardness: 0.55 } }, PAD_BLOB);
@@ -3968,10 +3968,10 @@ function addTiles(a, b) {
3968
3968
  }
3969
3969
  function computeTile(paper, grain, amount, rect, layers) {
3970
3970
  const n = rect.width * rect.height;
3971
- const [p0, p1, p2] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, paper.color);
3971
+ const [p0, p1, p2] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, paper.color);
3972
3972
  const pb = [p0, p1, p2];
3973
3973
  const pl = [Math.max(1e-4, LIN[p0]), Math.max(1e-4, LIN[p1]), Math.max(1e-4, LIN[p2])];
3974
- const [c0, c1, c2] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, _nullishCoalesce(paper.backlightColor, () => ( DEFAULT_BACKLIGHT_COLOR)));
3974
+ const [c0, c1, c2] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, _nullishCoalesce(paper.backlightColor, () => ( DEFAULT_BACKLIGHT_COLOR)));
3975
3975
  const t0 = new Float32Array(n).fill(amount * LIN[c0]);
3976
3976
  const t1 = new Float32Array(n).fill(amount * LIN[c1]);
3977
3977
  const t2 = new Float32Array(n).fill(amount * LIN[c2]);
@@ -4395,7 +4395,7 @@ function parseColor(value, what = "color") {
4395
4395
  return value.trim().toLowerCase();
4396
4396
  }
4397
4397
  function rgbaOf(hex2) {
4398
- const [r, g, b] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, hex2);
4398
+ const [r, g, b] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, hex2);
4399
4399
  return [r, g, b, 255];
4400
4400
  }
4401
4401
  function rgbToHex(r, g, b) {
@@ -4536,7 +4536,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
4536
4536
  this.encodeImage = options.encodeImage;
4537
4537
  this.guides = defaultGuides(this.doc.canvas);
4538
4538
  this.wetOptions = options.wet;
4539
- this.wet = new (0, _chunkJBB3GDBBcjs.PaintWetLayers)(
4539
+ this.wet = new (0, _chunk56RHCIJVcjs.PaintWetLayers)(
4540
4540
  {
4541
4541
  canvas: () => this.doc.canvas,
4542
4542
  paper: () => this.doc.paper,
@@ -4978,7 +4978,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
4978
4978
  // --- Canvas and paper ----------------------------------------------------------
4979
4979
  resolvePaper(paper) {
4980
4980
  if (typeof paper === "string") {
4981
- const p = _chunkJBB3GDBBcjs.paperPreset.call(void 0, paper);
4981
+ const p = _chunk56RHCIJVcjs.paperPreset.call(void 0, paper);
4982
4982
  if (!p) throw new PaintEditorError(`Unknown paper "${paper}". Call list_papers for the ids.`);
4983
4983
  return p;
4984
4984
  }
@@ -5089,19 +5089,19 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5089
5089
  this.requireIdle("changing the paper");
5090
5090
  let base = this.doc.paper;
5091
5091
  if (update.preset !== void 0 && update.preset !== this.doc.paper.preset) {
5092
- const p = _chunkJBB3GDBBcjs.paperPreset.call(void 0, update.preset);
5092
+ const p = _chunk56RHCIJVcjs.paperPreset.call(void 0, update.preset);
5093
5093
  if (!p) throw new PaintEditorError(`Unknown paper "${update.preset}". Call list_papers for the ids.`);
5094
5094
  base = p;
5095
5095
  }
5096
5096
  const { preset: _p, ...rest } = update;
5097
5097
  if (rest.color !== void 0) parseColor(rest.color, "paper color");
5098
- const paper = _chunkJBB3GDBBcjs.normalizePaper.call(void 0, { ...rest, preset: base.preset, offset: _nullishCoalesce(rest.offset, () => ( this.doc.paper.offset)) }, base);
5098
+ const paper = _chunk56RHCIJVcjs.normalizePaper.call(void 0, { ...rest, preset: base.preset, offset: _nullishCoalesce(rest.offset, () => ( this.doc.paper.offset)) }, base);
5099
5099
  const changedKeys = Object.keys(rest).filter((k) => k !== "name");
5100
5100
  if (changedKeys.length && update.preset === void 0) paper.preset = base.preset;
5101
5101
  if (this.wet.world) this.beginWetOp();
5102
5102
  this.commit("Paper", { ...this.doc, paper });
5103
5103
  this.wet.paperChanged();
5104
- return _chunkJBB3GDBBcjs.clonePaper.call(void 0, paper);
5104
+ return _chunk56RHCIJVcjs.clonePaper.call(void 0, paper);
5105
5105
  }
5106
5106
  // --- Layers --------------------------------------------------------------------
5107
5107
  getLayer(id) {
@@ -5701,7 +5701,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5701
5701
  this.checkTime(source.time);
5702
5702
  let map;
5703
5703
  try {
5704
- map = _chunkJBB3GDBBcjs.readEffectStrokeMap.call(void 0, source.map);
5704
+ map = _chunk56RHCIJVcjs.readEffectStrokeMap.call(void 0, source.map);
5705
5705
  } catch (e) {
5706
5706
  throw new PaintEditorError(e.message);
5707
5707
  }
@@ -5732,9 +5732,9 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5732
5732
  }
5733
5733
  /** The rendered pixels of an effect paint at the current canvas size, or `null` when it has not been rendered. */
5734
5734
  effectPaintImage(p) {
5735
- const key = _chunkJBB3GDBBcjs.effectPaintKey.call(void 0, p);
5735
+ const key = _chunk56RHCIJVcjs.effectPaintKey.call(void 0, p);
5736
5736
  const img = this.effectPaintPixels.get(key);
5737
- const size = _chunkJBB3GDBBcjs.effectPaintSize.call(void 0, p, this.doc.canvas);
5737
+ const size = _chunk56RHCIJVcjs.effectPaintSize.call(void 0, p, this.doc.canvas);
5738
5738
  if (!img || img.width !== size.width || img.height !== size.height) return null;
5739
5739
  this.effectPaintPixels.delete(key);
5740
5740
  this.effectPaintPixels.set(key, img);
@@ -5748,7 +5748,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5748
5748
  const what = `the effect "${p.effect}"${p.provider ? ` from provider "${p.provider}"` : ""}`;
5749
5749
  if (!provider) throw new PaintEditorError(`Effect paint needs ${what}, but no effects provider is registered; register it (setEffectsProvider) and try again.`);
5750
5750
  if (p.provider && provider.id !== p.provider) throw new PaintEditorError(`Effect paint needs ${what}, but the registered provider is "${provider.id}"; register "${p.provider}" (setEffectsProvider) and try again.`);
5751
- const { width, height } = _chunkJBB3GDBBcjs.effectPaintSize.call(void 0, p, this.doc.canvas);
5751
+ const { width, height } = _chunk56RHCIJVcjs.effectPaintSize.call(void 0, p, this.doc.canvas);
5752
5752
  let pixels;
5753
5753
  try {
5754
5754
  pixels = await this.effectsRenderer.render(provider, p.effect, { width, height }, { time: p.time, values: p.values });
@@ -5756,7 +5756,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5756
5756
  throw new PaintEditorError(`Effect paint could not render ${what}: ${e instanceof Error ? e.message : String(e)}`);
5757
5757
  }
5758
5758
  const img = { width, height, data: new Uint8ClampedArray(pixels.data), ...p.map ? { map: p.map } : {} };
5759
- this.effectPaintPixels.set(_chunkJBB3GDBBcjs.effectPaintKey.call(void 0, p), img);
5759
+ this.effectPaintPixels.set(_chunk56RHCIJVcjs.effectPaintKey.call(void 0, p), img);
5760
5760
  while (this.effectPaintPixels.size > _PaintEditorController.EFFECT_PAINT_CACHE) this.effectPaintPixels.delete(this.effectPaintPixels.keys().next().value);
5761
5761
  return img;
5762
5762
  }
@@ -5767,7 +5767,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5767
5767
  async prepareEffectPaints(paints2) {
5768
5768
  const seen = /* @__PURE__ */ new Set();
5769
5769
  for (const p of paints2) {
5770
- const key = _chunkJBB3GDBBcjs.effectPaintKey.call(void 0, p);
5770
+ const key = _chunk56RHCIJVcjs.effectPaintKey.call(void 0, p);
5771
5771
  if (seen.has(key)) continue;
5772
5772
  seen.add(key);
5773
5773
  await this.renderEffectPaint(p);
@@ -5808,8 +5808,8 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5808
5808
  if (!_chunkEU2ZZA6Lcjs.brushTakesPaint.call(void 0, brush)) return null;
5809
5809
  let source = null;
5810
5810
  if (init.paint !== void 0) {
5811
- if (!_chunkJBB3GDBBcjs.isPaintEffectPaint.call(void 0, init.paint)) return null;
5812
- source = _chunkJBB3GDBBcjs.readPaintEffectPaint.call(void 0, init.paint);
5811
+ if (!_chunk56RHCIJVcjs.isPaintEffectPaint.call(void 0, init.paint)) return null;
5812
+ source = _chunk56RHCIJVcjs.readPaintEffectPaint.call(void 0, init.paint);
5813
5813
  if (!source) throw new PaintEditorError("The stroke's effect paint needs an effect id and values (getEffectPaint returns one).");
5814
5814
  } else if (init.color === void 0 && !brush.paint) {
5815
5815
  if (this.effectPaintPending) throw new PaintEditorError(`The effect paint "${this.effectPaintPending.effect}" is still rendering; wait for set_effect_paint to finish, then paint.`);
@@ -5968,7 +5968,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5968
5968
  const paint = _optionalChain([rest, 'access', _309 => _309.colour, 'optionalAccess', _310 => _310.default]);
5969
5969
  if (paint && typeof paint === "object" && "type" in paint && paint.type === "gradient") this.readStrokePaint(paint);
5970
5970
  try {
5971
- return _chunkEU2ZZA6Lcjs.normalizeBrushSpec.call(void 0, _chunkYXP6X3SYcjs.mergeBrushPatch.call(void 0, base, { ...rest, ...name !== void 0 ? { name } : {} }), problems);
5971
+ return _chunkEU2ZZA6Lcjs.normalizeBrushSpec.call(void 0, _chunk3KNQ2W6Xcjs.mergeBrushPatch.call(void 0, base, { ...rest, ...name !== void 0 ? { name } : {} }), problems);
5972
5972
  } catch (e) {
5973
5973
  throw new PaintEditorError(e.message);
5974
5974
  }
@@ -5981,7 +5981,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
5981
5981
  this.brushSpec = { ...copyJSON(spec), id: next.id, name: next.name };
5982
5982
  this.pendingBrushId = null;
5983
5983
  this.emit([]);
5984
- const refs = _chunkJBB3GDBBcjs.brushStickerRefs.call(void 0, next);
5984
+ const refs = _chunk56RHCIJVcjs.brushStickerRefs.call(void 0, next);
5985
5985
  if (refs.length) void this.prepareStickers(refs).catch(() => this.emit([]));
5986
5986
  }
5987
5987
  /**
@@ -6041,7 +6041,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6041
6041
  this.colorScheme = next;
6042
6042
  const hex2 = this.brushColour ? _chunkJBZRVLXVcjs.brushColourHex.call(void 0, this.brushColour, next) : null;
6043
6043
  if (hex2) this.color = hex2;
6044
- const refs = _chunkJBB3GDBBcjs.brushStickerRefs.call(void 0, this.brush);
6044
+ const refs = _chunk56RHCIJVcjs.brushStickerRefs.call(void 0, this.brush);
6045
6045
  if (refs.some((r) => !_chunkRDFHWAHLcjs.editorStampOf.call(void 0, r))) void this.prepareStickers(refs).catch(() => this.emit([]));
6046
6046
  this.emit([]);
6047
6047
  }
@@ -6116,7 +6116,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6116
6116
  if (!_chunkEU2ZZA6Lcjs.brushTakesPaint.call(void 0, brush)) return null;
6117
6117
  let g = null;
6118
6118
  if (init.paint !== void 0) {
6119
- if (_chunkJBB3GDBBcjs.isPaintEffectPaint.call(void 0, init.paint)) return null;
6119
+ if (_chunk56RHCIJVcjs.isPaintEffectPaint.call(void 0, init.paint)) return null;
6120
6120
  const p = this.readStrokePaint(init.paint);
6121
6121
  g = p.type === "gradient" ? p : null;
6122
6122
  } else g = _nullishCoalesce(brush.paint, () => ( (init.color === void 0 ? this.gradient : null)));
@@ -6160,7 +6160,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6160
6160
  // --- Mixer Brush ---------------------------------------------------------------
6161
6161
  /** Fills the Mixer Brush reservoir with a colour (default the editor colour). */
6162
6162
  loadMixerBrush(color) {
6163
- const [r, g, b] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, color === void 0 ? this.color : parseColor(color));
6163
+ const [r, g, b] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, color === void 0 ? this.color : parseColor(color));
6164
6164
  this.mixerLoad = _chunkNIBFKXMDcjs.loadMixer.call(void 0, this.mixerLoad, [r / 255, g / 255, b / 255]);
6165
6165
  this.emit([]);
6166
6166
  return this.mixerLoad;
@@ -6206,7 +6206,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6206
6206
  return symmetryCopies(this.guides.symmetry);
6207
6207
  }
6208
6208
  sessionFor(doc, init, host) {
6209
- if (init.paint !== void 0 && !_chunkJBB3GDBBcjs.isPaintEffectPaint.call(void 0, init.paint)) {
6209
+ if (init.paint !== void 0 && !_chunk56RHCIJVcjs.isPaintEffectPaint.call(void 0, init.paint)) {
6210
6210
  const p = this.readStrokePaint(init.paint);
6211
6211
  if (p.type === "color") init = { ...init, color: p.color, paint: void 0 };
6212
6212
  else init = { ...init, paint: p };
@@ -6233,9 +6233,9 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6233
6233
  if (why) throw new PaintEditorError(`Layer "${layer.name}" is a stroke layer. ${why}`);
6234
6234
  }
6235
6235
  if (_optionalChain([doc, 'access', _320 => _320.liveStrokes, 'optionalAccess', _321 => _321[layer.id]]) && _optionalChain([effect, 'optionalAccess', _322 => _322.source, 'access', _323 => _323.live])) {
6236
- const key = _chunkJBB3GDBBcjs.effectPaintKey.call(void 0, effect.source);
6236
+ const key = _chunk56RHCIJVcjs.effectPaintKey.call(void 0, effect.source);
6237
6237
  const { sources } = this.liveEffects(doc);
6238
- if (!sources.some((p) => _chunkJBB3GDBBcjs.effectPaintKey.call(void 0, p) === key) && sources.length >= MAX_LIVE_EFFECT_SOURCES) {
6238
+ if (!sources.some((p) => _chunk56RHCIJVcjs.effectPaintKey.call(void 0, p) === key) && sources.length >= MAX_LIVE_EFFECT_SOURCES) {
6239
6239
  throw new PaintEditorError(`The painting already plays ${MAX_LIVE_EFFECT_SOURCES} live effects, the most it can; paint with one of them, or set_effect_paint with live false to bake this one.`);
6240
6240
  }
6241
6241
  }
@@ -6261,12 +6261,12 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6261
6261
  const world = this.wet.ensureLane(layer.id, brush.wet.medium);
6262
6262
  const id = layer.id;
6263
6263
  const wetColor = init.color === void 0 ? _nullishCoalesce(this.ownColour(init.brushId), () => ( this.color)) : parseColor(init.color);
6264
- const [r, g, b] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, wetColor);
6264
+ const [r, g, b] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, wetColor);
6265
6265
  const wetGradient = this.strokeGradient(init, brush, wetColor);
6266
6266
  const load = _nullishCoalesce(init.load, () => ( brushLoadForStroke(brush, this.mixerLoad, [r / 255, g / 255, b / 255])));
6267
6267
  const seedW = _nullishCoalesce(init.seed, () => ( _chunk3K6HWEXZcjs.mix32.call(void 0, this.seedCounter * 2654435761 >>> 0) & 2147483647));
6268
6268
  const copiesW = (_nullishCoalesce(init.copies, () => ( this.strokeCopies()))).filter((m) => m.some((v, i) => v !== IDENTITY_AFFINE[i]));
6269
- const driver = new (0, _chunkJBB3GDBBcjs.WetStrokeDriver)({
6269
+ const driver = new (0, _chunk56RHCIJVcjs.WetStrokeDriver)({
6270
6270
  world,
6271
6271
  laneId: id,
6272
6272
  brush,
@@ -6274,7 +6274,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6274
6274
  load,
6275
6275
  grain: paperGrain(doc.paper),
6276
6276
  paperDepth: doc.paper.depth,
6277
- paperColor: _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, doc.paper.color),
6277
+ paperColor: _chunk56RHCIJVcjs.hexToRgb8.call(void 0, doc.paper.color),
6278
6278
  seed: seedW,
6279
6279
  copies: [IDENTITY_AFFINE, ...copiesW].map(affineCopy),
6280
6280
  mask: init.maskStencils ? this.stencilSelection(init.maskStencils) : init.stencils !== false ? this.stencilSelection() : null,
@@ -6597,7 +6597,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6597
6597
  if (!_chunkPVJMTLPJcjs.findLayer.call(void 0, doc.layers, layerId)) throw new PaintEditorError(`Stroke "${s.id}" was painted on layer "${layerId}", which no longer exists; pass layerId to replay it elsewhere.`);
6598
6598
  let load = s.load;
6599
6599
  if (load && options.color !== void 0 && load.reservoir) {
6600
- const [r, g, b] = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, options.color);
6600
+ const [r, g, b] = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, options.color);
6601
6601
  load = { ...load, reservoir: [r / 255, g / 255, b / 255] };
6602
6602
  }
6603
6603
  const paint = v.paint && options.color === void 0 ? { paint: v.paint } : {};
@@ -6806,7 +6806,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
6806
6806
  */
6807
6807
  async setWetEngine(options) {
6808
6808
  const gpu = _nullishCoalesce(options.gpu, () => ( this.wet.gpuMode));
6809
- if (!_chunkJBB3GDBBcjs.WET_GPU_MODES.includes(gpu)) throw new PaintEditorError(`gpu must be ${_chunkJBB3GDBBcjs.WET_GPU_MODES.join(" or ")}, not ${JSON.stringify(gpu)}.`);
6809
+ if (!_chunk56RHCIJVcjs.WET_GPU_MODES.includes(gpu)) throw new PaintEditorError(`gpu must be ${_chunk56RHCIJVcjs.WET_GPU_MODES.join(" or ")}, not ${JSON.stringify(gpu)}.`);
6810
6810
  if (options.minTiles !== void 0 && !(Number.isInteger(options.minTiles) && options.minTiles >= 1 && options.minTiles <= 1024)) throw new PaintEditorError(`minTiles ${options.minTiles} is out of range; use 1..1024 tiles of 256 px.`);
6811
6811
  this.wet.setGpu(gpu, options.minTiles);
6812
6812
  this.emit();
@@ -7377,7 +7377,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
7377
7377
  return next.type === "group" ? { ...next, children: toStandard(next.children) } : next;
7378
7378
  });
7379
7379
  const layers = toStandard(dried);
7380
- const result = _chunkJ4GXP53Rcjs.exportPsd.call(void 0, { width, height, layers: [paperLayer, ...layers], merged, resolution: dpi });
7380
+ const result = _chunk4NMPUJUKcjs.exportPsd.call(void 0, { width, height, layers: [paperLayer, ...layers], merged, resolution: dpi });
7381
7381
  for (const [mode, names] of changed) {
7382
7382
  const label = _nullishCoalesce(_optionalChain([_chunk2VX55NFMcjs.BLEND_MODES, 'access', _416 => _416.find, 'call', _417 => _417((m) => m.id === mode), 'optionalAccess', _418 => _418.label]), () => ( mode));
7383
7383
  const std = _nullishCoalesce(_optionalChain([_chunk2VX55NFMcjs.BLEND_MODES, 'access', _419 => _419.find, 'call', _420 => _420((m) => m.id === _chunk2VX55NFMcjs.standardBlendMode.call(void 0, mode)), 'optionalAccess', _421 => _421.label]), () => ( _chunk2VX55NFMcjs.standardBlendMode.call(void 0, mode)));
@@ -7911,7 +7911,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
7911
7911
  }
7912
7912
  if (update.paint !== void 0) {
7913
7913
  if (update.paint === null) delete next.paint;
7914
- else if (_chunkJBB3GDBBcjs.isPaintEffectPaint.call(void 0, update.paint)) {
7914
+ else if (_chunk56RHCIJVcjs.isPaintEffectPaint.call(void 0, update.paint)) {
7915
7915
  if (!this.effectPaintImage(update.paint)) throw new PaintEditorError(`The effect "${update.paint.effect}" is not rendered yet; render it first (prepareEffectPaints; the update_stroke tool does this).`);
7916
7916
  next.paint = JSON.parse(JSON.stringify(update.paint));
7917
7917
  } else {
@@ -7922,7 +7922,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
7922
7922
  } else next.paint = JSON.parse(JSON.stringify(p));
7923
7923
  }
7924
7924
  }
7925
- const rgb = _chunkJBB3GDBBcjs.hexToRgb8.call(void 0, next.color).map((v) => v / 255);
7925
+ const rgb = _chunk56RHCIJVcjs.hexToRgb8.call(void 0, next.color).map((v) => v / 255);
7926
7926
  const load = brushLoadForStroke(brush, _chunkNIBFKXMDcjs.EMPTY_MIXER_LOAD, rgb);
7927
7927
  if (load.reservoir || load.pickup) next.load = load;
7928
7928
  else delete next.load;
@@ -8129,7 +8129,7 @@ var PaintEditorController = (_class14 = class _PaintEditorController {
8129
8129
  const live = strokes.filter(isLiveEffect);
8130
8130
  if (!isPixelLayer(layer) || !live.length) continue;
8131
8131
  layers.push({ layer, strokes });
8132
- for (const st of live) sources.set(_chunkJBB3GDBBcjs.effectPaintKey.call(void 0, st.paint), st.paint);
8132
+ for (const st of live) sources.set(_chunk56RHCIJVcjs.effectPaintKey.call(void 0, st.paint), st.paint);
8133
8133
  }
8134
8134
  return { layers, sources: [...sources.values()] };
8135
8135
  }
@@ -9971,8 +9971,8 @@ function createPaintEditorToolProvider(controller, options = {}) {
9971
9971
  inputSchema: EMPTY3,
9972
9972
  annotations: { title: "List papers", ...READ6 },
9973
9973
  handler: () => ({
9974
- papers: _chunkJBB3GDBBcjs.PAPER_LIBRARY.map((p) => ({ id: p.preset, name: p.name, family: p.family, pattern: p.pattern, color: p.color, depth: p.depth, absorption: p.absorption, permeability: p.permeability, roughness: p.roughness })),
9975
- families: [..._chunkJBB3GDBBcjs.PAPER_FAMILIES],
9974
+ papers: _chunk56RHCIJVcjs.PAPER_LIBRARY.map((p) => ({ id: p.preset, name: p.name, family: p.family, pattern: p.pattern, color: p.color, depth: p.depth, absorption: p.absorption, permeability: p.permeability, roughness: p.roughness })),
9975
+ families: [..._chunk56RHCIJVcjs.PAPER_FAMILIES],
9976
9976
  patterns: [..._chunkNIBFKXMDcjs.GRAIN_PATTERNS]
9977
9977
  })
9978
9978
  });
@@ -10204,7 +10204,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
10204
10204
  name: "set_brush",
10205
10205
  title: "Set the brush",
10206
10206
  description: "Chooses the active brush (id, from list_brush_presets) and / or changes it with facets laid over it (objects merge, lists and values replace, marks of another kind replace the marks; the brush library's create_brush fields); unset removes whole facets first (unset colour drops a brush's own gradient). Strokes without a brush use it. Editor state, not an undo step: the changes stay on the active brush until the library's create_brush or update_brush stores a brush. Returns the active brush as facets, the engine it paints with, and problems (values clamped or dropped).",
10207
- inputSchema: { type: "object", properties: { id: { type: "string", description: "Brush id from list_brush_presets to start from (default the active brush)." }, name: { type: "string", minLength: 1, maxLength: 80, description: "Display name." }, ..._chunkYXP6X3SYcjs.BRUSH_PATCH_PROPERTIES, unset: _chunkYXP6X3SYcjs.BRUSH_UNSET_PROPERTY }, additionalProperties: false },
10207
+ inputSchema: { type: "object", properties: { id: { type: "string", description: "Brush id from list_brush_presets to start from (default the active brush)." }, name: { type: "string", minLength: 1, maxLength: 80, description: "Display name." }, ..._chunk3KNQ2W6Xcjs.BRUSH_PATCH_PROPERTIES, unset: _chunk3KNQ2W6Xcjs.BRUSH_UNSET_PROPERTY }, additionalProperties: false },
10208
10208
  annotations: { title: "Set the brush", ...SET4 },
10209
10209
  handler: async ({ id, unset, ...patch }) => {
10210
10210
  const stamps = _optionalChain([patch, 'access', _500 => _500.tip, 'optionalAccess', _501 => _501.stamps]);
@@ -10300,7 +10300,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
10300
10300
  points: POINTS,
10301
10301
  layerId: LAYER_ID4,
10302
10302
  brushId: { type: "string", description: "Brush id from list_brush_presets (default the active brush)." },
10303
- brush: { type: "object", description: "Facets to change for this stroke only, laid over brushId or the active brush (as set_brush takes them).", properties: _chunkYXP6X3SYcjs.BRUSH_PATCH_PROPERTIES, additionalProperties: false },
10303
+ brush: { type: "object", description: "Facets to change for this stroke only, laid over brushId or the active brush (as set_brush takes them).", properties: _chunk3KNQ2W6Xcjs.BRUSH_PATCH_PROPERTIES, additionalProperties: false },
10304
10304
  color: { ...COLOR3, description: "Paint colour #rrggbb (default the paint colour)." },
10305
10305
  paint: { ..._chunkNIBFKXMDcjs.PAINT_SOURCE_JSON_SCHEMA, description: "What this stroke paints with instead of the editor's paint: a colour, or gradient paint that changes colour as the stroke goes (by distance, pressure, tilt, speed, direction, time, across the tip or at random). Wins over the brush's own gradient." },
10306
10306
  seed: { type: "integer", minimum: 0, description: "Jitter seed (default a new one); the same seed and points give the same marks." },
@@ -10316,7 +10316,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
10316
10316
  const base = a.brushId ? c.getBrush(a.brushId) : c.getState().brush;
10317
10317
  const brush = a.brush ? c.brushChanges(a.brush, a.brushId) : void 0;
10318
10318
  if (base) {
10319
- const refs = _chunkJBB3GDBBcjs.brushStickerRefs.call(void 0, _chunkEU2ZZA6Lcjs.normalizePaintBrush.call(void 0, { ..._nullishCoalesce(brush, () => ( {})), id: base.id }, base));
10319
+ const refs = _chunk56RHCIJVcjs.brushStickerRefs.call(void 0, _chunkEU2ZZA6Lcjs.normalizePaintBrush.call(void 0, { ..._nullishCoalesce(brush, () => ( {})), id: base.id }, base));
10320
10320
  if (refs.length) await c.prepareStickers(refs);
10321
10321
  }
10322
10322
  const stroke = { points: a.points, layerId: a.layerId, brushId: a.brushId, brush, color: a.color, paint: a.paint, seed: a.seed, snapToPerspective: a.snapToPerspective };
@@ -10337,7 +10337,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
10337
10337
  speed: { type: "number", minimum: 0.01, maximum: 100, description: "Drawing speed in document pixels per millisecond (optional; gives each sample a time t so playback has a pace and speed-sensitive brushes respond)." },
10338
10338
  layerId: LAYER_ID4,
10339
10339
  brushId: { type: "string", description: "Brush id from list_brush_presets (default the active brush)." },
10340
- brush: { type: "object", description: "Facets to change for this stroke only, laid over brushId or the active brush (as set_brush takes them).", properties: _chunkYXP6X3SYcjs.BRUSH_PATCH_PROPERTIES, additionalProperties: false },
10340
+ brush: { type: "object", description: "Facets to change for this stroke only, laid over brushId or the active brush (as set_brush takes them).", properties: _chunk3KNQ2W6Xcjs.BRUSH_PATCH_PROPERTIES, additionalProperties: false },
10341
10341
  color: { ...COLOR3, description: "Paint colour #rrggbb (default the paint colour)." },
10342
10342
  paint: { ..._chunkNIBFKXMDcjs.PAINT_SOURCE_JSON_SCHEMA, description: "What the strokes paint with instead of the editor's paint: a colour, or gradient paint that changes colour as each stroke goes." },
10343
10343
  seed: { type: "integer", minimum: 0, description: "Jitter seed of the first subpath, the next ones take the following seeds (default new ones); the same seed and path give the same marks." }
@@ -10352,7 +10352,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
10352
10352
  const base = a.brushId ? c.getBrush(a.brushId) : c.getState().brush;
10353
10353
  const brush = a.brush ? c.brushChanges(a.brush, a.brushId) : void 0;
10354
10354
  if (base) {
10355
- const refs = _chunkJBB3GDBBcjs.brushStickerRefs.call(void 0, _chunkEU2ZZA6Lcjs.normalizePaintBrush.call(void 0, { ..._nullishCoalesce(brush, () => ( {})), id: base.id }, base));
10355
+ const refs = _chunk56RHCIJVcjs.brushStickerRefs.call(void 0, _chunkEU2ZZA6Lcjs.normalizePaintBrush.call(void 0, { ..._nullishCoalesce(brush, () => ( {})), id: base.id }, base));
10356
10356
  if (refs.length) await c.prepareStickers(refs);
10357
10357
  }
10358
10358
  const path = options.origin && typeof a.path === "string" && a.path.trim() ? _chunkGF2RBSDMcjs.bezierPathToSvg.call(void 0, a.path, { offset: { x: -options.origin.x, y: -options.origin.y } }) : a.path;
@@ -10459,7 +10459,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
10459
10459
  properties: {
10460
10460
  id: { type: "string", description: "Stroke id from list_strokes {live: true}." },
10461
10461
  brushId: { type: "string", description: "Brush id from list_brush_presets; the stroke keeps its size." },
10462
- brush: { type: "object", properties: _chunkYXP6X3SYcjs.BRUSH_PATCH_PROPERTIES, additionalProperties: false, description: "Facets to change on top of brushId or the stroke\u2019s brush (as set_brush takes them); missing fields keep their values." },
10462
+ brush: { type: "object", properties: _chunk3KNQ2W6Xcjs.BRUSH_PATCH_PROPERTIES, additionalProperties: false, description: "Facets to change on top of brushId or the stroke\u2019s brush (as set_brush takes them); missing fields keep their values." },
10463
10463
  color: { type: "string", pattern: "^#[0-9a-fA-F]{6}$", description: "New colour #rrggbb (replaces gradient paint)." },
10464
10464
  paint: { anyOf: [_chunkNIBFKXMDcjs.PAINT_SOURCE_JSON_SCHEMA, { type: "null", description: "Back to the stroke\u2019s plain colour." }], description: "A colour or gradient paint for the stroke; null drops its gradient." },
10465
10465
  seed: { type: "integer", minimum: 0, description: "Another jitter seed: particles, scatter and texture fall differently." }
@@ -10710,7 +10710,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
10710
10710
  tools.push(..._chunk62MFUHSIcjs.createPigmentTools.call(void 0, ));
10711
10711
  tools.push(..._chunkPFHJS4HEcjs.createStickerTools.call(void 0, { provider: () => c.stickersProvider }));
10712
10712
  tools.push(
10713
- ..._chunkJ4GXP53Rcjs.createLayerEffectTools.call(void 0,
10713
+ ..._chunk4NMPUJUKcjs.createLayerEffectTools.call(void 0,
10714
10714
  {
10715
10715
  requireLayer: (id) => void c.getLayerEffects(id),
10716
10716
  getLayerEffects: (id) => c.getLayerEffects(id),
@@ -10768,7 +10768,7 @@ function strokeSummary(s, withPoints, live) {
10768
10768
  }
10769
10769
 
10770
10770
  // src/paint-editor/brush-library-tools.ts
10771
- function paintBrushPreviewRenderer(paper = () => _chunkJBB3GDBBcjs.DEFAULT_PAPER, options = {}) {
10771
+ function paintBrushPreviewRenderer(paper = () => _chunk56RHCIJVcjs.DEFAULT_PAPER, options = {}) {
10772
10772
  const sources = new BrushSourceArtCache();
10773
10773
  const draw = (brush, { width, height, color }) => {
10774
10774
  const stickers = _optionalChain([options, 'access', _515 => _515.stampArt, 'optionalCall', _516 => _516()]);
@@ -10788,7 +10788,7 @@ function paintBrushPreviewRenderer(paper = () => _chunkJBB3GDBBcjs.DEFAULT_PAPER
10788
10788
  return Object.defineProperty(render, "paper", { get: () => paper().color, enumerable: true });
10789
10789
  }
10790
10790
  function createPaintBrushLibraryToolProvider(controller, options = {}) {
10791
- return _chunkYXP6X3SYcjs.createBrushLibraryToolProvider.call(void 0, controller.brushLibrary, {
10791
+ return _chunk3KNQ2W6Xcjs.createBrushLibraryToolProvider.call(void 0, controller.brushLibrary, {
10792
10792
  profile: _chunkEU2ZZA6Lcjs.PAINT_PROFILE,
10793
10793
  stickers: () => controller.stickers.provider,
10794
10794
  ...options,
@@ -12092,7 +12092,7 @@ function toolList(provider) {
12092
12092
  function uiTables() {
12093
12093
  return {
12094
12094
  tools: PAINT_TOOLS,
12095
- brushOptions: _chunkJ4GXP53Rcjs.BRUSH_OPTION_CONTROLS,
12095
+ brushOptions: _chunk4NMPUJUKcjs.BRUSH_OPTION_CONTROLS,
12096
12096
  blendMenu: BLEND_MENU_GROUPS,
12097
12097
  layerEffects: _chunkPVJMTLPJcjs.LAYER_EFFECT_MENU.map(({ kind, label }) => ({ kind, label, controls: _chunkPVJMTLPJcjs.layerEffectControls.call(void 0, _chunkPVJMTLPJcjs.defaultLayerEffect.call(void 0, kind, kind)) })),
12098
12098
  sliders: { paper: PAPER_SLIDERS, wet: WET_PARAM_SLIDERS, wetTilt: WET_TILT_SLIDERS, wetSpeed: WET_SPEED_SLIDER, light: LIGHT_SLIDERS, stroke: STROKE_SLIDERS, sticker: STICKER_SLIDERS },
@@ -12525,4 +12525,4 @@ function createPaintConformanceHost(setup, options) {
12525
12525
 
12526
12526
 
12527
12527
 
12528
- exports.BACKLIGHT_SPILL = BACKLIGHT_SPILL; exports.BLEND_MENU_GROUPS = BLEND_MENU_GROUPS; exports.BLEND_MODES = _chunk2VX55NFMcjs.BLEND_MODES; exports.BRUSH_ID = _chunkEU2ZZA6Lcjs.BRUSH_ID; exports.BRUSH_ROTATIONS = _chunkEU2ZZA6Lcjs.BRUSH_ROTATIONS; exports.BRUSH_SLIDERS = _chunkYXP6X3SYcjs.BRUSH_SLIDERS; exports.BUILTIN_BRUSHES = _chunkEU2ZZA6Lcjs.BUILTIN_BRUSHES; exports.BristleStroke = BristleStroke; exports.BrushSourceArtCache = BrushSourceArtCache; exports.DAB_FLIPS = _chunkEU2ZZA6Lcjs.DAB_FLIPS; exports.DEFAULT_BACKLIGHT_COLOR = DEFAULT_BACKLIGHT_COLOR; exports.DEFAULT_BEHAVIOR = _chunkEU2ZZA6Lcjs.DEFAULT_BEHAVIOR; exports.DEFAULT_BRISTLE = _chunkEU2ZZA6Lcjs.DEFAULT_BRISTLE; exports.DEFAULT_BRUSH_ID = _chunkEU2ZZA6Lcjs.DEFAULT_BRUSH_ID; exports.DEFAULT_DPI = DEFAULT_DPI; exports.DEFAULT_DYNAMICS = _chunkEU2ZZA6Lcjs.DEFAULT_DYNAMICS; exports.DEFAULT_FLOW = _chunkJ5VQYK7Tcjs.DEFAULT_FLOW; exports.DEFAULT_IMPASTO = _chunkEU2ZZA6Lcjs.DEFAULT_IMPASTO; exports.DEFAULT_LIGHT = _chunkEU2ZZA6Lcjs.DEFAULT_LIGHT; exports.DEFAULT_LIGHTING = DEFAULT_LIGHTING; exports.DEFAULT_MULTI_COLOR = _chunkEU2ZZA6Lcjs.DEFAULT_MULTI_COLOR; exports.DEFAULT_PAINT_GRADIENT = _chunkNIBFKXMDcjs.DEFAULT_PAINT_GRADIENT; exports.DEFAULT_PAINT_GRADIENT_MAPPING = _chunkNIBFKXMDcjs.DEFAULT_PAINT_GRADIENT_MAPPING; exports.DEFAULT_PAPER = _chunkJBB3GDBBcjs.DEFAULT_PAPER; exports.DEFAULT_PARTICLE = _chunkEU2ZZA6Lcjs.DEFAULT_PARTICLE; exports.DEFAULT_SPRAY = _chunkEU2ZZA6Lcjs.DEFAULT_SPRAY; exports.DEFAULT_STICKER = _chunkEU2ZZA6Lcjs.DEFAULT_STICKER; exports.DEFAULT_SWATCHES = DEFAULT_SWATCHES; exports.DEFAULT_TIP_GRAIN = _chunkEU2ZZA6Lcjs.DEFAULT_TIP_GRAIN; exports.DEFAULT_VIEW = DEFAULT_VIEW; exports.DEFAULT_WET_BRUSH = _chunkEU2ZZA6Lcjs.DEFAULT_WET_BRUSH; exports.DEFAULT_WET_PARAMS = _chunkJ5VQYK7Tcjs.DEFAULT_WET_PARAMS; exports.DOT_ROTATIONS = _chunkEU2ZZA6Lcjs.DOT_ROTATIONS; exports.DOT_ROTATION_LABELS = DOT_ROTATION_LABELS; exports.DOT_TEXTURE_ORDERS = _chunkEU2ZZA6Lcjs.DOT_TEXTURE_ORDERS; exports.DOT_TEXTURE_ORDER_LABELS = DOT_TEXTURE_ORDER_LABELS; exports.DryStroke = _chunkJBB3GDBBcjs.DryStroke; exports.EFFECT_MAP_REPEATS = _chunkJBB3GDBBcjs.EFFECT_MAP_REPEATS; exports.EFFECT_STRIP_HEIGHT = _chunkJBB3GDBBcjs.EFFECT_STRIP_HEIGHT; exports.GPU_LEAD = _chunkJBB3GDBBcjs.GPU_LEAD; exports.GRAIN_PATTERNS = _chunkNIBFKXMDcjs.GRAIN_PATTERNS; exports.GRAIN_TILE = _chunkNIBFKXMDcjs.GRAIN_TILE; exports.HARMONY_KINDS = _chunkI3Y2Q3PMcjs.HARMONY_KINDS; exports.IDENTITY_AFFINE = IDENTITY_AFFINE; exports.IDENTITY_COPY = _chunkJBB3GDBBcjs.IDENTITY_COPY; exports.IMPASTO_TOOLS = _chunkEU2ZZA6Lcjs.IMPASTO_TOOLS; exports.IMPASTO_TOOL_LABELS = IMPASTO_TOOL_LABELS; exports.LIGHT_SLIDERS = LIGHT_SLIDERS; exports.LIVE_STROKE_ENGINES = LIVE_STROKE_ENGINES; exports.LitCache = LitCache; exports.MAX_BRUSH_SIZE = _chunkNIBFKXMDcjs.MAX_BRUSH_SIZE; exports.MAX_CANVAS_SIDE = MAX_CANVAS_SIDE; exports.MAX_COORDINATE = MAX_COORDINATE; exports.MAX_DOT_TEXTURES = _chunkEU2ZZA6Lcjs.MAX_DOT_TEXTURES; exports.MAX_IMAGE_SIDE = MAX_IMAGE_SIDE; exports.MAX_LIVE_EFFECT_SOURCES = MAX_LIVE_EFFECT_SOURCES; exports.MAX_PATH_SAMPLES = MAX_PATH_SAMPLES; exports.MAX_STICKER_STAMPS = _chunkEU2ZZA6Lcjs.MAX_STICKER_STAMPS; exports.MAX_ZOOM = MAX_ZOOM; exports.MIN_CANVAS_SIDE = MIN_CANVAS_SIDE; exports.MIN_ZOOM = MIN_ZOOM; exports.MIXING_PAD_HEIGHT = MIXING_PAD_HEIGHT; exports.MIXING_PAD_WIDTH = MIXING_PAD_WIDTH; exports.MULTI_COLOR_MODES = _chunkEU2ZZA6Lcjs.MULTI_COLOR_MODES; exports.MixingPad = MixingPad; exports.PAD_SAMPLE_SIZES = PAD_SAMPLE_SIZES; exports.PAINTERLY_BLEND_MODES = _chunk2VX55NFMcjs.PAINTERLY_BLEND_MODES; exports.PAINT_BRUSH_CATEGORIES = _chunkEU2ZZA6Lcjs.PAINT_BRUSH_CATEGORIES; exports.PAINT_BRUSH_ENGINES = _chunkEU2ZZA6Lcjs.PAINT_BRUSH_ENGINES; exports.PAINT_COLOR_JSON_SCHEMA = _chunkNIBFKXMDcjs.PAINT_COLOR_JSON_SCHEMA; exports.PAINT_CONTRACT_FORMAT_VERSION = PAINT_CONTRACT_FORMAT_VERSION; exports.PAINT_DOCUMENT_JSON_SCHEMA = PAINT_DOCUMENT_JSON_SCHEMA; exports.PAINT_EFFECT_PLACES = PAINT_EFFECT_PLACES; exports.PAINT_FORMAT = PAINT_FORMAT; exports.PAINT_GRADIENT_FULL_SPEED = _chunkNIBFKXMDcjs.PAINT_GRADIENT_FULL_SPEED; exports.PAINT_GRADIENT_JSON_SCHEMA = _chunkNIBFKXMDcjs.PAINT_GRADIENT_JSON_SCHEMA; exports.PAINT_GRADIENT_KIT = _chunkNIBFKXMDcjs.PAINT_GRADIENT_KIT; exports.PAINT_GRADIENT_MAPPINGS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_MAPPINGS; exports.PAINT_GRADIENT_MAPPING_LABELS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_MAPPING_LABELS; exports.PAINT_GRADIENT_PRESETS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_PRESETS; exports.PAINT_GRADIENT_REPEATS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_REPEATS; exports.PAINT_GRADIENT_REPEAT_LABELS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_REPEAT_LABELS; exports.PAINT_GRADIENT_SPACES = _chunkNIBFKXMDcjs.PAINT_GRADIENT_SPACES; exports.PAINT_GRADIENT_SPACE_LABELS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_SPACE_LABELS; exports.PAINT_SCHEMA_VERSION = PAINT_SCHEMA_VERSION; exports.PAINT_SHORTCUTS = PAINT_SHORTCUTS; exports.PAINT_SOURCE_JSON_SCHEMA = _chunkNIBFKXMDcjs.PAINT_SOURCE_JSON_SCHEMA; exports.PAINT_TARGET = PAINT_TARGET; exports.PAINT_TOOLS = PAINT_TOOLS; exports.PAPER_EFFECT_BLENDS = PAPER_EFFECT_BLENDS; exports.PAPER_EFFECT_NODE_ID = PAPER_EFFECT_NODE_ID; exports.PAPER_FAMILIES = _chunkJBB3GDBBcjs.PAPER_FAMILIES; exports.PAPER_LIBRARY = _chunkJBB3GDBBcjs.PAPER_LIBRARY; exports.PAPER_NODE_ID = PAPER_NODE_ID; exports.PAPER_SLIDERS = PAPER_SLIDERS; exports.PAPER_TARGET = PAPER_TARGET; exports.PARTICLE_KINDS = _chunkEU2ZZA6Lcjs.PARTICLE_KINDS; exports.PARTICLE_KIND_LABELS = PARTICLE_KIND_LABELS; exports.PARTICLE_RENDERS = _chunkEU2ZZA6Lcjs.PARTICLE_RENDERS; exports.PARTICLE_RENDER_LABELS = PARTICLE_RENDER_LABELS; exports.PATH_STROKE_TAPERS = PATH_STROKE_TAPERS; exports.PaintCanvasPresenter = PaintCanvasPresenter; exports.PaintDabStroke = _chunkJBB3GDBBcjs.PaintDabStroke; exports.PaintDirector = PaintDirector; exports.PaintDocumentError = PaintDocumentError; exports.PaintEditorController = PaintEditorController; exports.PaintEditorError = PaintEditorError; exports.PaintEffectsRenderer = PaintEffectsRenderer; exports.PaintGesture = PaintGesture; exports.PaintGradientSampler = _chunkNIBFKXMDcjs.PaintGradientSampler; exports.PaintPresence = PaintPresence; exports.PaintSourceError = _chunkNIBFKXMDcjs.PaintSourceError; exports.PaintStrokeSession = PaintStrokeSession; exports.PaintWetLayers = _chunkJBB3GDBBcjs.PaintWetLayers; exports.PaperGrain = _chunkNIBFKXMDcjs.PaperGrain; exports.ParticleStroke = ParticleStroke; exports.PenDabWalker = _chunkJBB3GDBBcjs.PenDabWalker; exports.PenSmoother = _chunkJBB3GDBBcjs.PenSmoother; exports.PerspectiveSnapper = PerspectiveSnapper; exports.RIBBON_PAIRS = _chunkEU2ZZA6Lcjs.RIBBON_PAIRS; exports.RIBBON_PAIR_LABELS = RIBBON_PAIR_LABELS; exports.SNAP_DECIDE_DISTANCE = SNAP_DECIDE_DISTANCE; exports.STAMP_KINDS = _chunkRDFHWAHLcjs.STAMP_KINDS; exports.STAMP_LABELS = STAMP_LABELS; exports.STENCIL_KINDS = STENCIL_KINDS; exports.STENCIL_SHAPES = STENCIL_SHAPES; exports.STICKER_ART_SIZE = STICKER_ART_SIZE; exports.STICKER_SLIDERS = STICKER_SLIDERS; exports.STROKE_SLIDERS = STROKE_SLIDERS; exports.SYMMETRY_MODES = SYMMETRY_MODES; exports.StencilSnapper = StencilSnapper; exports.StickerArtCache = StickerArtCache; exports.StickerBrowser = _chunk3VHH6V67cjs.StickerBrowser; exports.StickerSpray = StickerSpray; exports.TIP_GRAIN_MODES = _chunkEU2ZZA6Lcjs.TIP_GRAIN_MODES; exports.TRACING_NODE_ID = TRACING_NODE_ID; exports.ThickStrokeDriver = ThickStrokeDriver; exports.TileableNoise = _chunk3K6HWEXZcjs.TileableNoise; exports.TipGrain = _chunkJBB3GDBBcjs.TipGrain; exports.WET_FLOW_KINDS = _chunkJ5VQYK7Tcjs.WET_FLOW_KINDS; exports.WET_GPU_MODES = _chunkJBB3GDBBcjs.WET_GPU_MODES; exports.WET_GPU_OPTIONS = WET_GPU_OPTIONS; exports.WET_MEDIA = _chunkEU2ZZA6Lcjs.WET_MEDIA; exports.WET_MEDIUM_LABELS = WET_MEDIUM_LABELS; exports.WET_MEDIUM_PARAMS = _chunkJBB3GDBBcjs.WET_MEDIUM_PARAMS; exports.WET_PARAM_KEYS = _chunkJ5VQYK7Tcjs.WET_PARAM_KEYS; exports.WET_PARAM_SCHEMA = WET_PARAM_SCHEMA; exports.WET_PARAM_SLIDERS = WET_PARAM_SLIDERS; exports.WET_SPEED_SLIDER = WET_SPEED_SLIDER; exports.WET_TILT_SLIDERS = WET_TILT_SLIDERS; exports.WET_TOOLS = _chunkEU2ZZA6Lcjs.WET_TOOLS; exports.WET_TOOL_LABELS = WET_TOOL_LABELS; exports.WetStrokeDriver = _chunkJBB3GDBBcjs.WetStrokeDriver; exports.addPaintGradientStop = _chunkNIBFKXMDcjs.addPaintGradientStop; exports.addPolygonArea = addPolygonArea; exports.affineCopy = affineCopy; exports.applyAffine = applyAffine; exports.backlightOf = backlightOf; exports.brushEngineControls = _chunkYXP6X3SYcjs.brushEngineControls; exports.brushLoadColor = brushLoadColor; exports.brushLoadForStroke = brushLoadForStroke; exports.brushTakesPaint = _chunkEU2ZZA6Lcjs.brushTakesPaint; exports.brushToJSON = _chunkEU2ZZA6Lcjs.brushToJSON; exports.buildTimeLapse = buildTimeLapse; exports.checkPaintEffectPlace = checkPaintEffectPlace; exports.clonePaper = _chunkJBB3GDBBcjs.clonePaper; exports.colorHarmony = colorHarmony2; exports.composeAffine = composeAffine; exports.contactSheet = contactSheet; exports.createPaintAgentStrokes = createPaintAgentStrokes; exports.createPaintBrushLibraryToolProvider = createPaintBrushLibraryToolProvider; exports.createPaintChangeFeed = createPaintChangeFeed; exports.createPaintCompositor = createPaintCompositor; exports.createPaintConformanceHost = createPaintConformanceHost; exports.createPaintDocument = createPaintDocument; exports.createPaintEditorDocument = createPaintEditorDocument; exports.createPaintEditorToolProvider = createPaintEditorToolProvider; exports.createPaintEffectsToolProvider = createPaintEffectsToolProvider; exports.createPaintLayer = createPaintLayer; exports.createPaintProposalToolProvider = createPaintProposalToolProvider; exports.createPaintProposals = createPaintProposals; exports.createPaintReplayTools = createPaintReplayTools; exports.createPaintStickerTools = createPaintStickerTools; exports.createPaintThickTools = createPaintThickTools; exports.createPaintWetTools = createPaintWetTools; exports.decodeImageBlob = decodeImageBlob; exports.defaultGuides = defaultGuides; exports.defaultImageEncoder = defaultImageEncoder; exports.defaultStickerRasterizer = defaultStickerRasterizer; exports.deserializePaintDocument = deserializePaintDocument; exports.deserializePaintDocumentAsync = deserializePaintDocumentAsync; exports.documentExtensions = documentExtensions; exports.documentToScreen = documentToScreen; exports.downloadBytes = downloadBytes; exports.downsampleRgba = downsampleRgba; exports.drawSticker = drawSticker; exports.drawWaterOverlay = drawWaterOverlay; exports.effectDabField = _chunkJBB3GDBBcjs.effectDabField; exports.effectLayersToJSON = effectLayersToJSON; exports.effectPaintKey = _chunkJBB3GDBBcjs.effectPaintKey; exports.effectPaintSize = _chunkJBB3GDBBcjs.effectPaintSize; exports.emptiedLayers = emptiedLayers; exports.emptyThickChannels = emptyThickChannels; exports.engineBrushSourceIds = engineBrushSourceIds; exports.fitZoom = fitZoom; exports.grainCatch = _chunkNIBFKXMDcjs.grainCatch; exports.grainHeights = _chunkNIBFKXMDcjs.grainHeights; exports.guideOverlay = guideOverlay; exports.handlePaintShortcut = handlePaintShortcut; exports.hash2 = _chunk3K6HWEXZcjs.hash2; exports.hexToPaintRgb = _chunkNIBFKXMDcjs.hexToPaintRgb; exports.hexToRgb8 = _chunkJBB3GDBBcjs.hexToRgb8; exports.hslToRgb = hslToRgb; exports.hsvToRgb = hsvToRgb; exports.hueToWheel = _chunkI3Y2Q3PMcjs.hueToWheel; exports.invertAffine = invertAffine; exports.isBlendMode = _chunk2VX55NFMcjs.isBlendMode; exports.isGradientPaint = _chunkNIBFKXMDcjs.isGradientPaint; exports.isPaintEffectPaint = _chunkJBB3GDBBcjs.isPaintEffectPaint; exports.isPainterlyBlendMode = _chunk2VX55NFMcjs.isPainterlyBlendMode; exports.isPalmTouch = isPalmTouch; exports.isWetBrush = _chunkEU2ZZA6Lcjs.isWetBrush; exports.isWetCapable = _chunkEU2ZZA6Lcjs.isWetCapable; exports.lightTile = lightTile; exports.lightingKey = lightingKey; exports.liveStrokeBounds = liveStrokeBounds; exports.liveStrokeRefusal = liveStrokeRefusal; exports.mapPenPoint = mapPenPoint; exports.mix32 = _chunk3K6HWEXZcjs.mix32; exports.mixPixels = mixPixels; exports.mixerLoadForStroke = mixerLoadForStroke; exports.mixerTip = _chunkJBB3GDBBcjs.mixerTip; exports.multiColorForDab = _chunkJBB3GDBBcjs.multiColorForDab; exports.multiColorGradient = _chunkJBB3GDBBcjs.multiColorGradient; exports.multiColorPalette = _chunkJBB3GDBBcjs.multiColorPalette; exports.multiColorSliders = _chunkYXP6X3SYcjs.multiColorSliders; exports.multiColorToPaint = _chunkEU2ZZA6Lcjs.multiColorToPaint; exports.newPaintLayerId = newPaintLayerId; exports.nextPaperEffectVersion = nextPaperEffectVersion; exports.normalizeBehavior = _chunkEU2ZZA6Lcjs.normalizeBehavior; exports.normalizeBristle = _chunkEU2ZZA6Lcjs.normalizeBristle; exports.normalizeBrushStroke = normalizeBrushStroke; exports.normalizeCanvas = normalizeCanvas; exports.normalizeDynamics = _chunkEU2ZZA6Lcjs.normalizeDynamics; exports.normalizeFlow = _chunkJ5VQYK7Tcjs.normalizeFlow; exports.normalizeHexColor = _chunkNIBFKXMDcjs.normalizeHexColor; exports.normalizeImpasto = _chunkEU2ZZA6Lcjs.normalizeImpasto; exports.normalizeLight = _chunkEU2ZZA6Lcjs.normalizeLight; exports.normalizeLighting = normalizeLighting; exports.normalizeMultiColor = _chunkEU2ZZA6Lcjs.normalizeMultiColor; exports.normalizePaintBrush = _chunkEU2ZZA6Lcjs.normalizePaintBrush; exports.normalizePaper = _chunkJBB3GDBBcjs.normalizePaper; exports.normalizeParticle = _chunkEU2ZZA6Lcjs.normalizeParticle; exports.normalizePerspective = normalizePerspective; exports.normalizeRotation = normalizeRotation; exports.normalizeStencil = normalizeStencil; exports.normalizeStickerSettings = _chunkEU2ZZA6Lcjs.normalizeStickerSettings; exports.normalizeStickerUpdate = normalizeStickerUpdate; exports.normalizeSymmetry = normalizeSymmetry; exports.normalizeView = normalizeView; exports.normalizeWetBrush = _chunkEU2ZZA6Lcjs.normalizeWetBrush; exports.normalizeWetParams = _chunkJ5VQYK7Tcjs.normalizeWetParams; exports.overPixels = overPixels; exports.padSampleRadius = padSampleRadius; exports.paintAgentStrokePoints = paintAgentStrokePoints; exports.paintBrushPreviewRenderer = paintBrushPreviewRenderer; exports.paintContracts = paintContracts; exports.paintGradientMappingFor = _chunkNIBFKXMDcjs.paintGradientMappingFor; exports.paintPlaybackPanel = paintPlaybackPanel; exports.paintProposalGhost = paintProposalGhost; exports.paintShortcutFor = paintShortcutFor; exports.paintSourceColor = _chunkNIBFKXMDcjs.paintSourceColor; exports.paintSourceCss = _chunkNIBFKXMDcjs.paintSourceCss; exports.paintToMultiColor = _chunkEU2ZZA6Lcjs.paintToMultiColor; exports.paperEffectFromJSON = paperEffectFromJSON; exports.paperEffectToJSON = paperEffectToJSON; exports.paperGrain = paperGrain; exports.paperKey = paperKey; exports.paperNode = paperNode; exports.paperPreset = _chunkJBB3GDBBcjs.paperPreset; exports.parseBrushLibrary = _chunkEU2ZZA6Lcjs.parseBrushLibrary; exports.parseHexColor = parseHexColor; exports.parsePaintSource = _chunkNIBFKXMDcjs.parsePaintSource; exports.patchBrushValue = _chunkYXP6X3SYcjs.patchBrushValue; exports.patchPath = patchPath; exports.penOrientation = _chunkJBB3GDBBcjs.penOrientation; exports.perspectiveDirections = perspectiveDirections; exports.perspectiveGuideLines = perspectiveGuideLines; exports.planPaintToolPlayback = planPaintToolPlayback; exports.pointerToPenPoint = pointerToPenPoint; exports.quickStencil = quickStencil; exports.rand01 = _chunk3K6HWEXZcjs.rand01; exports.randSigned = _chunk3K6HWEXZcjs.randSigned; exports.readEffectStrokeMap = _chunkJBB3GDBBcjs.readEffectStrokeMap; exports.readPaintEffectPaint = _chunkJBB3GDBBcjs.readPaintEffectPaint; exports.readPaintEffectSource = readPaintEffectSource; exports.readPaintSource = _chunkNIBFKXMDcjs.readPaintSource; exports.readPath = readPath; exports.readSwatch = readSwatch; exports.reliefInfo = reliefInfo; exports.removePaintGradientStop = _chunkNIBFKXMDcjs.removePaintGradientStop; exports.renderBrushThumbnail = renderBrushThumbnail; exports.renderColorWheel = renderColorWheel; exports.renderPaper = _chunkJBB3GDBBcjs.renderPaper; exports.renderStickers = renderStickers; exports.replayFrame = replayFrame; exports.replayItems = replayItems; exports.replayPainting = replayPainting; exports.resolvePaintGradient = _chunkNIBFKXMDcjs.resolvePaintGradient; exports.reversePaintGradient = _chunkNIBFKXMDcjs.reversePaintGradient; exports.rgbToHexColor = rgbToHexColor; exports.rgbToHsl = rgbToHsl; exports.rgbToHsv = rgbToHsv; exports.sampleArt = sampleArt; exports.sampleEffectAt = _chunkJBB3GDBBcjs.sampleEffectAt; exports.sampleEffectField = _chunkJBB3GDBBcjs.sampleEffectField; exports.samplePath = samplePath; exports.samplePressure = samplePressure; exports.scalePaintGradient = _chunkNIBFKXMDcjs.scalePaintGradient; exports.scaleStencil = scaleStencil; exports.screenToDocument = screenToDocument; exports.seedFromString = _chunk3K6HWEXZcjs.seedFromString; exports.serializePaintDocument = serializePaintDocument; exports.serializePaintDocumentExternal = serializePaintDocumentExternal; exports.solidPaint = _chunkNIBFKXMDcjs.solidPaint; exports.stampCoverage = _chunkRDFHWAHLcjs.stampCoverage; exports.standardBlendMode = _chunk2VX55NFMcjs.standardBlendMode; exports.startWetClock = startWetClock; exports.stencilMask = stencilMask; exports.stencilOutline = stencilOutline; exports.stickerAt = stickerAt; exports.stickerRect = stickerRect; exports.stickerRefLabel = stickerRefLabel; exports.stickerStamp = stickerStamp; exports.stickerSurface = stickerSurface; exports.strokeBounds = strokeBounds; exports.strokeDuration = strokeDuration; exports.strokeSchedule = strokeSchedule; exports.strokeToJSON = strokeToJSON; exports.sweepPath = sweepPath; exports.symmetryAxisAngles = symmetryAxisAngles; exports.symmetryAxisSegments = symmetryAxisSegments; exports.symmetryCopies = symmetryCopies; exports.thickFromJSON = thickFromJSON; exports.thickToJSON = thickToJSON; exports.thumbnailStroke = thumbnailStroke; exports.tiltToOrientation = _chunkJBB3GDBBcjs.tiltToOrientation; exports.timeLapseVideo = timeLapseVideo; exports.timeLapseZip = timeLapseZip; exports.toStrokePoint = _chunkJBB3GDBBcjs.toStrokePoint; exports.toggleDotTexture = toggleDotTexture; exports.toggleStamp = toggleStamp; exports.toggleStickerRef = toggleStickerRef; exports.translateStencil = translateStencil; exports.updatePaintGradientStop = _chunkNIBFKXMDcjs.updatePaintGradientStop; exports.usesPaintExchange = _chunkEU2ZZA6Lcjs.usesPaintExchange; exports.variationAffine = variationAffine; exports.varyStroke = varyStroke; exports.viewCssTransform = viewCssTransform; exports.viewMatrix = viewMatrix; exports.viewPenToDocument = viewPenToDocument; exports.wetEngineSummary = wetEngineSummary; exports.wetPaperInput = _chunkJBB3GDBBcjs.wetPaperInput; exports.wetPigmentOf = _chunkJBB3GDBBcjs.wetPigmentOf; exports.wetSupport = _chunkJ5VQYK7Tcjs.wetSupport; exports.wheelAngle = wheelAngle; exports.wheelPick = wheelPick; exports.wheelPoint = wheelPoint; exports.wheelToHue = _chunkI3Y2Q3PMcjs.wheelToHue; exports.withPaintPlayback = withPaintPlayback;
12528
+ exports.BACKLIGHT_SPILL = BACKLIGHT_SPILL; exports.BLEND_MENU_GROUPS = BLEND_MENU_GROUPS; exports.BLEND_MODES = _chunk2VX55NFMcjs.BLEND_MODES; exports.BRUSH_ID = _chunkEU2ZZA6Lcjs.BRUSH_ID; exports.BRUSH_ROTATIONS = _chunkEU2ZZA6Lcjs.BRUSH_ROTATIONS; exports.BRUSH_SLIDERS = _chunk3KNQ2W6Xcjs.BRUSH_SLIDERS; exports.BUILTIN_BRUSHES = _chunkEU2ZZA6Lcjs.BUILTIN_BRUSHES; exports.BristleStroke = BristleStroke; exports.BrushSourceArtCache = BrushSourceArtCache; exports.DAB_FLIPS = _chunkEU2ZZA6Lcjs.DAB_FLIPS; exports.DEFAULT_BACKLIGHT_COLOR = DEFAULT_BACKLIGHT_COLOR; exports.DEFAULT_BEHAVIOR = _chunkEU2ZZA6Lcjs.DEFAULT_BEHAVIOR; exports.DEFAULT_BRISTLE = _chunkEU2ZZA6Lcjs.DEFAULT_BRISTLE; exports.DEFAULT_BRUSH_ID = _chunkEU2ZZA6Lcjs.DEFAULT_BRUSH_ID; exports.DEFAULT_DPI = DEFAULT_DPI; exports.DEFAULT_DYNAMICS = _chunkEU2ZZA6Lcjs.DEFAULT_DYNAMICS; exports.DEFAULT_FLOW = _chunkJ5VQYK7Tcjs.DEFAULT_FLOW; exports.DEFAULT_IMPASTO = _chunkEU2ZZA6Lcjs.DEFAULT_IMPASTO; exports.DEFAULT_LIGHT = _chunkEU2ZZA6Lcjs.DEFAULT_LIGHT; exports.DEFAULT_LIGHTING = DEFAULT_LIGHTING; exports.DEFAULT_MULTI_COLOR = _chunkEU2ZZA6Lcjs.DEFAULT_MULTI_COLOR; exports.DEFAULT_PAINT_GRADIENT = _chunkNIBFKXMDcjs.DEFAULT_PAINT_GRADIENT; exports.DEFAULT_PAINT_GRADIENT_MAPPING = _chunkNIBFKXMDcjs.DEFAULT_PAINT_GRADIENT_MAPPING; exports.DEFAULT_PAPER = _chunk56RHCIJVcjs.DEFAULT_PAPER; exports.DEFAULT_PARTICLE = _chunkEU2ZZA6Lcjs.DEFAULT_PARTICLE; exports.DEFAULT_SPRAY = _chunkEU2ZZA6Lcjs.DEFAULT_SPRAY; exports.DEFAULT_STICKER = _chunkEU2ZZA6Lcjs.DEFAULT_STICKER; exports.DEFAULT_SWATCHES = DEFAULT_SWATCHES; exports.DEFAULT_TIP_GRAIN = _chunkEU2ZZA6Lcjs.DEFAULT_TIP_GRAIN; exports.DEFAULT_VIEW = DEFAULT_VIEW; exports.DEFAULT_WET_BRUSH = _chunkEU2ZZA6Lcjs.DEFAULT_WET_BRUSH; exports.DEFAULT_WET_PARAMS = _chunkJ5VQYK7Tcjs.DEFAULT_WET_PARAMS; exports.DOT_ROTATIONS = _chunkEU2ZZA6Lcjs.DOT_ROTATIONS; exports.DOT_ROTATION_LABELS = DOT_ROTATION_LABELS; exports.DOT_TEXTURE_ORDERS = _chunkEU2ZZA6Lcjs.DOT_TEXTURE_ORDERS; exports.DOT_TEXTURE_ORDER_LABELS = DOT_TEXTURE_ORDER_LABELS; exports.DryStroke = _chunk56RHCIJVcjs.DryStroke; exports.EFFECT_MAP_REPEATS = _chunk56RHCIJVcjs.EFFECT_MAP_REPEATS; exports.EFFECT_STRIP_HEIGHT = _chunk56RHCIJVcjs.EFFECT_STRIP_HEIGHT; exports.GPU_LEAD = _chunk56RHCIJVcjs.GPU_LEAD; exports.GRAIN_PATTERNS = _chunkNIBFKXMDcjs.GRAIN_PATTERNS; exports.GRAIN_TILE = _chunkNIBFKXMDcjs.GRAIN_TILE; exports.HARMONY_KINDS = _chunkI3Y2Q3PMcjs.HARMONY_KINDS; exports.IDENTITY_AFFINE = IDENTITY_AFFINE; exports.IDENTITY_COPY = _chunk56RHCIJVcjs.IDENTITY_COPY; exports.IMPASTO_TOOLS = _chunkEU2ZZA6Lcjs.IMPASTO_TOOLS; exports.IMPASTO_TOOL_LABELS = IMPASTO_TOOL_LABELS; exports.LIGHT_SLIDERS = LIGHT_SLIDERS; exports.LIVE_STROKE_ENGINES = LIVE_STROKE_ENGINES; exports.LitCache = LitCache; exports.MAX_BRUSH_SIZE = _chunkNIBFKXMDcjs.MAX_BRUSH_SIZE; exports.MAX_CANVAS_SIDE = MAX_CANVAS_SIDE; exports.MAX_COORDINATE = MAX_COORDINATE; exports.MAX_DOT_TEXTURES = _chunkEU2ZZA6Lcjs.MAX_DOT_TEXTURES; exports.MAX_IMAGE_SIDE = MAX_IMAGE_SIDE; exports.MAX_LIVE_EFFECT_SOURCES = MAX_LIVE_EFFECT_SOURCES; exports.MAX_PATH_SAMPLES = MAX_PATH_SAMPLES; exports.MAX_STICKER_STAMPS = _chunkEU2ZZA6Lcjs.MAX_STICKER_STAMPS; exports.MAX_ZOOM = MAX_ZOOM; exports.MIN_CANVAS_SIDE = MIN_CANVAS_SIDE; exports.MIN_ZOOM = MIN_ZOOM; exports.MIXING_PAD_HEIGHT = MIXING_PAD_HEIGHT; exports.MIXING_PAD_WIDTH = MIXING_PAD_WIDTH; exports.MULTI_COLOR_MODES = _chunkEU2ZZA6Lcjs.MULTI_COLOR_MODES; exports.MixingPad = MixingPad; exports.PAD_SAMPLE_SIZES = PAD_SAMPLE_SIZES; exports.PAINTERLY_BLEND_MODES = _chunk2VX55NFMcjs.PAINTERLY_BLEND_MODES; exports.PAINT_BRUSH_CATEGORIES = _chunkEU2ZZA6Lcjs.PAINT_BRUSH_CATEGORIES; exports.PAINT_BRUSH_ENGINES = _chunkEU2ZZA6Lcjs.PAINT_BRUSH_ENGINES; exports.PAINT_COLOR_JSON_SCHEMA = _chunkNIBFKXMDcjs.PAINT_COLOR_JSON_SCHEMA; exports.PAINT_CONTRACT_FORMAT_VERSION = PAINT_CONTRACT_FORMAT_VERSION; exports.PAINT_DOCUMENT_JSON_SCHEMA = PAINT_DOCUMENT_JSON_SCHEMA; exports.PAINT_EFFECT_PLACES = PAINT_EFFECT_PLACES; exports.PAINT_FORMAT = PAINT_FORMAT; exports.PAINT_GRADIENT_FULL_SPEED = _chunkNIBFKXMDcjs.PAINT_GRADIENT_FULL_SPEED; exports.PAINT_GRADIENT_JSON_SCHEMA = _chunkNIBFKXMDcjs.PAINT_GRADIENT_JSON_SCHEMA; exports.PAINT_GRADIENT_KIT = _chunkNIBFKXMDcjs.PAINT_GRADIENT_KIT; exports.PAINT_GRADIENT_MAPPINGS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_MAPPINGS; exports.PAINT_GRADIENT_MAPPING_LABELS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_MAPPING_LABELS; exports.PAINT_GRADIENT_PRESETS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_PRESETS; exports.PAINT_GRADIENT_REPEATS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_REPEATS; exports.PAINT_GRADIENT_REPEAT_LABELS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_REPEAT_LABELS; exports.PAINT_GRADIENT_SPACES = _chunkNIBFKXMDcjs.PAINT_GRADIENT_SPACES; exports.PAINT_GRADIENT_SPACE_LABELS = _chunkNIBFKXMDcjs.PAINT_GRADIENT_SPACE_LABELS; exports.PAINT_SCHEMA_VERSION = PAINT_SCHEMA_VERSION; exports.PAINT_SHORTCUTS = PAINT_SHORTCUTS; exports.PAINT_SOURCE_JSON_SCHEMA = _chunkNIBFKXMDcjs.PAINT_SOURCE_JSON_SCHEMA; exports.PAINT_TARGET = PAINT_TARGET; exports.PAINT_TOOLS = PAINT_TOOLS; exports.PAPER_EFFECT_BLENDS = PAPER_EFFECT_BLENDS; exports.PAPER_EFFECT_NODE_ID = PAPER_EFFECT_NODE_ID; exports.PAPER_FAMILIES = _chunk56RHCIJVcjs.PAPER_FAMILIES; exports.PAPER_LIBRARY = _chunk56RHCIJVcjs.PAPER_LIBRARY; exports.PAPER_NODE_ID = PAPER_NODE_ID; exports.PAPER_SLIDERS = PAPER_SLIDERS; exports.PAPER_TARGET = PAPER_TARGET; exports.PARTICLE_KINDS = _chunkEU2ZZA6Lcjs.PARTICLE_KINDS; exports.PARTICLE_KIND_LABELS = PARTICLE_KIND_LABELS; exports.PARTICLE_RENDERS = _chunkEU2ZZA6Lcjs.PARTICLE_RENDERS; exports.PARTICLE_RENDER_LABELS = PARTICLE_RENDER_LABELS; exports.PATH_STROKE_TAPERS = PATH_STROKE_TAPERS; exports.PaintCanvasPresenter = PaintCanvasPresenter; exports.PaintDabStroke = _chunk56RHCIJVcjs.PaintDabStroke; exports.PaintDirector = PaintDirector; exports.PaintDocumentError = PaintDocumentError; exports.PaintEditorController = PaintEditorController; exports.PaintEditorError = PaintEditorError; exports.PaintEffectsRenderer = PaintEffectsRenderer; exports.PaintGesture = PaintGesture; exports.PaintGradientSampler = _chunkNIBFKXMDcjs.PaintGradientSampler; exports.PaintPresence = PaintPresence; exports.PaintSourceError = _chunkNIBFKXMDcjs.PaintSourceError; exports.PaintStrokeSession = PaintStrokeSession; exports.PaintWetLayers = _chunk56RHCIJVcjs.PaintWetLayers; exports.PaperGrain = _chunkNIBFKXMDcjs.PaperGrain; exports.ParticleStroke = ParticleStroke; exports.PenDabWalker = _chunk56RHCIJVcjs.PenDabWalker; exports.PenSmoother = _chunk56RHCIJVcjs.PenSmoother; exports.PerspectiveSnapper = PerspectiveSnapper; exports.RIBBON_PAIRS = _chunkEU2ZZA6Lcjs.RIBBON_PAIRS; exports.RIBBON_PAIR_LABELS = RIBBON_PAIR_LABELS; exports.SNAP_DECIDE_DISTANCE = SNAP_DECIDE_DISTANCE; exports.STAMP_KINDS = _chunkRDFHWAHLcjs.STAMP_KINDS; exports.STAMP_LABELS = STAMP_LABELS; exports.STENCIL_KINDS = STENCIL_KINDS; exports.STENCIL_SHAPES = STENCIL_SHAPES; exports.STICKER_ART_SIZE = STICKER_ART_SIZE; exports.STICKER_SLIDERS = STICKER_SLIDERS; exports.STROKE_SLIDERS = STROKE_SLIDERS; exports.SYMMETRY_MODES = SYMMETRY_MODES; exports.StencilSnapper = StencilSnapper; exports.StickerArtCache = StickerArtCache; exports.StickerBrowser = _chunk3VHH6V67cjs.StickerBrowser; exports.StickerSpray = StickerSpray; exports.TIP_GRAIN_MODES = _chunkEU2ZZA6Lcjs.TIP_GRAIN_MODES; exports.TRACING_NODE_ID = TRACING_NODE_ID; exports.ThickStrokeDriver = ThickStrokeDriver; exports.TileableNoise = _chunk3K6HWEXZcjs.TileableNoise; exports.TipGrain = _chunk56RHCIJVcjs.TipGrain; exports.WET_FLOW_KINDS = _chunkJ5VQYK7Tcjs.WET_FLOW_KINDS; exports.WET_GPU_MODES = _chunk56RHCIJVcjs.WET_GPU_MODES; exports.WET_GPU_OPTIONS = WET_GPU_OPTIONS; exports.WET_MEDIA = _chunkEU2ZZA6Lcjs.WET_MEDIA; exports.WET_MEDIUM_LABELS = WET_MEDIUM_LABELS; exports.WET_MEDIUM_PARAMS = _chunk56RHCIJVcjs.WET_MEDIUM_PARAMS; exports.WET_PARAM_KEYS = _chunkJ5VQYK7Tcjs.WET_PARAM_KEYS; exports.WET_PARAM_SCHEMA = WET_PARAM_SCHEMA; exports.WET_PARAM_SLIDERS = WET_PARAM_SLIDERS; exports.WET_SPEED_SLIDER = WET_SPEED_SLIDER; exports.WET_TILT_SLIDERS = WET_TILT_SLIDERS; exports.WET_TOOLS = _chunkEU2ZZA6Lcjs.WET_TOOLS; exports.WET_TOOL_LABELS = WET_TOOL_LABELS; exports.WetStrokeDriver = _chunk56RHCIJVcjs.WetStrokeDriver; exports.addPaintGradientStop = _chunkNIBFKXMDcjs.addPaintGradientStop; exports.addPolygonArea = addPolygonArea; exports.affineCopy = affineCopy; exports.applyAffine = applyAffine; exports.backlightOf = backlightOf; exports.brushEngineControls = _chunk3KNQ2W6Xcjs.brushEngineControls; exports.brushLoadColor = brushLoadColor; exports.brushLoadForStroke = brushLoadForStroke; exports.brushTakesPaint = _chunkEU2ZZA6Lcjs.brushTakesPaint; exports.brushToJSON = _chunkEU2ZZA6Lcjs.brushToJSON; exports.buildTimeLapse = buildTimeLapse; exports.checkPaintEffectPlace = checkPaintEffectPlace; exports.clonePaper = _chunk56RHCIJVcjs.clonePaper; exports.colorHarmony = colorHarmony2; exports.composeAffine = composeAffine; exports.contactSheet = contactSheet; exports.createPaintAgentStrokes = createPaintAgentStrokes; exports.createPaintBrushLibraryToolProvider = createPaintBrushLibraryToolProvider; exports.createPaintChangeFeed = createPaintChangeFeed; exports.createPaintCompositor = createPaintCompositor; exports.createPaintConformanceHost = createPaintConformanceHost; exports.createPaintDocument = createPaintDocument; exports.createPaintEditorDocument = createPaintEditorDocument; exports.createPaintEditorToolProvider = createPaintEditorToolProvider; exports.createPaintEffectsToolProvider = createPaintEffectsToolProvider; exports.createPaintLayer = createPaintLayer; exports.createPaintProposalToolProvider = createPaintProposalToolProvider; exports.createPaintProposals = createPaintProposals; exports.createPaintReplayTools = createPaintReplayTools; exports.createPaintStickerTools = createPaintStickerTools; exports.createPaintThickTools = createPaintThickTools; exports.createPaintWetTools = createPaintWetTools; exports.decodeImageBlob = decodeImageBlob; exports.defaultGuides = defaultGuides; exports.defaultImageEncoder = defaultImageEncoder; exports.defaultStickerRasterizer = defaultStickerRasterizer; exports.deserializePaintDocument = deserializePaintDocument; exports.deserializePaintDocumentAsync = deserializePaintDocumentAsync; exports.documentExtensions = documentExtensions; exports.documentToScreen = documentToScreen; exports.downloadBytes = downloadBytes; exports.downsampleRgba = downsampleRgba; exports.drawSticker = drawSticker; exports.drawWaterOverlay = drawWaterOverlay; exports.effectDabField = _chunk56RHCIJVcjs.effectDabField; exports.effectLayersToJSON = effectLayersToJSON; exports.effectPaintKey = _chunk56RHCIJVcjs.effectPaintKey; exports.effectPaintSize = _chunk56RHCIJVcjs.effectPaintSize; exports.emptiedLayers = emptiedLayers; exports.emptyThickChannels = emptyThickChannels; exports.engineBrushSourceIds = engineBrushSourceIds; exports.fitZoom = fitZoom; exports.grainCatch = _chunkNIBFKXMDcjs.grainCatch; exports.grainHeights = _chunkNIBFKXMDcjs.grainHeights; exports.guideOverlay = guideOverlay; exports.handlePaintShortcut = handlePaintShortcut; exports.hash2 = _chunk3K6HWEXZcjs.hash2; exports.hexToPaintRgb = _chunkNIBFKXMDcjs.hexToPaintRgb; exports.hexToRgb8 = _chunk56RHCIJVcjs.hexToRgb8; exports.hslToRgb = hslToRgb; exports.hsvToRgb = hsvToRgb; exports.hueToWheel = _chunkI3Y2Q3PMcjs.hueToWheel; exports.invertAffine = invertAffine; exports.isBlendMode = _chunk2VX55NFMcjs.isBlendMode; exports.isGradientPaint = _chunkNIBFKXMDcjs.isGradientPaint; exports.isPaintEffectPaint = _chunk56RHCIJVcjs.isPaintEffectPaint; exports.isPainterlyBlendMode = _chunk2VX55NFMcjs.isPainterlyBlendMode; exports.isPalmTouch = isPalmTouch; exports.isWetBrush = _chunkEU2ZZA6Lcjs.isWetBrush; exports.isWetCapable = _chunkEU2ZZA6Lcjs.isWetCapable; exports.lightTile = lightTile; exports.lightingKey = lightingKey; exports.liveStrokeBounds = liveStrokeBounds; exports.liveStrokeRefusal = liveStrokeRefusal; exports.mapPenPoint = mapPenPoint; exports.mix32 = _chunk3K6HWEXZcjs.mix32; exports.mixPixels = mixPixels; exports.mixerLoadForStroke = mixerLoadForStroke; exports.mixerTip = _chunk56RHCIJVcjs.mixerTip; exports.multiColorForDab = _chunk56RHCIJVcjs.multiColorForDab; exports.multiColorGradient = _chunk56RHCIJVcjs.multiColorGradient; exports.multiColorPalette = _chunk56RHCIJVcjs.multiColorPalette; exports.multiColorSliders = _chunk3KNQ2W6Xcjs.multiColorSliders; exports.multiColorToPaint = _chunkEU2ZZA6Lcjs.multiColorToPaint; exports.newPaintLayerId = newPaintLayerId; exports.nextPaperEffectVersion = nextPaperEffectVersion; exports.normalizeBehavior = _chunkEU2ZZA6Lcjs.normalizeBehavior; exports.normalizeBristle = _chunkEU2ZZA6Lcjs.normalizeBristle; exports.normalizeBrushStroke = normalizeBrushStroke; exports.normalizeCanvas = normalizeCanvas; exports.normalizeDynamics = _chunkEU2ZZA6Lcjs.normalizeDynamics; exports.normalizeFlow = _chunkJ5VQYK7Tcjs.normalizeFlow; exports.normalizeHexColor = _chunkNIBFKXMDcjs.normalizeHexColor; exports.normalizeImpasto = _chunkEU2ZZA6Lcjs.normalizeImpasto; exports.normalizeLight = _chunkEU2ZZA6Lcjs.normalizeLight; exports.normalizeLighting = normalizeLighting; exports.normalizeMultiColor = _chunkEU2ZZA6Lcjs.normalizeMultiColor; exports.normalizePaintBrush = _chunkEU2ZZA6Lcjs.normalizePaintBrush; exports.normalizePaper = _chunk56RHCIJVcjs.normalizePaper; exports.normalizeParticle = _chunkEU2ZZA6Lcjs.normalizeParticle; exports.normalizePerspective = normalizePerspective; exports.normalizeRotation = normalizeRotation; exports.normalizeStencil = normalizeStencil; exports.normalizeStickerSettings = _chunkEU2ZZA6Lcjs.normalizeStickerSettings; exports.normalizeStickerUpdate = normalizeStickerUpdate; exports.normalizeSymmetry = normalizeSymmetry; exports.normalizeView = normalizeView; exports.normalizeWetBrush = _chunkEU2ZZA6Lcjs.normalizeWetBrush; exports.normalizeWetParams = _chunkJ5VQYK7Tcjs.normalizeWetParams; exports.overPixels = overPixels; exports.padSampleRadius = padSampleRadius; exports.paintAgentStrokePoints = paintAgentStrokePoints; exports.paintBrushPreviewRenderer = paintBrushPreviewRenderer; exports.paintContracts = paintContracts; exports.paintGradientMappingFor = _chunkNIBFKXMDcjs.paintGradientMappingFor; exports.paintPlaybackPanel = paintPlaybackPanel; exports.paintProposalGhost = paintProposalGhost; exports.paintShortcutFor = paintShortcutFor; exports.paintSourceColor = _chunkNIBFKXMDcjs.paintSourceColor; exports.paintSourceCss = _chunkNIBFKXMDcjs.paintSourceCss; exports.paintToMultiColor = _chunkEU2ZZA6Lcjs.paintToMultiColor; exports.paperEffectFromJSON = paperEffectFromJSON; exports.paperEffectToJSON = paperEffectToJSON; exports.paperGrain = paperGrain; exports.paperKey = paperKey; exports.paperNode = paperNode; exports.paperPreset = _chunk56RHCIJVcjs.paperPreset; exports.parseBrushLibrary = _chunkEU2ZZA6Lcjs.parseBrushLibrary; exports.parseHexColor = parseHexColor; exports.parsePaintSource = _chunkNIBFKXMDcjs.parsePaintSource; exports.patchBrushValue = _chunk3KNQ2W6Xcjs.patchBrushValue; exports.patchPath = patchPath; exports.penOrientation = _chunk56RHCIJVcjs.penOrientation; exports.perspectiveDirections = perspectiveDirections; exports.perspectiveGuideLines = perspectiveGuideLines; exports.planPaintToolPlayback = planPaintToolPlayback; exports.pointerToPenPoint = pointerToPenPoint; exports.quickStencil = quickStencil; exports.rand01 = _chunk3K6HWEXZcjs.rand01; exports.randSigned = _chunk3K6HWEXZcjs.randSigned; exports.readEffectStrokeMap = _chunk56RHCIJVcjs.readEffectStrokeMap; exports.readPaintEffectPaint = _chunk56RHCIJVcjs.readPaintEffectPaint; exports.readPaintEffectSource = readPaintEffectSource; exports.readPaintSource = _chunkNIBFKXMDcjs.readPaintSource; exports.readPath = readPath; exports.readSwatch = readSwatch; exports.reliefInfo = reliefInfo; exports.removePaintGradientStop = _chunkNIBFKXMDcjs.removePaintGradientStop; exports.renderBrushThumbnail = renderBrushThumbnail; exports.renderColorWheel = renderColorWheel; exports.renderPaper = _chunk56RHCIJVcjs.renderPaper; exports.renderStickers = renderStickers; exports.replayFrame = replayFrame; exports.replayItems = replayItems; exports.replayPainting = replayPainting; exports.resolvePaintGradient = _chunkNIBFKXMDcjs.resolvePaintGradient; exports.reversePaintGradient = _chunkNIBFKXMDcjs.reversePaintGradient; exports.rgbToHexColor = rgbToHexColor; exports.rgbToHsl = rgbToHsl; exports.rgbToHsv = rgbToHsv; exports.sampleArt = sampleArt; exports.sampleEffectAt = _chunk56RHCIJVcjs.sampleEffectAt; exports.sampleEffectField = _chunk56RHCIJVcjs.sampleEffectField; exports.samplePath = samplePath; exports.samplePressure = samplePressure; exports.scalePaintGradient = _chunkNIBFKXMDcjs.scalePaintGradient; exports.scaleStencil = scaleStencil; exports.screenToDocument = screenToDocument; exports.seedFromString = _chunk3K6HWEXZcjs.seedFromString; exports.serializePaintDocument = serializePaintDocument; exports.serializePaintDocumentExternal = serializePaintDocumentExternal; exports.solidPaint = _chunkNIBFKXMDcjs.solidPaint; exports.stampCoverage = _chunkRDFHWAHLcjs.stampCoverage; exports.standardBlendMode = _chunk2VX55NFMcjs.standardBlendMode; exports.startWetClock = startWetClock; exports.stencilMask = stencilMask; exports.stencilOutline = stencilOutline; exports.stickerAt = stickerAt; exports.stickerRect = stickerRect; exports.stickerRefLabel = stickerRefLabel; exports.stickerStamp = stickerStamp; exports.stickerSurface = stickerSurface; exports.strokeBounds = strokeBounds; exports.strokeDuration = strokeDuration; exports.strokeSchedule = strokeSchedule; exports.strokeToJSON = strokeToJSON; exports.sweepPath = sweepPath; exports.symmetryAxisAngles = symmetryAxisAngles; exports.symmetryAxisSegments = symmetryAxisSegments; exports.symmetryCopies = symmetryCopies; exports.thickFromJSON = thickFromJSON; exports.thickToJSON = thickToJSON; exports.thumbnailStroke = thumbnailStroke; exports.tiltToOrientation = _chunk56RHCIJVcjs.tiltToOrientation; exports.timeLapseVideo = timeLapseVideo; exports.timeLapseZip = timeLapseZip; exports.toStrokePoint = _chunk56RHCIJVcjs.toStrokePoint; exports.toggleDotTexture = toggleDotTexture; exports.toggleStamp = toggleStamp; exports.toggleStickerRef = toggleStickerRef; exports.translateStencil = translateStencil; exports.updatePaintGradientStop = _chunkNIBFKXMDcjs.updatePaintGradientStop; exports.usesPaintExchange = _chunkEU2ZZA6Lcjs.usesPaintExchange; exports.variationAffine = variationAffine; exports.varyStroke = varyStroke; exports.viewCssTransform = viewCssTransform; exports.viewMatrix = viewMatrix; exports.viewPenToDocument = viewPenToDocument; exports.wetEngineSummary = wetEngineSummary; exports.wetPaperInput = _chunk56RHCIJVcjs.wetPaperInput; exports.wetPigmentOf = _chunk56RHCIJVcjs.wetPigmentOf; exports.wetSupport = _chunkJ5VQYK7Tcjs.wetSupport; exports.wheelAngle = wheelAngle; exports.wheelPick = wheelPick; exports.wheelPoint = wheelPoint; exports.wheelToHue = _chunkI3Y2Q3PMcjs.wheelToHue; exports.withPaintPlayback = withPaintPlayback;