@pixerate/editor-react 0.40.0 → 0.42.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.
@@ -20,313 +20,318 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/canvas/index.ts
21
21
  var canvas_exports = {};
22
22
  __export(canvas_exports, {
23
- ANIMATABLE_PROPERTIES: () => import_canvas26.ANIMATABLE_PROPERTIES,
24
- ANIMATION_DATA_KEY: () => import_canvas26.ANIMATION_DATA_KEY,
25
- ANIMATION_EASING_LABELS: () => import_canvas26.ANIMATION_EASING_LABELS,
26
- ANIMATION_EASING_PRESETS: () => import_canvas26.ANIMATION_EASING_PRESETS,
27
- ANIMATION_TIME_EPSILON: () => import_canvas26.ANIMATION_TIME_EPSILON,
28
- AUTO_LAYOUT_DATA_KEY: () => import_canvas24.AUTO_LAYOUT_DATA_KEY,
23
+ ANIMATABLE_PROPERTIES: () => import_canvas29.ANIMATABLE_PROPERTIES,
24
+ ANIMATION_DATA_KEY: () => import_canvas29.ANIMATION_DATA_KEY,
25
+ ANIMATION_EASING_LABELS: () => import_canvas29.ANIMATION_EASING_LABELS,
26
+ ANIMATION_EASING_PRESETS: () => import_canvas29.ANIMATION_EASING_PRESETS,
27
+ ANIMATION_TIME_EPSILON: () => import_canvas29.ANIMATION_TIME_EPSILON,
28
+ AUTO_LAYOUT_DATA_KEY: () => import_canvas27.AUTO_LAYOUT_DATA_KEY,
29
29
  AgentPresenceLayer: () => AgentPresenceLayer,
30
- AnimationEditError: () => import_canvas26.AnimationEditError,
31
- AnimationPlayer: () => import_canvas26.AnimationPlayer,
30
+ AnimationEditError: () => import_canvas29.AnimationEditError,
31
+ AnimationPlayer: () => import_canvas29.AnimationPlayer,
32
32
  AnimationTimeline: () => AnimationTimeline,
33
- CANVAS_COMPONENT_DRAG_TYPE: () => import_canvas27.CANVAS_COMPONENT_DRAG_TYPE,
34
- CANVAS_GRADIENT_PRESETS: () => import_canvas27.CANVAS_GRADIENT_PRESETS,
35
- CANVAS_TOKEN_PROPERTIES: () => import_canvas25.CANVAS_TOKEN_PROPERTIES,
36
- CHILD_LAYOUT_DATA_KEY: () => import_canvas24.CHILD_LAYOUT_DATA_KEY,
37
- CONNECTION_LINE_TYPES: () => import_canvas20.CONNECTION_LINE_TYPES,
38
- CSS_ANIMATION_PROPERTIES: () => import_canvas26.CSS_ANIMATION_PROPERTIES,
39
- CUBIC_BEZIER_PRESETS: () => import_canvas26.CUBIC_BEZIER_PRESETS,
33
+ CANVAS_COMPONENT_DRAG_TYPE: () => import_canvas30.CANVAS_COMPONENT_DRAG_TYPE,
34
+ CANVAS_GRADIENT_PRESETS: () => import_canvas30.CANVAS_GRADIENT_PRESETS,
35
+ CANVAS_TOKEN_PROPERTIES: () => import_canvas28.CANVAS_TOKEN_PROPERTIES,
36
+ CHILD_LAYOUT_DATA_KEY: () => import_canvas27.CHILD_LAYOUT_DATA_KEY,
37
+ CONNECTION_LINE_TYPES: () => import_canvas23.CONNECTION_LINE_TYPES,
38
+ CSS_ANIMATION_PROPERTIES: () => import_canvas29.CSS_ANIMATION_PROPERTIES,
39
+ CUBIC_BEZIER_PRESETS: () => import_canvas29.CUBIC_BEZIER_PRESETS,
40
40
  CanvasComponentsPanel: () => CanvasComponentsPanel,
41
41
  CanvasDrawLayer: () => CanvasDrawLayer,
42
42
  CanvasGuidesLayer: () => CanvasGuidesLayer,
43
43
  CanvasInstanceInspector: () => CanvasInstanceInspector,
44
- CanvasScenesStore: () => import_canvas20.CanvasScenesStore,
45
- DEFAULT_ARRANGE_SHORTCUTS: () => import_canvas20.DEFAULT_ARRANGE_SHORTCUTS,
46
- MAX_KEYFRAME_REFS: () => import_canvas26.MAX_KEYFRAME_REFS,
47
- ManualClock: () => import_canvas23.ManualClock,
48
- RESIZE_HANDLES: () => import_canvas19.RESIZE_HANDLES,
49
- SHAPE_DATA_KEY: () => import_canvas21.SHAPE_DATA_KEY,
50
- SHAPE_KINDS: () => import_canvas21.SHAPE_KINDS,
51
- SHAPE_NODE_TYPE: () => import_canvas21.SHAPE_NODE_TYPE,
52
- SHAPE_OPERATIONS: () => import_canvas21.SHAPE_OPERATIONS,
44
+ CanvasScenesStore: () => import_canvas23.CanvasScenesStore,
45
+ DEFAULT_ARRANGE_SHORTCUTS: () => import_canvas23.DEFAULT_ARRANGE_SHORTCUTS,
46
+ DiagramPresenceLayer: () => DiagramPresenceLayer,
47
+ MAX_KEYFRAME_REFS: () => import_canvas29.MAX_KEYFRAME_REFS,
48
+ ManualClock: () => import_canvas26.ManualClock,
49
+ MermaidDiagramGroup: () => MermaidDiagramGroup,
50
+ MermaidDiagramNode: () => MermaidDiagramNode,
51
+ MermaidThumbnail: () => MermaidThumbnail,
52
+ RESIZE_HANDLES: () => import_canvas22.RESIZE_HANDLES,
53
+ SHAPE_DATA_KEY: () => import_canvas24.SHAPE_DATA_KEY,
54
+ SHAPE_KINDS: () => import_canvas24.SHAPE_KINDS,
55
+ SHAPE_NODE_TYPE: () => import_canvas24.SHAPE_NODE_TYPE,
56
+ SHAPE_OPERATIONS: () => import_canvas24.SHAPE_OPERATIONS,
53
57
  ShapeNode: () => ShapeNode,
54
- TOKEN_BINDINGS_DATA_KEY: () => import_canvas25.TOKEN_BINDINGS_DATA_KEY,
55
- TOKEN_MODES_DATA_KEY: () => import_canvas25.TOKEN_MODES_DATA_KEY,
58
+ TOKEN_BINDINGS_DATA_KEY: () => import_canvas28.TOKEN_BINDINGS_DATA_KEY,
59
+ TOKEN_MODES_DATA_KEY: () => import_canvas28.TOKEN_MODES_DATA_KEY,
56
60
  TokenBindingPicker: () => TokenBindingPicker,
57
61
  TokenModeSwitcher: () => TokenModeSwitcher,
58
- addCanvasVariant: () => import_canvas27.addCanvasVariant,
59
- addKeyframesAtTime: () => import_canvas26.addKeyframesAtTime,
60
- alignNodes: () => import_canvas20.alignNodes,
61
- angleToSvgLinearCoords: () => import_canvas27.angleToSvgLinearCoords,
62
- animateNode: () => import_canvas26.animateNode,
63
- applyAnimation: () => import_canvas26.applyAnimation,
64
- applyAnimationOverrides: () => import_canvas26.applyAnimationOverrides,
65
- applyConstraints: () => import_canvas24.applyConstraints,
66
- applyNodeUpdates: () => import_canvas20.applyNodeUpdates,
67
- applyShapeCombination: () => import_canvas21.applyShapeCombination,
68
- applyShapeReplacement: () => import_canvas22.applyShapeReplacement,
69
- bezierPathArea: () => import_canvas22.bezierPathArea,
70
- bezierPathBounds: () => import_canvas22.bezierPathBounds,
71
- bezierPathLength: () => import_canvas22.bezierPathLength,
72
- bezierPathPointAtLength: () => import_canvas22.bezierPathPointAtLength,
73
- bezierPathSignedArea: () => import_canvas22.bezierPathSignedArea,
74
- bezierPathToSvg: () => import_canvas22.bezierPathToSvg,
75
- bindCanvasComponentProperty: () => import_canvas27.bindCanvasComponentProperty,
76
- bindCanvasToken: () => import_canvas25.bindCanvasToken,
77
- blendLayout: () => import_canvas23.blendLayout,
78
- boundsOf: () => import_canvas23.boundsOf,
79
- calculateDagreReflowDisplacement: () => import_canvas23.calculateDagreReflowDisplacement,
80
- calculateDirectionalDisplacement: () => import_canvas23.calculateDirectionalDisplacement,
81
- canCombineShapeNodes: () => import_canvas21.canCombineShapeNodes,
82
- canOffsetShapeNodes: () => import_canvas22.canOffsetShapeNodes,
83
- canOutlineShapeNodeStrokes: () => import_canvas22.canOutlineShapeNodeStrokes,
84
- canvasHeight: () => import_canvas23.canvasHeight,
85
- centerNodes: () => import_canvas23.centerNodes,
86
- centre: () => import_canvas23.centre,
87
- clampAnimationValue: () => import_canvas26.clampAnimationValue,
88
- clampLayoutSize: () => import_canvas24.clampLayoutSize,
89
- combineCanvasComponentsAsVariants: () => import_canvas27.combineCanvasComponentsAsVariants,
90
- combineShapeNodes: () => import_canvas21.combineShapeNodes,
91
- computeNodesBoundingBox: () => import_canvas23.computeNodesBoundingBox,
92
- computeSnapGuides: () => import_canvas20.computeSnapGuides,
93
- connectedOnly: () => import_canvas23.connectedOnly,
94
- copyKeyframes: () => import_canvas26.copyKeyframes,
95
- countPathSegments: () => import_canvas22.countPathSegments,
96
- createAnimationPlayer: () => import_canvas26.createAnimationPlayer,
97
- createBezierTrajectory: () => import_canvas23.createBezierTrajectory,
98
- createCanvasAnimationController: () => import_canvas26.createCanvasAnimationController,
99
- createCanvasAutoLayoutController: () => import_canvas24.createCanvasAutoLayoutController,
100
- createCanvasComponent: () => import_canvas27.createCanvasComponent,
101
- createCanvasComponentsController: () => import_canvas27.createCanvasComponentsController,
102
- createCanvasDrawController: () => import_canvas27.createCanvasDrawController,
103
- createCanvasInstance: () => import_canvas27.createCanvasInstance,
104
- createCanvasScenesStore: () => import_canvas20.createCanvasScenesStore,
105
- createDefaultStrokeStyle: () => import_canvas27.createDefaultStrokeStyle,
106
- createFanOutTrajectory: () => import_canvas23.createFanOutTrajectory,
107
- createGuideIndex: () => import_canvas20.createGuideIndex,
108
- createNodeGuideIndex: () => import_canvas20.createNodeGuideIndex,
109
- cubicBezierAt: () => import_canvas26.cubicBezierAt,
110
- cubicPointAt: () => import_canvas19.cubicPointAt,
111
- cubicsToPathData: () => import_canvas19.cubicsToPathData,
112
- dashContours: () => import_canvas22.dashContours,
113
- defaultEasing: () => import_canvas23.defaultEasing,
114
- deleteKeyframes: () => import_canvas26.deleteKeyframes,
115
- detachCanvasInstance: () => import_canvas27.detachCanvasInstance,
116
- detachTokenBindings: () => import_canvas25.detachTokenBindings,
117
- distanceToBezierPath: () => import_canvas22.distanceToBezierPath,
118
- distributeNodes: () => import_canvas20.distributeNodes,
119
- dividePaths: () => import_canvas22.dividePaths,
120
- dividePolygons: () => import_canvas21.dividePolygons,
121
- easingFromInfluence: () => import_canvas26.easingFromInfluence,
122
- easingLabel: () => import_canvas26.easingLabel,
123
- easingToCss: () => import_canvas26.easingToCss,
124
- ensureLayout: () => import_canvas23.ensureLayout,
125
- estimateCanvasHeight: () => import_canvas23.estimateCanvasHeight,
126
- estimateNodeSize: () => import_canvas23.estimateNodeSize,
127
- evaluateAnimation: () => import_canvas26.evaluateAnimation,
128
- evaluateEasing: () => import_canvas26.evaluateEasing,
129
- evaluateTrack: () => import_canvas26.evaluateTrack,
130
- excludePaths: () => import_canvas22.excludePaths,
131
- exportCssAnimation: () => import_canvas26.exportCssAnimation,
132
- findConnectorSnap: () => import_canvas20.findConnectorSnap,
133
- findStrokesAtPoint: () => import_canvas27.findStrokesAtPoint,
134
- fitCubicRun: () => import_canvas19.fitCubicRun,
135
- fitCubics: () => import_canvas19.fitCubics,
136
- fitFreehandPath: () => import_canvas19.fitFreehandPath,
137
- fitPathData: () => import_canvas19.fitPathData,
138
- fitViewportToNodes: () => import_canvas20.fitViewportToNodes,
139
- fitViewportToRect: () => import_canvas20.fitViewportToRect,
140
- flattenSvgPath: () => import_canvas21.flattenSvgPath,
141
- flowSide: () => import_canvas23.flowSide,
142
- formatAnimationTime: () => import_canvas26.formatAnimationTime,
143
- formatOklab: () => import_canvas26.formatOklab,
144
- getAbsolutePosition: () => import_canvas20.getAbsolutePosition,
145
- getAnimatableProperty: () => import_canvas26.getAnimatableProperty,
146
- getAnimatedProperties: () => import_canvas26.getAnimatedProperties,
147
- getAnimatedValue: () => import_canvas26.getAnimatedValue,
148
- getAnimationDuration: () => import_canvas26.getAnimationDuration,
149
- getAnimationTrack: () => import_canvas26.getAnimationTrack,
150
- getAutoLayout: () => import_canvas24.getAutoLayout,
151
- getAutoLayoutGrid: () => import_canvas24.getAutoLayoutGrid,
152
- getAutoLayoutInsertTarget: () => import_canvas24.getAutoLayoutInsertTarget,
153
- getBindableTokenProperties: () => import_canvas25.getBindableTokenProperties,
154
- getCanvasComponentDragId: () => import_canvas27.getCanvasComponentDragId,
155
- getCanvasTokenProperty: () => import_canvas25.getCanvasTokenProperty,
156
- getCenteredNodePosition: () => import_canvas23.getCenteredNodePosition,
157
- getChildLayout: () => import_canvas24.getChildLayout,
158
- getComponentSourceId: () => import_canvas27.getComponentSourceId,
159
- getCssPropertyAnimations: () => import_canvas26.getCssPropertyAnimations,
160
- getEffectiveTokenModes: () => import_canvas25.getEffectiveTokenModes,
161
- getFlowChildren: () => import_canvas24.getFlowChildren,
162
- getInstanceData: () => import_canvas27.getInstanceData,
163
- getInstanceStatus: () => import_canvas27.getInstanceStatus,
164
- getKeyframeTimes: () => import_canvas26.getKeyframeTimes,
165
- getLayoutParent: () => import_canvas24.getLayoutParent,
166
- getLayoutSizing: () => import_canvas24.getLayoutSizing,
167
- getLayoutedNodes: () => import_canvas23.getLayoutedNodes,
168
- getNextVariantValues: () => import_canvas27.getNextVariantValues,
169
- getNodeAnimation: () => import_canvas26.getNodeAnimation,
170
- getNodeOverrides: () => import_canvas27.getNodeOverrides,
171
- getNodeRect: () => import_canvas20.getNodeRect,
172
- getNodeShape: () => import_canvas21.getNodeShape,
173
- getNodeSize: () => import_canvas20.getNodeSize,
174
- getNodeTokenBindings: () => import_canvas25.getNodeTokenBindings,
175
- getNodeTokenModes: () => import_canvas25.getNodeTokenModes,
176
- getResizingNodeRect: () => import_canvas19.getResizingNodeRect,
177
- getShapeRenderData: () => import_canvas21.getShapeRenderData,
178
- getShapeSvg: () => import_canvas21.getShapeSvg,
179
- getTimelineRows: () => import_canvas26.getTimelineRows,
180
- getTimelineTicks: () => import_canvas26.getTimelineTicks,
181
- getTokenPropertyScope: () => import_canvas25.getTokenPropertyScope,
182
- getTokensForProperty: () => import_canvas25.getTokensForProperty,
183
- gradientToSvgDef: () => import_canvas27.gradientToSvgDef,
184
- handlePoint: () => import_canvas20.handlePoint,
185
- hasVisibleStroke: () => import_canvas22.hasVisibleStroke,
186
- inferResizeHandle: () => import_canvas19.inferResizeHandle,
187
- inspectCanvasInstance: () => import_canvas27.inspectCanvasInstance,
188
- inspectNodeTokens: () => import_canvas25.inspectNodeTokens,
189
- interpolateAnimationValue: () => import_canvas26.interpolateAnimationValue,
190
- intersectPaths: () => import_canvas22.intersectPaths,
191
- intersectPolygons: () => import_canvas21.intersectPolygons,
192
- invertNodeUpdates: () => import_canvas20.invertNodeUpdates,
193
- isAnimationEasing: () => import_canvas26.isAnimationEasing,
194
- isAnimationKeyframe: () => import_canvas26.isAnimationKeyframe,
195
- isAutoLayoutFrame: () => import_canvas24.isAutoLayoutFrame,
196
- isCanvasComponent: () => import_canvas27.isCanvasComponent,
197
- isCanvasComponentSet: () => import_canvas27.isCanvasComponentSet,
198
- isCanvasGradient: () => import_canvas27.isCanvasGradient,
199
- isCanvasInstance: () => import_canvas27.isCanvasInstance,
200
- isCssExportExact: () => import_canvas26.isCssExportExact,
201
- isEventFromTextInput: () => import_canvas23.isEventFromTextInput,
202
- isKeyframeSelected: () => import_canvas26.isKeyframeSelected,
203
- isLocked: () => import_canvas20.isLocked,
204
- isMeasureModifierHeld: () => import_canvas19.isMeasureModifierHeld,
205
- isNodeAnimated: () => import_canvas26.isNodeAnimated,
206
- isShapeDescription: () => import_canvas21.isShapeDescription,
207
- isShapeNode: () => import_canvas21.isShapeNode,
208
- isStraightCubic: () => import_canvas19.isStraightCubic,
209
- isValidCanvasNode: () => import_canvas23.isValidCanvasNode,
210
- isValidUrl: () => import_canvas23.isValidUrl,
211
- layoutAll: () => import_canvas24.layoutAll,
212
- layoutBounds: () => import_canvas23.layoutBounds,
213
- layoutFrame: () => import_canvas24.layoutFrame,
214
- layoutUp: () => import_canvas24.layoutUp,
215
- layoutUpMany: () => import_canvas24.layoutUpMany,
216
- linearPositionTrajectory: () => import_canvas23.linearPositionTrajectory,
217
- linearTrajectory: () => import_canvas23.linearTrajectory,
218
- listCanvasComponents: () => import_canvas27.listCanvasComponents,
219
- lockNodes: () => import_canvas20.lockNodes,
220
- makeSizingCoherent: () => import_canvas24.makeSizingCoherent,
221
- matchArrangeShortcut: () => import_canvas20.matchArrangeShortcut,
222
- matchSize: () => import_canvas20.matchSize,
223
- measureBetween: () => import_canvas19.measureBetween,
224
- measureLabel: () => import_canvas19.measureLabel,
225
- measureSelection: () => import_canvas19.measureSelection,
226
- measureToLine: () => import_canvas19.measureToLine,
227
- mergeNodeUpdates: () => import_canvas24.mergeNodeUpdates,
228
- mixColorsOklab: () => import_canvas26.mixColorsOklab,
229
- moveKeyframes: () => import_canvas26.moveKeyframes,
230
- moveLayoutChild: () => import_canvas24.moveLayoutChild,
231
- multiPolygonArea: () => import_canvas21.multiPolygonArea,
232
- multiPolygonBounds: () => import_canvas21.multiPolygonBounds,
233
- nearestHandlePositions: () => import_canvas20.nearestHandlePositions,
234
- normalizeBezierPath: () => import_canvas22.normalizeBezierPath,
235
- normalizeKeyframes: () => import_canvas26.normalizeKeyframes,
236
- offsetPath: () => import_canvas22.offsetPath,
237
- offsetShapeNodes: () => import_canvas22.offsetShapeNodes,
238
- oklabToRgb: () => import_canvas26.oklabToRgb,
239
- oppositePosition: () => import_canvas20.oppositePosition,
240
- outlineShapeNodeStrokes: () => import_canvas22.outlineShapeNodeStrokes,
241
- outlineStroke: () => import_canvas22.outlineStroke,
242
- overlaps: () => import_canvas23.overlaps,
243
- parseCanvasClipboardData: () => import_canvas23.parseCanvasClipboardData,
244
- parseCanvasScenes: () => import_canvas20.parseCanvasScenes,
245
- parseCssEasing: () => import_canvas26.parseCssEasing,
246
- parseCssGradient: () => import_canvas27.parseCssGradient,
247
- parseKeyframeClipboard: () => import_canvas26.parseKeyframeClipboard,
248
- parseOklab: () => import_canvas26.parseOklab,
249
- parseSvgPath: () => import_canvas21.parseSvgPath,
250
- pasteKeyframes: () => import_canvas26.pasteKeyframes,
251
- pathBoolean: () => import_canvas22.pathBoolean,
252
- placeBeside: () => import_canvas23.placeBeside,
253
- playWebAnimations: () => import_canvas26.playWebAnimations,
254
- pointInBezierPath: () => import_canvas22.pointInBezierPath,
255
- pointInMultiPolygon: () => import_canvas21.pointInMultiPolygon,
256
- pointInRings: () => import_canvas21.pointInRings,
257
- polygonArea: () => import_canvas21.polygonArea,
258
- polygonBoolean: () => import_canvas21.polygonBoolean,
259
- polygonToSvgPath: () => import_canvas21.polygonToSvgPath,
260
- positionToSide: () => import_canvas20.positionToSide,
261
- pruneCanvasTokenModes: () => import_canvas25.pruneCanvasTokenModes,
262
- pushCanvasInstanceOverrides: () => import_canvas27.pushCanvasInstanceOverrides,
263
- readAnimatableValue: () => import_canvas26.readAnimatableValue,
264
- readNodeStyleProperty: () => import_canvas25.readNodeStyleProperty,
265
- readStyleSize: () => import_canvas20.readStyleSize,
266
- realClock: () => import_canvas23.realClock,
267
- recordAnimationChanges: () => import_canvas26.recordAnimationChanges,
268
- relayoutUpdates: () => import_canvas24.relayoutUpdates,
269
- remapPastedNodes: () => import_canvas23.remapPastedNodes,
270
- removeCanvasVariant: () => import_canvas27.removeCanvasVariant,
271
- removeTrack: () => import_canvas26.removeTrack,
272
- renameCanvasVariantProperty: () => import_canvas27.renameCanvasVariantProperty,
273
- renameCanvasVariantValue: () => import_canvas27.renameCanvasVariantValue,
274
- reorderNodes: () => import_canvas20.reorderNodes,
275
- repositionNodesTo: () => import_canvas23.repositionNodesTo,
276
- resetCanvasInstanceOverrides: () => import_canvas27.resetCanvasInstanceOverrides,
277
- resizeHandleAxes: () => import_canvas19.resizeHandleAxes,
278
- resolveCanvasGradient: () => import_canvas27.resolveCanvasGradient,
279
- resolveCanvasTokens: () => import_canvas25.resolveCanvasTokens,
280
- resolveEasing: () => import_canvas26.resolveEasing,
281
- resolvePadding: () => import_canvas24.resolvePadding,
282
- restoreCanvasMainComponent: () => import_canvas27.restoreCanvasMainComponent,
283
- revertShapeCombination: () => import_canvas21.revertShapeCombination,
284
- rgbToOklab: () => import_canvas26.rgbToOklab,
285
- ringSignedArea: () => import_canvas21.ringSignedArea,
286
- runMultiNodeTransition: () => import_canvas23.runMultiNodeTransition,
287
- sampleAnimationFrames: () => import_canvas26.sampleAnimationFrames,
288
- scaleKeyframes: () => import_canvas26.scaleKeyframes,
289
- serializeCanvasNodes: () => import_canvas23.serializeCanvasNodes,
290
- setCanvasComponentProperty: () => import_canvas27.setCanvasComponentProperty,
291
- setCanvasInstanceProperties: () => import_canvas27.setCanvasInstanceProperties,
292
- setCanvasTokenMode: () => import_canvas25.setCanvasTokenMode,
293
- setCanvasVariantProperties: () => import_canvas27.setCanvasVariantProperties,
294
- setKeyframe: () => import_canvas26.setKeyframe,
295
- setKeyframeEasing: () => import_canvas26.setKeyframeEasing,
296
- setMotionPath: () => import_canvas26.setMotionPath,
297
- setTrackEnabled: () => import_canvas26.setTrackEnabled,
298
- shapeNodeToBezierPath: () => import_canvas22.shapeNodeToBezierPath,
299
- shapeNodeToPolygon: () => import_canvas21.shapeNodeToPolygon,
300
- shapeToBezierPath: () => import_canvas22.shapeToBezierPath,
301
- shapeToPolygon: () => import_canvas21.shapeToPolygon,
302
- sideToPosition: () => import_canvas20.sideToPosition,
303
- simplifyRing: () => import_canvas21.simplifyRing,
304
- snapKeyframeDelta: () => import_canvas26.snapKeyframeDelta,
305
- snapNodeDrag: () => import_canvas20.snapNodeDrag,
306
- snapNodeResize: () => import_canvas19.snapNodeResize,
307
- snapResize: () => import_canvas19.snapResize,
308
- snapTimeToFrame: () => import_canvas26.snapTimeToFrame,
309
- snapToGrid: () => import_canvas19.snapToGrid,
310
- springAt: () => import_canvas26.springAt,
311
- streamlinePoints: () => import_canvas27.streamlinePoints,
312
- strokeOutlineRings: () => import_canvas22.strokeOutlineRings,
313
- strokePointsToPathData: () => import_canvas27.strokePointsToPathData,
314
- strokeToShapeNode: () => import_canvas27.strokeToShapeNode,
315
- subtractPaths: () => import_canvas22.subtractPaths,
316
- subtractPolygons: () => import_canvas21.subtractPolygons,
317
- swapCanvasInstance: () => import_canvas27.swapCanvasInstance,
318
- syncAllCanvasInstances: () => import_canvas27.syncAllCanvasInstances,
319
- syncCanvasComponents: () => import_canvas27.syncCanvasComponents,
320
- syncCanvasInstance: () => import_canvas27.syncCanvasInstance,
321
- timeToX: () => import_canvas26.timeToX,
322
- toBezierPath: () => import_canvas22.toBezierPath,
323
- toWebAnimations: () => import_canvas26.toWebAnimations,
324
- toggleLockNodes: () => import_canvas20.toggleLockNodes,
325
- transformBezierPath: () => import_canvas22.transformBezierPath,
326
- unionPolygons: () => import_canvas21.unionPolygons,
327
- unitePaths: () => import_canvas22.unitePaths,
328
- unlockNodes: () => import_canvas20.unlockNodes,
329
- updateKeyframe: () => import_canvas26.updateKeyframe,
62
+ addCanvasVariant: () => import_canvas30.addCanvasVariant,
63
+ addKeyframesAtTime: () => import_canvas29.addKeyframesAtTime,
64
+ alignNodes: () => import_canvas23.alignNodes,
65
+ angleToSvgLinearCoords: () => import_canvas30.angleToSvgLinearCoords,
66
+ animateNode: () => import_canvas29.animateNode,
67
+ applyAnimation: () => import_canvas29.applyAnimation,
68
+ applyAnimationOverrides: () => import_canvas29.applyAnimationOverrides,
69
+ applyConstraints: () => import_canvas27.applyConstraints,
70
+ applyNodeUpdates: () => import_canvas23.applyNodeUpdates,
71
+ applyShapeCombination: () => import_canvas24.applyShapeCombination,
72
+ applyShapeReplacement: () => import_canvas25.applyShapeReplacement,
73
+ bezierPathArea: () => import_canvas25.bezierPathArea,
74
+ bezierPathBounds: () => import_canvas25.bezierPathBounds,
75
+ bezierPathLength: () => import_canvas25.bezierPathLength,
76
+ bezierPathPointAtLength: () => import_canvas25.bezierPathPointAtLength,
77
+ bezierPathSignedArea: () => import_canvas25.bezierPathSignedArea,
78
+ bezierPathToSvg: () => import_canvas25.bezierPathToSvg,
79
+ bindCanvasComponentProperty: () => import_canvas30.bindCanvasComponentProperty,
80
+ bindCanvasToken: () => import_canvas28.bindCanvasToken,
81
+ blendLayout: () => import_canvas26.blendLayout,
82
+ boundsOf: () => import_canvas26.boundsOf,
83
+ calculateDagreReflowDisplacement: () => import_canvas26.calculateDagreReflowDisplacement,
84
+ calculateDirectionalDisplacement: () => import_canvas26.calculateDirectionalDisplacement,
85
+ canCombineShapeNodes: () => import_canvas24.canCombineShapeNodes,
86
+ canOffsetShapeNodes: () => import_canvas25.canOffsetShapeNodes,
87
+ canOutlineShapeNodeStrokes: () => import_canvas25.canOutlineShapeNodeStrokes,
88
+ canvasHeight: () => import_canvas26.canvasHeight,
89
+ centerNodes: () => import_canvas26.centerNodes,
90
+ centre: () => import_canvas26.centre,
91
+ clampAnimationValue: () => import_canvas29.clampAnimationValue,
92
+ clampLayoutSize: () => import_canvas27.clampLayoutSize,
93
+ combineCanvasComponentsAsVariants: () => import_canvas30.combineCanvasComponentsAsVariants,
94
+ combineShapeNodes: () => import_canvas24.combineShapeNodes,
95
+ computeNodesBoundingBox: () => import_canvas26.computeNodesBoundingBox,
96
+ computeSnapGuides: () => import_canvas23.computeSnapGuides,
97
+ connectedOnly: () => import_canvas26.connectedOnly,
98
+ copyKeyframes: () => import_canvas29.copyKeyframes,
99
+ countPathSegments: () => import_canvas25.countPathSegments,
100
+ createAnimationPlayer: () => import_canvas29.createAnimationPlayer,
101
+ createBezierTrajectory: () => import_canvas26.createBezierTrajectory,
102
+ createCanvasAnimationController: () => import_canvas29.createCanvasAnimationController,
103
+ createCanvasAutoLayoutController: () => import_canvas27.createCanvasAutoLayoutController,
104
+ createCanvasComponent: () => import_canvas30.createCanvasComponent,
105
+ createCanvasComponentsController: () => import_canvas30.createCanvasComponentsController,
106
+ createCanvasDrawController: () => import_canvas30.createCanvasDrawController,
107
+ createCanvasInstance: () => import_canvas30.createCanvasInstance,
108
+ createCanvasScenesStore: () => import_canvas23.createCanvasScenesStore,
109
+ createDefaultStrokeStyle: () => import_canvas30.createDefaultStrokeStyle,
110
+ createFanOutTrajectory: () => import_canvas26.createFanOutTrajectory,
111
+ createGuideIndex: () => import_canvas23.createGuideIndex,
112
+ createNodeGuideIndex: () => import_canvas23.createNodeGuideIndex,
113
+ cubicBezierAt: () => import_canvas29.cubicBezierAt,
114
+ cubicPointAt: () => import_canvas22.cubicPointAt,
115
+ cubicsToPathData: () => import_canvas22.cubicsToPathData,
116
+ dashContours: () => import_canvas25.dashContours,
117
+ defaultEasing: () => import_canvas26.defaultEasing,
118
+ deleteKeyframes: () => import_canvas29.deleteKeyframes,
119
+ detachCanvasInstance: () => import_canvas30.detachCanvasInstance,
120
+ detachTokenBindings: () => import_canvas28.detachTokenBindings,
121
+ distanceToBezierPath: () => import_canvas25.distanceToBezierPath,
122
+ distributeNodes: () => import_canvas23.distributeNodes,
123
+ dividePaths: () => import_canvas25.dividePaths,
124
+ dividePolygons: () => import_canvas24.dividePolygons,
125
+ easingFromInfluence: () => import_canvas29.easingFromInfluence,
126
+ easingLabel: () => import_canvas29.easingLabel,
127
+ easingToCss: () => import_canvas29.easingToCss,
128
+ ensureLayout: () => import_canvas26.ensureLayout,
129
+ estimateCanvasHeight: () => import_canvas26.estimateCanvasHeight,
130
+ estimateNodeSize: () => import_canvas26.estimateNodeSize,
131
+ evaluateAnimation: () => import_canvas29.evaluateAnimation,
132
+ evaluateEasing: () => import_canvas29.evaluateEasing,
133
+ evaluateTrack: () => import_canvas29.evaluateTrack,
134
+ excludePaths: () => import_canvas25.excludePaths,
135
+ exportCssAnimation: () => import_canvas29.exportCssAnimation,
136
+ findConnectorSnap: () => import_canvas23.findConnectorSnap,
137
+ findStrokesAtPoint: () => import_canvas30.findStrokesAtPoint,
138
+ fitCubicRun: () => import_canvas22.fitCubicRun,
139
+ fitCubics: () => import_canvas22.fitCubics,
140
+ fitFreehandPath: () => import_canvas22.fitFreehandPath,
141
+ fitPathData: () => import_canvas22.fitPathData,
142
+ fitViewportToNodes: () => import_canvas23.fitViewportToNodes,
143
+ fitViewportToRect: () => import_canvas23.fitViewportToRect,
144
+ flattenSvgPath: () => import_canvas24.flattenSvgPath,
145
+ flowSide: () => import_canvas26.flowSide,
146
+ formatAnimationTime: () => import_canvas29.formatAnimationTime,
147
+ formatOklab: () => import_canvas29.formatOklab,
148
+ getAbsolutePosition: () => import_canvas23.getAbsolutePosition,
149
+ getAnimatableProperty: () => import_canvas29.getAnimatableProperty,
150
+ getAnimatedProperties: () => import_canvas29.getAnimatedProperties,
151
+ getAnimatedValue: () => import_canvas29.getAnimatedValue,
152
+ getAnimationDuration: () => import_canvas29.getAnimationDuration,
153
+ getAnimationTrack: () => import_canvas29.getAnimationTrack,
154
+ getAutoLayout: () => import_canvas27.getAutoLayout,
155
+ getAutoLayoutGrid: () => import_canvas27.getAutoLayoutGrid,
156
+ getAutoLayoutInsertTarget: () => import_canvas27.getAutoLayoutInsertTarget,
157
+ getBindableTokenProperties: () => import_canvas28.getBindableTokenProperties,
158
+ getCanvasComponentDragId: () => import_canvas30.getCanvasComponentDragId,
159
+ getCanvasTokenProperty: () => import_canvas28.getCanvasTokenProperty,
160
+ getCenteredNodePosition: () => import_canvas26.getCenteredNodePosition,
161
+ getChildLayout: () => import_canvas27.getChildLayout,
162
+ getComponentSourceId: () => import_canvas30.getComponentSourceId,
163
+ getCssPropertyAnimations: () => import_canvas29.getCssPropertyAnimations,
164
+ getEffectiveTokenModes: () => import_canvas28.getEffectiveTokenModes,
165
+ getFlowChildren: () => import_canvas27.getFlowChildren,
166
+ getInstanceData: () => import_canvas30.getInstanceData,
167
+ getInstanceStatus: () => import_canvas30.getInstanceStatus,
168
+ getKeyframeTimes: () => import_canvas29.getKeyframeTimes,
169
+ getLayoutParent: () => import_canvas27.getLayoutParent,
170
+ getLayoutSizing: () => import_canvas27.getLayoutSizing,
171
+ getLayoutedNodes: () => import_canvas26.getLayoutedNodes,
172
+ getNextVariantValues: () => import_canvas30.getNextVariantValues,
173
+ getNodeAnimation: () => import_canvas29.getNodeAnimation,
174
+ getNodeOverrides: () => import_canvas30.getNodeOverrides,
175
+ getNodeRect: () => import_canvas23.getNodeRect,
176
+ getNodeShape: () => import_canvas24.getNodeShape,
177
+ getNodeSize: () => import_canvas23.getNodeSize,
178
+ getNodeTokenBindings: () => import_canvas28.getNodeTokenBindings,
179
+ getNodeTokenModes: () => import_canvas28.getNodeTokenModes,
180
+ getResizingNodeRect: () => import_canvas22.getResizingNodeRect,
181
+ getShapeRenderData: () => import_canvas24.getShapeRenderData,
182
+ getShapeSvg: () => import_canvas24.getShapeSvg,
183
+ getTimelineRows: () => import_canvas29.getTimelineRows,
184
+ getTimelineTicks: () => import_canvas29.getTimelineTicks,
185
+ getTokenPropertyScope: () => import_canvas28.getTokenPropertyScope,
186
+ getTokensForProperty: () => import_canvas28.getTokensForProperty,
187
+ gradientToSvgDef: () => import_canvas30.gradientToSvgDef,
188
+ handlePoint: () => import_canvas23.handlePoint,
189
+ hasVisibleStroke: () => import_canvas25.hasVisibleStroke,
190
+ inferResizeHandle: () => import_canvas22.inferResizeHandle,
191
+ inspectCanvasInstance: () => import_canvas30.inspectCanvasInstance,
192
+ inspectNodeTokens: () => import_canvas28.inspectNodeTokens,
193
+ interpolateAnimationValue: () => import_canvas29.interpolateAnimationValue,
194
+ intersectPaths: () => import_canvas25.intersectPaths,
195
+ intersectPolygons: () => import_canvas24.intersectPolygons,
196
+ invertNodeUpdates: () => import_canvas23.invertNodeUpdates,
197
+ isAnimationEasing: () => import_canvas29.isAnimationEasing,
198
+ isAnimationKeyframe: () => import_canvas29.isAnimationKeyframe,
199
+ isAutoLayoutFrame: () => import_canvas27.isAutoLayoutFrame,
200
+ isCanvasComponent: () => import_canvas30.isCanvasComponent,
201
+ isCanvasComponentSet: () => import_canvas30.isCanvasComponentSet,
202
+ isCanvasGradient: () => import_canvas30.isCanvasGradient,
203
+ isCanvasInstance: () => import_canvas30.isCanvasInstance,
204
+ isCssExportExact: () => import_canvas29.isCssExportExact,
205
+ isEventFromTextInput: () => import_canvas26.isEventFromTextInput,
206
+ isKeyframeSelected: () => import_canvas29.isKeyframeSelected,
207
+ isLocked: () => import_canvas23.isLocked,
208
+ isMeasureModifierHeld: () => import_canvas22.isMeasureModifierHeld,
209
+ isNodeAnimated: () => import_canvas29.isNodeAnimated,
210
+ isShapeDescription: () => import_canvas24.isShapeDescription,
211
+ isShapeNode: () => import_canvas24.isShapeNode,
212
+ isStraightCubic: () => import_canvas22.isStraightCubic,
213
+ isValidCanvasNode: () => import_canvas26.isValidCanvasNode,
214
+ isValidUrl: () => import_canvas26.isValidUrl,
215
+ layoutAll: () => import_canvas27.layoutAll,
216
+ layoutBounds: () => import_canvas26.layoutBounds,
217
+ layoutFrame: () => import_canvas27.layoutFrame,
218
+ layoutUp: () => import_canvas27.layoutUp,
219
+ layoutUpMany: () => import_canvas27.layoutUpMany,
220
+ linearPositionTrajectory: () => import_canvas26.linearPositionTrajectory,
221
+ linearTrajectory: () => import_canvas26.linearTrajectory,
222
+ listCanvasComponents: () => import_canvas30.listCanvasComponents,
223
+ lockNodes: () => import_canvas23.lockNodes,
224
+ makeSizingCoherent: () => import_canvas27.makeSizingCoherent,
225
+ matchArrangeShortcut: () => import_canvas23.matchArrangeShortcut,
226
+ matchSize: () => import_canvas23.matchSize,
227
+ measureBetween: () => import_canvas22.measureBetween,
228
+ measureLabel: () => import_canvas22.measureLabel,
229
+ measureSelection: () => import_canvas22.measureSelection,
230
+ measureToLine: () => import_canvas22.measureToLine,
231
+ mergeNodeUpdates: () => import_canvas27.mergeNodeUpdates,
232
+ mermaidNodeStyle: () => mermaidNodeStyle,
233
+ mixColorsOklab: () => import_canvas29.mixColorsOklab,
234
+ moveKeyframes: () => import_canvas29.moveKeyframes,
235
+ moveLayoutChild: () => import_canvas27.moveLayoutChild,
236
+ multiPolygonArea: () => import_canvas24.multiPolygonArea,
237
+ multiPolygonBounds: () => import_canvas24.multiPolygonBounds,
238
+ nearestHandlePositions: () => import_canvas23.nearestHandlePositions,
239
+ normalizeBezierPath: () => import_canvas25.normalizeBezierPath,
240
+ normalizeKeyframes: () => import_canvas29.normalizeKeyframes,
241
+ offsetPath: () => import_canvas25.offsetPath,
242
+ offsetShapeNodes: () => import_canvas25.offsetShapeNodes,
243
+ oklabToRgb: () => import_canvas29.oklabToRgb,
244
+ oppositePosition: () => import_canvas23.oppositePosition,
245
+ outlineShapeNodeStrokes: () => import_canvas25.outlineShapeNodeStrokes,
246
+ outlineStroke: () => import_canvas25.outlineStroke,
247
+ overlaps: () => import_canvas26.overlaps,
248
+ parseCanvasClipboardData: () => import_canvas26.parseCanvasClipboardData,
249
+ parseCanvasScenes: () => import_canvas23.parseCanvasScenes,
250
+ parseCssEasing: () => import_canvas29.parseCssEasing,
251
+ parseCssGradient: () => import_canvas30.parseCssGradient,
252
+ parseKeyframeClipboard: () => import_canvas29.parseKeyframeClipboard,
253
+ parseOklab: () => import_canvas29.parseOklab,
254
+ parseSvgPath: () => import_canvas24.parseSvgPath,
255
+ pasteKeyframes: () => import_canvas29.pasteKeyframes,
256
+ pathBoolean: () => import_canvas25.pathBoolean,
257
+ placeBeside: () => import_canvas26.placeBeside,
258
+ playWebAnimations: () => import_canvas29.playWebAnimations,
259
+ pointInBezierPath: () => import_canvas25.pointInBezierPath,
260
+ pointInMultiPolygon: () => import_canvas24.pointInMultiPolygon,
261
+ pointInRings: () => import_canvas24.pointInRings,
262
+ polygonArea: () => import_canvas24.polygonArea,
263
+ polygonBoolean: () => import_canvas24.polygonBoolean,
264
+ polygonToSvgPath: () => import_canvas24.polygonToSvgPath,
265
+ positionToSide: () => import_canvas23.positionToSide,
266
+ pruneCanvasTokenModes: () => import_canvas28.pruneCanvasTokenModes,
267
+ pushCanvasInstanceOverrides: () => import_canvas30.pushCanvasInstanceOverrides,
268
+ readAnimatableValue: () => import_canvas29.readAnimatableValue,
269
+ readNodeStyleProperty: () => import_canvas28.readNodeStyleProperty,
270
+ readStyleSize: () => import_canvas23.readStyleSize,
271
+ realClock: () => import_canvas26.realClock,
272
+ recordAnimationChanges: () => import_canvas29.recordAnimationChanges,
273
+ relayoutUpdates: () => import_canvas27.relayoutUpdates,
274
+ remapPastedNodes: () => import_canvas26.remapPastedNodes,
275
+ removeCanvasVariant: () => import_canvas30.removeCanvasVariant,
276
+ removeTrack: () => import_canvas29.removeTrack,
277
+ renameCanvasVariantProperty: () => import_canvas30.renameCanvasVariantProperty,
278
+ renameCanvasVariantValue: () => import_canvas30.renameCanvasVariantValue,
279
+ reorderNodes: () => import_canvas23.reorderNodes,
280
+ repositionNodesTo: () => import_canvas26.repositionNodesTo,
281
+ resetCanvasInstanceOverrides: () => import_canvas30.resetCanvasInstanceOverrides,
282
+ resizeHandleAxes: () => import_canvas22.resizeHandleAxes,
283
+ resolveCanvasGradient: () => import_canvas30.resolveCanvasGradient,
284
+ resolveCanvasTokens: () => import_canvas28.resolveCanvasTokens,
285
+ resolveEasing: () => import_canvas29.resolveEasing,
286
+ resolvePadding: () => import_canvas27.resolvePadding,
287
+ restoreCanvasMainComponent: () => import_canvas30.restoreCanvasMainComponent,
288
+ revertShapeCombination: () => import_canvas24.revertShapeCombination,
289
+ rgbToOklab: () => import_canvas29.rgbToOklab,
290
+ ringSignedArea: () => import_canvas24.ringSignedArea,
291
+ runMultiNodeTransition: () => import_canvas26.runMultiNodeTransition,
292
+ sampleAnimationFrames: () => import_canvas29.sampleAnimationFrames,
293
+ scaleKeyframes: () => import_canvas29.scaleKeyframes,
294
+ serializeCanvasNodes: () => import_canvas26.serializeCanvasNodes,
295
+ setCanvasComponentProperty: () => import_canvas30.setCanvasComponentProperty,
296
+ setCanvasInstanceProperties: () => import_canvas30.setCanvasInstanceProperties,
297
+ setCanvasTokenMode: () => import_canvas28.setCanvasTokenMode,
298
+ setCanvasVariantProperties: () => import_canvas30.setCanvasVariantProperties,
299
+ setKeyframe: () => import_canvas29.setKeyframe,
300
+ setKeyframeEasing: () => import_canvas29.setKeyframeEasing,
301
+ setMotionPath: () => import_canvas29.setMotionPath,
302
+ setTrackEnabled: () => import_canvas29.setTrackEnabled,
303
+ shapeNodeToBezierPath: () => import_canvas25.shapeNodeToBezierPath,
304
+ shapeNodeToPolygon: () => import_canvas24.shapeNodeToPolygon,
305
+ shapeToBezierPath: () => import_canvas25.shapeToBezierPath,
306
+ shapeToPolygon: () => import_canvas24.shapeToPolygon,
307
+ sideToPosition: () => import_canvas23.sideToPosition,
308
+ simplifyRing: () => import_canvas24.simplifyRing,
309
+ snapKeyframeDelta: () => import_canvas29.snapKeyframeDelta,
310
+ snapNodeDrag: () => import_canvas23.snapNodeDrag,
311
+ snapNodeResize: () => import_canvas22.snapNodeResize,
312
+ snapResize: () => import_canvas22.snapResize,
313
+ snapTimeToFrame: () => import_canvas29.snapTimeToFrame,
314
+ snapToGrid: () => import_canvas22.snapToGrid,
315
+ springAt: () => import_canvas29.springAt,
316
+ streamlinePoints: () => import_canvas30.streamlinePoints,
317
+ strokeOutlineRings: () => import_canvas25.strokeOutlineRings,
318
+ strokePointsToPathData: () => import_canvas30.strokePointsToPathData,
319
+ strokeToShapeNode: () => import_canvas30.strokeToShapeNode,
320
+ subtractPaths: () => import_canvas25.subtractPaths,
321
+ subtractPolygons: () => import_canvas24.subtractPolygons,
322
+ swapCanvasInstance: () => import_canvas30.swapCanvasInstance,
323
+ syncAllCanvasInstances: () => import_canvas30.syncAllCanvasInstances,
324
+ syncCanvasComponents: () => import_canvas30.syncCanvasComponents,
325
+ syncCanvasInstance: () => import_canvas30.syncCanvasInstance,
326
+ timeToX: () => import_canvas29.timeToX,
327
+ toBezierPath: () => import_canvas25.toBezierPath,
328
+ toWebAnimations: () => import_canvas29.toWebAnimations,
329
+ toggleLockNodes: () => import_canvas23.toggleLockNodes,
330
+ transformBezierPath: () => import_canvas25.transformBezierPath,
331
+ unionPolygons: () => import_canvas24.unionPolygons,
332
+ unitePaths: () => import_canvas25.unitePaths,
333
+ unlockNodes: () => import_canvas23.unlockNodes,
334
+ updateKeyframe: () => import_canvas29.updateKeyframe,
330
335
  useCanvasAnimation: () => useCanvasAnimation,
331
336
  useCanvasArrange: () => useCanvasArrange,
332
337
  useCanvasArrangeShortcuts: () => useCanvasArrangeShortcuts,
@@ -342,14 +347,19 @@ __export(canvas_exports, {
342
347
  useCanvasScenes: () => useCanvasScenes,
343
348
  useCanvasShortcuts: () => useCanvasShortcuts,
344
349
  useCanvasTokens: () => useCanvasTokens,
350
+ useDiagramDirector: () => useDiagramDirector,
351
+ useDiagramState: () => useDiagramState,
352
+ useMermaidDiagram: () => useMermaidDiagram,
353
+ useMermaidStream: () => useMermaidStream,
354
+ usePresenceState: () => usePresenceState,
345
355
  useStreamingCanvas: () => useStreamingCanvas,
346
- withNodeAnimation: () => import_canvas26.withNodeAnimation,
347
- withStyleSize: () => import_canvas20.withStyleSize,
348
- wouldCreateComponentCycle: () => import_canvas27.wouldCreateComponentCycle,
349
- wrapAnimationTime: () => import_canvas26.wrapAnimationTime,
350
- writeNodeStyleProperty: () => import_canvas25.writeNodeStyleProperty,
351
- xToTime: () => import_canvas26.xToTime,
352
- xorPolygons: () => import_canvas21.xorPolygons
356
+ withNodeAnimation: () => import_canvas29.withNodeAnimation,
357
+ withStyleSize: () => import_canvas23.withStyleSize,
358
+ wouldCreateComponentCycle: () => import_canvas30.wouldCreateComponentCycle,
359
+ wrapAnimationTime: () => import_canvas29.wrapAnimationTime,
360
+ writeNodeStyleProperty: () => import_canvas28.writeNodeStyleProperty,
361
+ xToTime: () => import_canvas29.xToTime,
362
+ xorPolygons: () => import_canvas24.xorPolygons
353
363
  });
354
364
  module.exports = __toCommonJS(canvas_exports);
355
365
 
@@ -1568,8 +1578,8 @@ function useCanvasMeasure(options) {
1568
1578
  }
1569
1579
 
1570
1580
  // src/canvas/index.ts
1571
- var import_canvas19 = require("@pixerate/editor/canvas");
1572
- var import_canvas20 = require("@pixerate/editor/canvas");
1581
+ var import_canvas22 = require("@pixerate/editor/canvas");
1582
+ var import_canvas23 = require("@pixerate/editor/canvas");
1573
1583
 
1574
1584
  // src/canvas/ShapeNode.tsx
1575
1585
  var import_canvas11 = require("@pixerate/editor/canvas");
@@ -1627,10 +1637,10 @@ function ShapeNode({ id, data, width, height, selected, className = "", children
1627
1637
  }
1628
1638
 
1629
1639
  // src/canvas/index.ts
1630
- var import_canvas21 = require("@pixerate/editor/canvas");
1631
- var import_canvas22 = require("@pixerate/editor/canvas");
1632
- var import_canvas23 = require("@pixerate/editor/canvas");
1633
1640
  var import_canvas24 = require("@pixerate/editor/canvas");
1641
+ var import_canvas25 = require("@pixerate/editor/canvas");
1642
+ var import_canvas26 = require("@pixerate/editor/canvas");
1643
+ var import_canvas27 = require("@pixerate/editor/canvas");
1634
1644
 
1635
1645
  // src/canvas/useCanvasAutoLayout.ts
1636
1646
  var import_react13 = require("react");
@@ -1842,7 +1852,7 @@ function TokenModeSwitcher({
1842
1852
  }
1843
1853
 
1844
1854
  // src/canvas/index.ts
1845
- var import_canvas25 = require("@pixerate/editor/canvas");
1855
+ var import_canvas28 = require("@pixerate/editor/canvas");
1846
1856
 
1847
1857
  // src/canvas/useCanvasAnimation.ts
1848
1858
  var import_react15 = require("react");
@@ -2096,7 +2106,7 @@ function AnimationTimeline({ animation, nodeIds, width = 360, snapThreshold = 8,
2096
2106
  }
2097
2107
 
2098
2108
  // src/canvas/index.ts
2099
- var import_canvas26 = require("@pixerate/editor/canvas");
2109
+ var import_canvas29 = require("@pixerate/editor/canvas");
2100
2110
 
2101
2111
  // src/canvas/useCanvasComponents.ts
2102
2112
  var import_react17 = require("react");
@@ -2507,7 +2517,210 @@ function CanvasInstanceInspector({
2507
2517
  }
2508
2518
 
2509
2519
  // src/canvas/index.ts
2510
- var import_canvas27 = require("@pixerate/editor/canvas");
2520
+ var import_canvas30 = require("@pixerate/editor/canvas");
2521
+
2522
+ // src/canvas/useMermaidDiagram.ts
2523
+ var import_react19 = require("react");
2524
+ var import_diagram = require("@pixerate/editor/diagram");
2525
+ var import_canvas19 = require("@pixerate/editor/canvas");
2526
+ function useDiagramState(controller) {
2527
+ return (0, import_react19.useSyncExternalStore)(controller.subscribe, controller.getState, controller.getState);
2528
+ }
2529
+ function useMermaidDiagram(controllerOrOptions = {}) {
2530
+ const own = (0, import_react19.useRef)(null);
2531
+ let controller;
2532
+ if (controllerOrOptions instanceof import_diagram.DiagramController) controller = controllerOrOptions;
2533
+ else {
2534
+ if (!own.current) own.current = new import_diagram.DiagramController(controllerOrOptions);
2535
+ controller = own.current;
2536
+ }
2537
+ const layoutOptions = controllerOrOptions instanceof import_diagram.DiagramController ? void 0 : controllerOrOptions.layoutOptions;
2538
+ const state = useDiagramState(controller);
2539
+ const canvas = (0, import_react19.useMemo)(
2540
+ () => (0, import_canvas19.mermaidToCanvas)(state.document, { ...layoutOptions, editable: state.editable }),
2541
+ // eslint-disable-next-line react-hooks/exhaustive-deps
2542
+ [state.document, state.editable]
2543
+ );
2544
+ const layoutRef = (0, import_react19.useRef)(canvas.layout);
2545
+ layoutRef.current = canvas.layout;
2546
+ const actions = (0, import_react19.useMemo)(
2547
+ () => ({
2548
+ apply: (ops, label) => controller.apply(ops, label),
2549
+ load: (source, options) => controller.load(source, options),
2550
+ moveNodes: (moved, all = moved) => {
2551
+ const op = (0, import_canvas19.mermaidMovesFromCanvas)(layoutRef.current, moved, all, { stored: controller.getDocument().meta.layout ?? {} });
2552
+ return op ? controller.apply(op, "Move") : null;
2553
+ },
2554
+ connect: (source, target, label) => controller.apply({ type: "addEdge", edge: { source, target, ...label ? { label } : {} } }, "Connect"),
2555
+ remove: (ids) => {
2556
+ const graph = controller.getDocument().graph;
2557
+ const edgeIds = new Set(graph.edges.map((e) => e.id));
2558
+ const edges = ids.filter((id) => edgeIds.has(id));
2559
+ const nodes = ids.filter((id) => !edgeIds.has(id));
2560
+ const ops = [];
2561
+ if (edges.length) ops.push({ type: "removeEdges", ids: edges });
2562
+ if (nodes.length) ops.push({ type: "removeNodes", ids: nodes });
2563
+ return controller.apply(ops, "Delete");
2564
+ },
2565
+ rename: (id, label) => controller.apply(
2566
+ controller.getDocument().graph.groups.some((g) => g.id === id) ? { type: "renameGroup", id, label } : { type: "renameNode", id, label },
2567
+ "Rename"
2568
+ ),
2569
+ select: (ids) => controller.select(ids),
2570
+ undo: () => void controller.undo(),
2571
+ redo: () => void controller.redo()
2572
+ }),
2573
+ [controller]
2574
+ );
2575
+ return { controller, state, document: state.document, source: state.source, ...canvas, ...actions };
2576
+ }
2577
+ function useMermaidStream(source, options = {}) {
2578
+ const { complete = false, duration = 300, ...layoutOptions } = options;
2579
+ const stream = (0, import_react19.useRef)(null);
2580
+ if (!stream.current) stream.current = new import_canvas19.DiagramStream(layoutOptions);
2581
+ const result = (0, import_react19.useMemo)(() => stream.current.update(source, complete), [source, complete]);
2582
+ const [shown, setShown] = (0, import_react19.useState)({ layout: result.layout, settled: true });
2583
+ const shownRef = (0, import_react19.useRef)(shown.layout);
2584
+ shownRef.current = shown.layout;
2585
+ (0, import_react19.useEffect)(() => {
2586
+ const target = result.layout;
2587
+ if (!target) return setShown({ layout: null, settled: true });
2588
+ const from = shownRef.current;
2589
+ if (!from || duration <= 0 || typeof requestAnimationFrame !== "function") return setShown({ layout: target, settled: true });
2590
+ if (from === target) return;
2591
+ let frame = 0;
2592
+ const start = performance.now();
2593
+ const step = () => {
2594
+ const t = Math.min(1, (performance.now() - start) / duration);
2595
+ setShown({ layout: (0, import_canvas19.blendDiagramLayout)(from, target, (0, import_canvas19.easeDiagramTween)(t)), settled: t >= 1 });
2596
+ if (t < 1) frame = requestAnimationFrame(step);
2597
+ };
2598
+ frame = requestAnimationFrame(step);
2599
+ return () => cancelAnimationFrame(frame);
2600
+ }, [result.layout, duration]);
2601
+ const doc = result.document.tier === "editable" ? result.document : null;
2602
+ const canvas = (0, import_react19.useMemo)(() => {
2603
+ if (!doc || !shown.layout) return { nodes: [], edges: [] };
2604
+ const placed = new Set(Object.keys(shown.layout.positions));
2605
+ const graph = {
2606
+ ...doc.graph,
2607
+ nodes: doc.graph.nodes.filter((n) => placed.has(n.id)),
2608
+ groups: doc.graph.groups.filter((g) => placed.has(g.id)),
2609
+ edges: doc.graph.edges.filter((e) => placed.has(e.source) && placed.has(e.target))
2610
+ };
2611
+ return (0, import_canvas19.mermaidToCanvas)({ ...doc, graph }, { layout: shown.layout });
2612
+ }, [doc, shown.layout]);
2613
+ return { document: doc, ...canvas, layout: shown.layout, settled: shown.settled };
2614
+ }
2615
+
2616
+ // src/canvas/MermaidDiagramNode.tsx
2617
+ var import_canvas20 = require("@pixerate/editor/canvas");
2618
+ var import_jsx_runtime8 = require("react/jsx-runtime");
2619
+ function mermaidNodeStyle(styles = {}, selected = false) {
2620
+ const paint = (0, import_canvas20.mermaidNodePaint)(styles, selected);
2621
+ const { color, "stroke-width": strokeWidth, "stroke-dasharray": strokeDasharray, ...vars } = paint;
2622
+ return { ...vars, color, strokeWidth, strokeDasharray };
2623
+ }
2624
+ function MermaidDiagramNode({ data, width = 160, height = 56, selected, className = "", children }) {
2625
+ const node = data.node;
2626
+ if (!node) return null;
2627
+ const members = (0, import_canvas20.mermaidNodeMembers)(node.data);
2628
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
2629
+ "div",
2630
+ {
2631
+ className: `pixerate-diagram-node ${className}`.trim(),
2632
+ "data-shape": node.shape,
2633
+ "data-selected": selected ? "true" : void 0,
2634
+ style: { position: "relative", width: "100%", height: "100%", ...mermaidNodeStyle(data.resolvedStyles, selected) },
2635
+ children: [
2636
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("svg", { viewBox: `0 0 ${width} ${height}`, preserveAspectRatio: "none", width: "100%", height: "100%", style: { position: "absolute", inset: 0, overflow: "visible" }, "aria-hidden": "true", children: (0, import_canvas20.mermaidShapePaths)(node.shape, width, height).map((path, i) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("path", { d: path.d, style: { ...import_canvas20.MERMAID_SHAPE_PAINT[path.paint], vectorEffect: "non-scaling-stroke" } }, i)) }),
2637
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
2638
+ "div",
2639
+ {
2640
+ style: { position: "relative", display: "flex", flexDirection: "column", alignItems: "center", justifyContent: members.length ? "flex-start" : "center", height: "100%", padding: "6px 10px", boxSizing: "border-box", fontSize: 13, lineHeight: 1.3, textAlign: "center", pointerEvents: "none" },
2641
+ children: [
2642
+ (0, import_canvas20.mermaidLabelLines)(node.label).map((line, i) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { style: { fontWeight: members.length ? 600 : void 0 }, children: line }, i)),
2643
+ members.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { style: { alignSelf: "stretch", marginTop: 4, paddingTop: 4, borderTop: "1px solid var(--pixerate-diagram-node-border)", textAlign: "left", fontSize: 12 }, children: members.map((m, i) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { children: m }, i)) })
2644
+ ]
2645
+ }
2646
+ ),
2647
+ children
2648
+ ]
2649
+ }
2650
+ );
2651
+ }
2652
+ function MermaidDiagramGroup({ data, selected, className = "", children }) {
2653
+ const group = data.group;
2654
+ if (!group) return null;
2655
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
2656
+ "div",
2657
+ {
2658
+ className: `pixerate-diagram-group ${className}`.trim(),
2659
+ "data-selected": selected ? "true" : void 0,
2660
+ style: {
2661
+ width: "100%",
2662
+ height: "100%",
2663
+ boxSizing: "border-box",
2664
+ borderRadius: 8,
2665
+ border: `1px ${selected ? "solid" : "dashed"} ${selected ? "var(--primary, #2563eb)" : data.resolvedStyles?.stroke ?? "var(--border, #cbd5e1)"}`,
2666
+ background: data.resolvedStyles?.fill ?? "var(--muted, rgba(148, 163, 184, 0.08))",
2667
+ color: data.resolvedStyles?.color ?? "var(--muted-foreground, #475569)"
2668
+ },
2669
+ children: [
2670
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { style: { padding: "6px 10px", fontSize: 12, fontWeight: 600 }, children: (0, import_canvas20.mermaidLabelLines)(group.label).join(" ") }),
2671
+ children
2672
+ ]
2673
+ }
2674
+ );
2675
+ }
2676
+
2677
+ // src/canvas/MermaidThumbnail.tsx
2678
+ var import_react20 = require("react");
2679
+ var import_diagram2 = require("@pixerate/editor/diagram");
2680
+ var import_canvas21 = require("@pixerate/editor/canvas");
2681
+ var import_jsx_runtime9 = require("react/jsx-runtime");
2682
+ function MermaidThumbnail({ source, className = "", fallback = null, ...options }) {
2683
+ const doc = (0, import_react20.useMemo)(() => typeof source === "string" ? (0, import_diagram2.parseMermaid)(source) : source, [source]);
2684
+ const key = JSON.stringify(options);
2685
+ const drawn = (0, import_react20.useMemo)(
2686
+ () => doc.tier === "editable" && doc.graph.nodes.length ? (0, import_canvas21.mermaidThumbnailSvg)(doc, options) : null,
2687
+ // eslint-disable-next-line react-hooks/exhaustive-deps
2688
+ [doc, key]
2689
+ );
2690
+ if (!drawn) return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children: fallback });
2691
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: `pixerate-diagram-thumbnail ${className}`.trim(), style: { display: "inline-block", lineHeight: 0 }, dangerouslySetInnerHTML: { __html: drawn.svg } });
2692
+ }
2693
+
2694
+ // src/canvas/useDiagramDirector.ts
2695
+ var import_react21 = require("react");
2696
+ var import_diagram3 = require("@pixerate/editor/diagram");
2697
+ function useDiagramDirector(controller, options) {
2698
+ const placement = (0, import_react21.useRef)(options.placement);
2699
+ placement.current = options.placement;
2700
+ const ref = (0, import_react21.useRef)(null);
2701
+ if (!ref.current) {
2702
+ const presence = new import_diagram3.PresenceStore();
2703
+ ref.current = {
2704
+ presence,
2705
+ director: new import_diagram3.DiagramDirector(controller, presence, { placement: () => placement.current(), speed: options.speed, clock: options.clock, linger: options.linger })
2706
+ };
2707
+ }
2708
+ return ref.current;
2709
+ }
2710
+ function usePresenceState(presence) {
2711
+ return (0, import_react21.useSyncExternalStore)(presence.subscribe, presence.getState, presence.getState);
2712
+ }
2713
+
2714
+ // src/canvas/DiagramPresenceLayer.tsx
2715
+ var import_jsx_runtime10 = require("react/jsx-runtime");
2716
+ function DiagramPresenceLayer({ presence, viewport, className = "" }) {
2717
+ const { actors } = usePresenceState(presence);
2718
+ if (!actors.length) return null;
2719
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: `pixerate-diagram-presence ${className}`.trim(), "aria-hidden": "true", style: { position: "absolute", inset: 0, pointerEvents: "none", overflow: "hidden", zIndex: 50 }, children: actors.map((a) => /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { "data-actor": a.id, style: { position: "absolute", left: 0, top: 0, transform: `translate(${a.x * viewport.zoom + viewport.x}px, ${a.y * viewport.zoom + viewport.y}px)` }, children: [
2720
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("svg", { width: "18", height: "20", viewBox: "0 0 12 18", style: { display: "block", transform: a.pressed ? "scale(0.85)" : void 0, transformOrigin: "0 0" }, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("path", { d: "M0,0 L0,14 L4,10.5 L7,17 L9.5,16 L6.5,9.5 L11.5,9.5 Z", style: { fill: a.color, stroke: "#ffffff", strokeWidth: 1 } }) }),
2721
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { style: { position: "absolute", left: 14, top: 16, whiteSpace: "nowrap", borderRadius: 4, padding: "1px 6px", fontSize: 11, fontWeight: 600, color: "#ffffff", background: a.color }, children: a.message ?? a.name })
2722
+ ] }, a.id)) });
2723
+ }
2511
2724
  // Annotate the CommonJS export names for ESM import in node:
