@pixerate/editor 0.57.0 → 0.59.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 (53) hide show
  1. package/dist/animation/index.cjs +23 -3
  2. package/dist/animation/index.cjs.map +1 -1
  3. package/dist/animation/index.d.cts +3 -2
  4. package/dist/animation/index.d.ts +3 -2
  5. package/dist/animation/index.js +23 -3
  6. package/dist/animation-editor/index.cjs +836 -158
  7. package/dist/animation-editor/index.cjs.map +1 -1
  8. package/dist/animation-editor/index.d.cts +454 -40
  9. package/dist/animation-editor/index.d.ts +454 -40
  10. package/dist/animation-editor/index.js +790 -112
  11. package/dist/animation-editor/index.js.map +1 -1
  12. package/dist/behavior-Ymbld6jL.d.cts +60 -0
  13. package/dist/behavior-Ymbld6jL.d.ts +60 -0
  14. package/dist/canvas/index.cjs +35 -29
  15. package/dist/canvas/index.cjs.map +1 -1
  16. package/dist/canvas/index.d.cts +4 -4
  17. package/dist/canvas/index.d.ts +4 -4
  18. package/dist/canvas/index.js +9 -3
  19. package/dist/canvas/index.js.map +1 -1
  20. package/dist/{chunk-O4ONBPZW.cjs → chunk-2FGRTYJN.cjs} +4 -4
  21. package/dist/{chunk-O4ONBPZW.cjs.map → chunk-2FGRTYJN.cjs.map} +1 -1
  22. package/dist/{chunk-XZ4L3R4K.cjs → chunk-2FHLHZAL.cjs} +39 -3
  23. package/dist/chunk-2FHLHZAL.cjs.map +1 -0
  24. package/dist/chunk-3NYXDBBW.js +122 -0
  25. package/dist/chunk-3NYXDBBW.js.map +1 -0
  26. package/dist/{chunk-NONDTTH7.js → chunk-3TLL5OID.js} +17 -2
  27. package/dist/{chunk-NONDTTH7.js.map → chunk-3TLL5OID.js.map} +1 -1
  28. package/dist/{chunk-UB2OY7FD.js → chunk-AGR4P4UZ.js} +38 -2
  29. package/dist/chunk-AGR4P4UZ.js.map +1 -0
  30. package/dist/{chunk-SHOVAHUB.js → chunk-JK6M6V7G.js} +2 -2
  31. package/dist/{chunk-XCXQDPID.cjs → chunk-YJLCBA7V.cjs} +25 -10
  32. package/dist/chunk-YJLCBA7V.cjs.map +1 -0
  33. package/dist/chunk-ZCNLBRT6.cjs +122 -0
  34. package/dist/chunk-ZCNLBRT6.cjs.map +1 -0
  35. package/dist/{easing-CNGk-W6d.d.ts → easing-lM0Xo9Ni.d.cts} +14 -2
  36. package/dist/{easing-CNGk-W6d.d.cts → easing-lM0Xo9Ni.d.ts} +14 -2
  37. package/dist/parameters/index.cjs +2 -2
  38. package/dist/parameters/index.d.cts +1 -1
  39. package/dist/parameters/index.d.ts +1 -1
  40. package/dist/parameters/index.js +1 -1
  41. package/dist/{player-W-5DX3Go.d.ts → player-DV4Jujdq.d.ts} +1 -1
  42. package/dist/{player-Dg0FT0UI.d.cts → player-DrcP2xqj.d.cts} +1 -1
  43. package/dist/{svg-CPK82TtU.d.ts → svg-Dh17jCyA.d.ts} +22 -1
  44. package/dist/{svg-CLg2zqZA.d.cts → svg-ymShkNtu.d.cts} +22 -1
  45. package/dist/vector/index.cjs +472 -472
  46. package/dist/vector/index.d.cts +3 -3
  47. package/dist/vector/index.d.ts +3 -3
  48. package/dist/vector/index.js +2 -2
  49. package/package.json +1 -1
  50. package/dist/chunk-UB2OY7FD.js.map +0 -1
  51. package/dist/chunk-XCXQDPID.cjs.map +0 -1
  52. package/dist/chunk-XZ4L3R4K.cjs.map +0 -1
  53. /package/dist/{chunk-SHOVAHUB.js.map → chunk-JK6M6V7G.js.map} +0 -0
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Behaviours: how a change gets from `from` to `to` other than straight along its ease (a
3
+ * pulse there and back, an oscillation, a seeded wriggle, a springy overshoot). Ported from
4
+ * `@pixerate/flair` (MIT): `SvgBehavior` and `behaviorProgress` in `vector/motion.ts`, the
5
+ * oscillate and overshoot evaluators in `scene/behavior.ts` and the noise in `time/noise.ts`.
6
+ * The numbers must stay identical to Flair's, so a behaviour exported to Flair plays the same
7
+ * frames there as here (the animation editor writes them as Flair `behavior`s, Flair ≥ 0.38).
8
+ */
9
+ /**
10
+ * A behaviour: its progress `u` at each moment, where 0 is `from`, 1 is `to`, and numbers go
11
+ * past either. `t` is the change's time, 0–1, through its ease (linear unless given).
12
+ *
13
+ * - `pulse`: there and back `count` times (default 1): u = sin²(π·count·t).
14
+ * - `oscillate`: swings round `from`, out to `to` and as far the other way, `count` times
15
+ * (default 1), dying away by (1 − t)^`decay` (default 0, no decay).
16
+ * - `wriggle`: wanders round `from` by up to about `to − from`, as seeded smooth fractal noise
17
+ * at `frequency` Hz (default 2) with `octaves` layers (default 2); each number in a value
18
+ * wanders on its own channel. It eases out of and back to rest over the first and last 15%
19
+ * of its time. The same `seed` (default 42) gives the same wander.
20
+ * - `overshoot`: goes to `to`, past it and back, settling like a spring:
21
+ * u = 1 − e^(−damping·t)·cos(cycles·π·t) (default 3 cycles, damping 4).
22
+ */
23
+ type MotionBehavior = {
24
+ type: 'pulse';
25
+ count?: number;
26
+ } | {
27
+ type: 'oscillate';
28
+ count?: number;
29
+ decay?: number;
30
+ wave?: 'sine' | 'triangle' | 'square' | 'sawtooth';
31
+ } | {
32
+ type: 'wriggle';
33
+ frequency?: number;
34
+ octaves?: number;
35
+ seed?: number;
36
+ } | {
37
+ type: 'overshoot';
38
+ cycles?: number;
39
+ damping?: number;
40
+ };
41
+ /** Every `MotionBehavior` type. */
42
+ declare const MOTION_BEHAVIORS: readonly ["pulse", "oscillate", "wriggle", "overshoot"];
43
+ /**
44
+ * A behaviour's progress at `t` (0–1, eased) of a change lasting `ms`, for the `index`-th number
45
+ * in a value (only a wriggle tells numbers apart).
46
+ */
47
+ declare function behaviorProgress(behavior: MotionBehavior, t: number, index?: number, ms?: number): number;
48
+ /** Whether `value` is a well-formed `MotionBehavior`. */
49
+ declare function isMotionBehavior(value: unknown): value is MotionBehavior;
50
+ /** A seed from an id (FNV-1a), so each element wriggles its own way: Flair's `seedOf`. */
51
+ declare function motionSeedFromId(id: string): number;
52
+ /** 6t⁵ − 15t⁴ + 10t³: zero slope and curvature at 0 and 1. */
53
+ declare function quinticFade(t: number): number;
54
+ /**
55
+ * Multi-octave smooth noise (After Effects' `wiggle`): the sum over `octaves` of
56
+ * amp·ampMult^k · noise(freq·2^k·t), each octave and `dimension` seeded apart. `t` in seconds.
57
+ */
58
+ declare function fractalWiggle(freq: number, amp: number, octaves?: number, ampMult?: number, t?: number, seed?: number, dimension?: number): number;
59
+
60
+ export { MOTION_BEHAVIORS as M, type MotionBehavior as a, behaviorProgress as b, fractalWiggle as f, isMotionBehavior as i, motionSeedFromId as m, quinticFade as q };
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Behaviours: how a change gets from `from` to `to` other than straight along its ease (a
3
+ * pulse there and back, an oscillation, a seeded wriggle, a springy overshoot). Ported from
4
+ * `@pixerate/flair` (MIT): `SvgBehavior` and `behaviorProgress` in `vector/motion.ts`, the
5
+ * oscillate and overshoot evaluators in `scene/behavior.ts` and the noise in `time/noise.ts`.
6
+ * The numbers must stay identical to Flair's, so a behaviour exported to Flair plays the same
7
+ * frames there as here (the animation editor writes them as Flair `behavior`s, Flair ≥ 0.38).
8
+ */
9
+ /**
10
+ * A behaviour: its progress `u` at each moment, where 0 is `from`, 1 is `to`, and numbers go
11
+ * past either. `t` is the change's time, 0–1, through its ease (linear unless given).
12
+ *
13
+ * - `pulse`: there and back `count` times (default 1): u = sin²(π·count·t).
14
+ * - `oscillate`: swings round `from`, out to `to` and as far the other way, `count` times
15
+ * (default 1), dying away by (1 − t)^`decay` (default 0, no decay).
16
+ * - `wriggle`: wanders round `from` by up to about `to − from`, as seeded smooth fractal noise
17
+ * at `frequency` Hz (default 2) with `octaves` layers (default 2); each number in a value
18
+ * wanders on its own channel. It eases out of and back to rest over the first and last 15%
19
+ * of its time. The same `seed` (default 42) gives the same wander.
20
+ * - `overshoot`: goes to `to`, past it and back, settling like a spring:
21
+ * u = 1 − e^(−damping·t)·cos(cycles·π·t) (default 3 cycles, damping 4).
22
+ */
23
+ type MotionBehavior = {
24
+ type: 'pulse';
25
+ count?: number;
26
+ } | {
27
+ type: 'oscillate';
28
+ count?: number;
29
+ decay?: number;
30
+ wave?: 'sine' | 'triangle' | 'square' | 'sawtooth';
31
+ } | {
32
+ type: 'wriggle';
33
+ frequency?: number;
34
+ octaves?: number;
35
+ seed?: number;
36
+ } | {
37
+ type: 'overshoot';
38
+ cycles?: number;
39
+ damping?: number;
40
+ };
41
+ /** Every `MotionBehavior` type. */
42
+ declare const MOTION_BEHAVIORS: readonly ["pulse", "oscillate", "wriggle", "overshoot"];
43
+ /**
44
+ * A behaviour's progress at `t` (0–1, eased) of a change lasting `ms`, for the `index`-th number
45
+ * in a value (only a wriggle tells numbers apart).
46
+ */
47
+ declare function behaviorProgress(behavior: MotionBehavior, t: number, index?: number, ms?: number): number;
48
+ /** Whether `value` is a well-formed `MotionBehavior`. */
49
+ declare function isMotionBehavior(value: unknown): value is MotionBehavior;
50
+ /** A seed from an id (FNV-1a), so each element wriggles its own way: Flair's `seedOf`. */
51
+ declare function motionSeedFromId(id: string): number;
52
+ /** 6t⁵ − 15t⁴ + 10t³: zero slope and curvature at 0 and 1. */
53
+ declare function quinticFade(t: number): number;
54
+ /**
55
+ * Multi-octave smooth noise (After Effects' `wiggle`): the sum over `octaves` of
56
+ * amp·ampMult^k · noise(freq·2^k·t), each octave and `dimension` seeded apart. `t` in seconds.
57
+ */
58
+ declare function fractalWiggle(freq: number, amp: number, octaves?: number, ampMult?: number, t?: number, seed?: number, dimension?: number): number;
59
+
60
+ export { MOTION_BEHAVIORS as M, type MotionBehavior as a, behaviorProgress as b, fractalWiggle as f, isMotionBehavior as i, motionSeedFromId as m, quinticFade as q };
@@ -169,7 +169,7 @@ var _chunkO2UH7LZEcjs = require('../chunk-O2UH7LZE.cjs');
169
169
 
