@pixerate/editor 0.254.1 → 0.255.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/index.cjs +2 -2
- package/dist/agent/index.js +1 -1
- package/dist/animation-editor/index.cjs +59 -59
- package/dist/animation-editor/index.js +3 -3
- package/dist/brushes/index.cjs +31 -29
- package/dist/brushes/index.d.cts +1 -1
- package/dist/brushes/index.d.ts +1 -1
- package/dist/brushes/index.js +27 -25
- package/dist/brushes/library.d.cts +17 -0
- package/dist/brushes/library.d.ts +17 -0
- package/dist/{brushstrokeRender-5PYSKZIJ.js → brushstrokeRender-HCOQUSWW.js} +53 -18
- package/dist/{brushstrokeRender-7FLLSQEC.cjs → brushstrokeRender-ZZOXI5O5.cjs} +55 -20
- package/dist/canvas/brushTypes.d.cts +22 -3
- package/dist/canvas/brushTypes.d.ts +22 -3
- package/dist/canvas/brushstroke.d.cts +34 -12
- package/dist/canvas/brushstroke.d.ts +34 -12
- package/dist/canvas/brushstrokeRender.d.cts +14 -8
- package/dist/canvas/brushstrokeRender.d.ts +14 -8
- package/dist/canvas/drawController.d.cts +11 -3
- package/dist/canvas/drawController.d.ts +11 -3
- package/dist/canvas/freehand.d.cts +6 -1
- package/dist/canvas/freehand.d.ts +6 -1
- package/dist/canvas/index.cjs +114 -102
- package/dist/canvas/index.js +16 -4
- package/dist/{chunk-XVIK73LS.js → chunk-5P4JEOIV.js} +4 -4
- package/dist/{chunk-JPEHXIB5.cjs → chunk-5YWWQ36H.cjs} +66 -21
- package/dist/{chunk-CHAWTXBE.cjs → chunk-6WCQ35GI.cjs} +4 -4
- package/dist/{chunk-GYMMNCFT.js → chunk-AF23QK5F.js} +56 -11
- package/dist/{chunk-JFHBXNR2.cjs → chunk-B7V34GIH.cjs} +86 -86
- package/dist/{chunk-QC3OXRE4.js → chunk-DMTEQ6SH.js} +1 -1
- package/dist/{chunk-TLOGFIIV.cjs → chunk-GCTUOTCW.cjs} +35 -35
- package/dist/{chunk-34KLWUH4.cjs → chunk-HIMGBZAM.cjs} +1133 -597
- package/dist/{chunk-7P6VF3FG.js → chunk-HYWRU5VX.js} +1 -1
- package/dist/{chunk-QPHNVZHO.js → chunk-JVRLGV3C.js} +1118 -582
- package/dist/{chunk-LFMKWGFL.cjs → chunk-LRNUZKWV.cjs} +22 -8
- package/dist/chunk-PGPFWC35.cjs +517 -0
- package/dist/{chunk-QLSGTCYT.cjs → chunk-TBAVCLEQ.cjs} +23 -23
- package/dist/{chunk-2ZJ4DT3M.js → chunk-VUKUTT2W.js} +1 -1
- package/dist/{chunk-5JNA6LLY.js → chunk-WYGSR3IJ.js} +22 -8
- package/dist/chunk-YHUMGBZD.js +517 -0
- package/dist/commands/builtins.d.cts +1 -1
- package/dist/commands/builtins.d.ts +1 -1
- package/dist/commands/index.cjs +2 -2
- package/dist/commands/index.js +1 -1
- package/dist/image-editor/brush-presets.d.cts +32 -0
- package/dist/image-editor/brush-presets.d.ts +32 -0
- package/dist/image-editor/controller.d.cts +15 -0
- package/dist/image-editor/controller.d.ts +15 -0
- package/dist/image-editor/index.cjs +848 -775
- package/dist/image-editor/index.d.cts +1 -0
- package/dist/image-editor/index.d.ts +1 -0
- package/dist/image-editor/index.js +81 -8
- package/dist/image-editor/types.d.cts +7 -0
- package/dist/image-editor/types.d.ts +7 -0
- package/dist/paint-editor/index.cjs +80 -80
- package/dist/paint-editor/index.js +13 -13
- package/dist/vector/brushstroke.d.cts +21 -5
- package/dist/vector/brushstroke.d.ts +21 -5
- package/dist/vector/controller.d.cts +14 -1
- package/dist/vector/controller.d.ts +14 -1
- package/dist/vector/index.cjs +1220 -1199
- package/dist/vector/index.js +34 -13
- package/dist/vector/types.d.cts +7 -0
- package/dist/vector/types.d.ts +7 -0
- package/package.json +1 -1
- package/skills/pixerate-brushes/SKILL.md +9 -3
- package/skills/pixerate-canvas/SKILL.md +10 -5
- package/skills/pixerate-image-editor/SKILL.md +2 -1
- package/skills/pixerate-vector/SKILL.md +1 -1
- package/dist/chunk-HS6QDWDF.cjs +0 -1029
- package/dist/chunk-MTKY6K3Q.js +0 -1029
|
@@ -13,15 +13,7 @@ var _chunkSABJMH6Mcjs = require('../chunk-SABJMH6M.cjs');
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
var _chunk34KLWUH4cjs = require('../chunk-34KLWUH4.cjs');
|
|
16
|
+
var _chunkPGPFWC35cjs = require('../chunk-PGPFWC35.cjs');
|
|
25
17
|
|
|
26
18
|
|
|
27
19
|
var _chunkCBVNCWJMcjs = require('../chunk-CBVNCWJM.cjs');
|
|
@@ -32,7 +24,7 @@ var _chunkCBVNCWJMcjs = require('../chunk-CBVNCWJM.cjs');
|
|
|
32
24
|
|
|
33
25
|
|
|
34
26
|
|
|
35
|
-
var
|
|
27
|
+
var _chunkB7V34GIHcjs = require('../chunk-B7V34GIH.cjs');
|
|
36
28
|
require('../chunk-A2IS7EHE.cjs');
|
|
37
29
|
require('../chunk-SS53NNZO.cjs');
|
|
38
30
|
|
|
@@ -88,7 +80,15 @@ var _chunkJLWLX52Lcjs = require('../chunk-JLWLX52L.cjs');
|
|
|
88
80
|
|
|
89
81
|
|
|
90
82
|
var _chunkK7ENM55Pcjs = require('../chunk-K7ENM55P.cjs');
|
|
91
|
-
require('../chunk-
|
|
83
|
+
require('../chunk-5YWWQ36H.cjs');
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
92
|
|
|
93
93
|
|
|
94
94
|
|
|
@@ -134,7 +134,7 @@ require('../chunk-JPEHXIB5.cjs');
|
|
|
134
134
|
|
|
135
135
|
|
|
136
136
|
|
|
137
|
-
var
|
|
137
|
+
var _chunkHIMGBZAMcjs = require('../chunk-HIMGBZAM.cjs');
|
|
138
138
|
|
|
139
139
|
|
|
140
140
|
|
|
@@ -1616,7 +1616,7 @@ function shadowToLight(shadow) {
|
|
|
1616
1616
|
return new (0, _chunk474IQG74cjs.TiledSurface)(1, tiles, 0);
|
|
1617
1617
|
}
|
|
1618
1618
|
function lightTwinBrush(brush) {
|
|
1619
|
-
return
|
|
1619
|
+
return _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0,
|
|
1620
1620
|
{
|
|
1621
1621
|
tip: { ...brush.tip, blend: "normal", pressureOpacity: brush.tip.pressureOpacity || brush.light.pressure },
|
|
1622
1622
|
behavior: { ...brush.behavior, mixing: "rgb" },
|
|
@@ -2846,7 +2846,7 @@ var PaintStrokeSession = (_class12 = class _PaintStrokeSession {
|
|
|
2846
2846
|
} else if (init.thick) {
|
|
2847
2847
|
const rgb = (c) => [c[0] / 255, c[1] / 255, c[2] / 255];
|
|
2848
2848
|
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 });
|
|
2849
|
-
} else if (brush.engine === "mixer" || brush.engine === "blender" || brush.engine === "smudge" ||
|
|
2849
|
+
} else if (brush.engine === "mixer" || brush.engine === "blender" || brush.engine === "smudge" || _chunkHIMGBZAMcjs.usesPaintExchange.call(void 0, brush, Boolean(init.paint))) {
|
|
2850
2850
|
const rgb = (c) => [c[0] / 255, c[1] / 255, c[2] / 255];
|
|
2851
2851
|
this.wet = new PaintDabStroke(brush, {
|
|
2852
2852
|
target: this.tileTarget(),
|
|
@@ -3084,7 +3084,7 @@ function brushLoadForStroke(brush, current, color) {
|
|
|
3084
3084
|
if (brush.engine === "mixer") return mixerLoadForStroke(brush, current, color);
|
|
3085
3085
|
if (brush.engine === "impasto") return { reservoir: [color[0], color[1], color[2]], amount: 1, pickup: brush.behavior.dirty ? current.pickup : null };
|
|
3086
3086
|
if (brush.engine === "wet") return brush.wet.tool === "paint" ? { reservoir: [color[0], color[1], color[2]], amount: 1, pickup: brush.behavior.dirty ? current.pickup : null } : _chunkFQPUF2W2cjs.EMPTY_MIXER_LOAD;
|
|
3087
|
-
if (
|
|
3087
|
+
if (_chunkHIMGBZAMcjs.usesPaintExchange.call(void 0, brush)) return { reservoir: [color[0], color[1], color[2]], amount: 1, pickup: brush.behavior.dirty ? current.pickup : null };
|
|
3088
3088
|
return _chunkFQPUF2W2cjs.EMPTY_MIXER_LOAD;
|
|
3089
3089
|
}
|
|
3090
3090
|
|
|
@@ -3346,15 +3346,15 @@ function readLoad(raw) {
|
|
|
3346
3346
|
function readStrokeBrush(raw) {
|
|
3347
3347
|
if (raw && typeof raw === "object" && "kind" in raw && !("engine" in raw)) {
|
|
3348
3348
|
try {
|
|
3349
|
-
return
|
|
3349
|
+
return _chunkHIMGBZAMcjs.resolveBrush.call(void 0, _chunkHIMGBZAMcjs.normalizeBrushSpec.call(void 0, raw));
|
|
3350
3350
|
} catch (e4) {
|
|
3351
3351
|
}
|
|
3352
3352
|
}
|
|
3353
|
-
return
|
|
3353
|
+
return _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, _nullishCoalesce(raw, () => ( {})));
|
|
3354
3354
|
}
|
|
3355
3355
|
function strokeToJSON(stroke) {
|
|
3356
3356
|
const { brush, ...rest } = stroke;
|
|
3357
|
-
return { ...JSON.parse(JSON.stringify(rest)), brush:
|
|
3357
|
+
return { ...JSON.parse(JSON.stringify(rest)), brush: _chunkHIMGBZAMcjs.migrateBrushV1.call(void 0, brush) };
|
|
3358
3358
|
}
|
|
3359
3359
|
function normalizeBrushStroke(raw) {
|
|
3360
3360
|
if (!raw || typeof raw !== "object") return null;
|
|
@@ -3424,7 +3424,7 @@ function varyStroke(stroke, m, v) {
|
|
|
3424
3424
|
if (ps !== 1) q.pressure = Math.min(1, Math.max(0, (_nullishCoalesce(p.pressure, () => ( 1))) * ps));
|
|
3425
3425
|
return q;
|
|
3426
3426
|
});
|
|
3427
|
-
const brush = s !== 1 ?
|
|
3427
|
+
const brush = s !== 1 ? _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { ...stroke.brush, tip: { ...stroke.brush.tip, size: stroke.brush.tip.size * s } }) : stroke.brush;
|
|
3428
3428
|
const out = { ...stroke, brush, points };
|
|
3429
3429
|
if (_optionalChain([stroke, 'access', _108 => _108.paint, 'optionalAccess', _109 => _109.type]) === "gradient" && s !== 1) out.paint = _chunkFQPUF2W2cjs.scalePaintGradient.call(void 0, stroke.paint, s);
|
|
3430
3430
|
if (_optionalChain([stroke, 'access', _110 => _110.paint, 'optionalAccess', _111 => _111.type]) === "effect" && stroke.paint.map && s !== 1) out.paint = { ...stroke.paint, map: { ...stroke.paint.map, length: Math.min(4096, Math.max(16, Math.round(stroke.paint.map.length * s))) } };
|
|
@@ -3574,11 +3574,11 @@ function header(state, options) {
|
|
|
3574
3574
|
return out;
|
|
3575
3575
|
}
|
|
3576
3576
|
function serializePaintDocument(state, options = {}) {
|
|
3577
|
-
const { layers, assets } =
|
|
3577
|
+
const { layers, assets } = _chunkB7V34GIHcjs.serializeLayers.call(void 0, state.layers);
|
|
3578
3578
|
return { ...header(state, options), layers, assets };
|
|
3579
3579
|
}
|
|
3580
3580
|
async function serializePaintDocumentExternal(state, store, options = {}) {
|
|
3581
|
-
const { layers, assets } = await
|
|
3581
|
+
const { layers, assets } = await _chunkB7V34GIHcjs.serializeLayersExternal.call(void 0, state.layers, store);
|
|
3582
3582
|
return { ...header(state, options), layers, assets };
|
|
3583
3583
|
}
|
|
3584
3584
|
function paintLayersOnly(layers, problems) {
|
|
@@ -3615,7 +3615,7 @@ function deserializePaintDocument(raw) {
|
|
|
3615
3615
|
const canvas = normalizeCanvas({ width: r.width, height: r.height, dpi: _nullishCoalesce(r.dpi, () => ( void 0)) });
|
|
3616
3616
|
const paper = normalizePaper(_nullishCoalesce(r.paper, () => ( {})));
|
|
3617
3617
|
const assets = r.assets && typeof r.assets === "object" ? r.assets : {};
|
|
3618
|
-
const layers = paintLayersOnly(
|
|
3618
|
+
const layers = paintLayersOnly(_chunkB7V34GIHcjs.deserializeLayers.call(void 0, r.layers, { assets, problems }), problems);
|
|
3619
3619
|
const wanted = typeof r.activeLayerId === "string" ? r.activeLayerId : null;
|
|
3620
3620
|
const activeLayerId = wanted && _chunkDPYAO5U6cjs.findLayer.call(void 0, layers, wanted) ? wanted : _nullishCoalesce(_optionalChain([_chunkDPYAO5U6cjs.flattenLayers.call(void 0, layers), 'access', _125 => _125.filter, 'call', _126 => _126((l) => l.type === "pixel"), 'access', _127 => _127.pop, 'call', _128 => _128(), 'optionalAccess', _129 => _129.id]), () => ( null));
|
|
3621
3621
|
const wetEvents = Array.isArray(r.wetEvents) ? r.wetEvents.filter((e) => e && typeof e === "object" && Number.isInteger(e.clock) && typeof e.kind === "string") : [];
|
|
@@ -3631,7 +3631,7 @@ async function deserializePaintDocumentAsync(raw, store) {
|
|
|
3631
3631
|
if (!raw || typeof raw !== "object") throw new Error("Not a paint document: expected a JSON object.");
|
|
3632
3632
|
const r = raw;
|
|
3633
3633
|
const problems = [];
|
|
3634
|
-
const assets = await
|
|
3634
|
+
const assets = await _chunkB7V34GIHcjs.resolveExternalAssets.call(void 0, _nullishCoalesce(r.assets, () => ( {})), store, problems);
|
|
3635
3635
|
const loaded = deserializePaintDocument({ ...r, assets });
|
|
3636
3636
|
return { ...loaded, problems: [...problems, ...loaded.problems] };
|
|
3637
3637
|
}
|
|
@@ -4555,7 +4555,7 @@ function renderBrushThumbnail(brush, options) {
|
|
|
4555
4555
|
const width = Math.max(16, Math.min(512, Math.round(_nullishCoalesce(options.width, () => ( 160)))));
|
|
4556
4556
|
const height = Math.max(16, Math.min(512, Math.round(_nullishCoalesce(options.height, () => ( 48)))));
|
|
4557
4557
|
const maxSize = height * 0.42;
|
|
4558
|
-
const b = brush.tip.size > maxSize ?
|
|
4558
|
+
const b = brush.tip.size > maxSize ? _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { tip: { ...brush.tip, size: maxSize } }, brush) : brush;
|
|
4559
4559
|
const rgba = [...hexToRgb8(options.color), 255];
|
|
4560
4560
|
let surface = _chunk474IQG74cjs.emptySurface.call(void 0, 4);
|
|
4561
4561
|
if (b.engine === "eraser") {
|
|
@@ -4838,7 +4838,7 @@ var DEFAULT_SWATCHES = [
|
|
|
4838
4838
|
// src/paint-editor/mixing-pad.ts
|
|
4839
4839
|
var MIXING_PAD_WIDTH = 360;
|
|
4840
4840
|
var MIXING_PAD_HEIGHT = 220;
|
|
4841
|
-
var PAD_PAINT =
|
|
4841
|
+
var PAD_PAINT = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, {
|
|
4842
4842
|
id: "pad-paint",
|
|
4843
4843
|
name: "Pad paint",
|
|
4844
4844
|
category: "mixer",
|
|
@@ -4846,7 +4846,7 @@ var PAD_PAINT = _chunkHS6QDWDFcjs.normalizePaintBrush.call(void 0, {
|
|
|
4846
4846
|
tip: { size: 28, hardness: 0.75, spacing: 0.1, opacity: 1, flow: 0.7, pressureSize: false, pressureOpacity: false },
|
|
4847
4847
|
mixer: { wet: 0.45, load: 1, mix: 0.4, loadEachStroke: true, cleanEachStroke: true, mixing: "pigment" }
|
|
4848
4848
|
});
|
|
4849
|
-
var PAD_KNIFE =
|
|
4849
|
+
var PAD_KNIFE = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, {
|
|
4850
4850
|
id: "pad-knife",
|
|
4851
4851
|
name: "Palette knife",
|
|
4852
4852
|
category: "smudge",
|
|
@@ -4856,7 +4856,7 @@ var PAD_KNIFE = _chunkHS6QDWDFcjs.normalizePaintBrush.call(void 0, {
|
|
|
4856
4856
|
// A knife drags streaks of paint and folds them into each other, mixing them as pigment.
|
|
4857
4857
|
smudge: { strength: 0.6, length: 0.8, mixing: "pigment" }
|
|
4858
4858
|
});
|
|
4859
|
-
var PAD_BLOB =
|
|
4859
|
+
var PAD_BLOB = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, {
|
|
4860
4860
|
id: "pad-blob",
|
|
4861
4861
|
name: "Pad blob",
|
|
4862
4862
|
category: "custom",
|
|
@@ -4878,7 +4878,7 @@ var MixingPad = (_class16 = class {constructor() { _class16.prototype.__init106.
|
|
|
4878
4878
|
}
|
|
4879
4879
|
}
|
|
4880
4880
|
let brush = options.tool === "knife" ? PAD_KNIFE : PAD_PAINT;
|
|
4881
|
-
if (options.size !== void 0) brush =
|
|
4881
|
+
if (options.size !== void 0) brush = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { tip: { ...brush.tip, size: options.size } }, brush);
|
|
4882
4882
|
return this.run(brush, points, options.color);
|
|
4883
4883
|
}
|
|
4884
4884
|
/** Paints `points` with `brush` in `color` on the pad. */
|
|
@@ -4977,10 +4977,10 @@ var MixingPad = (_class16 = class {constructor() { _class16.prototype.__init106.
|
|
|
4977
4977
|
const off = used.length === 1 ? 0 : 0.45 * R;
|
|
4978
4978
|
const x = Math.min(cx + R - r, Math.max(cx - R + r, cx + Math.cos(a) * off));
|
|
4979
4979
|
const y = Math.min(cy + R - r, Math.max(cy - R + r, cy + Math.sin(a) * off));
|
|
4980
|
-
const blob =
|
|
4980
|
+
const blob = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { tip: { ...PAD_BLOB.tip, size: Math.max(2, 2 * r) } }, PAD_BLOB);
|
|
4981
4981
|
this.run(blob, [{ x, y }], p.color.toLowerCase());
|
|
4982
4982
|
});
|
|
4983
|
-
const knife =
|
|
4983
|
+
const knife = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { tip: { ...PAD_KNIFE.tip, size: Math.max(12, R * 0.5) } }, PAD_KNIFE);
|
|
4984
4984
|
for (let k = 0; k < passes; k++) {
|
|
4985
4985
|
const stir = [];
|
|
4986
4986
|
const turns = 1.6;
|
|
@@ -4995,7 +4995,7 @@ var MixingPad = (_class16 = class {constructor() { _class16.prototype.__init106.
|
|
|
4995
4995
|
paints2.map((p) => hexToRgb8(p.color).map((v) => v / 255)),
|
|
4996
4996
|
paints2.map((p) => p.parts)
|
|
4997
4997
|
);
|
|
4998
|
-
const core =
|
|
4998
|
+
const core = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { tip: { ...PAD_BLOB.tip, size: R * 1.1, hardness: 0.55 } }, PAD_BLOB);
|
|
4999
4999
|
const hex = "#" + mixed.map((v) => Math.round(v * 255).toString(16).padStart(2, "0")).join("");
|
|
5000
5000
|
this.run(core, [{ x: cx, y: cy }], hex);
|
|
5001
5001
|
return { color: this.pick(cx, cy, 2), bounds };
|
|
@@ -5035,21 +5035,21 @@ var MixingPad = (_class16 = class {constructor() { _class16.prototype.__init106.
|
|
|
5035
5035
|
var copyJSON = (v) => JSON.parse(JSON.stringify(v));
|
|
5036
5036
|
var isObject = (v) => typeof v === "object" && v !== null && !Array.isArray(v);
|
|
5037
5037
|
function libraryBrush(spec, builtin, resolved) {
|
|
5038
|
-
const brush = resolved ?
|
|
5038
|
+
const brush = resolved ? _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, resolved, resolved) : _chunkHIMGBZAMcjs.resolveBrush.call(void 0, spec);
|
|
5039
5039
|
if (builtin) brush.builtin = true;
|
|
5040
5040
|
else delete brush.builtin;
|
|
5041
5041
|
return { spec, brush, builtin };
|
|
5042
5042
|
}
|
|
5043
5043
|
var builtins = null;
|
|
5044
5044
|
function builtinLibraryBrushes() {
|
|
5045
|
-
return builtins ??=
|
|
5046
|
-
const resolved =
|
|
5045
|
+
return builtins ??= _chunkHIMGBZAMcjs.BRUSH_PRESETS.map((spec) => {
|
|
5046
|
+
const resolved = _chunkHIMGBZAMcjs.BUILTIN_BRUSHES.find((b) => b.id === spec.id);
|
|
5047
5047
|
return libraryBrush(spec, true, resolved);
|
|
5048
5048
|
});
|
|
5049
5049
|
}
|
|
5050
5050
|
function seededStorage(brushes) {
|
|
5051
5051
|
if (!brushes.length) return void 0;
|
|
5052
|
-
let stored = JSON.stringify({ format: "pixerate-brushes", version: 1, brushes: brushes.map(
|
|
5052
|
+
let stored = JSON.stringify({ format: "pixerate-brushes", version: 1, brushes: brushes.map(_chunkHIMGBZAMcjs.brushToJSON) });
|
|
5053
5053
|
return {
|
|
5054
5054
|
get: async () => stored,
|
|
5055
5055
|
set: async (_key, value) => {
|
|
@@ -5062,7 +5062,7 @@ var paints = (b) => {
|
|
|
5062
5062
|
return JSON.stringify(rest);
|
|
5063
5063
|
};
|
|
5064
5064
|
function brushSpecOf(next, from) {
|
|
5065
|
-
const plain =
|
|
5065
|
+
const plain = _chunkHIMGBZAMcjs.migrateBrushV1.call(void 0, next);
|
|
5066
5066
|
const out = copyJSON(plain);
|
|
5067
5067
|
if (from.description) out.description = from.description;
|
|
5068
5068
|
if (_optionalChain([from, 'access', _209 => _209.tags, 'optionalAccess', _210 => _210.length])) out.tags = [...from.tags];
|
|
@@ -5082,8 +5082,8 @@ function brushSpecOf(next, from) {
|
|
|
5082
5082
|
out.motion = { ..._nullishCoalesce(out.motion, () => ( {})), ...from.motion.live !== void 0 ? { live: from.motion.live } : {}, ...from.motion.fps !== void 0 ? { fps: from.motion.fps } : {} };
|
|
5083
5083
|
}
|
|
5084
5084
|
try {
|
|
5085
|
-
const hinted =
|
|
5086
|
-
if (paints(
|
|
5085
|
+
const hinted = _chunkHIMGBZAMcjs.normalizeBrushSpec.call(void 0, out, []);
|
|
5086
|
+
if (paints(_chunkHIMGBZAMcjs.resolveBrush.call(void 0, hinted)) === paints(_chunkHIMGBZAMcjs.resolveBrush.call(void 0, plain))) return hinted;
|
|
5087
5087
|
} catch (e6) {
|
|
5088
5088
|
}
|
|
5089
5089
|
return plain;
|
|
@@ -5690,7 +5690,7 @@ async function libraryCall(call) {
|
|
|
5690
5690
|
try {
|
|
5691
5691
|
return await call();
|
|
5692
5692
|
} catch (e) {
|
|
5693
|
-
throw e instanceof
|
|
5693
|
+
throw e instanceof _chunkHIMGBZAMcjs.BrushLibraryError ? new PaintEditorError(e.message) : e;
|
|
5694
5694
|
}
|
|
5695
5695
|
}
|
|
5696
5696
|
var HEX3 = /^#[0-9a-f]{6}$/i;
|
|
@@ -5812,15 +5812,15 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
5812
5812
|
this.rasterizeSticker = _nullishCoalesce(options.rasterizeSticker, () => ( defaultStickerRasterizer));
|
|
5813
5813
|
if (options.stickers) this.stickers.set(options.stickers);
|
|
5814
5814
|
this.doc = createPaintDocument({ width: options.width, height: options.height, dpi: options.dpi, paper: this.resolvePaper(options.paper) });
|
|
5815
|
-
const seed = (_nullishCoalesce(options.brushes, () => ( []))).map((b) =>
|
|
5816
|
-
this.brushLibrary = _nullishCoalesce(options.brushLibrary, () => (
|
|
5817
|
-
this.brushEntries = [...builtinLibraryBrushes(), ...seed.map((b) => libraryBrush(
|
|
5818
|
-
const wanted = _nullishCoalesce(options.brushId, () => (
|
|
5819
|
-
const start = _nullishCoalesce(this.findEntry(wanted), () => ( this.findEntry(
|
|
5820
|
-
this.brush =
|
|
5815
|
+
const seed = (_nullishCoalesce(options.brushes, () => ( []))).map((b) => _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { ...b, builtin: false }));
|
|
5816
|
+
this.brushLibrary = _nullishCoalesce(options.brushLibrary, () => ( _chunkHIMGBZAMcjs.createBrushLibrary.call(void 0, { storage: seededStorage(seed) })));
|
|
5817
|
+
this.brushEntries = [...builtinLibraryBrushes(), ...seed.map((b) => libraryBrush(_chunkHIMGBZAMcjs.migrateBrushV1.call(void 0, b), false, b))];
|
|
5818
|
+
const wanted = _nullishCoalesce(options.brushId, () => ( _chunkHIMGBZAMcjs.DEFAULT_BRUSH_ID));
|
|
5819
|
+
const start = _nullishCoalesce(this.findEntry(wanted), () => ( this.findEntry(_chunkHIMGBZAMcjs.DEFAULT_BRUSH_ID)));
|
|
5820
|
+
this.brush = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, start.brush);
|
|
5821
5821
|
this.brushSpec = copyJSON(start.spec);
|
|
5822
5822
|
this.unsubscribeLibrary = this.brushLibrary.subscribe(() => void this.refreshBrushes().catch(() => void 0));
|
|
5823
|
-
if (options.brushLibrary && seed.length) void this.brushLibrary.importFile(seed.map(
|
|
5823
|
+
if (options.brushLibrary && seed.length) void this.brushLibrary.importFile(seed.map(_chunkHIMGBZAMcjs.brushToJSON)).catch(() => void 0);
|
|
5824
5824
|
void this.refreshBrushes().catch(() => void 0);
|
|
5825
5825
|
this.pendingBrushId = start.brush.id === wanted ? null : wanted;
|
|
5826
5826
|
this.color = options.color ? parseColor(options.color) : "#1f2937";
|
|
@@ -6898,7 +6898,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
6898
6898
|
* its pixels are not rendered.
|
|
6899
6899
|
*/
|
|
6900
6900
|
strokeEffect(init, brush) {
|
|
6901
|
-
if (!
|
|
6901
|
+
if (!_chunkHIMGBZAMcjs.brushTakesPaint.call(void 0, brush)) return null;
|
|
6902
6902
|
let source = null;
|
|
6903
6903
|
if (init.paint !== void 0) {
|
|
6904
6904
|
if (!isPaintEffectPaint(init.paint)) return null;
|
|
@@ -6959,7 +6959,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
6959
6959
|
}
|
|
6960
6960
|
requireEntry(id) {
|
|
6961
6961
|
const e = this.findEntry(id);
|
|
6962
|
-
if (!e) throw new PaintEditorError(`Unknown brush "${id}". ${
|
|
6962
|
+
if (!e) throw new PaintEditorError(`Unknown brush "${id}". ${_chunkHIMGBZAMcjs.closest.call(void 0, id, this.brushEntries.map((x) => x.brush.id))}Call list_brush_presets for the ids.`);
|
|
6963
6963
|
return e;
|
|
6964
6964
|
}
|
|
6965
6965
|
requireBrush(id) {
|
|
@@ -6985,7 +6985,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
6985
6985
|
/** A library brush by id, as the engine paints it (`undefined` when unknown). */
|
|
6986
6986
|
getBrush(id) {
|
|
6987
6987
|
const b = this.findBrush(id);
|
|
6988
|
-
return b ?
|
|
6988
|
+
return b ? _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, b, b) : void 0;
|
|
6989
6989
|
}
|
|
6990
6990
|
/** A library brush by id as stored (its facets), or without an id the active brush as edited. */
|
|
6991
6991
|
getBrushSpec(id) {
|
|
@@ -7003,7 +7003,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7003
7003
|
const baseSpec = entry ? entry.spec : this.brushSpec;
|
|
7004
7004
|
if (changes.paint !== void 0 && changes.paint !== null) this.readStrokePaint(changes.paint);
|
|
7005
7005
|
const unchanged = !Object.keys(changes).length;
|
|
7006
|
-
const next =
|
|
7006
|
+
const next = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { ...changes, id: base.id }, base);
|
|
7007
7007
|
this.useBrush(next, unchanged ? baseSpec : brushSpecOf(next, baseSpec), unchanged && base.builtin === true);
|
|
7008
7008
|
return this.brush;
|
|
7009
7009
|
}
|
|
@@ -7020,7 +7020,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7020
7020
|
const base = copyJSON(entry ? entry.spec : this.brushSpec);
|
|
7021
7021
|
for (const k of unset) delete base[k];
|
|
7022
7022
|
const spec = this.readBrushPatch(base, patch, problems);
|
|
7023
|
-
this.useBrush(unchanged && entry ? entry.brush :
|
|
7023
|
+
this.useBrush(unchanged && entry ? entry.brush : _chunkHIMGBZAMcjs.resolveBrush.call(void 0, spec), spec, unchanged && _optionalChain([entry, 'optionalAccess', _368 => _368.builtin]) === true);
|
|
7024
7024
|
return { brush: this.brush, spec: copyJSON(this.brushSpec), problems };
|
|
7025
7025
|
}
|
|
7026
7026
|
/**
|
|
@@ -7034,11 +7034,11 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7034
7034
|
if (paint && typeof paint === "object" && "type" in paint && paint.type === "gradient") this.readStrokePaint(paint);
|
|
7035
7035
|
let next;
|
|
7036
7036
|
try {
|
|
7037
|
-
next =
|
|
7037
|
+
next = _chunkHIMGBZAMcjs.normalizeBrushSpec.call(void 0, { ...spec, id: this.brush.id }, problems);
|
|
7038
7038
|
} catch (e) {
|
|
7039
7039
|
throw new PaintEditorError(e.message);
|
|
7040
7040
|
}
|
|
7041
|
-
this.useBrush(
|
|
7041
|
+
this.useBrush(_chunkHIMGBZAMcjs.resolveBrush.call(void 0, next), next, false);
|
|
7042
7042
|
return { brush: this.brush, spec: copyJSON(this.brushSpec), problems };
|
|
7043
7043
|
}
|
|
7044
7044
|
/**
|
|
@@ -7047,22 +7047,22 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7047
7047
|
*/
|
|
7048
7048
|
brushChanges(patch, from) {
|
|
7049
7049
|
const entry = typeof from === "string" ? this.requireEntry(from) : null;
|
|
7050
|
-
const base = entry ? entry.brush : typeof from === "object" ?
|
|
7051
|
-
const spec = entry ? entry.spec : typeof from === "object" ?
|
|
7052
|
-
return engineChanges(base,
|
|
7050
|
+
const base = entry ? entry.brush : typeof from === "object" ? _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, from, from) : this.brush;
|
|
7051
|
+
const spec = entry ? entry.spec : typeof from === "object" ? _chunkHIMGBZAMcjs.migrateBrushV1.call(void 0, base) : this.brushSpec;
|
|
7052
|
+
return engineChanges(base, _chunkHIMGBZAMcjs.resolveBrush.call(void 0, this.readBrushPatch(spec, patch, [])));
|
|
7053
7053
|
}
|
|
7054
7054
|
readBrushPatch(base, patch, problems) {
|
|
7055
7055
|
const { id: _id, name, ...rest } = patch;
|
|
7056
7056
|
const paint = _optionalChain([rest, 'access', _371 => _371.colour, 'optionalAccess', _372 => _372.default]);
|
|
7057
7057
|
if (paint && typeof paint === "object" && "type" in paint && paint.type === "gradient") this.readStrokePaint(paint);
|
|
7058
7058
|
try {
|
|
7059
|
-
return
|
|
7059
|
+
return _chunkHIMGBZAMcjs.normalizeBrushSpec.call(void 0, _chunkPGPFWC35cjs.mergeBrushPatch.call(void 0, base, { ...rest, ...name !== void 0 ? { name } : {} }), problems);
|
|
7060
7060
|
} catch (e) {
|
|
7061
7061
|
throw new PaintEditorError(e.message);
|
|
7062
7062
|
}
|
|
7063
7063
|
}
|
|
7064
7064
|
useBrush(next, spec, builtin) {
|
|
7065
|
-
next =
|
|
7065
|
+
next = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, next, next);
|
|
7066
7066
|
if (builtin) next.builtin = true;
|
|
7067
7067
|
else delete next.builtin;
|
|
7068
7068
|
this.brush = next;
|
|
@@ -7077,9 +7077,9 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7077
7077
|
* saved brush.
|
|
7078
7078
|
*/
|
|
7079
7079
|
async saveBrush(options) {
|
|
7080
|
-
if (!
|
|
7080
|
+
if (!_chunkHIMGBZAMcjs.BRUSH_ID.test(options.id)) throw new PaintEditorError(`Brush id "${options.id}" is invalid; use lowercase letters, digits and dashes (e.g. "my-pencil").`);
|
|
7081
7081
|
if (this.brushLibrary.isBuiltin(options.id)) throw new PaintEditorError(`"${options.id}" is a built-in brush; save under another id.`);
|
|
7082
|
-
const spec = options.brush ? brushSpecOf(
|
|
7082
|
+
const spec = options.brush ? brushSpecOf(_chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, options.brush, this.brush), this.brushSpec) : this.brushSpec;
|
|
7083
7083
|
const { brush } = await libraryCall(() => this.brushLibrary.save({ ...spec, id: options.id, name: _nullishCoalesce(options.name, () => ( spec.name)) }, { overwrite: true }));
|
|
7084
7084
|
await this.refreshBrushes();
|
|
7085
7085
|
return this.requireBrush(brush.id);
|
|
@@ -7092,7 +7092,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7092
7092
|
}
|
|
7093
7093
|
/** The user's saved brushes, as the engine paints them. */
|
|
7094
7094
|
getUserBrushes() {
|
|
7095
|
-
return this.brushEntries.filter((e) => !e.builtin).map((e) =>
|
|
7095
|
+
return this.brushEntries.filter((e) => !e.builtin).map((e) => _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, e.brush, e.brush));
|
|
7096
7096
|
}
|
|
7097
7097
|
/** A brush library file (version 2) of the given brushes (default: the user's brushes). */
|
|
7098
7098
|
exportBrushes(ids) {
|
|
@@ -7153,7 +7153,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7153
7153
|
* brush's gradient, else the editor's gradient paint. Erasers, blenders and smudges take none.
|
|
7154
7154
|
*/
|
|
7155
7155
|
strokeGradient(init, brush, color) {
|
|
7156
|
-
if (!
|
|
7156
|
+
if (!_chunkHIMGBZAMcjs.brushTakesPaint.call(void 0, brush)) return null;
|
|
7157
7157
|
let g = null;
|
|
7158
7158
|
if (init.paint !== void 0) {
|
|
7159
7159
|
if (isPaintEffectPaint(init.paint)) return null;
|
|
@@ -7230,7 +7230,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7230
7230
|
// --- Strokes -------------------------------------------------------------------
|
|
7231
7231
|
strokeBrush(init) {
|
|
7232
7232
|
let brush = init.brushId !== void 0 ? this.requireBrush(init.brushId) : this.brush;
|
|
7233
|
-
if (init.brush) brush =
|
|
7233
|
+
if (init.brush) brush = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { ...init.brush, id: brush.id }, brush);
|
|
7234
7234
|
return brush;
|
|
7235
7235
|
}
|
|
7236
7236
|
/**
|
|
@@ -7285,7 +7285,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7285
7285
|
throw new PaintEditorError(`Layer "${layer.name}" is a sticker layer (its pixels are drawn from its stickers); paint on another layer (add_layer).`);
|
|
7286
7286
|
}
|
|
7287
7287
|
let wet;
|
|
7288
|
-
if (
|
|
7288
|
+
if (_chunkHIMGBZAMcjs.isWetBrush.call(void 0, brush)) {
|
|
7289
7289
|
this.requireWetIdle("painting");
|
|
7290
7290
|
if (layer.offset.x || layer.offset.y) {
|
|
7291
7291
|
const moved = { ...layer, surface: _chunk474IQG74cjs.translateSurface.call(void 0, layer.surface, layer.offset.x, layer.offset.y), offset: { x: 0, y: 0 } };
|
|
@@ -7378,7 +7378,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7378
7378
|
const stroke = {
|
|
7379
7379
|
id: `s${this.strokeCounter++}`,
|
|
7380
7380
|
layerId: session.layerId,
|
|
7381
|
-
brush:
|
|
7381
|
+
brush: _chunkHIMGBZAMcjs.brushToJSON.call(void 0, init.brush),
|
|
7382
7382
|
color: init.colorHex,
|
|
7383
7383
|
points: session.points.map((p) => ({ ...p })),
|
|
7384
7384
|
seed: init.seed
|
|
@@ -7584,7 +7584,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
7584
7584
|
let brush = v.brush;
|
|
7585
7585
|
if (options.brushId !== void 0) {
|
|
7586
7586
|
const b = this.requireBrush(options.brushId);
|
|
7587
|
-
brush =
|
|
7587
|
+
brush = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { tip: { ...b.tip, size: b.tip.size * (v.brush.tip.size / s.brush.tip.size) } }, b);
|
|
7588
7588
|
}
|
|
7589
7589
|
const layerId = _nullishCoalesce(options.layerId, () => ( s.layerId));
|
|
7590
7590
|
if (!_chunkDPYAO5U6cjs.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.`);
|
|
@@ -8362,7 +8362,7 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
8362
8362
|
return next.type === "group" ? { ...next, children: toStandard(next.children) } : next;
|
|
8363
8363
|
});
|
|
8364
8364
|
const layers = toStandard(dried);
|
|
8365
|
-
const result =
|
|
8365
|
+
const result = _chunkB7V34GIHcjs.exportPsd.call(void 0, { width, height, layers: [paperLayer, ...layers], merged, resolution: dpi });
|
|
8366
8366
|
for (const [mode, names] of changed) {
|
|
8367
8367
|
const label = _nullishCoalesce(_optionalChain([_chunk2VX55NFMcjs.BLEND_MODES, 'access', _461 => _461.find, 'call', _462 => _462((m) => m.id === mode), 'optionalAccess', _463 => _463.label]), () => ( mode));
|
|
8368
8368
|
const std = _nullishCoalesce(_optionalChain([_chunk2VX55NFMcjs.BLEND_MODES, 'access', _464 => _464.find, 'call', _465 => _465((m) => m.id === _chunk2VX55NFMcjs.standardBlendMode.call(void 0, mode)), 'optionalAccess', _466 => _466.label]), () => ( _chunk2VX55NFMcjs.standardBlendMode.call(void 0, mode)));
|
|
@@ -8859,15 +8859,15 @@ var PaintEditorController = (_class19 = class _PaintEditorController {
|
|
|
8859
8859
|
let brush = was.brush;
|
|
8860
8860
|
if (update.brushId !== void 0) {
|
|
8861
8861
|
const b = this.requireBrush(update.brushId);
|
|
8862
|
-
brush =
|
|
8862
|
+
brush = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { tip: { ...b.tip, size: was.brush.tip.size } }, b);
|
|
8863
8863
|
}
|
|
8864
8864
|
if (update.brush !== void 0) {
|
|
8865
8865
|
if (!update.brush || typeof update.brush !== "object") throw new PaintEditorError("brush must be an object of brush settings (as set_brush takes).");
|
|
8866
|
-
brush =
|
|
8866
|
+
brush = _chunkHIMGBZAMcjs.normalizePaintBrush.call(void 0, { ...update.brush, id: brush.id }, brush);
|
|
8867
8867
|
}
|
|
8868
8868
|
const why = liveStrokeRefusal(brush);
|
|
8869
8869
|
if (why) throw new PaintEditorError(why);
|
|
8870
|
-
const next = { ...was, brush:
|
|
8870
|
+
const next = { ...was, brush: _chunkHIMGBZAMcjs.brushToJSON.call(void 0, brush) };
|
|
8871
8871
|
if (update.seed !== void 0) {
|
|
8872
8872
|
if (!Number.isInteger(update.seed) || update.seed < 0) throw new PaintEditorError(`seed ${update.seed} must be a whole number of 0 or more.`);
|
|
8873
8873
|
next.seed = update.seed;
|
|
@@ -11121,7 +11121,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
|
|
|
11121
11121
|
name: "set_brush",
|
|
11122
11122
|
title: "Set the brush",
|
|
11123
11123
|
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).",
|
|
11124
|
-
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." }, ...
|
|
11124
|
+
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." }, ..._chunkPGPFWC35cjs.BRUSH_PATCH_PROPERTIES, unset: _chunkPGPFWC35cjs.BRUSH_UNSET_PROPERTY }, additionalProperties: false },
|
|
11125
11125
|
annotations: { title: "Set the brush", ...SET4 },
|
|
11126
11126
|
handler: async ({ id, unset, ...patch }) => {
|
|
11127
11127
|
const stamps = _optionalChain([patch, 'access', _542 => _542.tip, 'optionalAccess', _543 => _543.stamps]);
|
|
@@ -11211,7 +11211,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
|
|
|
11211
11211
|
points: POINTS,
|
|
11212
11212
|
layerId: LAYER_ID4,
|
|
11213
11213
|
brushId: { type: "string", description: "Brush id from list_brush_presets (default the active brush)." },
|
|
11214
|
-
brush: { type: "object", description: "Facets to change for this stroke only, laid over brushId or the active brush (as set_brush takes them).", properties:
|
|
11214
|
+
brush: { type: "object", description: "Facets to change for this stroke only, laid over brushId or the active brush (as set_brush takes them).", properties: _chunkPGPFWC35cjs.BRUSH_PATCH_PROPERTIES, additionalProperties: false },
|
|
11215
11215
|
color: { ...COLOR3, description: "Paint colour #rrggbb (default the paint colour)." },
|
|
11216
11216
|
paint: { ..._chunkFQPUF2W2cjs.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." },
|
|
11217
11217
|
seed: { type: "integer", minimum: 0, description: "Jitter seed (default a new one); the same seed and points give the same marks." },
|
|
@@ -11291,7 +11291,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
|
|
|
11291
11291
|
properties: {
|
|
11292
11292
|
id: { type: "string", description: "Stroke id from list_strokes {live: true}." },
|
|
11293
11293
|
brushId: { type: "string", description: "Brush id from list_brush_presets; the stroke keeps its size." },
|
|
11294
|
-
brush: { type: "object", properties:
|
|
11294
|
+
brush: { type: "object", properties: _chunkPGPFWC35cjs.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." },
|
|
11295
11295
|
color: { type: "string", pattern: "^#[0-9a-fA-F]{6}$", description: "New colour #rrggbb (replaces gradient paint)." },
|
|
11296
11296
|
paint: { anyOf: [_chunkFQPUF2W2cjs.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." },
|
|
11297
11297
|
seed: { type: "integer", minimum: 0, description: "Another jitter seed: particles, scatter and texture fall differently." }
|
|
@@ -11542,7 +11542,7 @@ function createPaintEditorToolProvider(controller, options = {}) {
|
|
|
11542
11542
|
tools.push(..._chunkKBYB7OWBcjs.createPigmentTools.call(void 0, ));
|
|
11543
11543
|
tools.push(..._chunkSABJMH6Mcjs.createStickerTools.call(void 0, { provider: () => c.stickersProvider }));
|
|
11544
11544
|
tools.push(
|
|
11545
|
-
...
|
|
11545
|
+
..._chunkB7V34GIHcjs.createLayerEffectTools.call(void 0,
|
|
11546
11546
|
{
|
|
11547
11547
|
requireLayer: (id) => void c.getLayerEffects(id),
|
|
11548
11548
|
getLayerEffects: (id) => c.getLayerEffects(id),
|
|
@@ -11601,11 +11601,11 @@ function strokeSummary(s, withPoints, live) {
|
|
|
11601
11601
|
|
|
11602
11602
|
// src/paint-editor/brush-library-tools.ts
|
|
11603
11603
|
function createPaintBrushLibraryToolProvider(controller, options = {}) {
|
|
11604
|
-
return
|
|
11605
|
-
profile:
|
|
11604
|
+
return _chunkPGPFWC35cjs.createBrushLibraryToolProvider.call(void 0, controller.brushLibrary, {
|
|
11605
|
+
profile: _chunkHIMGBZAMcjs.PAINT_PROFILE,
|
|
11606
11606
|
...options,
|
|
11607
11607
|
renderPreview: (brush, { width, height, color }) => {
|
|
11608
|
-
const t = renderBrushThumbnail(
|
|
11608
|
+
const t = renderBrushThumbnail(_chunkHIMGBZAMcjs.resolveBrush.call(void 0, brush), { paper: controller.getState().document.paper, width, height, color: color.toLowerCase() });
|
|
11609
11609
|
return { data: _chunkW5M3J7PVcjs.bytesToBase64.call(void 0, _chunkW5M3J7PVcjs.encodePng.call(void 0, t.width, t.height, t.data)), mimeType: "image/png" };
|
|
11610
11610
|
}
|
|
11611
11611
|
});
|
|
@@ -12097,7 +12097,7 @@ var DOT_ROTATION_LABELS = { follow: "Follow motion", random: "Random", fixed: "T
|
|
|
12097
12097
|
var STAMP_LABELS = { dot: "Dot", star: "Star", heart: "Heart", leaf: "Leaf", flower: "Flower", confetti: "Confetti", splat: "Splat", sparkle: "Sparkle", ring: "Ring" };
|
|
12098
12098
|
function toggleStickerRef(refs, ref2) {
|
|
12099
12099
|
if (refs.includes(ref2)) return refs.length > 1 ? refs.filter((r) => r !== ref2) : [...refs];
|
|
12100
|
-
return refs.length <
|
|
12100
|
+
return refs.length < _chunkHIMGBZAMcjs.MAX_STICKER_STAMPS ? [...refs, ref2] : [...refs];
|
|
12101
12101
|
}
|
|
12102
12102
|
function stickerRefLabel(ref2) {
|
|
12103
12103
|
const stamp = ref2.startsWith("editor:") ? ref2.slice(7) : null;
|
|
@@ -12110,7 +12110,7 @@ function toggleStamp(stamps, stamp) {
|
|
|
12110
12110
|
}
|
|
12111
12111
|
function toggleDotTexture(textures, stamp) {
|
|
12112
12112
|
if (textures.includes(stamp)) return textures.filter((s) => s !== stamp);
|
|
12113
|
-
return textures.length <
|
|
12113
|
+
return textures.length < _chunkHIMGBZAMcjs.MAX_DOT_TEXTURES ? [...textures, stamp] : [...textures];
|
|
12114
12114
|
}
|
|
12115
12115
|
var STROKE_SLIDERS = [
|
|
12116
12116
|
{ path: "tip.size", label: "Size", min: 1, max: 400, step: 1 },
|
|
@@ -12753,4 +12753,4 @@ function createPaintEditorDocument(controller, options = {}) {
|
|
|
12753
12753
|
|
|
12754
12754
|
|
|
12755
12755
|
|
|
12756
|
-
exports.BACKLIGHT_SPILL = BACKLIGHT_SPILL; exports.BLEND_MENU_GROUPS = BLEND_MENU_GROUPS; exports.BLEND_MODES = _chunk2VX55NFMcjs.BLEND_MODES; exports.BRUSH_ID = _chunkHS6QDWDFcjs.BRUSH_ID; exports.BRUSH_ROTATIONS = _chunkHS6QDWDFcjs.BRUSH_ROTATIONS; exports.BRUSH_SLIDERS = _chunk34KLWUH4cjs.BRUSH_SLIDERS; exports.BUILTIN_BRUSHES = _chunkHS6QDWDFcjs.BUILTIN_BRUSHES; exports.BristleStroke = BristleStroke; exports.DEFAULT_BACKLIGHT_COLOR = DEFAULT_BACKLIGHT_COLOR; exports.DEFAULT_BEHAVIOR = _chunkHS6QDWDFcjs.DEFAULT_BEHAVIOR; exports.DEFAULT_BRISTLE = _chunkHS6QDWDFcjs.DEFAULT_BRISTLE; exports.DEFAULT_BRUSH_ID = _chunkHS6QDWDFcjs.DEFAULT_BRUSH_ID; exports.DEFAULT_DPI = DEFAULT_DPI; exports.DEFAULT_DYNAMICS = _chunkHS6QDWDFcjs.DEFAULT_DYNAMICS; exports.DEFAULT_FLOW = _chunkKBYB7OWBcjs.DEFAULT_FLOW; exports.DEFAULT_IMPASTO = _chunkHS6QDWDFcjs.DEFAULT_IMPASTO; exports.DEFAULT_LIGHT = _chunkHS6QDWDFcjs.DEFAULT_LIGHT; exports.DEFAULT_LIGHTING = DEFAULT_LIGHTING; exports.DEFAULT_MULTI_COLOR = _chunkHS6QDWDFcjs.DEFAULT_MULTI_COLOR; exports.DEFAULT_PAINT_GRADIENT = _chunkFQPUF2W2cjs.DEFAULT_PAINT_GRADIENT; exports.DEFAULT_PAINT_GRADIENT_MAPPING = _chunkFQPUF2W2cjs.DEFAULT_PAINT_GRADIENT_MAPPING; exports.DEFAULT_PAPER = DEFAULT_PAPER; exports.DEFAULT_PARTICLE = _chunkHS6QDWDFcjs.DEFAULT_PARTICLE; exports.DEFAULT_STICKER = _chunkHS6QDWDFcjs.DEFAULT_STICKER; exports.DEFAULT_SWATCHES = DEFAULT_SWATCHES; exports.DEFAULT_VIEW = DEFAULT_VIEW; exports.DEFAULT_WET_BRUSH = _chunkHS6QDWDFcjs.DEFAULT_WET_BRUSH; exports.DEFAULT_WET_PARAMS = _chunkKBYB7OWBcjs.DEFAULT_WET_PARAMS; exports.DOT_ROTATIONS = _chunkHS6QDWDFcjs.DOT_ROTATIONS; exports.DOT_ROTATION_LABELS = DOT_ROTATION_LABELS; exports.DOT_TEXTURE_ORDERS = _chunkHS6QDWDFcjs.DOT_TEXTURE_ORDERS; exports.DOT_TEXTURE_ORDER_LABELS = DOT_TEXTURE_ORDER_LABELS; exports.DryStroke = DryStroke; exports.EFFECT_MAP_REPEATS = EFFECT_MAP_REPEATS; exports.EFFECT_STRIP_HEIGHT = EFFECT_STRIP_HEIGHT; exports.GPU_LEAD = GPU_LEAD; exports.GRAIN_PATTERNS = _chunkPXDIAYB6cjs.GRAIN_PATTERNS; exports.GRAIN_TILE = _chunkPXDIAYB6cjs.GRAIN_TILE; exports.HARMONY_KINDS = _chunkEUIDTZNQcjs.HARMONY_KINDS; exports.IDENTITY_AFFINE = IDENTITY_AFFINE; exports.IDENTITY_COPY = IDENTITY_COPY; exports.IMPASTO_TOOLS = _chunkHS6QDWDFcjs.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 = _chunkFQPUF2W2cjs.MAX_BRUSH_SIZE; exports.MAX_CANVAS_SIDE = MAX_CANVAS_SIDE; exports.MAX_COORDINATE = MAX_COORDINATE; exports.MAX_DOT_TEXTURES = _chunkHS6QDWDFcjs.MAX_DOT_TEXTURES; exports.MAX_IMAGE_SIDE = MAX_IMAGE_SIDE; exports.MAX_LIVE_EFFECT_SOURCES = MAX_LIVE_EFFECT_SOURCES; exports.MAX_STICKER_STAMPS = _chunkHS6QDWDFcjs.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 = _chunkHS6QDWDFcjs.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 = _chunkHS6QDWDFcjs.PAINT_BRUSH_CATEGORIES; exports.PAINT_BRUSH_ENGINES = _chunkHS6QDWDFcjs.PAINT_BRUSH_ENGINES; exports.PAINT_COLOR_JSON_SCHEMA = _chunkFQPUF2W2cjs.PAINT_COLOR_JSON_SCHEMA; exports.PAINT_EFFECT_PLACES = PAINT_EFFECT_PLACES; exports.PAINT_FORMAT = PAINT_FORMAT; exports.PAINT_GRADIENT_FULL_SPEED = _chunkFQPUF2W2cjs.PAINT_GRADIENT_FULL_SPEED; exports.PAINT_GRADIENT_JSON_SCHEMA = _chunkFQPUF2W2cjs.PAINT_GRADIENT_JSON_SCHEMA; exports.PAINT_GRADIENT_KIT = _chunkFQPUF2W2cjs.PAINT_GRADIENT_KIT; exports.PAINT_GRADIENT_MAPPINGS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_MAPPINGS; exports.PAINT_GRADIENT_MAPPING_LABELS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_MAPPING_LABELS; exports.PAINT_GRADIENT_PRESETS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_PRESETS; exports.PAINT_GRADIENT_REPEATS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_REPEATS; exports.PAINT_GRADIENT_REPEAT_LABELS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_REPEAT_LABELS; exports.PAINT_GRADIENT_SPACES = _chunkFQPUF2W2cjs.PAINT_GRADIENT_SPACES; exports.PAINT_GRADIENT_SPACE_LABELS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_SPACE_LABELS; exports.PAINT_SCHEMA_VERSION = PAINT_SCHEMA_VERSION; exports.PAINT_SOURCE_JSON_SCHEMA = _chunkFQPUF2W2cjs.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 = PAPER_FAMILIES; exports.PAPER_LIBRARY = PAPER_LIBRARY; exports.PAPER_NODE_ID = PAPER_NODE_ID; exports.PAPER_SLIDERS = PAPER_SLIDERS; exports.PAPER_TARGET = PAPER_TARGET; exports.PARTICLE_KINDS = _chunkHS6QDWDFcjs.PARTICLE_KINDS; exports.PARTICLE_KIND_LABELS = PARTICLE_KIND_LABELS; exports.PARTICLE_RENDERS = _chunkHS6QDWDFcjs.PARTICLE_RENDERS; exports.PARTICLE_RENDER_LABELS = PARTICLE_RENDER_LABELS; exports.PaintCanvasPresenter = PaintCanvasPresenter; exports.PaintDabStroke = PaintDabStroke; exports.PaintDirector = PaintDirector; exports.PaintDocumentError = PaintDocumentError; exports.PaintEditorController = PaintEditorController; exports.PaintEditorError = PaintEditorError; exports.PaintEffectsRenderer = PaintEffectsRenderer; exports.PaintGesture = PaintGesture; exports.PaintGradientSampler = _chunkFQPUF2W2cjs.PaintGradientSampler; exports.PaintPresence = PaintPresence; exports.PaintSourceError = _chunkFQPUF2W2cjs.PaintSourceError; exports.PaintStrokeSession = PaintStrokeSession; exports.PaintWetLayers = PaintWetLayers; exports.PaperGrain = _chunkPXDIAYB6cjs.PaperGrain; exports.ParticleStroke = ParticleStroke; exports.PenDabWalker = PenDabWalker; exports.PenSmoother = PenSmoother; exports.PerspectiveSnapper = PerspectiveSnapper; exports.RIBBON_PAIRS = _chunkHS6QDWDFcjs.RIBBON_PAIRS; exports.RIBBON_PAIR_LABELS = RIBBON_PAIR_LABELS; exports.SNAP_DECIDE_DISTANCE = SNAP_DECIDE_DISTANCE; exports.STAMP_KINDS = _chunkJSDND7DFcjs.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 = _chunkSABJMH6Mcjs.StickerBrowser; exports.StickerSpray = StickerSpray; exports.TRACING_NODE_ID = TRACING_NODE_ID; exports.ThickStrokeDriver = ThickStrokeDriver; exports.TileableNoise = _chunk3K6HWEXZcjs.TileableNoise; exports.WET_FLOW_KINDS = _chunkKBYB7OWBcjs.WET_FLOW_KINDS; exports.WET_GPU_MODES = WET_GPU_MODES; exports.WET_GPU_OPTIONS = WET_GPU_OPTIONS; exports.WET_MEDIA = _chunkHS6QDWDFcjs.WET_MEDIA; exports.WET_MEDIUM_LABELS = WET_MEDIUM_LABELS; exports.WET_MEDIUM_PARAMS = WET_MEDIUM_PARAMS; exports.WET_PARAM_KEYS = _chunkKBYB7OWBcjs.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 = _chunkHS6QDWDFcjs.WET_TOOLS; exports.WET_TOOL_LABELS = WET_TOOL_LABELS; exports.WetStrokeDriver = WetStrokeDriver; exports.addPaintGradientStop = _chunkFQPUF2W2cjs.addPaintGradientStop; exports.addPolygonArea = addPolygonArea; exports.affineCopy = affineCopy; exports.applyAffine = applyAffine; exports.backlightOf = backlightOf; exports.brushEngineControls = _chunk34KLWUH4cjs.brushEngineControls; exports.brushLoadColor = brushLoadColor; exports.brushLoadForStroke = brushLoadForStroke; exports.brushTakesPaint = _chunkHS6QDWDFcjs.brushTakesPaint; exports.brushToJSON = _chunkHS6QDWDFcjs.brushToJSON; exports.buildTimeLapse = buildTimeLapse; exports.checkPaintEffectPlace = checkPaintEffectPlace; exports.clonePaper = clonePaper; exports.colorHarmony = colorHarmony2; exports.composeAffine = composeAffine; exports.contactSheet = contactSheet; exports.createPaintBrushLibraryToolProvider = createPaintBrushLibraryToolProvider; exports.createPaintCompositor = createPaintCompositor; exports.createPaintDocument = createPaintDocument; exports.createPaintEditorDocument = createPaintEditorDocument; exports.createPaintEditorToolProvider = createPaintEditorToolProvider; exports.createPaintEffectsToolProvider = createPaintEffectsToolProvider; exports.createPaintLayer = createPaintLayer; 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 = effectDabField; exports.effectLayersToJSON = effectLayersToJSON; exports.effectPaintKey = effectPaintKey; exports.effectPaintSize = effectPaintSize; exports.emptiedLayers = emptiedLayers; exports.emptyThickChannels = emptyThickChannels; exports.fitZoom = fitZoom; exports.grainCatch = _chunkPXDIAYB6cjs.grainCatch; exports.grainHeights = _chunkPXDIAYB6cjs.grainHeights; exports.guideOverlay = guideOverlay; exports.handlePaintShortcut = handlePaintShortcut; exports.hash2 = _chunk3K6HWEXZcjs.hash2; exports.hexToPaintRgb = _chunkFQPUF2W2cjs.hexToPaintRgb; exports.hexToRgb8 = hexToRgb8; exports.hslToRgb = hslToRgb; exports.hsvToRgb = hsvToRgb; exports.hueToWheel = _chunkEUIDTZNQcjs.hueToWheel; exports.invertAffine = invertAffine; exports.isBlendMode = _chunk2VX55NFMcjs.isBlendMode; exports.isGradientPaint = _chunkFQPUF2W2cjs.isGradientPaint; exports.isPaintEffectPaint = isPaintEffectPaint; exports.isPainterlyBlendMode = _chunk2VX55NFMcjs.isPainterlyBlendMode; exports.isPalmTouch = isPalmTouch; exports.isWetBrush = _chunkHS6QDWDFcjs.isWetBrush; exports.isWetCapable = _chunkHS6QDWDFcjs.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 = mixerTip; exports.multiColorForDab = multiColorForDab; exports.multiColorGradient = multiColorGradient; exports.multiColorPalette = multiColorPalette; exports.multiColorSliders = _chunk34KLWUH4cjs.multiColorSliders; exports.multiColorToPaint = _chunkHS6QDWDFcjs.multiColorToPaint; exports.newPaintLayerId = newPaintLayerId; exports.nextPaperEffectVersion = nextPaperEffectVersion; exports.normalizeBehavior = _chunkHS6QDWDFcjs.normalizeBehavior; exports.normalizeBristle = _chunkHS6QDWDFcjs.normalizeBristle; exports.normalizeBrushStroke = normalizeBrushStroke; exports.normalizeCanvas = normalizeCanvas; exports.normalizeDynamics = _chunkHS6QDWDFcjs.normalizeDynamics; exports.normalizeFlow = _chunkKBYB7OWBcjs.normalizeFlow; exports.normalizeHexColor = _chunkFQPUF2W2cjs.normalizeHexColor; exports.normalizeImpasto = _chunkHS6QDWDFcjs.normalizeImpasto; exports.normalizeLight = _chunkHS6QDWDFcjs.normalizeLight; exports.normalizeLighting = normalizeLighting; exports.normalizeMultiColor = _chunkHS6QDWDFcjs.normalizeMultiColor; exports.normalizePaintBrush = _chunkHS6QDWDFcjs.normalizePaintBrush; exports.normalizePaper = normalizePaper; exports.normalizeParticle = _chunkHS6QDWDFcjs.normalizeParticle; exports.normalizePerspective = normalizePerspective; exports.normalizeRotation = normalizeRotation; exports.normalizeStencil = normalizeStencil; exports.normalizeStickerSettings = _chunkHS6QDWDFcjs.normalizeStickerSettings; exports.normalizeStickerUpdate = normalizeStickerUpdate; exports.normalizeSymmetry = normalizeSymmetry; exports.normalizeView = normalizeView; exports.normalizeWetBrush = _chunkHS6QDWDFcjs.normalizeWetBrush; exports.normalizeWetParams = _chunkKBYB7OWBcjs.normalizeWetParams; exports.overPixels = overPixels; exports.padSampleRadius = padSampleRadius; exports.paintGradientMappingFor = _chunkFQPUF2W2cjs.paintGradientMappingFor; exports.paintPlaybackPanel = paintPlaybackPanel; exports.paintSourceColor = _chunkFQPUF2W2cjs.paintSourceColor; exports.paintSourceCss = _chunkFQPUF2W2cjs.paintSourceCss; exports.paintToMultiColor = _chunkHS6QDWDFcjs.paintToMultiColor; exports.paperEffectFromJSON = paperEffectFromJSON; exports.paperEffectToJSON = paperEffectToJSON; exports.paperGrain = paperGrain; exports.paperKey = paperKey; exports.paperNode = paperNode; exports.paperPreset = paperPreset; exports.parseBrushLibrary = _chunkHS6QDWDFcjs.parseBrushLibrary; exports.parseHexColor = parseHexColor; exports.parsePaintSource = _chunkFQPUF2W2cjs.parsePaintSource; exports.patchBrushValue = _chunk34KLWUH4cjs.patchBrushValue; exports.patchPath = patchPath; exports.penOrientation = 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 = readEffectStrokeMap; exports.readPaintEffectPaint = readPaintEffectPaint; exports.readPaintEffectSource = readPaintEffectSource; exports.readPaintSource = _chunkFQPUF2W2cjs.readPaintSource; exports.readPath = readPath; exports.readSwatch = readSwatch; exports.reliefInfo = reliefInfo; exports.removePaintGradientStop = _chunkFQPUF2W2cjs.removePaintGradientStop; exports.renderBrushThumbnail = renderBrushThumbnail; exports.renderColorWheel = renderColorWheel; exports.renderPaper = renderPaper; exports.renderStickers = renderStickers; exports.replayFrame = replayFrame; exports.replayItems = replayItems; exports.replayPainting = replayPainting; exports.resolvePaintGradient = _chunkFQPUF2W2cjs.resolvePaintGradient; exports.reversePaintGradient = _chunkFQPUF2W2cjs.reversePaintGradient; exports.rgbToHexColor = rgbToHexColor; exports.rgbToHsl = rgbToHsl; exports.rgbToHsv = rgbToHsv; exports.sampleArt = sampleArt; exports.sampleEffectAt = sampleEffectAt; exports.sampleEffectField = sampleEffectField; exports.samplePressure = samplePressure; exports.scalePaintGradient = _chunkFQPUF2W2cjs.scalePaintGradient; exports.scaleStencil = scaleStencil; exports.screenToDocument = screenToDocument; exports.seedFromString = _chunk3K6HWEXZcjs.seedFromString; exports.serializePaintDocument = serializePaintDocument; exports.serializePaintDocumentExternal = serializePaintDocumentExternal; exports.solidPaint = _chunkFQPUF2W2cjs.solidPaint; exports.stampCoverage = _chunkJSDND7DFcjs.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 = tiltToOrientation; exports.timeLapseVideo = timeLapseVideo; exports.timeLapseZip = timeLapseZip; exports.toStrokePoint = toStrokePoint; exports.toggleDotTexture = toggleDotTexture; exports.toggleStamp = toggleStamp; exports.toggleStickerRef = toggleStickerRef; exports.translateStencil = translateStencil; exports.updatePaintGradientStop = _chunkFQPUF2W2cjs.updatePaintGradientStop; exports.usesPaintExchange = _chunkHS6QDWDFcjs.usesPaintExchange; exports.variationAffine = variationAffine; exports.varyStroke = varyStroke; exports.viewCssTransform = viewCssTransform; exports.viewMatrix = viewMatrix; exports.viewPenToDocument = viewPenToDocument; exports.wetEngineSummary = wetEngineSummary; exports.wetPaperInput = wetPaperInput; exports.wetPigmentOf = wetPigmentOf; exports.wetSupport = _chunkKBYB7OWBcjs.wetSupport; exports.wheelAngle = wheelAngle; exports.wheelPick = wheelPick; exports.wheelPoint = wheelPoint; exports.wheelToHue = _chunkEUIDTZNQcjs.wheelToHue; exports.withPaintPlayback = withPaintPlayback;
|
|
12756
|
+
exports.BACKLIGHT_SPILL = BACKLIGHT_SPILL; exports.BLEND_MENU_GROUPS = BLEND_MENU_GROUPS; exports.BLEND_MODES = _chunk2VX55NFMcjs.BLEND_MODES; exports.BRUSH_ID = _chunkHIMGBZAMcjs.BRUSH_ID; exports.BRUSH_ROTATIONS = _chunkHIMGBZAMcjs.BRUSH_ROTATIONS; exports.BRUSH_SLIDERS = _chunkPGPFWC35cjs.BRUSH_SLIDERS; exports.BUILTIN_BRUSHES = _chunkHIMGBZAMcjs.BUILTIN_BRUSHES; exports.BristleStroke = BristleStroke; exports.DEFAULT_BACKLIGHT_COLOR = DEFAULT_BACKLIGHT_COLOR; exports.DEFAULT_BEHAVIOR = _chunkHIMGBZAMcjs.DEFAULT_BEHAVIOR; exports.DEFAULT_BRISTLE = _chunkHIMGBZAMcjs.DEFAULT_BRISTLE; exports.DEFAULT_BRUSH_ID = _chunkHIMGBZAMcjs.DEFAULT_BRUSH_ID; exports.DEFAULT_DPI = DEFAULT_DPI; exports.DEFAULT_DYNAMICS = _chunkHIMGBZAMcjs.DEFAULT_DYNAMICS; exports.DEFAULT_FLOW = _chunkKBYB7OWBcjs.DEFAULT_FLOW; exports.DEFAULT_IMPASTO = _chunkHIMGBZAMcjs.DEFAULT_IMPASTO; exports.DEFAULT_LIGHT = _chunkHIMGBZAMcjs.DEFAULT_LIGHT; exports.DEFAULT_LIGHTING = DEFAULT_LIGHTING; exports.DEFAULT_MULTI_COLOR = _chunkHIMGBZAMcjs.DEFAULT_MULTI_COLOR; exports.DEFAULT_PAINT_GRADIENT = _chunkFQPUF2W2cjs.DEFAULT_PAINT_GRADIENT; exports.DEFAULT_PAINT_GRADIENT_MAPPING = _chunkFQPUF2W2cjs.DEFAULT_PAINT_GRADIENT_MAPPING; exports.DEFAULT_PAPER = DEFAULT_PAPER; exports.DEFAULT_PARTICLE = _chunkHIMGBZAMcjs.DEFAULT_PARTICLE; exports.DEFAULT_STICKER = _chunkHIMGBZAMcjs.DEFAULT_STICKER; exports.DEFAULT_SWATCHES = DEFAULT_SWATCHES; exports.DEFAULT_VIEW = DEFAULT_VIEW; exports.DEFAULT_WET_BRUSH = _chunkHIMGBZAMcjs.DEFAULT_WET_BRUSH; exports.DEFAULT_WET_PARAMS = _chunkKBYB7OWBcjs.DEFAULT_WET_PARAMS; exports.DOT_ROTATIONS = _chunkHIMGBZAMcjs.DOT_ROTATIONS; exports.DOT_ROTATION_LABELS = DOT_ROTATION_LABELS; exports.DOT_TEXTURE_ORDERS = _chunkHIMGBZAMcjs.DOT_TEXTURE_ORDERS; exports.DOT_TEXTURE_ORDER_LABELS = DOT_TEXTURE_ORDER_LABELS; exports.DryStroke = DryStroke; exports.EFFECT_MAP_REPEATS = EFFECT_MAP_REPEATS; exports.EFFECT_STRIP_HEIGHT = EFFECT_STRIP_HEIGHT; exports.GPU_LEAD = GPU_LEAD; exports.GRAIN_PATTERNS = _chunkPXDIAYB6cjs.GRAIN_PATTERNS; exports.GRAIN_TILE = _chunkPXDIAYB6cjs.GRAIN_TILE; exports.HARMONY_KINDS = _chunkEUIDTZNQcjs.HARMONY_KINDS; exports.IDENTITY_AFFINE = IDENTITY_AFFINE; exports.IDENTITY_COPY = IDENTITY_COPY; exports.IMPASTO_TOOLS = _chunkHIMGBZAMcjs.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 = _chunkFQPUF2W2cjs.MAX_BRUSH_SIZE; exports.MAX_CANVAS_SIDE = MAX_CANVAS_SIDE; exports.MAX_COORDINATE = MAX_COORDINATE; exports.MAX_DOT_TEXTURES = _chunkHIMGBZAMcjs.MAX_DOT_TEXTURES; exports.MAX_IMAGE_SIDE = MAX_IMAGE_SIDE; exports.MAX_LIVE_EFFECT_SOURCES = MAX_LIVE_EFFECT_SOURCES; exports.MAX_STICKER_STAMPS = _chunkHIMGBZAMcjs.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 = _chunkHIMGBZAMcjs.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 = _chunkHIMGBZAMcjs.PAINT_BRUSH_CATEGORIES; exports.PAINT_BRUSH_ENGINES = _chunkHIMGBZAMcjs.PAINT_BRUSH_ENGINES; exports.PAINT_COLOR_JSON_SCHEMA = _chunkFQPUF2W2cjs.PAINT_COLOR_JSON_SCHEMA; exports.PAINT_EFFECT_PLACES = PAINT_EFFECT_PLACES; exports.PAINT_FORMAT = PAINT_FORMAT; exports.PAINT_GRADIENT_FULL_SPEED = _chunkFQPUF2W2cjs.PAINT_GRADIENT_FULL_SPEED; exports.PAINT_GRADIENT_JSON_SCHEMA = _chunkFQPUF2W2cjs.PAINT_GRADIENT_JSON_SCHEMA; exports.PAINT_GRADIENT_KIT = _chunkFQPUF2W2cjs.PAINT_GRADIENT_KIT; exports.PAINT_GRADIENT_MAPPINGS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_MAPPINGS; exports.PAINT_GRADIENT_MAPPING_LABELS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_MAPPING_LABELS; exports.PAINT_GRADIENT_PRESETS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_PRESETS; exports.PAINT_GRADIENT_REPEATS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_REPEATS; exports.PAINT_GRADIENT_REPEAT_LABELS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_REPEAT_LABELS; exports.PAINT_GRADIENT_SPACES = _chunkFQPUF2W2cjs.PAINT_GRADIENT_SPACES; exports.PAINT_GRADIENT_SPACE_LABELS = _chunkFQPUF2W2cjs.PAINT_GRADIENT_SPACE_LABELS; exports.PAINT_SCHEMA_VERSION = PAINT_SCHEMA_VERSION; exports.PAINT_SOURCE_JSON_SCHEMA = _chunkFQPUF2W2cjs.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 = PAPER_FAMILIES; exports.PAPER_LIBRARY = PAPER_LIBRARY; exports.PAPER_NODE_ID = PAPER_NODE_ID; exports.PAPER_SLIDERS = PAPER_SLIDERS; exports.PAPER_TARGET = PAPER_TARGET; exports.PARTICLE_KINDS = _chunkHIMGBZAMcjs.PARTICLE_KINDS; exports.PARTICLE_KIND_LABELS = PARTICLE_KIND_LABELS; exports.PARTICLE_RENDERS = _chunkHIMGBZAMcjs.PARTICLE_RENDERS; exports.PARTICLE_RENDER_LABELS = PARTICLE_RENDER_LABELS; exports.PaintCanvasPresenter = PaintCanvasPresenter; exports.PaintDabStroke = PaintDabStroke; exports.PaintDirector = PaintDirector; exports.PaintDocumentError = PaintDocumentError; exports.PaintEditorController = PaintEditorController; exports.PaintEditorError = PaintEditorError; exports.PaintEffectsRenderer = PaintEffectsRenderer; exports.PaintGesture = PaintGesture; exports.PaintGradientSampler = _chunkFQPUF2W2cjs.PaintGradientSampler; exports.PaintPresence = PaintPresence; exports.PaintSourceError = _chunkFQPUF2W2cjs.PaintSourceError; exports.PaintStrokeSession = PaintStrokeSession; exports.PaintWetLayers = PaintWetLayers; exports.PaperGrain = _chunkPXDIAYB6cjs.PaperGrain; exports.ParticleStroke = ParticleStroke; exports.PenDabWalker = PenDabWalker; exports.PenSmoother = PenSmoother; exports.PerspectiveSnapper = PerspectiveSnapper; exports.RIBBON_PAIRS = _chunkHIMGBZAMcjs.RIBBON_PAIRS; exports.RIBBON_PAIR_LABELS = RIBBON_PAIR_LABELS; exports.SNAP_DECIDE_DISTANCE = SNAP_DECIDE_DISTANCE; exports.STAMP_KINDS = _chunkJSDND7DFcjs.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 = _chunkSABJMH6Mcjs.StickerBrowser; exports.StickerSpray = StickerSpray; exports.TRACING_NODE_ID = TRACING_NODE_ID; exports.ThickStrokeDriver = ThickStrokeDriver; exports.TileableNoise = _chunk3K6HWEXZcjs.TileableNoise; exports.WET_FLOW_KINDS = _chunkKBYB7OWBcjs.WET_FLOW_KINDS; exports.WET_GPU_MODES = WET_GPU_MODES; exports.WET_GPU_OPTIONS = WET_GPU_OPTIONS; exports.WET_MEDIA = _chunkHIMGBZAMcjs.WET_MEDIA; exports.WET_MEDIUM_LABELS = WET_MEDIUM_LABELS; exports.WET_MEDIUM_PARAMS = WET_MEDIUM_PARAMS; exports.WET_PARAM_KEYS = _chunkKBYB7OWBcjs.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 = _chunkHIMGBZAMcjs.WET_TOOLS; exports.WET_TOOL_LABELS = WET_TOOL_LABELS; exports.WetStrokeDriver = WetStrokeDriver; exports.addPaintGradientStop = _chunkFQPUF2W2cjs.addPaintGradientStop; exports.addPolygonArea = addPolygonArea; exports.affineCopy = affineCopy; exports.applyAffine = applyAffine; exports.backlightOf = backlightOf; exports.brushEngineControls = _chunkPGPFWC35cjs.brushEngineControls; exports.brushLoadColor = brushLoadColor; exports.brushLoadForStroke = brushLoadForStroke; exports.brushTakesPaint = _chunkHIMGBZAMcjs.brushTakesPaint; exports.brushToJSON = _chunkHIMGBZAMcjs.brushToJSON; exports.buildTimeLapse = buildTimeLapse; exports.checkPaintEffectPlace = checkPaintEffectPlace; exports.clonePaper = clonePaper; exports.colorHarmony = colorHarmony2; exports.composeAffine = composeAffine; exports.contactSheet = contactSheet; exports.createPaintBrushLibraryToolProvider = createPaintBrushLibraryToolProvider; exports.createPaintCompositor = createPaintCompositor; exports.createPaintDocument = createPaintDocument; exports.createPaintEditorDocument = createPaintEditorDocument; exports.createPaintEditorToolProvider = createPaintEditorToolProvider; exports.createPaintEffectsToolProvider = createPaintEffectsToolProvider; exports.createPaintLayer = createPaintLayer; 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 = effectDabField; exports.effectLayersToJSON = effectLayersToJSON; exports.effectPaintKey = effectPaintKey; exports.effectPaintSize = effectPaintSize; exports.emptiedLayers = emptiedLayers; exports.emptyThickChannels = emptyThickChannels; exports.fitZoom = fitZoom; exports.grainCatch = _chunkPXDIAYB6cjs.grainCatch; exports.grainHeights = _chunkPXDIAYB6cjs.grainHeights; exports.guideOverlay = guideOverlay; exports.handlePaintShortcut = handlePaintShortcut; exports.hash2 = _chunk3K6HWEXZcjs.hash2; exports.hexToPaintRgb = _chunkFQPUF2W2cjs.hexToPaintRgb; exports.hexToRgb8 = hexToRgb8; exports.hslToRgb = hslToRgb; exports.hsvToRgb = hsvToRgb; exports.hueToWheel = _chunkEUIDTZNQcjs.hueToWheel; exports.invertAffine = invertAffine; exports.isBlendMode = _chunk2VX55NFMcjs.isBlendMode; exports.isGradientPaint = _chunkFQPUF2W2cjs.isGradientPaint; exports.isPaintEffectPaint = isPaintEffectPaint; exports.isPainterlyBlendMode = _chunk2VX55NFMcjs.isPainterlyBlendMode; exports.isPalmTouch = isPalmTouch; exports.isWetBrush = _chunkHIMGBZAMcjs.isWetBrush; exports.isWetCapable = _chunkHIMGBZAMcjs.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 = mixerTip; exports.multiColorForDab = multiColorForDab; exports.multiColorGradient = multiColorGradient; exports.multiColorPalette = multiColorPalette; exports.multiColorSliders = _chunkPGPFWC35cjs.multiColorSliders; exports.multiColorToPaint = _chunkHIMGBZAMcjs.multiColorToPaint; exports.newPaintLayerId = newPaintLayerId; exports.nextPaperEffectVersion = nextPaperEffectVersion; exports.normalizeBehavior = _chunkHIMGBZAMcjs.normalizeBehavior; exports.normalizeBristle = _chunkHIMGBZAMcjs.normalizeBristle; exports.normalizeBrushStroke = normalizeBrushStroke; exports.normalizeCanvas = normalizeCanvas; exports.normalizeDynamics = _chunkHIMGBZAMcjs.normalizeDynamics; exports.normalizeFlow = _chunkKBYB7OWBcjs.normalizeFlow; exports.normalizeHexColor = _chunkFQPUF2W2cjs.normalizeHexColor; exports.normalizeImpasto = _chunkHIMGBZAMcjs.normalizeImpasto; exports.normalizeLight = _chunkHIMGBZAMcjs.normalizeLight; exports.normalizeLighting = normalizeLighting; exports.normalizeMultiColor = _chunkHIMGBZAMcjs.normalizeMultiColor; exports.normalizePaintBrush = _chunkHIMGBZAMcjs.normalizePaintBrush; exports.normalizePaper = normalizePaper; exports.normalizeParticle = _chunkHIMGBZAMcjs.normalizeParticle; exports.normalizePerspective = normalizePerspective; exports.normalizeRotation = normalizeRotation; exports.normalizeStencil = normalizeStencil; exports.normalizeStickerSettings = _chunkHIMGBZAMcjs.normalizeStickerSettings; exports.normalizeStickerUpdate = normalizeStickerUpdate; exports.normalizeSymmetry = normalizeSymmetry; exports.normalizeView = normalizeView; exports.normalizeWetBrush = _chunkHIMGBZAMcjs.normalizeWetBrush; exports.normalizeWetParams = _chunkKBYB7OWBcjs.normalizeWetParams; exports.overPixels = overPixels; exports.padSampleRadius = padSampleRadius; exports.paintGradientMappingFor = _chunkFQPUF2W2cjs.paintGradientMappingFor; exports.paintPlaybackPanel = paintPlaybackPanel; exports.paintSourceColor = _chunkFQPUF2W2cjs.paintSourceColor; exports.paintSourceCss = _chunkFQPUF2W2cjs.paintSourceCss; exports.paintToMultiColor = _chunkHIMGBZAMcjs.paintToMultiColor; exports.paperEffectFromJSON = paperEffectFromJSON; exports.paperEffectToJSON = paperEffectToJSON; exports.paperGrain = paperGrain; exports.paperKey = paperKey; exports.paperNode = paperNode; exports.paperPreset = paperPreset; exports.parseBrushLibrary = _chunkHIMGBZAMcjs.parseBrushLibrary; exports.parseHexColor = parseHexColor; exports.parsePaintSource = _chunkFQPUF2W2cjs.parsePaintSource; exports.patchBrushValue = _chunkPGPFWC35cjs.patchBrushValue; exports.patchPath = patchPath; exports.penOrientation = 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 = readEffectStrokeMap; exports.readPaintEffectPaint = readPaintEffectPaint; exports.readPaintEffectSource = readPaintEffectSource; exports.readPaintSource = _chunkFQPUF2W2cjs.readPaintSource; exports.readPath = readPath; exports.readSwatch = readSwatch; exports.reliefInfo = reliefInfo; exports.removePaintGradientStop = _chunkFQPUF2W2cjs.removePaintGradientStop; exports.renderBrushThumbnail = renderBrushThumbnail; exports.renderColorWheel = renderColorWheel; exports.renderPaper = renderPaper; exports.renderStickers = renderStickers; exports.replayFrame = replayFrame; exports.replayItems = replayItems; exports.replayPainting = replayPainting; exports.resolvePaintGradient = _chunkFQPUF2W2cjs.resolvePaintGradient; exports.reversePaintGradient = _chunkFQPUF2W2cjs.reversePaintGradient; exports.rgbToHexColor = rgbToHexColor; exports.rgbToHsl = rgbToHsl; exports.rgbToHsv = rgbToHsv; exports.sampleArt = sampleArt; exports.sampleEffectAt = sampleEffectAt; exports.sampleEffectField = sampleEffectField; exports.samplePressure = samplePressure; exports.scalePaintGradient = _chunkFQPUF2W2cjs.scalePaintGradient; exports.scaleStencil = scaleStencil; exports.screenToDocument = screenToDocument; exports.seedFromString = _chunk3K6HWEXZcjs.seedFromString; exports.serializePaintDocument = serializePaintDocument; exports.serializePaintDocumentExternal = serializePaintDocumentExternal; exports.solidPaint = _chunkFQPUF2W2cjs.solidPaint; exports.stampCoverage = _chunkJSDND7DFcjs.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 = tiltToOrientation; exports.timeLapseVideo = timeLapseVideo; exports.timeLapseZip = timeLapseZip; exports.toStrokePoint = toStrokePoint; exports.toggleDotTexture = toggleDotTexture; exports.toggleStamp = toggleStamp; exports.toggleStickerRef = toggleStickerRef; exports.translateStencil = translateStencil; exports.updatePaintGradientStop = _chunkFQPUF2W2cjs.updatePaintGradientStop; exports.usesPaintExchange = _chunkHIMGBZAMcjs.usesPaintExchange; exports.variationAffine = variationAffine; exports.varyStroke = varyStroke; exports.viewCssTransform = viewCssTransform; exports.viewMatrix = viewMatrix; exports.viewPenToDocument = viewPenToDocument; exports.wetEngineSummary = wetEngineSummary; exports.wetPaperInput = wetPaperInput; exports.wetPigmentOf = wetPigmentOf; exports.wetSupport = _chunkKBYB7OWBcjs.wetSupport; exports.wheelAngle = wheelAngle; exports.wheelPick = wheelPick; exports.wheelPoint = wheelPoint; exports.wheelToHue = _chunkEUIDTZNQcjs.wheelToHue; exports.withPaintPlayback = withPaintPlayback;
|