2512
2725
  0 && (module.exports = {
2513
2726
  ANIMATABLE_PROPERTIES,
@@ -2533,8 +2746,12 @@ var import_canvas27 = require("@pixerate/editor/canvas");
2533
2746
  CanvasInstanceInspector,
2534
2747
  CanvasScenesStore,
2535
2748
  DEFAULT_ARRANGE_SHORTCUTS,
2749
+ DiagramPresenceLayer,
2536
2750
  MAX_KEYFRAME_REFS,
2537
2751
  ManualClock,
2752
+ MermaidDiagramGroup,
2753
+ MermaidDiagramNode,
2754
+ MermaidThumbnail,
2538
2755
  RESIZE_HANDLES,
2539
2756
  SHAPE_DATA_KEY,
2540
2757
  SHAPE_KINDS,
@@ -2715,6 +2932,7 @@ var import_canvas27 = require("@pixerate/editor/canvas");
2715
2932
  measureSelection,
2716
2933
  measureToLine,
2717
2934
  mergeNodeUpdates,
2935
+ mermaidNodeStyle,
2718
2936
  mixColorsOklab,
2719
2937
  moveKeyframes,
2720
2938
  moveLayoutChild,
@@ -2832,6 +3050,11 @@ var import_canvas27 = require("@pixerate/editor/canvas");
2832
3050
  useCanvasScenes,
2833
3051
  useCanvasShortcuts,
2834
3052
  useCanvasTokens,
3053
+ useDiagramDirector,
3054
+ useDiagramState,
3055
+ useMermaidDiagram,
3056
+ useMermaidStream,
3057
+ usePresenceState,
2835
3058
  useStreamingCanvas,
2836
3059
  withNodeAnimation,
2837
3060
  withStyleSize,