170
170
 
171
171
 
172
- var _chunkO4ONBPZWcjs = require('../chunk-O4ONBPZW.cjs');
172
+ var _chunk2FGRTYJNcjs = require('../chunk-2FGRTYJN.cjs');
173
173
 
174
174
 
175
175
 
@@ -194,7 +194,10 @@ var _chunkA6PHCAGXcjs = require('../chunk-A6PHCAGX.cjs');
194
194
 
195
195
 
196
196
 
197
- var _chunkXZ4L3R4Kcjs = require('../chunk-XZ4L3R4K.cjs');
197
+
198
+
199
+
200
+ var _chunk2FHLHZALcjs = require('../chunk-2FHLHZAL.cjs');
198
201
 
199
202
  // src/canvas/trajectory.ts
200
203
  var defaultEasing = (t) => --t * t * t + 1;
@@ -276,7 +279,7 @@ function runMultiNodeTransition(transitions, options = {}) {
276
279
  const {
277
280
  defaultDuration = 400,
278
281
  defaultEasing: easingFunc = defaultEasing,
279
- clock = _chunkO4ONBPZWcjs.realClock,
282
+ clock = _chunk2FGRTYJNcjs.realClock,
280
283
  styleFormat = "string",
281
284
  onUpdate,
282
285
  onComplete
@@ -712,7 +715,7 @@ var StreamingLayoutManager = (_class = class {
712
715
  this.throttleMs = _nullishCoalesce(options.throttleMs, () => ( 200));
713
716
  this.glideDurationMs = _nullishCoalesce(options.glideDurationMs, () => ( 300));
714
717
  this.connectedOnly = _nullishCoalesce(options.connectedOnly, () => ( false));
715
- this.clock = _nullishCoalesce(options.clock, () => ( _chunkO4ONBPZWcjs.realClock));
718
+ this.clock = _nullishCoalesce(options.clock, () => ( _chunk2FGRTYJNcjs.realClock));
716
719
  this.layoutOptions = _nullishCoalesce(options.layoutOptions, () => ( { direction: "LR" }));
717
720
  this.onLayoutUpdated = options.onLayoutUpdated;
718
721
  }
@@ -4660,7 +4663,7 @@ function getNodeAnimation(node) {
4660
4663
  }
4661
4664
  function getAnimationTrack(node, property) {
4662
4665
  const track = _optionalChain([getNodeAnimation, 'call', _184 => _184(node), 'optionalAccess', _185 => _185.tracks, 'access', _186 => _186[property]]);
4663
- return track && Array.isArray(track.keyframes) && _chunkO4ONBPZWcjs.normalizeKeyframes.call(void 0, track.keyframes).length > 0 ? track : void 0;
4666
+ return track && Array.isArray(track.keyframes) && _chunk2FGRTYJNcjs.normalizeKeyframes.call(void 0, track.keyframes).length > 0 ? track : void 0;
4664
4667
  }
4665
4668
  function isNodeAnimated(node) {
4666
4669
  const animation = getNodeAnimation(node);
@@ -4697,7 +4700,7 @@ function getAnimationDuration(doc) {
4697
4700
  if (!animation) continue;
4698
4701
  for (const track of Object.values(animation.tracks)) {
4699
4702
  if (!track || track.enabled === false) continue;
4700
- const keys = _chunkO4ONBPZWcjs.normalizeKeyframes.call(void 0, track.keyframes);
4703
+ const keys = _chunk2FGRTYJNcjs.normalizeKeyframes.call(void 0, track.keyframes);
4701
4704
  if (keys.length > 0) end = Math.max(end, keys[keys.length - 1].time);
4702
4705
  }
4703
4706
  }
@@ -4714,7 +4717,7 @@ function evaluateAnimation(doc, time, options = {}) {
4714
4717
  for (const [key, track] of Object.entries(animation.tracks)) {
4715
4718
  if (!track || track.enabled === false) continue;
4716
4719
  const property = (_nullishCoalesce(options.properties, () => ( ANIMATABLE_PROPERTIES))).find((p) => p.key === key);
4717
- const value = _chunkO4ONBPZWcjs.evaluateTrack.call(void 0, track, time, _nullishCoalesce(_optionalChain([property, 'optionalAccess', _188 => _188.type]), () => ( "number")));
4720
+ const value = _chunk2FGRTYJNcjs.evaluateTrack.call(void 0, track, time, _nullishCoalesce(_optionalChain([property, 'optionalAccess', _188 => _188.type]), () => ( "number")));
4718
4721
  if (value === void 0) continue;
4719
4722
  (values ??= {})[key] = clampAnimationValue(property, value);
4720
4723
  }
@@ -4752,7 +4755,7 @@ var AnimationEditError = class extends Error {
4752
4755
  }
4753
4756
  };
4754
4757
  var MAX_KEYFRAME_REFS = 4096;
4755
- var sameTime = (a, b) => Math.abs(a - b) <= _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON;
4758
+ var sameTime = (a, b) => Math.abs(a - b) <= _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON;
4756
4759
  var refKey = (r) => `${r.nodeId}\0${r.property}`;
4757
4760
  function snapTimeToFrame(time, fps) {
4758
4761
  if (!(fps > 0)) return time;
@@ -4772,9 +4775,9 @@ function coerceValue(property, value) {
4772
4775
  }
4773
4776
  function coerceEasing(easing) {
4774
4777
  if (typeof easing === "string") {
4775
- const parsed = _chunkXZ4L3R4Kcjs.parseCssEasing.call(void 0, easing);
4778
+ const parsed = _chunk2FHLHZALcjs.parseCssEasing.call(void 0, easing);
4776
4779
  if (parsed) return parsed;
4777
- } else if (_chunkXZ4L3R4Kcjs.isAnimationEasing.call(void 0, easing)) return easing;
4780
+ } else if (_chunk2FHLHZALcjs.isAnimationEasing.call(void 0, easing)) return easing;
4778
4781
  throw new AnimationEditError("invalid_easing", `Unknown easing ${JSON.stringify(easing)}.`);
4779
4782
  }
4780
4783
  function coerceTime(time) {
@@ -4806,7 +4809,7 @@ var Draft = (_class4 = class {
4806
4809
  const current = getNodeAnimation(this.node(id));
4807
4810
  const tracks = {};
4808
4811
  for (const [key, track] of Object.entries(_nullishCoalesce(_optionalChain([current, 'optionalAccess', _190 => _190.tracks]), () => ( {})))) {
4809
- if (track) tracks[key] = { ...track, keyframes: _chunkO4ONBPZWcjs.normalizeKeyframes.call(void 0, track.keyframes) };
4812
+ if (track) tracks[key] = { ...track, keyframes: _chunk2FGRTYJNcjs.normalizeKeyframes.call(void 0, track.keyframes) };
4810
4813
  }
4811
4814
  animation = { ..._nullishCoalesce(current, () => ( {})), tracks };
4812
4815
  this.animations.set(id, animation);
@@ -4876,7 +4879,7 @@ function readAnimatableValue(node, property) {
4876
4879
  function getAnimatedValue(node, propertyKey, time, options = {}) {
4877
4880
  const property = getAnimatableProperty(propertyKey, options);
4878
4881
  const track = getAnimationTrack(node, propertyKey);
4879
- if (track && track.enabled !== false) return _chunkO4ONBPZWcjs.evaluateTrack.call(void 0, track, time, _nullishCoalesce(_optionalChain([property, 'optionalAccess', _196 => _196.type]), () => ( "number")));
4882
+ if (track && track.enabled !== false) return _chunk2FGRTYJNcjs.evaluateTrack.call(void 0, track, time, _nullishCoalesce(_optionalChain([property, 'optionalAccess', _196 => _196.type]), () => ( "number")));
4880
4883
  return property ? readAnimatableValue(node, property) : void 0;
4881
4884
  }
4882
4885
  function putKey(draft, nodeId, property, time, value, easing, inherit = true) {
@@ -4978,7 +4981,7 @@ function removeTrack(nodes, nodeId, property, options = {}) {
4978
4981
  if (!track) return nodes;
4979
4982
  const p = draft.property(property);
4980
4983
  if (options.keepValueAt !== void 0 && p && property !== "motionPath") {
4981
- const value = _chunkO4ONBPZWcjs.evaluateTrack.call(void 0, track, options.keepValueAt, p.type);
4984
+ const value = _chunk2FGRTYJNcjs.evaluateTrack.call(void 0, track, options.keepValueAt, p.type);
4982
4985
  if (value !== void 0) draft.writeNode(nodeId, (n3) => p.write(n3, value));
4983
4986
  }
4984
4987
  draft.setKeys(nodeId, property, []);
@@ -5007,10 +5010,10 @@ function moveKeyframes(nodes, refs, delta, options = {}) {
5007
5010
  low = Math.max(low, min - time);
5008
5011
  high = Math.min(high, max - time);
5009
5012
  }
5010
- if (low > high + _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON) throw new AnimationEditError("no_movement_range", "The keyframes have no common movement range.");
5013
+ if (low > high + _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON) throw new AnimationEditError("no_movement_range", "The keyframes have no common movement range.");
5011
5014
  const applied = Math.min(high, Math.max(low, delta));
5012
5015
  const moved = refs.map((ref) => ({ ...ref, time: draft.keys(ref.nodeId, ref.property)[draft.find(ref)].time + applied }));
5013
- if (Math.abs(applied) <= _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON) return { nodes, delta: 0, refs: refs.map((r) => ({ ...r })) };
5016
+ if (Math.abs(applied) <= _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON) return { nodes, delta: 0, refs: refs.map((r) => ({ ...r })) };
5014
5017
  retime(draft, refs, (time) => time + applied);
5015
5018
  return { nodes: draft.commit(), delta: applied, refs: moved };
5016
5019
  }
@@ -5056,7 +5059,7 @@ function getKeyframeTimes(nodes, options = {}) {
5056
5059
  if (!animation) continue;
5057
5060
  for (const [property, track] of Object.entries(animation.tracks)) {
5058
5061
  const skip = _nullishCoalesce(excluded.get(refKey({ nodeId: node.id, property })), () => ( []));
5059
- for (const k of _chunkO4ONBPZWcjs.normalizeKeyframes.call(void 0, _optionalChain([track, 'optionalAccess', _198 => _198.keyframes]))) if (!skip.some((t) => sameTime(t, k.time))) times.push(k.time);
5062
+ for (const k of _chunk2FGRTYJNcjs.normalizeKeyframes.call(void 0, _optionalChain([track, 'optionalAccess', _198 => _198.keyframes]))) if (!skip.some((t) => sameTime(t, k.time))) times.push(k.time);
5060
5063
  }
5061
5064
  }
5062
5065
  times.sort((a, b) => a - b);
@@ -5114,7 +5117,7 @@ function parseKeyframeClipboard(input) {
5114
5117
  const clip = value;
5115
5118
  if (clip.type !== "pixerate/keyframes" || clip.version !== 1 || !Array.isArray(clip.keyframes)) return null;
5116
5119
  const keyframes = clip.keyframes.filter(
5117
- (k) => k && typeof k.nodeId === "string" && typeof k.property === "string" && typeof k.offset === "number" && Number.isFinite(k.offset) && (typeof k.value === "number" && Number.isFinite(k.value) || typeof k.value === "string") && (k.easing === void 0 || _chunkXZ4L3R4Kcjs.isAnimationEasing.call(void 0, k.easing))
5120
+ (k) => k && typeof k.nodeId === "string" && typeof k.property === "string" && typeof k.offset === "number" && Number.isFinite(k.offset) && (typeof k.value === "number" && Number.isFinite(k.value) || typeof k.value === "string") && (k.easing === void 0 || _chunk2FHLHZALcjs.isAnimationEasing.call(void 0, k.easing))
5118
5121
  );
5119
5122
  return keyframes.length > 0 ? { type: "pixerate/keyframes", version: 1, keyframes } : null;
5120
5123
  }
@@ -5175,7 +5178,7 @@ function recordAnimationChanges(base, before, after, time, options = {}) {
5175
5178
  };
5176
5179
  if (animated) {
5177
5180
  if (changed) {
5178
- const keys = _chunkO4ONBPZWcjs.normalizeKeyframes.call(void 0, track.keyframes).filter((k) => !sameTime(k.time, t));
5181
+ const keys = _chunk2FGRTYJNcjs.normalizeKeyframes.call(void 0, track.keyframes).filter((k) => !sameTime(k.time, t));
5179
5182
  const before2 = [...keys].reverse().find((k) => k.time < t);
5180
5183
  keys.push({ time: t, value: now, ..._optionalChain([before2, 'optionalAccess', _200 => _200.easing]) !== void 0 ? { easing: before2.easing } : {} });
5181
5184
  tracksOf()[p.key] = { ...track, keyframes: keys.sort((a, b) => a.time - b.time) };
@@ -5184,7 +5187,7 @@ function recordAnimationChanges(base, before, after, time, options = {}) {
5184
5187
  restore();
5185
5188
  } else if (changed && options.recording && !track) {
5186
5189
  const keys = [];
5187
- if (t > _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON && was !== void 0) keys.push({ time: 0, value: was });
5190
+ if (t > _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON && was !== void 0) keys.push({ time: 0, value: was });
5188
5191
  keys.push({ time: t, value: now });
5189
5192
  tracksOf()[p.key] = { keyframes: keys };
5190
5193
  keyed.push({ nodeId: next.id, property: p.key, time: t });
@@ -5287,7 +5290,7 @@ function exactStops(keys, duration, format) {
5287
5290
  stops.push({
5288
5291
  offset: Math.min(1, Math.max(0, k.time / duration)),
5289
5292
  value: format(k, i),
5290
- ...next ? { easing: _chunkXZ4L3R4Kcjs.easingToCss.call(void 0, k.easing, next.time - k.time) } : {}
5293
+ ...next ? { easing: _chunk2FHLHZALcjs.easingToCss.call(void 0, k.easing, next.time - k.time) } : {}
5291
5294
  });
5292
5295
  });
5293
5296
  const last = keys[keys.length - 1];
@@ -5311,7 +5314,7 @@ function getCssPropertyAnimations(nodes, nodeId, options = {}) {
5311
5314
  const tracks = /* @__PURE__ */ new Map();
5312
5315
  for (const [key, track] of Object.entries(animation.tracks)) {
5313
5316
  if (!track || track.enabled === false || !map[key]) continue;
5314
- const keys = _chunkO4ONBPZWcjs.normalizeKeyframes.call(void 0, track.keyframes);
5317
+ const keys = _chunk2FGRTYJNcjs.normalizeKeyframes.call(void 0, track.keyframes);
5315
5318
  if (keys.length > 0) tracks.set(key, keys);
5316
5319
  }
5317
5320
  const typeOf = (key) => _nullishCoalesce(_optionalChain([ANIMATABLE_PROPERTIES, 'access', _205 => _205.find, 'call', _206 => _206((p) => p.key === key), 'optionalAccess', _207 => _207.type]), () => ( "number"));
@@ -5324,7 +5327,7 @@ function getCssPropertyAnimations(nodes, nodeId, options = {}) {
5324
5327
  for (const [css, sources] of groups) {
5325
5328
  const camel2 = map[sources[0]].camel;
5326
5329
  const keysOf = (k) => tracks.get(k);
5327
- const evalAt = (k, t) => _chunkO4ONBPZWcjs.evaluateTrack.call(void 0, keysOf(k), t, typeOf(k));
5330
+ const evalAt = (k, t) => _chunk2FGRTYJNcjs.evaluateTrack.call(void 0, keysOf(k), t, typeOf(k));
5328
5331
  const allTimes = sources.flatMap((k) => keysOf(k).map((x) => x.time));
5329
5332
  if (sources.includes("motionPath")) {
5330
5333
  const position = (t) => {
@@ -5420,7 +5423,7 @@ function isCssExportExact(nodes, nodeId) {
5420
5423
 
5421
5424
  // src/canvas/animation/timeline.ts
5422
5425
  function isKeyframeSelected(selection, ref) {
5423
- return selection.some((s) => s.nodeId === ref.nodeId && s.property === ref.property && Math.abs(s.time - ref.time) <= _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON);
5426
+ return selection.some((s) => s.nodeId === ref.nodeId && s.property === ref.property && Math.abs(s.time - ref.time) <= _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON);
5424
5427
  }
5425
5428
  var defaultLabel = (node) => typeof _optionalChain([node, 'access', _208 => _208.data, 'optionalAccess', _209 => _209.label]) === "string" && node.data.label.trim() ? node.data.label : node.id;
5426
5429
  function getTimelineRows(nodes, ids, options = {}) {
@@ -5441,7 +5444,7 @@ function getTimelineRows(nodes, ids, options = {}) {
5441
5444
  property,
5442
5445
  label,
5443
5446
  enabled: track.enabled !== false,
5444
- keyframes: _chunkO4ONBPZWcjs.normalizeKeyframes.call(void 0, track.keyframes).map((k) => {
5447
+ keyframes: _chunk2FGRTYJNcjs.normalizeKeyframes.call(void 0, track.keyframes).map((k) => {
5445
5448
  const ref = { nodeId: id, property, time: k.time };
5446
5449
  const selected = isKeyframeSelected(selection, ref);
5447
5450
  return {
@@ -5501,7 +5504,7 @@ function createCanvasAnimationController(options) {
5501
5504
  }
5502
5505
  return _nullishCoalesce(fixedDuration, () => ( durationValue));
5503
5506
  };
5504
- const player = new (0, _chunkO4ONBPZWcjs.AnimationPlayer)({
5507
+ const player = new (0, _chunk2FGRTYJNcjs.AnimationPlayer)({
5505
5508
  clock: options.clock,
5506
5509
  duration,
5507
5510
  loop: options.loop,
@@ -5580,7 +5583,7 @@ function createCanvasAnimationController(options) {
5580
5583
  const byId = new Map(options.getNodes().map((n3) => [n3.id, n3]));
5581
5584
  const kept = selection.filter((ref) => {
5582
5585
  const track = _optionalChain([getNodeAnimation, 'call', _222 => _222(byId.get(ref.nodeId)), 'optionalAccess', _223 => _223.tracks, 'access', _224 => _224[ref.property]]);
5583
- return !!track && _chunkO4ONBPZWcjs.normalizeKeyframes.call(void 0, track.keyframes).some((k) => Math.abs(k.time - ref.time) <= _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON);
5586
+ return !!track && _chunk2FGRTYJNcjs.normalizeKeyframes.call(void 0, track.keyframes).some((k) => Math.abs(k.time - ref.time) <= _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON);
5584
5587
  });
5585
5588
  if (kept.length !== selection.length) selection = kept;
5586
5589
  }
@@ -5652,7 +5655,7 @@ function createCanvasAnimationController(options) {
5652
5655
  nextKeyframe(ids = selectedIds()) {
5653
5656
  const list = [...ids];
5654
5657
  const times = getKeyframeTimes(options.getNodes(), list.length ? { ids: list } : {});
5655
- const next = times.find((t) => t > player.currentTime + _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON);
5658
+ const next = times.find((t) => t > player.currentTime + _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON);
5656
5659
  if (next === void 0) return null;
5657
5660
  player.seek(next);
5658
5661
  return next;
@@ -5660,7 +5663,7 @@ function createCanvasAnimationController(options) {
5660
5663
  previousKeyframe(ids = selectedIds()) {
5661
5664
  const list = [...ids];
5662
5665
  const times = getKeyframeTimes(options.getNodes(), list.length ? { ids: list } : {});
5663
- const prev = [...times].reverse().find((t) => t < player.currentTime - _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON);
5666
+ const prev = [...times].reverse().find((t) => t < player.currentTime - _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON);
5664
5667
  if (prev === void 0) return null;
5665
5668
  player.seek(prev);
5666
5669
  return prev;
@@ -11814,5 +11817,8 @@ function isAgentCursor(cursor) {
11814
11817
 
11815
11818
 
11816
11819
 
11817
- 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 = _chunkO4ONBPZWcjs.ANIMATION_TIME_EPSILON; exports.AUTO_LAYOUT_DATA_KEY = AUTO_LAYOUT_DATA_KEY; exports.AnimationEditError = AnimationEditError; exports.AnimationPlayer = _chunkO4ONBPZWcjs.AnimationPlayer; exports.BUILTIN_FAMILY_SCENES = BUILTIN_FAMILY_SCENES; exports.CANVAS_COMPONENT_DRAG_TYPE = CANVAS_COMPONENT_DRAG_TYPE; exports.CANVAS_GRADIENT_PRESETS = _chunkO2UH7LZEcjs.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 = _chunkXZ4L3R4Kcjs.CUBIC_BEZIER_PRESETS; exports.CanvasScenesStore = CanvasScenesStore; exports.DEFAULT_ARRANGE_SHORTCUTS = _chunk26BVFKHUcjs.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 = _chunkWADCJ7A7cjs.DEFAULT_NODE_HEIGHT; exports.DEFAULT_NODE_WIDTH = _chunkWADCJ7A7cjs.DEFAULT_NODE_WIDTH; exports.DEFAULT_PLACEMENT_GAP = _chunkWADCJ7A7cjs.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 = LOCKED_DATA_KEY; exports.LOCKED_PREVIOUS_FLAGS_KEY = LOCKED_PREVIOUS_FLAGS_KEY; exports.MAX_KEYFRAME_REFS = MAX_KEYFRAME_REFS; exports.MERMAID_SHAPE_PAINT = MERMAID_SHAPE_PAINT; exports.ManualClock = _chunkO4ONBPZWcjs.ManualClock; exports.PATHFINDER_OPERATIONS = _chunkMLREO6J3cjs.PATHFINDER_OPERATIONS; exports.PIXERATE_BRAND_GRADIENT = _chunkO2UH7LZEcjs.PIXERATE_BRAND_GRADIENT; exports.PathOpsError = _chunkO2UH7LZEcjs.PathOpsError; exports.PlanarMap = _chunkMLREO6J3cjs.PlanarMap; exports.RESIZE_HANDLES = RESIZE_HANDLES; exports.SHAPE_DATA_KEY = SHAPE_DATA_KEY; exports.SHAPE_KINDS = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.angleToSvgLinearCoords; exports.animateNode = animateNode; exports.applyAnimation = applyAnimation; exports.applyAnimationOverrides = applyAnimationOverrides; exports.applyConstraints = applyConstraints; exports.applyNodeUpdates = applyNodeUpdates; exports.applyShapeCombination = applyShapeCombination; exports.applyShapeReplacement = applyShapeReplacement; exports.arcToCubics = _chunkO2UH7LZEcjs.arcToCubics; exports.architectureScene = architectureScene; exports.autoLayoutDiagram = autoLayoutDiagram; exports.bezierPathArea = _chunkO2UH7LZEcjs.bezierPathArea; exports.bezierPathBounds = _chunkO2UH7LZEcjs.bezierPathBounds; exports.bezierPathLength = _chunkO2UH7LZEcjs.bezierPathLength; exports.bezierPathPointAtLength = _chunkO2UH7LZEcjs.bezierPathPointAtLength; exports.bezierPathSignedArea = _chunkO2UH7LZEcjs.bezierPathSignedArea; exports.bezierPathToSvg = _chunkO2UH7LZEcjs.bezierPathToSvg; exports.bindCanvasComponentProperty = bindCanvasComponentProperty; exports.bindCanvasToken = bindCanvasToken; exports.blendDiagramLayout = blendDiagramLayout; exports.blendLayout = blendLayout; exports.boundsOf = _chunkWADCJ7A7cjs.boundsOf; 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.canvasHeight = canvasHeight; exports.centerNodes = _chunkWADCJ7A7cjs.centerNodes; exports.centre = _chunkWADCJ7A7cjs.centre; exports.clampAnimationValue = clampAnimationValue; exports.clampLayoutSize = clampLayoutSize; exports.closeContour = _chunkO2UH7LZEcjs.closeContour; exports.collectDescendantIds = collectDescendantIds; exports.combineCanvasComponentsAsVariants = combineCanvasComponentsAsVariants; exports.combineShapeNodes = combineShapeNodes; exports.computeNodesBoundingBox = computeNodesBoundingBox; exports.computeSnapGuides = computeSnapGuides; exports.connectedDiagramOnly = connectedDiagramOnly; exports.connectedOnly = connectedOnly; exports.contourEnclosesArea = _chunkMLREO6J3cjs.contourEnclosesArea; exports.contourSignedArea = _chunkO2UH7LZEcjs.contourSignedArea; exports.contoursToPath = _chunkO2UH7LZEcjs.contoursToPath; exports.copyKeyframes = copyKeyframes; exports.countPathSegments = _chunkO2UH7LZEcjs.countPathSegments; exports.createAnimationPlayer = _chunkO4ONBPZWcjs.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 = _chunkO2UH7LZEcjs.cubicPointAt; exports.cubicsToPathData = _chunkO2UH7LZEcjs.cubicsToPathData; exports.cutOutPiece = _chunkMLREO6J3cjs.cutOutPiece; exports.dashContours = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.distanceToBezierPath; exports.distributeNodes = distributeNodes; exports.dividePaths = _chunkO2UH7LZEcjs.dividePaths; exports.dividePolygons = _chunkO2UH7LZEcjs.dividePolygons; exports.downloadDiagramPng = downloadDiagramPng; exports.easeDiagramTween = easeDiagramTween; exports.easingFromInfluence = _chunkXZ4L3R4Kcjs.easingFromInfluence; exports.easingLabel = _chunkXZ4L3R4Kcjs.easingLabel; exports.easingToCss = _chunkXZ4L3R4Kcjs.easingToCss; exports.elasticAt = _chunkXZ4L3R4Kcjs.elasticAt; exports.ensureDiagramLayout = ensureDiagramLayout; exports.ensureLayout = _chunkWADCJ7A7cjs.ensureLayout; exports.estimateCanvasHeight = estimateCanvasHeight; exports.estimateDiagramCanvasHeight = estimateDiagramCanvasHeight; exports.estimateDiagramNodeSize = estimateDiagramNodeSize; exports.estimateNodeSize = _chunkWADCJ7A7cjs.estimateNodeSize; exports.estimateTextWidth = estimateTextWidth2; exports.evaluateAnimation = evaluateAnimation; exports.evaluateEasing = _chunkXZ4L3R4Kcjs.evaluateEasing; exports.evaluateTrack = _chunkO4ONBPZWcjs.evaluateTrack; exports.excludePaths = _chunkO2UH7LZEcjs.excludePaths; exports.exportCssAnimation = exportCssAnimation; exports.familySceneFromLayout = familySceneFromLayout; exports.findConnectorSnap = findConnectorSnap; exports.findStrokesAtPoint = findStrokesAtPoint; exports.findVariant = findVariant; exports.fitCubicRun = _chunkO2UH7LZEcjs.fitCubicRun; exports.fitCubicWithTangents = _chunkO2UH7LZEcjs.fitCubicWithTangents; exports.fitCubics = _chunkO2UH7LZEcjs.fitCubics; exports.fitFreehandPath = _chunkO2UH7LZEcjs.fitFreehandPath; exports.fitPathData = _chunkO2UH7LZEcjs.fitPathData; exports.fitViewportToNodes = fitViewportToNodes; exports.fitViewportToRect = fitViewportToRect; exports.flattenSvgPath = _chunkO2UH7LZEcjs.flattenSvgPath; exports.flowSide = _chunkWADCJ7A7cjs.flowSide; exports.formatAgentCursorName = formatAgentCursorName; exports.formatAnimationTime = formatAnimationTime; exports.formatNumber = _chunkO2UH7LZEcjs.formatNumber; exports.formatOklab = _chunkMR3Z4OQIcjs.formatOklab; exports.formatVariantName = formatVariantName; exports.ganttScene = ganttScene; exports.getAbsolutePosition = 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.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.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 = _chunkWADCJ7A7cjs.getLayoutedNodes; exports.getNaturalMovementTiming = getNaturalMovementTiming; 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 = _chunkO2UH7LZEcjs.getShapeRenderData; exports.getShapeSvg = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.gradientToSvgDef; exports.handlePoint = handlePoint; exports.hasFamilyScene = hasFamilyScene; exports.hasVisibleStroke = hasVisibleStroke; exports.hashString = hashString; exports.hatchPath = _chunkMLREO6J3cjs.hatchPath; exports.inferResizeHandle = inferResizeHandle; exports.inspectCanvasInstance = inspectCanvasInstance; exports.inspectNodeTokens = inspectNodeTokens; exports.interiorPoint = _chunkMLREO6J3cjs.interiorPoint; exports.interpolateAnimationValue = _chunkO4ONBPZWcjs.interpolateAnimationValue; exports.intersectPaths = _chunkO2UH7LZEcjs.intersectPaths; exports.intersectPolygons = _chunkO2UH7LZEcjs.intersectPolygons; exports.invertNodeUpdates = invertNodeUpdates; exports.isAgentCursor = isAgentCursor; exports.isAnimationEasing = _chunkXZ4L3R4Kcjs.isAnimationEasing; exports.isAnimationKeyframe = _chunkO4ONBPZWcjs.isAnimationKeyframe; exports.isAutoLayoutFrame = isAutoLayoutFrame; exports.isCanvasComponent = isCanvasComponent; exports.isCanvasComponentSet = isCanvasComponentSet; exports.isCanvasGradient = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.isShapeDescription; exports.isShapeNode = isShapeNode; exports.isStraightCubic = _chunkO2UH7LZEcjs.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.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.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 = _chunkMR3Z4OQIcjs.mixColorsOklab; exports.moveKeyframes = moveKeyframes; exports.moveLayoutChild = moveLayoutChild; exports.multiPolygonArea = _chunkO2UH7LZEcjs.multiPolygonArea; exports.multiPolygonBounds = _chunkO2UH7LZEcjs.multiPolygonBounds; exports.nearestHandlePositions = nearestHandlePositions; exports.normalizeBezierPath = _chunkO2UH7LZEcjs.normalizeBezierPath; exports.normalizeKeyframes = _chunkO4ONBPZWcjs.normalizeKeyframes; exports.offsetPath = _chunkO2UH7LZEcjs.offsetPath; exports.offsetShapeNodes = offsetShapeNodes; exports.oklabToRgb = _chunkMR3Z4OQIcjs.oklabToRgb; exports.oppositePosition = oppositePosition; exports.outlineShapeNodeStrokes = outlineShapeNodeStrokes; exports.outlineStroke = _chunkO2UH7LZEcjs.outlineStroke; exports.overlaps = _chunkWADCJ7A7cjs.overlaps; exports.pageHidden = _chunkO4ONBPZWcjs.pageHidden; exports.parseCanvasClipboardData = parseCanvasClipboardData; exports.parseCanvasScenes = parseCanvasScenes; exports.parseCssEasing = _chunkXZ4L3R4Kcjs.parseCssEasing; exports.parseCssGradient = _chunkO2UH7LZEcjs.parseCssGradient; exports.parseKeyframeClipboard = parseKeyframeClipboard; exports.parseMermaidStyles = parseMermaidStyles; exports.parseNodeStyleDeclarations = parseNodeStyleDeclarations; exports.parseOklab = _chunkMR3Z4OQIcjs.parseOklab; exports.parseSvgPath = _chunkO2UH7LZEcjs.parseSvgPath; exports.parseVariantName = parseVariantName; exports.pasteKeyframes = pasteKeyframes; exports.pathBoolean = _chunkO2UH7LZEcjs.pathBoolean; exports.pathBooleanSelect = _chunkO2UH7LZEcjs.pathBooleanSelect; exports.pathToContours = _chunkO2UH7LZEcjs.pathToContours; exports.pathfinder = _chunkMLREO6J3cjs.pathfinder; exports.pieScene = pieScene; exports.placeBeside = _chunkWADCJ7A7cjs.placeBeside; exports.planarSplit = _chunkO2UH7LZEcjs.planarSplit; exports.playWebAnimations = playWebAnimations; exports.pointInBezierPath = _chunkO2UH7LZEcjs.pointInBezierPath; exports.pointInMultiPolygon = _chunkO2UH7LZEcjs.pointInMultiPolygon; exports.pointInRings = _chunkO2UH7LZEcjs.pointInRings; exports.polygonArea = _chunkO2UH7LZEcjs.polygonArea; exports.polygonBoolean = _chunkO2UH7LZEcjs.polygonBoolean; exports.polygonToSvgPath = _chunkO2UH7LZEcjs.polygonToSvgPath; exports.positionToSide = positionToSide; 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 = readStyleSize; exports.realClock = _chunkO4ONBPZWcjs.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.reorderNodes = reorderNodes; exports.repositionNodesTo = repositionNodesTo; exports.resetCanvasInstanceOverrides = resetCanvasInstanceOverrides; exports.resizeHandleAxes = resizeHandleAxes; exports.resolveCanvasGradient = _chunkO2UH7LZEcjs.resolveCanvasGradient; exports.resolveCanvasTokens = resolveCanvasTokens; exports.resolveEasing = _chunkXZ4L3R4Kcjs.resolveEasing; exports.resolveMermaidStyles = resolveMermaidStyles; exports.resolvePadding = resolvePadding; exports.restoreCanvasMainComponent = restoreCanvasMainComponent; exports.revertShapeCombination = revertShapeCombination; exports.rgbToOklab = _chunkMR3Z4OQIcjs.rgbToOklab; exports.ringSignedArea = _chunkO2UH7LZEcjs.ringSignedArea; exports.runMultiNodeTransition = runMultiNodeTransition; exports.sampleAnimationFrames = sampleAnimationFrames; exports.scaleKeyframes = scaleKeyframes; exports.sceneColor = sceneColor; exports.segmentBounds = _chunkO2UH7LZEcjs.segmentBounds; exports.segmentCurvature = _chunkO2UH7LZEcjs.segmentCurvature; exports.segmentDerivative = _chunkO2UH7LZEcjs.segmentDerivative; exports.segmentExtrema = _chunkO2UH7LZEcjs.segmentExtrema; exports.segmentIntersections = _chunkO2UH7LZEcjs.segmentIntersections; exports.segmentLength = _chunkO2UH7LZEcjs.segmentLength; exports.segmentNearest = _chunkO2UH7LZEcjs.segmentNearest; exports.segmentParamAtLength = _chunkO2UH7LZEcjs.segmentParamAtLength; exports.segmentPoint = _chunkO2UH7LZEcjs.segmentPoint; exports.segmentTangent = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.shapeToPolygon; exports.sideToPosition = sideToPosition; exports.simplifyRing = _chunkO2UH7LZEcjs.simplifyRing; exports.snapKeyframeDelta = snapKeyframeDelta; exports.snapNodeDrag = snapNodeDrag; exports.snapNodeResize = snapNodeResize; exports.snapResize = snapResize; exports.snapTimeToFrame = snapTimeToFrame; exports.snapToGrid = snapToGrid; exports.splitSegment = _chunkO2UH7LZEcjs.splitSegment; exports.springAt = _chunkXZ4L3R4Kcjs.springAt; exports.streamedDiagramText = streamedDiagramText; exports.streamlinePoints = streamlinePoints; exports.strokeBoundingBox = strokeBoundingBox; exports.strokeOutlineRings = _chunkO2UH7LZEcjs.strokeOutlineRings; exports.strokePointsToPathData = strokePointsToPathData; exports.strokeToShapeNode = strokeToShapeNode; exports.subSegment = _chunkO2UH7LZEcjs.subSegment; exports.subtractPaths = _chunkO2UH7LZEcjs.subtractPaths; exports.subtractPolygons = _chunkO2UH7LZEcjs.subtractPolygons; exports.swapCanvasInstance = swapCanvasInstance; exports.syncAllCanvasInstances = syncAllCanvasInstances; exports.syncCanvasComponents = syncCanvasComponents; exports.syncCanvasInstance = syncCanvasInstance; exports.timeToX = timeToX; exports.timelineScene = timelineScene; exports.toBezierPath = _chunkO2UH7LZEcjs.toBezierPath; exports.toWebAnimations = toWebAnimations; exports.toggleLockNodes = toggleLockNodes; exports.transformBezierPath = _chunkO2UH7LZEcjs.transformBezierPath; exports.trimSegments = _chunkO2UH7LZEcjs.trimSegments; exports.unionPolygons = _chunkO2UH7LZEcjs.unionPolygons; exports.unitePaths = _chunkO2UH7LZEcjs.unitePaths; exports.unlockNodes = unlockNodes; exports.updateKeyframe = updateKeyframe; exports.windingNumber = _chunkO2UH7LZEcjs.windingNumber; exports.withNodeAnimation = withNodeAnimation; exports.withStyleOpacity = withStyleOpacity; exports.withStyleSize = withStyleSize; exports.wouldCreateComponentCycle = wouldCreateComponentCycle; exports.wrapAnimationTime = _chunkO4ONBPZWcjs.wrapAnimationTime; exports.writeNodeStyleProperty = writeNodeStyleProperty; exports.writeOverrideGroup = writeOverrideGroup; exports.xToTime = xToTime; exports.xorPolygons = _chunkO2UH7LZEcjs.xorPolygons; exports.xyChartScene = xyChartScene; exports.xyChartSpec = xyChartSpec;
11820
+
11821
+
11822
+
11823
+ exports.ANIMATABLE_PROPERTIES = ANIMATABLE_PROPERTIES; exports.ANIMATION_DATA_KEY = ANIMATION_DATA_KEY; exports.ANIMATION_EASING_LABELS = _chunk2FHLHZALcjs.ANIMATION_EASING_LABELS; exports.ANIMATION_EASING_PRESETS = _chunk2FHLHZALcjs.ANIMATION_EASING_PRESETS; exports.ANIMATION_TIME_EPSILON = _chunk2FGRTYJNcjs.ANIMATION_TIME_EPSILON; exports.AUTO_LAYOUT_DATA_KEY = AUTO_LAYOUT_DATA_KEY; exports.AnimationEditError = AnimationEditError; exports.AnimationPlayer = _chunk2FGRTYJNcjs.AnimationPlayer; exports.BUILTIN_FAMILY_SCENES = BUILTIN_FAMILY_SCENES; exports.CANVAS_COMPONENT_DRAG_TYPE = CANVAS_COMPONENT_DRAG_TYPE; exports.CANVAS_GRADIENT_PRESETS = _chunkO2UH7LZEcjs.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 = _chunk2FHLHZALcjs.CUBIC_BEZIER_PRESETS; exports.CanvasScenesStore = CanvasScenesStore; exports.DEFAULT_ARRANGE_SHORTCUTS = _chunk26BVFKHUcjs.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 = _chunkWADCJ7A7cjs.DEFAULT_NODE_HEIGHT; exports.DEFAULT_NODE_WIDTH = _chunkWADCJ7A7cjs.DEFAULT_NODE_WIDTH; exports.DEFAULT_PLACEMENT_GAP = _chunkWADCJ7A7cjs.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 = LOCKED_DATA_KEY; exports.LOCKED_PREVIOUS_FLAGS_KEY = LOCKED_PREVIOUS_FLAGS_KEY; exports.MAX_KEYFRAME_REFS = MAX_KEYFRAME_REFS; exports.MERMAID_SHAPE_PAINT = MERMAID_SHAPE_PAINT; exports.ManualClock = _chunk2FGRTYJNcjs.ManualClock; exports.PATHFINDER_OPERATIONS = _chunkMLREO6J3cjs.PATHFINDER_OPERATIONS; exports.PIXERATE_BRAND_GRADIENT = _chunkO2UH7LZEcjs.PIXERATE_BRAND_GRADIENT; exports.PathOpsError = _chunkO2UH7LZEcjs.PathOpsError; exports.PlanarMap = _chunkMLREO6J3cjs.PlanarMap; exports.RESIZE_HANDLES = RESIZE_HANDLES; exports.SHAPE_DATA_KEY = SHAPE_DATA_KEY; exports.SHAPE_KINDS = _chunkO2UH7LZEcjs.SHAPE_KINDS; exports.SHAPE_NODE_TYPE = SHAPE_NODE_TYPE; exports.SHAPE_OPERATIONS = SHAPE_OPERATIONS; exports.SPRING_PRESETS = _chunk2FHLHZALcjs.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 = alignNodes; exports.angleToSvgLinearCoords = _chunkO2UH7LZEcjs.angleToSvgLinearCoords; exports.animateNode = animateNode; exports.applyAnimation = applyAnimation; exports.applyAnimationOverrides = applyAnimationOverrides; exports.applyConstraints = applyConstraints; exports.applyNodeUpdates = applyNodeUpdates; exports.applyShapeCombination = applyShapeCombination; exports.applyShapeReplacement = applyShapeReplacement; exports.arcToCubics = _chunkO2UH7LZEcjs.arcToCubics; exports.architectureScene = architectureScene; exports.autoLayoutDiagram = autoLayoutDiagram; exports.bezierPathArea = _chunkO2UH7LZEcjs.bezierPathArea; exports.bezierPathBounds = _chunkO2UH7LZEcjs.bezierPathBounds; exports.bezierPathLength = _chunkO2UH7LZEcjs.bezierPathLength; exports.bezierPathPointAtLength = _chunkO2UH7LZEcjs.bezierPathPointAtLength; exports.bezierPathSignedArea = _chunkO2UH7LZEcjs.bezierPathSignedArea; exports.bezierPathToSvg = _chunkO2UH7LZEcjs.bezierPathToSvg; exports.bindCanvasComponentProperty = bindCanvasComponentProperty; exports.bindCanvasToken = bindCanvasToken; exports.blendDiagramLayout = blendDiagramLayout; exports.blendLayout = blendLayout; exports.boundsOf = _chunkWADCJ7A7cjs.boundsOf; 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.canvasHeight = canvasHeight; exports.centerNodes = _chunkWADCJ7A7cjs.centerNodes; exports.centre = _chunkWADCJ7A7cjs.centre; exports.clampAnimationValue = clampAnimationValue; exports.clampLayoutSize = clampLayoutSize; exports.closeContour = _chunkO2UH7LZEcjs.closeContour; exports.collectDescendantIds = collectDescendantIds; exports.combineCanvasComponentsAsVariants = combineCanvasComponentsAsVariants; exports.combineShapeNodes = combineShapeNodes; exports.computeNodesBoundingBox = computeNodesBoundingBox; exports.computeSnapGuides = computeSnapGuides; exports.connectedDiagramOnly = connectedDiagramOnly; exports.connectedOnly = connectedOnly; exports.contourEnclosesArea = _chunkMLREO6J3cjs.contourEnclosesArea; exports.contourSignedArea = _chunkO2UH7LZEcjs.contourSignedArea; exports.contoursToPath = _chunkO2UH7LZEcjs.contoursToPath; exports.copyKeyframes = copyKeyframes; exports.countPathSegments = _chunkO2UH7LZEcjs.countPathSegments; exports.createAnimationPlayer = _chunk2FGRTYJNcjs.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 = _chunk2FHLHZALcjs.cubicBezierAt; exports.cubicPointAt = _chunkO2UH7LZEcjs.cubicPointAt; exports.cubicsToPathData = _chunkO2UH7LZEcjs.cubicsToPathData; exports.cutOutPiece = _chunkMLREO6J3cjs.cutOutPiece; exports.dashContours = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.distanceToBezierPath; exports.distributeNodes = distributeNodes; exports.dividePaths = _chunkO2UH7LZEcjs.dividePaths; exports.dividePolygons = _chunkO2UH7LZEcjs.dividePolygons; exports.downloadDiagramPng = downloadDiagramPng; exports.easeDiagramTween = easeDiagramTween; exports.easingFromInfluence = _chunk2FHLHZALcjs.easingFromInfluence; exports.easingLabel = _chunk2FHLHZALcjs.easingLabel; exports.easingToCss = _chunk2FHLHZALcjs.easingToCss; exports.elasticAt = _chunk2FHLHZALcjs.elasticAt; exports.ensureDiagramLayout = ensureDiagramLayout; exports.ensureLayout = _chunkWADCJ7A7cjs.ensureLayout; exports.estimateCanvasHeight = estimateCanvasHeight; exports.estimateDiagramCanvasHeight = estimateDiagramCanvasHeight; exports.estimateDiagramNodeSize = estimateDiagramNodeSize; exports.estimateNodeSize = _chunkWADCJ7A7cjs.estimateNodeSize; exports.estimateTextWidth = estimateTextWidth2; exports.evaluateAnimation = evaluateAnimation; exports.evaluateEasing = _chunk2FHLHZALcjs.evaluateEasing; exports.evaluateTrack = _chunk2FGRTYJNcjs.evaluateTrack; exports.excludePaths = _chunkO2UH7LZEcjs.excludePaths; exports.exportCssAnimation = exportCssAnimation; exports.familySceneFromLayout = familySceneFromLayout; exports.findConnectorSnap = findConnectorSnap; exports.findStrokesAtPoint = findStrokesAtPoint; exports.findVariant = findVariant; exports.fitCubicRun = _chunkO2UH7LZEcjs.fitCubicRun; exports.fitCubicWithTangents = _chunkO2UH7LZEcjs.fitCubicWithTangents; exports.fitCubics = _chunkO2UH7LZEcjs.fitCubics; exports.fitFreehandPath = _chunkO2UH7LZEcjs.fitFreehandPath; exports.fitPathData = _chunkO2UH7LZEcjs.fitPathData; exports.fitViewportToNodes = fitViewportToNodes; exports.fitViewportToRect = fitViewportToRect; exports.flattenSvgPath = _chunkO2UH7LZEcjs.flattenSvgPath; exports.flowSide = _chunkWADCJ7A7cjs.flowSide; exports.formatAgentCursorName = formatAgentCursorName; exports.formatAnimationTime = formatAnimationTime; exports.formatNumber = _chunkO2UH7LZEcjs.formatNumber; exports.formatOklab = _chunkMR3Z4OQIcjs.formatOklab; exports.formatVariantName = formatVariantName; exports.ganttScene = ganttScene; exports.getAbsolutePosition = 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.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.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 = _chunkWADCJ7A7cjs.getLayoutedNodes; exports.getNaturalMovementTiming = getNaturalMovementTiming; 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 = _chunkO2UH7LZEcjs.getShapeRenderData; exports.getShapeSvg = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.gradientToSvgDef; exports.handlePoint = handlePoint; exports.hasFamilyScene = hasFamilyScene; exports.hasVisibleStroke = hasVisibleStroke; exports.hashString = hashString; exports.hatchPath = _chunkMLREO6J3cjs.hatchPath; exports.inferResizeHandle = inferResizeHandle; exports.inspectCanvasInstance = inspectCanvasInstance; exports.inspectNodeTokens = inspectNodeTokens; exports.interiorPoint = _chunkMLREO6J3cjs.interiorPoint; exports.interpolateAnimationValue = _chunk2FGRTYJNcjs.interpolateAnimationValue; exports.intersectPaths = _chunkO2UH7LZEcjs.intersectPaths; exports.intersectPolygons = _chunkO2UH7LZEcjs.intersectPolygons; exports.invertNodeUpdates = invertNodeUpdates; exports.isAgentCursor = isAgentCursor; exports.isAnimationEasing = _chunk2FHLHZALcjs.isAnimationEasing; exports.isAnimationKeyframe = _chunk2FGRTYJNcjs.isAnimationKeyframe; exports.isAutoLayoutFrame = isAutoLayoutFrame; exports.isCanvasComponent = isCanvasComponent; exports.isCanvasComponentSet = isCanvasComponentSet; exports.isCanvasGradient = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.isShapeDescription; exports.isShapeNode = isShapeNode; exports.isStraightCubic = _chunkO2UH7LZEcjs.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.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.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 = _chunkMR3Z4OQIcjs.mixColorsOklab; exports.moveKeyframes = moveKeyframes; exports.moveLayoutChild = moveLayoutChild; exports.multiPolygonArea = _chunkO2UH7LZEcjs.multiPolygonArea; exports.multiPolygonBounds = _chunkO2UH7LZEcjs.multiPolygonBounds; exports.nearestHandlePositions = nearestHandlePositions; exports.normalizeBezierPath = _chunkO2UH7LZEcjs.normalizeBezierPath; exports.normalizeKeyframes = _chunk2FGRTYJNcjs.normalizeKeyframes; exports.offsetPath = _chunkO2UH7LZEcjs.offsetPath; exports.offsetShapeNodes = offsetShapeNodes; exports.oklabToRgb = _chunkMR3Z4OQIcjs.oklabToRgb; exports.oppositePosition = oppositePosition; exports.outlineShapeNodeStrokes = outlineShapeNodeStrokes; exports.outlineStroke = _chunkO2UH7LZEcjs.outlineStroke; exports.overlaps = _chunkWADCJ7A7cjs.overlaps; exports.pageHidden = _chunk2FGRTYJNcjs.pageHidden; exports.parseCanvasClipboardData = parseCanvasClipboardData; exports.parseCanvasScenes = parseCanvasScenes; exports.parseCssEasing = _chunk2FHLHZALcjs.parseCssEasing; exports.parseCssGradient = _chunkO2UH7LZEcjs.parseCssGradient; exports.parseKeyframeClipboard = parseKeyframeClipboard; exports.parseMermaidStyles = parseMermaidStyles; exports.parseNodeStyleDeclarations = parseNodeStyleDeclarations; exports.parseOklab = _chunkMR3Z4OQIcjs.parseOklab; exports.parseSvgPath = _chunkO2UH7LZEcjs.parseSvgPath; exports.parseVariantName = parseVariantName; exports.pasteKeyframes = pasteKeyframes; exports.pathBoolean = _chunkO2UH7LZEcjs.pathBoolean; exports.pathBooleanSelect = _chunkO2UH7LZEcjs.pathBooleanSelect; exports.pathToContours = _chunkO2UH7LZEcjs.pathToContours; exports.pathfinder = _chunkMLREO6J3cjs.pathfinder; exports.pieScene = pieScene; exports.placeBeside = _chunkWADCJ7A7cjs.placeBeside; exports.planarSplit = _chunkO2UH7LZEcjs.planarSplit; exports.playWebAnimations = playWebAnimations; exports.pointInBezierPath = _chunkO2UH7LZEcjs.pointInBezierPath; exports.pointInMultiPolygon = _chunkO2UH7LZEcjs.pointInMultiPolygon; exports.pointInRings = _chunkO2UH7LZEcjs.pointInRings; exports.polygonArea = _chunkO2UH7LZEcjs.polygonArea; exports.polygonBoolean = _chunkO2UH7LZEcjs.polygonBoolean; exports.polygonToSvgPath = _chunkO2UH7LZEcjs.polygonToSvgPath; exports.positionToSide = positionToSide; 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 = readStyleSize; exports.realClock = _chunk2FGRTYJNcjs.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.reorderNodes = reorderNodes; exports.repositionNodesTo = repositionNodesTo; exports.resetCanvasInstanceOverrides = resetCanvasInstanceOverrides; exports.resizeHandleAxes = resizeHandleAxes; exports.resolveCanvasGradient = _chunkO2UH7LZEcjs.resolveCanvasGradient; exports.resolveCanvasTokens = resolveCanvasTokens; exports.resolveEasing = _chunk2FHLHZALcjs.resolveEasing; exports.resolveMermaidStyles = resolveMermaidStyles; exports.resolvePadding = resolvePadding; exports.restoreCanvasMainComponent = restoreCanvasMainComponent; exports.reverseCubicBezier = _chunk2FHLHZALcjs.reverseCubicBezier; exports.revertShapeCombination = revertShapeCombination; exports.rgbToOklab = _chunkMR3Z4OQIcjs.rgbToOklab; exports.ringSignedArea = _chunkO2UH7LZEcjs.ringSignedArea; exports.runMultiNodeTransition = runMultiNodeTransition; exports.sampleAnimationFrames = sampleAnimationFrames; exports.scaleKeyframes = scaleKeyframes; exports.sceneColor = sceneColor; exports.segmentBounds = _chunkO2UH7LZEcjs.segmentBounds; exports.segmentCurvature = _chunkO2UH7LZEcjs.segmentCurvature; exports.segmentDerivative = _chunkO2UH7LZEcjs.segmentDerivative; exports.segmentExtrema = _chunkO2UH7LZEcjs.segmentExtrema; exports.segmentIntersections = _chunkO2UH7LZEcjs.segmentIntersections; exports.segmentLength = _chunkO2UH7LZEcjs.segmentLength; exports.segmentNearest = _chunkO2UH7LZEcjs.segmentNearest; exports.segmentParamAtLength = _chunkO2UH7LZEcjs.segmentParamAtLength; exports.segmentPoint = _chunkO2UH7LZEcjs.segmentPoint; exports.segmentTangent = _chunkO2UH7LZEcjs.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 = _chunkO2UH7LZEcjs.shapeToPolygon; exports.sideToPosition = sideToPosition; exports.simplifyRing = _chunkO2UH7LZEcjs.simplifyRing; exports.snapKeyframeDelta = snapKeyframeDelta; exports.snapNodeDrag = snapNodeDrag; exports.snapNodeResize = snapNodeResize; exports.snapResize = snapResize; exports.snapTimeToFrame = snapTimeToFrame; exports.snapToGrid = snapToGrid; exports.splitSegment = _chunkO2UH7LZEcjs.splitSegment; exports.springAt = _chunk2FHLHZALcjs.springAt; exports.springSettleMs = _chunk2FHLHZALcjs.springSettleMs; exports.streamedDiagramText = streamedDiagramText; exports.streamlinePoints = streamlinePoints; exports.strokeBoundingBox = strokeBoundingBox; exports.strokeOutlineRings = _chunkO2UH7LZEcjs.strokeOutlineRings; exports.strokePointsToPathData = strokePointsToPathData; exports.strokeToShapeNode = strokeToShapeNode; exports.subSegment = _chunkO2UH7LZEcjs.subSegment; exports.subtractPaths = _chunkO2UH7LZEcjs.subtractPaths; exports.subtractPolygons = _chunkO2UH7LZEcjs.subtractPolygons; exports.swapCanvasInstance = swapCanvasInstance; exports.syncAllCanvasInstances = syncAllCanvasInstances; exports.syncCanvasComponents = syncCanvasComponents; exports.syncCanvasInstance = syncCanvasInstance; exports.timeToX = timeToX; exports.timelineScene = timelineScene; exports.toBezierPath = _chunkO2UH7LZEcjs.toBezierPath; exports.toWebAnimations = toWebAnimations; exports.toggleLockNodes = toggleLockNodes; exports.transformBezierPath = _chunkO2UH7LZEcjs.transformBezierPath; exports.trimSegments = _chunkO2UH7LZEcjs.trimSegments; exports.unionPolygons = _chunkO2UH7LZEcjs.unionPolygons; exports.unitePaths = _chunkO2UH7LZEcjs.unitePaths; exports.unlockNodes = unlockNodes; exports.updateKeyframe = updateKeyframe; exports.windingNumber = _chunkO2UH7LZEcjs.windingNumber; exports.withNodeAnimation = withNodeAnimation; exports.withStyleOpacity = withStyleOpacity; exports.withStyleSize = withStyleSize; exports.wouldCreateComponentCycle = wouldCreateComponentCycle; exports.wrapAnimationTime = _chunk2FGRTYJNcjs.wrapAnimationTime; exports.writeNodeStyleProperty = writeNodeStyleProperty; exports.writeOverrideGroup = writeOverrideGroup; exports.xToTime = xToTime; exports.xorPolygons = _chunkO2UH7LZEcjs.xorPolygons; exports.xyChartScene = xyChartScene; exports.xyChartSpec = xyChartSpec;
11818
11824
  //# sourceMappingURL=index.cjs.map