@pixerate/editor 0.144.0 → 0.146.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.
Files changed (48) hide show
  1. package/README.md +1 -1
  2. package/dist/animation/index.cjs +2 -2
  3. package/dist/animation/index.js +1 -1
  4. package/dist/animation/player.d.cts +5 -0
  5. package/dist/animation/player.d.ts +5 -0
  6. package/dist/animation-editor/controller.d.cts +101 -1
  7. package/dist/animation-editor/controller.d.ts +101 -1
  8. package/dist/animation-editor/index.cjs +594 -147
  9. package/dist/animation-editor/index.d.cts +1 -0
  10. package/dist/animation-editor/index.d.ts +1 -0
  11. package/dist/animation-editor/index.js +525 -78
  12. package/dist/animation-editor/record.d.cts +114 -0
  13. package/dist/animation-editor/record.d.ts +114 -0
  14. package/dist/animation-editor/tools.d.cts +1 -0
  15. package/dist/animation-editor/tools.d.ts +1 -0
  16. package/dist/animation-editor/types.d.cts +6 -0
  17. package/dist/animation-editor/types.d.ts +6 -0
  18. package/dist/canvas/index.cjs +24 -24
  19. package/dist/canvas/index.js +1 -1
  20. package/dist/chunk-HRLT5BYO.js +133 -0
  21. package/dist/chunk-KC7HB5GF.cjs +133 -0
  22. package/dist/{chunk-I4T4J27S.js → chunk-QX25HWFL.js} +9 -0
  23. package/dist/{chunk-SVR5FR7B.cjs → chunk-UUTTJK77.cjs} +9 -0
  24. package/dist/diagram/editorDocument.d.cts +12 -0
  25. package/dist/diagram/editorDocument.d.ts +12 -0
  26. package/dist/diagram/index.cjs +35 -1
  27. package/dist/diagram/index.d.cts +1 -0
  28. package/dist/diagram/index.d.ts +1 -0
  29. package/dist/diagram/index.js +34 -0
  30. package/dist/persistence/documentStore.d.cts +51 -0
  31. package/dist/persistence/documentStore.d.ts +51 -0
  32. package/dist/persistence/documentTools.d.cts +35 -0
  33. package/dist/persistence/documentTools.d.ts +35 -0
  34. package/dist/persistence/editorAutosave.d.cts +33 -0
  35. package/dist/persistence/editorAutosave.d.ts +33 -0
  36. package/dist/persistence/editorDocument.d.cts +118 -0
  37. package/dist/persistence/editorDocument.d.ts +118 -0
  38. package/dist/persistence/index.cjs +294 -1
  39. package/dist/persistence/index.d.cts +4 -0
  40. package/dist/persistence/index.d.ts +4 -0
  41. package/dist/persistence/index.js +293 -0
  42. package/dist/video-editor/index.cjs +2 -2
  43. package/dist/video-editor/index.js +1 -1
  44. package/package.json +1 -1
  45. package/skills/pixerate-agent-tools/SKILL.md +21 -0
  46. package/skills/pixerate-animation-editor/SKILL.md +10 -0
  47. package/skills/pixerate-animation-editor/references/commands.md +3 -1
  48. package/skills/pixerate-diagram/SKILL.md +13 -0
@@ -0,0 +1,114 @@
1
+ import type { MotionScene, MotionShot } from './types.cjs';
2
+ import type { VectorBounds } from '../vector/types.cjs';
3
+ /**
4
+ * Recording a take: the person (or an agent) performs changes live, dragging, resizing, turning
5
+ * and recolouring nodes while time runs, and the take becomes a shot of ordinary commands that
6
+ * play the performance back. Samples are values at times; the recorder keeps the few that matter
7
+ * (within a tolerance of the performance) and turns them into smooth commands, so a recorded
8
+ * shot reads and edits like a written one.
9
+ */
10
+ /** A node's pose at one moment of a take. Give any of the values; `x` and `y` go together. */
11
+ export interface MotionTakeSample {
12
+ /** Node id from the artwork. */
13
+ node: string;
14
+ /** Time from the start of the take, ms. */
15
+ t: number;
16
+ /** Where the node's centre is, document units. */
17
+ x?: number;
18
+ y?: number;
19
+ /** Scale from rest (1 = rest size). */
20
+ scaleX?: number;
21
+ scaleY?: number;
22
+ /** Turn from rest, degrees clockwise. */
23
+ rotation?: number;
24
+ /** Opacity, 0–1. */
25
+ opacity?: number;
26
+ /** Solid paints, e.g. `#0ea5e9`. */
27
+ fill?: string;
28
+ stroke?: string;
29
+ strokeWidth?: number;
30
+ }
31
+ /** A performance: samples in any order, and how long the take ran. */
32
+ export interface MotionTake {
33
+ samples: readonly MotionTakeSample[];
34
+ /** Length of the take, ms (default: the last sample). The shot holds after its last change until then. */
35
+ length?: number;
36
+ }
37
+ export interface MotionTakeOptions {
38
+ /** The new shot's id (default `take`, `take-2`…). */
39
+ id?: string;
40
+ /** Its label (default `Recorded take`). */
41
+ label?: string;
42
+ /** Where the shot goes among the shots (default: the end). */
43
+ at?: number;
44
+ /**
45
+ * How closely commands follow the performance, as a multiple of the default tolerances (1:
46
+ * 1 document unit, 0.01 of scale or opacity, 0.5°, 0.25 of stroke width). Lower keeps more points.
47
+ */
48
+ tolerance?: number;
49
+ }
50
+ export interface MotionTakeResult {
51
+ /** The shot that plays the take back. */
52
+ shot: MotionShot;
53
+ /** The shot's position among the shots. */
54
+ at: number;
55
+ /** When the shot starts in the scene, ms. */
56
+ start: number;
57
+ /** Samples given and samples kept as points of commands. */
58
+ samples: {
59
+ given: number;
60
+ kept: number;
61
+ };
62
+ }
63
+ /** Where a node is and how it looks at a time, in the terms a take records. */
64
+ export interface MotionNodePose {
65
+ /** Centre, document units. */
66
+ x: number;
67
+ y: number;
68
+ scaleX: number;
69
+ scaleY: number;
70
+ rotation: number;
71
+ opacity: number;
72
+ fill?: string;
73
+ stroke?: string;
74
+ strokeWidth?: number;
75
+ /** Bounds as drawn at that time, document units (null for an empty group). */
76
+ bounds: VectorBounds | null;
77
+ }
78
+ /** The pose of `id` at `time` (ms) in `scene`. */
79
+ export declare function motionNodePose(scene: MotionScene, id: string, time: number): MotionNodePose;
80
+ /**
81
+ * Indexes of the points to keep so that straight lines between them (in time) stay within `tol`
82
+ * of every point: Ramer–Douglas–Peucker, with the error measured at each point's own time.
83
+ */
84
+ export declare function simplifyTimedSamples(times: readonly number[], values: readonly (readonly number[])[], tol: number): number[];
85
+ /** Problems with a take's samples against the scene, or none. */
86
+ export declare function motionTakeProblems(scene: MotionScene, take: MotionTake): string[];
87
+ /**
88
+ * Turns a take into a shot that plays it back: a node's path becomes one `move` through
89
+ * waypoints reached at the recorded times; scales, turns, fades and stroke widths become a few
90
+ * eased commands; paints change as they were picked. Commands are chained with `with:
91
+ * "previous"` and `delay`, so each starts when it did in the take, and the shot holds until the
92
+ * take's `length`. Before its first sample a property keeps its pose; the change into the first
93
+ * sample is instant (start a drag at the node's pose so it travels from there). Throws, saying
94
+ * why, on unknown nodes or malformed samples.
95
+ */
96
+ export declare function motionTakeShot(scene: MotionScene, take: MotionTake, options?: MotionTakeOptions): MotionTakeResult;
97
+ /**
98
+ * A point on the stage (client pixels, e.g. a pointer event) in document units: the stage draws
99
+ * `camera` scaled to fit `box` and centred (SVG's default `xMidYMid meet`).
100
+ */
101
+ export declare function motionClientToDocument(camera: {
102
+ x: number;
103
+ y: number;
104
+ width: number;
105
+ height: number;
106
+ }, box: {
107
+ left: number;
108
+ top: number;
109
+ width: number;
110
+ height: number;
111
+ }, clientX: number, clientY: number): {
112
+ x: number;
113
+ y: number;
114
+ };
@@ -0,0 +1,114 @@
1
+ import type { MotionScene, MotionShot } from './types.js';
2
+ import type { VectorBounds } from '../vector/types.js';
3
+ /**
4
+ * Recording a take: the person (or an agent) performs changes live, dragging, resizing, turning
5
+ * and recolouring nodes while time runs, and the take becomes a shot of ordinary commands that
6
+ * play the performance back. Samples are values at times; the recorder keeps the few that matter
7
+ * (within a tolerance of the performance) and turns them into smooth commands, so a recorded
8
+ * shot reads and edits like a written one.
9
+ */
10
+ /** A node's pose at one moment of a take. Give any of the values; `x` and `y` go together. */
11
+ export interface MotionTakeSample {
12
+ /** Node id from the artwork. */
13
+ node: string;
14
+ /** Time from the start of the take, ms. */
15
+ t: number;
16
+ /** Where the node's centre is, document units. */
17
+ x?: number;
18
+ y?: number;
19
+ /** Scale from rest (1 = rest size). */
20
+ scaleX?: number;
21
+ scaleY?: number;
22
+ /** Turn from rest, degrees clockwise. */
23
+ rotation?: number;
24
+ /** Opacity, 0–1. */
25
+ opacity?: number;
26
+ /** Solid paints, e.g. `#0ea5e9`. */
27
+ fill?: string;
28
+ stroke?: string;
29
+ strokeWidth?: number;
30
+ }
31
+ /** A performance: samples in any order, and how long the take ran. */
32
+ export interface MotionTake {
33
+ samples: readonly MotionTakeSample[];
34
+ /** Length of the take, ms (default: the last sample). The shot holds after its last change until then. */
35
+ length?: number;
36
+ }
37
+ export interface MotionTakeOptions {
38
+ /** The new shot's id (default `take`, `take-2`…). */
39
+ id?: string;
40
+ /** Its label (default `Recorded take`). */
41
+ label?: string;
42
+ /** Where the shot goes among the shots (default: the end). */
43
+ at?: number;
44
+ /**
45
+ * How closely commands follow the performance, as a multiple of the default tolerances (1:
46
+ * 1 document unit, 0.01 of scale or opacity, 0.5°, 0.25 of stroke width). Lower keeps more points.
47
+ */
48
+ tolerance?: number;
49
+ }
50
+ export interface MotionTakeResult {
51
+ /** The shot that plays the take back. */
52
+ shot: MotionShot;
53
+ /** The shot's position among the shots. */
54
+ at: number;
55
+ /** When the shot starts in the scene, ms. */
56
+ start: number;
57
+ /** Samples given and samples kept as points of commands. */
58
+ samples: {
59
+ given: number;
60
+ kept: number;
61
+ };
62
+ }
63
+ /** Where a node is and how it looks at a time, in the terms a take records. */
64
+ export interface MotionNodePose {
65
+ /** Centre, document units. */
66
+ x: number;
67
+ y: number;
68
+ scaleX: number;
69
+ scaleY: number;
70
+ rotation: number;
71
+ opacity: number;
72
+ fill?: string;
73
+ stroke?: string;
74
+ strokeWidth?: number;
75
+ /** Bounds as drawn at that time, document units (null for an empty group). */
76
+ bounds: VectorBounds | null;
77
+ }
78
+ /** The pose of `id` at `time` (ms) in `scene`. */
79
+ export declare function motionNodePose(scene: MotionScene, id: string, time: number): MotionNodePose;
80
+ /**
81
+ * Indexes of the points to keep so that straight lines between them (in time) stay within `tol`
82
+ * of every point: Ramer–Douglas–Peucker, with the error measured at each point's own time.
83
+ */
84
+ export declare function simplifyTimedSamples(times: readonly number[], values: readonly (readonly number[])[], tol: number): number[];
85
+ /** Problems with a take's samples against the scene, or none. */
86
+ export declare function motionTakeProblems(scene: MotionScene, take: MotionTake): string[];
87
+ /**
88
+ * Turns a take into a shot that plays it back: a node's path becomes one `move` through
89
+ * waypoints reached at the recorded times; scales, turns, fades and stroke widths become a few
90
+ * eased commands; paints change as they were picked. Commands are chained with `with:
91
+ * "previous"` and `delay`, so each starts when it did in the take, and the shot holds until the
92
+ * take's `length`. Before its first sample a property keeps its pose; the change into the first
93
+ * sample is instant (start a drag at the node's pose so it travels from there). Throws, saying
94
+ * why, on unknown nodes or malformed samples.
95
+ */
96
+ export declare function motionTakeShot(scene: MotionScene, take: MotionTake, options?: MotionTakeOptions): MotionTakeResult;
97
+ /**
98
+ * A point on the stage (client pixels, e.g. a pointer event) in document units: the stage draws
99
+ * `camera` scaled to fit `box` and centred (SVG's default `xMidYMid meet`).
100
+ */
101
+ export declare function motionClientToDocument(camera: {
102
+ x: number;
103
+ y: number;
104
+ width: number;
105
+ height: number;
106
+ }, box: {
107
+ left: number;
108
+ top: number;
109
+ width: number;
110
+ height: number;
111
+ }, clientX: number, clientY: number): {
112
+ x: number;
113
+ y: number;
114
+ };
@@ -166,6 +166,7 @@ export declare function describeMotionShots(scene: MotionScene): {
166
166
  y: number;
167
167
  }[];
