@pixerate/editor 0.140.4 → 0.142.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 (125) hide show
  1. package/dist/agent/canvasPlayback.d.cts +15 -0
  2. package/dist/agent/canvasPlayback.d.ts +15 -0
  3. package/dist/agent/index.cjs +173 -33
  4. package/dist/agent/index.d.cts +1 -0
  5. package/dist/agent/index.d.ts +1 -0
  6. package/dist/agent/index.js +147 -7
  7. package/dist/agent/providers.d.cts +12 -1
  8. package/dist/agent/providers.d.ts +12 -1
  9. package/dist/agent/types.d.cts +3 -0
  10. package/dist/agent/types.d.ts +3 -0
  11. package/dist/animation/index.cjs +2 -2
  12. package/dist/animation/index.js +1 -1
  13. package/dist/animation/presence.d.cts +1 -75
  14. package/dist/animation/presence.d.ts +1 -75
  15. package/dist/animation-editor/index.cjs +69 -19
  16. package/dist/animation-editor/index.d.cts +1 -0
  17. package/dist/animation-editor/index.d.ts +1 -0
  18. package/dist/animation-editor/index.js +54 -4
  19. package/dist/animation-editor/playback.d.cts +10 -0
  20. package/dist/animation-editor/playback.d.ts +10 -0
  21. package/dist/bridge/cli.cjs +3 -3
  22. package/dist/bridge/cli.js +2 -2
  23. package/dist/bridge/index.cjs +3 -3
  24. package/dist/bridge/index.js +2 -2
  25. package/dist/canvas/index.cjs +336 -646
  26. package/dist/canvas/index.d.cts +1 -0
  27. package/dist/canvas/index.d.ts +1 -0
  28. package/dist/canvas/index.js +44 -354
  29. package/dist/canvas/playback.d.cts +14 -0
  30. package/dist/canvas/playback.d.ts +14 -0
  31. package/dist/chart/index.cjs +255 -171
  32. package/dist/chart/index.d.cts +1 -0
  33. package/dist/chart/index.d.ts +1 -0
  34. package/dist/chart/index.js +244 -160
  35. package/dist/chart/playback.d.cts +22 -0
  36. package/dist/chart/playback.d.ts +22 -0
  37. package/dist/chunk-54GVEVXS.js +408 -0
  38. package/dist/{chunk-E747F3D5.js → chunk-CC6WKVIH.js} +86 -5
  39. package/dist/chunk-DW4CV5H4.js +591 -0
  40. package/dist/{chunk-UMS6YFA6.js → chunk-EAQ4BGNS.js} +1 -1
  41. package/dist/{chunk-AGCD3EHB.cjs → chunk-ENIZYNEF.cjs} +7 -7
  42. package/dist/{chunk-BSGPXPTW.js → chunk-PEEP2YR7.js} +1 -1
  43. package/dist/{chunk-VTY64I6H.cjs → chunk-QSM3MDDJ.cjs} +85 -85
  44. package/dist/{chunk-2RUNJYOX.cjs → chunk-QZFEX2N4.cjs} +86 -5
  45. package/dist/{chunk-RB62U6MS.js → chunk-RFBFTLVN.js} +27 -5
  46. package/dist/chunk-UBRYHNRU.cjs +591 -0
  47. package/dist/{chunk-GEY73RUW.cjs → chunk-UJGAA6AK.cjs} +1 -1
  48. package/dist/{chunk-LMSFXRAJ.js → chunk-VGJTUCWM.js} +1 -1
  49. package/dist/chunk-X2HQP7DF.cjs +408 -0
  50. package/dist/chunk-XH32BATE.cjs +68 -0
  51. package/dist/{chunk-HDK3T2QS.cjs → chunk-Y4BWZB6J.cjs} +29 -7
  52. package/dist/chunk-Y6SGC6KO.js +68 -0
  53. package/dist/commands/index.cjs +37 -1
  54. package/dist/commands/index.js +36 -0
  55. package/dist/commands/registry.d.cts +11 -0
  56. package/dist/commands/registry.d.ts +11 -0
  57. package/dist/diagram/index.cjs +7 -7
  58. package/dist/diagram/index.js +1 -1
  59. package/dist/image-editor/index.cjs +108 -16
  60. package/dist/image-editor/index.d.cts +1 -0
  61. package/dist/image-editor/index.d.ts +1 -0
  62. package/dist/image-editor/index.js +107 -15
  63. package/dist/image-editor/playback.d.cts +22 -0
  64. package/dist/image-editor/playback.d.ts +22 -0
  65. package/dist/index.cjs +7 -3
  66. package/dist/index.js +6 -2
  67. package/dist/paint-editor/index.cjs +73 -25
  68. package/dist/paint-editor/index.d.cts +1 -0
  69. package/dist/paint-editor/index.d.ts +1 -0
  70. package/dist/paint-editor/index.js +68 -20
  71. package/dist/paint-editor/playback.d.cts +16 -0
  72. package/dist/paint-editor/playback.d.ts +16 -0
  73. package/dist/parameters/index.cjs +32 -8
  74. package/dist/parameters/index.d.cts +1 -0
  75. package/dist/parameters/index.d.ts +1 -0
  76. package/dist/parameters/index.js +28 -4
  77. package/dist/parameters/playback.d.cts +10 -0
  78. package/dist/parameters/playback.d.ts +10 -0
  79. package/dist/spreadsheet/index.cjs +7 -3
  80. package/dist/spreadsheet/index.d.cts +1 -0
  81. package/dist/spreadsheet/index.d.ts +1 -0
  82. package/dist/spreadsheet/index.js +6 -2
  83. package/dist/spreadsheet/playback.d.cts +15 -0
  84. package/dist/spreadsheet/playback.d.ts +15 -0
  85. package/dist/tools/index.cjs +40 -3
  86. package/dist/tools/index.d.cts +3 -0
  87. package/dist/tools/index.d.ts +3 -0
  88. package/dist/tools/index.js +39 -2
  89. package/dist/tools/playback.d.cts +205 -0
  90. package/dist/tools/playback.d.ts +205 -0
  91. package/dist/tools/presence.d.cts +82 -0
  92. package/dist/tools/presence.d.ts +82 -0
  93. package/dist/tools/registry.d.cts +45 -6
  94. package/dist/tools/registry.d.ts +45 -6
  95. package/dist/tools/script.d.cts +77 -0
  96. package/dist/tools/script.d.ts +77 -0
  97. package/dist/tools/view.d.cts +2 -4
  98. package/dist/tools/view.d.ts +2 -4
  99. package/dist/vector/index.cjs +217 -100
  100. package/dist/vector/index.d.cts +1 -0
  101. package/dist/vector/index.d.ts +1 -0
  102. package/dist/vector/index.js +140 -23
  103. package/dist/vector/playback.d.cts +13 -0
  104. package/dist/vector/playback.d.ts +13 -0
  105. package/dist/video-editor/index.cjs +81 -28
  106. package/dist/video-editor/index.d.cts +1 -0
  107. package/dist/video-editor/index.d.ts +1 -0
  108. package/dist/video-editor/index.js +58 -5
  109. package/dist/video-editor/playback.d.cts +20 -0
  110. package/dist/video-editor/playback.d.ts +20 -0
  111. package/package.json +1 -1
  112. package/skills/pixerate-agent-tools/SKILL.md +13 -0
  113. package/skills/pixerate-animation-editor/SKILL.md +1 -0
  114. package/skills/pixerate-canvas/SKILL.md +3 -0
  115. package/skills/pixerate-chart/SKILL.md +1 -0
  116. package/skills/pixerate-image-editor/SKILL.md +2 -2
  117. package/skills/pixerate-paint-editor/SKILL.md +1 -0
  118. package/skills/pixerate-parameters/SKILL.md +1 -0
  119. package/skills/pixerate-spreadsheet/SKILL.md +1 -0
  120. package/skills/pixerate-vector/SKILL.md +5 -0
  121. package/skills/pixerate-video-editor/SKILL.md +1 -0
  122. package/dist/chunk-BTZS3KZY.js +0 -221
  123. package/dist/chunk-K73HMKQP.js +0 -0
  124. package/dist/chunk-LACYURUW.cjs +0 -1
  125. package/dist/chunk-MRD3NXKR.cjs +0 -221
