@pixerate/editor 0.277.0 → 0.279.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/canvas/editorDocument.d.cts +53 -0
- package/dist/canvas/editorDocument.d.ts +53 -0
- package/dist/canvas/index.cjs +169 -22
- package/dist/canvas/index.js +148 -1
- package/dist/chart/index.cjs +1 -1
- package/dist/chart/index.js +1 -1
- package/dist/{chunk-T2HUQBRC.cjs → chunk-DK33HLA2.cjs} +331 -10
- package/dist/{chunk-JV7DKLMX.js → chunk-KBH6CM3U.js} +326 -5
- package/dist/paint-editor/controller.d.cts +40 -8
- package/dist/paint-editor/controller.d.ts +40 -8
- package/dist/paint-editor/index.cjs +473 -254
- package/dist/paint-editor/index.js +265 -46
- package/dist/paint-editor/serialize.d.cts +3 -1
- package/dist/paint-editor/serialize.d.ts +3 -1
- package/dist/paint-editor/stroke.d.cts +3 -0
- package/dist/paint-editor/stroke.d.ts +3 -0
- package/dist/paint-editor/strokes.d.cts +11 -1
- package/dist/paint-editor/strokes.d.ts +11 -1
- package/dist/persistence/autosave.d.cts +15 -1
- package/dist/persistence/autosave.d.ts +15 -1
- package/dist/persistence/editorAutosave.d.cts +12 -1
- package/dist/persistence/editorAutosave.d.ts +12 -1
- package/dist/persistence/index.cjs +6 -2
- package/dist/persistence/index.d.cts +1 -0
- package/dist/persistence/index.d.ts +1 -0
- package/dist/persistence/index.js +5 -1
- package/dist/persistence/remoteSync.d.cts +152 -0
- package/dist/persistence/remoteSync.d.ts +152 -0
- package/package.json +1 -1
- package/skills/pixerate-paint-editor/SKILL.md +2 -2
|
@@ -7,6 +7,23 @@ import type { CanvasEdge, CanvasNode } from './types.cjs';
|
|
|
7
7
|
export type CanvasEdgeLike = Pick<CanvasEdge, 'id' | 'source' | 'target'> & {
|
|
8
8
|
selected?: boolean;
|
|
9
9
|
};
|
|
10
|
+
/** Extra top-level fields stored alongside a canvas document (e.g. a companion paint layer). */
|
|
11
|
+
export interface CanvasDocumentExtras<TExtras extends Record<string, unknown> = Record<string, unknown>> {
|
|
12
|
+
get: () => TExtras;
|
|
13
|
+
load?: (document: Record<string, unknown>) => void;
|
|
14
|
+
subscribe?: (listener: () => void) => () => void;
|
|
15
|
+
}
|
|
16
|
+
/** Incremental node and edge differences between two canvas snapshots. */
|
|
17
|
+
export interface CanvasGraphDifferences<TNode extends {
|
|
18
|
+
id: string;
|
|
19
|
+
} = CanvasNode, TEdge extends {
|
|
20
|
+
id: string;
|
|
21
|
+
} = CanvasEdge> {
|
|
22
|
+
changedNodes: TNode[];
|
|
23
|
+
changedEdges: TEdge[];
|
|
24
|
+
removedNodes: TNode[];
|
|
25
|
+
removedEdges: TEdge[];
|
|
26
|
+
}
|
|
10
27
|
/** A canvas as it is saved: its nodes, edges, (with a scenes store) scenes and (with `getViewport`) the view. */
|
|
11
28
|
export interface CanvasEditorDocument<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge> {
|
|
12
29
|
nodes: TNode[];
|
|
@@ -14,6 +31,7 @@ export interface CanvasEditorDocument<TNode extends CanvasNode = CanvasNode, TEd
|
|
|
14
31
|
scenes?: CanvasScene[];
|
|
15
32
|
/** Where the canvas was looking when it was saved. */
|
|
16
33
|
viewport?: CanvasViewport;
|
|
34
|
+
[extraKey: string]: unknown;
|
|
17
35
|
}
|
|
18
36
|
export interface CanvasEditorDocumentOptions<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge> {
|
|
19
37
|
getNodes: () => TNode[];
|
|
@@ -60,6 +78,10 @@ export interface CanvasEditorDocumentOptions<TNode extends CanvasNode = CanvasNo
|
|
|
60
78
|
* document as asset references; autosave and the document store save the bytes with it.
|
|
61
79
|
*/
|
|
62
80
|
assets?: EditorAssetRegistry;
|
|
81
|
+
/**
|
|
82
|
+
* Companion top-level fields saved and loaded with the canvas (e.g. a full-canvas paint layer).
|
|
83
|
+
*/
|
|
84
|
+
extras?: CanvasDocumentExtras;
|
|
63
85
|
}
|
|
64
86
|
/** What to leave out of canvas nodes and edges: the runtime fields plus the host's own. */
|
|
65
87
|
export interface CanvasDocumentOmitOptions {
|
|
@@ -72,6 +94,37 @@ export interface CanvasDocumentOmitOptions {
|
|
|
72
94
|
* changes the history does not see.
|
|
73
95
|
*/
|
|
74
96
|
export declare function canvasDocumentContentKey(nodes: readonly CanvasNode[], edges: readonly CanvasEdgeLike[], options?: CanvasDocumentOmitOptions): string;
|
|
97
|
+
/**
|
|
98
|
+
* Repairs a raw saved canvas document so it passes `checkCanvasDocument` without losing work:
|
|
99
|
+
* coerces missing node positions/data, deduplicates node and edge ids, clears dangling or cyclic
|
|
100
|
+
* `parentId` references, orders parent nodes before children, drops edges referencing missing
|
|
101
|
+
* nodes, strips runtime keys, and drops invalid `viewport` values.
|
|
102
|
+
*/
|
|
103
|
+
export declare function sanitizeCanvasDocument<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge>(raw: unknown, options?: CanvasDocumentOmitOptions & {
|
|
104
|
+
normalizeNode?: (node: TNode) => TNode;
|
|
105
|
+
}): CanvasEditorDocument<TNode, TEdge>;
|
|
106
|
+
/**
|
|
107
|
+
* Pure calculation of graph differences between a current state and a baseline state,
|
|
108
|
+
* ignoring transient runtime node/edge keys (`selected`, `dragging`, `measured`, `resizing`).
|
|
109
|
+
*/
|
|
110
|
+
export declare function calculateGraphDifferences<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge>(currentState: {
|
|
111
|
+
nodes?: readonly TNode[];
|
|
112
|
+
edges?: readonly TEdge[];
|
|
113
|
+
}, baselineState: {
|
|
114
|
+
nodes?: readonly TNode[];
|
|
115
|
+
edges?: readonly TEdge[];
|
|
116
|
+
}, options?: CanvasDocumentOmitOptions): CanvasGraphDifferences<TNode, TEdge>;
|
|
117
|
+
/**
|
|
118
|
+
* Applies a `CanvasGraphDifferences` patch onto an existing `{ nodes, edges }` state,
|
|
119
|
+
* preserving local selection and runtime measurement state on updated items.
|
|
120
|
+
*/
|
|
121
|
+
export declare function applyGraphDifferences<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge>(state: {
|
|
122
|
+
nodes: readonly TNode[];
|
|
123
|
+
edges: readonly TEdge[];
|
|
124
|
+
}, diff: Partial<CanvasGraphDifferences<TNode, TEdge>>): {
|
|
125
|
+
nodes: TNode[];
|
|
126
|
+
edges: TEdge[];
|
|
127
|
+
};
|
|
75
128
|
/**
|
|
76
129
|
* The save / load / undo contract for a canvas whose nodes and edges live in the host (React
|
|
77
130
|
* Flow or Svelte Flow state), kind `canvas`. The document is the nodes and edges without
|
|
@@ -7,6 +7,23 @@ import type { CanvasEdge, CanvasNode } from './types.js';
|
|
|
7
7
|
export type CanvasEdgeLike = Pick<CanvasEdge, 'id' | 'source' | 'target'> & {
|
|
8
8
|
selected?: boolean;
|
|
9
9
|
};
|
|
10
|
+
/** Extra top-level fields stored alongside a canvas document (e.g. a companion paint layer). */
|
|
11
|
+
export interface CanvasDocumentExtras<TExtras extends Record<string, unknown> = Record<string, unknown>> {
|
|
12
|
+
get: () => TExtras;
|
|
13
|
+
load?: (document: Record<string, unknown>) => void;
|
|
14
|
+
subscribe?: (listener: () => void) => () => void;
|
|
15
|
+
}
|
|
16
|
+
/** Incremental node and edge differences between two canvas snapshots. */
|
|
17
|
+
export interface CanvasGraphDifferences<TNode extends {
|
|
18
|
+
id: string;
|
|
19
|
+
} = CanvasNode, TEdge extends {
|
|
20
|
+
id: string;
|
|
21
|
+
} = CanvasEdge> {
|
|
22
|
+
changedNodes: TNode[];
|
|
23
|
+
changedEdges: TEdge[];
|
|
24
|
+
removedNodes: TNode[];
|
|
25
|
+
removedEdges: TEdge[];
|
|
26
|
+
}
|
|
10
27
|
/** A canvas as it is saved: its nodes, edges, (with a scenes store) scenes and (with `getViewport`) the view. */
|
|
11
28
|
export interface CanvasEditorDocument<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge> {
|
|
12
29
|
nodes: TNode[];
|
|
@@ -14,6 +31,7 @@ export interface CanvasEditorDocument<TNode extends CanvasNode = CanvasNode, TEd
|
|
|
14
31
|
scenes?: CanvasScene[];
|
|
15
32
|
/** Where the canvas was looking when it was saved. */
|
|
16
33
|
viewport?: CanvasViewport;
|
|
34
|
+
[extraKey: string]: unknown;
|
|
17
35
|
}
|
|
18
36
|
export interface CanvasEditorDocumentOptions<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge> {
|
|
19
37
|
getNodes: () => TNode[];
|
|
@@ -60,6 +78,10 @@ export interface CanvasEditorDocumentOptions<TNode extends CanvasNode = CanvasNo
|
|
|
60
78
|
* document as asset references; autosave and the document store save the bytes with it.
|
|
61
79
|
*/
|
|
62
80
|
assets?: EditorAssetRegistry;
|
|
81
|
+
/**
|
|
82
|
+
* Companion top-level fields saved and loaded with the canvas (e.g. a full-canvas paint layer).
|
|
83
|
+
*/
|
|
84
|
+
extras?: CanvasDocumentExtras;
|
|
63
85
|
}
|
|
64
86
|
/** What to leave out of canvas nodes and edges: the runtime fields plus the host's own. */
|
|
65
87
|
export interface CanvasDocumentOmitOptions {
|
|
@@ -72,6 +94,37 @@ export interface CanvasDocumentOmitOptions {
|
|
|
72
94
|
* changes the history does not see.
|
|
73
95
|
*/
|
|
74
96
|
export declare function canvasDocumentContentKey(nodes: readonly CanvasNode[], edges: readonly CanvasEdgeLike[], options?: CanvasDocumentOmitOptions): string;
|
|
97
|
+
/**
|
|
98
|
+
* Repairs a raw saved canvas document so it passes `checkCanvasDocument` without losing work:
|
|
99
|
+
* coerces missing node positions/data, deduplicates node and edge ids, clears dangling or cyclic
|
|
100
|
+
* `parentId` references, orders parent nodes before children, drops edges referencing missing
|
|
101
|
+
* nodes, strips runtime keys, and drops invalid `viewport` values.
|
|
102
|
+
*/
|
|
103
|
+
export declare function sanitizeCanvasDocument<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge>(raw: unknown, options?: CanvasDocumentOmitOptions & {
|
|
104
|
+
normalizeNode?: (node: TNode) => TNode;
|
|
105
|
+
}): CanvasEditorDocument<TNode, TEdge>;
|
|
106
|
+
/**
|
|
107
|
+
* Pure calculation of graph differences between a current state and a baseline state,
|
|
108
|
+
* ignoring transient runtime node/edge keys (`selected`, `dragging`, `measured`, `resizing`).
|
|
109
|
+
*/
|
|
110
|
+
export declare function calculateGraphDifferences<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge>(currentState: {
|
|
111
|
+
nodes?: readonly TNode[];
|
|
112
|
+
edges?: readonly TEdge[];
|
|
113
|
+
}, baselineState: {
|
|
114
|
+
nodes?: readonly TNode[];
|
|
115
|
+
edges?: readonly TEdge[];
|
|
116
|
+
}, options?: CanvasDocumentOmitOptions): CanvasGraphDifferences<TNode, TEdge>;
|
|
117
|
+
/**
|
|
118
|
+
* Applies a `CanvasGraphDifferences` patch onto an existing `{ nodes, edges }` state,
|
|
119
|
+
* preserving local selection and runtime measurement state on updated items.
|
|
120
|
+
*/
|
|
121
|
+
export declare function applyGraphDifferences<TNode extends CanvasNode = CanvasNode, TEdge extends CanvasEdgeLike = CanvasEdge>(state: {
|
|
122
|
+
nodes: readonly TNode[];
|
|
123
|
+
edges: readonly TEdge[];
|
|
124
|
+
}, diff: Partial<CanvasGraphDifferences<TNode, TEdge>>): {
|
|
125
|
+
nodes: TNode[];
|
|
126
|
+
edges: TEdge[];
|
|
127
|
+
};
|
|
75
128
|
/**
|
|
76
129
|
* The save / load / undo contract for a canvas whose nodes and edges live in the host (React
|
|
77
130
|
* Flow or Svelte Flow state), kind `canvas`. The document is the nodes and edges without
|
package/dist/canvas/index.cjs
CHANGED
|
@@ -11892,6 +11892,141 @@ var isViewport = (value) => {
|
|
|
11892
11892
|
const v = value;
|
|
11893
11893
|
return !!v && typeof v === "object" && [v.x, v.y, v.zoom].every((n3) => typeof n3 === "number" && Number.isFinite(n3)) && v.zoom > 0;
|
|
11894
11894
|
};
|
|
11895
|
+
function sanitizeCanvasDocument(raw, options = {}) {
|
|
11896
|
+
if (!raw || typeof raw !== "object" || Array.isArray(raw)) {
|
|
11897
|
+
return { nodes: [], edges: [] };
|
|
11898
|
+
}
|
|
11899
|
+
const doc = raw;
|
|
11900
|
+
const keys = omitKeys(options);
|
|
11901
|
+
const rawNodes = Array.isArray(doc.nodes) ? doc.nodes : [];
|
|
11902
|
+
const rawEdges = Array.isArray(doc.edges) ? doc.edges : [];
|
|
11903
|
+
const nodeMap = /* @__PURE__ */ new Map();
|
|
11904
|
+
for (const candidate of rawNodes) {
|
|
11905
|
+
if (!candidate || typeof candidate !== "object" || Array.isArray(candidate)) continue;
|
|
11906
|
+
const item = candidate;
|
|
11907
|
+
if (typeof item.id !== "string" || item.id.length === 0) continue;
|
|
11908
|
+
const pos = item.position;
|
|
11909
|
+
const position = {
|
|
11910
|
+
x: typeof _optionalChain([pos, 'optionalAccess', _515 => _515.x]) === "number" && Number.isFinite(pos.x) ? pos.x : 0,
|
|
11911
|
+
y: typeof _optionalChain([pos, 'optionalAccess', _516 => _516.y]) === "number" && Number.isFinite(pos.y) ? pos.y : 0
|
|
11912
|
+
};
|
|
11913
|
+
const data = item.data && typeof item.data === "object" && !Array.isArray(item.data) ? { ...item.data } : {};
|
|
11914
|
+
const cleaned = omit({ ...item, position, data }, keys.node);
|
|
11915
|
+
nodeMap.set(item.id, options.normalizeNode ? options.normalizeNode(cleaned) : cleaned);
|
|
11916
|
+
}
|
|
11917
|
+
const hasCycle = (nodeId, parentId) => {
|
|
11918
|
+
let cur = parentId;
|
|
11919
|
+
const seen = /* @__PURE__ */ new Set([nodeId]);
|
|
11920
|
+
while (cur) {
|
|
11921
|
+
if (seen.has(cur)) return true;
|
|
11922
|
+
seen.add(cur);
|
|
11923
|
+
cur = _optionalChain([nodeMap, 'access', _517 => _517.get, 'call', _518 => _518(cur), 'optionalAccess', _519 => _519.parentId]);
|
|
11924
|
+
}
|
|
11925
|
+
return false;
|
|
11926
|
+
};
|
|
11927
|
+
const sanitizedNodes = [];
|
|
11928
|
+
for (const node of nodeMap.values()) {
|
|
11929
|
+
if (node.parentId !== void 0 && (typeof node.parentId !== "string" || !nodeMap.has(node.parentId) || hasCycle(node.id, node.parentId))) {
|
|
11930
|
+
const copy = { ...node };
|
|
11931
|
+
delete copy.parentId;
|
|
11932
|
+
delete copy.extent;
|
|
11933
|
+
nodeMap.set(node.id, copy);
|
|
11934
|
+
sanitizedNodes.push(copy);
|
|
11935
|
+
} else {
|
|
11936
|
+
sanitizedNodes.push(node);
|
|
11937
|
+
}
|
|
11938
|
+
}
|
|
11939
|
+
const orderedNodes = [];
|
|
11940
|
+
const placedIds = /* @__PURE__ */ new Set();
|
|
11941
|
+
const byId = new Map(sanitizedNodes.map((n3) => [n3.id, n3]));
|
|
11942
|
+
const place2 = (node) => {
|
|
11943
|
+
if (placedIds.has(node.id)) return;
|
|
11944
|
+
if (node.parentId && byId.has(node.parentId)) {
|
|
11945
|
+
place2(byId.get(node.parentId));
|
|
11946
|
+
}
|
|
11947
|
+
placedIds.add(node.id);
|
|
11948
|
+
orderedNodes.push(node);
|
|
11949
|
+
};
|
|
11950
|
+
for (const node of sanitizedNodes) place2(node);
|
|
11951
|
+
const edgeMap = /* @__PURE__ */ new Map();
|
|
11952
|
+
for (const candidate of rawEdges) {
|
|
11953
|
+
if (!isValidCanvasEdge(candidate)) continue;
|
|
11954
|
+
if (!placedIds.has(candidate.source) || !placedIds.has(candidate.target)) continue;
|
|
11955
|
+
edgeMap.set(candidate.id, omit({ ...candidate }, keys.edge));
|
|
11956
|
+
}
|
|
11957
|
+
const extraEntries = Object.entries(doc).filter(
|
|
11958
|
+
([k, v]) => k !== "nodes" && k !== "edges" && k !== "scenes" && k !== "viewport" && v !== void 0
|
|
11959
|
+
);
|
|
11960
|
+
return {
|
|
11961
|
+
...Object.fromEntries(extraEntries),
|
|
11962
|
+
nodes: orderedNodes,
|
|
11963
|
+
edges: [...edgeMap.values()],
|
|
11964
|
+
...Array.isArray(doc.scenes) ? { scenes: doc.scenes } : {},
|
|
11965
|
+
...isViewport(doc.viewport) ? { viewport: { ...doc.viewport } } : {}
|
|
11966
|
+
};
|
|
11967
|
+
}
|
|
11968
|
+
function calculateGraphDifferences(currentState, baselineState, options) {
|
|
11969
|
+
const currentNodes = _nullishCoalesce(currentState.nodes, () => ( []));
|
|
11970
|
+
const currentEdges = _nullishCoalesce(currentState.edges, () => ( []));
|
|
11971
|
+
const baselineNodes = _nullishCoalesce(baselineState.nodes, () => ( []));
|
|
11972
|
+
const baselineEdges = _nullishCoalesce(baselineState.edges, () => ( []));
|
|
11973
|
+
const keys = omitKeys(options);
|
|
11974
|
+
const baselineNodeMap = new Map(baselineNodes.map((n3) => [n3.id, n3]));
|
|
11975
|
+
const baselineEdgeMap = new Map(baselineEdges.map((e) => [e.id, e]));
|
|
11976
|
+
const currentNodeMap = new Map(currentNodes.map((n3) => [n3.id, n3]));
|
|
11977
|
+
const currentEdgeMap = new Map(currentEdges.map((e) => [e.id, e]));
|
|
11978
|
+
const removedNodes = baselineNodes.filter((oldNode) => !currentNodeMap.has(oldNode.id));
|
|
11979
|
+
const removedEdges = baselineEdges.filter((oldEdge) => !currentEdgeMap.has(oldEdge.id));
|
|
11980
|
+
const changedNodes = currentNodes.filter((newNode) => {
|
|
11981
|
+
const oldNode = baselineNodeMap.get(newNode.id);
|
|
11982
|
+
if (!oldNode) return true;
|
|
11983
|
+
return JSON.stringify(omit(newNode, keys.node)) !== JSON.stringify(omit(oldNode, keys.node));
|
|
11984
|
+
});
|
|
11985
|
+
const changedEdges = currentEdges.filter((newEdge) => {
|
|
11986
|
+
const oldEdge = baselineEdgeMap.get(newEdge.id);
|
|
11987
|
+
if (!oldEdge) return true;
|
|
11988
|
+
return JSON.stringify(omit(newEdge, keys.edge)) !== JSON.stringify(omit(oldEdge, keys.edge));
|
|
11989
|
+
});
|
|
11990
|
+
return { changedNodes, changedEdges, removedNodes, removedEdges };
|
|
11991
|
+
}
|
|
11992
|
+
function applyGraphDifferences(state, diff) {
|
|
11993
|
+
const removedNodeIds = new Set((_nullishCoalesce(diff.removedNodes, () => ( []))).map((n3) => n3.id));
|
|
11994
|
+
const removedEdgeIds = new Set((_nullishCoalesce(diff.removedEdges, () => ( []))).map((e) => e.id));
|
|
11995
|
+
const changedNodeMap = new Map((_nullishCoalesce(diff.changedNodes, () => ( []))).map((n3) => [n3.id, n3]));
|
|
11996
|
+
const changedEdgeMap = new Map((_nullishCoalesce(diff.changedEdges, () => ( []))).map((e) => [e.id, e]));
|
|
11997
|
+
const existingNodeIds = /* @__PURE__ */ new Set();
|
|
11998
|
+
const nextNodes = state.nodes.filter((n3) => !removedNodeIds.has(n3.id)).map((n3) => {
|
|
11999
|
+
existingNodeIds.add(n3.id);
|
|
12000
|
+
const updated = changedNodeMap.get(n3.id);
|
|
12001
|
+
if (!updated) return n3;
|
|
12002
|
+
return {
|
|
12003
|
+
...updated,
|
|
12004
|
+
...n3.selected !== void 0 ? { selected: n3.selected } : {},
|
|
12005
|
+
...n3.measured !== void 0 && updated.measured === void 0 ? { measured: n3.measured } : {}
|
|
12006
|
+
};
|
|
12007
|
+
});
|
|
12008
|
+
for (const [id, node] of changedNodeMap) {
|
|
12009
|
+
if (!existingNodeIds.has(id) && !removedNodeIds.has(id)) {
|
|
12010
|
+
nextNodes.push({ ...node, selected: false });
|
|
12011
|
+
}
|
|
12012
|
+
}
|
|
12013
|
+
const existingEdgeIds = /* @__PURE__ */ new Set();
|
|
12014
|
+
const nextEdges = state.edges.filter((e) => !removedEdgeIds.has(e.id)).map((e) => {
|
|
12015
|
+
existingEdgeIds.add(e.id);
|
|
12016
|
+
const updated = changedEdgeMap.get(e.id);
|
|
12017
|
+
if (!updated) return e;
|
|
12018
|
+
return {
|
|
12019
|
+
...updated,
|
|
12020
|
+
...e.selected !== void 0 ? { selected: e.selected } : {}
|
|
12021
|
+
};
|
|
12022
|
+
});
|
|
12023
|
+
for (const [id, edge] of changedEdgeMap) {
|
|
12024
|
+
if (!existingEdgeIds.has(id) && !removedEdgeIds.has(id)) {
|
|
12025
|
+
nextEdges.push({ ...edge, selected: false });
|
|
12026
|
+
}
|
|
12027
|
+
}
|
|
12028
|
+
return { nodes: nextNodes, edges: nextEdges };
|
|
12029
|
+
}
|
|
11895
12030
|
function checkCanvasDocument(document2) {
|
|
11896
12031
|
const hint = "A canvas document is { nodes: [{ id, position: { x, y }, data }], edges: [{ id, source, target }], scenes?, viewport? } as get_canvas_document returns it.";
|
|
11897
12032
|
const value = document2;
|
|
@@ -11919,9 +12054,16 @@ function checkCanvasDocument(document2) {
|
|
|
11919
12054
|
if (value.viewport !== void 0 && !isViewport(value.viewport)) throw new Error(`viewport must be { x, y, zoom } with finite numbers and a zoom above 0. ${hint}`);
|
|
11920
12055
|
}
|
|
11921
12056
|
function createCanvasEditorDocument(options) {
|
|
11922
|
-
const { history, scenes: scenes2 } = options;
|
|
12057
|
+
const { history, scenes: scenes2, extras } = options;
|
|
11923
12058
|
const keys = omitKeys(options);
|
|
12059
|
+
const snapshotExtras = () => {
|
|
12060
|
+
if (!extras) return {};
|
|
12061
|
+
const raw = extras.get();
|
|
12062
|
+
if (!raw || typeof raw !== "object") return {};
|
|
12063
|
+
return Object.fromEntries(Object.entries(raw).filter(([, v]) => v !== void 0));
|
|
12064
|
+
};
|
|
11924
12065
|
const snapshot = () => ({
|
|
12066
|
+
...snapshotExtras(),
|
|
11925
12067
|
nodes: options.getNodes().map((n3) => omit(n3, keys.node)),
|
|
11926
12068
|
edges: options.getEdges().map((e) => omit(e, keys.edge)),
|
|
11927
12069
|
...scenes2 ? { scenes: scenes2.toJSON().scenes } : {},
|
|
@@ -11931,7 +12073,8 @@ function createCanvasEditorDocument(options) {
|
|
|
11931
12073
|
options.setNodes(doc.nodes.map((n3) => ({ ...n3 })));
|
|
11932
12074
|
options.setEdges(doc.edges.map((e) => ({ ...e })));
|
|
11933
12075
|
if (scenes2) scenes2.load(_nullishCoalesce(doc.scenes, () => ( [])));
|
|
11934
|
-
if (doc.viewport) _optionalChain([options, 'access',
|
|
12076
|
+
if (doc.viewport) _optionalChain([options, 'access', _520 => _520.setViewport, 'optionalCall', _521 => _521({ ...doc.viewport })]);
|
|
12077
|
+
_optionalChain([extras, 'optionalAccess', _522 => _522.load, 'optionalCall', _523 => _523(doc)]);
|
|
11935
12078
|
};
|
|
11936
12079
|
const check = (document2) => {
|
|
11937
12080
|
checkCanvasDocument(document2);
|
|
@@ -11963,6 +12106,7 @@ function createCanvasEditorDocument(options) {
|
|
|
11963
12106
|
subscribe: (listener) => {
|
|
11964
12107
|
const offs = [history.subscribe(() => listener())];
|
|
11965
12108
|
if (scenes2) offs.push(scenes2.subscribe(() => listener()));
|
|
12109
|
+
if (_optionalChain([extras, 'optionalAccess', _524 => _524.subscribe])) offs.push(extras.subscribe(() => listener()));
|
|
11966
12110
|
if (options.subscribe) offs.push(options.subscribe(listener));
|
|
11967
12111
|
return () => offs.forEach((off) => off());
|
|
11968
12112
|
},
|
|
@@ -11990,7 +12134,7 @@ function applyGestureSide(current, changes, side) {
|
|
|
11990
12134
|
const next = current.filter((item) => {
|
|
11991
12135
|
const change = changes.get(item.id);
|
|
11992
12136
|
return !change || change[side] !== void 0;
|
|
11993
|
-
}).map((item) => _nullishCoalesce(_optionalChain([changes, 'access',
|
|
12137
|
+
}).map((item) => _nullishCoalesce(_optionalChain([changes, 'access', _525 => _525.get, 'call', _526 => _526(item.id), 'optionalAccess', _527 => _527[side]]), () => ( item)));
|
|
11994
12138
|
const present = new Set(next.map((item) => item.id));
|
|
11995
12139
|
const index = side === "before" ? "beforeIndex" : "afterIndex";
|
|
11996
12140
|
const missing = [...changes.values()].filter((c) => c[side] !== void 0 && !present.has(c[side].id) && (side === "before" ? !c.after : !c.before)).sort((a, b) => a[index] - b[index]);
|
|
@@ -11999,7 +12143,7 @@ function applyGestureSide(current, changes, side) {
|
|
|
11999
12143
|
}
|
|
12000
12144
|
function createCanvasGestureRecorder(options) {
|
|
12001
12145
|
let before = null;
|
|
12002
|
-
const take = () => ({ nodes: options.getNodes(), edges: _optionalChain([options, 'access',
|
|
12146
|
+
const take = () => ({ nodes: options.getNodes(), edges: _optionalChain([options, 'access', _528 => _528.getEdges, 'optionalCall', _529 => _529()]) });
|
|
12003
12147
|
return {
|
|
12004
12148
|
/** Remembers the canvas as it is before the gesture. */
|
|
12005
12149
|
begin() {
|
|
@@ -12135,8 +12279,8 @@ function createCanvasExplosionStateController(options = {}) {
|
|
|
12135
12279
|
clearTimer();
|
|
12136
12280
|
const previous = snapshot.activeId;
|
|
12137
12281
|
set({ activeId: nodeId, collapsingId: null });
|
|
12138
|
-
if (previous !== null) _optionalChain([options, 'access',
|
|
12139
|
-
_optionalChain([options, 'access',
|
|
12282
|
+
if (previous !== null) _optionalChain([options, 'access', _530 => _530.onCollapse, 'optionalCall', _531 => _531(previous)]);
|
|
12283
|
+
_optionalChain([options, 'access', _532 => _532.onExplode, 'optionalCall', _533 => _533(nodeId)]);
|
|
12140
12284
|
return true;
|
|
12141
12285
|
};
|
|
12142
12286
|
const collapse = (nodeId) => {
|
|
@@ -12145,7 +12289,7 @@ function createCanvasExplosionStateController(options = {}) {
|
|
|
12145
12289
|
if (active === null || nodeId !== void 0 && nodeId !== active) return false;
|
|
12146
12290
|
clearTimer();
|
|
12147
12291
|
set({ activeId: null, collapsingId: active });
|
|
12148
|
-
_optionalChain([options, 'access',
|
|
12292
|
+
_optionalChain([options, 'access', _534 => _534.onCollapse, 'optionalCall', _535 => _535(active)]);
|
|
12149
12293
|
if (duration === 0) finishCollapse();
|
|
12150
12294
|
else timer = setTimeout(() => {
|
|
12151
12295
|
timer = null;
|
|
@@ -12206,7 +12350,7 @@ function canvasExplosionToolTarget(state, options) {
|
|
|
12206
12350
|
var READ = { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false };
|
|
12207
12351
|
var WRITE_IDEMPOTENT = { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: false };
|
|
12208
12352
|
var labelOf = (node) => {
|
|
12209
|
-
const label = _nullishCoalesce(_optionalChain([node, 'access',
|
|
12353
|
+
const label = _nullishCoalesce(_optionalChain([node, 'access', _536 => _536.data, 'optionalAccess', _537 => _537.label]), () => ( _optionalChain([node, 'access', _538 => _538.data, 'optionalAccess', _539 => _539.name])));
|
|
12210
12354
|
return typeof label === "string" && label !== "" ? label : void 0;
|
|
12211
12355
|
};
|
|
12212
12356
|
function createCanvasExplosionToolProvider(target, options = {}) {
|
|
@@ -12219,7 +12363,7 @@ function createCanvasExplosionToolProvider(target, options = {}) {
|
|
|
12219
12363
|
if (ok === true) return null;
|
|
12220
12364
|
return typeof ok === "string" && ok ? ok : `Node "${node.id}" has nothing to explode into.`;
|
|
12221
12365
|
};
|
|
12222
|
-
const state = () => ({ exploded: [...target.exploded()], collapsing: [..._nullishCoalesce(_optionalChain([target, 'access',
|
|
12366
|
+
const state = () => ({ exploded: [...target.exploded()], collapsing: [..._nullishCoalesce(_optionalChain([target, 'access', _540 => _540.collapsing, 'optionalCall', _541 => _541()]), () => ( []))] });
|
|
12223
12367
|
const findNode = (id) => {
|
|
12224
12368
|
const node = target.getNodes().find((n3) => n3.id === id);
|
|
12225
12369
|
if (!node) throw new Error(`No node "${id}" on the canvas. Call list_explodable_nodes for node ids.`);
|
|
@@ -12338,8 +12482,8 @@ function createCanvasProposals(options) {
|
|
|
12338
12482
|
const rectOf = (node) => ({
|
|
12339
12483
|
x: node.position.x,
|
|
12340
12484
|
y: node.position.y,
|
|
12341
|
-
width: _nullishCoalesce(_nullishCoalesce(_optionalChain([node, 'access',
|
|
12342
|
-
height: _nullishCoalesce(_nullishCoalesce(_optionalChain([node, 'access',
|
|
12485
|
+
width: _nullishCoalesce(_nullishCoalesce(_optionalChain([node, 'access', _542 => _542.measured, 'optionalAccess', _543 => _543.width]), () => ( node.width)), () => ( size2.width)),
|
|
12486
|
+
height: _nullishCoalesce(_nullishCoalesce(_optionalChain([node, 'access', _544 => _544.measured, 'optionalAccess', _545 => _545.height]), () => ( node.height)), () => ( size2.height))
|
|
12343
12487
|
});
|
|
12344
12488
|
const missing = (proposal) => {
|
|
12345
12489
|
const present = new Set(options.getNodes().map((n3) => n3.id));
|
|
@@ -12389,7 +12533,7 @@ function createCanvasProposals(options) {
|
|
|
12389
12533
|
throw new Error(`nodes[${i}].position needs finite x and y.`);
|
|
12390
12534
|
}
|
|
12391
12535
|
if (!position) {
|
|
12392
|
-
const view = _optionalChain([options, 'access',
|
|
12536
|
+
const view = _optionalChain([options, 'access', _546 => _546.visibleRect, 'optionalCall', _547 => _547()]);
|
|
12393
12537
|
if (input2.nearNodeId) position = _chunkEL4PSKFTcjs.placeBeside.call(void 0, rects, nodeSize, toSide(input2.side), input2.nearNodeId);
|
|
12394
12538
|
else if (view) position = _chunkEL4PSKFTcjs.placeInView.call(void 0, rects, nodeSize, view);
|
|
12395
12539
|
else if (canvasNodes.length || nodes.length) {
|
|
@@ -12441,7 +12585,7 @@ function createCanvasProposals(options) {
|
|
|
12441
12585
|
};
|
|
12442
12586
|
const accept = (id) => {
|
|
12443
12587
|
const proposal = find(id);
|
|
12444
|
-
const reason = _optionalChain([options, 'access',
|
|
12588
|
+
const reason = _optionalChain([options, 'access', _548 => _548.readOnly, 'optionalCall', _549 => _549()]);
|
|
12445
12589
|
if (reason) throw new Error(reason);
|
|
12446
12590
|
const gone = missing(proposal);
|
|
12447
12591
|
if (gone.length) {
|
|
@@ -12593,7 +12737,7 @@ function createCanvasChangeFeed(options) {
|
|
|
12593
12737
|
if (edited) pending = void 0;
|
|
12594
12738
|
const change = {
|
|
12595
12739
|
seq: ++seq,
|
|
12596
|
-
origin: _optionalChain([commit, 'optionalAccess',
|
|
12740
|
+
origin: _optionalChain([commit, 'optionalAccess', _550 => _550.kind]) === "execute" || _optionalChain([commit, 'optionalAccess', _551 => _551.kind]) === "merge" ? commit.origin : "user",
|
|
12597
12741
|
...commit ? { commit } : {},
|
|
12598
12742
|
addedNodes,
|
|
12599
12743
|
removedNodes,
|
|
@@ -12612,8 +12756,8 @@ function createCanvasChangeFeed(options) {
|
|
|
12612
12756
|
const noteCommit = (event) => {
|
|
12613
12757
|
pending = event;
|
|
12614
12758
|
};
|
|
12615
|
-
const offHistory = _optionalChain([options, 'access',
|
|
12616
|
-
const offCanvas = _optionalChain([options, 'access',
|
|
12759
|
+
const offHistory = _optionalChain([options, 'access', _552 => _552.history, 'optionalAccess', _553 => _553.onCommit, 'call', _554 => _554(noteCommit)]);
|
|
12760
|
+
const offCanvas = _optionalChain([options, 'access', _555 => _555.subscribe, 'optionalCall', _556 => _556(() => {
|
|
12617
12761
|
check();
|
|
12618
12762
|
})]);
|
|
12619
12763
|
return {
|
|
@@ -12632,8 +12776,8 @@ function createCanvasChangeFeed(options) {
|
|
|
12632
12776
|
},
|
|
12633
12777
|
noteCommit,
|
|
12634
12778
|
dispose: () => {
|
|
12635
|
-
_optionalChain([offHistory, 'optionalCall',
|
|
12636
|
-
_optionalChain([offCanvas, 'optionalCall',
|
|
12779
|
+
_optionalChain([offHistory, 'optionalCall', _557 => _557()]);
|
|
12780
|
+
_optionalChain([offCanvas, 'optionalCall', _558 => _558()]);
|
|
12637
12781
|
listeners.clear();
|
|
12638
12782
|
}
|
|
12639
12783
|
};
|
|
@@ -12643,7 +12787,7 @@ function createCanvasChangeFeed(options) {
|
|
|
12643
12787
|
var READ2 = { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false };
|
|
12644
12788
|
var WRITE = { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false };
|
|
12645
12789
|
var labelOf2 = (node) => {
|
|
12646
|
-
const label = _nullishCoalesce(_nullishCoalesce(_optionalChain([node, 'access',
|
|
12790
|
+
const label = _nullishCoalesce(_nullishCoalesce(_optionalChain([node, 'access', _559 => _559.data, 'optionalAccess', _560 => _560.label]), () => ( _optionalChain([node, 'access', _561 => _561.data, 'optionalAccess', _562 => _562.name]))), () => ( _optionalChain([node, 'access', _563 => _563.data, 'optionalAccess', _564 => _564.title])));
|
|
12647
12791
|
return typeof label === "string" && label !== "" ? label : void 0;
|
|
12648
12792
|
};
|
|
12649
12793
|
var proposalIdArg = {
|
|
@@ -12724,7 +12868,7 @@ function createCanvasProposalToolProvider(proposals, options = {}) {
|
|
|
12724
12868
|
},
|
|
12725
12869
|
annotations: { title: "Propose nodes", ...WRITE },
|
|
12726
12870
|
handler: (args, context) => {
|
|
12727
|
-
const origin = _optionalChain([context, 'access',
|
|
12871
|
+
const origin = _optionalChain([context, 'access', _565 => _565.actor, 'optionalAccess', _566 => _566.id]) ? `agent:${context.actor.id}` : options.fallbackOrigin;
|
|
12728
12872
|
const proposal = proposals.propose({ title: args.title, rationale: args.rationale, nodes: args.nodes, edges: args.edges, ...origin ? { origin } : {} });
|
|
12729
12873
|
const { id: _id, missing: _missing, createdAt: _createdAt, ...rest } = describe(proposal);
|
|
12730
12874
|
return { proposalId: proposal.id, ...rest };
|
|
@@ -12776,7 +12920,7 @@ function stickerCanvasNode(placement, id) {
|
|
|
12776
12920
|
const { description, asset } = placement;
|
|
12777
12921
|
const silhouette = _nullishCoalesce((asset.kind === "svg" ? asset.silhouette : void 0), () => ( description.silhouette));
|
|
12778
12922
|
if (!silhouette) throw new (0, _chunkU67EN7GGcjs.StickerError)("unsupported_format", `"${placement.ref}" has no outline (silhouette); the canvas places stickers by their outline. Pick one whose describe_sticker lists a silhouette.`);
|
|
12779
|
-
const fill = _nullishCoalesce(_nullishCoalesce(placement.colour, () => ( _optionalChain([description, 'access',
|
|
12923
|
+
const fill = _nullishCoalesce(_nullishCoalesce(placement.colour, () => ( _optionalChain([description, 'access', _567 => _567.colours, 'optionalAccess', _568 => _568[0]]))), () => ( "#1f2937"));
|
|
12780
12924
|
const shape = { kind: "path", d: silhouette, viewBox: [0, 0, description.width, description.height], fillRule: "evenodd", fill };
|
|
12781
12925
|
const sticker = { ref: placement.ref, licence: description.licence, ...placement.variant === "dark" ? { variant: "dark" } : {} };
|
|
12782
12926
|
return {
|
|
@@ -13352,4 +13496,7 @@ function createCanvasStickerHost(options) {
|
|
|
13352
13496
|
|
|
13353
13497
|
|
|
13354
13498
|
|
|
13355
|
-
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 = _chunkM5GLQQWGcjs.ANIMATION_TIME_EPSILON; exports.AUTO_LAYOUT_DATA_KEY = AUTO_LAYOUT_DATA_KEY; exports.AnimationEditError = AnimationEditError; exports.AnimationPlayer = _chunkM5GLQQWGcjs.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_MISSING_PATTERN = CANVAS_EFFECT_MISSING_PATTERN; exports.CANVAS_EFFECT_PLACES = CANVAS_EFFECT_PLACES; exports.CANVAS_GRADIENT_PRESETS = _chunkNM3G4VQTcjs.CANVAS_GRADIENT_PRESETS; exports.CANVAS_PROPOSAL_CLASS = CANVAS_PROPOSAL_CLASS; 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 = _chunkE2Z4UARJcjs.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 = _chunkM5GLQQWGcjs.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.arrowGesture = _chunkE2Z4UARJcjs.arrowGesture; 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.bracketGesture = _chunkE2Z4UARJcjs.bracketGesture; exports.brushstrokeScaleBucket = _chunkYQGCPL5Xcjs.brushstrokeScaleBucket; exports.brushstrokeSeed = _chunkWFSYZO5Zcjs.brushstrokeSeed; exports.c4Scene = c4Scene; exports.calculateCursorArrowRotation = calculateCursorArrowRotation; exports.calculateCurvedPath = calculateCurvedPath; exports.calculateDagreReflowDisplacement = calculateDagreReflowDisplacement; exports.calculateDirectionalDisplacement = calculateDirectionalDisplacement; exports.calculateReflowDisplacement = calculateReflowDisplacement; exports.canCombineShapeNodes = canCombineShapeNodes; exports.canOffsetShapeNodes = canOffsetShapeNodes; exports.canOutlineShapeNodeStrokes = canOutlineShapeNodeStrokes; exports.canvasDocumentContentKey = canvasDocumentContentKey; exports.canvasEffectErrorReason = canvasEffectErrorReason; exports.canvasEffectStatus = canvasEffectStatus; exports.canvasEffectsPool = canvasEffectsPool; exports.canvasExplosionToolTarget = canvasExplosionToolTarget; exports.canvasHeight = canvasHeight; exports.canvasNodeCaptureRect = canvasNodeCaptureRect; exports.canvasNodeEffect = canvasNodeEffect; exports.captureCanvasView = captureCanvasView; exports.centerNodes = _chunkEL4PSKFTcjs.centerNodes; exports.centre = _chunkEL4PSKFTcjs.centre; exports.checkGesture = _chunkE2Z4UARJcjs.checkGesture; exports.circleGesture = _chunkE2Z4UARJcjs.circleGesture; exports.clampAnimationValue = clampAnimationValue; exports.clampLayoutSize = clampLayoutSize; exports.closeContour = _chunkGF2RBSDMcjs.closeContour; exports.collectDescendantIds = collectDescendantIds; exports.combineCanvasComponentsAsVariants = combineCanvasComponentsAsVariants; exports.combineShapeNodes = combineShapeNodes; exports.computeCanvasExplosionLayout = computeCanvasExplosionLayout; 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 = _chunkM5GLQQWGcjs.createAnimationPlayer; exports.createBezierTrajectory = createBezierTrajectory; exports.createCanvasAnimationController = createCanvasAnimationController; exports.createCanvasArrangeController = createCanvasArrangeController; exports.createCanvasAutoLayoutController = createCanvasAutoLayoutController; exports.createCanvasCaptureSurface = createCanvasCaptureSurface; exports.createCanvasCaptureToolProvider = createCanvasCaptureToolProvider; exports.createCanvasChangeFeed = createCanvasChangeFeed; exports.createCanvasComponent = createCanvasComponent; exports.createCanvasComponentsController = createCanvasComponentsController; exports.createCanvasDrawController = createCanvasDrawController; exports.createCanvasEditorDocument = createCanvasEditorDocument; exports.createCanvasEffectsController = createCanvasEffectsController; exports.createCanvasEffectsToolProvider = createCanvasEffectsToolProvider; exports.createCanvasExplosionStateController = createCanvasExplosionStateController; exports.createCanvasExplosionToolProvider = createCanvasExplosionToolProvider; exports.createCanvasGestureRecorder = createCanvasGestureRecorder; exports.createCanvasInstance = createCanvasInstance; exports.createCanvasPlaybackLocator = createCanvasPlaybackLocator; exports.createCanvasProposalToolProvider = createCanvasProposalToolProvider; exports.createCanvasProposals = createCanvasProposals; exports.createCanvasScenesStore = createCanvasScenesStore; exports.createCanvasStickerHost = createCanvasStickerHost; exports.createDefaultStrokeStyle = createDefaultStrokeStyle; exports.createFanOutTrajectory = createFanOutTrajectory; exports.createGuideIndex = createGuideIndex; exports.createNodeGuideIndex = createNodeGuideIndex; exports.createNodeLookup = _chunkEL4PSKFTcjs.createNodeLookup; exports.crossGesture = _chunkE2Z4UARJcjs.crossGesture; 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 = _chunkM5GLQQWGcjs.evaluateTrack; exports.excludePaths = _chunkGF2RBSDMcjs.excludePaths; exports.explosionEdgeId = explosionEdgeId; 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 = _chunk4ZC5QJE2cjs.formatOklab; exports.formatVariantName = formatVariantName; exports.freehandBrushstroke = freehandBrushstroke; exports.ganttScene = ganttScene; exports.gestureEdgePoint = _chunkE2Z4UARJcjs.gestureEdgePoint; exports.gestureRandom = _chunkE2Z4UARJcjs.gestureRandom; exports.gestureSeed = _chunkE2Z4UARJcjs.gestureSeed; exports.gestureUnion = _chunkE2Z4UARJcjs.gestureUnion; 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 = _chunkWFSYZO5Zcjs.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 = _chunkM5GLQQWGcjs.interpolateAnimationValue; exports.intersectPaths = _chunkGF2RBSDMcjs.intersectPaths; exports.intersectPolygons = _chunkGF2RBSDMcjs.intersectPolygons; exports.invertNodeUpdates = _chunkEL4PSKFTcjs.invertNodeUpdates; exports.isAgentCursor = isAgentCursor; exports.isAnimationEasing = _chunkDWJJI6RTcjs.isAnimationEasing; exports.isAnimationKeyframe = _chunkM5GLQQWGcjs.isAnimationKeyframe; exports.isAutoLayoutFrame = isAutoLayoutFrame; exports.isBrushedShape = _chunkWFSYZO5Zcjs.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 = _chunkWFSYZO5Zcjs.listCanvasBrushes; exports.listCanvasComponents = listCanvasComponents; exports.loadCanvasBrushstrokeRenderer = _chunkWFSYZO5Zcjs.loadCanvasBrushstrokeRenderer; exports.lockNodes = _chunkEL4PSKFTcjs.lockNodes; exports.makeSizingCoherent = makeSizingCoherent; exports.matchArrangeShortcut = _chunkE2Z4UARJcjs.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 = _chunk4ZC5QJE2cjs.mixColorsOklab; exports.moveKeyframes = moveKeyframes; exports.moveLayoutChild = moveLayoutChild; exports.multiPolygonArea = _chunkGF2RBSDMcjs.multiPolygonArea; exports.multiPolygonBounds = _chunkGF2RBSDMcjs.multiPolygonBounds; exports.nearestHandlePositions = nearestHandlePositions; exports.nodeSizeOf = nodeSizeOf; exports.normalizeBezierPath = _chunkGF2RBSDMcjs.normalizeBezierPath; exports.normalizeKeyframes = _chunkM5GLQQWGcjs.normalizeKeyframes; exports.offsetPath = _chunkGF2RBSDMcjs.offsetPath; exports.offsetShapeNodes = offsetShapeNodes; exports.oklabToRgb = _chunk4ZC5QJE2cjs.oklabToRgb; exports.oppositePosition = oppositePosition; exports.outlineShapeNodeStrokes = outlineShapeNodeStrokes; exports.outlineStroke = _chunkGF2RBSDMcjs.outlineStroke; exports.overlaps = _chunkEL4PSKFTcjs.overlaps; exports.pageHidden = _chunkM5GLQQWGcjs.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 = _chunk4ZC5QJE2cjs.parseOklab; exports.parseSvgPath = _chunkNM3G4VQTcjs.parseSvgPath; exports.parseVariantName = parseVariantName; exports.pasteKeyframes = pasteKeyframes; exports.pathBoolean = _chunkGF2RBSDMcjs.pathBoolean; exports.pathBooleanSelect = _chunkGF2RBSDMcjs.pathBooleanSelect; exports.pathDataToPolyline = _chunkWFSYZO5Zcjs.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 = _chunkWFSYZO5Zcjs.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 = _chunkM5GLQQWGcjs.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.renderCanvasBrushPreview = _chunkWFSYZO5Zcjs.renderCanvasBrushPreview; exports.renderCanvasBrushSwatch = _chunkWFSYZO5Zcjs.renderCanvasBrushSwatch; exports.renderShapeBrushstroke = _chunkWFSYZO5Zcjs.renderShapeBrushstroke; exports.reorderNodes = _chunkEL4PSKFTcjs.reorderNodes; exports.repositionNodesTo = repositionNodesTo; exports.resetCanvasInstanceOverrides = resetCanvasInstanceOverrides; exports.resizeHandleAxes = resizeHandleAxes; exports.resolveCanvasBrushSpec = _chunkWFSYZO5Zcjs.resolveCanvasBrushSpec; 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 = _chunk4ZC5QJE2cjs.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.stickerCanvasNode = stickerCanvasNode; exports.streamedDiagramText = streamedDiagramText; exports.streamlinePoints = streamlinePoints; exports.strikeGesture = _chunkE2Z4UARJcjs.strikeGesture; 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.underlineGesture = _chunkE2Z4UARJcjs.underlineGesture; exports.unionPolygons = _chunkGF2RBSDMcjs.unionPolygons; exports.unitePaths = _chunkGF2RBSDMcjs.unitePaths; exports.unlockNodes = _chunkEL4PSKFTcjs.unlockNodes; exports.updateKeyframe = updateKeyframe; exports.validateCanvasBrush = _chunkWFSYZO5Zcjs.validateCanvasBrush; exports.validateCanvasBrushPaint = _chunkWFSYZO5Zcjs.validateCanvasBrushPaint; exports.windingNumber = _chunkGF2RBSDMcjs.windingNumber; exports.withNodeAnimation = withNodeAnimation; exports.withStyleOpacity = withStyleOpacity; exports.withStyleSize = _chunkEL4PSKFTcjs.withStyleSize; exports.wouldCreateComponentCycle = wouldCreateComponentCycle; exports.wrapAnimationTime = _chunkM5GLQQWGcjs.wrapAnimationTime; exports.writeNodeStyleProperty = writeNodeStyleProperty; exports.writeOverrideGroup = writeOverrideGroup; exports.xToTime = xToTime; exports.xorPolygons = _chunkGF2RBSDMcjs.xorPolygons; exports.xyChartScene = xyChartScene; exports.xyChartSpec = xyChartSpec;
|
|
13499
|
+
|
|
13500
|
+
|
|
13501
|
+
|
|
13502
|
+
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 = _chunkM5GLQQWGcjs.ANIMATION_TIME_EPSILON; exports.AUTO_LAYOUT_DATA_KEY = AUTO_LAYOUT_DATA_KEY; exports.AnimationEditError = AnimationEditError; exports.AnimationPlayer = _chunkM5GLQQWGcjs.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_MISSING_PATTERN = CANVAS_EFFECT_MISSING_PATTERN; exports.CANVAS_EFFECT_PLACES = CANVAS_EFFECT_PLACES; exports.CANVAS_GRADIENT_PRESETS = _chunkNM3G4VQTcjs.CANVAS_GRADIENT_PRESETS; exports.CANVAS_PROPOSAL_CLASS = CANVAS_PROPOSAL_CLASS; 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 = _chunkE2Z4UARJcjs.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 = _chunkM5GLQQWGcjs.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.applyGraphDifferences = applyGraphDifferences; exports.applyNodeUpdates = _chunkEL4PSKFTcjs.applyNodeUpdates; exports.applyShapeCombination = applyShapeCombination; exports.applyShapeReplacement = applyShapeReplacement; exports.arcToCubics = _chunkGF2RBSDMcjs.arcToCubics; exports.architectureScene = architectureScene; exports.arrowGesture = _chunkE2Z4UARJcjs.arrowGesture; 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.bracketGesture = _chunkE2Z4UARJcjs.bracketGesture; exports.brushstrokeScaleBucket = _chunkYQGCPL5Xcjs.brushstrokeScaleBucket; exports.brushstrokeSeed = _chunkWFSYZO5Zcjs.brushstrokeSeed; exports.c4Scene = c4Scene; exports.calculateCursorArrowRotation = calculateCursorArrowRotation; exports.calculateCurvedPath = calculateCurvedPath; exports.calculateDagreReflowDisplacement = calculateDagreReflowDisplacement; exports.calculateDirectionalDisplacement = calculateDirectionalDisplacement; exports.calculateGraphDifferences = calculateGraphDifferences; exports.calculateReflowDisplacement = calculateReflowDisplacement; exports.canCombineShapeNodes = canCombineShapeNodes; exports.canOffsetShapeNodes = canOffsetShapeNodes; exports.canOutlineShapeNodeStrokes = canOutlineShapeNodeStrokes; exports.canvasDocumentContentKey = canvasDocumentContentKey; exports.canvasEffectErrorReason = canvasEffectErrorReason; exports.canvasEffectStatus = canvasEffectStatus; exports.canvasEffectsPool = canvasEffectsPool; exports.canvasExplosionToolTarget = canvasExplosionToolTarget; exports.canvasHeight = canvasHeight; exports.canvasNodeCaptureRect = canvasNodeCaptureRect; exports.canvasNodeEffect = canvasNodeEffect; exports.captureCanvasView = captureCanvasView; exports.centerNodes = _chunkEL4PSKFTcjs.centerNodes; exports.centre = _chunkEL4PSKFTcjs.centre; exports.checkGesture = _chunkE2Z4UARJcjs.checkGesture; exports.circleGesture = _chunkE2Z4UARJcjs.circleGesture; exports.clampAnimationValue = clampAnimationValue; exports.clampLayoutSize = clampLayoutSize; exports.closeContour = _chunkGF2RBSDMcjs.closeContour; exports.collectDescendantIds = collectDescendantIds; exports.combineCanvasComponentsAsVariants = combineCanvasComponentsAsVariants; exports.combineShapeNodes = combineShapeNodes; exports.computeCanvasExplosionLayout = computeCanvasExplosionLayout; 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 = _chunkM5GLQQWGcjs.createAnimationPlayer; exports.createBezierTrajectory = createBezierTrajectory; exports.createCanvasAnimationController = createCanvasAnimationController; exports.createCanvasArrangeController = createCanvasArrangeController; exports.createCanvasAutoLayoutController = createCanvasAutoLayoutController; exports.createCanvasCaptureSurface = createCanvasCaptureSurface; exports.createCanvasCaptureToolProvider = createCanvasCaptureToolProvider; exports.createCanvasChangeFeed = createCanvasChangeFeed; exports.createCanvasComponent = createCanvasComponent; exports.createCanvasComponentsController = createCanvasComponentsController; exports.createCanvasDrawController = createCanvasDrawController; exports.createCanvasEditorDocument = createCanvasEditorDocument; exports.createCanvasEffectsController = createCanvasEffectsController; exports.createCanvasEffectsToolProvider = createCanvasEffectsToolProvider; exports.createCanvasExplosionStateController = createCanvasExplosionStateController; exports.createCanvasExplosionToolProvider = createCanvasExplosionToolProvider; exports.createCanvasGestureRecorder = createCanvasGestureRecorder; exports.createCanvasInstance = createCanvasInstance; exports.createCanvasPlaybackLocator = createCanvasPlaybackLocator; exports.createCanvasProposalToolProvider = createCanvasProposalToolProvider; exports.createCanvasProposals = createCanvasProposals; exports.createCanvasScenesStore = createCanvasScenesStore; exports.createCanvasStickerHost = createCanvasStickerHost; exports.createDefaultStrokeStyle = createDefaultStrokeStyle; exports.createFanOutTrajectory = createFanOutTrajectory; exports.createGuideIndex = createGuideIndex; exports.createNodeGuideIndex = createNodeGuideIndex; exports.createNodeLookup = _chunkEL4PSKFTcjs.createNodeLookup; exports.crossGesture = _chunkE2Z4UARJcjs.crossGesture; 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 = _chunkM5GLQQWGcjs.evaluateTrack; exports.excludePaths = _chunkGF2RBSDMcjs.excludePaths; exports.explosionEdgeId = explosionEdgeId; 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 = _chunk4ZC5QJE2cjs.formatOklab; exports.formatVariantName = formatVariantName; exports.freehandBrushstroke = freehandBrushstroke; exports.ganttScene = ganttScene; exports.gestureEdgePoint = _chunkE2Z4UARJcjs.gestureEdgePoint; exports.gestureRandom = _chunkE2Z4UARJcjs.gestureRandom; exports.gestureSeed = _chunkE2Z4UARJcjs.gestureSeed; exports.gestureUnion = _chunkE2Z4UARJcjs.gestureUnion; 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 = _chunkWFSYZO5Zcjs.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 = _chunkM5GLQQWGcjs.interpolateAnimationValue; exports.intersectPaths = _chunkGF2RBSDMcjs.intersectPaths; exports.intersectPolygons = _chunkGF2RBSDMcjs.intersectPolygons; exports.invertNodeUpdates = _chunkEL4PSKFTcjs.invertNodeUpdates; exports.isAgentCursor = isAgentCursor; exports.isAnimationEasing = _chunkDWJJI6RTcjs.isAnimationEasing; exports.isAnimationKeyframe = _chunkM5GLQQWGcjs.isAnimationKeyframe; exports.isAutoLayoutFrame = isAutoLayoutFrame; exports.isBrushedShape = _chunkWFSYZO5Zcjs.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 = _chunkWFSYZO5Zcjs.listCanvasBrushes; exports.listCanvasComponents = listCanvasComponents; exports.loadCanvasBrushstrokeRenderer = _chunkWFSYZO5Zcjs.loadCanvasBrushstrokeRenderer; exports.lockNodes = _chunkEL4PSKFTcjs.lockNodes; exports.makeSizingCoherent = makeSizingCoherent; exports.matchArrangeShortcut = _chunkE2Z4UARJcjs.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 = _chunk4ZC5QJE2cjs.mixColorsOklab; exports.moveKeyframes = moveKeyframes; exports.moveLayoutChild = moveLayoutChild; exports.multiPolygonArea = _chunkGF2RBSDMcjs.multiPolygonArea; exports.multiPolygonBounds = _chunkGF2RBSDMcjs.multiPolygonBounds; exports.nearestHandlePositions = nearestHandlePositions; exports.nodeSizeOf = nodeSizeOf; exports.normalizeBezierPath = _chunkGF2RBSDMcjs.normalizeBezierPath; exports.normalizeKeyframes = _chunkM5GLQQWGcjs.normalizeKeyframes; exports.offsetPath = _chunkGF2RBSDMcjs.offsetPath; exports.offsetShapeNodes = offsetShapeNodes; exports.oklabToRgb = _chunk4ZC5QJE2cjs.oklabToRgb; exports.oppositePosition = oppositePosition; exports.outlineShapeNodeStrokes = outlineShapeNodeStrokes; exports.outlineStroke = _chunkGF2RBSDMcjs.outlineStroke; exports.overlaps = _chunkEL4PSKFTcjs.overlaps; exports.pageHidden = _chunkM5GLQQWGcjs.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 = _chunk4ZC5QJE2cjs.parseOklab; exports.parseSvgPath = _chunkNM3G4VQTcjs.parseSvgPath; exports.parseVariantName = parseVariantName; exports.pasteKeyframes = pasteKeyframes; exports.pathBoolean = _chunkGF2RBSDMcjs.pathBoolean; exports.pathBooleanSelect = _chunkGF2RBSDMcjs.pathBooleanSelect; exports.pathDataToPolyline = _chunkWFSYZO5Zcjs.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 = _chunkWFSYZO5Zcjs.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 = _chunkM5GLQQWGcjs.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.renderCanvasBrushPreview = _chunkWFSYZO5Zcjs.renderCanvasBrushPreview; exports.renderCanvasBrushSwatch = _chunkWFSYZO5Zcjs.renderCanvasBrushSwatch; exports.renderShapeBrushstroke = _chunkWFSYZO5Zcjs.renderShapeBrushstroke; exports.reorderNodes = _chunkEL4PSKFTcjs.reorderNodes; exports.repositionNodesTo = repositionNodesTo; exports.resetCanvasInstanceOverrides = resetCanvasInstanceOverrides; exports.resizeHandleAxes = resizeHandleAxes; exports.resolveCanvasBrushSpec = _chunkWFSYZO5Zcjs.resolveCanvasBrushSpec; 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 = _chunk4ZC5QJE2cjs.rgbToOklab; exports.ringSignedArea = _chunkGF2RBSDMcjs.ringSignedArea; exports.runCanvasNodeEffect = runCanvasNodeEffect; exports.runMultiNodeTransition = runMultiNodeTransition; exports.sampleAnimationFrames = sampleAnimationFrames; exports.sanitizeCanvasDocument = sanitizeCanvasDocument; 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.stickerCanvasNode = stickerCanvasNode; exports.streamedDiagramText = streamedDiagramText; exports.streamlinePoints = streamlinePoints; exports.strikeGesture = _chunkE2Z4UARJcjs.strikeGesture; 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.underlineGesture = _chunkE2Z4UARJcjs.underlineGesture; exports.unionPolygons = _chunkGF2RBSDMcjs.unionPolygons; exports.unitePaths = _chunkGF2RBSDMcjs.unitePaths; exports.unlockNodes = _chunkEL4PSKFTcjs.unlockNodes; exports.updateKeyframe = updateKeyframe; exports.validateCanvasBrush = _chunkWFSYZO5Zcjs.validateCanvasBrush; exports.validateCanvasBrushPaint = _chunkWFSYZO5Zcjs.validateCanvasBrushPaint; exports.windingNumber = _chunkGF2RBSDMcjs.windingNumber; exports.withNodeAnimation = withNodeAnimation; exports.withStyleOpacity = withStyleOpacity; exports.withStyleSize = _chunkEL4PSKFTcjs.withStyleSize; exports.wouldCreateComponentCycle = wouldCreateComponentCycle; exports.wrapAnimationTime = _chunkM5GLQQWGcjs.wrapAnimationTime; exports.writeNodeStyleProperty = writeNodeStyleProperty; exports.writeOverrideGroup = writeOverrideGroup; exports.xToTime = xToTime; exports.xorPolygons = _chunkGF2RBSDMcjs.xorPolygons; exports.xyChartScene = xyChartScene; exports.xyChartSpec = xyChartSpec;
|