168
168
  pacing?: "even" | "equal";
169
+ times?: number[];
169
170
  targets: string[];
170
171
  split?: import("./types.cjs").MotionTextUnit;
171
172
  cascade?: import("./types.cjs").MotionCascade;
@@ -166,6 +166,7 @@ export declare function describeMotionShots(scene: MotionScene): {
166
166
  y: number;
167
167
  }[];
168
168
  pacing?: "even" | "equal";
169
+ times?: number[];
169
170
  targets: string[];
170
171
  split?: import("./types.js").MotionTextUnit;
171
172
  cascade?: import("./types.js").MotionCascade;
@@ -298,6 +298,12 @@ export interface MotionMoveCommand extends MotionCommandBase {
298
298
  }[];
299
299
  /** With `via`: `even` (default) keeps the speed steady along the path, `equal` gives each leg the same time. */
300
300
  pacing?: 'even' | 'equal';
301
+ /**
302
+ * With `via`: when the centre passes each waypoint, as fractions of the duration (0–1,
303
+ * rising), one per waypoint. Overrides `pacing`. A recorded take sets it, so playback keeps
304
+ * the performance's timing.
305
+ */
306
+ times?: number[];
301
307
  }
302
308
  /** Turns targets about their centre, by or to an angle in degrees (clockwise). */
303
309
  export interface MotionRotateCommand extends MotionCommandBase {
@@ -298,6 +298,12 @@ export interface MotionMoveCommand extends MotionCommandBase {
298
298
  }[];
299
299
  /** With `via`: `even` (default) keeps the speed steady along the path, `equal` gives each leg the same time. */
300
300
  pacing?: 'even' | 'equal';
301
+ /**
302
+ * With `via`: when the centre passes each waypoint, as fractions of the duration (0–1,
303
+ * rising), one per waypoint. Overrides `pacing`. A recorded take sets it, so playback keeps
304
+ * the performance's timing.
305
+ */
306
+ times?: number[];
301
307
  }
302
308
  /** Turns targets about their centre, by or to an angle in degrees (clockwise). */
