@pixerate/editor 0.35.0 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,6 +30,12 @@ reproduced at the end of this file. Paths are relative to each source repository
30
30
 
31
31
  - `crates/tools/src/snap.rs` (`pass_dimensions`: a resized or created object's side matches another object's width or height in its own frame, nearest within the zone, when nothing else snapped on that axis) → `VectorSnapTargets.snapScale` / `matchSize` in `packages/core/src/vector/snap.ts`
32
32
 
33
+ ## effectcraft
34
+
35
+ © 2026 ArtCraft Team and the EffectCraft contributors.
36
+
37
+ - `crates/path/src/varstroke.rs` (`outline`: a variable-width stroke as the union of positively wound trapezoids per flattened segment, round wedges at bends and the caps, filled non-zero; `flatten` with a width-sampling step; `dash_intervals`; `width_factor` with the `Taper` lengths, widths and quarter-circle `ease` and the `Wave` amount, cycles and phase) → `variableStrokeRings` / `variableStrokeOutline` / `dashIntervals` in `packages/core/src/vector/varstroke.ts` and `taperWaveFactor` / `generateWidthProfile` in `packages/core/src/vector/width.ts`; the pieces are emitted as the boundary they add up to (offset sides, outer joins, inner sides trimmed at the offsets' crossing or routed through the centre) instead of being unioned one by one, and the result is refitted with cubics; test cases re-expressed → `packages/core/tests/vector-width.test.ts`
38
+
33
39
  ## figcraft
34
40
 
35
41
  © 2026 ArtCraft Team and the FigCraft contributors.
@@ -48,6 +54,10 @@ reproduced at the end of this file. Paths are relative to each source repository
48
54
  - `crates/engine/src/cmd/component.rs` (create component, combine as variants, create / detach / swap instance, reset instance and overrides, push changes, restore main, set instance properties, add / edit / delete / bind component properties) → `packages/core/src/canvas/components.ts`, `packages/core/src/canvas/componentsController.ts`
49
55
  - `crates/engine/src/{components_tests.rs,components_behaviour_tests.rs,components_scale_tests.rs}` (test cases re-expressed) → `packages/core/tests/canvas-components.test.ts`, `packages/core/tests/canvas-components-controller.test.ts`
50
56
  - `crates/engine/src/vectoredit/ops.rs` (`bend`: handles at the chord's thirds plus one shared offset so the segment passes through the pointer at `t`, `t` clamped to 0.05–0.95) → `bendSegment` in `packages/core/src/vector/pathEdit.ts`; its `delete_vertices` / `heal_handles` (a healed curve through the deleted point) were compared and not ported, as the least-error refit followed the old segments more closely
57
+ - `crates/doc/src/vector.rs` (`VectorNetwork::rounded` / `corner`, `trim`, `start_dir`: each side of a rounded point trimmed by arc length with the radius clamped so a cut takes at most half of each side, the round cut a cubic with handles `4/3 · tan(φ/4) · ρ` along the sides' directions at the cut, a curved side keeping the rest of its curve) → `packages/core/src/vector/corners.ts`
58
+ - `crates/pathops/src/lib.rs` (`stroke_outline_of`: an inside stroke as twice the width intersected with the fill, an outside one as twice the width minus the fill, open shapes always centred) → `packages/core/src/vector/stroke.ts`
59
+ - `crates/doc/src/props.rs` (`WidthProfile` / `WidthPoint`: `sanitized`, side scales, `interp` with Fritsch–Carlson `tangent` and `secant` — monotone cubic, flat before the first and after the last point — `insert_here`, `set_point` kept between neighbours, `max_scale`) → `packages/core/src/vector/width.ts`
60
+ - `crates/pathops/src/width.rs` (`variable_outline`: one-sided widths offset along each side's normal, the outer side joined with the style's join and the inner side through the centre) → `packages/core/src/vector/varstroke.ts`
51
61
 
52
62
  ## filmcraft
53
63
 
@@ -156,6 +166,13 @@ GridCraft. Apache POI is © The Apache Software Foundation, licensed under the A
156
166
  - `crates/geom/src/path.rs` (`SubPath::cut_at`) → `cutSubpathAt` in `packages/core/src/vector/pathEdit.ts`; its `bend_segment` was not used
157
167
  - `crates/tools/src/draw2/curvature.rs` (`curvature_move`) → `curvatureMoveAnchor` in `packages/core/src/vector/pathEdit.ts`
158
168
  - `crates/engine/src/cmd/draw2.rs` (`knife`, `erase_region`, `erase_outline`, `cut_subpath`: which paths a stroke reaches, fills losing the stroke's area by a boolean difference, outlines cut into runs that keep the original curves and join across a closed path's start, one object per piece) → `packages/core/src/vector/pathCut.ts`; the fixed 0.05 pt knife slit and the 24-sample crossing search were replaced by gap-free chord splitting with exact crossings
169
+ - `crates/geom/src/corners.rs` (`path_corners`, `Corner` — `setback`, `max_radius`, `fitted`, `on_bisector`, `radius_change` — `arc_handle`, `square_to`, and `cut_corners` with the round, inverted round and chamfer kinds, curved sides trimmed between cuts and a closed subpath whose first corner is cut starting where that cut ends) → `packages/core/src/vector/corners.ts`; its curved-side `round_handles` were replaced by figcraft's chord-based arc handles
170
+ - `crates/tools/src/corners.rs` (the corner widgets: shown at the selected corners, on the bisector at the arc's centre at least 10 px in, hidden on sides under 30 px; a drag sets every shown corner's radius from the pointer's travel along the bisector up to fully round; Alt-click cycles the kind; a click picks that corner) → `getVectorCornerWidgets` and the `corner` drag in `packages/core/src/vector/controller.ts`
171
+ - `crates/effects/src/stroke/arrow.rs` (`pieces`, `end_of`, `cut_point`, `trim`, `inset`, `shape`, the `ring` / `arm` / `bar` sizes and `NOTCH`: arrowheads on the open ends of the first and last subpaths, `Tip` vs `Extend` alignment, the stroke ending under the head) and `crates/doc/src/appearance.rs` (`arrow_weight`) → `packages/core/src/vector/stroke.ts`; only the triangle, arrow, open arrow, circle, square and bar heads were ported
172
+ - `crates/svg/src/lib.rs` (stroke alignment written as a double-width stroke clipped to the shape for inside and masked by it for outside) → `packages/core/src/vector/svg.ts`
173
+ - Test cases from `crates/geom/src/corners.rs`, `crates/tools/src/corners.rs` and `crates/effects/src/stroke/arrow.rs`, re-expressed → `packages/core/tests/vector-corners-strokes.test.ts`
174
+ - `crates/doc/src/appearance.rs` (`WidthProfile` as `(t, left, right)` points, two points at one `t` making a step, `PRESETS` with Taper Start / End, Lens, Pinch, Teardrop and Wave, `preset_id` / `id_of`, and `PressureProfile` simplification) → `packages/core/src/vector/width.ts`; its linear interpolation was replaced by figcraft's monotone cubic
175
+ - `crates/tools/src/distort/width.rs` (the Width tool: the stroke under the pointer and its width there, dragging outward to add or widen a width point — symmetric, Alt one side — dragging a point's centre to slide it along the path, its handle ends to widen it, width-point diamonds and side handles in the overlay, Delete removing the selected point) → `getVectorWidthHandles`, the `width` hover and drag in `packages/core/src/vector/controller.ts` and the overlay's `widthPoints` / `widthSpot` in `packages/core/src/vector/render.ts`; copying, multi-point selection and the width-point dialog were not ported
159
176
  ---
160
177
 
161
178
  ## wordcraft
@@ -77,7 +77,7 @@
77
77
 
78
78
 
79
79
 
80
- var _chunkBGNPT5PEcjs = require('../chunk-BGNPT5PE.cjs');
80
+ var _chunkGVB7ZPLZcjs = require('../chunk-GVB7ZPLZ.cjs');
81
81
 
82
82
 
83
83
 
@@ -1733,18 +1733,18 @@ var BOOLEAN_FOR = {
1733
1733
  exclude: "xor"
1734
1734
  };
1735
1735
  function isShapeNode(node) {
1736
- return !!node && _chunkBGNPT5PEcjs.isShapeDescription.call(void 0, _optionalChain([node, 'access', _55 => _55.data, 'optionalAccess', _56 => _56[SHAPE_DATA_KEY]]));
1736
+ return !!node && _chunkGVB7ZPLZcjs.isShapeDescription.call(void 0, _optionalChain([node, 'access', _55 => _55.data, 'optionalAccess', _56 => _56[SHAPE_DATA_KEY]]));
1737
1737
  }
1738
1738
  function getNodeShape(node) {
1739
1739
  const shape = _optionalChain([node, 'optionalAccess', _57 => _57.data, 'optionalAccess', _58 => _58[SHAPE_DATA_KEY]]);
1740
- return _chunkBGNPT5PEcjs.isShapeDescription.call(void 0, shape) ? shape : null;
1740
+ return _chunkGVB7ZPLZcjs.isShapeDescription.call(void 0, shape) ? shape : null;
1741
1741
  }
1742
1742
  function shapeNodeToPolygon(node, lookup, options = {}) {
1743
1743
  const shape = getNodeShape(node);
1744
1744
  if (!shape) return null;
1745
1745
  const size = getNodeSize(node, options);
1746
1746
  const origin = node.parentId && lookup ? getAbsolutePosition(node, lookup) : node.position;
1747
- const { rings, fillRule } = _chunkBGNPT5PEcjs.shapeToPolygon.call(void 0, shape, size, { tolerance: options.tolerance });
1747
+ const { rings, fillRule } = _chunkGVB7ZPLZcjs.shapeToPolygon.call(void 0, shape, size, { tolerance: options.tolerance });
1748
1748
  return {
1749
1749
  rings: rings.map((ring) => ring.map(([x, y]) => [x + origin.x, y + origin.y])),
1750
1750
  fillRule
@@ -1753,14 +1753,14 @@ function shapeNodeToPolygon(node, lookup, options = {}) {
1753
1753
  function shapeToBezierPath(shape, size) {
1754
1754
  const { width: w, height: h } = size;
1755
1755
  if (!(w > 0) || !(h > 0)) return { path: [], fillRule: "nonzero" };
1756
- const svg = _chunkBGNPT5PEcjs.getShapeSvg.call(void 0, { ...shape, rotation: 0 }, size);
1757
- let path = _chunkBGNPT5PEcjs.toBezierPath.call(void 0, svg.d);
1756
+ const svg = _chunkGVB7ZPLZcjs.getShapeSvg.call(void 0, { ...shape, rotation: 0 }, size);
1757
+ let path = _chunkGVB7ZPLZcjs.toBezierPath.call(void 0, svg.d);
1758
1758
  if (shape.kind === "path" && shape.viewBox) {
1759
1759
  const vb = shape.viewBox;
1760
1760
  if (vb.length === 4 && vb.every(Number.isFinite) && vb[2] > 0 && vb[3] > 0) {
1761
1761
  const sx = w / vb[2];
1762
1762
  const sy = h / vb[3];
1763
- path = _chunkBGNPT5PEcjs.transformBezierPath.call(void 0, path, [sx, 0, 0, sy, -vb[0] * sx, -vb[1] * sy]);
1763
+ path = _chunkGVB7ZPLZcjs.transformBezierPath.call(void 0, path, [sx, 0, 0, sy, -vb[0] * sx, -vb[1] * sy]);
1764
1764
  }
1765
1765
  }
1766
1766
  const deg = _nullishCoalesce(shape.rotation, () => ( 0));
@@ -1771,7 +1771,7 @@ function shapeToBezierPath(shape, size) {
1771
1771
  const cx = w / 2;
1772
1772
  const cy = h / 2;
1773
1773
  const m = [cos, sin, -sin, cos, cx - cx * cos + cy * sin, cy - cx * sin - cy * cos];
1774
- path = _chunkBGNPT5PEcjs.transformBezierPath.call(void 0, path, m);
1774
+ path = _chunkGVB7ZPLZcjs.transformBezierPath.call(void 0, path, m);
1775
1775
  }
1776
1776
  return { path, fillRule: svg.fillRule };
1777
1777
  }
@@ -1781,7 +1781,7 @@ function shapeNodeToBezierPath(node, lookup, options = {}) {
1781
1781
  const size = getNodeSize(node, options);
1782
1782
  const origin = node.parentId && lookup ? getAbsolutePosition(node, lookup) : node.position;
1783
1783
  const { path, fillRule } = shapeToBezierPath(shape, size);
1784
- return { path: _chunkBGNPT5PEcjs.transformBezierPath.call(void 0, path, [1, 0, 0, 1, origin.x, origin.y]), fillRule };
1784
+ return { path: _chunkGVB7ZPLZcjs.transformBezierPath.call(void 0, path, [1, 0, 0, 1, origin.x, origin.y]), fillRule };
1785
1785
  }
1786
1786
  var idCounter = 0;
1787
1787
  function defaultId2(index) {
@@ -1834,7 +1834,7 @@ function combineShapeNodes(nodes, ids, operation, options = {}) {
1834
1834
  const operands = ordered.map((node) => shapeNodeToBezierPath(node, lookup, options));
1835
1835
  const pathOptions = { epsilon: options.epsilon, onFallback: options.onFallback, fallbackTolerance: options.tolerance };
1836
1836
  if (operation === "divide") {
1837
- const result = _chunkBGNPT5PEcjs.dividePaths.call(void 0, operands, pathOptions);
1837
+ const result = _chunkGVB7ZPLZcjs.dividePaths.call(void 0, operands, pathOptions);
1838
1838
  report = result;
1839
1839
  for (const piece of result.pieces) {
1840
1840
  const source = ordered[piece.operands[piece.operands.length - 1]];
@@ -1842,7 +1842,7 @@ function combineShapeNodes(nodes, ids, operation, options = {}) {
1842
1842
  if (node) created.push(node);
1843
1843
  }
1844
1844
  } else {
1845
- const result = _chunkBGNPT5PEcjs.pathBoolean.call(void 0, BOOLEAN_FOR[operation], operands, pathOptions);
1845
+ const result = _chunkGVB7ZPLZcjs.pathBoolean.call(void 0, BOOLEAN_FOR[operation], operands, pathOptions);
1846
1846
  report = result;
1847
1847
  const node = buildPathNode(result.path, pickSource(), createId(0), buildOptions);
1848
1848
  if (node) created.push(node);
@@ -1850,8 +1850,8 @@ function combineShapeNodes(nodes, ids, operation, options = {}) {
1850
1850
  } else {
1851
1851
  report = { engine: "polygon" };
1852
1852
  const operands = ordered.map((node) => shapeNodeToPolygon(node, lookup, options));
1853
- const write = (polygon) => _chunkBGNPT5PEcjs.toBezierPath.call(void 0,
1854
- _chunkBGNPT5PEcjs.polygonToSvgPath.call(void 0, polygon, {
1853
+ const write = (polygon) => _chunkGVB7ZPLZcjs.toBezierPath.call(void 0,
1854
+ _chunkGVB7ZPLZcjs.polygonToSvgPath.call(void 0, polygon, {
1855
1855
  precision: 9,
1856
1856
  simplify: options.simplify,
1857
1857
  curves: _nullishCoalesce(options.curves, () => ( "fit")),
@@ -1860,13 +1860,13 @@ function combineShapeNodes(nodes, ids, operation, options = {}) {
1860
1860
  })
1861
1861
  );
1862
1862
  if (operation === "divide") {
1863
- for (const piece of _chunkBGNPT5PEcjs.dividePolygons.call(void 0, operands, { epsilon: options.epsilon })) {
1863
+ for (const piece of _chunkGVB7ZPLZcjs.dividePolygons.call(void 0, operands, { epsilon: options.epsilon })) {
1864
1864
  const source = ordered[piece.operands[piece.operands.length - 1]];
1865
1865
  const node = buildPathNode(write([piece.polygon]), source, createId(created.length), buildOptions);
1866
1866
  if (node) created.push(node);
1867
1867
  }
1868
1868
  } else {
1869
- const result = _chunkBGNPT5PEcjs.polygonBoolean.call(void 0, BOOLEAN_FOR[operation], operands, { epsilon: options.epsilon });
1869
+ const result = _chunkGVB7ZPLZcjs.polygonBoolean.call(void 0, BOOLEAN_FOR[operation], operands, { epsilon: options.epsilon });
1870
1870
  const node = buildPathNode(write(result), pickSource(), createId(0), buildOptions);
1871
1871
  if (node) created.push(node);
1872
1872
  }
@@ -1883,12 +1883,12 @@ function combineShapeNodes(nodes, ids, operation, options = {}) {
1883
1883
  return done2;
1884
1884
  }
1885
1885
  function buildPathNode(path, source, id, options) {
1886
- const bounds = _chunkBGNPT5PEcjs.bezierPathBounds.call(void 0, path);
1886
+ const bounds = _chunkGVB7ZPLZcjs.bezierPathBounds.call(void 0, path);
1887
1887
  if (!bounds) return null;
1888
1888
  const width = bounds.maxX - bounds.minX;
1889
1889
  const height = bounds.maxY - bounds.minY;
1890
1890
  if (!(width > 0) || !(height > 0)) return null;
1891
- const d = _chunkBGNPT5PEcjs.bezierPathToSvg.call(void 0, path, { precision: _nullishCoalesce(options.precision, () => ( 3)), offset: { x: -bounds.minX, y: -bounds.minY } });
1891
+ const d = _chunkGVB7ZPLZcjs.bezierPathToSvg.call(void 0, path, { precision: _nullishCoalesce(options.precision, () => ( 3)), offset: { x: -bounds.minX, y: -bounds.minY } });
1892
1892
  if (!d) return null;
1893
1893
  const sourceShape = getNodeShape(source);
1894
1894
  const shape = {
@@ -2020,7 +2020,7 @@ function offsetShapeNodes(nodes, ids, distance, options = {}) {
2020
2020
  for (const id of check.shapeIds) {
2021
2021
  const node = lookup.get(id);
2022
2022
  const outline = shapeNodeToBezierPath(node, lookup, options);
2023
- const path = _chunkBGNPT5PEcjs.offsetPath.call(void 0, outline.path, distance, {
2023
+ const path = _chunkGVB7ZPLZcjs.offsetPath.call(void 0, outline.path, distance, {
2024
2024
  join: options.join,
2025
2025
  miterLimit: options.miterLimit,
2026
2026
  fillRule: outline.fillRule,
@@ -2056,7 +2056,7 @@ function outlineShapeNodeStrokes(nodes, ids, options = {}) {
2056
2056
  const node = lookup.get(id);
2057
2057
  const shape = getNodeShape(node);
2058
2058
  const outline = shapeNodeToBezierPath(node, lookup, options);
2059
- const path = _chunkBGNPT5PEcjs.outlineStroke.call(void 0, outline.path, {
2059
+ const path = _chunkGVB7ZPLZcjs.outlineStroke.call(void 0, outline.path, {
2060
2060
  width: _nullishCoalesce(_nullishCoalesce(options.width, () => ( shape.strokeWidth)), () => ( 1)),
2061
2061
  join: options.join,
2062
2062
  cap: options.cap,
@@ -4095,7 +4095,7 @@ function withStyle(node, prop, value, unitless = false) {
4095
4095
  }
4096
4096
  function shapeOf(node) {
4097
4097
  const shape = _optionalChain([node, 'access', _161 => _161.data, 'optionalAccess', _162 => _162.shape]);
4098
- return _chunkBGNPT5PEcjs.isShapeDescription.call(void 0, shape) ? shape : null;
4098
+ return _chunkGVB7ZPLZcjs.isShapeDescription.call(void 0, shape) ? shape : null;
4099
4099
  }
4100
4100
  function withShape(node, key, value) {
4101
4101
  const shape = shapeOf(node);
@@ -4502,8 +4502,8 @@ function motionPathPoint(node, progress) {
4502
4502
  const path = _optionalChain([getNodeAnimation, 'call', _173 => _173(node), 'optionalAccess', _174 => _174.motionPath]);
4503
4503
  if (!path || typeof path.d !== "string") return null;
4504
4504
  try {
4505
- const length = _chunkBGNPT5PEcjs.bezierPathLength.call(void 0, path.d);
4506
- return _chunkBGNPT5PEcjs.bezierPathPointAtLength.call(void 0, path.d, Math.min(1, Math.max(0, progress)) * length);
4505
+ const length = _chunkGVB7ZPLZcjs.bezierPathLength.call(void 0, path.d);
4506
+ return _chunkGVB7ZPLZcjs.bezierPathPointAtLength.call(void 0, path.d, Math.min(1, Math.max(0, progress)) * length);
4507
4507
  } catch (e5) {
4508
4508
  return null;
4509
4509
  }
@@ -8120,7 +8120,7 @@ function strokePointsToPathData(points, options = {}) {
8120
8120
  const [p0, p1] = points;
8121
8121
  return `M ${p0[0]} ${p0[1]} L ${p1[0]} ${p1[1]}`;
8122
8122
  }
8123
- const fitted = _chunkBGNPT5PEcjs.fitFreehandPath.call(void 0, points, options);
8123
+ const fitted = _chunkGVB7ZPLZcjs.fitFreehandPath.call(void 0, points, options);
8124
8124
  return fitted.length > 0 ? fitted : `M ${points[0][0]} ${points[0][1]}`;
8125
8125
  }
8126
8126
  function strokeToShapeNode(stroke, options = {}) {
@@ -8178,7 +8178,7 @@ function findStrokesAtPoint(point, nodes, radius = 12) {
8178
8178
  }
8179
8179
  const localPoint = [point[0] - rect.x, point[1] - rect.y];
8180
8180
  try {
8181
- const dist = _chunkBGNPT5PEcjs.distanceToBezierPath.call(void 0, shape.d, localPoint);
8181
+ const dist = _chunkGVB7ZPLZcjs.distanceToBezierPath.call(void 0, shape.d, localPoint);
8182
8182
  if (dist <= effectiveRadius) {
8183
8183
  matches2.push(node);
8184
8184
  }
@@ -8728,5 +8728,5 @@ function createCanvasDrawController(options) {
8728
8728
 
8729
8729
 
8730
8730
 
8731
- exports.ANIMATABLE_PROPERTIES = ANIMATABLE_PROPERTIES; exports.ANIMATION_DATA_KEY = ANIMATION_DATA_KEY; exports.ANIMATION_EASING_LABELS = _chunkXZ4L3R4Kcjs.ANIMATION_EASING_LABELS; exports.ANIMATION_EASING_PRESETS = _chunkXZ4L3R4Kcjs.ANIMATION_EASING_PRESETS; exports.ANIMATION_TIME_EPSILON = _chunkXHRZSB77cjs.ANIMATION_TIME_EPSILON; exports.AUTO_LAYOUT_DATA_KEY = AUTO_LAYOUT_DATA_KEY; exports.AnimationEditError = AnimationEditError; exports.AnimationPlayer = _chunkXHRZSB77cjs.AnimationPlayer; exports.CANVAS_COMPONENT_DRAG_TYPE = CANVAS_COMPONENT_DRAG_TYPE; exports.CANVAS_GRADIENT_PRESETS = _chunkBGNPT5PEcjs.CANVAS_GRADIENT_PRESETS; exports.CANVAS_TOKEN_PROPERTIES = CANVAS_TOKEN_PROPERTIES; exports.CHILD_LAYOUT_DATA_KEY = CHILD_LAYOUT_DATA_KEY; exports.COMPONENT_DATA_KEY = COMPONENT_DATA_KEY; exports.COMPONENT_OVERRIDES_DATA_KEY = COMPONENT_OVERRIDES_DATA_KEY; exports.COMPONENT_PROPERTY_REFS_DATA_KEY = COMPONENT_PROPERTY_REFS_DATA_KEY; exports.COMPONENT_SET_DATA_KEY = COMPONENT_SET_DATA_KEY; exports.COMPONENT_SOURCE_DATA_KEY = COMPONENT_SOURCE_DATA_KEY; exports.CONNECTION_LINE_TYPES = CONNECTION_LINE_TYPES; exports.CSS_ANIMATION_PROPERTIES = CSS_ANIMATION_PROPERTIES; exports.CUBIC_BEZIER_PRESETS = _chunkXZ4L3R4Kcjs.CUBIC_BEZIER_PRESETS; exports.CanvasScenesStore = CanvasScenesStore; exports.DEFAULT_ARRANGE_SHORTCUTS = _chunk26BVFKHUcjs.DEFAULT_ARRANGE_SHORTCUTS; exports.DEFAULT_NODE_HEIGHT = _chunkWADCJ7A7cjs.DEFAULT_NODE_HEIGHT; exports.DEFAULT_NODE_WIDTH = _chunkWADCJ7A7cjs.DEFAULT_NODE_WIDTH; exports.DEFAULT_PLACEMENT_GAP = _chunkWADCJ7A7cjs.DEFAULT_PLACEMENT_GAP; exports.INSTANCE_DATA_KEY = INSTANCE_DATA_KEY; exports.LOCKED_DATA_KEY = LOCKED_DATA_KEY; exports.LOCKED_PREVIOUS_FLAGS_KEY = LOCKED_PREVIOUS_FLAGS_KEY; exports.MAX_KEYFRAME_REFS = MAX_KEYFRAME_REFS; exports.ManualClock = _chunkXHRZSB77cjs.ManualClock; exports.PathOpsError = _chunkBGNPT5PEcjs.PathOpsError; exports.RESIZE_HANDLES = RESIZE_HANDLES; exports.SHAPE_DATA_KEY = SHAPE_DATA_KEY; exports.SHAPE_KINDS = _chunkBGNPT5PEcjs.SHAPE_KINDS; exports.SHAPE_NODE_TYPE = SHAPE_NODE_TYPE; exports.SHAPE_OPERATIONS = SHAPE_OPERATIONS; exports.StreamingLayoutManager = StreamingLayoutManager; exports.TOKEN_BINDINGS_DATA_KEY = TOKEN_BINDINGS_DATA_KEY; exports.TOKEN_MODES_DATA_KEY = TOKEN_MODES_DATA_KEY; exports.addCanvasVariant = addCanvasVariant; exports.addKeyframesAtTime = addKeyframesAtTime; exports.alignNodes = alignNodes; exports.angleToSvgLinearCoords = _chunkBGNPT5PEcjs.angleToSvgLinearCoords; exports.animateNode = animateNode; exports.applyAnimation = applyAnimation; exports.applyAnimationOverrides = applyAnimationOverrides; exports.applyConstraints = applyConstraints; exports.applyNodeUpdates = applyNodeUpdates; exports.applyShapeCombination = applyShapeCombination; exports.applyShapeReplacement = applyShapeReplacement; exports.arcToCubics = _chunkBGNPT5PEcjs.arcToCubics; exports.bezierPathArea = _chunkBGNPT5PEcjs.bezierPathArea; exports.bezierPathBounds = _chunkBGNPT5PEcjs.bezierPathBounds; exports.bezierPathLength = _chunkBGNPT5PEcjs.bezierPathLength; exports.bezierPathPointAtLength = _chunkBGNPT5PEcjs.bezierPathPointAtLength; exports.bezierPathSignedArea = _chunkBGNPT5PEcjs.bezierPathSignedArea; exports.bezierPathToSvg = _chunkBGNPT5PEcjs.bezierPathToSvg; exports.bindCanvasComponentProperty = bindCanvasComponentProperty; exports.bindCanvasToken = bindCanvasToken; exports.blendLayout = blendLayout; exports.boundsOf = _chunkWADCJ7A7cjs.boundsOf; exports.calculateDagreReflowDisplacement = calculateDagreReflowDisplacement; exports.calculateDirectionalDisplacement = calculateDirectionalDisplacement; exports.canCombineShapeNodes = canCombineShapeNodes; exports.canOffsetShapeNodes = canOffsetShapeNodes; exports.canOutlineShapeNodeStrokes = canOutlineShapeNodeStrokes; exports.canvasHeight = canvasHeight; exports.centerNodes = _chunkWADCJ7A7cjs.centerNodes; exports.centre = _chunkWADCJ7A7cjs.centre; exports.clampAnimationValue = clampAnimationValue; exports.clampLayoutSize = clampLayoutSize; exports.closeContour = _chunkBGNPT5PEcjs.closeContour; exports.collectDescendantIds = collectDescendantIds; exports.combineCanvasComponentsAsVariants = combineCanvasComponentsAsVariants; exports.combineShapeNodes = combineShapeNodes; exports.computeNodesBoundingBox = computeNodesBoundingBox; exports.computeSnapGuides = computeSnapGuides; exports.connectedOnly = connectedOnly; exports.contourSignedArea = _chunkBGNPT5PEcjs.contourSignedArea; exports.contoursToPath = _chunkBGNPT5PEcjs.contoursToPath; exports.copyKeyframes = copyKeyframes; exports.countPathSegments = _chunkBGNPT5PEcjs.countPathSegments; exports.createAnimationPlayer = _chunkXHRZSB77cjs.createAnimationPlayer; exports.createBezierTrajectory = createBezierTrajectory; exports.createCanvasAnimationController = createCanvasAnimationController; exports.createCanvasArrangeController = createCanvasArrangeController; exports.createCanvasAutoLayoutController = createCanvasAutoLayoutController; exports.createCanvasComponent = createCanvasComponent; exports.createCanvasComponentsController = createCanvasComponentsController; exports.createCanvasDrawController = createCanvasDrawController; exports.createCanvasInstance = createCanvasInstance; exports.createCanvasScenesStore = createCanvasScenesStore; exports.createDefaultStrokeStyle = createDefaultStrokeStyle; exports.createFanOutTrajectory = createFanOutTrajectory; exports.createGuideIndex = createGuideIndex; exports.createNodeGuideIndex = createNodeGuideIndex; exports.createNodeLookup = createNodeLookup; exports.cubicBezierAt = _chunkXZ4L3R4Kcjs.cubicBezierAt; exports.cubicPointAt = _chunkBGNPT5PEcjs.cubicPointAt; exports.cubicsToPathData = _chunkBGNPT5PEcjs.cubicsToPathData; exports.dashContours = _chunkBGNPT5PEcjs.dashContours; exports.defaultEasing = defaultEasing; exports.deleteKeyframes = deleteKeyframes; exports.detachCanvasInstance = detachCanvasInstance; exports.detachTokenBindings = detachTokenBindings; exports.diffOverrideGroups = diffOverrideGroups; exports.distanceToBezierPath = _chunkBGNPT5PEcjs.distanceToBezierPath; exports.distributeNodes = distributeNodes; exports.dividePaths = _chunkBGNPT5PEcjs.dividePaths; exports.dividePolygons = _chunkBGNPT5PEcjs.dividePolygons; exports.easingFromInfluence = _chunkXZ4L3R4Kcjs.easingFromInfluence; exports.easingLabel = _chunkXZ4L3R4Kcjs.easingLabel; exports.easingToCss = _chunkXZ4L3R4Kcjs.easingToCss; exports.elasticAt = _chunkXZ4L3R4Kcjs.elasticAt; exports.ensureLayout = _chunkWADCJ7A7cjs.ensureLayout; exports.estimateCanvasHeight = estimateCanvasHeight; exports.estimateNodeSize = _chunkWADCJ7A7cjs.estimateNodeSize; exports.evaluateAnimation = evaluateAnimation; exports.evaluateEasing = _chunkXZ4L3R4Kcjs.evaluateEasing; exports.evaluateTrack = _chunkXHRZSB77cjs.evaluateTrack; exports.excludePaths = _chunkBGNPT5PEcjs.excludePaths; exports.exportCssAnimation = exportCssAnimation; exports.findConnectorSnap = findConnectorSnap; exports.findStrokesAtPoint = findStrokesAtPoint; exports.findVariant = findVariant; exports.fitCubicRun = _chunkBGNPT5PEcjs.fitCubicRun; exports.fitCubicWithTangents = _chunkBGNPT5PEcjs.fitCubicWithTangents; exports.fitCubics = _chunkBGNPT5PEcjs.fitCubics; exports.fitFreehandPath = _chunkBGNPT5PEcjs.fitFreehandPath; exports.fitPathData = _chunkBGNPT5PEcjs.fitPathData; exports.fitViewportToNodes = fitViewportToNodes; exports.fitViewportToRect = fitViewportToRect; exports.flattenSvgPath = _chunkBGNPT5PEcjs.flattenSvgPath; exports.flowSide = _chunkWADCJ7A7cjs.flowSide; exports.formatAnimationTime = formatAnimationTime; exports.formatNumber = _chunkBGNPT5PEcjs.formatNumber; exports.formatOklab = _chunkXHRZSB77cjs.formatOklab; exports.formatVariantName = formatVariantName; exports.getAbsolutePosition = getAbsolutePosition; exports.getAnimatableProperty = getAnimatableProperty; exports.getAnimatedProperties = getAnimatedProperties; exports.getAnimatedValue = getAnimatedValue; exports.getAnimationDuration = getAnimationDuration; exports.getAnimationTrack = getAnimationTrack; exports.getAutoLayout = getAutoLayout; exports.getAutoLayoutGrid = getAutoLayoutGrid; exports.getAutoLayoutInsertTarget = getAutoLayoutInsertTarget; exports.getBindableTokenProperties = getBindableTokenProperties; exports.getCanvasComponentDragId = getCanvasComponentDragId; exports.getCanvasTokenProperty = getCanvasTokenProperty; exports.getCenteredNodePosition = _chunkWADCJ7A7cjs.getCenteredNodePosition; exports.getChildLayout = getChildLayout; exports.getComponentData = getComponentData; exports.getComponentInstances = getComponentInstances; exports.getComponentPropertyDefs = getComponentPropertyDefs; exports.getComponentPropertyRefs = getComponentPropertyRefs; exports.getComponentSourceId = getComponentSourceId; exports.getCssPropertyAnimations = getCssPropertyAnimations; exports.getDefaultVariant = getDefaultVariant; exports.getEffectiveTokenModes = getEffectiveTokenModes; exports.getFlowChildren = getFlowChildren; exports.getInstanceData = getInstanceData; exports.getInstanceProperties = getInstanceProperties; exports.getInstanceStatus = getInstanceStatus; exports.getKeyframeTimes = getKeyframeTimes; exports.getLayerName = getLayerName; exports.getLayoutParent = getLayoutParent; exports.getLayoutSizing = getLayoutSizing; exports.getLayoutedNodes = _chunkWADCJ7A7cjs.getLayoutedNodes; exports.getNextVariantValues = getNextVariantValues; exports.getNodeAnimation = getNodeAnimation; exports.getNodeOverrides = getNodeOverrides; exports.getNodeRect = getNodeRect; exports.getNodeShape = getNodeShape; exports.getNodeSize = getNodeSize; exports.getNodeTokenBindings = getNodeTokenBindings; exports.getNodeTokenModes = getNodeTokenModes; exports.getOwningComponent = getOwningComponent; exports.getOwningInstance = getOwningInstance; exports.getResizingNodeRect = getResizingNodeRect; exports.getRootInstance = getRootInstance; exports.getShapeRenderData = _chunkBGNPT5PEcjs.getShapeRenderData; exports.getShapeSvg = _chunkBGNPT5PEcjs.getShapeSvg; exports.getTimelineRows = getTimelineRows; exports.getTimelineTicks = getTimelineTicks; exports.getTokenPropertyScope = getTokenPropertyScope; exports.getTokensForProperty = getTokensForProperty; exports.getVariantConflicts = getVariantConflicts; exports.getVariantOptions = getVariantOptions; exports.getVariantSet = getVariantSet; exports.getVariantValues = getVariantValues; exports.gradientToSvgDef = _chunkBGNPT5PEcjs.gradientToSvgDef; exports.handlePoint = handlePoint; exports.hasVisibleStroke = hasVisibleStroke; exports.inferResizeHandle = inferResizeHandle; exports.inspectCanvasInstance = inspectCanvasInstance; exports.inspectNodeTokens = inspectNodeTokens; exports.interpolateAnimationValue = _chunkXHRZSB77cjs.interpolateAnimationValue; exports.intersectPaths = _chunkBGNPT5PEcjs.intersectPaths; exports.intersectPolygons = _chunkBGNPT5PEcjs.intersectPolygons; exports.invertNodeUpdates = invertNodeUpdates; exports.isAnimationEasing = _chunkXZ4L3R4Kcjs.isAnimationEasing; exports.isAnimationKeyframe = _chunkXHRZSB77cjs.isAnimationKeyframe; exports.isAutoLayoutFrame = isAutoLayoutFrame; exports.isCanvasComponent = isCanvasComponent; exports.isCanvasComponentSet = isCanvasComponentSet; exports.isCanvasGradient = _chunkBGNPT5PEcjs.isCanvasGradient; exports.isCanvasInstance = isCanvasInstance; exports.isCssExportExact = isCssExportExact; exports.isEventFromTextInput = isEventFromTextInput; exports.isInsideInstance = isInsideInstance; exports.isKeyframeSelected = isKeyframeSelected; exports.isLocked = isLocked; exports.isMeasureModifierHeld = isMeasureModifierHeld; exports.isNodeAnimated = isNodeAnimated; exports.isShapeDescription = _chunkBGNPT5PEcjs.isShapeDescription; exports.isShapeNode = isShapeNode; exports.isStraightCubic = _chunkBGNPT5PEcjs.isStraightCubic; exports.isValidCanvasEdge = isValidCanvasEdge; exports.isValidCanvasNode = isValidCanvasNode; exports.isValidCanvasScene = isValidCanvasScene; exports.isValidUrl = isValidUrl; exports.layoutAll = layoutAll; exports.layoutBounds = layoutBounds; exports.layoutFrame = layoutFrame; exports.layoutUp = layoutUp; exports.layoutUpMany = layoutUpMany; exports.linearPositionTrajectory = linearPositionTrajectory; exports.linearTrajectory = linearTrajectory; exports.listCanvasComponents = listCanvasComponents; exports.lockNodes = lockNodes; exports.makeSizingCoherent = makeSizingCoherent; exports.matchArrangeShortcut = _chunk26BVFKHUcjs.matchArrangeShortcut; exports.matchSize = matchSize; exports.measureBetween = measureBetween; exports.measureLabel = measureLabel; exports.measureSelection = measureSelection; exports.measureToLine = measureToLine; exports.mergeNodeUpdates = mergeNodeUpdates; exports.mixColorsOklab = _chunkXHRZSB77cjs.mixColorsOklab; exports.moveKeyframes = moveKeyframes; exports.moveLayoutChild = moveLayoutChild; exports.multiPolygonArea = _chunkBGNPT5PEcjs.multiPolygonArea; exports.multiPolygonBounds = _chunkBGNPT5PEcjs.multiPolygonBounds; exports.nearestHandlePositions = nearestHandlePositions; exports.normalizeBezierPath = _chunkBGNPT5PEcjs.normalizeBezierPath; exports.normalizeKeyframes = _chunkXHRZSB77cjs.normalizeKeyframes; exports.offsetPath = _chunkBGNPT5PEcjs.offsetPath; exports.offsetShapeNodes = offsetShapeNodes; exports.oklabToRgb = _chunkXHRZSB77cjs.oklabToRgb; exports.oppositePosition = oppositePosition; exports.outlineShapeNodeStrokes = outlineShapeNodeStrokes; exports.outlineStroke = _chunkBGNPT5PEcjs.outlineStroke; exports.overlaps = _chunkWADCJ7A7cjs.overlaps; exports.pageHidden = _chunkXHRZSB77cjs.pageHidden; exports.parseCanvasClipboardData = parseCanvasClipboardData; exports.parseCanvasScenes = parseCanvasScenes; exports.parseCssEasing = _chunkXZ4L3R4Kcjs.parseCssEasing; exports.parseCssGradient = _chunkBGNPT5PEcjs.parseCssGradient; exports.parseKeyframeClipboard = parseKeyframeClipboard; exports.parseNodeStyleDeclarations = parseNodeStyleDeclarations; exports.parseOklab = _chunkXHRZSB77cjs.parseOklab; exports.parseSvgPath = _chunkBGNPT5PEcjs.parseSvgPath; exports.parseVariantName = parseVariantName; exports.pasteKeyframes = pasteKeyframes; exports.pathBoolean = _chunkBGNPT5PEcjs.pathBoolean; exports.pathToContours = _chunkBGNPT5PEcjs.pathToContours; exports.placeBeside = _chunkWADCJ7A7cjs.placeBeside; exports.playWebAnimations = playWebAnimations; exports.pointInBezierPath = _chunkBGNPT5PEcjs.pointInBezierPath; exports.pointInMultiPolygon = _chunkBGNPT5PEcjs.pointInMultiPolygon; exports.pointInRings = _chunkBGNPT5PEcjs.pointInRings; exports.polygonArea = _chunkBGNPT5PEcjs.polygonArea; exports.polygonBoolean = _chunkBGNPT5PEcjs.polygonBoolean; exports.polygonToSvgPath = _chunkBGNPT5PEcjs.polygonToSvgPath; exports.positionToSide = positionToSide; exports.pruneCanvasTokenModes = pruneCanvasTokenModes; exports.pushCanvasInstanceOverrides = pushCanvasInstanceOverrides; exports.readAnimatableValue = readAnimatableValue; exports.readNodeStyleProperty = readNodeStyleProperty; exports.readOverrideGroup = readOverrideGroup; exports.readStyleSize = readStyleSize; exports.realClock = _chunkXHRZSB77cjs.realClock; exports.recordAnimationChanges = recordAnimationChanges; exports.relayoutUpdates = relayoutUpdates; exports.remapPastedNodes = remapPastedNodes; exports.removeCanvasVariant = removeCanvasVariant; exports.removeTrack = removeTrack; exports.renameCanvasVariantProperty = renameCanvasVariantProperty; exports.renameCanvasVariantValue = renameCanvasVariantValue; exports.reorderNodes = reorderNodes; exports.repositionNodesTo = repositionNodesTo; exports.resetCanvasInstanceOverrides = resetCanvasInstanceOverrides; exports.resizeHandleAxes = resizeHandleAxes; exports.resolveCanvasGradient = _chunkBGNPT5PEcjs.resolveCanvasGradient; exports.resolveCanvasTokens = resolveCanvasTokens; exports.resolveEasing = _chunkXZ4L3R4Kcjs.resolveEasing; exports.resolvePadding = resolvePadding; exports.restoreCanvasMainComponent = restoreCanvasMainComponent; exports.revertShapeCombination = revertShapeCombination; exports.rgbToOklab = _chunkXHRZSB77cjs.rgbToOklab; exports.ringSignedArea = _chunkBGNPT5PEcjs.ringSignedArea; exports.runMultiNodeTransition = runMultiNodeTransition; exports.sampleAnimationFrames = sampleAnimationFrames; exports.scaleKeyframes = scaleKeyframes; exports.segmentBounds = _chunkBGNPT5PEcjs.segmentBounds; exports.segmentCurvature = _chunkBGNPT5PEcjs.segmentCurvature; exports.segmentDerivative = _chunkBGNPT5PEcjs.segmentDerivative; exports.segmentExtrema = _chunkBGNPT5PEcjs.segmentExtrema; exports.segmentIntersections = _chunkBGNPT5PEcjs.segmentIntersections; exports.segmentLength = _chunkBGNPT5PEcjs.segmentLength; exports.segmentNearest = _chunkBGNPT5PEcjs.segmentNearest; exports.segmentParamAtLength = _chunkBGNPT5PEcjs.segmentParamAtLength; exports.segmentPoint = _chunkBGNPT5PEcjs.segmentPoint; exports.segmentTangent = _chunkBGNPT5PEcjs.segmentTangent; exports.serializeCanvasNodes = serializeCanvasNodes; exports.setCanvasComponentProperty = setCanvasComponentProperty; exports.setCanvasInstanceProperties = setCanvasInstanceProperties; exports.setCanvasTokenMode = setCanvasTokenMode; exports.setCanvasVariantProperties = setCanvasVariantProperties; exports.setKeyframe = setKeyframe; exports.setKeyframeEasing = setKeyframeEasing; exports.setMotionPath = setMotionPath; exports.setTrackEnabled = setTrackEnabled; exports.shapeNodeToBezierPath = shapeNodeToBezierPath; exports.shapeNodeToPolygon = shapeNodeToPolygon; exports.shapeToBezierPath = shapeToBezierPath; exports.shapeToPolygon = _chunkBGNPT5PEcjs.shapeToPolygon; exports.sideToPosition = sideToPosition; exports.simplifyRing = _chunkBGNPT5PEcjs.simplifyRing; exports.snapKeyframeDelta = snapKeyframeDelta; exports.snapNodeDrag = snapNodeDrag; exports.snapNodeResize = snapNodeResize; exports.snapResize = snapResize; exports.snapTimeToFrame = snapTimeToFrame; exports.snapToGrid = snapToGrid; exports.splitSegment = _chunkBGNPT5PEcjs.splitSegment; exports.springAt = _chunkXZ4L3R4Kcjs.springAt; exports.streamlinePoints = streamlinePoints; exports.strokeBoundingBox = strokeBoundingBox; exports.strokeOutlineRings = _chunkBGNPT5PEcjs.strokeOutlineRings; exports.strokePointsToPathData = strokePointsToPathData; exports.strokeToShapeNode = strokeToShapeNode; exports.subSegment = _chunkBGNPT5PEcjs.subSegment; exports.subtractPaths = _chunkBGNPT5PEcjs.subtractPaths; exports.subtractPolygons = _chunkBGNPT5PEcjs.subtractPolygons; exports.swapCanvasInstance = swapCanvasInstance; exports.syncAllCanvasInstances = syncAllCanvasInstances; exports.syncCanvasComponents = syncCanvasComponents; exports.syncCanvasInstance = syncCanvasInstance; exports.timeToX = timeToX; exports.toBezierPath = _chunkBGNPT5PEcjs.toBezierPath; exports.toWebAnimations = toWebAnimations; exports.toggleLockNodes = toggleLockNodes; exports.transformBezierPath = _chunkBGNPT5PEcjs.transformBezierPath; exports.trimSegments = _chunkBGNPT5PEcjs.trimSegments; exports.unionPolygons = _chunkBGNPT5PEcjs.unionPolygons; exports.unitePaths = _chunkBGNPT5PEcjs.unitePaths; exports.unlockNodes = unlockNodes; exports.updateKeyframe = updateKeyframe; exports.windingNumber = _chunkBGNPT5PEcjs.windingNumber; exports.withNodeAnimation = withNodeAnimation; exports.withStyleOpacity = withStyleOpacity; exports.withStyleSize = withStyleSize; exports.wouldCreateComponentCycle = wouldCreateComponentCycle; exports.wrapAnimationTime = _chunkXHRZSB77cjs.wrapAnimationTime; exports.writeNodeStyleProperty = writeNodeStyleProperty; exports.writeOverrideGroup = writeOverrideGroup; exports.xToTime = xToTime; exports.xorPolygons = _chunkBGNPT5PEcjs.xorPolygons;
8731
+ exports.ANIMATABLE_PROPERTIES = ANIMATABLE_PROPERTIES; exports.ANIMATION_DATA_KEY = ANIMATION_DATA_KEY; exports.ANIMATION_EASING_LABELS = _chunkXZ4L3R4Kcjs.ANIMATION_EASING_LABELS; exports.ANIMATION_EASING_PRESETS = _chunkXZ4L3R4Kcjs.ANIMATION_EASING_PRESETS; exports.ANIMATION_TIME_EPSILON = _chunkXHRZSB77cjs.ANIMATION_TIME_EPSILON; exports.AUTO_LAYOUT_DATA_KEY = AUTO_LAYOUT_DATA_KEY; exports.AnimationEditError = AnimationEditError; exports.AnimationPlayer = _chunkXHRZSB77cjs.AnimationPlayer; exports.CANVAS_COMPONENT_DRAG_TYPE = CANVAS_COMPONENT_DRAG_TYPE; exports.CANVAS_GRADIENT_PRESETS = _chunkGVB7ZPLZcjs.CANVAS_GRADIENT_PRESETS; exports.CANVAS_TOKEN_PROPERTIES = CANVAS_TOKEN_PROPERTIES; exports.CHILD_LAYOUT_DATA_KEY = CHILD_LAYOUT_DATA_KEY; exports.COMPONENT_DATA_KEY = COMPONENT_DATA_KEY; exports.COMPONENT_OVERRIDES_DATA_KEY = COMPONENT_OVERRIDES_DATA_KEY; exports.COMPONENT_PROPERTY_REFS_DATA_KEY = COMPONENT_PROPERTY_REFS_DATA_KEY; exports.COMPONENT_SET_DATA_KEY = COMPONENT_SET_DATA_KEY; exports.COMPONENT_SOURCE_DATA_KEY = COMPONENT_SOURCE_DATA_KEY; exports.CONNECTION_LINE_TYPES = CONNECTION_LINE_TYPES; exports.CSS_ANIMATION_PROPERTIES = CSS_ANIMATION_PROPERTIES; exports.CUBIC_BEZIER_PRESETS = _chunkXZ4L3R4Kcjs.CUBIC_BEZIER_PRESETS; exports.CanvasScenesStore = CanvasScenesStore; exports.DEFAULT_ARRANGE_SHORTCUTS = _chunk26BVFKHUcjs.DEFAULT_ARRANGE_SHORTCUTS; exports.DEFAULT_NODE_HEIGHT = _chunkWADCJ7A7cjs.DEFAULT_NODE_HEIGHT; exports.DEFAULT_NODE_WIDTH = _chunkWADCJ7A7cjs.DEFAULT_NODE_WIDTH; exports.DEFAULT_PLACEMENT_GAP = _chunkWADCJ7A7cjs.DEFAULT_PLACEMENT_GAP; exports.INSTANCE_DATA_KEY = INSTANCE_DATA_KEY; exports.LOCKED_DATA_KEY = LOCKED_DATA_KEY; exports.LOCKED_PREVIOUS_FLAGS_KEY = LOCKED_PREVIOUS_FLAGS_KEY; exports.MAX_KEYFRAME_REFS = MAX_KEYFRAME_REFS; exports.ManualClock = _chunkXHRZSB77cjs.ManualClock; exports.PathOpsError = _chunkGVB7ZPLZcjs.PathOpsError; exports.RESIZE_HANDLES = RESIZE_HANDLES; exports.SHAPE_DATA_KEY = SHAPE_DATA_KEY; exports.SHAPE_KINDS = _chunkGVB7ZPLZcjs.SHAPE_KINDS; exports.SHAPE_NODE_TYPE = SHAPE_NODE_TYPE; exports.SHAPE_OPERATIONS = SHAPE_OPERATIONS; exports.StreamingLayoutManager = StreamingLayoutManager; exports.TOKEN_BINDINGS_DATA_KEY = TOKEN_BINDINGS_DATA_KEY; exports.TOKEN_MODES_DATA_KEY = TOKEN_MODES_DATA_KEY; exports.addCanvasVariant = addCanvasVariant; exports.addKeyframesAtTime = addKeyframesAtTime; exports.alignNodes = alignNodes; exports.angleToSvgLinearCoords = _chunkGVB7ZPLZcjs.angleToSvgLinearCoords; exports.animateNode = animateNode; exports.applyAnimation = applyAnimation; exports.applyAnimationOverrides = applyAnimationOverrides; exports.applyConstraints = applyConstraints; exports.applyNodeUpdates = applyNodeUpdates; exports.applyShapeCombination = applyShapeCombination; exports.applyShapeReplacement = applyShapeReplacement; exports.arcToCubics = _chunkGVB7ZPLZcjs.arcToCubics; exports.bezierPathArea = _chunkGVB7ZPLZcjs.bezierPathArea; exports.bezierPathBounds = _chunkGVB7ZPLZcjs.bezierPathBounds; exports.bezierPathLength = _chunkGVB7ZPLZcjs.bezierPathLength; exports.bezierPathPointAtLength = _chunkGVB7ZPLZcjs.bezierPathPointAtLength; exports.bezierPathSignedArea = _chunkGVB7ZPLZcjs.bezierPathSignedArea; exports.bezierPathToSvg = _chunkGVB7ZPLZcjs.bezierPathToSvg; exports.bindCanvasComponentProperty = bindCanvasComponentProperty; exports.bindCanvasToken = bindCanvasToken; exports.blendLayout = blendLayout; exports.boundsOf = _chunkWADCJ7A7cjs.boundsOf; exports.calculateDagreReflowDisplacement = calculateDagreReflowDisplacement; exports.calculateDirectionalDisplacement = calculateDirectionalDisplacement; exports.canCombineShapeNodes = canCombineShapeNodes; exports.canOffsetShapeNodes = canOffsetShapeNodes; exports.canOutlineShapeNodeStrokes = canOutlineShapeNodeStrokes; exports.canvasHeight = canvasHeight; exports.centerNodes = _chunkWADCJ7A7cjs.centerNodes; exports.centre = _chunkWADCJ7A7cjs.centre; exports.clampAnimationValue = clampAnimationValue; exports.clampLayoutSize = clampLayoutSize; exports.closeContour = _chunkGVB7ZPLZcjs.closeContour; exports.collectDescendantIds = collectDescendantIds; exports.combineCanvasComponentsAsVariants = combineCanvasComponentsAsVariants; exports.combineShapeNodes = combineShapeNodes; exports.computeNodesBoundingBox = computeNodesBoundingBox; exports.computeSnapGuides = computeSnapGuides; exports.connectedOnly = connectedOnly; exports.contourSignedArea = _chunkGVB7ZPLZcjs.contourSignedArea; exports.contoursToPath = _chunkGVB7ZPLZcjs.contoursToPath; exports.copyKeyframes = copyKeyframes; exports.countPathSegments = _chunkGVB7ZPLZcjs.countPathSegments; exports.createAnimationPlayer = _chunkXHRZSB77cjs.createAnimationPlayer; exports.createBezierTrajectory = createBezierTrajectory; exports.createCanvasAnimationController = createCanvasAnimationController; exports.createCanvasArrangeController = createCanvasArrangeController; exports.createCanvasAutoLayoutController = createCanvasAutoLayoutController; exports.createCanvasComponent = createCanvasComponent; exports.createCanvasComponentsController = createCanvasComponentsController; exports.createCanvasDrawController = createCanvasDrawController; exports.createCanvasInstance = createCanvasInstance; exports.createCanvasScenesStore = createCanvasScenesStore; exports.createDefaultStrokeStyle = createDefaultStrokeStyle; exports.createFanOutTrajectory = createFanOutTrajectory; exports.createGuideIndex = createGuideIndex; exports.createNodeGuideIndex = createNodeGuideIndex; exports.createNodeLookup = createNodeLookup; exports.cubicBezierAt = _chunkXZ4L3R4Kcjs.cubicBezierAt; exports.cubicPointAt = _chunkGVB7ZPLZcjs.cubicPointAt; exports.cubicsToPathData = _chunkGVB7ZPLZcjs.cubicsToPathData; exports.dashContours = _chunkGVB7ZPLZcjs.dashContours; exports.defaultEasing = defaultEasing; exports.deleteKeyframes = deleteKeyframes; exports.detachCanvasInstance = detachCanvasInstance; exports.detachTokenBindings = detachTokenBindings; exports.diffOverrideGroups = diffOverrideGroups; exports.distanceToBezierPath = _chunkGVB7ZPLZcjs.distanceToBezierPath; exports.distributeNodes = distributeNodes; exports.dividePaths = _chunkGVB7ZPLZcjs.dividePaths; exports.dividePolygons = _chunkGVB7ZPLZcjs.dividePolygons; exports.easingFromInfluence = _chunkXZ4L3R4Kcjs.easingFromInfluence; exports.easingLabel = _chunkXZ4L3R4Kcjs.easingLabel; exports.easingToCss = _chunkXZ4L3R4Kcjs.easingToCss; exports.elasticAt = _chunkXZ4L3R4Kcjs.elasticAt; exports.ensureLayout = _chunkWADCJ7A7cjs.ensureLayout; exports.estimateCanvasHeight = estimateCanvasHeight; exports.estimateNodeSize = _chunkWADCJ7A7cjs.estimateNodeSize; exports.evaluateAnimation = evaluateAnimation; exports.evaluateEasing = _chunkXZ4L3R4Kcjs.evaluateEasing; exports.evaluateTrack = _chunkXHRZSB77cjs.evaluateTrack; exports.excludePaths = _chunkGVB7ZPLZcjs.excludePaths; exports.exportCssAnimation = exportCssAnimation; exports.findConnectorSnap = findConnectorSnap; exports.findStrokesAtPoint = findStrokesAtPoint; exports.findVariant = findVariant; exports.fitCubicRun = _chunkGVB7ZPLZcjs.fitCubicRun; exports.fitCubicWithTangents = _chunkGVB7ZPLZcjs.fitCubicWithTangents; exports.fitCubics = _chunkGVB7ZPLZcjs.fitCubics; exports.fitFreehandPath = _chunkGVB7ZPLZcjs.fitFreehandPath; exports.fitPathData = _chunkGVB7ZPLZcjs.fitPathData; exports.fitViewportToNodes = fitViewportToNodes; exports.fitViewportToRect = fitViewportToRect; exports.flattenSvgPath = _chunkGVB7ZPLZcjs.flattenSvgPath; exports.flowSide = _chunkWADCJ7A7cjs.flowSide; exports.formatAnimationTime = formatAnimationTime; exports.formatNumber = _chunkGVB7ZPLZcjs.formatNumber; exports.formatOklab = _chunkXHRZSB77cjs.formatOklab; exports.formatVariantName = formatVariantName; exports.getAbsolutePosition = getAbsolutePosition; exports.getAnimatableProperty = getAnimatableProperty; exports.getAnimatedProperties = getAnimatedProperties; exports.getAnimatedValue = getAnimatedValue; exports.getAnimationDuration = getAnimationDuration; exports.getAnimationTrack = getAnimationTrack; exports.getAutoLayout = getAutoLayout; exports.getAutoLayoutGrid = getAutoLayoutGrid; exports.getAutoLayoutInsertTarget = getAutoLayoutInsertTarget; exports.getBindableTokenProperties = getBindableTokenProperties; exports.getCanvasComponentDragId = getCanvasComponentDragId; exports.getCanvasTokenProperty = getCanvasTokenProperty; exports.getCenteredNodePosition = _chunkWADCJ7A7cjs.getCenteredNodePosition; exports.getChildLayout = getChildLayout; exports.getComponentData = getComponentData; exports.getComponentInstances = getComponentInstances; exports.getComponentPropertyDefs = getComponentPropertyDefs; exports.getComponentPropertyRefs = getComponentPropertyRefs; exports.getComponentSourceId = getComponentSourceId; exports.getCssPropertyAnimations = getCssPropertyAnimations; exports.getDefaultVariant = getDefaultVariant; exports.getEffectiveTokenModes = getEffectiveTokenModes; exports.getFlowChildren = getFlowChildren; exports.getInstanceData = getInstanceData; exports.getInstanceProperties = getInstanceProperties; exports.getInstanceStatus = getInstanceStatus; exports.getKeyframeTimes = getKeyframeTimes; exports.getLayerName = getLayerName; exports.getLayoutParent = getLayoutParent; exports.getLayoutSizing = getLayoutSizing; exports.getLayoutedNodes = _chunkWADCJ7A7cjs.getLayoutedNodes; exports.getNextVariantValues = getNextVariantValues; exports.getNodeAnimation = getNodeAnimation; exports.getNodeOverrides = getNodeOverrides; exports.getNodeRect = getNodeRect; exports.getNodeShape = getNodeShape; exports.getNodeSize = getNodeSize; exports.getNodeTokenBindings = getNodeTokenBindings; exports.getNodeTokenModes = getNodeTokenModes; exports.getOwningComponent = getOwningComponent; exports.getOwningInstance = getOwningInstance; exports.getResizingNodeRect = getResizingNodeRect; exports.getRootInstance = getRootInstance; exports.getShapeRenderData = _chunkGVB7ZPLZcjs.getShapeRenderData; exports.getShapeSvg = _chunkGVB7ZPLZcjs.getShapeSvg; exports.getTimelineRows = getTimelineRows; exports.getTimelineTicks = getTimelineTicks; exports.getTokenPropertyScope = getTokenPropertyScope; exports.getTokensForProperty = getTokensForProperty; exports.getVariantConflicts = getVariantConflicts; exports.getVariantOptions = getVariantOptions; exports.getVariantSet = getVariantSet; exports.getVariantValues = getVariantValues; exports.gradientToSvgDef = _chunkGVB7ZPLZcjs.gradientToSvgDef; exports.handlePoint = handlePoint; exports.hasVisibleStroke = hasVisibleStroke; exports.inferResizeHandle = inferResizeHandle; exports.inspectCanvasInstance = inspectCanvasInstance; exports.inspectNodeTokens = inspectNodeTokens; exports.interpolateAnimationValue = _chunkXHRZSB77cjs.interpolateAnimationValue; exports.intersectPaths = _chunkGVB7ZPLZcjs.intersectPaths; exports.intersectPolygons = _chunkGVB7ZPLZcjs.intersectPolygons; exports.invertNodeUpdates = invertNodeUpdates; exports.isAnimationEasing = _chunkXZ4L3R4Kcjs.isAnimationEasing; exports.isAnimationKeyframe = _chunkXHRZSB77cjs.isAnimationKeyframe; exports.isAutoLayoutFrame = isAutoLayoutFrame; exports.isCanvasComponent = isCanvasComponent; exports.isCanvasComponentSet = isCanvasComponentSet; exports.isCanvasGradient = _chunkGVB7ZPLZcjs.isCanvasGradient; exports.isCanvasInstance = isCanvasInstance; exports.isCssExportExact = isCssExportExact; exports.isEventFromTextInput = isEventFromTextInput; exports.isInsideInstance = isInsideInstance; exports.isKeyframeSelected = isKeyframeSelected; exports.isLocked = isLocked; exports.isMeasureModifierHeld = isMeasureModifierHeld; exports.isNodeAnimated = isNodeAnimated; exports.isShapeDescription = _chunkGVB7ZPLZcjs.isShapeDescription; exports.isShapeNode = isShapeNode; exports.isStraightCubic = _chunkGVB7ZPLZcjs.isStraightCubic; exports.isValidCanvasEdge = isValidCanvasEdge; exports.isValidCanvasNode = isValidCanvasNode; exports.isValidCanvasScene = isValidCanvasScene; exports.isValidUrl = isValidUrl; exports.layoutAll = layoutAll; exports.layoutBounds = layoutBounds; exports.layoutFrame = layoutFrame; exports.layoutUp = layoutUp; exports.layoutUpMany = layoutUpMany; exports.linearPositionTrajectory = linearPositionTrajectory; exports.linearTrajectory = linearTrajectory; exports.listCanvasComponents = listCanvasComponents; exports.lockNodes = lockNodes; exports.makeSizingCoherent = makeSizingCoherent; exports.matchArrangeShortcut = _chunk26BVFKHUcjs.matchArrangeShortcut; exports.matchSize = matchSize; exports.measureBetween = measureBetween; exports.measureLabel = measureLabel; exports.measureSelection = measureSelection; exports.measureToLine = measureToLine; exports.mergeNodeUpdates = mergeNodeUpdates; exports.mixColorsOklab = _chunkXHRZSB77cjs.mixColorsOklab; exports.moveKeyframes = moveKeyframes; exports.moveLayoutChild = moveLayoutChild; exports.multiPolygonArea = _chunkGVB7ZPLZcjs.multiPolygonArea; exports.multiPolygonBounds = _chunkGVB7ZPLZcjs.multiPolygonBounds; exports.nearestHandlePositions = nearestHandlePositions; exports.normalizeBezierPath = _chunkGVB7ZPLZcjs.normalizeBezierPath; exports.normalizeKeyframes = _chunkXHRZSB77cjs.normalizeKeyframes; exports.offsetPath = _chunkGVB7ZPLZcjs.offsetPath; exports.offsetShapeNodes = offsetShapeNodes; exports.oklabToRgb = _chunkXHRZSB77cjs.oklabToRgb; exports.oppositePosition = oppositePosition; exports.outlineShapeNodeStrokes = outlineShapeNodeStrokes; exports.outlineStroke = _chunkGVB7ZPLZcjs.outlineStroke; exports.overlaps = _chunkWADCJ7A7cjs.overlaps; exports.pageHidden = _chunkXHRZSB77cjs.pageHidden; exports.parseCanvasClipboardData = parseCanvasClipboardData; exports.parseCanvasScenes = parseCanvasScenes; exports.parseCssEasing = _chunkXZ4L3R4Kcjs.parseCssEasing; exports.parseCssGradient = _chunkGVB7ZPLZcjs.parseCssGradient; exports.parseKeyframeClipboard = parseKeyframeClipboard; exports.parseNodeStyleDeclarations = parseNodeStyleDeclarations; exports.parseOklab = _chunkXHRZSB77cjs.parseOklab; exports.parseSvgPath = _chunkGVB7ZPLZcjs.parseSvgPath; exports.parseVariantName = parseVariantName; exports.pasteKeyframes = pasteKeyframes; exports.pathBoolean = _chunkGVB7ZPLZcjs.pathBoolean; exports.pathToContours = _chunkGVB7ZPLZcjs.pathToContours; exports.placeBeside = _chunkWADCJ7A7cjs.placeBeside; exports.playWebAnimations = playWebAnimations; exports.pointInBezierPath = _chunkGVB7ZPLZcjs.pointInBezierPath; exports.pointInMultiPolygon = _chunkGVB7ZPLZcjs.pointInMultiPolygon; exports.pointInRings = _chunkGVB7ZPLZcjs.pointInRings; exports.polygonArea = _chunkGVB7ZPLZcjs.polygonArea; exports.polygonBoolean = _chunkGVB7ZPLZcjs.polygonBoolean; exports.polygonToSvgPath = _chunkGVB7ZPLZcjs.polygonToSvgPath; exports.positionToSide = positionToSide; exports.pruneCanvasTokenModes = pruneCanvasTokenModes; exports.pushCanvasInstanceOverrides = pushCanvasInstanceOverrides; exports.readAnimatableValue = readAnimatableValue; exports.readNodeStyleProperty = readNodeStyleProperty; exports.readOverrideGroup = readOverrideGroup; exports.readStyleSize = readStyleSize; exports.realClock = _chunkXHRZSB77cjs.realClock; exports.recordAnimationChanges = recordAnimationChanges; exports.relayoutUpdates = relayoutUpdates; exports.remapPastedNodes = remapPastedNodes; exports.removeCanvasVariant = removeCanvasVariant; exports.removeTrack = removeTrack; exports.renameCanvasVariantProperty = renameCanvasVariantProperty; exports.renameCanvasVariantValue = renameCanvasVariantValue; exports.reorderNodes = reorderNodes; exports.repositionNodesTo = repositionNodesTo; exports.resetCanvasInstanceOverrides = resetCanvasInstanceOverrides; exports.resizeHandleAxes = resizeHandleAxes; exports.resolveCanvasGradient = _chunkGVB7ZPLZcjs.resolveCanvasGradient; exports.resolveCanvasTokens = resolveCanvasTokens; exports.resolveEasing = _chunkXZ4L3R4Kcjs.resolveEasing; exports.resolvePadding = resolvePadding; exports.restoreCanvasMainComponent = restoreCanvasMainComponent; exports.revertShapeCombination = revertShapeCombination; exports.rgbToOklab = _chunkXHRZSB77cjs.rgbToOklab; exports.ringSignedArea = _chunkGVB7ZPLZcjs.ringSignedArea; exports.runMultiNodeTransition = runMultiNodeTransition; exports.sampleAnimationFrames = sampleAnimationFrames; exports.scaleKeyframes = scaleKeyframes; exports.segmentBounds = _chunkGVB7ZPLZcjs.segmentBounds; exports.segmentCurvature = _chunkGVB7ZPLZcjs.segmentCurvature; exports.segmentDerivative = _chunkGVB7ZPLZcjs.segmentDerivative; exports.segmentExtrema = _chunkGVB7ZPLZcjs.segmentExtrema; exports.segmentIntersections = _chunkGVB7ZPLZcjs.segmentIntersections; exports.segmentLength = _chunkGVB7ZPLZcjs.segmentLength; exports.segmentNearest = _chunkGVB7ZPLZcjs.segmentNearest; exports.segmentParamAtLength = _chunkGVB7ZPLZcjs.segmentParamAtLength; exports.segmentPoint = _chunkGVB7ZPLZcjs.segmentPoint; exports.segmentTangent = _chunkGVB7ZPLZcjs.segmentTangent; exports.serializeCanvasNodes = serializeCanvasNodes; exports.setCanvasComponentProperty = setCanvasComponentProperty; exports.setCanvasInstanceProperties = setCanvasInstanceProperties; exports.setCanvasTokenMode = setCanvasTokenMode; exports.setCanvasVariantProperties = setCanvasVariantProperties; exports.setKeyframe = setKeyframe; exports.setKeyframeEasing = setKeyframeEasing; exports.setMotionPath = setMotionPath; exports.setTrackEnabled = setTrackEnabled; exports.shapeNodeToBezierPath = shapeNodeToBezierPath; exports.shapeNodeToPolygon = shapeNodeToPolygon; exports.shapeToBezierPath = shapeToBezierPath; exports.shapeToPolygon = _chunkGVB7ZPLZcjs.shapeToPolygon; exports.sideToPosition = sideToPosition; exports.simplifyRing = _chunkGVB7ZPLZcjs.simplifyRing; exports.snapKeyframeDelta = snapKeyframeDelta; exports.snapNodeDrag = snapNodeDrag; exports.snapNodeResize = snapNodeResize; exports.snapResize = snapResize; exports.snapTimeToFrame = snapTimeToFrame; exports.snapToGrid = snapToGrid; exports.splitSegment = _chunkGVB7ZPLZcjs.splitSegment; exports.springAt = _chunkXZ4L3R4Kcjs.springAt; exports.streamlinePoints = streamlinePoints; exports.strokeBoundingBox = strokeBoundingBox; exports.strokeOutlineRings = _chunkGVB7ZPLZcjs.strokeOutlineRings; exports.strokePointsToPathData = strokePointsToPathData; exports.strokeToShapeNode = strokeToShapeNode; exports.subSegment = _chunkGVB7ZPLZcjs.subSegment; exports.subtractPaths = _chunkGVB7ZPLZcjs.subtractPaths; exports.subtractPolygons = _chunkGVB7ZPLZcjs.subtractPolygons; exports.swapCanvasInstance = swapCanvasInstance; exports.syncAllCanvasInstances = syncAllCanvasInstances; exports.syncCanvasComponents = syncCanvasComponents; exports.syncCanvasInstance = syncCanvasInstance; exports.timeToX = timeToX; exports.toBezierPath = _chunkGVB7ZPLZcjs.toBezierPath; exports.toWebAnimations = toWebAnimations; exports.toggleLockNodes = toggleLockNodes; exports.transformBezierPath = _chunkGVB7ZPLZcjs.transformBezierPath; exports.trimSegments = _chunkGVB7ZPLZcjs.trimSegments; exports.unionPolygons = _chunkGVB7ZPLZcjs.unionPolygons; exports.unitePaths = _chunkGVB7ZPLZcjs.unitePaths; exports.unlockNodes = unlockNodes; exports.updateKeyframe = updateKeyframe; exports.windingNumber = _chunkGVB7ZPLZcjs.windingNumber; exports.withNodeAnimation = withNodeAnimation; exports.withStyleOpacity = withStyleOpacity; exports.withStyleSize = withStyleSize; exports.wouldCreateComponentCycle = wouldCreateComponentCycle; exports.wrapAnimationTime = _chunkXHRZSB77cjs.wrapAnimationTime; exports.writeNodeStyleProperty = writeNodeStyleProperty; exports.writeOverrideGroup = writeOverrideGroup; exports.xToTime = xToTime; exports.xorPolygons = _chunkGVB7ZPLZcjs.xorPolygons;
8732
8732
  //# sourceMappingURL=index.cjs.map
@@ -5,8 +5,8 @@ export { ANIMATION_TIME_EPSILON, AnimationKeyframe, AnimationPlayerOptions, Manu
5
5
  import { b as CanvasNodeUpdate, N as NodeRectOptions, A as AlignEdge, c as AlignNodesOptions, D as DistributeAxis, a as DistributeMode, d as DistributeNodesOptions, S as SizeDimension, M as MatchSizeOptions, Z as ZOrderOperation, C as CanvasArrangeAction } from '../arrange-B6GH5Qcc.cjs';
6
6
  export { e as ArrangeShortcutBinding, f as DEFAULT_ARRANGE_SHORTCUTS, L as LOCKED_DATA_KEY, g as LOCKED_PREVIOUS_FLAGS_KEY, h as alignNodes, i as applyNodeUpdates, j as createNodeLookup, k as distributeNodes, l as getAbsolutePosition, m as getNodeRect, n as getNodeSize, o as invertNodeUpdates, p as isLocked, q as lockNodes, r as matchArrangeShortcut, s as matchSize, t as readStyleSize, u as reorderNodes, v as toggleLockNodes, w as unlockNodes, x as withStyleSize } from '../arrange-B6GH5Qcc.cjs';
7
7
  import { C as Command, M as MergedExecutionOptions } from '../types-DsiXGmjo.cjs';
8
- import { a as BezierPath, P as PolygonBooleanOperation, B as BezierPathInput, b as PolygonFillRule, c as BezierSegment, d as BezierContour, e as ShapeDescription, f as PolygonRing, g as ShapeSize, C as CanvasGradientDef } from '../bezier-D8bsO-L0.cjs';
9
- export { A as AffineMatrix, h as BezierCommand, i as BezierPathToSvgOptions, j as CANVAS_GRADIENT_PRESETS, k as CanvasLinearGradient, l as CanvasRadialGradient, E as EllipseShape, F as FlattenOptions, G as GetShapeRenderDataOptions, m as GradientStop, M as MultiPolygon, n as PathCommand, o as PathPointAtLength, p as PathShape, q as PolygonBooleanOptions, r as PolygonInput, s as PolygonOperand, t as PolygonPiece, u as PolygonToPathOptions, v as PolygonWithHoles, R as RectShape, w as RegularPolygonShape, x as SHAPE_KINDS, y as ShapeKind, z as ShapePaint, D as ShapeRenderData, H as StarShape, S as SvgGradientDef, I as SvgGradientStop, J as angleToSvgLinearCoords, K as arcToCubics, L as bezierPathBounds, N as bezierPathLength, O as bezierPathPointAtLength, Q as bezierPathSignedArea, T as bezierPathToSvg, U as closeContour, V as contourSignedArea, W as contoursToPath, X as countPathSegments, Y as distanceToBezierPath, Z as dividePolygons, _ as flattenSvgPath, $ as formatNumber, a0 as getShapeRenderData, a1 as getShapeSvg, a2 as gradientToSvgDef, a3 as intersectPolygons, a4 as isCanvasGradient, a5 as isShapeDescription, a6 as multiPolygonArea, a7 as multiPolygonBounds, a8 as parseCssGradient, a9 as parseSvgPath, aa as pathToContours, ab as pointInBezierPath, ac as pointInMultiPolygon, ad as pointInRings, ae as polygonArea, af as polygonBoolean, ag as polygonToSvgPath, ah as resolveCanvasGradient, ai as ringSignedArea, aj as segmentBounds, ak as segmentCurvature, al as segmentDerivative, am as segmentExtrema, an as segmentLength, ao as segmentNearest, ap as segmentParamAtLength, aq as segmentPoint, ar as segmentTangent, as as shapeToPolygon, at as simplifyRing, au as splitSegment, av as subSegment, aw as subtractPolygons, ax as toBezierPath, ay as transformBezierPath, az as trimSegments, aA as unionPolygons, aB as windingNumber, aC as xorPolygons } from '../bezier-D8bsO-L0.cjs';
8
+ import { b as StrokeJoin, c as StrokeCap, d as ShapeDescription, a as BezierPath, P as PolygonFillRule, e as PolygonRing, f as ShapeSize, C as CanvasGradientDef } from '../stroke-CWjFKal4.cjs';
9
+ export { A as AffineMatrix, g as BezierCommand, h as BezierContour, B as BezierPathInput, i as BezierPathToSvgOptions, j as BezierSegment, k as CANVAS_GRADIENT_PRESETS, l as CanvasLinearGradient, m as CanvasRadialGradient, D as DashedPath, n as DividePathsResult, E as EllipseShape, F as FlattenOptions, G as GetShapeRenderDataOptions, o as GradientStop, M as MultiPolygon, O as OffsetPathOptions, p as OutlineStrokeOptions, q as PathBooleanOperation, r as PathBooleanResult, s as PathCommand, t as PathOperand, u as PathOperandInput, v as PathOpsError, w as PathOpsOptions, x as PathOpsReport, y as PathPiece, z as PathPointAtLength, H as PathShape, I as PolygonBooleanOperation, J as PolygonBooleanOptions, K as PolygonInput, L as PolygonOperand, N as PolygonPiece, Q as PolygonToPathOptions, R as PolygonWithHoles, T as RectShape, U as RegularPolygonShape, V as SHAPE_KINDS, W as SegmentIntersection, X as ShapeKind, Y as ShapePaint, Z as ShapeRenderData, _ as StarShape, S as SvgGradientDef, $ as SvgGradientStop, a0 as angleToSvgLinearCoords, a1 as arcToCubics, a2 as bezierPathArea, a3 as bezierPathBounds, a4 as bezierPathLength, a5 as bezierPathPointAtLength, a6 as bezierPathSignedArea, a7 as bezierPathToSvg, a8 as closeContour, a9 as contourSignedArea, aa as contoursToPath, ab as countPathSegments, ac as dashContours, ad as distanceToBezierPath, ae as dividePaths, af as dividePolygons, ag as excludePaths, ah as flattenSvgPath, ai as formatNumber, aj as getShapeRenderData, ak as getShapeSvg, al as gradientToSvgDef, am as intersectPaths, an as intersectPolygons, ao as isCanvasGradient, ap as isShapeDescription, aq as multiPolygonArea, ar as multiPolygonBounds, as as normalizeBezierPath, at as offsetPath, au as outlineStroke, av as parseCssGradient, aw as parseSvgPath, ax as pathBoolean, ay as pathToContours, az as pointInBezierPath, aA as pointInMultiPolygon, aB as pointInRings, aC as polygonArea, aD as polygonBoolean, aE as polygonToSvgPath, aF as resolveCanvasGradient, aG as ringSignedArea, aH as segmentBounds, aI as segmentCurvature, aJ as segmentDerivative, aK as segmentExtrema, aL as segmentIntersections, aM as segmentLength, aN as segmentNearest, aO as segmentParamAtLength, aP as segmentPoint, aQ as segmentTangent, aR as shapeToPolygon, aS as simplifyRing, aT as splitSegment, aU as strokeOutlineRings, aV as subSegment, aW as subtractPaths, aX as subtractPolygons, aY as toBezierPath, aZ as transformBezierPath, a_ as trimSegments, a$ as unionPolygons, b0 as unitePaths, b1 as windingNumber, b2 as xorPolygons } from '../stroke-CWjFKal4.cjs';
10
10
  import { d as TokenModeContext, r as TokenType, o as TokenScope, f as TokenLiteral, c as TokenVariable, e as TokenResolution, T as TokenState } from '../model-C1zApQM8.cjs';
11
11
  import { A as AnimationEasing } from '../easing-DTmX99QG.cjs';
12
12
  export { a as ANIMATION_EASING_LABELS, b as ANIMATION_EASING_PRESETS, c as AnimationEasingPreset, C as CUBIC_BEZIER_PRESETS, d as CubicBezierEasing, E as ElasticEasing, S as SpringEasing, e as cubicBezierAt, f as easingFromInfluence, g as easingLabel, h as easingToCss, i as elasticAt, j as evaluateEasing, k as isAnimationEasing, p as parseCssEasing, r as resolveEasing, s as springAt } from '../easing-DTmX99QG.cjs';
@@ -565,220 +565,6 @@ declare function fitViewportToNodes(nodes: CanvasNode[], size: {
565
565
  height: number;
566
566
  }, ids?: Iterable<string>, options?: FitViewportOptions & NodeRectOptions): CanvasViewport | null;
567
567
 
568
- /**
569
- * Curve-preserving boolean operations (union, intersection, difference, xor and divide) on
570
- * Bézier paths.
571
- *
572
- * Algorithm (planar arrangement of curve pieces + winding classification):
573
- * 1. Every segment of every operand (open subpaths closed for filling) is a *source*; it is
574
- * cut into pieces monotone in x and y. Each piece remembers its source and its parameter
575
- * range there, so results can be rebuilt from exact sub-curves of the inputs.
576
- * 2. Pieces are intersected pairwise (pruned by a sweep on x): lines analytically, curves by
577
- * recursive subdivision down to flat sub-curves, chord intersection and Newton polishing.
578
- * Endpoints lying on another piece (T-junctions, tangent touches), collinear / coincident
579
- * overlaps and clusters of hits along a tangency are resolved first. Points closer than
580
- * `epsilon` share one vertex. Splitting repeats until no piece crosses another.
581
- * 3. Coincident pieces (shared edges, identical curves) merge into one edge carrying every
582
- * operand's signed multiplicity.
583
- * 4. Each edge is classified by casting a horizontal or vertical ray from its midpoint (the
584
- * pieces are monotone, so a ray crosses each at most once); the operands' fill rules turn
585
- * the winding numbers on both sides into inside flags and the operation picks the edges
586
- * with the result on exactly one side.
587
- * 5. The kept edges are traced into rings, taking the sharpest left turn at each vertex
588
- * (ties between tangent curves broken by a short chord along each curve), and consecutive
589
- * pieces of one source are merged back into one exact sub-curve, so circles stay four
590
- * cubics and rectangles four lines.
591
- *
592
- * When the curve engine fails (non-converging intersections on near-coincident curves,
593
- * an inconsistent arrangement) the operation falls back to the polygon engine
594
- * (`polygonBoolean`) on flattened input and reports it (`engine: 'polygon'`).
595
- *
596
- * Portions ported from vectorcraft-main/crates/pathops/src/boolean.rs (MIT OR Apache-2.0,
597
- * © ArtCraft Team and contributors). See THIRD_PARTY_NOTICES.md.
598
- */
599
-
600
- /** Boolean operations (same names as `polygonBoolean`). `xor` is Exclude. */
601
- type PathBooleanOperation = PolygonBooleanOperation;
602
- /** A path with the fill rule it is read with (default `nonzero`). */
603
- interface PathOperand {
604
- path: BezierPathInput;
605
- fillRule?: PolygonFillRule;
606
- }
607
- type PathOperandInput = BezierPathInput | PathOperand;
608
- interface PathOpsOptions {
609
- /**
610
- * Distance below which points are treated as equal. Defaults to `1e-9` times the
611
- * largest coordinate magnitude (at least `1e-9`).
612
- */
613
- epsilon?: number;
614
- /** Fall back to the polygon engine when the curve engine fails (default `true`). */
615
- fallback?: boolean;
616
- /** Flattening tolerance used by the polygon fallback (default 0.05). */
617
- fallbackTolerance?: number;
618
- /** Called with the reason whenever the polygon fallback is used. */
619
- onFallback?: (reason: string) => void;
620
- /**
621
- * Work budget of the curve–curve intersection search (flat sub-curve pairs per pair of
622
- * pieces, default 20,000). Exceeding it (nearly coincident curves) falls back.
623
- */
624
- subdivisionBudget?: number;
625
- }
626
- /** Which engine produced a result, and why the curve engine was not used. */
627
- interface PathOpsReport {
628
- engine: 'curve' | 'polygon';
629
- fallbackReason?: string;
630
- /** Set when the input cannot be processed at all (non-finite coordinates); the result is empty. */
631
- error?: string;
632
- }
633
- interface PathBooleanResult extends PathOpsReport {
634
- path: BezierPath;
635
- }
636
- /** One region of `dividePaths`, with the indices of the operands that cover it. */
637
- interface PathPiece {
638
- path: BezierPath;
639
- operands: number[];
640
- }
641
- interface DividePathsResult extends PathOpsReport {
642
- pieces: PathPiece[];
643
- }
644
- /** Raised by the curve engine when it cannot produce a reliable arrangement. */
645
- declare class PathOpsError extends Error {
646
- constructor(message: string);
647
- }
648
- /** A crossing or touch of two segments: the parameter on each and the point. */
649
- interface SegmentIntersection {
650
- ta: number;
651
- tb: number;
652
- point: Point;
653
- }
654
- /**
655
- * Every point where two segments (lines, quadratics or cubics, as control points) cross or
656
- * touch, by the same subdivision search the boolean operations use: flat sub-curves, chord
657
- * intersection, Newton polishing. Hits closer than `epsilon` (default: 1e-9 of the segments'
658
- * size) are one. Coincident stretches report the hits the search finds along them.
659
- */
660
- declare function segmentIntersections(a: BezierSegment, b: BezierSegment, options?: {
661
- epsilon?: number;
662
- budget?: number;
663
- }): SegmentIntersection[];
664
- /**
665
- * Applies a boolean operation to any number of path operands, keeping curves:
666
- * - `union`: covered by any operand.
667
- * - `intersection`: covered by every operand.
668
- * - `difference`: the first operand minus all others.
669
- * - `xor`: covered by an odd number of operands (Exclude).
670
- *
671
- * Open subpaths are closed for filling. Non-finite input gives an empty path (`error`); with
672
- * `fallback: false` a failure of the curve engine throws a `PathOpsError`. The result is a set of simple closed subpaths that
673
- * never cross (they may touch at points): outer subpaths run counter-clockwise in a y-up
674
- * frame (clockwise on screen), holes the other way, so it fills the same with `nonzero`
675
- * and `evenodd`. Segments of the inputs are kept as exact sub-curves.
676
- */
677
- declare function pathBoolean(operation: PathBooleanOperation, operands: PathOperandInput[], options?: PathOpsOptions): PathBooleanResult;
678
- declare const unitePaths: (a: PathOperandInput, b: PathOperandInput, options?: PathOpsOptions) => BezierPath;
679
- declare const intersectPaths: (a: PathOperandInput, b: PathOperandInput, options?: PathOpsOptions) => BezierPath;
680
- declare const subtractPaths: (a: PathOperandInput, b: PathOperandInput, options?: PathOpsOptions) => BezierPath;
681
- declare const excludePaths: (a: PathOperandInput, b: PathOperandInput, options?: PathOpsOptions) => BezierPath;
682
- /**
683
- * Splits the arrangement of the operands into its regions (Divide): every connected area
684
- * covered by the same set of operands becomes one piece (an outer subpath with its holes).
685
- * Pieces are ordered by operand set, then by area (largest first).
686
- */
687
- declare function dividePaths(operands: PathOperandInput[], options?: PathOpsOptions): DividePathsResult;
688
- /**
689
- * Resolves self-intersections and overlaps of one filled path into simple, consistently
690
- * oriented subpaths (outer subpaths and holes) under its fill rule.
691
- */
692
- declare function normalizeBezierPath(path: BezierPathInput, fillRule?: PolygonFillRule, options?: PathOpsOptions): BezierPath;
693
- /** Filled area of a path under its fill rule (overlaps counted once; exact for curves). */
694
- declare function bezierPathArea(path: BezierPathInput, fillRule?: PolygonFillRule, options?: PathOpsOptions): number;
695
-
696
- /**
697
- * Offset Path and Outline Stroke on Bézier paths.
698
- *
699
- * The stroker offsets every segment by ± half the width (lines exactly, curves by cubic
700
- * approximations refined until they stay within `tolerance` of the true offset), joins the
701
- * pieces (miter with a miter limit, round or bevel on the outer side of a turn; through the
702
- * vertex on the inner side) and adds caps (butt, round, square) to open subpaths. Dashes
703
- * follow arc length, restart on every subpath and join across the start of a closed
704
- * subpath. The raw outline overlaps itself, so it is filled with the non-zero rule and
705
- * normalised with the curve boolean engine.
706
- *
707
- * When the stroke is wider than a curve's radius of curvature the inner offset turns inside
708
- * out and its loops cancel winding, leaving holes that are really covered. Every face of
709
- * the true result is bounded by the arrangement, so a face is spurious exactly when a point
710
- * deep inside it is closer to the path than the offset distance (holes when growing,
711
- * islands when insetting); such faces are dropped.
712
- *
713
- * Portions ported from vectorcraft-main/crates/pathops/src/offset.rs,
714
- * vectorcraft-main/crates/pathops/src/boolean.rs (`try_merge`) and
715
- * vectorcraft-main/crates/effects/src/stroke/dash.rs (MIT OR Apache-2.0, © ArtCraft Team
716
- * and contributors). See THIRD_PARTY_NOTICES.md.
717
- */
718
-
719
- /** Line join (as SVG `stroke-linejoin`). */
720
- type StrokeJoin = 'miter' | 'round' | 'bevel';
721
- /** Line cap (as SVG `stroke-linecap`). */
722
- type StrokeCap = 'butt' | 'round' | 'square';
723
- interface OutlineStrokeOptions extends PathOpsOptions {
724
- /** Stroke width. Non-positive or non-finite widths give an empty result. */
725
- width: number;
726
- /** Default `miter` (as SVG). */
727
- join?: StrokeJoin;
728
- /** Default `butt` (as SVG). */
729
- cap?: StrokeCap;
730
- /** Miter length / stroke width above which a miter join is bevelled (default 4, as SVG). */
731
- miterLimit?: number;
732
- /** Dash pattern (as SVG `stroke-dasharray`); odd patterns repeat twice. */
733
- dash?: readonly number[];
734
- /** Distance into the dash pattern at the start of each subpath (as `stroke-dashoffset`). */
735
- dashOffset?: number;
736
- /** Maximum distance between the approximated and the true offset curve (default 0.01). */
737
- tolerance?: number;
738
- }
739
- interface OffsetPathOptions extends PathOpsOptions {
740
- /** Corner style of the grown / shrunk outline (default `miter`). */
741
- join?: StrokeJoin;
742
- /** Miter limit (default 4). */
743
- miterLimit?: number;
744
- /** Fill rule of the input (default `nonzero`). */
745
- fillRule?: PolygonFillRule;
746
- /** Maximum distance between the approximated and the true offset curve (default 0.01). */
747
- tolerance?: number;
748
- }
749
- interface DashedPath {
750
- /** The dashes, as open subpaths. */
751
- contours: BezierContour[];
752
- /** Zero-length dashes: where they sit and the path direction there. */
753
- dots: {
754
- point: Point;
755
- tangent: Point;
756
- }[];
757
- }
758
- /**
759
- * Applies a dash pattern (SVG `stroke-dasharray` / `stroke-dashoffset` semantics) to the
760
- * subpaths. Returns `null` when the pattern is invalid (negative or non-finite entries),
761
- * has no positive entry, or would make more than 200,000 dashes: the line is solid.
762
- */
763
- declare function dashContours(contours: readonly BezierContour[], pattern: readonly number[], offset?: number): DashedPath | null;
764
- /**
765
- * The raw (overlapping) outline of a stroke as closed subpaths to fill with `nonzero`.
766
- * `outlineStroke` normalises it; this is useful for previews.
767
- */
768
- declare function strokeOutlineRings(input: BezierPathInput, options: OutlineStrokeOptions): BezierPath;
769
- /**
770
- * Outline Stroke: the filled area painted by stroking `path`, as one clean path (overlaps
771
- * removed, consistently oriented). Joins, caps, miter limit and dashes follow SVG.
772
- */
773
- declare function outlineStroke(input: BezierPathInput, options: OutlineStrokeOptions): BezierPath;
774
- /**
775
- * Offset Path: grows (`distance > 0`) or shrinks (`distance < 0`) the filled area by
776
- * `distance`. Closed subpaths are a filled region (read with `fillRule`); open subpaths are
777
- * outlined with a stroke of width `2·|distance|` and butt caps (when growing). Loops of the
778
- * offset curves are removed.
779
- */
780
- declare function offsetPath(input: BezierPathInput, distance: number, options?: OffsetPathOptions): BezierPath;
781
-
782
568
  /**
783
569
  * Shape nodes and Freeform-style shape boolean operations (Unite / Intersect / Subtract /
784
570
  * Exclude / Divide) on canvas nodes.
@@ -3011,4 +2797,4 @@ declare function createCanvasDrawController<TNode extends CanvasNode = CanvasNod
3011
2797
  };
3012
2798
  type CanvasDrawController = ReturnType<typeof createCanvasDrawController>;
3013
2799
 
3014
- export { ANIMATABLE_PROPERTIES, ANIMATION_DATA_KEY, AUTO_LAYOUT_DATA_KEY, type AddCanvasVariantOptions, AlignEdge, AlignNodesOptions, type AnimatableProperty, type AnimateNodeOptions, type AnimationDocument, AnimationEasing, AnimationEditError, type AnimationEditErrorCode, type AnimationFrame, type AnimationHistoryTarget, type AnimationKeyframeClipboard, AnimationLoopMode, type AnimationMotionPath, type AnimationOverrides, AnimationPlayer, AnimationPlayerState, type AnimationPropertyOptions, type AnimationStop, AnimationTrack, AnimationValue, AnimationValueType, type ArrangeHistoryTarget, type AutoLayout, type AutoLayoutAlignContent, type AutoLayoutAlignCross, type AutoLayoutAlignMain, type AutoLayoutCellAlign, type AutoLayoutChild, type AutoLayoutConstraints, type AutoLayoutGrid, type AutoLayoutGridArea, type AutoLayoutGridCell, type AutoLayoutGridGeometry, type AutoLayoutGridTrack, type AutoLayoutHorizontalConstraint, type AutoLayoutInsertTarget, type AutoLayoutMeasure, type AutoLayoutMode, type AutoLayoutOptions, type AutoLayoutPadding, type AutoLayoutSize, type AutoLayoutSizing, type AutoLayoutSizingPair, type AutoLayoutVerticalConstraint, BezierContour, BezierPath, BezierPathInput, BezierSegment, CANVAS_COMPONENT_DRAG_TYPE, CANVAS_TOKEN_PROPERTIES, CHILD_LAYOUT_DATA_KEY, COMPONENT_DATA_KEY, COMPONENT_OVERRIDES_DATA_KEY, COMPONENT_PROPERTY_REFS_DATA_KEY, COMPONENT_SET_DATA_KEY, COMPONENT_SOURCE_DATA_KEY, CONNECTION_LINE_TYPES, CSS_ANIMATION_PROPERTIES, type CanvasAnimationController, type CanvasAnimationControllerOptions, type CanvasAnimationState, CanvasArrangeAction, type CanvasArrangeController, type CanvasArrangeControllerOptions, type CanvasAutoLayoutController, type CanvasAutoLayoutControllerOptions, CanvasClipboardPayload, type CanvasComponentData, type CanvasComponentErrorCode, type CanvasComponentInfo, type CanvasComponentPropertyDef, type CanvasComponentPropertyField, type CanvasComponentPropertyType, type CanvasComponentPropertyValue, type CanvasComponentResult, type CanvasComponentSetData, type CanvasComponentSetInfo, type CanvasComponentSyncOptions, type CanvasComponentsController, type CanvasComponentsControllerOptions, type CanvasConnectionLineType, type CanvasDrawController, type CanvasDrawControllerOptions, CanvasEdge, CanvasGradientDef, type CanvasHeightOptions, type CanvasInstanceData, type CanvasInstanceInfo, type CanvasInstancePropertyInfo, CanvasLayoutOptions, CanvasNode, CanvasNodeStyle, CanvasNodeUpdate, type CanvasScene, type CanvasScenesOptions, type CanvasScenesState, CanvasScenesStore, type CanvasTokenBindingInfo, type CanvasTokenOptions, type CanvasTokenProperty, type CanvasViewport, Clock, type CombineShapeNodesOptions, type CombineShapeNodesRefusal, type CombineShapeNodesResult, type ConnectorSnap, type ConnectorSnapOptions, type ConnectorSnapTarget, type CreateCanvasComponentOptions, type CreateCanvasInstanceOptions, type CssAnimationExport, type CssExportOptions, type CssPropertyAnimation, type CubicSegment, DEFAULT_NODE_HEIGHT, DEFAULT_NODE_WIDTH, DEFAULT_PLACEMENT_GAP, type DashedPath, DirectionalDisplacementOptions, DistributeAxis, DistributeMode, DistributeNodesOptions, type DividePathsResult, type EvaluateAnimationOptions, FanOutTrajectoryOptions, type FitCubicsOptions, type FitPathDataOptions, type FitViewportOptions, type FreehandDrawOptions, type FreehandStroke, type FreehandStrokeStyle, type FreehandTool, type GuideIndex, type GuideLine, INSTANCE_DATA_KEY, IncrementalLayoutOptions, type KeyframeDragState, type KeyframePatch, type KeyframeRangeOptions, type KeyframeRef, type KeyframeSnap, MAX_KEYFRAME_REFS, MatchSizeOptions, type MeasureGuide, type MeasureSelectionOptions, type MeasureSelectionResult, type MoveKeyframesResult, type MultiNodeTransitionOptions, type NodeAnimation, NodeRectOptions, NodeTransition, type OffsetPathOptions, type OffsetShapeNodesOptions, type OutlineShapeStrokesOptions, type OutlineStrokeOptions, type PathBooleanOperation, type PathBooleanResult, type PathOperand, type PathOperandInput, PathOpsError, type PathOpsOptions, type PathOpsReport, type PathPiece, PlaceBesideOptions, Point, PolygonBooleanOperation, PolygonFillRule, PolygonRing, Position, type PositionChangeLike, RESIZE_HANDLES, type RecordAnimationOptions, Rect, ReflowDisplacementOptions, type ResizeHandle, SHAPE_DATA_KEY, SHAPE_NODE_TYPE, SHAPE_OPERATIONS, type SampleAnimationOptions, type ScaleKeyframesOptions, type SegmentIntersection, type SerializedCanvasScenes, type SetCanvasVariantPropertiesOptions, type SetKeyframeOptions, ShapeDescription, type ShapeNodePolygonOptions, type ShapeOperation, type ShapePathEditOperation, type ShapePathEditRefusal, type ShapePathEditResult, ShapeSize, Side, SizeDimension, type SnapGuidesOptions, type SnapNodeDragOptions, type SnapNodeDragResult, type SnapNodeResizeOptions, type SnapNodeResizeResult, type SnapResizeOptions, type SnapResizeResult, type SnapResult, StreamingLayoutManager, type StreamingLayoutManagerOptions, type StrokeCap, type StrokeJoin, type StrokeToShapeNodeOptions, TOKEN_BINDINGS_DATA_KEY, TOKEN_MODES_DATA_KEY, type TimelineKeyframe, type TimelineRow, type TimelineRowsOptions, TrajectoryFunction, type WebAnimationSpec, XYPosition, ZOrderOperation, addCanvasVariant, addKeyframesAtTime, animateNode, applyAnimation, applyAnimationOverrides, applyConstraints, applyShapeCombination, applyShapeReplacement, bezierPathArea, bindCanvasComponentProperty, bindCanvasToken, blendLayout, boundsOf, calculateDagreReflowDisplacement, calculateDirectionalDisplacement, canCombineShapeNodes, canOffsetShapeNodes, canOutlineShapeNodeStrokes, canvasHeight, centerNodes, centre, clampAnimationValue, clampLayoutSize, collectDescendantIds, combineCanvasComponentsAsVariants, combineShapeNodes, computeNodesBoundingBox, computeSnapGuides, connectedOnly, copyKeyframes, createBezierTrajectory, createCanvasAnimationController, createCanvasArrangeController, createCanvasAutoLayoutController, createCanvasComponent, createCanvasComponentsController, createCanvasDrawController, createCanvasInstance, createCanvasScenesStore, createDefaultStrokeStyle, createFanOutTrajectory, createGuideIndex, createNodeGuideIndex, cubicPointAt, cubicsToPathData, dashContours, defaultEasing, deleteKeyframes, detachCanvasInstance, detachTokenBindings, diffOverrideGroups, dividePaths, ensureLayout, estimateCanvasHeight, estimateNodeSize, evaluateAnimation, excludePaths, exportCssAnimation, findConnectorSnap, findStrokesAtPoint, findVariant, fitCubicRun, fitCubicWithTangents, fitCubics, fitFreehandPath, fitPathData, fitViewportToNodes, fitViewportToRect, flowSide, formatAnimationTime, formatVariantName, getAnimatableProperty, getAnimatedProperties, getAnimatedValue, getAnimationDuration, getAnimationTrack, getAutoLayout, getAutoLayoutGrid, getAutoLayoutInsertTarget, getBindableTokenProperties, getCanvasComponentDragId, getCanvasTokenProperty, getCenteredNodePosition, getChildLayout, getComponentData, getComponentInstances, getComponentPropertyDefs, getComponentPropertyRefs, getComponentSourceId, getCssPropertyAnimations, getDefaultVariant, getEffectiveTokenModes, getFlowChildren, getInstanceData, getInstanceProperties, getInstanceStatus, getKeyframeTimes, getLayerName, getLayoutParent, getLayoutSizing, getLayoutedNodes, getNextVariantValues, getNodeAnimation, getNodeOverrides, getNodeShape, getNodeTokenBindings, getNodeTokenModes, getOwningComponent, getOwningInstance, getResizingNodeRect, getRootInstance, getTimelineRows, getTimelineTicks, getTokenPropertyScope, getTokensForProperty, getVariantConflicts, getVariantOptions, getVariantSet, getVariantValues, handlePoint, hasVisibleStroke, inferResizeHandle, inspectCanvasInstance, inspectNodeTokens, intersectPaths, isAutoLayoutFrame, isCanvasComponent, isCanvasComponentSet, isCanvasInstance, isCssExportExact, isEventFromTextInput, isInsideInstance, isKeyframeSelected, isMeasureModifierHeld, isNodeAnimated, isShapeNode, isStraightCubic, isValidCanvasEdge, isValidCanvasNode, isValidCanvasScene, isValidUrl, layoutAll, layoutBounds, layoutFrame, layoutUp, layoutUpMany, linearPositionTrajectory, linearTrajectory, listCanvasComponents, makeSizingCoherent, measureBetween, measureLabel, measureSelection, measureToLine, mergeNodeUpdates, moveKeyframes, moveLayoutChild, nearestHandlePositions, normalizeBezierPath, offsetPath, offsetShapeNodes, oppositePosition, outlineShapeNodeStrokes, outlineStroke, overlaps, parseCanvasClipboardData, parseCanvasScenes, parseKeyframeClipboard, parseNodeStyleDeclarations, parseVariantName, pasteKeyframes, pathBoolean, placeBeside, playWebAnimations, positionToSide, pruneCanvasTokenModes, pushCanvasInstanceOverrides, readAnimatableValue, readNodeStyleProperty, readOverrideGroup, recordAnimationChanges, relayoutUpdates, remapPastedNodes, removeCanvasVariant, removeTrack, renameCanvasVariantProperty, renameCanvasVariantValue, repositionNodesTo, resetCanvasInstanceOverrides, resizeHandleAxes, resolveCanvasTokens, resolvePadding, restoreCanvasMainComponent, revertShapeCombination, runMultiNodeTransition, sampleAnimationFrames, scaleKeyframes, segmentIntersections, serializeCanvasNodes, setCanvasComponentProperty, setCanvasInstanceProperties, setCanvasTokenMode, setCanvasVariantProperties, setKeyframe, setKeyframeEasing, setMotionPath, setTrackEnabled, shapeNodeToBezierPath, shapeNodeToPolygon, shapeToBezierPath, sideToPosition, snapKeyframeDelta, snapNodeDrag, snapNodeResize, snapResize, snapTimeToFrame, snapToGrid, streamlinePoints, strokeBoundingBox, strokeOutlineRings, strokePointsToPathData, strokeToShapeNode, subtractPaths, swapCanvasInstance, syncAllCanvasInstances, syncCanvasComponents, syncCanvasInstance, timeToX, toWebAnimations, unitePaths, updateKeyframe, withNodeAnimation, withStyleOpacity, wouldCreateComponentCycle, writeNodeStyleProperty, writeOverrideGroup, xToTime };
2800
+ export { ANIMATABLE_PROPERTIES, ANIMATION_DATA_KEY, AUTO_LAYOUT_DATA_KEY, type AddCanvasVariantOptions, AlignEdge, AlignNodesOptions, type AnimatableProperty, type AnimateNodeOptions, type AnimationDocument, AnimationEasing, AnimationEditError, type AnimationEditErrorCode, type AnimationFrame, type AnimationHistoryTarget, type AnimationKeyframeClipboard, AnimationLoopMode, type AnimationMotionPath, type AnimationOverrides, AnimationPlayer, AnimationPlayerState, type AnimationPropertyOptions, type AnimationStop, AnimationTrack, AnimationValue, AnimationValueType, type ArrangeHistoryTarget, type AutoLayout, type AutoLayoutAlignContent, type AutoLayoutAlignCross, type AutoLayoutAlignMain, type AutoLayoutCellAlign, type AutoLayoutChild, type AutoLayoutConstraints, type AutoLayoutGrid, type AutoLayoutGridArea, type AutoLayoutGridCell, type AutoLayoutGridGeometry, type AutoLayoutGridTrack, type AutoLayoutHorizontalConstraint, type AutoLayoutInsertTarget, type AutoLayoutMeasure, type AutoLayoutMode, type AutoLayoutOptions, type AutoLayoutPadding, type AutoLayoutSize, type AutoLayoutSizing, type AutoLayoutSizingPair, type AutoLayoutVerticalConstraint, BezierPath, CANVAS_COMPONENT_DRAG_TYPE, CANVAS_TOKEN_PROPERTIES, CHILD_LAYOUT_DATA_KEY, COMPONENT_DATA_KEY, COMPONENT_OVERRIDES_DATA_KEY, COMPONENT_PROPERTY_REFS_DATA_KEY, COMPONENT_SET_DATA_KEY, COMPONENT_SOURCE_DATA_KEY, CONNECTION_LINE_TYPES, CSS_ANIMATION_PROPERTIES, type CanvasAnimationController, type CanvasAnimationControllerOptions, type CanvasAnimationState, CanvasArrangeAction, type CanvasArrangeController, type CanvasArrangeControllerOptions, type CanvasAutoLayoutController, type CanvasAutoLayoutControllerOptions, CanvasClipboardPayload, type CanvasComponentData, type CanvasComponentErrorCode, type CanvasComponentInfo, type CanvasComponentPropertyDef, type CanvasComponentPropertyField, type CanvasComponentPropertyType, type CanvasComponentPropertyValue, type CanvasComponentResult, type CanvasComponentSetData, type CanvasComponentSetInfo, type CanvasComponentSyncOptions, type CanvasComponentsController, type CanvasComponentsControllerOptions, type CanvasConnectionLineType, type CanvasDrawController, type CanvasDrawControllerOptions, CanvasEdge, CanvasGradientDef, type CanvasHeightOptions, type CanvasInstanceData, type CanvasInstanceInfo, type CanvasInstancePropertyInfo, CanvasLayoutOptions, CanvasNode, CanvasNodeStyle, CanvasNodeUpdate, type CanvasScene, type CanvasScenesOptions, type CanvasScenesState, CanvasScenesStore, type CanvasTokenBindingInfo, type CanvasTokenOptions, type CanvasTokenProperty, type CanvasViewport, Clock, type CombineShapeNodesOptions, type CombineShapeNodesRefusal, type CombineShapeNodesResult, type ConnectorSnap, type ConnectorSnapOptions, type ConnectorSnapTarget, type CreateCanvasComponentOptions, type CreateCanvasInstanceOptions, type CssAnimationExport, type CssExportOptions, type CssPropertyAnimation, type CubicSegment, DEFAULT_NODE_HEIGHT, DEFAULT_NODE_WIDTH, DEFAULT_PLACEMENT_GAP, DirectionalDisplacementOptions, DistributeAxis, DistributeMode, DistributeNodesOptions, type EvaluateAnimationOptions, FanOutTrajectoryOptions, type FitCubicsOptions, type FitPathDataOptions, type FitViewportOptions, type FreehandDrawOptions, type FreehandStroke, type FreehandStrokeStyle, type FreehandTool, type GuideIndex, type GuideLine, INSTANCE_DATA_KEY, IncrementalLayoutOptions, type KeyframeDragState, type KeyframePatch, type KeyframeRangeOptions, type KeyframeRef, type KeyframeSnap, MAX_KEYFRAME_REFS, MatchSizeOptions, type MeasureGuide, type MeasureSelectionOptions, type MeasureSelectionResult, type MoveKeyframesResult, type MultiNodeTransitionOptions, type NodeAnimation, NodeRectOptions, NodeTransition, type OffsetShapeNodesOptions, type OutlineShapeStrokesOptions, PlaceBesideOptions, Point, PolygonFillRule, PolygonRing, Position, type PositionChangeLike, RESIZE_HANDLES, type RecordAnimationOptions, Rect, ReflowDisplacementOptions, type ResizeHandle, SHAPE_DATA_KEY, SHAPE_NODE_TYPE, SHAPE_OPERATIONS, type SampleAnimationOptions, type ScaleKeyframesOptions, type SerializedCanvasScenes, type SetCanvasVariantPropertiesOptions, type SetKeyframeOptions, ShapeDescription, type ShapeNodePolygonOptions, type ShapeOperation, type ShapePathEditOperation, type ShapePathEditRefusal, type ShapePathEditResult, ShapeSize, Side, SizeDimension, type SnapGuidesOptions, type SnapNodeDragOptions, type SnapNodeDragResult, type SnapNodeResizeOptions, type SnapNodeResizeResult, type SnapResizeOptions, type SnapResizeResult, type SnapResult, StreamingLayoutManager, type StreamingLayoutManagerOptions, StrokeCap, StrokeJoin, type StrokeToShapeNodeOptions, TOKEN_BINDINGS_DATA_KEY, TOKEN_MODES_DATA_KEY, type TimelineKeyframe, type TimelineRow, type TimelineRowsOptions, TrajectoryFunction, type WebAnimationSpec, XYPosition, ZOrderOperation, addCanvasVariant, addKeyframesAtTime, animateNode, applyAnimation, applyAnimationOverrides, applyConstraints, applyShapeCombination, applyShapeReplacement, bindCanvasComponentProperty, bindCanvasToken, blendLayout, boundsOf, calculateDagreReflowDisplacement, calculateDirectionalDisplacement, canCombineShapeNodes, canOffsetShapeNodes, canOutlineShapeNodeStrokes, canvasHeight, centerNodes, centre, clampAnimationValue, clampLayoutSize, collectDescendantIds, combineCanvasComponentsAsVariants, combineShapeNodes, computeNodesBoundingBox, computeSnapGuides, connectedOnly, copyKeyframes, createBezierTrajectory, createCanvasAnimationController, createCanvasArrangeController, createCanvasAutoLayoutController, createCanvasComponent, createCanvasComponentsController, createCanvasDrawController, createCanvasInstance, createCanvasScenesStore, createDefaultStrokeStyle, createFanOutTrajectory, createGuideIndex, createNodeGuideIndex, cubicPointAt, cubicsToPathData, defaultEasing, deleteKeyframes, detachCanvasInstance, detachTokenBindings, diffOverrideGroups, ensureLayout, estimateCanvasHeight, estimateNodeSize, evaluateAnimation, exportCssAnimation, findConnectorSnap, findStrokesAtPoint, findVariant, fitCubicRun, fitCubicWithTangents, fitCubics, fitFreehandPath, fitPathData, fitViewportToNodes, fitViewportToRect, flowSide, formatAnimationTime, formatVariantName, getAnimatableProperty, getAnimatedProperties, getAnimatedValue, getAnimationDuration, getAnimationTrack, getAutoLayout, getAutoLayoutGrid, getAutoLayoutInsertTarget, getBindableTokenProperties, getCanvasComponentDragId, getCanvasTokenProperty, getCenteredNodePosition, getChildLayout, getComponentData, getComponentInstances, getComponentPropertyDefs, getComponentPropertyRefs, getComponentSourceId, getCssPropertyAnimations, getDefaultVariant, getEffectiveTokenModes, getFlowChildren, getInstanceData, getInstanceProperties, getInstanceStatus, getKeyframeTimes, getLayerName, getLayoutParent, getLayoutSizing, getLayoutedNodes, getNextVariantValues, getNodeAnimation, getNodeOverrides, getNodeShape, getNodeTokenBindings, getNodeTokenModes, getOwningComponent, getOwningInstance, getResizingNodeRect, getRootInstance, getTimelineRows, getTimelineTicks, getTokenPropertyScope, getTokensForProperty, getVariantConflicts, getVariantOptions, getVariantSet, getVariantValues, handlePoint, hasVisibleStroke, inferResizeHandle, inspectCanvasInstance, inspectNodeTokens, isAutoLayoutFrame, isCanvasComponent, isCanvasComponentSet, isCanvasInstance, isCssExportExact, isEventFromTextInput, isInsideInstance, isKeyframeSelected, isMeasureModifierHeld, isNodeAnimated, isShapeNode, isStraightCubic, isValidCanvasEdge, isValidCanvasNode, isValidCanvasScene, isValidUrl, layoutAll, layoutBounds, layoutFrame, layoutUp, layoutUpMany, linearPositionTrajectory, linearTrajectory, listCanvasComponents, makeSizingCoherent, measureBetween, measureLabel, measureSelection, measureToLine, mergeNodeUpdates, moveKeyframes, moveLayoutChild, nearestHandlePositions, offsetShapeNodes, oppositePosition, outlineShapeNodeStrokes, overlaps, parseCanvasClipboardData, parseCanvasScenes, parseKeyframeClipboard, parseNodeStyleDeclarations, parseVariantName, pasteKeyframes, placeBeside, playWebAnimations, positionToSide, pruneCanvasTokenModes, pushCanvasInstanceOverrides, readAnimatableValue, readNodeStyleProperty, readOverrideGroup, recordAnimationChanges, relayoutUpdates, remapPastedNodes, removeCanvasVariant, removeTrack, renameCanvasVariantProperty, renameCanvasVariantValue, repositionNodesTo, resetCanvasInstanceOverrides, resizeHandleAxes, resolveCanvasTokens, resolvePadding, restoreCanvasMainComponent, revertShapeCombination, runMultiNodeTransition, sampleAnimationFrames, scaleKeyframes, serializeCanvasNodes, setCanvasComponentProperty, setCanvasInstanceProperties, setCanvasTokenMode, setCanvasVariantProperties, setKeyframe, setKeyframeEasing, setMotionPath, setTrackEnabled, shapeNodeToBezierPath, shapeNodeToPolygon, shapeToBezierPath, sideToPosition, snapKeyframeDelta, snapNodeDrag, snapNodeResize, snapResize, snapTimeToFrame, snapToGrid, streamlinePoints, strokeBoundingBox, strokePointsToPathData, strokeToShapeNode, swapCanvasInstance, syncAllCanvasInstances, syncCanvasComponents, syncCanvasInstance, timeToX, toWebAnimations, updateKeyframe, withNodeAnimation, withStyleOpacity, wouldCreateComponentCycle, writeNodeStyleProperty, writeOverrideGroup, xToTime };