@@ -4169,8 +4169,8 @@ var Page = (_class3 = class {
4169
4169
  const fns = list.slice(1).map((s, k) => `<< /FunctionType 2 /Domain [0 1] /C0 ${rgb(list[k].c)} /C1 ${rgb(s.c)} /N 1 >>`);
4170
4170
  const fn = fns.length === 1 ? fns[0] : `<< /FunctionType 3 /Domain [${n(list[0].t)} ${n(list[list.length - 1].t)}] /Functions [${fns.join(" ")}] /Bounds [${list.slice(1, -1).map((s) => n(s.t)).join(" ")}] /Encode [${fns.map(() => "0 1").join(" ")}] >>`;
4171
4171
  const a = def.attrs;
4172
- const num = (k, d = 0) => a[k] === void 0 ? d : parseFloat(String(a[k]));
4173
- const coords = def.type === "linear" ? `/ShadingType 2 /Coords [${n(num("x1"))} ${n(num("y1"))} ${n(num("x2", 1))} ${n(num("y2"))}]` : `/ShadingType 3 /Coords [${n(num("fx", num("cx", 0.5)))} ${n(num("fy", num("cy", 0.5)))} ${n(num("fr"))} ${n(num("cx", 0.5))} ${n(num("cy", 0.5))} ${n(num("r", 0.5))}]`;
4172
+ const num2 = (k, d = 0) => a[k] === void 0 ? d : parseFloat(String(a[k]));
4173
+ const coords = def.type === "linear" ? `/ShadingType 2 /Coords [${n(num2("x1"))} ${n(num2("y1"))} ${n(num2("x2", 1))} ${n(num2("y2"))}]` : `/ShadingType 3 /Coords [${n(num2("fx", num2("cx", 0.5)))} ${n(num2("fy", num2("cy", 0.5)))} ${n(num2("fr"))} ${n(num2("cx", 0.5))} ${n(num2("cy", 0.5))} ${n(num2("r", 0.5))}]`;
4174
4174
  this.writer.shadingDicts.set(`${this.writer.pageIndex}:${name}`, `<< ${coords} /ColorSpace /DeviceRGB /Function ${fn} /Extend [true true] >>`);
4175
4175
  return name;
4176
4176
  }
@@ -4807,28 +4807,28 @@ function gradientOf(it, frame) {
4807
4807
  }
4808
4808
  function effectOf(it, frame, c, id) {
4809
4809
  const v = (k) => lottieValueAt(it[k], frame);
4810
- const num = (k, d = 0) => _nullishCoalesce(v(k)[0], () => ( d));
4810
+ const num2 = (k, d = 0) => _nullishCoalesce(v(k)[0], () => ( d));
4811
4811
  let raw = null;
4812
4812
  switch (it.ty) {
4813
4813
  case "tm":
4814
- raw = { type: "trim", params: { start: num("s"), end: num("e", 100), offset: num("o"), mode: Number(it.m) === 2 ? "individual" : "simultaneous" } };
4814
+ raw = { type: "trim", params: { start: num2("s"), end: num2("e", 100), offset: num2("o"), mode: Number(it.m) === 2 ? "individual" : "simultaneous" } };
4815
4815
  break;
4816
4816
  case "rd":
4817
- raw = { type: "roundCorners", params: { radius: num("r") } };
4817
+ raw = { type: "roundCorners", params: { radius: num2("r") } };
4818
4818
  break;
4819
4819
  case "pb":
4820
- raw = { type: "puckerBloat", params: { amount: num("a") } };
4820
+ raw = { type: "puckerBloat", params: { amount: num2("a") } };
4821
4821
  break;
4822
4822
  case "tw": {
4823
4823
  const [x = c.x, y = c.y] = v("c");
4824
- raw = { type: "twist", params: { angle: num("a"), center: { x: x - c.x, y: y - c.y } } };
4824
+ raw = { type: "twist", params: { angle: num2("a"), center: { x: x - c.x, y: y - c.y } } };
4825
4825
  break;
4826
4826
  }
4827
4827
  case "zz":
4828
- raw = { type: "zigzag", params: { size: num("s"), ridges: num("r"), smooth: num("pt", 1) === 2 } };
4828
+ raw = { type: "zigzag", params: { size: num2("s"), ridges: num2("r"), smooth: num2("pt", 1) === 2 } };
4829
4829
  break;
4830
4830
  case "op":
4831
- raw = { type: "offset", params: { amount: num("a"), join: _nullishCoalesce(["miter", "round", "bevel"][Number(_nullishCoalesce(it.lj, () => ( 1))) - 1], () => ( "miter")), miterLimit: num("ml", 4) || 4 } };
4831
+ raw = { type: "offset", params: { amount: num2("a"), join: _nullishCoalesce(["miter", "round", "bevel"][Number(_nullishCoalesce(it.lj, () => ( 1))) - 1], () => ( "miter")), miterLimit: num2("ml", 4) || 4 } };
4832
4832
  break;
4833
4833
  case "mm":
4834
4834
  raw = { type: "merge", params: { mode: _nullishCoalesce(MERGE[Number(_nullishCoalesce(it.mm, () => ( 1))) - 1], () => ( "merge")) } };
@@ -4844,7 +4844,7 @@ function effectOf(it, frame, c, id) {
4844
4844
  const [sx, sy] = at("s", [100, 100]);
4845
4845
  raw = {
4846
4846
  type: "repeater",
4847
- params: { copies: num("c", 1), offset: num("o"), position: { x: px, y: py }, anchor: { x: ax - c.x, y: ay - c.y }, rotation: at("r", [0])[0], scale: { x: sx, y: sy }, startOpacity: at("so", [100])[0], endOpacity: at("eo", [100])[0], composite: Number(it.m) === 1 ? "above" : "below" }
4847
+ params: { copies: num2("c", 1), offset: num2("o"), position: { x: px, y: py }, anchor: { x: ax - c.x, y: ay - c.y }, rotation: at("r", [0])[0], scale: { x: sx, y: sy }, startOpacity: at("so", [100])[0], endOpacity: at("eo", [100])[0], composite: Number(it.m) === 1 ? "above" : "below" }
4848
4848
  };
4849
4849
  break;
4850
4850
  }
@@ -6456,11 +6456,11 @@ function segsToSubpath(segs, closed, types) {
6456
6456
  const last = anchors.pop();
6457
6457
  if (last.in) anchors[0].in = last.in;
6458
6458
  }
6459
- const typed = anchors.map((a) => {
6459
+ const typed2 = anchors.map((a) => {
6460
6460
  const type = types.get(`${a.x},${a.y}`);
6461
6461
  return tidy(type ? { ...a, type } : a, !!type);
6462
6462
  });
6463
- return { anchors: typed, closed };
6463
+ return { anchors: typed2, closed };
6464
6464
  }
6465
6465
  var isZeroSeg = (s) => s.c.every((p) => Math.abs(p[0] - s.c[0][0]) < 1e-9 && Math.abs(p[1] - s.c[0][1]) < 1e-9);
6466
6466
  function mergePair(a, b, tol) {
@@ -8497,10 +8497,10 @@ var VectorEditorController = (_class7 = class _VectorEditorController {
8497
8497
  if (_optionalChain([node, 'optionalAccess', _345 => _345.type]) !== "path") return { ok: false, message: "There is no such path." };
8498
8498
  const g = vectorStrokeWidthGeometry(node);
8499
8499
  if (!g || !(g.unit > 0)) return { ok: false, message: "The path has no visible stroke." };
8500
- const num = (v) => typeof v === "number" && Number.isFinite(v) ? v : void 0;
8501
- const t = num(values.t);
8502
- const left = num(values.left);
8503
- const right = num(values.right);
8500
+ const num2 = (v) => typeof v === "number" && Number.isFinite(v) ? v : void 0;
8501
+ const t = num2(values.t);
8502
+ const left = num2(values.left);
8503
+ const right = num2(values.right);
8504
8504
  const scale = (w) => w === void 0 ? void 0 : Math.max(0, w) / g.unit;
8505
8505
  const profile = _chunkHRI3ZMDMcjs.sanitizeWidthProfile.call(void 0, node.strokeWidthProfile);
8506
8506
  let points;
@@ -10768,18 +10768,18 @@ var VectorEditorController = (_class7 = class _VectorEditorController {
10768
10768
  const sp = pen && node ? node.subpaths[pen.subpath] : void 0;
10769
10769
  if (!pen || !node || !_optionalChain([sp, 'optionalAccess', _426 => _426.anchors, 'access', _427 => _427.length])) return { ok: false, message: "Start a path with the pen first: typed entry places its next point." };
10770
10770
  const last = getAnchorWorld(this.doc, { nodeId: pen.nodeId, subpath: pen.subpath, index: sp.anchors.length - 1 });
10771
- const num = "(-?(?:\\d+\\.?\\d*|\\.\\d+))";
10771
+ const num2 = "(-?(?:\\d+\\.?\\d*|\\.\\d+))";
10772
10772
  const t = text.replace(/\s+/g, "");
10773
10773
  let target = null;
10774
10774
  let m;
10775
- if (m = t.match(new RegExp(`^@${num},${num}$`))) target = { x: last.x + parseFloat(m[1]), y: last.y + parseFloat(m[2]) };
10776
- else if (m = t.match(new RegExp(`^${num},${num}$`))) target = { x: parseFloat(m[1]), y: parseFloat(m[2]) };
10777
- else if (m = t.match(new RegExp(`^${num}<${num}$`))) {
10775
+ if (m = t.match(new RegExp(`^@${num2},${num2}$`))) target = { x: last.x + parseFloat(m[1]), y: last.y + parseFloat(m[2]) };
10776
+ else if (m = t.match(new RegExp(`^${num2},${num2}$`))) target = { x: parseFloat(m[1]), y: parseFloat(m[2]) };
10777
+ else if (m = t.match(new RegExp(`^${num2}<${num2}$`))) {
10778
10778
  const base = this.snap.polarRelative ? (_nullishCoalesce(_nullishCoalesce(_optionalChain([this, 'access', _428 => _428.penAngles, 'call', _429 => _429(), 'access', _430 => _430.angles, 'optionalAccess', _431 => _431[0]]), () => ( this.snap.angles[0])), () => ( 0))) - (_nullishCoalesce(this.snap.angles[0], () => ( 0))) : 0;
10779
10779
  const dir = vectorAngleDirection(parseFloat(m[2]) + base);
10780
10780
  const len2 = parseFloat(m[1]);
10781
10781
  target = { x: last.x + dir.x * len2, y: last.y + dir.y * len2 };
10782
- } else if (m = t.match(new RegExp(`^${num}$`))) {
10782
+ } else if (m = t.match(new RegExp(`^${num2}$`))) {
10783
10783
  const toward = this.pointer;
10784
10784
  const d = toward ? Math.hypot(toward.x - last.x, toward.y - last.y) : 0;
10785
10785
  if (!toward || d < 1e-9) return { ok: false, message: "Point the pointer the way the distance should go (or type length<angle)." };
@@ -14974,6 +14974,120 @@ function pencilPressureProfile(points, pressures) {
14974
14974
  return _chunkHRI3ZMDMcjs.pressureWidthProfile.call(void 0, s.map((d, i) => ({ t: d / total, pressure: pressures[i] })));
14975
14975
  }
14976
14976
 
14977
+ // src/vector/playback.ts
14978
+ var VECTOR_PLAYBACK_KIND = "vector";
14979
+ function createVectorPlaybackLocator(controller) {
14980
+ return (ref) => {
14981
+ if (ref.kind !== VECTOR_PLAYBACK_KIND && ref.kind !== "item") return null;
14982
+ const node = controller.getNode(ref.id);
14983
+ if (!node) return null;
14984
+ const b = _chunkHRI3ZMDMcjs.vectorNodeBounds.call(void 0, node, _nullishCoalesce(_chunkHRI3ZMDMcjs.vectorParentMatrix.call(void 0, controller.getState().document.nodes, ref.id), () => ( _chunkHRI3ZMDMcjs.IDENTITY_MATRIX)));
14985
+ if (!b) return null;
14986
+ const w = Math.max(b.width, 4);
14987
+ const h = Math.max(b.height, 4);
14988
+ return { x: b.x - (w - b.width) / 2, y: b.y - (h - b.height) / 2, width: w, height: h };
14989
+ };
14990
+ }
14991
+ var num = (v) => typeof v === "number" && Number.isFinite(v);
14992
+ var dragOut = (from, to) => [
14993
+ { type: "move", to: from },
14994
+ { type: "press" },
14995
+ { type: "drag", to },
14996
+ { type: "release" }
14997
+ ];
14998
+ var click = (at) => [{ type: "move", to: at }, { type: "press" }, { type: "release" }];
14999
+ var typed = (text) => {
15000
+ if (typeof text !== "string" || !text.trim()) return [];
15001
+ const line2 = text.replace(/\s+/g, " ").trim();
15002
+ return [{ type: "type", text: line2.length > 60 ? `${line2.slice(0, 59)}\u2026` : line2 }];
15003
+ };
15004
+ function pathPoints(d, max = 24) {
15005
+ let anchors;
15006
+ try {
15007
+ anchors = _chunkHRI3ZMDMcjs.bezierToSubpaths.call(void 0, d).flatMap((s) => s.anchors.map((a) => ({ x: a.x, y: a.y })));
15008
+ } catch (e12) {
15009
+ return [];
15010
+ }
15011
+ if (anchors.length <= max) return anchors;
15012
+ const step = (anchors.length - 1) / (max - 1);
15013
+ return Array.from({ length: max }, (_, i) => anchors[Math.round(i * step)]);
15014
+ }
15015
+ function trace(points) {
15016
+ if (!points.length) return [];
15017
+ const [first, ...rest] = points;
15018
+ const total = rest.reduce((sum, p, i) => sum + Math.hypot(p.x - (i ? rest[i - 1] : first).x, p.y - (i ? rest[i - 1] : first).y), 0);
15019
+ const ms = (p, i) => {
15020
+ const prev = i ? rest[i - 1] : first;
15021
+ return total > 0 ? Math.max(16, 900 * Math.hypot(p.x - prev.x, p.y - prev.y) / total) : 16;
15022
+ };
15023
+ return [{ type: "move", to: first }, { type: "press" }, ...rest.map((p, i) => ({ type: "drag", to: p, ms: ms(p, i) })), { type: "release" }];
15024
+ }
15025
+ var PLANS = {
15026
+ addShape: (p) => {
15027
+ if (![p.x, p.y, p.width, p.height].every(num)) return null;
15028
+ return dragOut({ x: p.x, y: p.y }, { x: p.x + p.width, y: p.y + p.height });
15029
+ },
15030
+ addPath: (p) => typeof p.d === "string" ? trace(pathPoints(p.d)) : null,
15031
+ addText: (p) => {
15032
+ if (typeof p.path === "string") {
15033
+ const points = pathPoints(p.path, 2);
15034
+ return points.length ? [...click(points[0]), ...typed(p.text)] : null;
15035
+ }
15036
+ const x = num(p.x) ? p.x : 0;
15037
+ const y = num(p.y) ? p.y : 0;
15038
+ const start = num(p.width) && num(p.height) ? dragOut({ x, y }, { x: x + p.width, y: y + p.height }) : click({ x, y });
15039
+ return [...start, ...typed(p.text)];
15040
+ },
15041
+ placeSymbol: (p, controller) => {
15042
+ const doc = controller.getState().document;
15043
+ const t = Array.isArray(p.transform) && p.transform.length === 6 ? p.transform : null;
15044
+ const at = t ? { x: t[4], y: t[5] } : { x: num(p.x) ? p.x : doc.width / 2, y: num(p.y) ? p.y : doc.height / 2 };
15045
+ return click(at);
15046
+ },
15047
+ setTextStyle: (p, controller) => {
15048
+ const node = controller.getNode(p.id);
15049
+ if (_optionalChain([node, 'optionalAccess', _611 => _611.type]) !== "text") return null;
15050
+ const rect = createVectorPlaybackLocator(controller)({ kind: VECTOR_PLAYBACK_KIND, id: p.id });
15051
+ if (!rect) return null;
15052
+ const length = Math.max(1, node.text.length);
15053
+ const start = Math.min(length, Math.max(0, num(p.start) ? p.start : 0));
15054
+ const end = Math.min(length, Math.max(start, num(p.end) ? p.end : length));
15055
+ const y = rect.y + rect.height / 2;
15056
+ return [
15057
+ { type: "focus", rect },
15058
+ ...dragOut({ x: rect.x + rect.width * start / length, y }, { x: rect.x + rect.width * end / length, y })
15059
+ ];
15060
+ },
15061
+ setMeshPoint: (p, controller) => {
15062
+ const shading = controller.getShading(p.id);
15063
+ const point = _optionalChain([shading, 'optionalAccess', _612 => _612.points, 'access', _613 => _613[p.index]]);
15064
+ if (!point) return null;
15065
+ return num(p.x) && num(p.y) ? dragOut(point, { x: p.x, y: p.y }) : click(point);
15066
+ }
15067
+ };
15068
+ var placeImage = (p, controller) => {
15069
+ const doc = controller.getState().document;
15070
+ const x = num(p.x) ? p.x : 0;
15071
+ const y = num(p.y) ? p.y : 0;
15072
+ const w = num(p.width) ? p.width : doc.width - x;
15073
+ return dragOut({ x, y }, { x: x + w, y: y + w });
15074
+ };
15075
+ function withVectorPlayback(controller, prefix, commands) {
15076
+ return commands.map((spec) => {
15077
+ if (!spec.id.startsWith(prefix)) return spec;
15078
+ const name = spec.id.slice(prefix.length);
15079
+ const props = _nullishCoalesce(_optionalChain([spec, 'access', _614 => _614.params, 'optionalAccess', _615 => _615.properties]), () => ( {}));
15080
+ const planner = _nullishCoalesce(PLANS[name], () => ( (/Image$/.test(name) && "x" in props && "width" in props ? placeImage : void 0)));
15081
+ const surface = _nullishCoalesce(_nullishCoalesce(spec.playbackSurface, () => ( spec.scope)), () => ( "vector"));
15082
+ if (!planner || spec.plan) return { ...spec, playbackSurface: surface };
15083
+ return {
15084
+ ...spec,
15085
+ playbackSurface: surface,
15086
+ plan: (_ctx, params) => planner(_nullishCoalesce(params, () => ( {})), controller)
15087
+ };
15088
+ });
15089
+ }
15090
+
14977
15091
  // src/vector/commands.ts
14978
15092
  var EFFECT_PARAMS_DESCRIPTION = "Effect parameters (missing ones keep their value or default). trim: start, end (percent), offset (degrees), mode simultaneous|individual. roundCorners: radius. puckerBloat: amount (\u2212100\u2026100). twist: angle, center {x, y} (offset from the middle). zigzag: size, ridges, smooth. wiggle: size, detail, smooth, speed, correlation, phase, seed, time (seconds). offset: amount, join miter|round|bevel, miterLimit, copies, copyOffset. merge: mode merge|add|subtract|intersect|exclude. repeater: copies (fractions fade the last), offset, position {x, y}, anchor {x, y} (offset from the middle), rotation, scale {x, y} (percent), startOpacity, endOpacity (percent), composite below|above. contour: direction inside|outside|center, steps, offset, fillColor / strokeColor (end colours, null keeps the colour), acceleration (\u2212100\u2026100), join. blockShadow: angle (degrees, 0 right, 90 down), distance, color (null: the shape fill colour), opacity, endOpacity (percent; lower than opacity fades it into a long shadow). extrude: mode parallel|perspective, angle (degrees) and depth (units) for parallel, vanishingPoint {x, y} (offset from the middle) and toward (percent of the way there) for perspective, color (null: the shape fill colour), lightAngle (degrees the light comes from, 0 right, -90 above), shading (percent). bevel: width (units), lightAngle (degrees), shading (percent), color (null: the shape fill colour). envelope: style (a warp preset: arc|arcLower|arcUpper|arch|bulge|shellLower|shellUpper|flag|wave|fish|rise|fisheye|inflate|squeeze|twist, or mesh), bend, horizontal, vertical (percent, \u2212100\u2026100), orientation horizontal|vertical, rows, columns, mesh { us, vs, points } (node space; prefer vector.envelope).";
14979
15093
  var fail = (message) => {
@@ -15017,9 +15131,9 @@ var BLEND_PROPS = {
15017
15131
  linear: { type: "boolean", description: "Move anchors in straight lines instead of the rotation-aware morph." }
15018
15132
  };
15019
15133
  var checkBlendOptions = (params) => {
15020
- if (_optionalChain([params, 'optionalAccess', _611 => _611.spacing]) !== void 0 && !_chunkHRI3ZMDMcjs.VECTOR_BLEND_SPACINGS.includes(params.spacing)) fail(`Unknown blend spacing "${params.spacing}".`);
15021
- if (_optionalChain([params, 'optionalAccess', _612 => _612.steps]) !== void 0 && !(Number.isFinite(params.steps) && params.steps >= 1)) fail("steps must be at least 1.");
15022
- if (_optionalChain([params, 'optionalAccess', _613 => _613.distance]) !== void 0 && !(Number.isFinite(params.distance) && params.distance > 0)) fail("distance must be positive.");
15134
+ if (_optionalChain([params, 'optionalAccess', _616 => _616.spacing]) !== void 0 && !_chunkHRI3ZMDMcjs.VECTOR_BLEND_SPACINGS.includes(params.spacing)) fail(`Unknown blend spacing "${params.spacing}".`);
15135
+ if (_optionalChain([params, 'optionalAccess', _617 => _617.steps]) !== void 0 && !(Number.isFinite(params.steps) && params.steps >= 1)) fail("steps must be at least 1.");
15136
+ if (_optionalChain([params, 'optionalAccess', _618 => _618.distance]) !== void 0 && !(Number.isFinite(params.distance) && params.distance > 0)) fail("distance must be positive.");
15023
15137
  };
15024
15138
  var POINT = { type: "object", properties: { x: { type: "number" }, y: { type: "number" } }, required: ["x", "y"] };
15025
15139
  var GRADIENT_PROPS = {
@@ -15122,22 +15236,22 @@ function createVectorCommands(controller, options = {}) {
15122
15236
  const base = { group, ...options.scope ? { scope: options.scope } : {} };
15123
15237
  const parentOf = (parentId) => {
15124
15238
  if (parentId === void 0) return {};
15125
- if (_optionalChain([controller, 'access', _614 => _614.getNode, 'call', _615 => _615(parentId), 'optionalAccess', _616 => _616.type]) !== "group") fail(`"${parentId}" is not a group to add into.`);
15239
+ if (_optionalChain([controller, 'access', _619 => _619.getNode, 'call', _620 => _620(parentId), 'optionalAccess', _621 => _621.type]) !== "group") fail(`"${parentId}" is not a group to add into.`);
15126
15240
  return { parentId };
15127
15241
  };
15128
15242
  const hasSelection = () => controller.getState().selection.length ? true : "Nothing is selected.";
15129
15243
  const ids = (params) => {
15130
- const list2 = _nullishCoalesce(_optionalChain([params, 'optionalAccess', _617 => _617.ids]), () => ( controller.getState().selection));
15244
+ const list2 = _nullishCoalesce(_optionalChain([params, 'optionalAccess', _622 => _622.ids]), () => ( controller.getState().selection));
15131
15245
  for (const id of list2) if (!controller.getNode(id)) fail(`There is no node "${id}".`);
15132
15246
  if (!list2.length) fail("Nothing is selected; pass ids.");
15133
15247
  return list2;
15134
15248
  };
15135
- const enabledFor = (_, params) => _optionalChain([params, 'optionalAccess', _618 => _618.ids, 'optionalAccess', _619 => _619.length]) ? true : hasSelection();
15249
+ const enabledFor = (_, params) => _optionalChain([params, 'optionalAccess', _623 => _623.ids, 'optionalAccess', _624 => _624.length]) ? true : hasSelection();
15136
15250
  const anchorsOf = (refs) => {
15137
15251
  if (!refs) return [...controller.getState().selectedAnchors];
15138
15252
  for (const r of refs) {
15139
15253
  const node = controller.getNode(r.nodeId);
15140
- if (_optionalChain([node, 'optionalAccess', _620 => _620.type]) !== "path" || !_optionalChain([node, 'access', _621 => _621.subpaths, 'access', _622 => _622[r.subpath], 'optionalAccess', _623 => _623.anchors, 'access', _624 => _624[r.index]])) fail(`There is no anchor ${r.index} on subpath ${r.subpath} of "${r.nodeId}".`);
15254
+ if (_optionalChain([node, 'optionalAccess', _625 => _625.type]) !== "path" || !_optionalChain([node, 'access', _626 => _626.subpaths, 'access', _627 => _627[r.subpath], 'optionalAccess', _628 => _628.anchors, 'access', _629 => _629[r.index]])) fail(`There is no anchor ${r.index} on subpath ${r.subpath} of "${r.nodeId}".`);
15141
15255
  }
15142
15256
  return refs;
15143
15257
  };
@@ -15161,13 +15275,13 @@ function createVectorCommands(controller, options = {}) {
15161
15275
  ...n2.type === "path" ? { fill: _nullishCoalesce(n2.fill, () => ( null)), stroke: _nullishCoalesce(n2.stroke, () => ( null)), strokeWidth: _nullishCoalesce(n2.strokeWidth, () => ( 1)), d: _chunkHRI3ZMDMcjs.vectorPathData.call(void 0, n2, 2) } : n2.type === "text" ? { fill: _nullishCoalesce(n2.fill, () => ( null)), stroke: _nullishCoalesce(n2.stroke, () => ( null)), strokeWidth: _nullishCoalesce(n2.strokeWidth, () => ( 1)), text: n2.text, frame: n2.frame.kind } : n2.type === "instance" ? { symbolId: n2.symbolId, ...n2.transform ? { transform: [...n2.transform] } : {}, ...n2.overrides ? { overrides: n2.overrides } : {} } : { children: n2.children.length },
15162
15276
  ...n2.type === "group" && n2.blend ? { blend: { ...resolveVectorBlendOptions(n2.blend), spine: !!n2.blend.spine, keys: vectorBlendKeys(n2).map((k) => k.id) } } : {},
15163
15277
  ...n2.blendStep ? { blendStep: true } : {},
15164
- ..._optionalChain([n2, 'access', _625 => _625.effects, 'optionalAccess', _626 => _626.length]) ? { effects: n2.effects } : {},
15278
+ ..._optionalChain([n2, 'access', _630 => _630.effects, 'optionalAccess', _631 => _631.length]) ? { effects: n2.effects } : {},
15165
15279
  ...n2.type === "group" && n2.liveBoolean ? { liveBoolean: n2.liveBoolean } : {},
15166
15280
  ...n2.booleanOperation ? { booleanOperation: n2.booleanOperation } : {},
15167
15281
  ...(n2.type === "path" || n2.type === "text") && Array.isArray(n2.fills) ? { fills: n2.fills } : {},
15168
15282
  ...(n2.type === "path" || n2.type === "text") && Array.isArray(n2.strokes) ? { strokes: n2.strokes } : {},
15169
15283
  ...n2.blendMode && n2.blendMode !== "normal" ? { blendMode: n2.blendMode } : {},
15170
- ..._optionalChain([n2, 'access', _627 => _627.filters, 'optionalAccess', _628 => _628.length]) ? { filters: n2.filters } : {},
15284
+ ..._optionalChain([n2, 'access', _632 => _632.filters, 'optionalAccess', _633 => _633.length]) ? { filters: n2.filters } : {},
15171
15285
  ..._chunkHRI3ZMDMcjs.isVectorMaskGroup.call(void 0, n2) ? { mask: _chunkHRI3ZMDMcjs.vectorMaskSummary.call(void 0, n2) } : {},
15172
15286
  ..._chunkHRI3ZMDMcjs.isVectorFrame.call(void 0, n2) ? { frameRect: n2.frame } : {},
15173
15287
  ...n2.resizing ? { resizing: n2.resizing } : {},
@@ -15243,7 +15357,7 @@ function createVectorCommands(controller, options = {}) {
15243
15357
  enabled: enabledFor,
15244
15358
  run: (_ctx, params) => {
15245
15359
  const targets = ids(params);
15246
- check2(controller.addPaintLayer(kind, layerPatchOf(_nullishCoalesce(params, () => ( {})), keys), { ids: targets, index: _optionalChain([params, 'optionalAccess', _629 => _629.index]) }));
15360
+ check2(controller.addPaintLayer(kind, layerPatchOf(_nullishCoalesce(params, () => ( {})), keys), { ids: targets, index: _optionalChain([params, 'optionalAccess', _634 => _634.index]) }));
15247
15361
  return { nodes: pathsUnder(targets).map((id) => stackResult(id, kind)) };
15248
15362
  }
15249
15363
  },
@@ -15316,17 +15430,17 @@ function createVectorCommands(controller, options = {}) {
15316
15430
  const allowed = _chunkHRI3ZMDMcjs.vectorFilterParamKeys.call(void 0, type);
15317
15431
  for (const key of Object.keys(_nullishCoalesce(params, () => ( {})))) if (!allowed.includes(key)) fail(`${type} has no parameter "${key}"; it takes ${allowed.join(", ")}.`);
15318
15432
  };
15319
- const filtersResult = (id) => ({ id, filters: _nullishCoalesce(_optionalChain([controller, 'access', _630 => _630.getNode, 'call', _631 => _631(id), 'optionalAccess', _632 => _632.filters]), () => ( [])) });
15433
+ const filtersResult = (id) => ({ id, filters: _nullishCoalesce(_optionalChain([controller, 'access', _635 => _635.getNode, 'call', _636 => _636(id), 'optionalAccess', _637 => _637.filters]), () => ( [])) });
15320
15434
  const filterOf = (nodeId, filterId) => {
15321
15435
  const node = _nullishCoalesce(controller.getNode(nodeId), () => ( fail(`There is no node "${nodeId}".`)));
15322
- return _nullishCoalesce(_optionalChain([node, 'access', _633 => _633.filters, 'optionalAccess', _634 => _634.find, 'call', _635 => _635((f) => f.id === filterId)]), () => ( fail(`Node "${nodeId}" has no filter "${filterId}"; it has ${(_nullishCoalesce(node.filters, () => ( []))).map((f) => `"${f.id}" (${f.type})`).join(", ") || "none"}.`)));
15436
+ return _nullishCoalesce(_optionalChain([node, 'access', _638 => _638.filters, 'optionalAccess', _639 => _639.find, 'call', _640 => _640((f) => f.id === filterId)]), () => ( fail(`Node "${nodeId}" has no filter "${filterId}"; it has ${(_nullishCoalesce(node.filters, () => ( []))).map((f) => `"${f.id}" (${f.type})`).join(", ") || "none"}.`)));
15323
15437
  };
15324
15438
  const maskResult = (id) => ({ id, mask: _nullishCoalesce(_chunkHRI3ZMDMcjs.vectorMaskSummary.call(void 0, controller.getNode(id)), () => ( fail(`"${id}" is not a mask group.`))) });
15325
15439
  const maskInputs = (params) => {
15326
15440
  const list2 = [...new Set(ids(params))];
15327
15441
  if (list2.length < 2) fail(`Masking needs at least two objects (the mask and what it masks); got ${list2.length}. Pass ids, or select more.`);
15328
15442
  for (const id of list2) if (controller.getNode(id).locked) fail(`"${id}" is locked; ask the user to unlock it, or leave it out of ids.`);
15329
- if (_optionalChain([params, 'optionalAccess', _636 => _636.maskId]) !== void 0 && !list2.includes(params.maskId)) fail(`maskId "${params.maskId}" must be one of ids (${list2.map((id) => `"${id}"`).join(", ")}).`);
15443
+ if (_optionalChain([params, 'optionalAccess', _641 => _641.maskId]) !== void 0 && !list2.includes(params.maskId)) fail(`maskId "${params.maskId}" must be one of ids (${list2.map((id) => `"${id}"`).join(", ")}).`);
15330
15444
  return list2;
15331
15445
  };
15332
15446
  const maskTargets = (params) => {
@@ -15353,7 +15467,7 @@ function createVectorCommands(controller, options = {}) {
15353
15467
  enabled: enabledFor,
15354
15468
  run: (_ctx, params) => {
15355
15469
  const list2 = maskInputs(params);
15356
- const r = controller.makeMask("clip", { ids: list2, ..._optionalChain([params, 'optionalAccess', _637 => _637.maskId]) ? { maskId: params.maskId } : {}, invert: _optionalChain([params, 'optionalAccess', _638 => _638.invert]) });
15470
+ const r = controller.makeMask("clip", { ids: list2, ..._optionalChain([params, 'optionalAccess', _642 => _642.maskId]) ? { maskId: params.maskId } : {}, invert: _optionalChain([params, 'optionalAccess', _643 => _643.invert]) });
15357
15471
  if (!r.ok) fail(r.message);
15358
15472
  return maskResult(r.id);
15359
15473
  }
@@ -15373,7 +15487,7 @@ function createVectorCommands(controller, options = {}) {
15373
15487
  enabled: enabledFor,
15374
15488
  run: (_ctx, params) => {
15375
15489
  const list2 = maskInputs(params);
15376
- const r = controller.makeMask(_nullishCoalesce(_optionalChain([params, 'optionalAccess', _639 => _639.type]), () => ( "luminance")), { ids: list2, ..._optionalChain([params, 'optionalAccess', _640 => _640.maskId]) ? { maskId: params.maskId } : {}, invert: _optionalChain([params, 'optionalAccess', _641 => _641.invert]) });
15490
+ const r = controller.makeMask(_nullishCoalesce(_optionalChain([params, 'optionalAccess', _644 => _644.type]), () => ( "luminance")), { ids: list2, ..._optionalChain([params, 'optionalAccess', _645 => _645.maskId]) ? { maskId: params.maskId } : {}, invert: _optionalChain([params, 'optionalAccess', _646 => _646.invert]) });
15377
15491
  if (!r.ok) fail(r.message);
15378
15492
  return maskResult(r.id);
15379
15493
  }
@@ -15397,9 +15511,9 @@ function createVectorCommands(controller, options = {}) {
15397
15511
  undoable: true,
15398
15512
  enabled: enabledFor,
15399
15513
  run: (_ctx, params) => {
15400
- if (_optionalChain([params, 'optionalAccess', _642 => _642.type]) === void 0 && _optionalChain([params, 'optionalAccess', _643 => _643.invert]) === void 0 && _optionalChain([params, 'optionalAccess', _644 => _644.enabled]) === void 0) fail("Pass at least one of type, invert, enabled.");
15514
+ if (_optionalChain([params, 'optionalAccess', _647 => _647.type]) === void 0 && _optionalChain([params, 'optionalAccess', _648 => _648.invert]) === void 0 && _optionalChain([params, 'optionalAccess', _649 => _649.enabled]) === void 0) fail("Pass at least one of type, invert, enabled.");
15401
15515
  const groups = maskTargets(params);
15402
- const patch = { ..._optionalChain([params, 'optionalAccess', _645 => _645.type]) ? { type: params.type } : {}, ..._optionalChain([params, 'optionalAccess', _646 => _646.invert]) !== void 0 ? { invert: params.invert } : {}, ..._optionalChain([params, 'optionalAccess', _647 => _647.enabled]) !== void 0 ? { enabled: params.enabled } : {} };
15516
+ const patch = { ..._optionalChain([params, 'optionalAccess', _650 => _650.type]) ? { type: params.type } : {}, ..._optionalChain([params, 'optionalAccess', _651 => _651.invert]) !== void 0 ? { invert: params.invert } : {}, ..._optionalChain([params, 'optionalAccess', _652 => _652.enabled]) !== void 0 ? { enabled: params.enabled } : {} };
15403
15517
  check2(controller.setMaskOptions(patch, { ids: groups }));
15404
15518
  return { groups: groups.map(maskResult) };
15405
15519
  }
@@ -15450,7 +15564,7 @@ function createVectorCommands(controller, options = {}) {
15450
15564
  run: (_ctx, params) => {
15451
15565
  const targets = ids(params);
15452
15566
  check2(controller.setBlendMode(params.blendMode, { ids: targets }));
15453
- return { nodes: targets.map((id) => ({ id, blendMode: _nullishCoalesce(_optionalChain([controller, 'access', _648 => _648.getNode, 'call', _649 => _649(id), 'optionalAccess', _650 => _650.blendMode]), () => ( "normal")) })) };
15567
+ return { nodes: targets.map((id) => ({ id, blendMode: _nullishCoalesce(_optionalChain([controller, 'access', _653 => _653.getNode, 'call', _654 => _654(id), 'optionalAccess', _655 => _655.blendMode]), () => ( "normal")) })) };
15454
15568
  }
15455
15569
  },
15456
15570
  {
@@ -15857,7 +15971,7 @@ function createVectorCommands(controller, options = {}) {
15857
15971
  keywords: ["symbol", "symbols", "library", "component", "reuse", "instance"],
15858
15972
  description: "Lists the document's symbols: id, name, the art's nodes (ids, types, names; use them for hidden overrides), its bounds in symbol space (around the registration point at 0, 0) and the ids of its instances. Also says which symbol is being edited in isolation, if any.",
15859
15973
  params: { type: "object", properties: {}, additionalProperties: false },
15860
- run: () => ({ symbols: controller.getSymbols().map((x) => symbolSummary(x.id)), editing: _nullishCoalesce(_optionalChain([controller, 'access', _651 => _651.getState, 'call', _652 => _652(), 'access', _653 => _653.symbolEdit, 'optionalAccess', _654 => _654.symbolId]), () => ( null)) })
15974
+ run: () => ({ symbols: controller.getSymbols().map((x) => symbolSummary(x.id)), editing: _nullishCoalesce(_optionalChain([controller, 'access', _656 => _656.getState, 'call', _657 => _657(), 'access', _658 => _658.symbolEdit, 'optionalAccess', _659 => _659.symbolId]), () => ( null)) })
15861
15975
  },
15862
15976
  {
15863
15977
  ...base,
@@ -15870,7 +15984,7 @@ function createVectorCommands(controller, options = {}) {
15870
15984
  undoable: true,
15871
15985
  enabled: enabledFor,
15872
15986
  run: (_ctx, params) => {
15873
- const r = controller.makeSymbol({ ids: ids(params), ..._optionalChain([params, 'optionalAccess', _655 => _655.name]) ? { name: params.name } : {} });
15987
+ const r = controller.makeSymbol({ ids: ids(params), ..._optionalChain([params, 'optionalAccess', _660 => _660.name]) ? { name: params.name } : {} });
15874
15988
  check2(r);
15875
15989
  return { symbolId: r.symbolId, instanceId: r.instanceId, symbol: symbolSummary(r.symbolId) };
15876
15990
  }
@@ -15927,10 +16041,10 @@ function createVectorCommands(controller, options = {}) {
15927
16041
  enabled: enabledFor,
15928
16042
  run: (_ctx, params) => {
15929
16043
  const patch = {
15930
- ..._optionalChain([params, 'optionalAccess', _656 => _656.scaleStrokes]) !== void 0 ? { scaleStrokes: params.scaleStrokes } : {},
15931
- ..._optionalChain([params, 'optionalAccess', _657 => _657.fill]) !== void 0 ? { fill: params.fill === null ? null : checkPaint(params.fill, "fill") } : {},
15932
- ..._optionalChain([params, 'optionalAccess', _658 => _658.stroke]) !== void 0 ? { stroke: params.stroke === null ? null : checkPaint(params.stroke, "stroke") } : {},
15933
- ..._optionalChain([params, 'optionalAccess', _659 => _659.hidden]) !== void 0 ? { hidden: params.hidden } : {}
16044
+ ..._optionalChain([params, 'optionalAccess', _661 => _661.scaleStrokes]) !== void 0 ? { scaleStrokes: params.scaleStrokes } : {},
16045
+ ..._optionalChain([params, 'optionalAccess', _662 => _662.fill]) !== void 0 ? { fill: params.fill === null ? null : checkPaint(params.fill, "fill") } : {},
16046
+ ..._optionalChain([params, 'optionalAccess', _663 => _663.stroke]) !== void 0 ? { stroke: params.stroke === null ? null : checkPaint(params.stroke, "stroke") } : {},
16047
+ ..._optionalChain([params, 'optionalAccess', _664 => _664.hidden]) !== void 0 ? { hidden: params.hidden } : {}
15934
16048
  };
15935
16049
  if (!Object.keys(patch).length) fail("Pass at least one of scaleStrokes, fill, stroke, hidden.");
15936
16050
  const targetIds = ids(params);
@@ -16015,7 +16129,7 @@ function createVectorCommands(controller, options = {}) {
16015
16129
  params: { type: "object", properties: {}, additionalProperties: false },
16016
16130
  enabled: () => controller.getState().symbolEdit ? true : "No symbol is being edited.",
16017
16131
  run: () => {
16018
- const id = _nullishCoalesce(_optionalChain([controller, 'access', _660 => _660.getState, 'call', _661 => _661(), 'access', _662 => _662.symbolEdit, 'optionalAccess', _663 => _663.symbolId]), () => ( null));
16132
+ const id = _nullishCoalesce(_optionalChain([controller, 'access', _665 => _665.getState, 'call', _666 => _666(), 'access', _667 => _667.symbolEdit, 'optionalAccess', _668 => _668.symbolId]), () => ( null));
16019
16133
  controller.exitSymbolEdit();
16020
16134
  return { symbolId: id };
16021
16135
  }
@@ -16044,7 +16158,7 @@ function createVectorCommands(controller, options = {}) {
16044
16158
  let current = null;
16045
16159
  try {
16046
16160
  current = c.kind === "distance" || c.kind === "angle" || c.kind === "radius" || c.kind === "diameter" ? round2(vectorConstraintValue(env, c)) : null;
16047
- } catch (e12) {
16161
+ } catch (e13) {
16048
16162
  current = null;
16049
16163
  }
16050
16164
  const r = residuals.get(c.id);
@@ -16064,7 +16178,7 @@ function createVectorCommands(controller, options = {}) {
16064
16178
  };
16065
16179
  const symmetryResult = (id) => {
16066
16180
  const n2 = controller.getNode(id);
16067
- return _optionalChain([n2, 'optionalAccess', _664 => _664.type]) === "group" && n2.symmetry ? { id, symmetry: n2.symmetry, children: n2.children.map((c) => c.id) } : fail(`"${id}" is not a symmetry group.`);
16181
+ return _optionalChain([n2, 'optionalAccess', _669 => _669.type]) === "group" && n2.symmetry ? { id, symmetry: n2.symmetry, children: n2.children.map((c) => c.id) } : fail(`"${id}" is not a symmetry group.`);
16068
16182
  };
16069
16183
  const symmetryCommands = () => [
16070
16184
  {
@@ -16094,8 +16208,8 @@ function createVectorCommands(controller, options = {}) {
16094
16208
  const { ids: list2, ...patch } = _nullishCoalesce(params, () => ( {}));
16095
16209
  if (!Object.keys(patch).length) fail("Pass at least one of mode, center, rotation, copies, mirror.");
16096
16210
  check2(controller.setSymmetry(patch, list2 ? { ids: list2 } : {}));
16097
- const ids2 = _nullishCoalesce(list2, () => ( controller.getState().selection.filter((id) => _optionalChain([controller, 'access', _665 => _665.getNode, 'call', _666 => _666(id), 'optionalAccess', _667 => _667.type]) === "group")));
16098
- return { groups: ids2.filter((id) => _optionalChain([controller, 'access', _668 => _668.getNode, 'call', _669 => _669(id), 'optionalAccess', _670 => _670.symmetry])).map(symmetryResult) };
16211
+ const ids2 = _nullishCoalesce(list2, () => ( controller.getState().selection.filter((id) => _optionalChain([controller, 'access', _670 => _670.getNode, 'call', _671 => _671(id), 'optionalAccess', _672 => _672.type]) === "group")));
16212
+ return { groups: ids2.filter((id) => _optionalChain([controller, 'access', _673 => _673.getNode, 'call', _674 => _674(id), 'optionalAccess', _675 => _675.symmetry])).map(symmetryResult) };
16099
16213
  }
16100
16214
  },
16101
16215
  {
@@ -16108,7 +16222,7 @@ function createVectorCommands(controller, options = {}) {
16108
16222
  undoable: true,
16109
16223
  enabled: enabledFor,
16110
16224
  run: (_ctx, params) => {
16111
- const r = controller.releaseSymmetry({ ..._optionalChain([params, 'optionalAccess', _671 => _671.ids]) ? { ids: params.ids } : {}, ..._optionalChain([params, 'optionalAccess', _672 => _672.expand]) ? { expand: true } : {} });
16225
+ const r = controller.releaseSymmetry({ ..._optionalChain([params, 'optionalAccess', _676 => _676.ids]) ? { ids: params.ids } : {}, ..._optionalChain([params, 'optionalAccess', _677 => _677.expand]) ? { expand: true } : {} });
16112
16226
  check2(r);
16113
16227
  return { ids: _nullishCoalesce(r.ids, () => ( [])) };
16114
16228
  }
@@ -16176,7 +16290,7 @@ function createVectorCommands(controller, options = {}) {
16176
16290
  undoable: true,
16177
16291
  enabled: enabledFor,
16178
16292
  run: (_ctx, params) => {
16179
- const r = controller.setLens(null, _optionalChain([params, 'optionalAccess', _673 => _673.ids]) ? { ids: params.ids } : {});
16293
+ const r = controller.setLens(null, _optionalChain([params, 'optionalAccess', _678 => _678.ids]) ? { ids: params.ids } : {});
16180
16294
  check2(r);
16181
16295
  return { ids: (_nullishCoalesce(r.lenses, () => ( []))).map((l) => l.id) };
16182
16296
  }
@@ -16357,7 +16471,7 @@ function createVectorCommands(controller, options = {}) {
16357
16471
  const paths = [];
16358
16472
  for (const id of targets) {
16359
16473
  const n2 = controller.getNode(id);
16360
- if (_optionalChain([n2, 'optionalAccess', _674 => _674.type]) === "path") paths.push(stackResult(id, "stroke"));
16474
+ if (_optionalChain([n2, 'optionalAccess', _679 => _679.type]) === "path") paths.push(stackResult(id, "stroke"));
16361
16475
  }
16362
16476
  return { paths };
16363
16477
  }
@@ -16437,7 +16551,7 @@ function createVectorCommands(controller, options = {}) {
16437
16551
  additionalProperties: false
16438
16552
  },
16439
16553
  run: (_ctx, params) => {
16440
- if (_optionalChain([params, 'optionalAccess', _675 => _675.ids])) {
16554
+ if (_optionalChain([params, 'optionalAccess', _680 => _680.ids])) {
16441
16555
  for (const id of params.ids) if (!controller.getNode(id)) fail(`There is no node "${id}".`);
16442
16556
  }
16443
16557
  return controller.toLottie(_nullishCoalesce(params, () => ( {})));
@@ -16800,7 +16914,7 @@ function createVectorCommands(controller, options = {}) {
16800
16914
  run: (_ctx, params) => {
16801
16915
  const { polarIncrement, additionalAngles, ...rest } = _nullishCoalesce(params, () => ( {}));
16802
16916
  if (!Object.keys(_nullishCoalesce(params, () => ( {}))).length) fail("Pass at least one option.");
16803
- if (_optionalChain([rest, 'access', _676 => _676.angles, 'optionalAccess', _677 => _677.some, 'call', _678 => _678((a) => !Number.isFinite(a))])) fail("angles must be numbers (degrees).");
16917
+ if (_optionalChain([rest, 'access', _681 => _681.angles, 'optionalAccess', _682 => _682.some, 'call', _683 => _683((a) => !Number.isFinite(a))])) fail("angles must be numbers (degrees).");
16804
16918
  if (additionalAngles && polarIncrement === void 0) fail("additionalAngles go with polarIncrement.");
16805
16919
  const angles = _nullishCoalesce(rest.angles, () => ( (polarIncrement !== void 0 ? vectorPolarAngles(polarIncrement, additionalAngles) : void 0)));
16806
16920
  controller.setSnap({ ...rest, ...angles ? { angles } : {} });
@@ -17154,8 +17268,8 @@ function createVectorCommands(controller, options = {}) {
17154
17268
  enabled: enabledFor,
17155
17269
  run: (_ctx, params) => {
17156
17270
  const list2 = ids(params);
17157
- check2(controller.setResizing({ ..._optionalChain([params, 'optionalAccess', _679 => _679.horizontal]) ? { horizontal: params.horizontal } : {}, ..._optionalChain([params, 'optionalAccess', _680 => _680.vertical]) ? { vertical: params.vertical } : {} }, { ids: list2 }));
17158
- return { nodes: list2.map((id) => ({ id, horizontal: _nullishCoalesce(_optionalChain([controller, 'access', _681 => _681.getNode, 'call', _682 => _682(id), 'optionalAccess', _683 => _683.resizing, 'optionalAccess', _684 => _684.horizontal]), () => ( "left")), vertical: _nullishCoalesce(_optionalChain([controller, 'access', _685 => _685.getNode, 'call', _686 => _686(id), 'optionalAccess', _687 => _687.resizing, 'optionalAccess', _688 => _688.vertical]), () => ( "top")) })) };
17271
+ check2(controller.setResizing({ ..._optionalChain([params, 'optionalAccess', _684 => _684.horizontal]) ? { horizontal: params.horizontal } : {}, ..._optionalChain([params, 'optionalAccess', _685 => _685.vertical]) ? { vertical: params.vertical } : {} }, { ids: list2 }));
17272
+ return { nodes: list2.map((id) => ({ id, horizontal: _nullishCoalesce(_optionalChain([controller, 'access', _686 => _686.getNode, 'call', _687 => _687(id), 'optionalAccess', _688 => _688.resizing, 'optionalAccess', _689 => _689.horizontal]), () => ( "left")), vertical: _nullishCoalesce(_optionalChain([controller, 'access', _690 => _690.getNode, 'call', _691 => _691(id), 'optionalAccess', _692 => _692.resizing, 'optionalAccess', _693 => _693.vertical]), () => ( "top")) })) };
17159
17273
  }
17160
17274
  },
17161
17275
  {
@@ -17275,7 +17389,7 @@ function createVectorCommands(controller, options = {}) {
17275
17389
  }
17276
17390
  }
17277
17391
  ];
17278
- return [
17392
+ return withVectorPlayback(controller, prefix, [
17279
17393
  {
17280
17394
  ...base,
17281
17395
  id: `${prefix}list`,
@@ -17341,7 +17455,7 @@ function createVectorCommands(controller, options = {}) {
17341
17455
  run: (_ctx, params) => {
17342
17456
  const id = controller.addPath(params.d, { ...pickStyle(params), ...params.name ? { name: params.name } : {} }, parentOf(params.parentId));
17343
17457
  const node = controller.getNode(id);
17344
- if (_optionalChain([node, 'optionalAccess', _689 => _689.type]) === "path" && !node.subpaths.length) {
17458
+ if (_optionalChain([node, 'optionalAccess', _694 => _694.type]) === "path" && !node.subpaths.length) {
17345
17459
  controller.undo();
17346
17460
  fail("The path data has no points.");
17347
17461
  }
@@ -17380,7 +17494,7 @@ function createVectorCommands(controller, options = {}) {
17380
17494
  check2(controller.setGradient(patch, { ids: ids(params), target: _nullishCoalesce(target, () => ( "fill")) }));
17381
17495
  const id = ids(params)[0];
17382
17496
  const node = id ? controller.getNode(id) : void 0;
17383
- const path = _optionalChain([node, 'optionalAccess', _690 => _690.type]) === "path" ? node : void 0;
17497
+ const path = _optionalChain([node, 'optionalAccess', _695 => _695.type]) === "path" ? node : void 0;
17384
17498
  return { ok: true, ...path ? { gradient: path[_nullishCoalesce(target, () => ( "fill"))] } : {} };
17385
17499
  }
17386
17500
  },
@@ -17420,12 +17534,12 @@ function createVectorCommands(controller, options = {}) {
17420
17534
  },
17421
17535
  undoable: true,
17422
17536
  run: (_ctx, params) => {
17423
- const refs = _optionalChain([params, 'optionalAccess', _691 => _691.anchors]) ? anchorsOf(params.anchors) : void 0;
17424
- const target = { refs, ids: _optionalChain([params, 'optionalAccess', _692 => _692.ids]) ? ids(params) : void 0 };
17425
- if (_optionalChain([params, 'optionalAccess', _693 => _693.radius]) !== void 0) check2(controller.setCornerRadius(params.radius, { ...target, kind: params.kind, ...params.smoothing !== void 0 ? { smoothing: params.smoothing } : {} }));
17426
- else if (_optionalChain([params, 'optionalAccess', _694 => _694.kind])) check2(controller.setCornerKind(params.kind, target));
17427
- if (_optionalChain([params, 'optionalAccess', _695 => _695.radius]) === void 0 && _optionalChain([params, 'optionalAccess', _696 => _696.smoothing]) !== void 0) check2(controller.setCornerSmoothing(params.smoothing, target));
17428
- if (_optionalChain([params, 'optionalAccess', _697 => _697.radius]) === void 0 && !_optionalChain([params, 'optionalAccess', _698 => _698.kind]) && _optionalChain([params, 'optionalAccess', _699 => _699.smoothing]) === void 0) fail("Pass `radius`, `kind` and / or `smoothing`.");
17537
+ const refs = _optionalChain([params, 'optionalAccess', _696 => _696.anchors]) ? anchorsOf(params.anchors) : void 0;
17538
+ const target = { refs, ids: _optionalChain([params, 'optionalAccess', _697 => _697.ids]) ? ids(params) : void 0 };
17539
+ if (_optionalChain([params, 'optionalAccess', _698 => _698.radius]) !== void 0) check2(controller.setCornerRadius(params.radius, { ...target, kind: params.kind, ...params.smoothing !== void 0 ? { smoothing: params.smoothing } : {} }));
17540
+ else if (_optionalChain([params, 'optionalAccess', _699 => _699.kind])) check2(controller.setCornerKind(params.kind, target));
17541
+ if (_optionalChain([params, 'optionalAccess', _700 => _700.radius]) === void 0 && _optionalChain([params, 'optionalAccess', _701 => _701.smoothing]) !== void 0) check2(controller.setCornerSmoothing(params.smoothing, target));
17542
+ if (_optionalChain([params, 'optionalAccess', _702 => _702.radius]) === void 0 && !_optionalChain([params, 'optionalAccess', _703 => _703.kind]) && _optionalChain([params, 'optionalAccess', _704 => _704.smoothing]) === void 0) fail("Pass `radius`, `kind` and / or `smoothing`.");
17429
17543
  return { ok: true };
17430
17544
  }
17431
17545
  },
@@ -17459,12 +17573,12 @@ function createVectorCommands(controller, options = {}) {
17459
17573
  undoable: true,
17460
17574
  run: (_ctx, params) => {
17461
17575
  const target = { ids: ids(params) };
17462
- if (_optionalChain([params, 'optionalAccess', _700 => _700.preset])) check2(controller.setWidthProfile(params.preset, target));
17463
- else if (_optionalChain([params, 'optionalAccess', _701 => _701.points]) !== void 0) check2(controller.setWidthProfile(_nullishCoalesce(params.points, () => ( null)), target));
17464
- else if (_optionalChain([params, 'optionalAccess', _702 => _702.taper]) || _optionalChain([params, 'optionalAccess', _703 => _703.wave])) check2(controller.setWidthProfile({ taper: params.taper, wave: params.wave }, target));
17576
+ if (_optionalChain([params, 'optionalAccess', _705 => _705.preset])) check2(controller.setWidthProfile(params.preset, target));
17577
+ else if (_optionalChain([params, 'optionalAccess', _706 => _706.points]) !== void 0) check2(controller.setWidthProfile(_nullishCoalesce(params.points, () => ( null)), target));
17578
+ else if (_optionalChain([params, 'optionalAccess', _707 => _707.taper]) || _optionalChain([params, 'optionalAccess', _708 => _708.wave])) check2(controller.setWidthProfile({ taper: params.taper, wave: params.wave }, target));
17465
17579
  else fail("Pass `preset`, `points`, `taper` or `wave`.");
17466
17580
  const node = controller.getNode(target.ids[0]);
17467
- return { ok: true, points: _optionalChain([node, 'optionalAccess', _704 => _704.type]) === "path" ? _nullishCoalesce(node.strokeWidthProfile, () => ( [])) : [] };
17581
+ return { ok: true, points: _optionalChain([node, 'optionalAccess', _709 => _709.type]) === "path" ? _nullishCoalesce(node.strokeWidthProfile, () => ( [])) : [] };
17468
17582
  }
17469
17583
  },
17470
17584
  {
@@ -17486,10 +17600,10 @@ function createVectorCommands(controller, options = {}) {
17486
17600
  },
17487
17601
  undoable: true,
17488
17602
  run: (_ctx, params) => {
17489
- if (!_optionalChain([params, 'optionalAccess', _705 => _705.id])) fail("Pass the path `id`.");
17603
+ if (!_optionalChain([params, 'optionalAccess', _710 => _710.id])) fail("Pass the path `id`.");
17490
17604
  check2(controller.setWidthPoint({ nodeId: params.id, index: _nullishCoalesce(params.index, () => ( null)) }, { t: params.t, left: params.left, right: params.right }));
17491
17605
  const node = controller.getNode(params.id);
17492
- return { ok: true, points: _optionalChain([node, 'optionalAccess', _706 => _706.type]) === "path" ? _nullishCoalesce(node.strokeWidthProfile, () => ( [])) : [] };
17606
+ return { ok: true, points: _optionalChain([node, 'optionalAccess', _711 => _711.type]) === "path" ? _nullishCoalesce(node.strokeWidthProfile, () => ( [])) : [] };
17493
17607
  }
17494
17608
  },
17495
17609
  {
@@ -17502,7 +17616,7 @@ function createVectorCommands(controller, options = {}) {
17502
17616
  enabled: enabledFor,
17503
17617
  undoable: true,
17504
17618
  run: (_ctx, params) => {
17505
- const created = controller.outlineStroke({ ids: _optionalChain([params, 'optionalAccess', _707 => _707.ids]) ? ids(params) : void 0 });
17619
+ const created = controller.outlineStroke({ ids: _optionalChain([params, 'optionalAccess', _712 => _712.ids]) ? ids(params) : void 0 });
17506
17620
  if (!created.length) fail("No selected path has a stroke.");
17507
17621
  return { ids: created };
17508
17622
  }
@@ -17587,7 +17701,7 @@ function createVectorCommands(controller, options = {}) {
17587
17701
  if (params.release) return { released: target, shapes: controller.releaseEnvelope({ ids: target }) };
17588
17702
  if (params.expand) return { expanded: controller.expandAppearance({ ids: target }) };
17589
17703
  if (params.topObject) {
17590
- const r = controller.makeEnvelopeWithTopObject({ ids: target, rows: _optionalChain([params, 'access', _708 => _708.mesh, 'optionalAccess', _709 => _709.rows]), columns: _optionalChain([params, 'access', _710 => _710.mesh, 'optionalAccess', _711 => _711.columns]) });
17704
+ const r = controller.makeEnvelopeWithTopObject({ ids: target, rows: _optionalChain([params, 'access', _713 => _713.mesh, 'optionalAccess', _714 => _714.rows]), columns: _optionalChain([params, 'access', _715 => _715.mesh, 'optionalAccess', _716 => _716.columns]) });
17591
17705
  check2(r);
17592
17706
  return { nodeId: r.nodeId };
17593
17707
  }
@@ -17727,7 +17841,7 @@ function createVectorCommands(controller, options = {}) {
17727
17841
  run: (_ctx, params) => {
17728
17842
  if (params.params !== void 0 || params.enabled !== void 0) check2(controller.updateEffect(params.nodeId, params.effectId, { params: params.params, enabled: params.enabled }));
17729
17843
  if (params.index !== void 0) check2(controller.moveEffect(params.nodeId, params.effectId, params.index));
17730
- return { effects: _nullishCoalesce(_optionalChain([controller, 'access', _712 => _712.getNode, 'call', _713 => _713(params.nodeId), 'optionalAccess', _714 => _714.effects]), () => ( [])) };
17844
+ return { effects: _nullishCoalesce(_optionalChain([controller, 'access', _717 => _717.getNode, 'call', _718 => _718(params.nodeId), 'optionalAccess', _719 => _719.effects]), () => ( [])) };
17731
17845
  }
17732
17846
  },
17733
17847
  {
@@ -17791,7 +17905,7 @@ function createVectorCommands(controller, options = {}) {
17791
17905
  undoable: true,
17792
17906
  run: (_ctx, params) => {
17793
17907
  checkBlendOptions(params);
17794
- const r = controller.setBlendOptions(_nullishCoalesce(params, () => ( {})), { ids: _optionalChain([params, 'optionalAccess', _715 => _715.ids]) });
17908
+ const r = controller.setBlendOptions(_nullishCoalesce(params, () => ( {})), { ids: _optionalChain([params, 'optionalAccess', _720 => _720.ids]) });
17795
17909
  if (!r.ok) fail(r.message);
17796
17910
  return { ok: true };
17797
17911
  }
@@ -17805,7 +17919,7 @@ function createVectorCommands(controller, options = {}) {
17805
17919
  params: { type: "object", properties: { ids: IDS } },
17806
17920
  undoable: true,
17807
17921
  run: (_ctx, params) => {
17808
- const groups = controller.expandBlend({ ids: _optionalChain([params, 'optionalAccess', _716 => _716.ids]) });
17922
+ const groups = controller.expandBlend({ ids: _optionalChain([params, 'optionalAccess', _721 => _721.ids]) });
17809
17923
  if (!groups.length) fail("Select a blend to expand.");
17810
17924
  return { ids: groups };
17811
17925
  }
@@ -17819,7 +17933,7 @@ function createVectorCommands(controller, options = {}) {
17819
17933
  params: { type: "object", properties: { ids: IDS } },
17820
17934
  undoable: true,
17821
17935
  run: (_ctx, params) => {
17822
- const released = controller.releaseBlend({ ids: _optionalChain([params, 'optionalAccess', _717 => _717.ids]) });
17936
+ const released = controller.releaseBlend({ ids: _optionalChain([params, 'optionalAccess', _722 => _722.ids]) });
17823
17937
  if (!released.length) fail("Select a blend to release.");
17824
17938
  return { ids: released };
17825
17939
  }
@@ -17833,7 +17947,7 @@ function createVectorCommands(controller, options = {}) {
17833
17947
  params: { type: "object", properties: { ids: IDS } },
17834
17948
  undoable: true,
17835
17949
  run: (_ctx, params) => {
17836
- const r = controller.replaceBlendSpine({ ids: _optionalChain([params, 'optionalAccess', _718 => _718.ids]) });
17950
+ const r = controller.replaceBlendSpine({ ids: _optionalChain([params, 'optionalAccess', _723 => _723.ids]) });
17837
17951
  if (!r.ok) fail(r.message);
17838
17952
  return { ok: true };
17839
17953
  }
@@ -17947,7 +18061,7 @@ function createVectorCommands(controller, options = {}) {
17947
18061
  enabled: enabledFor,
17948
18062
  undoable: true,
17949
18063
  run: (_ctx, params) => {
17950
- const id = controller.group({ ids: ids(params), name: _optionalChain([params, 'optionalAccess', _719 => _719.name]) });
18064
+ const id = controller.group({ ids: ids(params), name: _optionalChain([params, 'optionalAccess', _724 => _724.name]) });
17951
18065
  if (!id) fail("Only nodes that share a parent can be grouped.");
17952
18066
  return { id };
17953
18067
  }
@@ -17975,7 +18089,7 @@ function createVectorCommands(controller, options = {}) {
17975
18089
  params: { type: "object", properties: { anchors: ANCHORS, keepShape: { type: "boolean" } } },
17976
18090
  undoable: true,
17977
18091
  run: (_ctx, params) => {
17978
- check2(controller.deleteAnchors(anchorsOf(_optionalChain([params, 'optionalAccess', _720 => _720.anchors])), { keepShape: _optionalChain([params, 'optionalAccess', _721 => _721.keepShape]) }));
18092
+ check2(controller.deleteAnchors(anchorsOf(_optionalChain([params, 'optionalAccess', _725 => _725.anchors])), { keepShape: _optionalChain([params, 'optionalAccess', _726 => _726.keepShape]) }));
17979
18093
  return { ok: true };
17980
18094
  }
17981
18095
  },
@@ -18030,7 +18144,7 @@ function createVectorCommands(controller, options = {}) {
18030
18144
  params: { type: "object", properties: { ids: IDS, tolerance: { type: "number", minimum: 0 } } },
18031
18145
  undoable: true,
18032
18146
  run: (_ctx, params) => {
18033
- check2(controller.joinPaths({ ids: _optionalChain([params, 'optionalAccess', _722 => _722.ids]) ? ids(params) : void 0, tolerance: _optionalChain([params, 'optionalAccess', _723 => _723.tolerance]) }));
18147
+ check2(controller.joinPaths({ ids: _optionalChain([params, 'optionalAccess', _727 => _727.ids]) ? ids(params) : void 0, tolerance: _optionalChain([params, 'optionalAccess', _728 => _728.tolerance]) }));
18034
18148
  return { selection: controller.getState().selection };
18035
18149
  }
18036
18150
  },
@@ -18044,7 +18158,7 @@ function createVectorCommands(controller, options = {}) {
18044
18158
  params: { type: "object", properties: { axis: { type: "string", enum: ["horizontal", "vertical", "both"] }, anchors: ANCHORS } },
18045
18159
  undoable: true,
18046
18160
  run: (_ctx, params) => {
18047
- check2(controller.averageAnchors(_nullishCoalesce(_optionalChain([params, 'optionalAccess', _724 => _724.axis]), () => ( "both")), anchorsOf(_optionalChain([params, 'optionalAccess', _725 => _725.anchors]))));
18161
+ check2(controller.averageAnchors(_nullishCoalesce(_optionalChain([params, 'optionalAccess', _729 => _729.axis]), () => ( "both")), anchorsOf(_optionalChain([params, 'optionalAccess', _730 => _730.anchors]))));
18048
18162
  return { ok: true };
18049
18163
  }
18050
18164
  },
@@ -18058,7 +18172,7 @@ function createVectorCommands(controller, options = {}) {
18058
18172
  enabled: enabledFor,
18059
18173
  undoable: true,
18060
18174
  run: (_ctx, params) => {
18061
- check2(controller.removeRedundantPoints({ ids: _optionalChain([params, 'optionalAccess', _726 => _726.ids]) ? ids(params) : void 0, tolerance: _optionalChain([params, 'optionalAccess', _727 => _727.tolerance]) }));
18175
+ check2(controller.removeRedundantPoints({ ids: _optionalChain([params, 'optionalAccess', _731 => _731.ids]) ? ids(params) : void 0, tolerance: _optionalChain([params, 'optionalAccess', _732 => _732.tolerance]) }));
18062
18176
  return { ok: true };
18063
18177
  }
18064
18178
  },
@@ -18071,7 +18185,7 @@ function createVectorCommands(controller, options = {}) {
18071
18185
  params: { type: "object", properties: { ids: IDS, amount: { type: "number", minimum: 0, maximum: 1 }, anchors: ANCHORS } },
18072
18186
  undoable: true,
18073
18187
  run: (_ctx, params) => {
18074
- check2(controller.smoothPaths({ ids: _optionalChain([params, 'optionalAccess', _728 => _728.ids]) ? ids(params) : void 0, amount: _optionalChain([params, 'optionalAccess', _729 => _729.amount]), refs: _optionalChain([params, 'optionalAccess', _730 => _730.anchors]) }));
18188
+ check2(controller.smoothPaths({ ids: _optionalChain([params, 'optionalAccess', _733 => _733.ids]) ? ids(params) : void 0, amount: _optionalChain([params, 'optionalAccess', _734 => _734.amount]), refs: _optionalChain([params, 'optionalAccess', _735 => _735.anchors]) }));
18075
18189
  return { ok: true };
18076
18190
  }
18077
18191
  },
@@ -18084,14 +18198,14 @@ function createVectorCommands(controller, options = {}) {
18084
18198
  params: { type: "object", properties: { nodeId: { type: "string" }, x: { type: "number" }, y: { type: "number" }, anchors: ANCHORS } },
18085
18199
  undoable: true,
18086
18200
  run: (_ctx, params) => {
18087
- if (_optionalChain([params, 'optionalAccess', _731 => _731.nodeId]) !== void 0) {
18201
+ if (_optionalChain([params, 'optionalAccess', _736 => _736.nodeId]) !== void 0) {
18088
18202
  if (!controller.getNode(params.nodeId)) fail(`There is no node "${params.nodeId}".`);
18089
18203
  if (params.x === void 0 || params.y === void 0) fail("Pass x and y with nodeId.");
18090
18204
  const created = controller.cutPathAt(params.nodeId, { x: params.x, y: params.y });
18091
18205
  if (!created) fail("Nothing to cut there (the end of an open path, or a locked path).");
18092
18206
  return { ids: created };
18093
18207
  }
18094
- check2(controller.cutAtAnchors(anchorsOf(_optionalChain([params, 'optionalAccess', _732 => _732.anchors]))));
18208
+ check2(controller.cutAtAnchors(anchorsOf(_optionalChain([params, 'optionalAccess', _737 => _737.anchors]))));
18095
18209
  return { ids: controller.getState().selection };
18096
18210
  }
18097
18211
  },
@@ -18146,7 +18260,7 @@ function createVectorCommands(controller, options = {}) {
18146
18260
  },
18147
18261
  run: (_ctx, params) => {
18148
18262
  const patch = {};
18149
- for (const key of ["keepShapeOnDelete", "curvatureMoves", "pencilSmoothing", "recognizeShapes", "eraserSize", "pencilPressure", "distortMode", "distortSize", "distortStrength"]) if (_optionalChain([params, 'optionalAccess', _733 => _733[key]]) !== void 0) patch[key] = params[key];
18263
+ for (const key of ["keepShapeOnDelete", "curvatureMoves", "pencilSmoothing", "recognizeShapes", "eraserSize", "pencilPressure", "distortMode", "distortSize", "distortStrength"]) if (_optionalChain([params, 'optionalAccess', _738 => _738[key]]) !== void 0) patch[key] = params[key];
18150
18264
  controller.setEditing(patch);
18151
18265
  return { editing: controller.getState().editing };
18152
18266
  }
@@ -18171,7 +18285,7 @@ function createVectorCommands(controller, options = {}) {
18171
18285
  keywords: ["download", "save", "markup"],
18172
18286
  description: "Returns the document as SVG markup.",
18173
18287
  params: { type: "object", properties: { precision: { type: "integer", minimum: 0, maximum: 8 } } },
18174
- run: (_ctx, params) => ({ svg: controller.toSvg({ precision: _optionalChain([params, 'optionalAccess', _734 => _734.precision]) }) })
18288
+ run: (_ctx, params) => ({ svg: controller.toSvg({ precision: _optionalChain([params, 'optionalAccess', _739 => _739.precision]) }) })
18175
18289
  },
18176
18290
  {
18177
18291
  ...base,
@@ -18186,7 +18300,7 @@ function createVectorCommands(controller, options = {}) {
18186
18300
  return { nodes: controller.getState().document.nodes.length, selection: controller.getState().selection };
18187
18301
  }
18188
18302
  }
18189
- ];
18303
+ ]);
18190
18304
  }
18191
18305
 
18192
18306
  // src/vector/generate.ts
@@ -18311,7 +18425,7 @@ function regenerateVectorArt(controller, input, options) {
18311
18425
  const { signal, ...args } = input;
18312
18426
  return once(controller, input.idempotencyKey, args, async () => {
18313
18427
  const node = controller.getNode(input.id);
18314
- const prov = _optionalChain([node, 'optionalAccess', _735 => _735.type]) === "group" ? node.generation : void 0;
18428
+ const prov = _optionalChain([node, 'optionalAccess', _740 => _740.type]) === "group" ? node.generation : void 0;
18315
18429
  if (!node || node.type !== "group" || !prov) return { ok: false, message: `"${input.id}" is not generated art (generate some with generate_vector_art).` };
18316
18430
  if (node.locked) return { ok: false, message: `"${input.id}" is locked; unlock it first.` };
18317
18431
  const models = listModels(options);
@@ -18430,7 +18544,7 @@ function getVectorTextPanel(state) {
18430
18544
  }
18431
18545
  const typing = state.tool === "type" || state.tool === "typePath";
18432
18546
  const one = state.selection.length === 1 ? _chunkHRI3ZMDMcjs.findVectorNode.call(void 0, state.document.nodes, state.selection[0]) : void 0;
18433
- const pathId = _optionalChain([one, 'optionalAccess', _736 => _736.type]) === "path" ? one.id : null;
18547
+ const pathId = _optionalChain([one, 'optionalAccess', _741 => _741.type]) === "path" ? one.id : null;
18434
18548
  if (!nodes.length && !typing && !state.textEdit) return null;
18435
18549
  const styles = [];
18436
18550
  let target = "defaults";
@@ -18453,11 +18567,11 @@ function getVectorTextPanel(state) {
18453
18567
  return values.every((v) => v === values[0]) ? _nullishCoalesce(values[0], () => ( null)) : null;
18454
18568
  };
18455
18569
  const font = Object.fromEntries(FIELDS.map((k) => [k, same(k)]));
18456
- const alignSource = target === "defaults" ? [_nullishCoalesce(state.textDefaults.align, () => ( "left"))] : (target === "range" ? [edited] : nodes).map((n2) => _nullishCoalesce(_optionalChain([n2, 'access', _737 => _737.paragraph, 'optionalAccess', _738 => _738.align]), () => ( "left")));
18570
+ const alignSource = target === "defaults" ? [_nullishCoalesce(state.textDefaults.align, () => ( "left"))] : (target === "range" ? [edited] : nodes).map((n2) => _nullishCoalesce(_optionalChain([n2, 'access', _742 => _742.paragraph, 'optionalAccess', _743 => _743.align]), () => ( "left")));
18457
18571
  const align = alignSource.every((a) => a === alignSource[0]) ? alignSource[0] : null;
18458
18572
  const ids = target === "range" ? [edited.id] : nodes.map((n2) => n2.id);
18459
18573
  const frameNode = target === "range" ? edited : nodes.length === 1 ? nodes[0] : void 0;
18460
- return { target, ids, font, align, frame: _nullishCoalesce(_optionalChain([frameNode, 'optionalAccess', _739 => _739.frame, 'access', _740 => _740.kind]), () => ( null)), families: _chunkHRI3ZMDMcjs.vectorTextFamilies.call(void 0, ), outlines: _chunkHRI3ZMDMcjs.vectorTextHasOutlines.call(void 0, ), pathId };
18574
+ return { target, ids, font, align, frame: _nullishCoalesce(_optionalChain([frameNode, 'optionalAccess', _744 => _744.frame, 'access', _745 => _745.kind]), () => ( null)), families: _chunkHRI3ZMDMcjs.vectorTextFamilies.call(void 0, ), outlines: _chunkHRI3ZMDMcjs.vectorTextHasOutlines.call(void 0, ), pathId };
18461
18575
  }
18462
18576
  function applyVectorTextStyle(controller, patch, options = {}) {
18463
18577
  const state = controller.getState();
@@ -18487,7 +18601,7 @@ function applyVectorParagraphStyle(controller, patch, options = {}) {
18487
18601
  // src/vector/symbolsPanel.ts
18488
18602
  var fmt3 = (n2) => Math.round(n2 * 100) / 100;
18489
18603
  function getVectorSymbolsPanel(state, options = {}) {
18490
- const host = _nullishCoalesce(_optionalChain([state, 'access', _741 => _741.symbolEdit, 'optionalAccess', _742 => _742.host]), () => ( state.document));
18604
+ const host = _nullishCoalesce(_optionalChain([state, 'access', _746 => _746.symbolEdit, 'optionalAccess', _747 => _747.host]), () => ( state.document));
18491
18605
  const counts = /* @__PURE__ */ new Map();
18492
18606
  const count = (list) => {
18493
18607
  for (const n2 of list) {
@@ -18508,15 +18622,15 @@ function getVectorSymbolsPanel(state, options = {}) {
18508
18622
  instances: _nullishCoalesce(counts.get(s.id), () => ( 0)),
18509
18623
  viewBox: `${fmt3(b.x - pad)} ${fmt3(b.y - pad)} ${fmt3(b.width + 2 * pad)} ${fmt3(b.height + 2 * pad)}`,
18510
18624
  scene,
18511
- editing: _optionalChain([state, 'access', _743 => _743.symbolEdit, 'optionalAccess', _744 => _744.symbolId]) === s.id
18625
+ editing: _optionalChain([state, 'access', _748 => _748.symbolEdit, 'optionalAccess', _749 => _749.symbolId]) === s.id
18512
18626
  };
18513
18627
  });
18514
18628
  const one = state.selection.length === 1 ? _chunkHRI3ZMDMcjs.findVectorNode.call(void 0, state.document.nodes, state.selection[0]) : void 0;
18515
- const inst = _optionalChain([one, 'optionalAccess', _745 => _745.type]) === "instance" ? one : null;
18629
+ const inst = _optionalChain([one, 'optionalAccess', _750 => _750.type]) === "instance" ? one : null;
18516
18630
  return {
18517
18631
  symbols,
18518
18632
  canMake: state.selection.length > 0 && !(state.selection.length === 1 && inst),
18519
- instance: inst ? { id: inst.id, symbolId: inst.symbolId, scaleStrokes: inst.scaleStrokes !== false, fill: _nullishCoalesce(_optionalChain([inst, 'access', _746 => _746.overrides, 'optionalAccess', _747 => _747.fill]), () => ( null)), stroke: _nullishCoalesce(_optionalChain([inst, 'access', _748 => _748.overrides, 'optionalAccess', _749 => _749.stroke]), () => ( null)), hidden: _nullishCoalesce(_optionalChain([inst, 'access', _750 => _750.overrides, 'optionalAccess', _751 => _751.hidden, 'optionalAccess', _752 => _752.length]), () => ( 0)) } : null,
18633
+ instance: inst ? { id: inst.id, symbolId: inst.symbolId, scaleStrokes: inst.scaleStrokes !== false, fill: _nullishCoalesce(_optionalChain([inst, 'access', _751 => _751.overrides, 'optionalAccess', _752 => _752.fill]), () => ( null)), stroke: _nullishCoalesce(_optionalChain([inst, 'access', _753 => _753.overrides, 'optionalAccess', _754 => _754.stroke]), () => ( null)), hidden: _nullishCoalesce(_optionalChain([inst, 'access', _755 => _755.overrides, 'optionalAccess', _756 => _756.hidden, 'optionalAccess', _757 => _757.length]), () => ( 0)) } : null,
18520
18634
  editing: state.symbolEdit ? { symbolId: state.symbolEdit.symbolId, name: state.symbolEdit.name } : null
18521
18635
  };
18522
18636
  }
@@ -18551,7 +18665,7 @@ function createVectorEffectsToolProvider(controller, options = {}) {
18551
18665
  };
18552
18666
  const result = (id, removed) => {
18553
18667
  const g = controller.getNode(id);
18554
- const effects = _optionalChain([g, 'optionalAccess', _753 => _753.providerEffect]) ? [info(g)] : [];
18668
+ const effects = _optionalChain([g, 'optionalAccess', _758 => _758.providerEffect]) ? [info(g)] : [];
18555
18669
  return { target: id, effect: _nullishCoalesce(removed, () => ( effects[0])), effects };
18556
18670
  };
18557
18671
  return _chunkRUZQMYXHcjs.createEffectToolProvider.call(void 0, {
@@ -19286,4 +19400,7 @@ function createVectorEffectsToolProvider(controller, options = {}) {
19286
19400
 
19287
19401
 
19288
19402
 
19289
- exports.DEFAULT_VECTOR_BLEND_DISTANCE = DEFAULT_VECTOR_BLEND_DISTANCE; exports.DEFAULT_VECTOR_BLEND_STEPS = DEFAULT_VECTOR_BLEND_STEPS; exports.DEFAULT_VECTOR_FONT = _chunkHRI3ZMDMcjs.DEFAULT_VECTOR_FONT; exports.DEFAULT_VECTOR_PATH_EDIT = DEFAULT_VECTOR_PATH_EDIT; exports.DEFAULT_VECTOR_SNAP = DEFAULT_VECTOR_SNAP; exports.IDENTITY_MATRIX = _chunkHRI3ZMDMcjs.IDENTITY_MATRIX; exports.KAPPA = _chunkHRI3ZMDMcjs.KAPPA; exports.LazyMouse = LazyMouse; exports.VECTOR_ARROWHEADS = _chunkHRI3ZMDMcjs.VECTOR_ARROWHEADS; exports.VECTOR_ARROWHEAD_LABELS = VECTOR_ARROWHEAD_LABELS; exports.VECTOR_BLEND_MAX_SMOOTH_STEPS = VECTOR_BLEND_MAX_SMOOTH_STEPS; exports.VECTOR_BLEND_MAX_STEPS = VECTOR_BLEND_MAX_STEPS; exports.VECTOR_BLEND_MODES = _chunkHRI3ZMDMcjs.VECTOR_BLEND_MODES; exports.VECTOR_BLEND_MODE_LABELS = _chunkHRI3ZMDMcjs.VECTOR_BLEND_MODE_LABELS; exports.VECTOR_BLEND_MODE_MENU = VECTOR_BLEND_MODE_MENU; exports.VECTOR_BLEND_SPACINGS = _chunkHRI3ZMDMcjs.VECTOR_BLEND_SPACINGS; exports.VECTOR_BLEND_SPACING_LABELS = VECTOR_BLEND_SPACING_LABELS; exports.VECTOR_BRUSHSTROKE_MAX_SEED = _chunkHRI3ZMDMcjs.VECTOR_BRUSHSTROKE_MAX_SEED; exports.VECTOR_BRUSHSTROKE_SCALE = _chunkHRI3ZMDMcjs.VECTOR_BRUSHSTROKE_SCALE; exports.VECTOR_BUILDER_HATCH_GAP = VECTOR_BUILDER_HATCH_GAP; exports.VECTOR_CHARACTER_STYLE_KEYS = _chunkHRI3ZMDMcjs.VECTOR_CHARACTER_STYLE_KEYS; exports.VECTOR_CLIPBOARD_TYPE = VECTOR_CLIPBOARD_TYPE; exports.VECTOR_CONNECTOR_ROUTES = _chunkHRI3ZMDMcjs.VECTOR_CONNECTOR_ROUTES; exports.VECTOR_CONNECTOR_ROUTE_LABELS = _chunkHRI3ZMDMcjs.VECTOR_CONNECTOR_ROUTE_LABELS; exports.VECTOR_CONNECTOR_SIDES = _chunkHRI3ZMDMcjs.VECTOR_CONNECTOR_SIDES; exports.VECTOR_CONNECTOR_SIDE_LABELS = _chunkHRI3ZMDMcjs.VECTOR_CONNECTOR_SIDE_LABELS; exports.VECTOR_CONSTRAINT_GLYPHS = VECTOR_CONSTRAINT_GLYPHS; exports.VECTOR_CONSTRAINT_KINDS = _chunkHRI3ZMDMcjs.VECTOR_CONSTRAINT_KINDS; exports.VECTOR_CONSTRAINT_LABELS = VECTOR_CONSTRAINT_LABELS; exports.VECTOR_CONSTRUCTION_ANGLES = VECTOR_CONSTRUCTION_ANGLES; exports.VECTOR_CORNER_KINDS = _chunkHRI3ZMDMcjs.VECTOR_CORNER_KINDS; exports.VECTOR_CORNER_KIND_LABELS = VECTOR_CORNER_KIND_LABELS; exports.VECTOR_CORNER_WIDGET_INSET = VECTOR_CORNER_WIDGET_INSET; exports.VECTOR_DIMENSIONAL_KINDS = VECTOR_DIMENSIONAL_KINDS; exports.VECTOR_DISTORT_BRUSH_MODES = VECTOR_DISTORT_BRUSH_MODES; exports.VECTOR_DISTORT_TOLERANCE = VECTOR_DISTORT_TOLERANCE; exports.VECTOR_EDIT_TOGGLES = VECTOR_EDIT_TOGGLES; exports.VECTOR_EFFECT_DEFAULTS = _chunkHRI3ZMDMcjs.VECTOR_EFFECT_DEFAULTS; exports.VECTOR_EFFECT_LABELS = _chunkHRI3ZMDMcjs.VECTOR_EFFECT_LABELS; exports.VECTOR_EFFECT_MENU = VECTOR_EFFECT_MENU; exports.VECTOR_EFFECT_PARAM_SPECS = _chunkHRI3ZMDMcjs.VECTOR_EFFECT_PARAM_SPECS; exports.VECTOR_EFFECT_TYPES = _chunkHRI3ZMDMcjs.VECTOR_EFFECT_TYPES; exports.VECTOR_ENVELOPE_STYLE_OPTIONS = VECTOR_ENVELOPE_STYLE_OPTIONS; exports.VECTOR_FILL_GAP = VECTOR_FILL_GAP; exports.VECTOR_FILTER_DEFAULTS = _chunkHRI3ZMDMcjs.VECTOR_FILTER_DEFAULTS; exports.VECTOR_FILTER_LABELS = _chunkHRI3ZMDMcjs.VECTOR_FILTER_LABELS; exports.VECTOR_FILTER_MENU = _chunkHRI3ZMDMcjs.VECTOR_FILTER_MENU; exports.VECTOR_FILTER_PARAM_SPECS = _chunkHRI3ZMDMcjs.VECTOR_FILTER_PARAM_SPECS; exports.VECTOR_FILTER_TYPES = _chunkHRI3ZMDMcjs.VECTOR_FILTER_TYPES; exports.VECTOR_FONT_WEIGHTS = VECTOR_FONT_WEIGHTS; exports.VECTOR_GENERATED_IMAGE_AS = VECTOR_GENERATED_IMAGE_AS; exports.VECTOR_GRADIENT_INTERPOLATIONS = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_INTERPOLATIONS; exports.VECTOR_GRADIENT_INTERPOLATION_LABELS = VECTOR_GRADIENT_INTERPOLATION_LABELS; exports.VECTOR_GRADIENT_MAX_PERIODS = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_MAX_PERIODS; exports.VECTOR_GRADIENT_MIDPOINT_GAP = VECTOR_GRADIENT_MIDPOINT_GAP; exports.VECTOR_GRADIENT_MIN_STOPS = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_MIN_STOPS; exports.VECTOR_GRADIENT_OFF_BAR = VECTOR_GRADIENT_OFF_BAR; exports.VECTOR_GRADIENT_SPREADS = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_SPREADS; exports.VECTOR_GRADIENT_SPREAD_LABELS = VECTOR_GRADIENT_SPREAD_LABELS; exports.VECTOR_GRADIENT_STOP_GAP = VECTOR_GRADIENT_STOP_GAP; exports.VECTOR_GRADIENT_TYPES = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_TYPES; exports.VECTOR_GRADIENT_TYPE_LABELS = VECTOR_GRADIENT_TYPE_LABELS; exports.VECTOR_HORIZONTAL_RESIZING = _chunkHRI3ZMDMcjs.VECTOR_HORIZONTAL_RESIZING; exports.VECTOR_HORIZONTAL_RESIZING_LABELS = _chunkHRI3ZMDMcjs.VECTOR_HORIZONTAL_RESIZING_LABELS; exports.VECTOR_INK_MAX_CORNERS = VECTOR_INK_MAX_CORNERS; exports.VECTOR_LENS_LABELS = _chunkHRI3ZMDMcjs.VECTOR_LENS_LABELS; exports.VECTOR_LENS_SPECS = _chunkHRI3ZMDMcjs.VECTOR_LENS_SPECS; exports.VECTOR_LENS_TYPES = _chunkHRI3ZMDMcjs.VECTOR_LENS_TYPES; exports.VECTOR_MASK_TYPES = _chunkHRI3ZMDMcjs.VECTOR_MASK_TYPES; exports.VECTOR_MASK_TYPE_LABELS = VECTOR_MASK_TYPE_LABELS; exports.VECTOR_MASK_TYPE_OPTIONS = VECTOR_MASK_TYPE_OPTIONS; exports.VECTOR_MAX_CONSTRAINTS = VECTOR_MAX_CONSTRAINTS; exports.VECTOR_MAX_TRACKING_POINTS = VECTOR_MAX_TRACKING_POINTS; exports.VECTOR_MERGE_MODES = _chunkHRI3ZMDMcjs.VECTOR_MERGE_MODES; exports.VECTOR_MESH_MAX = _chunkHRI3ZMDMcjs.VECTOR_MESH_MAX; exports.VECTOR_OVERLAY_THEME = VECTOR_OVERLAY_THEME; exports.VECTOR_PARAGRAPH_STYLE_KEYS = _chunkHRI3ZMDMcjs.VECTOR_PARAGRAPH_STYLE_KEYS; exports.VECTOR_PATHFINDER_ACTIONS = VECTOR_PATHFINDER_ACTIONS; exports.VECTOR_PATHFINDER_LABELS = VECTOR_PATHFINDER_LABELS; exports.VECTOR_PATHFINDER_OPERATIONS = _chunkHRI3ZMDMcjs.VECTOR_PATHFINDER_OPERATIONS; exports.VECTOR_PATH_ACTIONS = VECTOR_PATH_ACTIONS; exports.VECTOR_PATH_TEXT_BASELINES = _chunkHRI3ZMDMcjs.VECTOR_PATH_TEXT_BASELINES; exports.VECTOR_PENCIL_STRING_PX = VECTOR_PENCIL_STRING_PX; exports.VECTOR_PERSPECTIVE_PLANES = _chunkHRI3ZMDMcjs.VECTOR_PERSPECTIVE_PLANES; exports.VECTOR_PRESSURE_NOMINAL = _chunkHRI3ZMDMcjs.VECTOR_PRESSURE_NOMINAL; exports.VECTOR_ROTATE_HANDLE_OFFSET = VECTOR_ROTATE_HANDLE_OFFSET; exports.VECTOR_SPATIAL_MIN = _chunkHRI3ZMDMcjs.VECTOR_SPATIAL_MIN; exports.VECTOR_STROKE_ALIGN_LABELS = VECTOR_STROKE_ALIGN_LABELS; exports.VECTOR_STROKE_GRADIENT_MODES = _chunkHRI3ZMDMcjs.VECTOR_STROKE_GRADIENT_MODES; exports.VECTOR_STROKE_GRADIENT_MODE_LABELS = VECTOR_STROKE_GRADIENT_MODE_LABELS; exports.VECTOR_STROKE_SETTING_KEYS = _chunkHRI3ZMDMcjs.VECTOR_STROKE_SETTING_KEYS; exports.VECTOR_STYLE_KEYS = VECTOR_STYLE_KEYS; exports.VECTOR_STYLIZE_LABELS = VECTOR_STYLIZE_LABELS; exports.VECTOR_STYLIZE_MAX_SHAPES = VECTOR_STYLIZE_MAX_SHAPES; exports.VECTOR_STYLIZE_STYLES = VECTOR_STYLIZE_STYLES; exports.VECTOR_SYMBOL_MAX_DEPTH = _chunkHRI3ZMDMcjs.VECTOR_SYMBOL_MAX_DEPTH; exports.VECTOR_SYMMETRY_MODES = _chunkHRI3ZMDMcjs.VECTOR_SYMMETRY_MODES; exports.VECTOR_SYMMETRY_MODE_LABELS = _chunkHRI3ZMDMcjs.VECTOR_SYMMETRY_MODE_LABELS; exports.VECTOR_TEXT_ALIGNS = _chunkHRI3ZMDMcjs.VECTOR_TEXT_ALIGNS; exports.VECTOR_TEXT_ALIGN_LABELS = VECTOR_TEXT_ALIGN_LABELS; exports.VECTOR_TEXT_ALIGN_OPTIONS = VECTOR_TEXT_ALIGN_OPTIONS; exports.VECTOR_TOOLS = _chunkHRI3ZMDMcjs.VECTOR_TOOLS; exports.VECTOR_TOOL_GLYPHS = VECTOR_TOOL_GLYPHS; exports.VECTOR_TOOL_SHORTCUTS = VECTOR_TOOL_SHORTCUTS; exports.VECTOR_TRACE_MAX_PIXELS = VECTOR_TRACE_MAX_PIXELS; exports.VECTOR_TRANSFORM_HANDLES = _chunkHRI3ZMDMcjs.VECTOR_TRANSFORM_HANDLES; exports.VECTOR_VERTICAL_RESIZING = _chunkHRI3ZMDMcjs.VECTOR_VERTICAL_RESIZING; exports.VECTOR_VERTICAL_RESIZING_LABELS = _chunkHRI3ZMDMcjs.VECTOR_VERTICAL_RESIZING_LABELS; exports.VECTOR_WARP_STYLES = _chunkHRI3ZMDMcjs.WARP_STYLES; exports.VECTOR_WARP_STYLE_LABELS = _chunkHRI3ZMDMcjs.WARP_STYLE_LABELS; exports.VECTOR_WIDTH_PRESETS = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_PRESETS; exports.VECTOR_WIDTH_PRESET_IDS = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_PRESET_IDS; exports.VECTOR_WIDTH_PROFILE_MAX_POINTS = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_PROFILE_MAX_POINTS; exports.VECTOR_WIDTH_PROFILE_MAX_SCALE = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_PROFILE_MAX_SCALE; exports.VECTOR_WIDTH_SAME_T = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_SAME_T; exports.VectorConstraintError = VectorConstraintError; exports.VectorEditorController = VectorEditorController; exports.VectorExprEnv = VectorExprEnv; exports.VectorExprError = VectorExprError; exports.VectorRTree = _chunkHRI3ZMDMcjs.VectorRTree; exports.VectorSnapTargets = VectorSnapTargets; exports.VectorTextError = _chunkHRI3ZMDMcjs.VectorTextError; exports.activeVectorEffects = _chunkHRI3ZMDMcjs.activeVectorEffects; exports.activeVectorFilters = _chunkHRI3ZMDMcjs.activeVectorFilters; exports.addBuilderHit = addBuilderHit; exports.addVectorConstraint = addVectorConstraint; exports.applyMatrix = _chunkHRI3ZMDMcjs.applyMatrix; exports.applyMatrixLinear = _chunkHRI3ZMDMcjs.applyMatrixLinear; exports.applyVectorBlendOptions = applyVectorBlendOptions; exports.applyVectorCornersAttribute = _chunkHRI3ZMDMcjs.applyVectorCornersAttribute; exports.applyVectorEffects = _chunkHRI3ZMDMcjs.applyVectorEffects; exports.applyVectorGradientPatch = _chunkHRI3ZMDMcjs.applyVectorGradientPatch; exports.applyVectorGradientSpread = _chunkHRI3ZMDMcjs.applyVectorGradientSpread; exports.applyVectorHomography = _chunkQT26RHKKcjs.applyHomography; exports.applyVectorParagraphStyle = applyVectorParagraphStyle; exports.applyVectorTextStyle = applyVectorTextStyle; exports.arrowheadInset = _chunkHRI3ZMDMcjs.arrowheadInset; exports.arrowheadPath = _chunkHRI3ZMDMcjs.arrowheadPath; exports.arrowheadWeight = _chunkHRI3ZMDMcjs.arrowheadWeight; exports.autoConstrainVector = autoConstrainVector; exports.autoVectorFreeformGradient = _chunkHRI3ZMDMcjs.autoVectorFreeformGradient; exports.bakeVectorTextGeometry = _chunkHRI3ZMDMcjs.bakeVectorTextGeometry; exports.bendSegment = bendSegment; exports.bezierToSubpaths = _chunkHRI3ZMDMcjs.bezierToSubpaths; exports.boundsFromPoints = _chunkHRI3ZMDMcjs.boundsFromPoints; exports.boundsIntersect = _chunkHRI3ZMDMcjs.boundsIntersect; exports.checkVectorExpression = checkVectorExpression; exports.clearVectorLiveBooleanCache = _chunkHRI3ZMDMcjs.clearVectorLiveBooleanCache; exports.cloneAnchor = _chunkHRI3ZMDMcjs.cloneAnchor; exports.cloneSubpath = _chunkHRI3ZMDMcjs.cloneSubpath; exports.cloneVectorDocument = _chunkHRI3ZMDMcjs.cloneVectorDocument; exports.cloneVectorNode = _chunkHRI3ZMDMcjs.cloneVectorNode; exports.collectPaintedNodes = _chunkHRI3ZMDMcjs.collectPaintedNodes; exports.collectPathNodes = _chunkHRI3ZMDMcjs.collectPathNodes; exports.composeVectorMatrices = _chunkHRI3ZMDMcjs.composeVectorMatrices; exports.constrainToLeave = constrainToLeave; exports.convertAnchor = _chunkHRI3ZMDMcjs.convertAnchor; exports.convertVectorGradient = _chunkHRI3ZMDMcjs.convertVectorGradient; exports.cornerBisectorPoint = _chunkHRI3ZMDMcjs.cornerBisectorPoint; exports.cornerRadiusChange = _chunkHRI3ZMDMcjs.cornerRadiusChange; exports.cornerSetback = _chunkHRI3ZMDMcjs.cornerSetback; exports.correspondMorphContours = _chunkH6FX45CPcjs.correspondMorphContours; exports.createCanvasTextShaper = _chunkHRI3ZMDMcjs.createCanvasTextShaper; exports.createMetricTextShaper = _chunkHRI3ZMDMcjs.createMetricTextShaper; exports.createOutlineTextShaper = _chunkHRI3ZMDMcjs.createOutlineTextShaper; exports.createVectorCommands = createVectorCommands; exports.createVectorEffect = _chunkHRI3ZMDMcjs.createVectorEffect; exports.createVectorEffectsToolProvider = createVectorEffectsToolProvider; exports.createVectorFilter = _chunkHRI3ZMDMcjs.createVectorFilter; exports.createVectorGenerationToolProvider = createVectorGenerationToolProvider; exports.createVectorMeshGradient = _chunkHRI3ZMDMcjs.createVectorMeshGradient; exports.createVectorMorph = _chunkH6FX45CPcjs.createVectorMorph; exports.cssFontFamily = _chunkHRI3ZMDMcjs.cssFontFamily; exports.curvatureMoveAnchor = curvatureMoveAnchor; exports.cutSubpathAt = cutSubpathAt; exports.dashIntervals = _chunkHRI3ZMDMcjs.dashIntervals; exports.decomposeRigid = _chunkHRI3ZMDMcjs.decomposeRigid; exports.defaultVectorGradient = _chunkHRI3ZMDMcjs.defaultVectorGradient; exports.distortVectorNode = distortVectorNode; exports.distortVectorPath = distortVectorPath; exports.dragVectorMeshPoint = _chunkHRI3ZMDMcjs.dragWarpMeshPoint; exports.effectPathLength = _chunkHRI3ZMDMcjs.effectPathLength; exports.effectPathVertexCount = _chunkHRI3ZMDMcjs.effectPathVertexCount; exports.effectiveStrokeAlign = _chunkHRI3ZMDMcjs.effectiveStrokeAlign; exports.ellipseSubpath = _chunkHRI3ZMDMcjs.ellipseSubpath; exports.eraseFromFill = _chunkHRI3ZMDMcjs.eraseFromFill; exports.eraseFromOutline = _chunkHRI3ZMDMcjs.eraseFromOutline; exports.eraserRegion = _chunkHRI3ZMDMcjs.eraserRegion; exports.evalVectorExpression = evalVectorExpression; exports.evalVectorMesh = _chunkHRI3ZMDMcjs.evalWarpMesh; exports.evaluateVectorPathKeyframes = _chunkH6FX45CPcjs.evaluateVectorPathKeyframes; exports.expandVectorAppearance = _chunkHRI3ZMDMcjs.expandVectorAppearance; exports.expandVectorAppearances = _chunkHRI3ZMDMcjs.expandVectorAppearances; exports.expandVectorBlend = expandVectorBlend; exports.expandVectorCorners = _chunkHRI3ZMDMcjs.expandVectorCorners; exports.expandVectorCornersOf = _chunkHRI3ZMDMcjs.expandVectorCornersOf; exports.expandVectorGradientSpread = _chunkHRI3ZMDMcjs.expandVectorGradientSpread; exports.expandVectorGradientStops = _chunkHRI3ZMDMcjs.expandVectorGradientStops; exports.explicitVectorGradient = _chunkHRI3ZMDMcjs.explicitVectorGradient; exports.findVectorAnchorById = findVectorAnchorById; exports.findVectorNode = _chunkHRI3ZMDMcjs.findVectorNode; exports.fitCornerRadius = _chunkHRI3ZMDMcjs.fitCornerRadius; exports.fitVectorMesh = _chunkHRI3ZMDMcjs.fitWarpMesh; exports.fitVectorTextRuns = _chunkHRI3ZMDMcjs.fitVectorTextRuns; exports.foldVectorBooleanOperands = _chunkHRI3ZMDMcjs.foldVectorBooleanOperands; exports.formatVectorValue = formatVectorValue; exports.generateVectorArt = generateVectorArt; exports.generateVectorBlendChildren = generateVectorBlendChildren; exports.generateWidthProfile = _chunkHRI3ZMDMcjs.generateWidthProfile; exports.getAnchor = getAnchor; exports.getAnchorWorld = getAnchorWorld; exports.getEditablePathIds = getEditablePathIds; exports.getTransformHandlePositions = getTransformHandlePositions; exports.getVectorAppearancePanel = getVectorAppearancePanel; exports.getVectorBlendControls = getVectorBlendControls; exports.getVectorConnectorPanel = _chunkHRI3ZMDMcjs.getVectorConnectorPanel; exports.getVectorConstraintPanel = getVectorConstraintPanel; exports.getVectorCornerWidgets = getVectorCornerWidgets; exports.getVectorEffectsPanel = getVectorEffectsPanel; exports.getVectorEnteredGroups = getVectorEnteredGroups; exports.getVectorEnvelopePanel = getVectorEnvelopePanel; exports.getVectorEnvelopeTarget = getVectorEnvelopeTarget; exports.getVectorFramePanel = _chunkHRI3ZMDMcjs.getVectorFramePanel; exports.getVectorGradientAnnotator = getVectorGradientAnnotator; exports.getVectorGradientEditor = getVectorGradientEditor; exports.getVectorMaskPanel = getVectorMaskPanel; exports.getVectorOverlayRenderData = getVectorOverlayRenderData; exports.getVectorSceneRenderData = getVectorSceneRenderData; exports.getVectorSelectionBoxGeometry = getVectorSelectionBoxGeometry; exports.getVectorSelectionFrame = getVectorSelectionFrame; exports.getVectorSelectionStyle = getVectorSelectionStyle; exports.getVectorSymbolEditBackground = getVectorSymbolEditBackground; exports.getVectorSymbolsPanel = getVectorSymbolsPanel; exports.getVectorTextPanel = getVectorTextPanel; exports.getVectorTextShaper = _chunkHRI3ZMDMcjs.getVectorTextShaper; exports.getVectorWidthHandles = getVectorWidthHandles; exports.getVisibleAnchors = getVisibleAnchors; exports.getVisibleHandles = getVisibleHandles; exports.glyphBox = _chunkHRI3ZMDMcjs.glyphBox; exports.gradientMidpointRemap = _chunkHRI3ZMDMcjs.gradientMidpointRemap; exports.hasExplicitGradientGeometry = _chunkHRI3ZMDMcjs.hasExplicitGradientGeometry; exports.hasOwnVectorAppearance = _chunkHRI3ZMDMcjs.hasOwnVectorAppearance; exports.hasPaint = _chunkHRI3ZMDMcjs.hasPaint; exports.hasStrokeExtras = _chunkHRI3ZMDMcjs.hasStrokeExtras; exports.hasVectorAppearance = _chunkHRI3ZMDMcjs.hasVectorAppearance; exports.hasVectorCorners = _chunkHRI3ZMDMcjs.hasVectorCorners; exports.hasVectorPaintStacks = _chunkHRI3ZMDMcjs.hasVectorPaintStacks; exports.hitTestVectorNode = _chunkHRI3ZMDMcjs.hitTestVectorNode; exports.hitTestVectorNodes = _chunkHRI3ZMDMcjs.hitTestVectorNodes; exports.hitTestVectorPaintLayer = _chunkHRI3ZMDMcjs.hitTestVectorPaintLayer; exports.hitTestVectorPaintStack = _chunkHRI3ZMDMcjs.hitTestVectorPaintStack; exports.hitTestVectorStroke = _chunkHRI3ZMDMcjs.hitTestVectorStroke; exports.hitVectorGradientAnnotator = hitVectorGradientAnnotator; exports.inferAnchorType = _chunkHRI3ZMDMcjs.inferAnchorType; exports.inferVectorConstraints = inferVectorConstraints; exports.insertAnchor = _chunkHRI3ZMDMcjs.insertAnchor; exports.insertVectorGradientStop = _chunkHRI3ZMDMcjs.insertVectorGradientStop; exports.insertWidthPoint = _chunkHRI3ZMDMcjs.insertWidthPoint; exports.interpolateMorphContours = _chunkH6FX45CPcjs.interpolateMorphContours; exports.interpolateRigidMatrix = _chunkH6FX45CPcjs.interpolateRigidMatrix; exports.interpolateVectorColor = _chunkH6FX45CPcjs.interpolateVectorColor; exports.interpolateVectorPaint = _chunkH6FX45CPcjs.interpolateVectorPaint; exports.interpolateVectorPaths = _chunkH6FX45CPcjs.interpolateVectorPaths; exports.interpolateVectorStyle = _chunkH6FX45CPcjs.interpolateVectorStyle; exports.interpolateWidthProfiles = _chunkH6FX45CPcjs.interpolateWidthProfiles; exports.invertMatrix = _chunkHRI3ZMDMcjs.invertMatrix; exports.isCentredVectorGradient = _chunkHRI3ZMDMcjs.isCentredVectorGradient; exports.isClosedBezierShape = _chunkHRI3ZMDMcjs.isClosedBezierShape; exports.isDrawnVectorPaintLayer = _chunkHRI3ZMDMcjs.isDrawnVectorPaintLayer; exports.isIdentityMatrix = _chunkHRI3ZMDMcjs.isIdentityMatrix; exports.isPlainVectorPaintLayer = _chunkHRI3ZMDMcjs.isPlainVectorPaintLayer; exports.isUniformWidthProfile = _chunkHRI3ZMDMcjs.isUniformWidthProfile; exports.isValidVectorMesh = _chunkHRI3ZMDMcjs.isValidWarpMesh; exports.isValidVectorParameterName = isValidVectorParameterName; exports.isVectorBlendGroup = isVectorBlendGroup; exports.isVectorBlendMode = _chunkHRI3ZMDMcjs.isVectorBlendMode; exports.isVectorBrushstrokeLayer = _chunkHRI3ZMDMcjs.isVectorBrushstrokeLayer; exports.isVectorConnector = _chunkHRI3ZMDMcjs.isVectorConnector; exports.isVectorFilterType = _chunkHRI3ZMDMcjs.isVectorFilterType; exports.isVectorFrame = _chunkHRI3ZMDMcjs.isVectorFrame; exports.isVectorFreeformGradient = _chunkHRI3ZMDMcjs.isVectorFreeformGradient; exports.isVectorGradient = _chunkHRI3ZMDMcjs.isVectorGradient; exports.isVectorLens = _chunkHRI3ZMDMcjs.isVectorLens; exports.isVectorLiveBoolean = _chunkHRI3ZMDMcjs.isVectorLiveBoolean; exports.isVectorMaskActive = _chunkHRI3ZMDMcjs.isVectorMaskActive; exports.isVectorMaskGroup = _chunkHRI3ZMDMcjs.isVectorMaskGroup; exports.isVectorMaskType = _chunkHRI3ZMDMcjs.isVectorMaskType; exports.isVectorMasterPage = _chunkHRI3ZMDMcjs.isVectorMasterPage; exports.isVectorMeshGradient = _chunkHRI3ZMDMcjs.isVectorMeshGradient; exports.isVectorShadedPaint = _chunkHRI3ZMDMcjs.isVectorShadedPaint; exports.isVectorSymmetryGroup = _chunkHRI3ZMDMcjs.isVectorSymmetryGroup; exports.isVectorTextTarget = isVectorTextTarget; exports.joinSubpaths = joinSubpaths; exports.knifePath = _chunkHRI3ZMDMcjs.knifePath; exports.layoutVectorText = _chunkHRI3ZMDMcjs.layoutVectorText; exports.lineSubpath = _chunkHRI3ZMDMcjs.lineSubpath; exports.loadOpenTypeFont = _chunk5UEFNX24cjs.loadOpenTypeFont; exports.locateVectorNode = _chunkHRI3ZMDMcjs.locateVectorNode; exports.lottieValueAt = lottieValueAt; exports.mapBezierPath = _chunkHRI3ZMDMcjs.mapBezierPath; exports.mapVectorGradient = _chunkHRI3ZMDMcjs.mapVectorGradient; exports.mapVectorMeshPoints = _chunkHRI3ZMDMcjs.mapWarpMeshPoints; exports.mapVectorPaint = _chunkHRI3ZMDMcjs.mapVectorPaint; exports.mapVectorPaintColors = _chunkHRI3ZMDMcjs.mapVectorPaintColors; exports.mapVectorPoints = _chunkHRI3ZMDMcjs.mapVectorPoints; exports.mapVectorShadedPaint = _chunkHRI3ZMDMcjs.mapVectorShadedPaint; exports.mapVectorSubpaths = _chunkHRI3ZMDMcjs.mapVectorSubpaths; exports.matrixRotation = _chunkHRI3ZMDMcjs.matrixRotation; exports.measureVectorConstraint = measureVectorConstraint; exports.measureVectorPath = _chunkHRI3ZMDMcjs.measureVectorPath; exports.mergePaths = _chunkHRI3ZMDMcjs.mergePaths; exports.mirrorWidthProfile = _chunkHRI3ZMDMcjs.mirrorWidthProfile; exports.morphContourToSubpath = _chunkH6FX45CPcjs.morphContourToSubpath; exports.morphPathsCross = _chunkH6FX45CPcjs.morphPathsCross; exports.moveAnchorHandle = _chunkHRI3ZMDMcjs.moveAnchorHandle; exports.moveVectorGradientHandle = _chunkHRI3ZMDMcjs.moveVectorGradientHandle; exports.moveVectorGradientStop = _chunkHRI3ZMDMcjs.moveVectorGradientStop; exports.multiplyMatrices = _chunkHRI3ZMDMcjs.multiplyMatrices; exports.nearestSegment = _chunkHRI3ZMDMcjs.nearestSegment; exports.nearestStrokePosition = _chunkHRI3ZMDMcjs.nearestStrokePosition; exports.nearestVectorConnectionSite = _chunkHRI3ZMDMcjs.nearestVectorConnectionSite; exports.nearestVectorShadingPoint = _chunkHRI3ZMDMcjs.nearestVectorShadingPoint; exports.needsVectorPaintLayers = _chunkHRI3ZMDMcjs.needsVectorPaintLayers; exports.newVectorStrokeLayer = _chunkHRI3ZMDMcjs.newVectorStrokeLayer; exports.nextVectorConstraintName = nextVectorConstraintName; exports.nextVectorCornerKind = _chunkHRI3ZMDMcjs.nextVectorCornerKind; exports.nodeMatrix = _chunkHRI3ZMDMcjs.nodeMatrix; exports.normalizeVectorEffectParams = _chunkHRI3ZMDMcjs.normalizeVectorEffectParams; exports.normalizeVectorFilterParams = _chunkHRI3ZMDMcjs.normalizeVectorFilterParams; exports.normalizeVectorPaintStacks = _chunkHRI3ZMDMcjs.normalizeVectorPaintStacks; exports.normalizeVectorTextRuns = _chunkHRI3ZMDMcjs.normalizeVectorTextRuns; exports.offsetPaths = _chunkHRI3ZMDMcjs.offsetPaths; exports.orderVectorQuad = _chunkQT26RHKKcjs.orderQuad; exports.parseOpenTypeFont = _chunk5UEFNX24cjs.parseOpenTypeFont; exports.parseSvgTransform = _chunkHRI3ZMDMcjs.parseSvgTransform; exports.parseVectorColor = _chunkHRI3ZMDMcjs.parseVectorColor; exports.parseVectorLottie = parseVectorLottie; exports.parseVectorSvg = _chunkHRI3ZMDMcjs.parseVectorSvg; exports.patchVectorCharacterStyle = _chunkHRI3ZMDMcjs.patchVectorCharacterStyle; exports.patchVectorParagraphStyle = _chunkHRI3ZMDMcjs.patchVectorParagraphStyle; exports.pathTextFrameFromBezier = _chunkHRI3ZMDMcjs.pathTextFrameFromBezier; exports.pathsCenter = _chunkHRI3ZMDMcjs.pathsCenter; exports.patternAttrs = _chunkHRI3ZMDMcjs.patternAttrs; exports.periodicVectorGradientStops = _chunkHRI3ZMDMcjs.periodicVectorGradientStops; exports.pinVectorGradient = _chunkHRI3ZMDMcjs.pinVectorGradient; exports.planShapeBuilder = planShapeBuilder; exports.polygonSubpath = _chunkHRI3ZMDMcjs.polygonSubpath; exports.polylineBounds = _chunkHRI3ZMDMcjs.polylineBounds; exports.prefixVectorIds = _chunkHRI3ZMDMcjs.prefixVectorIds; exports.pressureWidthProfile = _chunkHRI3ZMDMcjs.pressureWidthProfile; exports.puckerBloatPaths = _chunkHRI3ZMDMcjs.puckerBloatPaths; exports.pullVectorMesh = _chunkHRI3ZMDMcjs.pullWarpMesh; exports.purgeVectorConstraints = purgeVectorConstraints; exports.quantizeVectorTraceColors = quantizeVectorTraceColors; exports.randomVectorBrushstrokeSeed = _chunkHRI3ZMDMcjs.randomVectorBrushstrokeSeed; exports.recognizeInkShape = recognizeInkShape; exports.rectSubpath = _chunkHRI3ZMDMcjs.rectSubpath; exports.refineMorphContour = _chunkH6FX45CPcjs.refineMorphContour; exports.refreshVectorBlends = refreshVectorBlends; exports.regenerateVectorArt = regenerateVectorArt; exports.releaseVectorBlend = releaseVectorBlend; exports.removeAnchorKeepingShape = removeAnchorKeepingShape; exports.removeAnchors = _chunkHRI3ZMDMcjs.removeAnchors; exports.removeAnchorsKeepingShape = removeAnchorsKeepingShape; exports.removeRedundantPoints = removeRedundantPoints; exports.removeVectorFreeformPoint = _chunkHRI3ZMDMcjs.removeVectorFreeformPoint; exports.removeVectorGradientStop = _chunkHRI3ZMDMcjs.removeVectorGradientStop; exports.removeVectorMeshSplitU = _chunkHRI3ZMDMcjs.removeWarpMeshSplitU; exports.removeVectorMeshSplitV = _chunkHRI3ZMDMcjs.removeWarpMeshSplitV; exports.removeWidthPoints = _chunkHRI3ZMDMcjs.removeWidthPoints; exports.repeatPaths = _chunkHRI3ZMDMcjs.repeatPaths; exports.replaceVectorText = _chunkHRI3ZMDMcjs.replaceVectorText; exports.rerouteVectorConnectors = _chunkHRI3ZMDMcjs.rerouteVectorConnectors; exports.resampleGradientStops = _chunkH6FX45CPcjs.resampleGradientStops; exports.resizeVectorMesh = _chunkHRI3ZMDMcjs.resizeWarpMesh; exports.resolveVectorBlendOptions = resolveVectorBlendOptions; exports.resolveVectorLenses = _chunkHRI3ZMDMcjs.resolveVectorLenses; exports.resolveVectorMasterPages = _chunkHRI3ZMDMcjs.resolveVectorMasterPages; exports.resolveVectorSymbols = _chunkHRI3ZMDMcjs.resolveVectorSymbols; exports.reverseMorphContour = _chunkH6FX45CPcjs.reverseMorphContour; exports.reverseSubpath = _chunkHRI3ZMDMcjs.reverseSubpath; exports.reverseVectorGradient = _chunkHRI3ZMDMcjs.reverseVectorGradient; exports.reverseWidthProfile = _chunkHRI3ZMDMcjs.reverseWidthProfile; exports.rotateMatrix = _chunkHRI3ZMDMcjs.rotateMatrix; exports.roundCornerPaths = _chunkHRI3ZMDMcjs.roundCornerPaths; exports.roundSubpaths = _chunkHRI3ZMDMcjs.roundSubpaths; exports.routeVectorConnector = _chunkHRI3ZMDMcjs.routeVectorConnector; exports.samplePlainStops = _chunkHRI3ZMDMcjs.samplePlainStops; exports.samplePolyline = samplePolyline; exports.sampleVectorFreeform = _chunkHRI3ZMDMcjs.sampleVectorFreeform; exports.sampleVectorGradient = _chunkHRI3ZMDMcjs.sampleVectorGradient; exports.sampleVectorGradientAt = _chunkHRI3ZMDMcjs.sampleVectorGradientAt; exports.sampleVectorPaintDefAt = _chunkHRI3ZMDMcjs.sampleVectorPaintDefAt; exports.sanitizeVectorBrushstroke = _chunkHRI3ZMDMcjs.sanitizeVectorBrushstroke; exports.sanitizeVectorBrushstrokePaper = _chunkHRI3ZMDMcjs.sanitizeVectorBrushstrokePaper; exports.sanitizeVectorConnector = _chunkHRI3ZMDMcjs.sanitizeVectorConnector; exports.sanitizeVectorEffects = _chunkHRI3ZMDMcjs.sanitizeVectorEffects; exports.sanitizeVectorFills = _chunkHRI3ZMDMcjs.sanitizeVectorFills; exports.sanitizeVectorFilters = _chunkHRI3ZMDMcjs.sanitizeVectorFilters; exports.sanitizeVectorFrame = _chunkHRI3ZMDMcjs.sanitizeVectorFrame; exports.sanitizeVectorGradient = _chunkHRI3ZMDMcjs.sanitizeVectorGradient; exports.sanitizeVectorLens = _chunkHRI3ZMDMcjs.sanitizeVectorLens; exports.sanitizeVectorMask = _chunkHRI3ZMDMcjs.sanitizeVectorMask; exports.sanitizeVectorPerspective = sanitizeVectorPerspective; exports.sanitizeVectorResizing = _chunkHRI3ZMDMcjs.sanitizeVectorResizing; exports.sanitizeVectorShadedPaint = _chunkHRI3ZMDMcjs.sanitizeVectorShadedPaint; exports.sanitizeVectorStrokeSettings = _chunkHRI3ZMDMcjs.sanitizeVectorStrokeSettings; exports.sanitizeVectorStrokes = _chunkHRI3ZMDMcjs.sanitizeVectorStrokes; exports.sanitizeVectorSymmetry = _chunkHRI3ZMDMcjs.sanitizeVectorSymmetry; exports.sanitizeVectorTextFields = _chunkHRI3ZMDMcjs.sanitizeVectorTextFields; exports.sanitizeVectorTextFrame = _chunkHRI3ZMDMcjs.sanitizeVectorTextFrame; exports.sanitizeWidthProfile = _chunkHRI3ZMDMcjs.sanitizeWidthProfile; exports.scaleFor = scaleFor; exports.scaleMatrix = _chunkHRI3ZMDMcjs.scaleMatrix; exports.scaleVectorStrokeWidths = _chunkHRI3ZMDMcjs.scaleVectorStrokeWidths; exports.setAnchorCorner = _chunkHRI3ZMDMcjs.setAnchorCorner; exports.setSubpathCorners = _chunkHRI3ZMDMcjs.setSubpathCorners; exports.setVectorGradientVector = _chunkHRI3ZMDMcjs.setVectorGradientVector; exports.setVectorTextShaper = _chunkHRI3ZMDMcjs.setVectorTextShaper; exports.setWidthPoint = _chunkHRI3ZMDMcjs.setWidthPoint; exports.shadeVectorColor = _chunkHRI3ZMDMcjs.shadeVectorColor; exports.simplifyPolyline = _chunkHRI3ZMDMcjs.simplifyPolyline; exports.smoothSubpath = smoothSubpath; exports.solve8 = _chunkQT26RHKKcjs.solve8; exports.solveVectorConstraints = solveVectorConstraints; exports.sortedVectorGradientStops = _chunkHRI3ZMDMcjs.sortedVectorGradientStops; exports.spanVectorGradientStops = _chunkHRI3ZMDMcjs.spanVectorGradientStops; exports.splitIntoFaces = _chunkHRI3ZMDMcjs.splitIntoFaces; exports.splitSubpathAt = splitSubpathAt; exports.splitVectorMeshU = _chunkHRI3ZMDMcjs.splitWarpMeshU; exports.splitVectorMeshV = _chunkHRI3ZMDMcjs.splitWarpMeshV; exports.starSubpath = _chunkHRI3ZMDMcjs.starSubpath; exports.stripVectorLensViews = _chunkHRI3ZMDMcjs.stripVectorLensViews; exports.stripVectorMasterArt = _chunkHRI3ZMDMcjs.stripVectorMasterArt; exports.stripVectorSymbolArt = _chunkHRI3ZMDMcjs.stripVectorSymbolArt; exports.strokePositionPoint = _chunkHRI3ZMDMcjs.strokePositionPoint; exports.strokeWidthProfileOf = _chunkHRI3ZMDMcjs.strokeWidthProfileOf; exports.styleVectorText = _chunkHRI3ZMDMcjs.styleVectorText; exports.stylizeVectorImage = stylizeVectorImage; exports.subpathEnclosesArea = subpathEnclosesArea; exports.subpathPointAt = subpathPointAt; exports.subpathSegment = _chunkHRI3ZMDMcjs.subpathSegment; exports.subpathSegmentCount = _chunkHRI3ZMDMcjs.subpathSegmentCount; exports.subpathToMorphContour = _chunkH6FX45CPcjs.subpathToMorphContour; exports.subpathsToBezier = _chunkHRI3ZMDMcjs.subpathsToBezier; exports.sweepPath = _chunkHRI3ZMDMcjs.sweepPath; exports.taperWaveFactor = _chunkHRI3ZMDMcjs.taperWaveFactor; exports.tintVectorNode = _chunkHRI3ZMDMcjs.tintVectorNode; exports.toVectorKeyInput = toVectorKeyInput; exports.toVectorModifiers = toVectorModifiers; exports.toVectorPointerInput = toVectorPointerInput; exports.traceVectorImage = traceVectorImage; exports.transformVectorEffects = _chunkHRI3ZMDMcjs.transformVectorEffects; exports.transformVectorGradient = _chunkHRI3ZMDMcjs.transformVectorGradient; exports.transformVectorNode = _chunkHRI3ZMDMcjs.transformVectorNode; exports.transformVectorPaint = _chunkHRI3ZMDMcjs.transformVectorPaint; exports.transformVectorShadedPaint = _chunkHRI3ZMDMcjs.transformVectorShadedPaint; exports.transformVectorSymmetry = _chunkHRI3ZMDMcjs.transformVectorSymmetry; exports.translateAnchor = _chunkHRI3ZMDMcjs.translateAnchor; exports.translateMatrix = _chunkHRI3ZMDMcjs.translateMatrix; exports.trimIntervals = _chunkHRI3ZMDMcjs.trimIntervals; exports.trimPaths = _chunkHRI3ZMDMcjs.trimPaths; exports.trimPathsIndividually = _chunkHRI3ZMDMcjs.trimPathsIndividually; exports.turnMorphContour = _chunkH6FX45CPcjs.turnMorphContour; exports.twistPaths = _chunkHRI3ZMDMcjs.twistPaths; exports.unionBounds = _chunkHRI3ZMDMcjs.unionBounds; exports.validateVectorConstraint = validateVectorConstraint; exports.variableStrokeOutline = _chunkHRI3ZMDMcjs.variableStrokeOutline; exports.variableStrokeRings = _chunkHRI3ZMDMcjs.variableStrokeRings; exports.vectorAngleDirection = vectorAngleDirection; exports.vectorAppearanceNodes = _chunkHRI3ZMDMcjs.vectorAppearanceNodes; exports.vectorAppearanceOutline = _chunkHRI3ZMDMcjs.vectorAppearanceOutline; exports.vectorAppearanceShapes = _chunkHRI3ZMDMcjs.vectorAppearanceShapes; exports.vectorArtModels = vectorArtModels; exports.vectorArtboards = _chunkHRI3ZMDMcjs.vectorArtboards; exports.vectorBevelFaces = _chunkHRI3ZMDMcjs.vectorBevelFaces; exports.vectorBlendColorDistance = vectorBlendColorDistance; exports.vectorBlendKeyTargets = vectorBlendKeyTargets; exports.vectorBlendKeys = vectorBlendKeys; exports.vectorBlendModeCss = _chunkHRI3ZMDMcjs.vectorBlendModeCss; exports.vectorBlendModeFromCss = _chunkHRI3ZMDMcjs.vectorBlendModeFromCss; exports.vectorBlendRail = vectorBlendRail; exports.vectorBlendRailAt = vectorBlendRailAt; exports.vectorBlendSpine = vectorBlendSpine; exports.vectorBlendStepCount = vectorBlendStepCount; exports.vectorBoundsInside = _chunkHRI3ZMDMcjs.vectorBoundsInside; exports.vectorBoxCorners = vectorBoxCorners; exports.vectorBoxMatrix = _chunkHRI3ZMDMcjs.vectorBoxMatrix; exports.vectorBrushstrokeBrush = _chunkHRI3ZMDMcjs.vectorBrushstrokeBrush; exports.vectorBrushstrokeBrushes = _chunkHRI3ZMDMcjs.vectorBrushstrokeBrushes; exports.vectorBrushstrokeCharacterError = _chunkHRI3ZMDMcjs.vectorBrushstrokeCharacterError; exports.vectorBrushstrokeImages = _chunkHRI3ZMDMcjs.vectorBrushstrokeImages; exports.vectorBrushstrokeReach = _chunkHRI3ZMDMcjs.vectorBrushstrokeReach; exports.vectorBuilderErasedEdges = vectorBuilderErasedEdges; exports.vectorChildAppearanceShapes = _chunkHRI3ZMDMcjs.vectorChildAppearanceShapes; exports.vectorConnectionSites = _chunkHRI3ZMDMcjs.vectorConnectionSites; exports.vectorConnectorTargetAt = _chunkHRI3ZMDMcjs.vectorConnectorTargetAt; exports.vectorConnectorWorldAnchors = _chunkHRI3ZMDMcjs.vectorConnectorWorldAnchors; exports.vectorConstraintActions = vectorConstraintActions; exports.vectorConstraintDof = vectorConstraintDof; exports.vectorConstraintEnv = vectorConstraintEnv; exports.vectorConstraintGlyphs = vectorConstraintGlyphs; exports.vectorConstraintPanel = vectorConstraintPanel; exports.vectorConstraintResiduals = vectorConstraintResiduals; exports.vectorConstraintValue = vectorConstraintValue; exports.vectorCornerAt = _chunkHRI3ZMDMcjs.vectorCornerAt; exports.vectorCorners = _chunkHRI3ZMDMcjs.vectorCorners; exports.vectorCornersAttribute = _chunkHRI3ZMDMcjs.vectorCornersAttribute; exports.vectorDiamondPath = vectorDiamondPath; exports.vectorDistortDabMap = vectorDistortDabMap; exports.vectorDistortFalloff = vectorDistortFalloff; exports.vectorDistortQuad = vectorDistortQuad; exports.vectorDocumentToLottie = vectorDocumentToLottie; exports.vectorDocumentToPdf = vectorDocumentToPdf; exports.vectorDocumentToSvg = _chunkHRI3ZMDMcjs.vectorDocumentToSvg; exports.vectorEffectInputBounds = _chunkHRI3ZMDMcjs.vectorEffectInputBounds; exports.vectorEffectInputPaths = _chunkHRI3ZMDMcjs.vectorEffectInputPaths; exports.vectorEnteredGroups = _chunkHRI3ZMDMcjs.vectorEnteredGroups; exports.vectorEnvelopeFrame = _chunkHRI3ZMDMcjs.vectorEnvelopeFrame; exports.vectorEnvelopeMap = _chunkHRI3ZMDMcjs.vectorEnvelopeMap; exports.vectorEnvelopeMesh = _chunkHRI3ZMDMcjs.vectorEnvelopeMesh; exports.vectorExpressionNames = vectorExpressionNames; exports.vectorExtrudeFaces = _chunkHRI3ZMDMcjs.vectorExtrudeFaces; exports.vectorFillMap = vectorFillMap; exports.vectorFills = _chunkHRI3ZMDMcjs.vectorFills; exports.vectorFilterMarkup = _chunkHRI3ZMDMcjs.vectorFilterMarkup; exports.vectorFilterParamKeys = _chunkHRI3ZMDMcjs.vectorFilterParamKeys; exports.vectorFilterReach = _chunkHRI3ZMDMcjs.vectorFilterReach; exports.vectorFilterSvg = _chunkHRI3ZMDMcjs.vectorFilterSvg; exports.vectorFrameChildMatrix = _chunkHRI3ZMDMcjs.vectorFrameChildMatrix; exports.vectorFrameContains = _chunkHRI3ZMDMcjs.vectorFrameContains; exports.vectorFrameDocument = _chunkHRI3ZMDMcjs.vectorFrameDocument; exports.vectorFrameDrawn = _chunkHRI3ZMDMcjs.vectorFrameDrawn; exports.vectorFrameRectPath = _chunkHRI3ZMDMcjs.vectorFrameRectPath; exports.vectorFreeformField = _chunkHRI3ZMDMcjs.vectorFreeformField; exports.vectorFreeformLineSegments = _chunkHRI3ZMDMcjs.vectorFreeformLineSegments; exports.vectorFreeformSpreadScale = _chunkHRI3ZMDMcjs.vectorFreeformSpreadScale; exports.vectorGradientArea = _chunkHRI3ZMDMcjs.vectorGradientArea; exports.vectorGradientAspect = _chunkHRI3ZMDMcjs.vectorGradientAspect; exports.vectorGradientBarPosition = vectorGradientBarPosition; exports.vectorGradientFocalParam = _chunkHRI3ZMDMcjs.vectorGradientFocalParam; exports.vectorGradientHandles = _chunkHRI3ZMDMcjs.vectorGradientHandles; exports.vectorGradientMatrix = _chunkHRI3ZMDMcjs.vectorGradientMatrix; exports.vectorGradientMidpointFromPosition = _chunkHRI3ZMDMcjs.vectorGradientMidpointFromPosition; exports.vectorGradientMidpointPosition = _chunkHRI3ZMDMcjs.vectorGradientMidpointPosition; exports.vectorGradientNeedsExpansion = _chunkHRI3ZMDMcjs.vectorGradientNeedsExpansion; exports.vectorGradientParam = _chunkHRI3ZMDMcjs.vectorGradientParam; exports.vectorGradientPoints = _chunkHRI3ZMDMcjs.vectorGradientPoints; exports.vectorGradientRamp = _chunkHRI3ZMDMcjs.vectorGradientRamp; exports.vectorGradientSvgDefs = _chunkHRI3ZMDMcjs.vectorGradientSvgDefs; exports.vectorGradientTAt = _chunkHRI3ZMDMcjs.vectorGradientTAt; exports.vectorGradientTargetPath = vectorGradientTargetPath; exports.vectorGradientUnitsMatrix = _chunkHRI3ZMDMcjs.vectorGradientUnitsMatrix; exports.vectorHalftone = vectorHalftone; exports.vectorHatch = vectorHatch; exports.vectorHomography = _chunkQT26RHKKcjs.homographyFromPoints; exports.vectorHomographyKeepsQuad = _chunkQT26RHKKcjs.homographyKeepsQuad; exports.vectorIdentityMesh = _chunkHRI3ZMDMcjs.identityWarpMesh; exports.vectorInkShapeName = vectorInkShapeName; exports.vectorInstanceDrawn = _chunkHRI3ZMDMcjs.vectorInstanceDrawn; exports.vectorInstanceGroup = _chunkHRI3ZMDMcjs.vectorInstanceGroup; exports.vectorLensColorMap = _chunkHRI3ZMDMcjs.vectorLensColorMap; exports.vectorLensDrawn = _chunkHRI3ZMDMcjs.vectorLensDrawn; exports.vectorLiveBooleanSteps = _chunkHRI3ZMDMcjs.vectorLiveBooleanSteps; exports.vectorLowPoly = vectorLowPoly; exports.vectorMaskContains = _chunkHRI3ZMDMcjs.vectorMaskContains; exports.vectorMaskContentBounds = _chunkHRI3ZMDMcjs.vectorMaskContentBounds; exports.vectorMaskContents = _chunkHRI3ZMDMcjs.vectorMaskContents; exports.vectorMaskOwner = _chunkHRI3ZMDMcjs.vectorMaskOwner; exports.vectorMaskRegion = _chunkHRI3ZMDMcjs.vectorMaskRegion; exports.vectorMaskRegionPath = _chunkHRI3ZMDMcjs.vectorMaskRegionPath; exports.vectorMaskRegionShapes = _chunkHRI3ZMDMcjs.vectorMaskRegionShapes; exports.vectorMaskRenderData = _chunkHRI3ZMDMcjs.vectorMaskRenderData; exports.vectorMaskSource = _chunkHRI3ZMDMcjs.vectorMaskSource; exports.vectorMaskSummary = _chunkHRI3ZMDMcjs.vectorMaskSummary; exports.vectorMaskedGeometry = _chunkHRI3ZMDMcjs.vectorMaskedGeometry; exports.vectorMaskedLocalBounds = _chunkHRI3ZMDMcjs.vectorMaskedLocalBounds; exports.vectorMaskedShapes = _chunkHRI3ZMDMcjs.vectorMaskedShapes; exports.vectorMasterArt = _chunkHRI3ZMDMcjs.vectorMasterArt; exports.vectorMasterPages = _chunkHRI3ZMDMcjs.vectorMasterPages; exports.vectorMeshColorAt = _chunkHRI3ZMDMcjs.vectorMeshColorAt; exports.vectorMeshColumns = _chunkHRI3ZMDMcjs.warpMeshColumns; exports.vectorMeshControlBounds = _chunkHRI3ZMDMcjs.warpMeshControlBounds; exports.vectorMeshEditPoints = _chunkHRI3ZMDMcjs.warpMeshEditPoints; exports.vectorMeshFromOutline = _chunkHRI3ZMDMcjs.vectorMeshFromOutline; exports.vectorMeshGridCurves = _chunkHRI3ZMDMcjs.warpMeshGridCurves; exports.vectorMeshLines = _chunkHRI3ZMDMcjs.vectorMeshLines; exports.vectorMeshOutline = _chunkHRI3ZMDMcjs.vectorMeshOutline; exports.vectorMeshParamAt = _chunkHRI3ZMDMcjs.warpMeshParamAt; exports.vectorMeshPointAt = _chunkHRI3ZMDMcjs.vectorMeshPointAt; exports.vectorMeshRows = _chunkHRI3ZMDMcjs.warpMeshRows; exports.vectorMosaic = vectorMosaic; exports.vectorNodeBounds = _chunkHRI3ZMDMcjs.vectorNodeBounds; exports.vectorNodeEnvelope = _chunkHRI3ZMDMcjs.vectorNodeEnvelope; exports.vectorNodeFilterSvg = _chunkHRI3ZMDMcjs.vectorNodeFilterSvg; exports.vectorNodeLocalPaintBounds = _chunkHRI3ZMDMcjs.vectorNodeLocalPaintBounds; exports.vectorNodePaintBox = _chunkHRI3ZMDMcjs.vectorNodePaintBox; exports.vectorNodeRotation = _chunkHRI3ZMDMcjs.vectorNodeRotation; exports.vectorNodeToBezier = _chunkHRI3ZMDMcjs.vectorNodeToBezier; exports.vectorNodesNear = _chunkHRI3ZMDMcjs.vectorNodesNear; exports.vectorOperandOperation = _chunkHRI3ZMDMcjs.vectorOperandOperation; exports.vectorPages = _chunkHRI3ZMDMcjs.vectorPages; exports.vectorPaintLayerNodes = _chunkHRI3ZMDMcjs.vectorPaintLayerNodes; exports.vectorPaintSolid = _chunkHRI3ZMDMcjs.vectorPaintSolid; exports.vectorPaintSwatch = vectorPaintSwatch; exports.vectorPaintToHex = vectorPaintToHex; exports.vectorPaintToSvg = _chunkHRI3ZMDMcjs.vectorPaintToSvg; exports.vectorParentMatrix = _chunkHRI3ZMDMcjs.vectorParentMatrix; exports.vectorPathAt = _chunkHRI3ZMDMcjs.vectorPathAt; exports.vectorPathCircle = vectorPathCircle; exports.vectorPathData = _chunkHRI3ZMDMcjs.vectorPathData; exports.vectorPathEntries = vectorPathEntries; exports.vectorPathLocalBounds = _chunkHRI3ZMDMcjs.vectorPathLocalBounds; exports.vectorPathRings = _chunkHRI3ZMDMcjs.vectorPathRings; exports.vectorPathTextPositions = _chunkHRI3ZMDMcjs.vectorPathTextPositions; exports.vectorPathWorldBezier = _chunkHRI3ZMDMcjs.vectorPathWorldBezier; exports.vectorPathfinderShape = vectorPathfinderShape; exports.vectorPerspectiveFlatToPlane = vectorPerspectiveFlatToPlane; exports.vectorPerspectiveGridLines = vectorPerspectiveGridLines; exports.vectorPerspectiveMapPath = vectorPerspectiveMapPath; exports.vectorPerspectivePlaneMap = vectorPerspectivePlaneMap; exports.vectorPerspectivePlaneToFlat = vectorPerspectivePlaneToFlat; exports.vectorPerspectivePlanes = vectorPerspectivePlanes; exports.vectorPerspectivePreset = vectorPerspectivePreset; exports.vectorPolarAngles = vectorPolarAngles; exports.vectorPolarIncrementOf = vectorPolarIncrementOf; exports.vectorRepeaterCopies = _chunkHRI3ZMDMcjs.vectorRepeaterCopies; exports.vectorResizeCursor = vectorResizeCursor; exports.vectorResultStyle = vectorResultStyle; exports.vectorRgbaToCss = _chunkHRI3ZMDMcjs.vectorRgbaToCss; exports.vectorShadedSvgDefs = _chunkHRI3ZMDMcjs.vectorShadedSvgDefs; exports.vectorShapeBuilderHit = vectorShapeBuilderHit; exports.vectorShapeBuilderMap = vectorShapeBuilderMap; exports.vectorShearForSide = vectorShearForSide; exports.vectorSkewMatrix = vectorSkewMatrix; exports.vectorSpatialIndex = _chunkHRI3ZMDMcjs.vectorSpatialIndex; exports.vectorStacksHaveGradient = _chunkHRI3ZMDMcjs.vectorStacksHaveGradient; exports.vectorStrokeGradientDefs = _chunkHRI3ZMDMcjs.vectorStrokeGradientDefs; exports.vectorStrokeLineArea = _chunkHRI3ZMDMcjs.vectorStrokeLineArea; exports.vectorStrokeOutline = _chunkHRI3ZMDMcjs.vectorStrokeOutline; exports.vectorStrokeOutlinePath = _chunkHRI3ZMDMcjs.vectorStrokeOutlinePath; exports.vectorStrokeParts = _chunkHRI3ZMDMcjs.vectorStrokeParts; exports.vectorStrokeReach = _chunkHRI3ZMDMcjs.vectorStrokeReach; exports.vectorStrokeSettings = _chunkHRI3ZMDMcjs.vectorStrokeSettings; exports.vectorStrokeStackReach = _chunkHRI3ZMDMcjs.vectorStrokeStackReach; exports.vectorStrokeSvgParts = _chunkHRI3ZMDMcjs.vectorStrokeSvgParts; exports.vectorStrokeWidthGeometry = vectorStrokeWidthGeometry; exports.vectorStrokes = _chunkHRI3ZMDMcjs.vectorStrokes; exports.vectorSymbolUses = _chunkHRI3ZMDMcjs.vectorSymbolUses; exports.vectorSymbolsUsedIn = _chunkHRI3ZMDMcjs.vectorSymbolsUsedIn; exports.vectorSymmetryAxes = _chunkHRI3ZMDMcjs.vectorSymmetryAxes; exports.vectorSymmetryDrawn = _chunkHRI3ZMDMcjs.vectorSymmetryDrawn; exports.vectorSymmetryMatrices = _chunkHRI3ZMDMcjs.vectorSymmetryMatrices; exports.vectorTargetPaint = _chunkHRI3ZMDMcjs.vectorTargetPaint; exports.vectorTextBoxOutline = _chunkHRI3ZMDMcjs.vectorTextBoxOutline; exports.vectorTextCaret = _chunkHRI3ZMDMcjs.vectorTextCaret; exports.vectorTextFamilies = _chunkHRI3ZMDMcjs.vectorTextFamilies; exports.vectorTextGeometryNode = _chunkHRI3ZMDMcjs.vectorTextGeometryNode; exports.vectorTextHasOutlines = _chunkHRI3ZMDMcjs.vectorTextHasOutlines; exports.vectorTextIndexAt = _chunkHRI3ZMDMcjs.vectorTextIndexAt; exports.vectorTextName = _chunkHRI3ZMDMcjs.vectorTextName; exports.vectorTextPaintSource = _chunkHRI3ZMDMcjs.vectorTextPaintSource; exports.vectorTextPaths = _chunkHRI3ZMDMcjs.vectorTextPaths; exports.vectorTextRange = _chunkHRI3ZMDMcjs.vectorTextRange; exports.vectorTextRuns = _chunkHRI3ZMDMcjs.vectorTextRuns; exports.vectorTextSelectionQuads = _chunkHRI3ZMDMcjs.vectorTextSelectionQuads; exports.vectorTextShaperGeneration = _chunkHRI3ZMDMcjs.vectorTextShaperGeneration; exports.vectorTextSpanSvg = _chunkHRI3ZMDMcjs.vectorTextSpanSvg; exports.vectorTextSpans = _chunkHRI3ZMDMcjs.vectorTextSpans; exports.vectorTextStyleAt = _chunkHRI3ZMDMcjs.vectorTextStyleAt; exports.vectorToolLabel = vectorToolLabel; exports.vectorTraceContours = vectorTraceContours; exports.vectorTrackingPaths = vectorTrackingPaths; exports.vectorWarpPresetGrid = _chunkHRI3ZMDMcjs.warpPresetGrid; exports.vectorWarpPresetMesh = _chunkHRI3ZMDMcjs.warpPresetMesh; exports.vectorWorldMatrix = _chunkHRI3ZMDMcjs.vectorWorldMatrix; exports.walkVectorNodes = _chunkHRI3ZMDMcjs.walkVectorNodes; exports.widthProfileAt = _chunkHRI3ZMDMcjs.widthProfileAt; exports.widthProfileFromAttribute = _chunkHRI3ZMDMcjs.widthProfileFromAttribute; exports.widthProfileMaxScale = _chunkHRI3ZMDMcjs.widthProfileMaxScale; exports.widthProfilePreset = _chunkHRI3ZMDMcjs.widthProfilePreset; exports.widthProfilePresetId = _chunkHRI3ZMDMcjs.widthProfilePresetId; exports.widthProfileToAttribute = _chunkHRI3ZMDMcjs.widthProfileToAttribute; exports.wigglePaths = _chunkHRI3ZMDMcjs.wigglePaths; exports.withVectorAnchorIds = withVectorAnchorIds; exports.withVectorDocumentAnchorIds = withVectorDocumentAnchorIds; exports.withVectorFills = _chunkHRI3ZMDMcjs.withVectorFills; exports.withVectorStrokes = _chunkHRI3ZMDMcjs.withVectorStrokes; exports.withVectorTargetPaint = _chunkHRI3ZMDMcjs.withVectorTargetPaint; exports.zigzagPaths = _chunkHRI3ZMDMcjs.zigzagPaths;
19403
+
19404
+
19405
+
19406
+ exports.DEFAULT_VECTOR_BLEND_DISTANCE = DEFAULT_VECTOR_BLEND_DISTANCE; exports.DEFAULT_VECTOR_BLEND_STEPS = DEFAULT_VECTOR_BLEND_STEPS; exports.DEFAULT_VECTOR_FONT = _chunkHRI3ZMDMcjs.DEFAULT_VECTOR_FONT; exports.DEFAULT_VECTOR_PATH_EDIT = DEFAULT_VECTOR_PATH_EDIT; exports.DEFAULT_VECTOR_SNAP = DEFAULT_VECTOR_SNAP; exports.IDENTITY_MATRIX = _chunkHRI3ZMDMcjs.IDENTITY_MATRIX; exports.KAPPA = _chunkHRI3ZMDMcjs.KAPPA; exports.LazyMouse = LazyMouse; exports.VECTOR_ARROWHEADS = _chunkHRI3ZMDMcjs.VECTOR_ARROWHEADS; exports.VECTOR_ARROWHEAD_LABELS = VECTOR_ARROWHEAD_LABELS; exports.VECTOR_BLEND_MAX_SMOOTH_STEPS = VECTOR_BLEND_MAX_SMOOTH_STEPS; exports.VECTOR_BLEND_MAX_STEPS = VECTOR_BLEND_MAX_STEPS; exports.VECTOR_BLEND_MODES = _chunkHRI3ZMDMcjs.VECTOR_BLEND_MODES; exports.VECTOR_BLEND_MODE_LABELS = _chunkHRI3ZMDMcjs.VECTOR_BLEND_MODE_LABELS; exports.VECTOR_BLEND_MODE_MENU = VECTOR_BLEND_MODE_MENU; exports.VECTOR_BLEND_SPACINGS = _chunkHRI3ZMDMcjs.VECTOR_BLEND_SPACINGS; exports.VECTOR_BLEND_SPACING_LABELS = VECTOR_BLEND_SPACING_LABELS; exports.VECTOR_BRUSHSTROKE_MAX_SEED = _chunkHRI3ZMDMcjs.VECTOR_BRUSHSTROKE_MAX_SEED; exports.VECTOR_BRUSHSTROKE_SCALE = _chunkHRI3ZMDMcjs.VECTOR_BRUSHSTROKE_SCALE; exports.VECTOR_BUILDER_HATCH_GAP = VECTOR_BUILDER_HATCH_GAP; exports.VECTOR_CHARACTER_STYLE_KEYS = _chunkHRI3ZMDMcjs.VECTOR_CHARACTER_STYLE_KEYS; exports.VECTOR_CLIPBOARD_TYPE = VECTOR_CLIPBOARD_TYPE; exports.VECTOR_CONNECTOR_ROUTES = _chunkHRI3ZMDMcjs.VECTOR_CONNECTOR_ROUTES; exports.VECTOR_CONNECTOR_ROUTE_LABELS = _chunkHRI3ZMDMcjs.VECTOR_CONNECTOR_ROUTE_LABELS; exports.VECTOR_CONNECTOR_SIDES = _chunkHRI3ZMDMcjs.VECTOR_CONNECTOR_SIDES; exports.VECTOR_CONNECTOR_SIDE_LABELS = _chunkHRI3ZMDMcjs.VECTOR_CONNECTOR_SIDE_LABELS; exports.VECTOR_CONSTRAINT_GLYPHS = VECTOR_CONSTRAINT_GLYPHS; exports.VECTOR_CONSTRAINT_KINDS = _chunkHRI3ZMDMcjs.VECTOR_CONSTRAINT_KINDS; exports.VECTOR_CONSTRAINT_LABELS = VECTOR_CONSTRAINT_LABELS; exports.VECTOR_CONSTRUCTION_ANGLES = VECTOR_CONSTRUCTION_ANGLES; exports.VECTOR_CORNER_KINDS = _chunkHRI3ZMDMcjs.VECTOR_CORNER_KINDS; exports.VECTOR_CORNER_KIND_LABELS = VECTOR_CORNER_KIND_LABELS; exports.VECTOR_CORNER_WIDGET_INSET = VECTOR_CORNER_WIDGET_INSET; exports.VECTOR_DIMENSIONAL_KINDS = VECTOR_DIMENSIONAL_KINDS; exports.VECTOR_DISTORT_BRUSH_MODES = VECTOR_DISTORT_BRUSH_MODES; exports.VECTOR_DISTORT_TOLERANCE = VECTOR_DISTORT_TOLERANCE; exports.VECTOR_EDIT_TOGGLES = VECTOR_EDIT_TOGGLES; exports.VECTOR_EFFECT_DEFAULTS = _chunkHRI3ZMDMcjs.VECTOR_EFFECT_DEFAULTS; exports.VECTOR_EFFECT_LABELS = _chunkHRI3ZMDMcjs.VECTOR_EFFECT_LABELS; exports.VECTOR_EFFECT_MENU = VECTOR_EFFECT_MENU; exports.VECTOR_EFFECT_PARAM_SPECS = _chunkHRI3ZMDMcjs.VECTOR_EFFECT_PARAM_SPECS; exports.VECTOR_EFFECT_TYPES = _chunkHRI3ZMDMcjs.VECTOR_EFFECT_TYPES; exports.VECTOR_ENVELOPE_STYLE_OPTIONS = VECTOR_ENVELOPE_STYLE_OPTIONS; exports.VECTOR_FILL_GAP = VECTOR_FILL_GAP; exports.VECTOR_FILTER_DEFAULTS = _chunkHRI3ZMDMcjs.VECTOR_FILTER_DEFAULTS; exports.VECTOR_FILTER_LABELS = _chunkHRI3ZMDMcjs.VECTOR_FILTER_LABELS; exports.VECTOR_FILTER_MENU = _chunkHRI3ZMDMcjs.VECTOR_FILTER_MENU; exports.VECTOR_FILTER_PARAM_SPECS = _chunkHRI3ZMDMcjs.VECTOR_FILTER_PARAM_SPECS; exports.VECTOR_FILTER_TYPES = _chunkHRI3ZMDMcjs.VECTOR_FILTER_TYPES; exports.VECTOR_FONT_WEIGHTS = VECTOR_FONT_WEIGHTS; exports.VECTOR_GENERATED_IMAGE_AS = VECTOR_GENERATED_IMAGE_AS; exports.VECTOR_GRADIENT_INTERPOLATIONS = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_INTERPOLATIONS; exports.VECTOR_GRADIENT_INTERPOLATION_LABELS = VECTOR_GRADIENT_INTERPOLATION_LABELS; exports.VECTOR_GRADIENT_MAX_PERIODS = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_MAX_PERIODS; exports.VECTOR_GRADIENT_MIDPOINT_GAP = VECTOR_GRADIENT_MIDPOINT_GAP; exports.VECTOR_GRADIENT_MIN_STOPS = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_MIN_STOPS; exports.VECTOR_GRADIENT_OFF_BAR = VECTOR_GRADIENT_OFF_BAR; exports.VECTOR_GRADIENT_SPREADS = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_SPREADS; exports.VECTOR_GRADIENT_SPREAD_LABELS = VECTOR_GRADIENT_SPREAD_LABELS; exports.VECTOR_GRADIENT_STOP_GAP = VECTOR_GRADIENT_STOP_GAP; exports.VECTOR_GRADIENT_TYPES = _chunkHRI3ZMDMcjs.VECTOR_GRADIENT_TYPES; exports.VECTOR_GRADIENT_TYPE_LABELS = VECTOR_GRADIENT_TYPE_LABELS; exports.VECTOR_HORIZONTAL_RESIZING = _chunkHRI3ZMDMcjs.VECTOR_HORIZONTAL_RESIZING; exports.VECTOR_HORIZONTAL_RESIZING_LABELS = _chunkHRI3ZMDMcjs.VECTOR_HORIZONTAL_RESIZING_LABELS; exports.VECTOR_INK_MAX_CORNERS = VECTOR_INK_MAX_CORNERS; exports.VECTOR_LENS_LABELS = _chunkHRI3ZMDMcjs.VECTOR_LENS_LABELS; exports.VECTOR_LENS_SPECS = _chunkHRI3ZMDMcjs.VECTOR_LENS_SPECS; exports.VECTOR_LENS_TYPES = _chunkHRI3ZMDMcjs.VECTOR_LENS_TYPES; exports.VECTOR_MASK_TYPES = _chunkHRI3ZMDMcjs.VECTOR_MASK_TYPES; exports.VECTOR_MASK_TYPE_LABELS = VECTOR_MASK_TYPE_LABELS; exports.VECTOR_MASK_TYPE_OPTIONS = VECTOR_MASK_TYPE_OPTIONS; exports.VECTOR_MAX_CONSTRAINTS = VECTOR_MAX_CONSTRAINTS; exports.VECTOR_MAX_TRACKING_POINTS = VECTOR_MAX_TRACKING_POINTS; exports.VECTOR_MERGE_MODES = _chunkHRI3ZMDMcjs.VECTOR_MERGE_MODES; exports.VECTOR_MESH_MAX = _chunkHRI3ZMDMcjs.VECTOR_MESH_MAX; exports.VECTOR_OVERLAY_THEME = VECTOR_OVERLAY_THEME; exports.VECTOR_PARAGRAPH_STYLE_KEYS = _chunkHRI3ZMDMcjs.VECTOR_PARAGRAPH_STYLE_KEYS; exports.VECTOR_PATHFINDER_ACTIONS = VECTOR_PATHFINDER_ACTIONS; exports.VECTOR_PATHFINDER_LABELS = VECTOR_PATHFINDER_LABELS; exports.VECTOR_PATHFINDER_OPERATIONS = _chunkHRI3ZMDMcjs.VECTOR_PATHFINDER_OPERATIONS; exports.VECTOR_PATH_ACTIONS = VECTOR_PATH_ACTIONS; exports.VECTOR_PATH_TEXT_BASELINES = _chunkHRI3ZMDMcjs.VECTOR_PATH_TEXT_BASELINES; exports.VECTOR_PENCIL_STRING_PX = VECTOR_PENCIL_STRING_PX; exports.VECTOR_PERSPECTIVE_PLANES = _chunkHRI3ZMDMcjs.VECTOR_PERSPECTIVE_PLANES; exports.VECTOR_PLAYBACK_KIND = VECTOR_PLAYBACK_KIND; exports.VECTOR_PRESSURE_NOMINAL = _chunkHRI3ZMDMcjs.VECTOR_PRESSURE_NOMINAL; exports.VECTOR_ROTATE_HANDLE_OFFSET = VECTOR_ROTATE_HANDLE_OFFSET; exports.VECTOR_SPATIAL_MIN = _chunkHRI3ZMDMcjs.VECTOR_SPATIAL_MIN; exports.VECTOR_STROKE_ALIGN_LABELS = VECTOR_STROKE_ALIGN_LABELS; exports.VECTOR_STROKE_GRADIENT_MODES = _chunkHRI3ZMDMcjs.VECTOR_STROKE_GRADIENT_MODES; exports.VECTOR_STROKE_GRADIENT_MODE_LABELS = VECTOR_STROKE_GRADIENT_MODE_LABELS; exports.VECTOR_STROKE_SETTING_KEYS = _chunkHRI3ZMDMcjs.VECTOR_STROKE_SETTING_KEYS; exports.VECTOR_STYLE_KEYS = VECTOR_STYLE_KEYS; exports.VECTOR_STYLIZE_LABELS = VECTOR_STYLIZE_LABELS; exports.VECTOR_STYLIZE_MAX_SHAPES = VECTOR_STYLIZE_MAX_SHAPES; exports.VECTOR_STYLIZE_STYLES = VECTOR_STYLIZE_STYLES; exports.VECTOR_SYMBOL_MAX_DEPTH = _chunkHRI3ZMDMcjs.VECTOR_SYMBOL_MAX_DEPTH; exports.VECTOR_SYMMETRY_MODES = _chunkHRI3ZMDMcjs.VECTOR_SYMMETRY_MODES; exports.VECTOR_SYMMETRY_MODE_LABELS = _chunkHRI3ZMDMcjs.VECTOR_SYMMETRY_MODE_LABELS; exports.VECTOR_TEXT_ALIGNS = _chunkHRI3ZMDMcjs.VECTOR_TEXT_ALIGNS; exports.VECTOR_TEXT_ALIGN_LABELS = VECTOR_TEXT_ALIGN_LABELS; exports.VECTOR_TEXT_ALIGN_OPTIONS = VECTOR_TEXT_ALIGN_OPTIONS; exports.VECTOR_TOOLS = _chunkHRI3ZMDMcjs.VECTOR_TOOLS; exports.VECTOR_TOOL_GLYPHS = VECTOR_TOOL_GLYPHS; exports.VECTOR_TOOL_SHORTCUTS = VECTOR_TOOL_SHORTCUTS; exports.VECTOR_TRACE_MAX_PIXELS = VECTOR_TRACE_MAX_PIXELS; exports.VECTOR_TRANSFORM_HANDLES = _chunkHRI3ZMDMcjs.VECTOR_TRANSFORM_HANDLES; exports.VECTOR_VERTICAL_RESIZING = _chunkHRI3ZMDMcjs.VECTOR_VERTICAL_RESIZING; exports.VECTOR_VERTICAL_RESIZING_LABELS = _chunkHRI3ZMDMcjs.VECTOR_VERTICAL_RESIZING_LABELS; exports.VECTOR_WARP_STYLES = _chunkHRI3ZMDMcjs.WARP_STYLES; exports.VECTOR_WARP_STYLE_LABELS = _chunkHRI3ZMDMcjs.WARP_STYLE_LABELS; exports.VECTOR_WIDTH_PRESETS = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_PRESETS; exports.VECTOR_WIDTH_PRESET_IDS = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_PRESET_IDS; exports.VECTOR_WIDTH_PROFILE_MAX_POINTS = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_PROFILE_MAX_POINTS; exports.VECTOR_WIDTH_PROFILE_MAX_SCALE = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_PROFILE_MAX_SCALE; exports.VECTOR_WIDTH_SAME_T = _chunkHRI3ZMDMcjs.VECTOR_WIDTH_SAME_T; exports.VectorConstraintError = VectorConstraintError; exports.VectorEditorController = VectorEditorController; exports.VectorExprEnv = VectorExprEnv; exports.VectorExprError = VectorExprError; exports.VectorRTree = _chunkHRI3ZMDMcjs.VectorRTree; exports.VectorSnapTargets = VectorSnapTargets; exports.VectorTextError = _chunkHRI3ZMDMcjs.VectorTextError; exports.activeVectorEffects = _chunkHRI3ZMDMcjs.activeVectorEffects; exports.activeVectorFilters = _chunkHRI3ZMDMcjs.activeVectorFilters; exports.addBuilderHit = addBuilderHit; exports.addVectorConstraint = addVectorConstraint; exports.applyMatrix = _chunkHRI3ZMDMcjs.applyMatrix; exports.applyMatrixLinear = _chunkHRI3ZMDMcjs.applyMatrixLinear; exports.applyVectorBlendOptions = applyVectorBlendOptions; exports.applyVectorCornersAttribute = _chunkHRI3ZMDMcjs.applyVectorCornersAttribute; exports.applyVectorEffects = _chunkHRI3ZMDMcjs.applyVectorEffects; exports.applyVectorGradientPatch = _chunkHRI3ZMDMcjs.applyVectorGradientPatch; exports.applyVectorGradientSpread = _chunkHRI3ZMDMcjs.applyVectorGradientSpread; exports.applyVectorHomography = _chunkQT26RHKKcjs.applyHomography; exports.applyVectorParagraphStyle = applyVectorParagraphStyle; exports.applyVectorTextStyle = applyVectorTextStyle; exports.arrowheadInset = _chunkHRI3ZMDMcjs.arrowheadInset; exports.arrowheadPath = _chunkHRI3ZMDMcjs.arrowheadPath; exports.arrowheadWeight = _chunkHRI3ZMDMcjs.arrowheadWeight; exports.autoConstrainVector = autoConstrainVector; exports.autoVectorFreeformGradient = _chunkHRI3ZMDMcjs.autoVectorFreeformGradient; exports.bakeVectorTextGeometry = _chunkHRI3ZMDMcjs.bakeVectorTextGeometry; exports.bendSegment = bendSegment; exports.bezierToSubpaths = _chunkHRI3ZMDMcjs.bezierToSubpaths; exports.boundsFromPoints = _chunkHRI3ZMDMcjs.boundsFromPoints; exports.boundsIntersect = _chunkHRI3ZMDMcjs.boundsIntersect; exports.checkVectorExpression = checkVectorExpression; exports.clearVectorLiveBooleanCache = _chunkHRI3ZMDMcjs.clearVectorLiveBooleanCache; exports.cloneAnchor = _chunkHRI3ZMDMcjs.cloneAnchor; exports.cloneSubpath = _chunkHRI3ZMDMcjs.cloneSubpath; exports.cloneVectorDocument = _chunkHRI3ZMDMcjs.cloneVectorDocument; exports.cloneVectorNode = _chunkHRI3ZMDMcjs.cloneVectorNode; exports.collectPaintedNodes = _chunkHRI3ZMDMcjs.collectPaintedNodes; exports.collectPathNodes = _chunkHRI3ZMDMcjs.collectPathNodes; exports.composeVectorMatrices = _chunkHRI3ZMDMcjs.composeVectorMatrices; exports.constrainToLeave = constrainToLeave; exports.convertAnchor = _chunkHRI3ZMDMcjs.convertAnchor; exports.convertVectorGradient = _chunkHRI3ZMDMcjs.convertVectorGradient; exports.cornerBisectorPoint = _chunkHRI3ZMDMcjs.cornerBisectorPoint; exports.cornerRadiusChange = _chunkHRI3ZMDMcjs.cornerRadiusChange; exports.cornerSetback = _chunkHRI3ZMDMcjs.cornerSetback; exports.correspondMorphContours = _chunkH6FX45CPcjs.correspondMorphContours; exports.createCanvasTextShaper = _chunkHRI3ZMDMcjs.createCanvasTextShaper; exports.createMetricTextShaper = _chunkHRI3ZMDMcjs.createMetricTextShaper; exports.createOutlineTextShaper = _chunkHRI3ZMDMcjs.createOutlineTextShaper; exports.createVectorCommands = createVectorCommands; exports.createVectorEffect = _chunkHRI3ZMDMcjs.createVectorEffect; exports.createVectorEffectsToolProvider = createVectorEffectsToolProvider; exports.createVectorFilter = _chunkHRI3ZMDMcjs.createVectorFilter; exports.createVectorGenerationToolProvider = createVectorGenerationToolProvider; exports.createVectorMeshGradient = _chunkHRI3ZMDMcjs.createVectorMeshGradient; exports.createVectorMorph = _chunkH6FX45CPcjs.createVectorMorph; exports.createVectorPlaybackLocator = createVectorPlaybackLocator; exports.cssFontFamily = _chunkHRI3ZMDMcjs.cssFontFamily; exports.curvatureMoveAnchor = curvatureMoveAnchor; exports.cutSubpathAt = cutSubpathAt; exports.dashIntervals = _chunkHRI3ZMDMcjs.dashIntervals; exports.decomposeRigid = _chunkHRI3ZMDMcjs.decomposeRigid; exports.defaultVectorGradient = _chunkHRI3ZMDMcjs.defaultVectorGradient; exports.distortVectorNode = distortVectorNode; exports.distortVectorPath = distortVectorPath; exports.dragVectorMeshPoint = _chunkHRI3ZMDMcjs.dragWarpMeshPoint; exports.effectPathLength = _chunkHRI3ZMDMcjs.effectPathLength; exports.effectPathVertexCount = _chunkHRI3ZMDMcjs.effectPathVertexCount; exports.effectiveStrokeAlign = _chunkHRI3ZMDMcjs.effectiveStrokeAlign; exports.ellipseSubpath = _chunkHRI3ZMDMcjs.ellipseSubpath; exports.eraseFromFill = _chunkHRI3ZMDMcjs.eraseFromFill; exports.eraseFromOutline = _chunkHRI3ZMDMcjs.eraseFromOutline; exports.eraserRegion = _chunkHRI3ZMDMcjs.eraserRegion; exports.evalVectorExpression = evalVectorExpression; exports.evalVectorMesh = _chunkHRI3ZMDMcjs.evalWarpMesh; exports.evaluateVectorPathKeyframes = _chunkH6FX45CPcjs.evaluateVectorPathKeyframes; exports.expandVectorAppearance = _chunkHRI3ZMDMcjs.expandVectorAppearance; exports.expandVectorAppearances = _chunkHRI3ZMDMcjs.expandVectorAppearances; exports.expandVectorBlend = expandVectorBlend; exports.expandVectorCorners = _chunkHRI3ZMDMcjs.expandVectorCorners; exports.expandVectorCornersOf = _chunkHRI3ZMDMcjs.expandVectorCornersOf; exports.expandVectorGradientSpread = _chunkHRI3ZMDMcjs.expandVectorGradientSpread; exports.expandVectorGradientStops = _chunkHRI3ZMDMcjs.expandVectorGradientStops; exports.explicitVectorGradient = _chunkHRI3ZMDMcjs.explicitVectorGradient; exports.findVectorAnchorById = findVectorAnchorById; exports.findVectorNode = _chunkHRI3ZMDMcjs.findVectorNode; exports.fitCornerRadius = _chunkHRI3ZMDMcjs.fitCornerRadius; exports.fitVectorMesh = _chunkHRI3ZMDMcjs.fitWarpMesh; exports.fitVectorTextRuns = _chunkHRI3ZMDMcjs.fitVectorTextRuns; exports.foldVectorBooleanOperands = _chunkHRI3ZMDMcjs.foldVectorBooleanOperands; exports.formatVectorValue = formatVectorValue; exports.generateVectorArt = generateVectorArt; exports.generateVectorBlendChildren = generateVectorBlendChildren; exports.generateWidthProfile = _chunkHRI3ZMDMcjs.generateWidthProfile; exports.getAnchor = getAnchor; exports.getAnchorWorld = getAnchorWorld; exports.getEditablePathIds = getEditablePathIds; exports.getTransformHandlePositions = getTransformHandlePositions; exports.getVectorAppearancePanel = getVectorAppearancePanel; exports.getVectorBlendControls = getVectorBlendControls; exports.getVectorConnectorPanel = _chunkHRI3ZMDMcjs.getVectorConnectorPanel; exports.getVectorConstraintPanel = getVectorConstraintPanel; exports.getVectorCornerWidgets = getVectorCornerWidgets; exports.getVectorEffectsPanel = getVectorEffectsPanel; exports.getVectorEnteredGroups = getVectorEnteredGroups; exports.getVectorEnvelopePanel = getVectorEnvelopePanel; exports.getVectorEnvelopeTarget = getVectorEnvelopeTarget; exports.getVectorFramePanel = _chunkHRI3ZMDMcjs.getVectorFramePanel; exports.getVectorGradientAnnotator = getVectorGradientAnnotator; exports.getVectorGradientEditor = getVectorGradientEditor; exports.getVectorMaskPanel = getVectorMaskPanel; exports.getVectorOverlayRenderData = getVectorOverlayRenderData; exports.getVectorSceneRenderData = getVectorSceneRenderData; exports.getVectorSelectionBoxGeometry = getVectorSelectionBoxGeometry; exports.getVectorSelectionFrame = getVectorSelectionFrame; exports.getVectorSelectionStyle = getVectorSelectionStyle; exports.getVectorSymbolEditBackground = getVectorSymbolEditBackground; exports.getVectorSymbolsPanel = getVectorSymbolsPanel; exports.getVectorTextPanel = getVectorTextPanel; exports.getVectorTextShaper = _chunkHRI3ZMDMcjs.getVectorTextShaper; exports.getVectorWidthHandles = getVectorWidthHandles; exports.getVisibleAnchors = getVisibleAnchors; exports.getVisibleHandles = getVisibleHandles; exports.glyphBox = _chunkHRI3ZMDMcjs.glyphBox; exports.gradientMidpointRemap = _chunkHRI3ZMDMcjs.gradientMidpointRemap; exports.hasExplicitGradientGeometry = _chunkHRI3ZMDMcjs.hasExplicitGradientGeometry; exports.hasOwnVectorAppearance = _chunkHRI3ZMDMcjs.hasOwnVectorAppearance; exports.hasPaint = _chunkHRI3ZMDMcjs.hasPaint; exports.hasStrokeExtras = _chunkHRI3ZMDMcjs.hasStrokeExtras; exports.hasVectorAppearance = _chunkHRI3ZMDMcjs.hasVectorAppearance; exports.hasVectorCorners = _chunkHRI3ZMDMcjs.hasVectorCorners; exports.hasVectorPaintStacks = _chunkHRI3ZMDMcjs.hasVectorPaintStacks; exports.hitTestVectorNode = _chunkHRI3ZMDMcjs.hitTestVectorNode; exports.hitTestVectorNodes = _chunkHRI3ZMDMcjs.hitTestVectorNodes; exports.hitTestVectorPaintLayer = _chunkHRI3ZMDMcjs.hitTestVectorPaintLayer; exports.hitTestVectorPaintStack = _chunkHRI3ZMDMcjs.hitTestVectorPaintStack; exports.hitTestVectorStroke = _chunkHRI3ZMDMcjs.hitTestVectorStroke; exports.hitVectorGradientAnnotator = hitVectorGradientAnnotator; exports.inferAnchorType = _chunkHRI3ZMDMcjs.inferAnchorType; exports.inferVectorConstraints = inferVectorConstraints; exports.insertAnchor = _chunkHRI3ZMDMcjs.insertAnchor; exports.insertVectorGradientStop = _chunkHRI3ZMDMcjs.insertVectorGradientStop; exports.insertWidthPoint = _chunkHRI3ZMDMcjs.insertWidthPoint; exports.interpolateMorphContours = _chunkH6FX45CPcjs.interpolateMorphContours; exports.interpolateRigidMatrix = _chunkH6FX45CPcjs.interpolateRigidMatrix; exports.interpolateVectorColor = _chunkH6FX45CPcjs.interpolateVectorColor; exports.interpolateVectorPaint = _chunkH6FX45CPcjs.interpolateVectorPaint; exports.interpolateVectorPaths = _chunkH6FX45CPcjs.interpolateVectorPaths; exports.interpolateVectorStyle = _chunkH6FX45CPcjs.interpolateVectorStyle; exports.interpolateWidthProfiles = _chunkH6FX45CPcjs.interpolateWidthProfiles; exports.invertMatrix = _chunkHRI3ZMDMcjs.invertMatrix; exports.isCentredVectorGradient = _chunkHRI3ZMDMcjs.isCentredVectorGradient; exports.isClosedBezierShape = _chunkHRI3ZMDMcjs.isClosedBezierShape; exports.isDrawnVectorPaintLayer = _chunkHRI3ZMDMcjs.isDrawnVectorPaintLayer; exports.isIdentityMatrix = _chunkHRI3ZMDMcjs.isIdentityMatrix; exports.isPlainVectorPaintLayer = _chunkHRI3ZMDMcjs.isPlainVectorPaintLayer; exports.isUniformWidthProfile = _chunkHRI3ZMDMcjs.isUniformWidthProfile; exports.isValidVectorMesh = _chunkHRI3ZMDMcjs.isValidWarpMesh; exports.isValidVectorParameterName = isValidVectorParameterName; exports.isVectorBlendGroup = isVectorBlendGroup; exports.isVectorBlendMode = _chunkHRI3ZMDMcjs.isVectorBlendMode; exports.isVectorBrushstrokeLayer = _chunkHRI3ZMDMcjs.isVectorBrushstrokeLayer; exports.isVectorConnector = _chunkHRI3ZMDMcjs.isVectorConnector; exports.isVectorFilterType = _chunkHRI3ZMDMcjs.isVectorFilterType; exports.isVectorFrame = _chunkHRI3ZMDMcjs.isVectorFrame; exports.isVectorFreeformGradient = _chunkHRI3ZMDMcjs.isVectorFreeformGradient; exports.isVectorGradient = _chunkHRI3ZMDMcjs.isVectorGradient; exports.isVectorLens = _chunkHRI3ZMDMcjs.isVectorLens; exports.isVectorLiveBoolean = _chunkHRI3ZMDMcjs.isVectorLiveBoolean; exports.isVectorMaskActive = _chunkHRI3ZMDMcjs.isVectorMaskActive; exports.isVectorMaskGroup = _chunkHRI3ZMDMcjs.isVectorMaskGroup; exports.isVectorMaskType = _chunkHRI3ZMDMcjs.isVectorMaskType; exports.isVectorMasterPage = _chunkHRI3ZMDMcjs.isVectorMasterPage; exports.isVectorMeshGradient = _chunkHRI3ZMDMcjs.isVectorMeshGradient; exports.isVectorShadedPaint = _chunkHRI3ZMDMcjs.isVectorShadedPaint; exports.isVectorSymmetryGroup = _chunkHRI3ZMDMcjs.isVectorSymmetryGroup; exports.isVectorTextTarget = isVectorTextTarget; exports.joinSubpaths = joinSubpaths; exports.knifePath = _chunkHRI3ZMDMcjs.knifePath; exports.layoutVectorText = _chunkHRI3ZMDMcjs.layoutVectorText; exports.lineSubpath = _chunkHRI3ZMDMcjs.lineSubpath; exports.loadOpenTypeFont = _chunk5UEFNX24cjs.loadOpenTypeFont; exports.locateVectorNode = _chunkHRI3ZMDMcjs.locateVectorNode; exports.lottieValueAt = lottieValueAt; exports.mapBezierPath = _chunkHRI3ZMDMcjs.mapBezierPath; exports.mapVectorGradient = _chunkHRI3ZMDMcjs.mapVectorGradient; exports.mapVectorMeshPoints = _chunkHRI3ZMDMcjs.mapWarpMeshPoints; exports.mapVectorPaint = _chunkHRI3ZMDMcjs.mapVectorPaint; exports.mapVectorPaintColors = _chunkHRI3ZMDMcjs.mapVectorPaintColors; exports.mapVectorPoints = _chunkHRI3ZMDMcjs.mapVectorPoints; exports.mapVectorShadedPaint = _chunkHRI3ZMDMcjs.mapVectorShadedPaint; exports.mapVectorSubpaths = _chunkHRI3ZMDMcjs.mapVectorSubpaths; exports.matrixRotation = _chunkHRI3ZMDMcjs.matrixRotation; exports.measureVectorConstraint = measureVectorConstraint; exports.measureVectorPath = _chunkHRI3ZMDMcjs.measureVectorPath; exports.mergePaths = _chunkHRI3ZMDMcjs.mergePaths; exports.mirrorWidthProfile = _chunkHRI3ZMDMcjs.mirrorWidthProfile; exports.morphContourToSubpath = _chunkH6FX45CPcjs.morphContourToSubpath; exports.morphPathsCross = _chunkH6FX45CPcjs.morphPathsCross; exports.moveAnchorHandle = _chunkHRI3ZMDMcjs.moveAnchorHandle; exports.moveVectorGradientHandle = _chunkHRI3ZMDMcjs.moveVectorGradientHandle; exports.moveVectorGradientStop = _chunkHRI3ZMDMcjs.moveVectorGradientStop; exports.multiplyMatrices = _chunkHRI3ZMDMcjs.multiplyMatrices; exports.nearestSegment = _chunkHRI3ZMDMcjs.nearestSegment; exports.nearestStrokePosition = _chunkHRI3ZMDMcjs.nearestStrokePosition; exports.nearestVectorConnectionSite = _chunkHRI3ZMDMcjs.nearestVectorConnectionSite; exports.nearestVectorShadingPoint = _chunkHRI3ZMDMcjs.nearestVectorShadingPoint; exports.needsVectorPaintLayers = _chunkHRI3ZMDMcjs.needsVectorPaintLayers; exports.newVectorStrokeLayer = _chunkHRI3ZMDMcjs.newVectorStrokeLayer; exports.nextVectorConstraintName = nextVectorConstraintName; exports.nextVectorCornerKind = _chunkHRI3ZMDMcjs.nextVectorCornerKind; exports.nodeMatrix = _chunkHRI3ZMDMcjs.nodeMatrix; exports.normalizeVectorEffectParams = _chunkHRI3ZMDMcjs.normalizeVectorEffectParams; exports.normalizeVectorFilterParams = _chunkHRI3ZMDMcjs.normalizeVectorFilterParams; exports.normalizeVectorPaintStacks = _chunkHRI3ZMDMcjs.normalizeVectorPaintStacks; exports.normalizeVectorTextRuns = _chunkHRI3ZMDMcjs.normalizeVectorTextRuns; exports.offsetPaths = _chunkHRI3ZMDMcjs.offsetPaths; exports.orderVectorQuad = _chunkQT26RHKKcjs.orderQuad; exports.parseOpenTypeFont = _chunk5UEFNX24cjs.parseOpenTypeFont; exports.parseSvgTransform = _chunkHRI3ZMDMcjs.parseSvgTransform; exports.parseVectorColor = _chunkHRI3ZMDMcjs.parseVectorColor; exports.parseVectorLottie = parseVectorLottie; exports.parseVectorSvg = _chunkHRI3ZMDMcjs.parseVectorSvg; exports.patchVectorCharacterStyle = _chunkHRI3ZMDMcjs.patchVectorCharacterStyle; exports.patchVectorParagraphStyle = _chunkHRI3ZMDMcjs.patchVectorParagraphStyle; exports.pathTextFrameFromBezier = _chunkHRI3ZMDMcjs.pathTextFrameFromBezier; exports.pathsCenter = _chunkHRI3ZMDMcjs.pathsCenter; exports.patternAttrs = _chunkHRI3ZMDMcjs.patternAttrs; exports.periodicVectorGradientStops = _chunkHRI3ZMDMcjs.periodicVectorGradientStops; exports.pinVectorGradient = _chunkHRI3ZMDMcjs.pinVectorGradient; exports.planShapeBuilder = planShapeBuilder; exports.polygonSubpath = _chunkHRI3ZMDMcjs.polygonSubpath; exports.polylineBounds = _chunkHRI3ZMDMcjs.polylineBounds; exports.prefixVectorIds = _chunkHRI3ZMDMcjs.prefixVectorIds; exports.pressureWidthProfile = _chunkHRI3ZMDMcjs.pressureWidthProfile; exports.puckerBloatPaths = _chunkHRI3ZMDMcjs.puckerBloatPaths; exports.pullVectorMesh = _chunkHRI3ZMDMcjs.pullWarpMesh; exports.purgeVectorConstraints = purgeVectorConstraints; exports.quantizeVectorTraceColors = quantizeVectorTraceColors; exports.randomVectorBrushstrokeSeed = _chunkHRI3ZMDMcjs.randomVectorBrushstrokeSeed; exports.recognizeInkShape = recognizeInkShape; exports.rectSubpath = _chunkHRI3ZMDMcjs.rectSubpath; exports.refineMorphContour = _chunkH6FX45CPcjs.refineMorphContour; exports.refreshVectorBlends = refreshVectorBlends; exports.regenerateVectorArt = regenerateVectorArt; exports.releaseVectorBlend = releaseVectorBlend; exports.removeAnchorKeepingShape = removeAnchorKeepingShape; exports.removeAnchors = _chunkHRI3ZMDMcjs.removeAnchors; exports.removeAnchorsKeepingShape = removeAnchorsKeepingShape; exports.removeRedundantPoints = removeRedundantPoints; exports.removeVectorFreeformPoint = _chunkHRI3ZMDMcjs.removeVectorFreeformPoint; exports.removeVectorGradientStop = _chunkHRI3ZMDMcjs.removeVectorGradientStop; exports.removeVectorMeshSplitU = _chunkHRI3ZMDMcjs.removeWarpMeshSplitU; exports.removeVectorMeshSplitV = _chunkHRI3ZMDMcjs.removeWarpMeshSplitV; exports.removeWidthPoints = _chunkHRI3ZMDMcjs.removeWidthPoints; exports.repeatPaths = _chunkHRI3ZMDMcjs.repeatPaths; exports.replaceVectorText = _chunkHRI3ZMDMcjs.replaceVectorText; exports.rerouteVectorConnectors = _chunkHRI3ZMDMcjs.rerouteVectorConnectors; exports.resampleGradientStops = _chunkH6FX45CPcjs.resampleGradientStops; exports.resizeVectorMesh = _chunkHRI3ZMDMcjs.resizeWarpMesh; exports.resolveVectorBlendOptions = resolveVectorBlendOptions; exports.resolveVectorLenses = _chunkHRI3ZMDMcjs.resolveVectorLenses; exports.resolveVectorMasterPages = _chunkHRI3ZMDMcjs.resolveVectorMasterPages; exports.resolveVectorSymbols = _chunkHRI3ZMDMcjs.resolveVectorSymbols; exports.reverseMorphContour = _chunkH6FX45CPcjs.reverseMorphContour; exports.reverseSubpath = _chunkHRI3ZMDMcjs.reverseSubpath; exports.reverseVectorGradient = _chunkHRI3ZMDMcjs.reverseVectorGradient; exports.reverseWidthProfile = _chunkHRI3ZMDMcjs.reverseWidthProfile; exports.rotateMatrix = _chunkHRI3ZMDMcjs.rotateMatrix; exports.roundCornerPaths = _chunkHRI3ZMDMcjs.roundCornerPaths; exports.roundSubpaths = _chunkHRI3ZMDMcjs.roundSubpaths; exports.routeVectorConnector = _chunkHRI3ZMDMcjs.routeVectorConnector; exports.samplePlainStops = _chunkHRI3ZMDMcjs.samplePlainStops; exports.samplePolyline = samplePolyline; exports.sampleVectorFreeform = _chunkHRI3ZMDMcjs.sampleVectorFreeform; exports.sampleVectorGradient = _chunkHRI3ZMDMcjs.sampleVectorGradient; exports.sampleVectorGradientAt = _chunkHRI3ZMDMcjs.sampleVectorGradientAt; exports.sampleVectorPaintDefAt = _chunkHRI3ZMDMcjs.sampleVectorPaintDefAt; exports.sanitizeVectorBrushstroke = _chunkHRI3ZMDMcjs.sanitizeVectorBrushstroke; exports.sanitizeVectorBrushstrokePaper = _chunkHRI3ZMDMcjs.sanitizeVectorBrushstrokePaper; exports.sanitizeVectorConnector = _chunkHRI3ZMDMcjs.sanitizeVectorConnector; exports.sanitizeVectorEffects = _chunkHRI3ZMDMcjs.sanitizeVectorEffects; exports.sanitizeVectorFills = _chunkHRI3ZMDMcjs.sanitizeVectorFills; exports.sanitizeVectorFilters = _chunkHRI3ZMDMcjs.sanitizeVectorFilters; exports.sanitizeVectorFrame = _chunkHRI3ZMDMcjs.sanitizeVectorFrame; exports.sanitizeVectorGradient = _chunkHRI3ZMDMcjs.sanitizeVectorGradient; exports.sanitizeVectorLens = _chunkHRI3ZMDMcjs.sanitizeVectorLens; exports.sanitizeVectorMask = _chunkHRI3ZMDMcjs.sanitizeVectorMask; exports.sanitizeVectorPerspective = sanitizeVectorPerspective; exports.sanitizeVectorResizing = _chunkHRI3ZMDMcjs.sanitizeVectorResizing; exports.sanitizeVectorShadedPaint = _chunkHRI3ZMDMcjs.sanitizeVectorShadedPaint; exports.sanitizeVectorStrokeSettings = _chunkHRI3ZMDMcjs.sanitizeVectorStrokeSettings; exports.sanitizeVectorStrokes = _chunkHRI3ZMDMcjs.sanitizeVectorStrokes; exports.sanitizeVectorSymmetry = _chunkHRI3ZMDMcjs.sanitizeVectorSymmetry; exports.sanitizeVectorTextFields = _chunkHRI3ZMDMcjs.sanitizeVectorTextFields; exports.sanitizeVectorTextFrame = _chunkHRI3ZMDMcjs.sanitizeVectorTextFrame; exports.sanitizeWidthProfile = _chunkHRI3ZMDMcjs.sanitizeWidthProfile; exports.scaleFor = scaleFor; exports.scaleMatrix = _chunkHRI3ZMDMcjs.scaleMatrix; exports.scaleVectorStrokeWidths = _chunkHRI3ZMDMcjs.scaleVectorStrokeWidths; exports.setAnchorCorner = _chunkHRI3ZMDMcjs.setAnchorCorner; exports.setSubpathCorners = _chunkHRI3ZMDMcjs.setSubpathCorners; exports.setVectorGradientVector = _chunkHRI3ZMDMcjs.setVectorGradientVector; exports.setVectorTextShaper = _chunkHRI3ZMDMcjs.setVectorTextShaper; exports.setWidthPoint = _chunkHRI3ZMDMcjs.setWidthPoint; exports.shadeVectorColor = _chunkHRI3ZMDMcjs.shadeVectorColor; exports.simplifyPolyline = _chunkHRI3ZMDMcjs.simplifyPolyline; exports.smoothSubpath = smoothSubpath; exports.solve8 = _chunkQT26RHKKcjs.solve8; exports.solveVectorConstraints = solveVectorConstraints; exports.sortedVectorGradientStops = _chunkHRI3ZMDMcjs.sortedVectorGradientStops; exports.spanVectorGradientStops = _chunkHRI3ZMDMcjs.spanVectorGradientStops; exports.splitIntoFaces = _chunkHRI3ZMDMcjs.splitIntoFaces; exports.splitSubpathAt = splitSubpathAt; exports.splitVectorMeshU = _chunkHRI3ZMDMcjs.splitWarpMeshU; exports.splitVectorMeshV = _chunkHRI3ZMDMcjs.splitWarpMeshV; exports.starSubpath = _chunkHRI3ZMDMcjs.starSubpath; exports.stripVectorLensViews = _chunkHRI3ZMDMcjs.stripVectorLensViews; exports.stripVectorMasterArt = _chunkHRI3ZMDMcjs.stripVectorMasterArt; exports.stripVectorSymbolArt = _chunkHRI3ZMDMcjs.stripVectorSymbolArt; exports.strokePositionPoint = _chunkHRI3ZMDMcjs.strokePositionPoint; exports.strokeWidthProfileOf = _chunkHRI3ZMDMcjs.strokeWidthProfileOf; exports.styleVectorText = _chunkHRI3ZMDMcjs.styleVectorText; exports.stylizeVectorImage = stylizeVectorImage; exports.subpathEnclosesArea = subpathEnclosesArea; exports.subpathPointAt = subpathPointAt; exports.subpathSegment = _chunkHRI3ZMDMcjs.subpathSegment; exports.subpathSegmentCount = _chunkHRI3ZMDMcjs.subpathSegmentCount; exports.subpathToMorphContour = _chunkH6FX45CPcjs.subpathToMorphContour; exports.subpathsToBezier = _chunkHRI3ZMDMcjs.subpathsToBezier; exports.sweepPath = _chunkHRI3ZMDMcjs.sweepPath; exports.taperWaveFactor = _chunkHRI3ZMDMcjs.taperWaveFactor; exports.tintVectorNode = _chunkHRI3ZMDMcjs.tintVectorNode; exports.toVectorKeyInput = toVectorKeyInput; exports.toVectorModifiers = toVectorModifiers; exports.toVectorPointerInput = toVectorPointerInput; exports.traceVectorImage = traceVectorImage; exports.transformVectorEffects = _chunkHRI3ZMDMcjs.transformVectorEffects; exports.transformVectorGradient = _chunkHRI3ZMDMcjs.transformVectorGradient; exports.transformVectorNode = _chunkHRI3ZMDMcjs.transformVectorNode; exports.transformVectorPaint = _chunkHRI3ZMDMcjs.transformVectorPaint; exports.transformVectorShadedPaint = _chunkHRI3ZMDMcjs.transformVectorShadedPaint; exports.transformVectorSymmetry = _chunkHRI3ZMDMcjs.transformVectorSymmetry; exports.translateAnchor = _chunkHRI3ZMDMcjs.translateAnchor; exports.translateMatrix = _chunkHRI3ZMDMcjs.translateMatrix; exports.trimIntervals = _chunkHRI3ZMDMcjs.trimIntervals; exports.trimPaths = _chunkHRI3ZMDMcjs.trimPaths; exports.trimPathsIndividually = _chunkHRI3ZMDMcjs.trimPathsIndividually; exports.turnMorphContour = _chunkH6FX45CPcjs.turnMorphContour; exports.twistPaths = _chunkHRI3ZMDMcjs.twistPaths; exports.unionBounds = _chunkHRI3ZMDMcjs.unionBounds; exports.validateVectorConstraint = validateVectorConstraint; exports.variableStrokeOutline = _chunkHRI3ZMDMcjs.variableStrokeOutline; exports.variableStrokeRings = _chunkHRI3ZMDMcjs.variableStrokeRings; exports.vectorAngleDirection = vectorAngleDirection; exports.vectorAppearanceNodes = _chunkHRI3ZMDMcjs.vectorAppearanceNodes; exports.vectorAppearanceOutline = _chunkHRI3ZMDMcjs.vectorAppearanceOutline; exports.vectorAppearanceShapes = _chunkHRI3ZMDMcjs.vectorAppearanceShapes; exports.vectorArtModels = vectorArtModels; exports.vectorArtboards = _chunkHRI3ZMDMcjs.vectorArtboards; exports.vectorBevelFaces = _chunkHRI3ZMDMcjs.vectorBevelFaces; exports.vectorBlendColorDistance = vectorBlendColorDistance; exports.vectorBlendKeyTargets = vectorBlendKeyTargets; exports.vectorBlendKeys = vectorBlendKeys; exports.vectorBlendModeCss = _chunkHRI3ZMDMcjs.vectorBlendModeCss; exports.vectorBlendModeFromCss = _chunkHRI3ZMDMcjs.vectorBlendModeFromCss; exports.vectorBlendRail = vectorBlendRail; exports.vectorBlendRailAt = vectorBlendRailAt; exports.vectorBlendSpine = vectorBlendSpine; exports.vectorBlendStepCount = vectorBlendStepCount; exports.vectorBoundsInside = _chunkHRI3ZMDMcjs.vectorBoundsInside; exports.vectorBoxCorners = vectorBoxCorners; exports.vectorBoxMatrix = _chunkHRI3ZMDMcjs.vectorBoxMatrix; exports.vectorBrushstrokeBrush = _chunkHRI3ZMDMcjs.vectorBrushstrokeBrush; exports.vectorBrushstrokeBrushes = _chunkHRI3ZMDMcjs.vectorBrushstrokeBrushes; exports.vectorBrushstrokeCharacterError = _chunkHRI3ZMDMcjs.vectorBrushstrokeCharacterError; exports.vectorBrushstrokeImages = _chunkHRI3ZMDMcjs.vectorBrushstrokeImages; exports.vectorBrushstrokeReach = _chunkHRI3ZMDMcjs.vectorBrushstrokeReach; exports.vectorBuilderErasedEdges = vectorBuilderErasedEdges; exports.vectorChildAppearanceShapes = _chunkHRI3ZMDMcjs.vectorChildAppearanceShapes; exports.vectorConnectionSites = _chunkHRI3ZMDMcjs.vectorConnectionSites; exports.vectorConnectorTargetAt = _chunkHRI3ZMDMcjs.vectorConnectorTargetAt; exports.vectorConnectorWorldAnchors = _chunkHRI3ZMDMcjs.vectorConnectorWorldAnchors; exports.vectorConstraintActions = vectorConstraintActions; exports.vectorConstraintDof = vectorConstraintDof; exports.vectorConstraintEnv = vectorConstraintEnv; exports.vectorConstraintGlyphs = vectorConstraintGlyphs; exports.vectorConstraintPanel = vectorConstraintPanel; exports.vectorConstraintResiduals = vectorConstraintResiduals; exports.vectorConstraintValue = vectorConstraintValue; exports.vectorCornerAt = _chunkHRI3ZMDMcjs.vectorCornerAt; exports.vectorCorners = _chunkHRI3ZMDMcjs.vectorCorners; exports.vectorCornersAttribute = _chunkHRI3ZMDMcjs.vectorCornersAttribute; exports.vectorDiamondPath = vectorDiamondPath; exports.vectorDistortDabMap = vectorDistortDabMap; exports.vectorDistortFalloff = vectorDistortFalloff; exports.vectorDistortQuad = vectorDistortQuad; exports.vectorDocumentToLottie = vectorDocumentToLottie; exports.vectorDocumentToPdf = vectorDocumentToPdf; exports.vectorDocumentToSvg = _chunkHRI3ZMDMcjs.vectorDocumentToSvg; exports.vectorEffectInputBounds = _chunkHRI3ZMDMcjs.vectorEffectInputBounds; exports.vectorEffectInputPaths = _chunkHRI3ZMDMcjs.vectorEffectInputPaths; exports.vectorEnteredGroups = _chunkHRI3ZMDMcjs.vectorEnteredGroups; exports.vectorEnvelopeFrame = _chunkHRI3ZMDMcjs.vectorEnvelopeFrame; exports.vectorEnvelopeMap = _chunkHRI3ZMDMcjs.vectorEnvelopeMap; exports.vectorEnvelopeMesh = _chunkHRI3ZMDMcjs.vectorEnvelopeMesh; exports.vectorExpressionNames = vectorExpressionNames; exports.vectorExtrudeFaces = _chunkHRI3ZMDMcjs.vectorExtrudeFaces; exports.vectorFillMap = vectorFillMap; exports.vectorFills = _chunkHRI3ZMDMcjs.vectorFills; exports.vectorFilterMarkup = _chunkHRI3ZMDMcjs.vectorFilterMarkup; exports.vectorFilterParamKeys = _chunkHRI3ZMDMcjs.vectorFilterParamKeys; exports.vectorFilterReach = _chunkHRI3ZMDMcjs.vectorFilterReach; exports.vectorFilterSvg = _chunkHRI3ZMDMcjs.vectorFilterSvg; exports.vectorFrameChildMatrix = _chunkHRI3ZMDMcjs.vectorFrameChildMatrix; exports.vectorFrameContains = _chunkHRI3ZMDMcjs.vectorFrameContains; exports.vectorFrameDocument = _chunkHRI3ZMDMcjs.vectorFrameDocument; exports.vectorFrameDrawn = _chunkHRI3ZMDMcjs.vectorFrameDrawn; exports.vectorFrameRectPath = _chunkHRI3ZMDMcjs.vectorFrameRectPath; exports.vectorFreeformField = _chunkHRI3ZMDMcjs.vectorFreeformField; exports.vectorFreeformLineSegments = _chunkHRI3ZMDMcjs.vectorFreeformLineSegments; exports.vectorFreeformSpreadScale = _chunkHRI3ZMDMcjs.vectorFreeformSpreadScale; exports.vectorGradientArea = _chunkHRI3ZMDMcjs.vectorGradientArea; exports.vectorGradientAspect = _chunkHRI3ZMDMcjs.vectorGradientAspect; exports.vectorGradientBarPosition = vectorGradientBarPosition; exports.vectorGradientFocalParam = _chunkHRI3ZMDMcjs.vectorGradientFocalParam; exports.vectorGradientHandles = _chunkHRI3ZMDMcjs.vectorGradientHandles; exports.vectorGradientMatrix = _chunkHRI3ZMDMcjs.vectorGradientMatrix; exports.vectorGradientMidpointFromPosition = _chunkHRI3ZMDMcjs.vectorGradientMidpointFromPosition; exports.vectorGradientMidpointPosition = _chunkHRI3ZMDMcjs.vectorGradientMidpointPosition; exports.vectorGradientNeedsExpansion = _chunkHRI3ZMDMcjs.vectorGradientNeedsExpansion; exports.vectorGradientParam = _chunkHRI3ZMDMcjs.vectorGradientParam; exports.vectorGradientPoints = _chunkHRI3ZMDMcjs.vectorGradientPoints; exports.vectorGradientRamp = _chunkHRI3ZMDMcjs.vectorGradientRamp; exports.vectorGradientSvgDefs = _chunkHRI3ZMDMcjs.vectorGradientSvgDefs; exports.vectorGradientTAt = _chunkHRI3ZMDMcjs.vectorGradientTAt; exports.vectorGradientTargetPath = vectorGradientTargetPath; exports.vectorGradientUnitsMatrix = _chunkHRI3ZMDMcjs.vectorGradientUnitsMatrix; exports.vectorHalftone = vectorHalftone; exports.vectorHatch = vectorHatch; exports.vectorHomography = _chunkQT26RHKKcjs.homographyFromPoints; exports.vectorHomographyKeepsQuad = _chunkQT26RHKKcjs.homographyKeepsQuad; exports.vectorIdentityMesh = _chunkHRI3ZMDMcjs.identityWarpMesh; exports.vectorInkShapeName = vectorInkShapeName; exports.vectorInstanceDrawn = _chunkHRI3ZMDMcjs.vectorInstanceDrawn; exports.vectorInstanceGroup = _chunkHRI3ZMDMcjs.vectorInstanceGroup; exports.vectorLensColorMap = _chunkHRI3ZMDMcjs.vectorLensColorMap; exports.vectorLensDrawn = _chunkHRI3ZMDMcjs.vectorLensDrawn; exports.vectorLiveBooleanSteps = _chunkHRI3ZMDMcjs.vectorLiveBooleanSteps; exports.vectorLowPoly = vectorLowPoly; exports.vectorMaskContains = _chunkHRI3ZMDMcjs.vectorMaskContains; exports.vectorMaskContentBounds = _chunkHRI3ZMDMcjs.vectorMaskContentBounds; exports.vectorMaskContents = _chunkHRI3ZMDMcjs.vectorMaskContents; exports.vectorMaskOwner = _chunkHRI3ZMDMcjs.vectorMaskOwner; exports.vectorMaskRegion = _chunkHRI3ZMDMcjs.vectorMaskRegion; exports.vectorMaskRegionPath = _chunkHRI3ZMDMcjs.vectorMaskRegionPath; exports.vectorMaskRegionShapes = _chunkHRI3ZMDMcjs.vectorMaskRegionShapes; exports.vectorMaskRenderData = _chunkHRI3ZMDMcjs.vectorMaskRenderData; exports.vectorMaskSource = _chunkHRI3ZMDMcjs.vectorMaskSource; exports.vectorMaskSummary = _chunkHRI3ZMDMcjs.vectorMaskSummary; exports.vectorMaskedGeometry = _chunkHRI3ZMDMcjs.vectorMaskedGeometry; exports.vectorMaskedLocalBounds = _chunkHRI3ZMDMcjs.vectorMaskedLocalBounds; exports.vectorMaskedShapes = _chunkHRI3ZMDMcjs.vectorMaskedShapes; exports.vectorMasterArt = _chunkHRI3ZMDMcjs.vectorMasterArt; exports.vectorMasterPages = _chunkHRI3ZMDMcjs.vectorMasterPages; exports.vectorMeshColorAt = _chunkHRI3ZMDMcjs.vectorMeshColorAt; exports.vectorMeshColumns = _chunkHRI3ZMDMcjs.warpMeshColumns; exports.vectorMeshControlBounds = _chunkHRI3ZMDMcjs.warpMeshControlBounds; exports.vectorMeshEditPoints = _chunkHRI3ZMDMcjs.warpMeshEditPoints; exports.vectorMeshFromOutline = _chunkHRI3ZMDMcjs.vectorMeshFromOutline; exports.vectorMeshGridCurves = _chunkHRI3ZMDMcjs.warpMeshGridCurves; exports.vectorMeshLines = _chunkHRI3ZMDMcjs.vectorMeshLines; exports.vectorMeshOutline = _chunkHRI3ZMDMcjs.vectorMeshOutline; exports.vectorMeshParamAt = _chunkHRI3ZMDMcjs.warpMeshParamAt; exports.vectorMeshPointAt = _chunkHRI3ZMDMcjs.vectorMeshPointAt; exports.vectorMeshRows = _chunkHRI3ZMDMcjs.warpMeshRows; exports.vectorMosaic = vectorMosaic; exports.vectorNodeBounds = _chunkHRI3ZMDMcjs.vectorNodeBounds; exports.vectorNodeEnvelope = _chunkHRI3ZMDMcjs.vectorNodeEnvelope; exports.vectorNodeFilterSvg = _chunkHRI3ZMDMcjs.vectorNodeFilterSvg; exports.vectorNodeLocalPaintBounds = _chunkHRI3ZMDMcjs.vectorNodeLocalPaintBounds; exports.vectorNodePaintBox = _chunkHRI3ZMDMcjs.vectorNodePaintBox; exports.vectorNodeRotation = _chunkHRI3ZMDMcjs.vectorNodeRotation; exports.vectorNodeToBezier = _chunkHRI3ZMDMcjs.vectorNodeToBezier; exports.vectorNodesNear = _chunkHRI3ZMDMcjs.vectorNodesNear; exports.vectorOperandOperation = _chunkHRI3ZMDMcjs.vectorOperandOperation; exports.vectorPages = _chunkHRI3ZMDMcjs.vectorPages; exports.vectorPaintLayerNodes = _chunkHRI3ZMDMcjs.vectorPaintLayerNodes; exports.vectorPaintSolid = _chunkHRI3ZMDMcjs.vectorPaintSolid; exports.vectorPaintSwatch = vectorPaintSwatch; exports.vectorPaintToHex = vectorPaintToHex; exports.vectorPaintToSvg = _chunkHRI3ZMDMcjs.vectorPaintToSvg; exports.vectorParentMatrix = _chunkHRI3ZMDMcjs.vectorParentMatrix; exports.vectorPathAt = _chunkHRI3ZMDMcjs.vectorPathAt; exports.vectorPathCircle = vectorPathCircle; exports.vectorPathData = _chunkHRI3ZMDMcjs.vectorPathData; exports.vectorPathEntries = vectorPathEntries; exports.vectorPathLocalBounds = _chunkHRI3ZMDMcjs.vectorPathLocalBounds; exports.vectorPathRings = _chunkHRI3ZMDMcjs.vectorPathRings; exports.vectorPathTextPositions = _chunkHRI3ZMDMcjs.vectorPathTextPositions; exports.vectorPathWorldBezier = _chunkHRI3ZMDMcjs.vectorPathWorldBezier; exports.vectorPathfinderShape = vectorPathfinderShape; exports.vectorPerspectiveFlatToPlane = vectorPerspectiveFlatToPlane; exports.vectorPerspectiveGridLines = vectorPerspectiveGridLines; exports.vectorPerspectiveMapPath = vectorPerspectiveMapPath; exports.vectorPerspectivePlaneMap = vectorPerspectivePlaneMap; exports.vectorPerspectivePlaneToFlat = vectorPerspectivePlaneToFlat; exports.vectorPerspectivePlanes = vectorPerspectivePlanes; exports.vectorPerspectivePreset = vectorPerspectivePreset; exports.vectorPolarAngles = vectorPolarAngles; exports.vectorPolarIncrementOf = vectorPolarIncrementOf; exports.vectorRepeaterCopies = _chunkHRI3ZMDMcjs.vectorRepeaterCopies; exports.vectorResizeCursor = vectorResizeCursor; exports.vectorResultStyle = vectorResultStyle; exports.vectorRgbaToCss = _chunkHRI3ZMDMcjs.vectorRgbaToCss; exports.vectorShadedSvgDefs = _chunkHRI3ZMDMcjs.vectorShadedSvgDefs; exports.vectorShapeBuilderHit = vectorShapeBuilderHit; exports.vectorShapeBuilderMap = vectorShapeBuilderMap; exports.vectorShearForSide = vectorShearForSide; exports.vectorSkewMatrix = vectorSkewMatrix; exports.vectorSpatialIndex = _chunkHRI3ZMDMcjs.vectorSpatialIndex; exports.vectorStacksHaveGradient = _chunkHRI3ZMDMcjs.vectorStacksHaveGradient; exports.vectorStrokeGradientDefs = _chunkHRI3ZMDMcjs.vectorStrokeGradientDefs; exports.vectorStrokeLineArea = _chunkHRI3ZMDMcjs.vectorStrokeLineArea; exports.vectorStrokeOutline = _chunkHRI3ZMDMcjs.vectorStrokeOutline; exports.vectorStrokeOutlinePath = _chunkHRI3ZMDMcjs.vectorStrokeOutlinePath; exports.vectorStrokeParts = _chunkHRI3ZMDMcjs.vectorStrokeParts; exports.vectorStrokeReach = _chunkHRI3ZMDMcjs.vectorStrokeReach; exports.vectorStrokeSettings = _chunkHRI3ZMDMcjs.vectorStrokeSettings; exports.vectorStrokeStackReach = _chunkHRI3ZMDMcjs.vectorStrokeStackReach; exports.vectorStrokeSvgParts = _chunkHRI3ZMDMcjs.vectorStrokeSvgParts; exports.vectorStrokeWidthGeometry = vectorStrokeWidthGeometry; exports.vectorStrokes = _chunkHRI3ZMDMcjs.vectorStrokes; exports.vectorSymbolUses = _chunkHRI3ZMDMcjs.vectorSymbolUses; exports.vectorSymbolsUsedIn = _chunkHRI3ZMDMcjs.vectorSymbolsUsedIn; exports.vectorSymmetryAxes = _chunkHRI3ZMDMcjs.vectorSymmetryAxes; exports.vectorSymmetryDrawn = _chunkHRI3ZMDMcjs.vectorSymmetryDrawn; exports.vectorSymmetryMatrices = _chunkHRI3ZMDMcjs.vectorSymmetryMatrices; exports.vectorTargetPaint = _chunkHRI3ZMDMcjs.vectorTargetPaint; exports.vectorTextBoxOutline = _chunkHRI3ZMDMcjs.vectorTextBoxOutline; exports.vectorTextCaret = _chunkHRI3ZMDMcjs.vectorTextCaret; exports.vectorTextFamilies = _chunkHRI3ZMDMcjs.vectorTextFamilies; exports.vectorTextGeometryNode = _chunkHRI3ZMDMcjs.vectorTextGeometryNode; exports.vectorTextHasOutlines = _chunkHRI3ZMDMcjs.vectorTextHasOutlines; exports.vectorTextIndexAt = _chunkHRI3ZMDMcjs.vectorTextIndexAt; exports.vectorTextName = _chunkHRI3ZMDMcjs.vectorTextName; exports.vectorTextPaintSource = _chunkHRI3ZMDMcjs.vectorTextPaintSource; exports.vectorTextPaths = _chunkHRI3ZMDMcjs.vectorTextPaths; exports.vectorTextRange = _chunkHRI3ZMDMcjs.vectorTextRange; exports.vectorTextRuns = _chunkHRI3ZMDMcjs.vectorTextRuns; exports.vectorTextSelectionQuads = _chunkHRI3ZMDMcjs.vectorTextSelectionQuads; exports.vectorTextShaperGeneration = _chunkHRI3ZMDMcjs.vectorTextShaperGeneration; exports.vectorTextSpanSvg = _chunkHRI3ZMDMcjs.vectorTextSpanSvg; exports.vectorTextSpans = _chunkHRI3ZMDMcjs.vectorTextSpans; exports.vectorTextStyleAt = _chunkHRI3ZMDMcjs.vectorTextStyleAt; exports.vectorToolLabel = vectorToolLabel; exports.vectorTraceContours = vectorTraceContours; exports.vectorTrackingPaths = vectorTrackingPaths; exports.vectorWarpPresetGrid = _chunkHRI3ZMDMcjs.warpPresetGrid; exports.vectorWarpPresetMesh = _chunkHRI3ZMDMcjs.warpPresetMesh; exports.vectorWorldMatrix = _chunkHRI3ZMDMcjs.vectorWorldMatrix; exports.walkVectorNodes = _chunkHRI3ZMDMcjs.walkVectorNodes; exports.widthProfileAt = _chunkHRI3ZMDMcjs.widthProfileAt; exports.widthProfileFromAttribute = _chunkHRI3ZMDMcjs.widthProfileFromAttribute; exports.widthProfileMaxScale = _chunkHRI3ZMDMcjs.widthProfileMaxScale; exports.widthProfilePreset = _chunkHRI3ZMDMcjs.widthProfilePreset; exports.widthProfilePresetId = _chunkHRI3ZMDMcjs.widthProfilePresetId; exports.widthProfileToAttribute = _chunkHRI3ZMDMcjs.widthProfileToAttribute; exports.wigglePaths = _chunkHRI3ZMDMcjs.wigglePaths; exports.withVectorAnchorIds = withVectorAnchorIds; exports.withVectorDocumentAnchorIds = withVectorDocumentAnchorIds; exports.withVectorFills = _chunkHRI3ZMDMcjs.withVectorFills; exports.withVectorPlayback = withVectorPlayback; exports.withVectorStrokes = _chunkHRI3ZMDMcjs.withVectorStrokes; exports.withVectorTargetPaint = _chunkHRI3ZMDMcjs.withVectorTargetPaint; exports.zigzagPaths = _chunkHRI3ZMDMcjs.zigzagPaths;