303
309
  export interface MotionRotateCommand extends MotionCommandBase {
@@ -225,7 +225,7 @@ var _chunkYQGCPL5Xcjs = require('../chunk-YQGCPL5X.cjs');
225
225
 
226
226
 
227
227
 
228
- var _chunkSVR5FR7Bcjs = require('../chunk-SVR5FR7B.cjs');
228
+ var _chunkUUTTJK77cjs = require('../chunk-UUTTJK77.cjs');
229
229
 
230
230
 
231
231
 
@@ -335,7 +335,7 @@ function runMultiNodeTransition(transitions, options = {}) {
335
335
  const {
336
336
  defaultDuration = 400,
337
337
  defaultEasing: easingFunc = defaultEasing,
338
- clock = _chunkSVR5FR7Bcjs.realClock,
338
+ clock = _chunkUUTTJK77cjs.realClock,
339
339
  styleFormat = "string",
340
340
  onUpdate,
341
341
  onComplete
@@ -771,7 +771,7 @@ var StreamingLayoutManager = (_class = class {
771
771
  this.throttleMs = _nullishCoalesce(options.throttleMs, () => ( 200));
772
772
  this.glideDurationMs = _nullishCoalesce(options.glideDurationMs, () => ( 300));
773
773
  this.connectedOnly = _nullishCoalesce(options.connectedOnly, () => ( false));
774
- this.clock = _nullishCoalesce(options.clock, () => ( _chunkSVR5FR7Bcjs.realClock));
774
+ this.clock = _nullishCoalesce(options.clock, () => ( _chunkUUTTJK77cjs.realClock));
775
775
  this.layoutOptions = _nullishCoalesce(options.layoutOptions, () => ( { direction: "LR" }));
776
776
  this.onLayoutUpdated = options.onLayoutUpdated;
777
777
  }
@@ -4369,7 +4369,7 @@ function getNodeAnimation(node) {
4369
4369
  }
4370
4370
  function getAnimationTrack(node, property) {
4371
4371
  const track = _optionalChain([getNodeAnimation, 'call', _178 => _178(node), 'optionalAccess', _179 => _179.tracks, 'access', _180 => _180[property]]);
4372
- return track && Array.isArray(track.keyframes) && _chunkSVR5FR7Bcjs.normalizeKeyframes.call(void 0, track.keyframes).length > 0 ? track : void 0;
4372
+ return track && Array.isArray(track.keyframes) && _chunkUUTTJK77cjs.normalizeKeyframes.call(void 0, track.keyframes).length > 0 ? track : void 0;
4373
4373
  }
4374
4374
  function isNodeAnimated(node) {
4375
4375
  const animation = getNodeAnimation(node);
@@ -4406,7 +4406,7 @@ function getAnimationDuration(doc) {
4406
4406
  if (!animation) continue;
4407
4407
  for (const track of Object.values(animation.tracks)) {
4408
4408
  if (!track || track.enabled === false) continue;
4409
- const keys = _chunkSVR5FR7Bcjs.normalizeKeyframes.call(void 0, track.keyframes);
4409
+ const keys = _chunkUUTTJK77cjs.normalizeKeyframes.call(void 0, track.keyframes);
4410
4410
  if (keys.length > 0) end = Math.max(end, keys[keys.length - 1].time);
4411
4411
  }
4412
4412
  }
@@ -4423,7 +4423,7 @@ function evaluateAnimation(doc, time, options = {}) {
4423
4423
  for (const [key, track] of Object.entries(animation.tracks)) {
4424
4424
  if (!track || track.enabled === false) continue;
4425
4425
  const property = (_nullishCoalesce(options.properties, () => ( ANIMATABLE_PROPERTIES))).find((p) => p.key === key);
4426
- const value = _chunkSVR5FR7Bcjs.evaluateTrack.call(void 0, track, time, _nullishCoalesce(_optionalChain([property, 'optionalAccess', _182 => _182.type]), () => ( "number")));
4426
+ const value = _chunkUUTTJK77cjs.evaluateTrack.call(void 0, track, time, _nullishCoalesce(_optionalChain([property, 'optionalAccess', _182 => _182.type]), () => ( "number")));
4427
4427
  if (value === void 0) continue;
4428
4428
  (values ??= {})[key] = clampAnimationValue(property, value);
4429
4429
  }
@@ -4461,7 +4461,7 @@ var AnimationEditError = class extends Error {
4461
4461
  }
4462
4462
  };
4463
4463
  var MAX_KEYFRAME_REFS = 4096;
4464
- var sameTime = (a, b) => Math.abs(a - b) <= _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON;
4464
+ var sameTime = (a, b) => Math.abs(a - b) <= _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON;
4465
4465
  var refKey = (r) => `${r.nodeId}\0${r.property}`;
4466
4466
  function snapTimeToFrame(time, fps) {
4467
4467
  if (!(fps > 0)) return time;
@@ -4515,7 +4515,7 @@ var Draft = (_class4 = class {
4515
4515
  const current = getNodeAnimation(this.node(id));
4516
4516
  const tracks = {};
4517
4517
  for (const [key, track] of Object.entries(_nullishCoalesce(_optionalChain([current, 'optionalAccess', _184 => _184.tracks]), () => ( {})))) {
4518
- if (track) tracks[key] = { ...track, keyframes: _chunkSVR5FR7Bcjs.normalizeKeyframes.call(void 0, track.keyframes) };
4518
+ if (track) tracks[key] = { ...track, keyframes: _chunkUUTTJK77cjs.normalizeKeyframes.call(void 0, track.keyframes) };
4519
4519
  }
4520
4520
  animation = { ..._nullishCoalesce(current, () => ( {})), tracks };
4521
4521
  this.animations.set(id, animation);
@@ -4585,7 +4585,7 @@ function readAnimatableValue(node, property) {
4585
4585
  function getAnimatedValue(node, propertyKey, time, options = {}) {
4586
4586
  const property = getAnimatableProperty(propertyKey, options);
4587
4587
  const track = getAnimationTrack(node, propertyKey);
4588
- if (track && track.enabled !== false) return _chunkSVR5FR7Bcjs.evaluateTrack.call(void 0, track, time, _nullishCoalesce(_optionalChain([property, 'optionalAccess', _190 => _190.type]), () => ( "number")));
4588
+ if (track && track.enabled !== false) return _chunkUUTTJK77cjs.evaluateTrack.call(void 0, track, time, _nullishCoalesce(_optionalChain([property, 'optionalAccess', _190 => _190.type]), () => ( "number")));
4589
4589
  return property ? readAnimatableValue(node, property) : void 0;
4590
4590
  }
4591
4591
  function putKey(draft, nodeId, property, time, value, easing, inherit = true) {
@@ -4687,7 +4687,7 @@ function removeTrack(nodes, nodeId, property, options = {}) {
4687
4687
  if (!track) return nodes;
4688
4688
  const p = draft.property(property);
4689
4689
  if (options.keepValueAt !== void 0 && p && property !== "motionPath") {
4690
- const value = _chunkSVR5FR7Bcjs.evaluateTrack.call(void 0, track, options.keepValueAt, p.type);
4690
+ const value = _chunkUUTTJK77cjs.evaluateTrack.call(void 0, track, options.keepValueAt, p.type);
4691
4691
  if (value !== void 0) draft.writeNode(nodeId, (n3) => p.write(n3, value));
4692
4692
  }
4693
4693
  draft.setKeys(nodeId, property, []);
@@ -4716,10 +4716,10 @@ function moveKeyframes(nodes, refs, delta, options = {}) {
4716
4716
  low = Math.max(low, min - time);
4717
4717
  high = Math.min(high, max - time);
4718
4718
  }
4719
- if (low > high + _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON) throw new AnimationEditError("no_movement_range", "The keyframes have no common movement range.");
4719
+ if (low > high + _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON) throw new AnimationEditError("no_movement_range", "The keyframes have no common movement range.");
4720
4720
  const applied = Math.min(high, Math.max(low, delta));
4721
4721
  const moved = refs.map((ref) => ({ ...ref, time: draft.keys(ref.nodeId, ref.property)[draft.find(ref)].time + applied }));
4722
- if (Math.abs(applied) <= _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON) return { nodes, delta: 0, refs: refs.map((r) => ({ ...r })) };
4722
+ if (Math.abs(applied) <= _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON) return { nodes, delta: 0, refs: refs.map((r) => ({ ...r })) };
4723
4723
  retime(draft, refs, (time) => time + applied);
4724
4724
  return { nodes: draft.commit(), delta: applied, refs: moved };
4725
4725
  }
@@ -4765,7 +4765,7 @@ function getKeyframeTimes(nodes, options = {}) {
4765
4765
  if (!animation) continue;
4766
4766
  for (const [property, track] of Object.entries(animation.tracks)) {
4767
4767
  const skip = _nullishCoalesce(excluded.get(refKey({ nodeId: node.id, property })), () => ( []));
4768
- for (const k of _chunkSVR5FR7Bcjs.normalizeKeyframes.call(void 0, _optionalChain([track, 'optionalAccess', _192 => _192.keyframes]))) if (!skip.some((t) => sameTime(t, k.time))) times.push(k.time);
4768
+ for (const k of _chunkUUTTJK77cjs.normalizeKeyframes.call(void 0, _optionalChain([track, 'optionalAccess', _192 => _192.keyframes]))) if (!skip.some((t) => sameTime(t, k.time))) times.push(k.time);
4769
4769
  }
4770
4770
  }
4771
4771
  times.sort((a, b) => a - b);
@@ -4884,7 +4884,7 @@ function recordAnimationChanges(base, before, after, time, options = {}) {
4884
4884
  };
4885
4885
  if (animated) {
4886
4886
  if (changed) {
4887
- const keys = _chunkSVR5FR7Bcjs.normalizeKeyframes.call(void 0, track.keyframes).filter((k) => !sameTime(k.time, t));
4887
+ const keys = _chunkUUTTJK77cjs.normalizeKeyframes.call(void 0, track.keyframes).filter((k) => !sameTime(k.time, t));
4888
4888
  const before2 = [...keys].reverse().find((k) => k.time < t);
4889
4889
  keys.push({ time: t, value: now, ..._optionalChain([before2, 'optionalAccess', _194 => _194.easing]) !== void 0 ? { easing: before2.easing } : {} });
4890
4890
  tracksOf()[p.key] = { ...track, keyframes: keys.sort((a, b) => a.time - b.time) };
@@ -4893,7 +4893,7 @@ function recordAnimationChanges(base, before, after, time, options = {}) {
4893
4893
  restore();
4894
4894
  } else if (changed && options.recording && !track) {
4895
4895
  const keys = [];
4896
- if (t > _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON && was !== void 0) keys.push({ time: 0, value: was });
4896
+ if (t > _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON && was !== void 0) keys.push({ time: 0, value: was });
4897
4897
  keys.push({ time: t, value: now });
4898
4898
  tracksOf()[p.key] = { keyframes: keys };
4899
4899
  keyed.push({ nodeId: next.id, property: p.key, time: t });
@@ -5020,7 +5020,7 @@ function getCssPropertyAnimations(nodes, nodeId, options = {}) {
5020
5020
  const tracks = /* @__PURE__ */ new Map();
5021
5021
  for (const [key, track] of Object.entries(animation.tracks)) {
5022
5022
  if (!track || track.enabled === false || !map[key]) continue;
5023
- const keys = _chunkSVR5FR7Bcjs.normalizeKeyframes.call(void 0, track.keyframes);
5023
+ const keys = _chunkUUTTJK77cjs.normalizeKeyframes.call(void 0, track.keyframes);
5024
5024
  if (keys.length > 0) tracks.set(key, keys);
5025
5025
  }
5026
5026
  const typeOf = (key) => _nullishCoalesce(_optionalChain([ANIMATABLE_PROPERTIES, 'access', _199 => _199.find, 'call', _200 => _200((p) => p.key === key), 'optionalAccess', _201 => _201.type]), () => ( "number"));
@@ -5033,7 +5033,7 @@ function getCssPropertyAnimations(nodes, nodeId, options = {}) {
5033
5033
  for (const [css, sources] of groups) {
5034
5034
  const camel2 = map[sources[0]].camel;
5035
5035
  const keysOf = (k) => tracks.get(k);
5036
- const evalAt = (k, t) => _chunkSVR5FR7Bcjs.evaluateTrack.call(void 0, keysOf(k), t, typeOf(k));
5036
+ const evalAt = (k, t) => _chunkUUTTJK77cjs.evaluateTrack.call(void 0, keysOf(k), t, typeOf(k));
5037
5037
  const allTimes = sources.flatMap((k) => keysOf(k).map((x) => x.time));
5038
5038
  if (sources.includes("motionPath")) {
5039
5039
  const position = (t) => {
@@ -5129,7 +5129,7 @@ function isCssExportExact(nodes, nodeId) {
5129
5129
 
5130
5130
  // src/canvas/animation/timeline.ts
5131
5131
  function isKeyframeSelected(selection, ref) {
5132
- return selection.some((s) => s.nodeId === ref.nodeId && s.property === ref.property && Math.abs(s.time - ref.time) <= _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON);
5132
+ return selection.some((s) => s.nodeId === ref.nodeId && s.property === ref.property && Math.abs(s.time - ref.time) <= _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON);
5133
5133
  }
5134
5134
  var defaultLabel = (node) => typeof _optionalChain([node, 'access', _202 => _202.data, 'optionalAccess', _203 => _203.label]) === "string" && node.data.label.trim() ? node.data.label : node.id;
5135
5135
  function getTimelineRows(nodes, ids, options = {}) {
@@ -5150,7 +5150,7 @@ function getTimelineRows(nodes, ids, options = {}) {
5150
5150
  property,
5151
5151
  label,
5152
5152
  enabled: track.enabled !== false,
5153
- keyframes: _chunkSVR5FR7Bcjs.normalizeKeyframes.call(void 0, track.keyframes).map((k) => {
5153
+ keyframes: _chunkUUTTJK77cjs.normalizeKeyframes.call(void 0, track.keyframes).map((k) => {
5154
5154
  const ref = { nodeId: id, property, time: k.time };
5155
5155
  const selected = isKeyframeSelected(selection, ref);
5156
5156
  return {
@@ -5210,7 +5210,7 @@ function createCanvasAnimationController(options) {
5210
5210
  }
5211
5211
  return _nullishCoalesce(fixedDuration, () => ( durationValue));
5212
5212
  };
5213
- const player = new (0, _chunkSVR5FR7Bcjs.AnimationPlayer)({
5213
+ const player = new (0, _chunkUUTTJK77cjs.AnimationPlayer)({
5214
5214
  clock: options.clock,
5215
5215
  duration,
5216
5216
  loop: options.loop,
@@ -5289,7 +5289,7 @@ function createCanvasAnimationController(options) {
5289
5289
  const byId = new Map(options.getNodes().map((n3) => [n3.id, n3]));
5290
5290
  const kept = selection.filter((ref) => {
5291
5291
  const track = _optionalChain([getNodeAnimation, 'call', _216 => _216(byId.get(ref.nodeId)), 'optionalAccess', _217 => _217.tracks, 'access', _218 => _218[ref.property]]);
5292
- return !!track && _chunkSVR5FR7Bcjs.normalizeKeyframes.call(void 0, track.keyframes).some((k) => Math.abs(k.time - ref.time) <= _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON);
5292
+ return !!track && _chunkUUTTJK77cjs.normalizeKeyframes.call(void 0, track.keyframes).some((k) => Math.abs(k.time - ref.time) <= _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON);
5293
5293
  });
5294
5294
  if (kept.length !== selection.length) selection = kept;
5295
5295
  }
@@ -5361,7 +5361,7 @@ function createCanvasAnimationController(options) {
5361
5361
  nextKeyframe(ids = selectedIds()) {
5362
5362
  const list = [...ids];
5363
5363
  const times = getKeyframeTimes(options.getNodes(), list.length ? { ids: list } : {});
5364
- const next = times.find((t) => t > player.currentTime + _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON);
5364
+ const next = times.find((t) => t > player.currentTime + _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON);
5365
5365
  if (next === void 0) return null;
5366
5366
  player.seek(next);
5367
5367
  return next;
@@ -5369,7 +5369,7 @@ function createCanvasAnimationController(options) {
5369
5369
  previousKeyframe(ids = selectedIds()) {
5370
5370
  const list = [...ids];
5371
5371
  const times = getKeyframeTimes(options.getNodes(), list.length ? { ids: list } : {});
5372
- const prev = [...times].reverse().find((t) => t < player.currentTime - _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON);
5372
+ const prev = [...times].reverse().find((t) => t < player.currentTime - _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON);
5373
5373
  if (prev === void 0) return null;
5374
5374
  player.seek(prev);
5375
5375
  return prev;
@@ -12186,4 +12186,4 @@ function createCanvasEffectsToolProvider(controller, options = {}) {
12186
12186
 
12187
12187
 
12188
12188
 
12189
- exports.ANIMATABLE_PROPERTIES = ANIMATABLE_PROPERTIES; exports.ANIMATION_DATA_KEY = ANIMATION_DATA_KEY; exports.ANIMATION_EASING_LABELS = _chunkDWJJI6RTcjs.ANIMATION_EASING_LABELS; exports.ANIMATION_EASING_PRESETS = _chunkDWJJI6RTcjs.ANIMATION_EASING_PRESETS; exports.ANIMATION_TIME_EPSILON = _chunkSVR5FR7Bcjs.ANIMATION_TIME_EPSILON; exports.AUTO_LAYOUT_DATA_KEY = AUTO_LAYOUT_DATA_KEY; exports.AnimationEditError = AnimationEditError; exports.AnimationPlayer = _chunkSVR5FR7Bcjs.AnimationPlayer; exports.BUILTIN_FAMILY_SCENES = BUILTIN_FAMILY_SCENES; exports.CANVAS_CAPTURE_CHROME_SELECTORS = CANVAS_CAPTURE_CHROME_SELECTORS; exports.CANVAS_CAPTURE_OVERLAY_SELECTORS = CANVAS_CAPTURE_OVERLAY_SELECTORS; exports.CANVAS_CAPTURE_VIEWPORT_SELECTOR = CANVAS_CAPTURE_VIEWPORT_SELECTOR; exports.CANVAS_COMPONENT_DRAG_TYPE = CANVAS_COMPONENT_DRAG_TYPE; exports.CANVAS_EFFECT_PLACES = CANVAS_EFFECT_PLACES; exports.CANVAS_GRADIENT_PRESETS = _chunkNM3G4VQTcjs.CANVAS_GRADIENT_PRESETS; exports.CANVAS_TOKEN_PROPERTIES = CANVAS_TOKEN_PROPERTIES; exports.CARD_INSPECTION_ZONES = CARD_INSPECTION_ZONES; 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.CSS_VARIABLE_DIAGRAM_SCENE_THEME = CSS_VARIABLE_DIAGRAM_SCENE_THEME; exports.CUBIC_BEZIER_PRESETS = _chunkDWJJI6RTcjs.CUBIC_BEZIER_PRESETS; exports.CanvasScenesStore = CanvasScenesStore; exports.DEFAULT_ARRANGE_SHORTCUTS = _chunk4EFNS2HVcjs.DEFAULT_ARRANGE_SHORTCUTS; exports.DEFAULT_CURSOR_INACTIVITY_MS = DEFAULT_CURSOR_INACTIVITY_MS; exports.DEFAULT_DIAGRAM_NODE_HEIGHT = DEFAULT_DIAGRAM_NODE_HEIGHT; exports.DEFAULT_DIAGRAM_NODE_WIDTH = DEFAULT_DIAGRAM_NODE_WIDTH; exports.DEFAULT_NODE_HEIGHT = _chunkEL4PSKFTcjs.DEFAULT_NODE_HEIGHT; exports.DEFAULT_NODE_WIDTH = _chunkEL4PSKFTcjs.DEFAULT_NODE_WIDTH; exports.DEFAULT_PLACEMENT_GAP = _chunkEL4PSKFTcjs.DEFAULT_PLACEMENT_GAP; exports.DIAGRAM_MARKER_IDS = DIAGRAM_MARKER_IDS; exports.DIAGRAM_RASTER_MAX_SIZE = DIAGRAM_RASTER_MAX_SIZE; exports.DIAGRAM_SCENE_DARK_THEME = DIAGRAM_SCENE_DARK_THEME; exports.DIAGRAM_SCENE_LIGHT_THEME = DIAGRAM_SCENE_LIGHT_THEME; exports.DIAGRAM_SVG_DARK_THEME = DIAGRAM_SVG_DARK_THEME; exports.DIAGRAM_SVG_LIGHT_THEME = DIAGRAM_SVG_LIGHT_THEME; exports.DIAGRAM_TITLE_TARGET = DIAGRAM_TITLE_TARGET; exports.DiagramStream = DiagramStream; exports.INSTANCE_DATA_KEY = INSTANCE_DATA_KEY; exports.LOCKED_DATA_KEY = _chunkEL4PSKFTcjs.LOCKED_DATA_KEY; exports.LOCKED_PREVIOUS_FLAGS_KEY = _chunkEL4PSKFTcjs.LOCKED_PREVIOUS_FLAGS_KEY; exports.MAX_KEYFRAME_REFS = MAX_KEYFRAME_REFS; exports.MERMAID_SHAPE_PAINT = MERMAID_SHAPE_PAINT; exports.ManualClock = _chunkSVR5FR7Bcjs.ManualClock; exports.PATHFINDER_OPERATIONS = _chunkYAWLMF3Ocjs.PATHFINDER_OPERATIONS; exports.PIXERATE_BRAND_GRADIENT = _chunkNM3G4VQTcjs.PIXERATE_BRAND_GRADIENT; exports.PathOpsError = _chunkGF2RBSDMcjs.PathOpsError; exports.PlanarMap = _chunkYAWLMF3Ocjs.PlanarMap; exports.RESIZE_HANDLES = RESIZE_HANDLES; exports.SHAPE_DATA_KEY = SHAPE_DATA_KEY; exports.SHAPE_KINDS = _chunkNM3G4VQTcjs.SHAPE_KINDS; exports.SHAPE_NODE_TYPE = SHAPE_NODE_TYPE; exports.SHAPE_OPERATIONS = SHAPE_OPERATIONS; exports.SPRING_PRESETS = _chunkDWJJI6RTcjs.SPRING_PRESETS; 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 = _chunkEL4PSKFTcjs.alignNodes; exports.angleToSvgLinearCoords = _chunkNM3G4VQTcjs.angleToSvgLinearCoords; exports.animateNode = animateNode; exports.applyAnimation = applyAnimation; exports.applyAnimationOverrides = applyAnimationOverrides; exports.applyConstraints = applyConstraints; exports.applyNodeUpdates = _chunkEL4PSKFTcjs.applyNodeUpdates; exports.applyShapeCombination = applyShapeCombination; exports.applyShapeReplacement = applyShapeReplacement; exports.arcToCubics = _chunkGF2RBSDMcjs.arcToCubics; exports.architectureScene = architectureScene; exports.autoLayoutDiagram = autoLayoutDiagram; exports.bezierPathArea = _chunkGF2RBSDMcjs.bezierPathArea; exports.bezierPathBounds = _chunkGF2RBSDMcjs.bezierPathBounds; exports.bezierPathLength = _chunkGF2RBSDMcjs.bezierPathLength; exports.bezierPathPointAtLength = _chunkGF2RBSDMcjs.bezierPathPointAtLength; exports.bezierPathSignedArea = _chunkGF2RBSDMcjs.bezierPathSignedArea; exports.bezierPathToSvg = _chunkGF2RBSDMcjs.bezierPathToSvg; exports.bindCanvasComponentProperty = bindCanvasComponentProperty; exports.bindCanvasToken = bindCanvasToken; exports.blendDiagramLayout = blendDiagramLayout; exports.blendLayout = blendLayout; exports.boundsOf = _chunkEL4PSKFTcjs.boundsOf; exports.brushstrokeScaleBucket = _chunkYQGCPL5Xcjs.brushstrokeScaleBucket; exports.brushstrokeSeed = _chunkPUC43JPTcjs.brushstrokeSeed; exports.c4Scene = c4Scene; exports.calculateCursorArrowRotation = calculateCursorArrowRotation; exports.calculateCurvedPath = calculateCurvedPath; exports.calculateDagreReflowDisplacement = calculateDagreReflowDisplacement; exports.calculateDirectionalDisplacement = calculateDirectionalDisplacement; exports.canCombineShapeNodes = canCombineShapeNodes; exports.canOffsetShapeNodes = canOffsetShapeNodes; exports.canOutlineShapeNodeStrokes = canOutlineShapeNodeStrokes; exports.canvasEffectsPool = canvasEffectsPool; exports.canvasHeight = canvasHeight; exports.canvasNodeCaptureRect = canvasNodeCaptureRect; exports.canvasNodeEffect = canvasNodeEffect; exports.captureCanvasView = captureCanvasView; exports.centerNodes = _chunkEL4PSKFTcjs.centerNodes; exports.centre = _chunkEL4PSKFTcjs.centre; exports.clampAnimationValue = clampAnimationValue; exports.clampLayoutSize = clampLayoutSize; exports.closeContour = _chunkGF2RBSDMcjs.closeContour; exports.collectDescendantIds = collectDescendantIds; exports.combineCanvasComponentsAsVariants = combineCanvasComponentsAsVariants; exports.combineShapeNodes = combineShapeNodes; exports.computeDragBounds = computeDragBounds; exports.computeDragBoundsFromPoints = computeDragBoundsFromPoints; exports.computeNodesBoundingBox = computeNodesBoundingBox; exports.computeSnapGuides = computeSnapGuides; exports.connectedDiagramOnly = connectedDiagramOnly; exports.connectedOnly = connectedOnly; exports.contourEnclosesArea = _chunkYAWLMF3Ocjs.contourEnclosesArea; exports.contourSignedArea = _chunkGF2RBSDMcjs.contourSignedArea; exports.contoursToPath = _chunkGF2RBSDMcjs.contoursToPath; exports.copyKeyframes = copyKeyframes; exports.countPathSegments = _chunkGF2RBSDMcjs.countPathSegments; exports.createAnimationPlayer = _chunkSVR5FR7Bcjs.createAnimationPlayer; exports.createBezierTrajectory = createBezierTrajectory; exports.createCanvasAnimationController = createCanvasAnimationController; exports.createCanvasArrangeController = createCanvasArrangeController; exports.createCanvasAutoLayoutController = createCanvasAutoLayoutController; exports.createCanvasCaptureSurface = createCanvasCaptureSurface; exports.createCanvasCaptureToolProvider = createCanvasCaptureToolProvider; exports.createCanvasComponent = createCanvasComponent; exports.createCanvasComponentsController = createCanvasComponentsController; exports.createCanvasDrawController = createCanvasDrawController; exports.createCanvasEffectsController = createCanvasEffectsController; exports.createCanvasEffectsToolProvider = createCanvasEffectsToolProvider; exports.createCanvasInstance = createCanvasInstance; exports.createCanvasPlaybackLocator = createCanvasPlaybackLocator; exports.createCanvasScenesStore = createCanvasScenesStore; exports.createDefaultStrokeStyle = createDefaultStrokeStyle; exports.createFanOutTrajectory = createFanOutTrajectory; exports.createGuideIndex = createGuideIndex; exports.createNodeGuideIndex = createNodeGuideIndex; exports.createNodeLookup = _chunkEL4PSKFTcjs.createNodeLookup; exports.cubicBezierAt = _chunkDWJJI6RTcjs.cubicBezierAt; exports.cubicPointAt = _chunkNM3G4VQTcjs.cubicPointAt; exports.cubicsToPathData = _chunkNM3G4VQTcjs.cubicsToPathData; exports.cutOutPiece = _chunkYAWLMF3Ocjs.cutOutPiece; exports.dashContours = _chunkGF2RBSDMcjs.dashContours; exports.defaultEasing = defaultEasing; exports.deleteKeyframes = deleteKeyframes; exports.detachCanvasInstance = detachCanvasInstance; exports.detachTokenBindings = detachTokenBindings; exports.diagramCanvasHeight = diagramCanvasHeight; exports.diagramFileName = diagramFileName; exports.diagramGroupSize = diagramGroupSize; exports.diagramImageSize = diagramImageSize; exports.diagramLayoutBounds = diagramLayoutBounds; exports.diagramMarksBounds = diagramMarksBounds; exports.diagramMarksToSvg = diagramMarksToSvg; exports.diagramRenameOp = diagramRenameOp; exports.diagramTargetLabel = diagramTargetLabel; exports.diagramTextBaseline = diagramTextBaseline; exports.diffOverrideGroups = diffOverrideGroups; exports.distanceToBezierPath = _chunkGF2RBSDMcjs.distanceToBezierPath; exports.distributeNodes = _chunkEL4PSKFTcjs.distributeNodes; exports.dividePaths = _chunkGF2RBSDMcjs.dividePaths; exports.dividePolygons = _chunkGF2RBSDMcjs.dividePolygons; exports.downloadDiagramPng = downloadDiagramPng; exports.easeDiagramTween = easeDiagramTween; exports.easingFromInfluence = _chunkDWJJI6RTcjs.easingFromInfluence; exports.easingLabel = _chunkDWJJI6RTcjs.easingLabel; exports.easingToCss = _chunkDWJJI6RTcjs.easingToCss; exports.elasticAt = _chunkDWJJI6RTcjs.elasticAt; exports.ensureDiagramLayout = ensureDiagramLayout; exports.ensureLayout = _chunkEL4PSKFTcjs.ensureLayout; exports.estimateCanvasHeight = estimateCanvasHeight; exports.estimateDiagramCanvasHeight = estimateDiagramCanvasHeight; exports.estimateDiagramNodeSize = estimateDiagramNodeSize; exports.estimateNodeSize = _chunkEL4PSKFTcjs.estimateNodeSize; exports.estimateTextWidth = estimateTextWidth2; exports.evaluateAnimation = evaluateAnimation; exports.evaluateEasing = _chunkDWJJI6RTcjs.evaluateEasing; exports.evaluateTrack = _chunkSVR5FR7Bcjs.evaluateTrack; exports.excludePaths = _chunkGF2RBSDMcjs.excludePaths; exports.exportCssAnimation = exportCssAnimation; exports.familySceneFromLayout = familySceneFromLayout; exports.findConnectorSnap = findConnectorSnap; exports.findStrokesAtPoint = findStrokesAtPoint; exports.findVariant = findVariant; exports.fitCubicRun = _chunkNM3G4VQTcjs.fitCubicRun; exports.fitCubicWithTangents = _chunkNM3G4VQTcjs.fitCubicWithTangents; exports.fitCubics = _chunkNM3G4VQTcjs.fitCubics; exports.fitFreehandPath = _chunkNM3G4VQTcjs.fitFreehandPath; exports.fitPathData = _chunkNM3G4VQTcjs.fitPathData; exports.fitViewportToNodes = fitViewportToNodes; exports.fitViewportToRect = fitViewportToRect; exports.flattenSvgPath = _chunkNM3G4VQTcjs.flattenSvgPath; exports.flowSide = _chunkEL4PSKFTcjs.flowSide; exports.formatAgentCursorName = formatAgentCursorName; exports.formatAnimationTime = formatAnimationTime; exports.formatNumber = _chunkNM3G4VQTcjs.formatNumber; exports.formatOklab = _chunk5FXOR7F2cjs.formatOklab; exports.formatVariantName = formatVariantName; exports.freehandBrushstroke = freehandBrushstroke; exports.ganttScene = ganttScene; exports.getAbsolutePosition = _chunkEL4PSKFTcjs.getAbsolutePosition; exports.getAgentCardAnchor = getAgentCardAnchor; 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.getBrushedShapeSvg = _chunkPUC43JPTcjs.getBrushedShapeSvg; exports.getCanvasComponentDragId = getCanvasComponentDragId; exports.getCanvasTokenProperty = getCanvasTokenProperty; exports.getCenteredNodePosition = _chunkEL4PSKFTcjs.getCenteredNodePosition; exports.getChildLayout = getChildLayout; exports.getComponentData = getComponentData; exports.getComponentInstances = getComponentInstances; exports.getComponentPropertyDefs = getComponentPropertyDefs; exports.getComponentPropertyRefs = getComponentPropertyRefs; exports.getComponentSourceId = getComponentSourceId; exports.getCssPropertyAnimations = getCssPropertyAnimations; exports.getCursorTransitionDuration = getCursorTransitionDuration; exports.getDefaultVariant = getDefaultVariant; exports.getEffectiveTokenModes = getEffectiveTokenModes; exports.getFamilyScene = getFamilyScene; 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 = _chunkEL4PSKFTcjs.getLayoutedNodes; exports.getNaturalMovementTiming = getNaturalMovementTiming; exports.getNextVariantValues = getNextVariantValues; exports.getNodeAnimation = getNodeAnimation; exports.getNodeOverrides = getNodeOverrides; exports.getNodeRect = _chunkEL4PSKFTcjs.getNodeRect; exports.getNodeShape = getNodeShape; exports.getNodeSize = _chunkEL4PSKFTcjs.getNodeSize; exports.getNodeTokenBindings = getNodeTokenBindings; exports.getNodeTokenModes = getNodeTokenModes; exports.getOwningComponent = getOwningComponent; exports.getOwningInstance = getOwningInstance; exports.getResizingNodeRect = getResizingNodeRect; exports.getRootInstance = getRootInstance; exports.getShapeRenderData = _chunkNM3G4VQTcjs.getShapeRenderData; exports.getShapeSvg = _chunkNM3G4VQTcjs.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.gitGraphScene = gitGraphScene; exports.gradientToSvgDef = _chunkNM3G4VQTcjs.gradientToSvgDef; exports.handlePoint = handlePoint; exports.hasFamilyScene = hasFamilyScene; exports.hasVisibleStroke = hasVisibleStroke; exports.hashString = hashString; exports.hatchPath = _chunkYAWLMF3Ocjs.hatchPath; exports.inferResizeHandle = inferResizeHandle; exports.inspectCanvasInstance = inspectCanvasInstance; exports.inspectNodeTokens = inspectNodeTokens; exports.interiorPoint = _chunkYAWLMF3Ocjs.interiorPoint; exports.interpolateAnimationValue = _chunkSVR5FR7Bcjs.interpolateAnimationValue; exports.intersectPaths = _chunkGF2RBSDMcjs.intersectPaths; exports.intersectPolygons = _chunkGF2RBSDMcjs.intersectPolygons; exports.invertNodeUpdates = _chunkEL4PSKFTcjs.invertNodeUpdates; exports.isAgentCursor = isAgentCursor; exports.isAnimationEasing = _chunkDWJJI6RTcjs.isAnimationEasing; exports.isAnimationKeyframe = _chunkSVR5FR7Bcjs.isAnimationKeyframe; exports.isAutoLayoutFrame = isAutoLayoutFrame; exports.isBrushedShape = _chunkPUC43JPTcjs.isBrushedShape; exports.isCanvasComponent = isCanvasComponent; exports.isCanvasComponentSet = isCanvasComponentSet; exports.isCanvasGradient = _chunkNM3G4VQTcjs.isCanvasGradient; exports.isCanvasInstance = isCanvasInstance; exports.isCssExportExact = isCssExportExact; exports.isEventFromTextInput = isEventFromTextInput; exports.isInsideInstance = isInsideInstance; exports.isKeyframeSelected = isKeyframeSelected; exports.isLocked = _chunkEL4PSKFTcjs.isLocked; exports.isMeasureModifierHeld = isMeasureModifierHeld; exports.isNodeAnimated = isNodeAnimated; exports.isShapeDescription = _chunkNM3G4VQTcjs.isShapeDescription; exports.isShapeNode = isShapeNode; exports.isStraightCubic = _chunkNM3G4VQTcjs.isStraightCubic; exports.isValidCanvasEdge = isValidCanvasEdge; exports.isValidCanvasNode = isValidCanvasNode; exports.isValidCanvasScene = isValidCanvasScene; exports.isValidUrl = isValidUrl; exports.journeyScene = journeyScene; exports.layoutAll = layoutAll; exports.layoutBounds = layoutBounds; exports.layoutFrame = layoutFrame; exports.layoutUp = layoutUp; exports.layoutUpMany = layoutUpMany; exports.linearPositionTrajectory = linearPositionTrajectory; exports.linearTrajectory = linearTrajectory; exports.listCanvasBrushes = _chunkPUC43JPTcjs.listCanvasBrushes; exports.listCanvasComponents = listCanvasComponents; exports.loadCanvasBrushstrokeRenderer = _chunkPUC43JPTcjs.loadCanvasBrushstrokeRenderer; exports.lockNodes = _chunkEL4PSKFTcjs.lockNodes; exports.makeSizingCoherent = makeSizingCoherent; exports.matchArrangeShortcut = _chunk4EFNS2HVcjs.matchArrangeShortcut; exports.matchSize = _chunkEL4PSKFTcjs.matchSize; exports.measureBetween = measureBetween; exports.measureLabel = measureLabel; exports.measureSelection = measureSelection; exports.measureToLine = measureToLine; exports.mergeNodeUpdates = mergeNodeUpdates; exports.mermaidEdgeDash = mermaidEdgeDash; exports.mermaidEdgeMarker = mermaidEdgeMarker; exports.mermaidEdgeWidth = mermaidEdgeWidth; exports.mermaidFlowEdges = mermaidFlowEdges; exports.mermaidFlowNodes = mermaidFlowNodes; exports.mermaidLabelLines = mermaidLabelLines; exports.mermaidMarkerId = mermaidMarkerId; exports.mermaidMovesFromCanvas = mermaidMovesFromCanvas; exports.mermaidNodeMembers = mermaidNodeMembers; exports.mermaidNodePaint = mermaidNodePaint; exports.mermaidShapePaths = mermaidShapePaths; exports.mermaidThumbnailSvg = mermaidThumbnailSvg; exports.mermaidToCanvas = mermaidToCanvas; exports.mermaidToScene = mermaidToScene; exports.mermaidToSvg = mermaidToSvg; exports.mindmapScene = mindmapScene; exports.mixColorsOklab = _chunk5FXOR7F2cjs.mixColorsOklab; exports.moveKeyframes = moveKeyframes; exports.moveLayoutChild = moveLayoutChild; exports.multiPolygonArea = _chunkGF2RBSDMcjs.multiPolygonArea; exports.multiPolygonBounds = _chunkGF2RBSDMcjs.multiPolygonBounds; exports.nearestHandlePositions = nearestHandlePositions; exports.normalizeBezierPath = _chunkGF2RBSDMcjs.normalizeBezierPath; exports.normalizeKeyframes = _chunkSVR5FR7Bcjs.normalizeKeyframes; exports.offsetPath = _chunkGF2RBSDMcjs.offsetPath; exports.offsetShapeNodes = offsetShapeNodes; exports.oklabToRgb = _chunk5FXOR7F2cjs.oklabToRgb; exports.oppositePosition = oppositePosition; exports.outlineShapeNodeStrokes = outlineShapeNodeStrokes; exports.outlineStroke = _chunkGF2RBSDMcjs.outlineStroke; exports.overlaps = _chunkEL4PSKFTcjs.overlaps; exports.pageHidden = _chunkSVR5FR7Bcjs.pageHidden; exports.parseCanvasClipboardData = parseCanvasClipboardData; exports.parseCanvasScenes = parseCanvasScenes; exports.parseCssEasing = _chunkDWJJI6RTcjs.parseCssEasing; exports.parseCssGradient = _chunkNM3G4VQTcjs.parseCssGradient; exports.parseKeyframeClipboard = parseKeyframeClipboard; exports.parseMermaidStyles = parseMermaidStyles; exports.parseNodeStyleDeclarations = parseNodeStyleDeclarations; exports.parseOklab = _chunk5FXOR7F2cjs.parseOklab; exports.parseSvgPath = _chunkNM3G4VQTcjs.parseSvgPath; exports.parseVariantName = parseVariantName; exports.pasteKeyframes = pasteKeyframes; exports.pathBoolean = _chunkGF2RBSDMcjs.pathBoolean; exports.pathBooleanSelect = _chunkGF2RBSDMcjs.pathBooleanSelect; exports.pathDataToPolyline = _chunkPUC43JPTcjs.pathDataToPolyline; exports.pathToContours = _chunkGF2RBSDMcjs.pathToContours; exports.pathfinder = _chunkYAWLMF3Ocjs.pathfinder; exports.pieScene = pieScene; exports.placeBeside = _chunkEL4PSKFTcjs.placeBeside; exports.placeInView = _chunkEL4PSKFTcjs.placeInView; exports.planarSplit = _chunkGF2RBSDMcjs.planarSplit; exports.playCanvasSceneTransition = playCanvasSceneTransition; exports.playWebAnimations = playWebAnimations; exports.pointInBezierPath = _chunkGF2RBSDMcjs.pointInBezierPath; exports.pointInMultiPolygon = _chunkGF2RBSDMcjs.pointInMultiPolygon; exports.pointInRings = _chunkGF2RBSDMcjs.pointInRings; exports.pointerPenSample = pointerPenSample; exports.polygonArea = _chunkGF2RBSDMcjs.polygonArea; exports.polygonBoolean = _chunkGF2RBSDMcjs.polygonBoolean; exports.polygonToSvgPath = _chunkNM3G4VQTcjs.polygonToSvgPath; exports.positionToSide = positionToSide; exports.profileAlongPolyline = _chunkPUC43JPTcjs.profileAlongPolyline; exports.pruneCanvasTokenModes = pruneCanvasTokenModes; exports.pushCanvasInstanceOverrides = pushCanvasInstanceOverrides; exports.quadrantScene = quadrantScene; exports.radarChartSpec = radarChartSpec; exports.radarScene = radarScene; exports.rasterSize = rasterSize; exports.rasterizeSvg = rasterizeSvg; exports.readAnimatableValue = readAnimatableValue; exports.readNodeStyleProperty = readNodeStyleProperty; exports.readOverrideGroup = readOverrideGroup; exports.readStyleSize = _chunkEL4PSKFTcjs.readStyleSize; exports.realClock = _chunkSVR5FR7Bcjs.realClock; exports.recordAnimationChanges = recordAnimationChanges; exports.registerFamilyScene = registerFamilyScene; exports.relayoutUpdates = relayoutUpdates; exports.remapPastedNodes = remapPastedNodes; exports.removeCanvasVariant = removeCanvasVariant; exports.removeTrack = removeTrack; exports.renameCanvasVariantProperty = renameCanvasVariantProperty; exports.renameCanvasVariantValue = renameCanvasVariantValue; exports.renderCanvasBrushSwatch = _chunkPUC43JPTcjs.renderCanvasBrushSwatch; exports.renderShapeBrushstroke = _chunkPUC43JPTcjs.renderShapeBrushstroke; exports.reorderNodes = _chunkEL4PSKFTcjs.reorderNodes; exports.repositionNodesTo = repositionNodesTo; exports.resetCanvasInstanceOverrides = resetCanvasInstanceOverrides; exports.resizeHandleAxes = resizeHandleAxes; exports.resolveCanvasGradient = _chunkNM3G4VQTcjs.resolveCanvasGradient; exports.resolveCanvasTokens = resolveCanvasTokens; exports.resolveEasing = _chunkDWJJI6RTcjs.resolveEasing; exports.resolveMermaidStyles = resolveMermaidStyles; exports.resolvePadding = resolvePadding; exports.restoreCanvasMainComponent = restoreCanvasMainComponent; exports.reverseCubicBezier = _chunkDWJJI6RTcjs.reverseCubicBezier; exports.revertShapeCombination = revertShapeCombination; exports.rgbToOklab = _chunk5FXOR7F2cjs.rgbToOklab; exports.ringSignedArea = _chunkGF2RBSDMcjs.ringSignedArea; exports.runCanvasNodeEffect = runCanvasNodeEffect; exports.runMultiNodeTransition = runMultiNodeTransition; exports.sampleAnimationFrames = sampleAnimationFrames; exports.scaleKeyframes = scaleKeyframes; exports.sceneColor = sceneColor; exports.segmentBounds = _chunkGF2RBSDMcjs.segmentBounds; exports.segmentCurvature = _chunkGF2RBSDMcjs.segmentCurvature; exports.segmentDerivative = _chunkGF2RBSDMcjs.segmentDerivative; exports.segmentExtrema = _chunkGF2RBSDMcjs.segmentExtrema; exports.segmentIntersections = _chunkGF2RBSDMcjs.segmentIntersections; exports.segmentLength = _chunkGF2RBSDMcjs.segmentLength; exports.segmentNearest = _chunkGF2RBSDMcjs.segmentNearest; exports.segmentParamAtLength = _chunkGF2RBSDMcjs.segmentParamAtLength; exports.segmentPoint = _chunkGF2RBSDMcjs.segmentPoint; exports.segmentTangent = _chunkGF2RBSDMcjs.segmentTangent; exports.sequenceScene = sequenceScene; 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 = _chunkNM3G4VQTcjs.shapeToPolygon; exports.sideToPosition = sideToPosition; exports.simplifyRing = _chunkNM3G4VQTcjs.simplifyRing; exports.snapKeyframeDelta = snapKeyframeDelta; exports.snapNodeDrag = snapNodeDrag; exports.snapNodeResize = snapNodeResize; exports.snapResize = snapResize; exports.snapTimeToFrame = snapTimeToFrame; exports.snapToGrid = snapToGrid; exports.splitSegment = _chunkGF2RBSDMcjs.splitSegment; exports.springAt = _chunkDWJJI6RTcjs.springAt; exports.springSettleMs = _chunkDWJJI6RTcjs.springSettleMs; exports.streamedDiagramText = streamedDiagramText; exports.streamlinePoints = streamlinePoints; exports.strokeBoundingBox = strokeBoundingBox; exports.strokeOutlineRings = _chunkGF2RBSDMcjs.strokeOutlineRings; exports.strokePointsToPathData = strokePointsToPathData; exports.strokeToShapeNode = strokeToShapeNode; exports.subSegment = _chunkGF2RBSDMcjs.subSegment; exports.subtractPaths = _chunkGF2RBSDMcjs.subtractPaths; exports.subtractPolygons = _chunkGF2RBSDMcjs.subtractPolygons; exports.swapCanvasInstance = swapCanvasInstance; exports.syncAllCanvasInstances = syncAllCanvasInstances; exports.syncCanvasComponents = syncCanvasComponents; exports.syncCanvasInstance = syncCanvasInstance; exports.timeToX = timeToX; exports.timelineScene = timelineScene; exports.toBezierPath = _chunkGF2RBSDMcjs.toBezierPath; exports.toWebAnimations = toWebAnimations; exports.toggleLockNodes = _chunkEL4PSKFTcjs.toggleLockNodes; exports.transformBezierPath = _chunkGF2RBSDMcjs.transformBezierPath; exports.transitionCanvasView = transitionCanvasView; exports.trimSegments = _chunkGF2RBSDMcjs.trimSegments; exports.unionPolygons = _chunkGF2RBSDMcjs.unionPolygons; exports.unitePaths = _chunkGF2RBSDMcjs.unitePaths; exports.unlockNodes = _chunkEL4PSKFTcjs.unlockNodes; exports.updateKeyframe = updateKeyframe; exports.validateCanvasBrush = _chunkPUC43JPTcjs.validateCanvasBrush; exports.validateCanvasBrushPaint = _chunkPUC43JPTcjs.validateCanvasBrushPaint; exports.windingNumber = _chunkGF2RBSDMcjs.windingNumber; exports.withNodeAnimation = withNodeAnimation; exports.withStyleOpacity = withStyleOpacity; exports.withStyleSize = _chunkEL4PSKFTcjs.withStyleSize; exports.wouldCreateComponentCycle = wouldCreateComponentCycle; exports.wrapAnimationTime = _chunkSVR5FR7Bcjs.wrapAnimationTime; exports.writeNodeStyleProperty = writeNodeStyleProperty; exports.writeOverrideGroup = writeOverrideGroup; exports.xToTime = xToTime; exports.xorPolygons = _chunkGF2RBSDMcjs.xorPolygons; exports.xyChartScene = xyChartScene; exports.xyChartSpec = xyChartSpec;
12189
+ exports.ANIMATABLE_PROPERTIES = ANIMATABLE_PROPERTIES; exports.ANIMATION_DATA_KEY = ANIMATION_DATA_KEY; exports.ANIMATION_EASING_LABELS = _chunkDWJJI6RTcjs.ANIMATION_EASING_LABELS; exports.ANIMATION_EASING_PRESETS = _chunkDWJJI6RTcjs.ANIMATION_EASING_PRESETS; exports.ANIMATION_TIME_EPSILON = _chunkUUTTJK77cjs.ANIMATION_TIME_EPSILON; exports.AUTO_LAYOUT_DATA_KEY = AUTO_LAYOUT_DATA_KEY; exports.AnimationEditError = AnimationEditError; exports.AnimationPlayer = _chunkUUTTJK77cjs.AnimationPlayer; exports.BUILTIN_FAMILY_SCENES = BUILTIN_FAMILY_SCENES; exports.CANVAS_CAPTURE_CHROME_SELECTORS = CANVAS_CAPTURE_CHROME_SELECTORS; exports.CANVAS_CAPTURE_OVERLAY_SELECTORS = CANVAS_CAPTURE_OVERLAY_SELECTORS; exports.CANVAS_CAPTURE_VIEWPORT_SELECTOR = CANVAS_CAPTURE_VIEWPORT_SELECTOR; exports.CANVAS_COMPONENT_DRAG_TYPE = CANVAS_COMPONENT_DRAG_TYPE; exports.CANVAS_EFFECT_PLACES = CANVAS_EFFECT_PLACES; exports.CANVAS_GRADIENT_PRESETS = _chunkNM3G4VQTcjs.CANVAS_GRADIENT_PRESETS; exports.CANVAS_TOKEN_PROPERTIES = CANVAS_TOKEN_PROPERTIES; exports.CARD_INSPECTION_ZONES = CARD_INSPECTION_ZONES; 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.CSS_VARIABLE_DIAGRAM_SCENE_THEME = CSS_VARIABLE_DIAGRAM_SCENE_THEME; exports.CUBIC_BEZIER_PRESETS = _chunkDWJJI6RTcjs.CUBIC_BEZIER_PRESETS; exports.CanvasScenesStore = CanvasScenesStore; exports.DEFAULT_ARRANGE_SHORTCUTS = _chunk4EFNS2HVcjs.DEFAULT_ARRANGE_SHORTCUTS; exports.DEFAULT_CURSOR_INACTIVITY_MS = DEFAULT_CURSOR_INACTIVITY_MS; exports.DEFAULT_DIAGRAM_NODE_HEIGHT = DEFAULT_DIAGRAM_NODE_HEIGHT; exports.DEFAULT_DIAGRAM_NODE_WIDTH = DEFAULT_DIAGRAM_NODE_WIDTH; exports.DEFAULT_NODE_HEIGHT = _chunkEL4PSKFTcjs.DEFAULT_NODE_HEIGHT; exports.DEFAULT_NODE_WIDTH = _chunkEL4PSKFTcjs.DEFAULT_NODE_WIDTH; exports.DEFAULT_PLACEMENT_GAP = _chunkEL4PSKFTcjs.DEFAULT_PLACEMENT_GAP; exports.DIAGRAM_MARKER_IDS = DIAGRAM_MARKER_IDS; exports.DIAGRAM_RASTER_MAX_SIZE = DIAGRAM_RASTER_MAX_SIZE; exports.DIAGRAM_SCENE_DARK_THEME = DIAGRAM_SCENE_DARK_THEME; exports.DIAGRAM_SCENE_LIGHT_THEME = DIAGRAM_SCENE_LIGHT_THEME; exports.DIAGRAM_SVG_DARK_THEME = DIAGRAM_SVG_DARK_THEME; exports.DIAGRAM_SVG_LIGHT_THEME = DIAGRAM_SVG_LIGHT_THEME; exports.DIAGRAM_TITLE_TARGET = DIAGRAM_TITLE_TARGET; exports.DiagramStream = DiagramStream; exports.INSTANCE_DATA_KEY = INSTANCE_DATA_KEY; exports.LOCKED_DATA_KEY = _chunkEL4PSKFTcjs.LOCKED_DATA_KEY; exports.LOCKED_PREVIOUS_FLAGS_KEY = _chunkEL4PSKFTcjs.LOCKED_PREVIOUS_FLAGS_KEY; exports.MAX_KEYFRAME_REFS = MAX_KEYFRAME_REFS; exports.MERMAID_SHAPE_PAINT = MERMAID_SHAPE_PAINT; exports.ManualClock = _chunkUUTTJK77cjs.ManualClock; exports.PATHFINDER_OPERATIONS = _chunkYAWLMF3Ocjs.PATHFINDER_OPERATIONS; exports.PIXERATE_BRAND_GRADIENT = _chunkNM3G4VQTcjs.PIXERATE_BRAND_GRADIENT; exports.PathOpsError = _chunkGF2RBSDMcjs.PathOpsError; exports.PlanarMap = _chunkYAWLMF3Ocjs.PlanarMap; exports.RESIZE_HANDLES = RESIZE_HANDLES; exports.SHAPE_DATA_KEY = SHAPE_DATA_KEY; exports.SHAPE_KINDS = _chunkNM3G4VQTcjs.SHAPE_KINDS; exports.SHAPE_NODE_TYPE = SHAPE_NODE_TYPE; exports.SHAPE_OPERATIONS = SHAPE_OPERATIONS; exports.SPRING_PRESETS = _chunkDWJJI6RTcjs.SPRING_PRESETS; 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 = _chunkEL4PSKFTcjs.alignNodes; exports.angleToSvgLinearCoords = _chunkNM3G4VQTcjs.angleToSvgLinearCoords; exports.animateNode = animateNode; exports.applyAnimation = applyAnimation; exports.applyAnimationOverrides = applyAnimationOverrides; exports.applyConstraints = applyConstraints; exports.applyNodeUpdates = _chunkEL4PSKFTcjs.applyNodeUpdates; exports.applyShapeCombination = applyShapeCombination; exports.applyShapeReplacement = applyShapeReplacement; exports.arcToCubics = _chunkGF2RBSDMcjs.arcToCubics; exports.architectureScene = architectureScene; exports.autoLayoutDiagram = autoLayoutDiagram; exports.bezierPathArea = _chunkGF2RBSDMcjs.bezierPathArea; exports.bezierPathBounds = _chunkGF2RBSDMcjs.bezierPathBounds; exports.bezierPathLength = _chunkGF2RBSDMcjs.bezierPathLength; exports.bezierPathPointAtLength = _chunkGF2RBSDMcjs.bezierPathPointAtLength; exports.bezierPathSignedArea = _chunkGF2RBSDMcjs.bezierPathSignedArea; exports.bezierPathToSvg = _chunkGF2RBSDMcjs.bezierPathToSvg; exports.bindCanvasComponentProperty = bindCanvasComponentProperty; exports.bindCanvasToken = bindCanvasToken; exports.blendDiagramLayout = blendDiagramLayout; exports.blendLayout = blendLayout; exports.boundsOf = _chunkEL4PSKFTcjs.boundsOf; exports.brushstrokeScaleBucket = _chunkYQGCPL5Xcjs.brushstrokeScaleBucket; exports.brushstrokeSeed = _chunkPUC43JPTcjs.brushstrokeSeed; exports.c4Scene = c4Scene; exports.calculateCursorArrowRotation = calculateCursorArrowRotation; exports.calculateCurvedPath = calculateCurvedPath; exports.calculateDagreReflowDisplacement = calculateDagreReflowDisplacement; exports.calculateDirectionalDisplacement = calculateDirectionalDisplacement; exports.canCombineShapeNodes = canCombineShapeNodes; exports.canOffsetShapeNodes = canOffsetShapeNodes; exports.canOutlineShapeNodeStrokes = canOutlineShapeNodeStrokes; exports.canvasEffectsPool = canvasEffectsPool; exports.canvasHeight = canvasHeight; exports.canvasNodeCaptureRect = canvasNodeCaptureRect; exports.canvasNodeEffect = canvasNodeEffect; exports.captureCanvasView = captureCanvasView; exports.centerNodes = _chunkEL4PSKFTcjs.centerNodes; exports.centre = _chunkEL4PSKFTcjs.centre; exports.clampAnimationValue = clampAnimationValue; exports.clampLayoutSize = clampLayoutSize; exports.closeContour = _chunkGF2RBSDMcjs.closeContour; exports.collectDescendantIds = collectDescendantIds; exports.combineCanvasComponentsAsVariants = combineCanvasComponentsAsVariants; exports.combineShapeNodes = combineShapeNodes; exports.computeDragBounds = computeDragBounds; exports.computeDragBoundsFromPoints = computeDragBoundsFromPoints; exports.computeNodesBoundingBox = computeNodesBoundingBox; exports.computeSnapGuides = computeSnapGuides; exports.connectedDiagramOnly = connectedDiagramOnly; exports.connectedOnly = connectedOnly; exports.contourEnclosesArea = _chunkYAWLMF3Ocjs.contourEnclosesArea; exports.contourSignedArea = _chunkGF2RBSDMcjs.contourSignedArea; exports.contoursToPath = _chunkGF2RBSDMcjs.contoursToPath; exports.copyKeyframes = copyKeyframes; exports.countPathSegments = _chunkGF2RBSDMcjs.countPathSegments; exports.createAnimationPlayer = _chunkUUTTJK77cjs.createAnimationPlayer; exports.createBezierTrajectory = createBezierTrajectory; exports.createCanvasAnimationController = createCanvasAnimationController; exports.createCanvasArrangeController = createCanvasArrangeController; exports.createCanvasAutoLayoutController = createCanvasAutoLayoutController; exports.createCanvasCaptureSurface = createCanvasCaptureSurface; exports.createCanvasCaptureToolProvider = createCanvasCaptureToolProvider; exports.createCanvasComponent = createCanvasComponent; exports.createCanvasComponentsController = createCanvasComponentsController; exports.createCanvasDrawController = createCanvasDrawController; exports.createCanvasEffectsController = createCanvasEffectsController; exports.createCanvasEffectsToolProvider = createCanvasEffectsToolProvider; exports.createCanvasInstance = createCanvasInstance; exports.createCanvasPlaybackLocator = createCanvasPlaybackLocator; exports.createCanvasScenesStore = createCanvasScenesStore; exports.createDefaultStrokeStyle = createDefaultStrokeStyle; exports.createFanOutTrajectory = createFanOutTrajectory; exports.createGuideIndex = createGuideIndex; exports.createNodeGuideIndex = createNodeGuideIndex; exports.createNodeLookup = _chunkEL4PSKFTcjs.createNodeLookup; exports.cubicBezierAt = _chunkDWJJI6RTcjs.cubicBezierAt; exports.cubicPointAt = _chunkNM3G4VQTcjs.cubicPointAt; exports.cubicsToPathData = _chunkNM3G4VQTcjs.cubicsToPathData; exports.cutOutPiece = _chunkYAWLMF3Ocjs.cutOutPiece; exports.dashContours = _chunkGF2RBSDMcjs.dashContours; exports.defaultEasing = defaultEasing; exports.deleteKeyframes = deleteKeyframes; exports.detachCanvasInstance = detachCanvasInstance; exports.detachTokenBindings = detachTokenBindings; exports.diagramCanvasHeight = diagramCanvasHeight; exports.diagramFileName = diagramFileName; exports.diagramGroupSize = diagramGroupSize; exports.diagramImageSize = diagramImageSize; exports.diagramLayoutBounds = diagramLayoutBounds; exports.diagramMarksBounds = diagramMarksBounds; exports.diagramMarksToSvg = diagramMarksToSvg; exports.diagramRenameOp = diagramRenameOp; exports.diagramTargetLabel = diagramTargetLabel; exports.diagramTextBaseline = diagramTextBaseline; exports.diffOverrideGroups = diffOverrideGroups; exports.distanceToBezierPath = _chunkGF2RBSDMcjs.distanceToBezierPath; exports.distributeNodes = _chunkEL4PSKFTcjs.distributeNodes; exports.dividePaths = _chunkGF2RBSDMcjs.dividePaths; exports.dividePolygons = _chunkGF2RBSDMcjs.dividePolygons; exports.downloadDiagramPng = downloadDiagramPng; exports.easeDiagramTween = easeDiagramTween; exports.easingFromInfluence = _chunkDWJJI6RTcjs.easingFromInfluence; exports.easingLabel = _chunkDWJJI6RTcjs.easingLabel; exports.easingToCss = _chunkDWJJI6RTcjs.easingToCss; exports.elasticAt = _chunkDWJJI6RTcjs.elasticAt; exports.ensureDiagramLayout = ensureDiagramLayout; exports.ensureLayout = _chunkEL4PSKFTcjs.ensureLayout; exports.estimateCanvasHeight = estimateCanvasHeight; exports.estimateDiagramCanvasHeight = estimateDiagramCanvasHeight; exports.estimateDiagramNodeSize = estimateDiagramNodeSize; exports.estimateNodeSize = _chunkEL4PSKFTcjs.estimateNodeSize; exports.estimateTextWidth = estimateTextWidth2; exports.evaluateAnimation = evaluateAnimation; exports.evaluateEasing = _chunkDWJJI6RTcjs.evaluateEasing; exports.evaluateTrack = _chunkUUTTJK77cjs.evaluateTrack; exports.excludePaths = _chunkGF2RBSDMcjs.excludePaths; exports.exportCssAnimation = exportCssAnimation; exports.familySceneFromLayout = familySceneFromLayout; exports.findConnectorSnap = findConnectorSnap; exports.findStrokesAtPoint = findStrokesAtPoint; exports.findVariant = findVariant; exports.fitCubicRun = _chunkNM3G4VQTcjs.fitCubicRun; exports.fitCubicWithTangents = _chunkNM3G4VQTcjs.fitCubicWithTangents; exports.fitCubics = _chunkNM3G4VQTcjs.fitCubics; exports.fitFreehandPath = _chunkNM3G4VQTcjs.fitFreehandPath; exports.fitPathData = _chunkNM3G4VQTcjs.fitPathData; exports.fitViewportToNodes = fitViewportToNodes; exports.fitViewportToRect = fitViewportToRect; exports.flattenSvgPath = _chunkNM3G4VQTcjs.flattenSvgPath; exports.flowSide = _chunkEL4PSKFTcjs.flowSide; exports.formatAgentCursorName = formatAgentCursorName; exports.formatAnimationTime = formatAnimationTime; exports.formatNumber = _chunkNM3G4VQTcjs.formatNumber; exports.formatOklab = _chunk5FXOR7F2cjs.formatOklab; exports.formatVariantName = formatVariantName; exports.freehandBrushstroke = freehandBrushstroke; exports.ganttScene = ganttScene; exports.getAbsolutePosition = _chunkEL4PSKFTcjs.getAbsolutePosition; exports.getAgentCardAnchor = getAgentCardAnchor; 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.getBrushedShapeSvg = _chunkPUC43JPTcjs.getBrushedShapeSvg; exports.getCanvasComponentDragId = getCanvasComponentDragId; exports.getCanvasTokenProperty = getCanvasTokenProperty; exports.getCenteredNodePosition = _chunkEL4PSKFTcjs.getCenteredNodePosition; exports.getChildLayout = getChildLayout; exports.getComponentData = getComponentData; exports.getComponentInstances = getComponentInstances; exports.getComponentPropertyDefs = getComponentPropertyDefs; exports.getComponentPropertyRefs = getComponentPropertyRefs; exports.getComponentSourceId = getComponentSourceId; exports.getCssPropertyAnimations = getCssPropertyAnimations; exports.getCursorTransitionDuration = getCursorTransitionDuration; exports.getDefaultVariant = getDefaultVariant; exports.getEffectiveTokenModes = getEffectiveTokenModes; exports.getFamilyScene = getFamilyScene; 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 = _chunkEL4PSKFTcjs.getLayoutedNodes; exports.getNaturalMovementTiming = getNaturalMovementTiming; exports.getNextVariantValues = getNextVariantValues; exports.getNodeAnimation = getNodeAnimation; exports.getNodeOverrides = getNodeOverrides; exports.getNodeRect = _chunkEL4PSKFTcjs.getNodeRect; exports.getNodeShape = getNodeShape; exports.getNodeSize = _chunkEL4PSKFTcjs.getNodeSize; exports.getNodeTokenBindings = getNodeTokenBindings; exports.getNodeTokenModes = getNodeTokenModes; exports.getOwningComponent = getOwningComponent; exports.getOwningInstance = getOwningInstance; exports.getResizingNodeRect = getResizingNodeRect; exports.getRootInstance = getRootInstance; exports.getShapeRenderData = _chunkNM3G4VQTcjs.getShapeRenderData; exports.getShapeSvg = _chunkNM3G4VQTcjs.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.gitGraphScene = gitGraphScene; exports.gradientToSvgDef = _chunkNM3G4VQTcjs.gradientToSvgDef; exports.handlePoint = handlePoint; exports.hasFamilyScene = hasFamilyScene; exports.hasVisibleStroke = hasVisibleStroke; exports.hashString = hashString; exports.hatchPath = _chunkYAWLMF3Ocjs.hatchPath; exports.inferResizeHandle = inferResizeHandle; exports.inspectCanvasInstance = inspectCanvasInstance; exports.inspectNodeTokens = inspectNodeTokens; exports.interiorPoint = _chunkYAWLMF3Ocjs.interiorPoint; exports.interpolateAnimationValue = _chunkUUTTJK77cjs.interpolateAnimationValue; exports.intersectPaths = _chunkGF2RBSDMcjs.intersectPaths; exports.intersectPolygons = _chunkGF2RBSDMcjs.intersectPolygons; exports.invertNodeUpdates = _chunkEL4PSKFTcjs.invertNodeUpdates; exports.isAgentCursor = isAgentCursor; exports.isAnimationEasing = _chunkDWJJI6RTcjs.isAnimationEasing; exports.isAnimationKeyframe = _chunkUUTTJK77cjs.isAnimationKeyframe; exports.isAutoLayoutFrame = isAutoLayoutFrame; exports.isBrushedShape = _chunkPUC43JPTcjs.isBrushedShape; exports.isCanvasComponent = isCanvasComponent; exports.isCanvasComponentSet = isCanvasComponentSet; exports.isCanvasGradient = _chunkNM3G4VQTcjs.isCanvasGradient; exports.isCanvasInstance = isCanvasInstance; exports.isCssExportExact = isCssExportExact; exports.isEventFromTextInput = isEventFromTextInput; exports.isInsideInstance = isInsideInstance; exports.isKeyframeSelected = isKeyframeSelected; exports.isLocked = _chunkEL4PSKFTcjs.isLocked; exports.isMeasureModifierHeld = isMeasureModifierHeld; exports.isNodeAnimated = isNodeAnimated; exports.isShapeDescription = _chunkNM3G4VQTcjs.isShapeDescription; exports.isShapeNode = isShapeNode; exports.isStraightCubic = _chunkNM3G4VQTcjs.isStraightCubic; exports.isValidCanvasEdge = isValidCanvasEdge; exports.isValidCanvasNode = isValidCanvasNode; exports.isValidCanvasScene = isValidCanvasScene; exports.isValidUrl = isValidUrl; exports.journeyScene = journeyScene; exports.layoutAll = layoutAll; exports.layoutBounds = layoutBounds; exports.layoutFrame = layoutFrame; exports.layoutUp = layoutUp; exports.layoutUpMany = layoutUpMany; exports.linearPositionTrajectory = linearPositionTrajectory; exports.linearTrajectory = linearTrajectory; exports.listCanvasBrushes = _chunkPUC43JPTcjs.listCanvasBrushes; exports.listCanvasComponents = listCanvasComponents; exports.loadCanvasBrushstrokeRenderer = _chunkPUC43JPTcjs.loadCanvasBrushstrokeRenderer; exports.lockNodes = _chunkEL4PSKFTcjs.lockNodes; exports.makeSizingCoherent = makeSizingCoherent; exports.matchArrangeShortcut = _chunk4EFNS2HVcjs.matchArrangeShortcut; exports.matchSize = _chunkEL4PSKFTcjs.matchSize; exports.measureBetween = measureBetween; exports.measureLabel = measureLabel; exports.measureSelection = measureSelection; exports.measureToLine = measureToLine; exports.mergeNodeUpdates = mergeNodeUpdates; exports.mermaidEdgeDash = mermaidEdgeDash; exports.mermaidEdgeMarker = mermaidEdgeMarker; exports.mermaidEdgeWidth = mermaidEdgeWidth; exports.mermaidFlowEdges = mermaidFlowEdges; exports.mermaidFlowNodes = mermaidFlowNodes; exports.mermaidLabelLines = mermaidLabelLines; exports.mermaidMarkerId = mermaidMarkerId; exports.mermaidMovesFromCanvas = mermaidMovesFromCanvas; exports.mermaidNodeMembers = mermaidNodeMembers; exports.mermaidNodePaint = mermaidNodePaint; exports.mermaidShapePaths = mermaidShapePaths; exports.mermaidThumbnailSvg = mermaidThumbnailSvg; exports.mermaidToCanvas = mermaidToCanvas; exports.mermaidToScene = mermaidToScene; exports.mermaidToSvg = mermaidToSvg; exports.mindmapScene = mindmapScene; exports.mixColorsOklab = _chunk5FXOR7F2cjs.mixColorsOklab; exports.moveKeyframes = moveKeyframes; exports.moveLayoutChild = moveLayoutChild; exports.multiPolygonArea = _chunkGF2RBSDMcjs.multiPolygonArea; exports.multiPolygonBounds = _chunkGF2RBSDMcjs.multiPolygonBounds; exports.nearestHandlePositions = nearestHandlePositions; exports.normalizeBezierPath = _chunkGF2RBSDMcjs.normalizeBezierPath; exports.normalizeKeyframes = _chunkUUTTJK77cjs.normalizeKeyframes; exports.offsetPath = _chunkGF2RBSDMcjs.offsetPath; exports.offsetShapeNodes = offsetShapeNodes; exports.oklabToRgb = _chunk5FXOR7F2cjs.oklabToRgb; exports.oppositePosition = oppositePosition; exports.outlineShapeNodeStrokes = outlineShapeNodeStrokes; exports.outlineStroke = _chunkGF2RBSDMcjs.outlineStroke; exports.overlaps = _chunkEL4PSKFTcjs.overlaps; exports.pageHidden = _chunkUUTTJK77cjs.pageHidden; exports.parseCanvasClipboardData = parseCanvasClipboardData; exports.parseCanvasScenes = parseCanvasScenes; exports.parseCssEasing = _chunkDWJJI6RTcjs.parseCssEasing; exports.parseCssGradient = _chunkNM3G4VQTcjs.parseCssGradient; exports.parseKeyframeClipboard = parseKeyframeClipboard; exports.parseMermaidStyles = parseMermaidStyles; exports.parseNodeStyleDeclarations = parseNodeStyleDeclarations; exports.parseOklab = _chunk5FXOR7F2cjs.parseOklab; exports.parseSvgPath = _chunkNM3G4VQTcjs.parseSvgPath; exports.parseVariantName = parseVariantName; exports.pasteKeyframes = pasteKeyframes; exports.pathBoolean = _chunkGF2RBSDMcjs.pathBoolean; exports.pathBooleanSelect = _chunkGF2RBSDMcjs.pathBooleanSelect; exports.pathDataToPolyline = _chunkPUC43JPTcjs.pathDataToPolyline; exports.pathToContours = _chunkGF2RBSDMcjs.pathToContours; exports.pathfinder = _chunkYAWLMF3Ocjs.pathfinder; exports.pieScene = pieScene; exports.placeBeside = _chunkEL4PSKFTcjs.placeBeside; exports.placeInView = _chunkEL4PSKFTcjs.placeInView; exports.planarSplit = _chunkGF2RBSDMcjs.planarSplit; exports.playCanvasSceneTransition = playCanvasSceneTransition; exports.playWebAnimations = playWebAnimations; exports.pointInBezierPath = _chunkGF2RBSDMcjs.pointInBezierPath; exports.pointInMultiPolygon = _chunkGF2RBSDMcjs.pointInMultiPolygon; exports.pointInRings = _chunkGF2RBSDMcjs.pointInRings; exports.pointerPenSample = pointerPenSample; exports.polygonArea = _chunkGF2RBSDMcjs.polygonArea; exports.polygonBoolean = _chunkGF2RBSDMcjs.polygonBoolean; exports.polygonToSvgPath = _chunkNM3G4VQTcjs.polygonToSvgPath; exports.positionToSide = positionToSide; exports.profileAlongPolyline = _chunkPUC43JPTcjs.profileAlongPolyline; exports.pruneCanvasTokenModes = pruneCanvasTokenModes; exports.pushCanvasInstanceOverrides = pushCanvasInstanceOverrides; exports.quadrantScene = quadrantScene; exports.radarChartSpec = radarChartSpec; exports.radarScene = radarScene; exports.rasterSize = rasterSize; exports.rasterizeSvg = rasterizeSvg; exports.readAnimatableValue = readAnimatableValue; exports.readNodeStyleProperty = readNodeStyleProperty; exports.readOverrideGroup = readOverrideGroup; exports.readStyleSize = _chunkEL4PSKFTcjs.readStyleSize; exports.realClock = _chunkUUTTJK77cjs.realClock; exports.recordAnimationChanges = recordAnimationChanges; exports.registerFamilyScene = registerFamilyScene; exports.relayoutUpdates = relayoutUpdates; exports.remapPastedNodes = remapPastedNodes; exports.removeCanvasVariant = removeCanvasVariant; exports.removeTrack = removeTrack; exports.renameCanvasVariantProperty = renameCanvasVariantProperty; exports.renameCanvasVariantValue = renameCanvasVariantValue; exports.renderCanvasBrushSwatch = _chunkPUC43JPTcjs.renderCanvasBrushSwatch; exports.renderShapeBrushstroke = _chunkPUC43JPTcjs.renderShapeBrushstroke; exports.reorderNodes = _chunkEL4PSKFTcjs.reorderNodes; exports.repositionNodesTo = repositionNodesTo; exports.resetCanvasInstanceOverrides = resetCanvasInstanceOverrides; exports.resizeHandleAxes = resizeHandleAxes; exports.resolveCanvasGradient = _chunkNM3G4VQTcjs.resolveCanvasGradient; exports.resolveCanvasTokens = resolveCanvasTokens; exports.resolveEasing = _chunkDWJJI6RTcjs.resolveEasing; exports.resolveMermaidStyles = resolveMermaidStyles; exports.resolvePadding = resolvePadding; exports.restoreCanvasMainComponent = restoreCanvasMainComponent; exports.reverseCubicBezier = _chunkDWJJI6RTcjs.reverseCubicBezier; exports.revertShapeCombination = revertShapeCombination; exports.rgbToOklab = _chunk5FXOR7F2cjs.rgbToOklab; exports.ringSignedArea = _chunkGF2RBSDMcjs.ringSignedArea; exports.runCanvasNodeEffect = runCanvasNodeEffect; exports.runMultiNodeTransition = runMultiNodeTransition; exports.sampleAnimationFrames = sampleAnimationFrames; exports.scaleKeyframes = scaleKeyframes; exports.sceneColor = sceneColor; exports.segmentBounds = _chunkGF2RBSDMcjs.segmentBounds; exports.segmentCurvature = _chunkGF2RBSDMcjs.segmentCurvature; exports.segmentDerivative = _chunkGF2RBSDMcjs.segmentDerivative; exports.segmentExtrema = _chunkGF2RBSDMcjs.segmentExtrema; exports.segmentIntersections = _chunkGF2RBSDMcjs.segmentIntersections; exports.segmentLength = _chunkGF2RBSDMcjs.segmentLength; exports.segmentNearest = _chunkGF2RBSDMcjs.segmentNearest; exports.segmentParamAtLength = _chunkGF2RBSDMcjs.segmentParamAtLength; exports.segmentPoint = _chunkGF2RBSDMcjs.segmentPoint; exports.segmentTangent = _chunkGF2RBSDMcjs.segmentTangent; exports.sequenceScene = sequenceScene; 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 = _chunkNM3G4VQTcjs.shapeToPolygon; exports.sideToPosition = sideToPosition; exports.simplifyRing = _chunkNM3G4VQTcjs.simplifyRing; exports.snapKeyframeDelta = snapKeyframeDelta; exports.snapNodeDrag = snapNodeDrag; exports.snapNodeResize = snapNodeResize; exports.snapResize = snapResize; exports.snapTimeToFrame = snapTimeToFrame; exports.snapToGrid = snapToGrid; exports.splitSegment = _chunkGF2RBSDMcjs.splitSegment; exports.springAt = _chunkDWJJI6RTcjs.springAt; exports.springSettleMs = _chunkDWJJI6RTcjs.springSettleMs; exports.streamedDiagramText = streamedDiagramText; exports.streamlinePoints = streamlinePoints; exports.strokeBoundingBox = strokeBoundingBox; exports.strokeOutlineRings = _chunkGF2RBSDMcjs.strokeOutlineRings; exports.strokePointsToPathData = strokePointsToPathData; exports.strokeToShapeNode = strokeToShapeNode; exports.subSegment = _chunkGF2RBSDMcjs.subSegment; exports.subtractPaths = _chunkGF2RBSDMcjs.subtractPaths; exports.subtractPolygons = _chunkGF2RBSDMcjs.subtractPolygons; exports.swapCanvasInstance = swapCanvasInstance; exports.syncAllCanvasInstances = syncAllCanvasInstances; exports.syncCanvasComponents = syncCanvasComponents; exports.syncCanvasInstance = syncCanvasInstance; exports.timeToX = timeToX; exports.timelineScene = timelineScene; exports.toBezierPath = _chunkGF2RBSDMcjs.toBezierPath; exports.toWebAnimations = toWebAnimations; exports.toggleLockNodes = _chunkEL4PSKFTcjs.toggleLockNodes; exports.transformBezierPath = _chunkGF2RBSDMcjs.transformBezierPath; exports.transitionCanvasView = transitionCanvasView; exports.trimSegments = _chunkGF2RBSDMcjs.trimSegments; exports.unionPolygons = _chunkGF2RBSDMcjs.unionPolygons; exports.unitePaths = _chunkGF2RBSDMcjs.unitePaths; exports.unlockNodes = _chunkEL4PSKFTcjs.unlockNodes; exports.updateKeyframe = updateKeyframe; exports.validateCanvasBrush = _chunkPUC43JPTcjs.validateCanvasBrush; exports.validateCanvasBrushPaint = _chunkPUC43JPTcjs.validateCanvasBrushPaint; exports.windingNumber = _chunkGF2RBSDMcjs.windingNumber; exports.withNodeAnimation = withNodeAnimation; exports.withStyleOpacity = withStyleOpacity; exports.withStyleSize = _chunkEL4PSKFTcjs.withStyleSize; exports.wouldCreateComponentCycle = wouldCreateComponentCycle; exports.wrapAnimationTime = _chunkUUTTJK77cjs.wrapAnimationTime; exports.writeNodeStyleProperty = writeNodeStyleProperty; exports.writeOverrideGroup = writeOverrideGroup; exports.xToTime = xToTime; exports.xorPolygons = _chunkGF2RBSDMcjs.xorPolygons; exports.xyChartScene = xyChartScene; exports.xyChartSpec = xyChartSpec;
@@ -225,7 +225,7 @@ import {
225
225
  pageHidden,
226
226
  realClock,
227
227
  wrapAnimationTime
228
- } from "../chunk-I4T4J27S.js";
228
+ } from "../chunk-QX25HWFL.js";
229
229
  import {
230
230
  ANIMATION_EASING_LABELS,
231
231
  ANIMATION_EASING_PRESETS,