@grafloria/element 0.3.18 → 0.3.20
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/esm/src/index.js +295 -0
- package/esm/src/lib/dashboard-kit/dashboard.js +590 -0
- package/esm/src/lib/dashboard-kit/grid-binder.js +1633 -0
- package/esm/src/lib/dashboard-kit/grid-mapping.js +164 -0
- package/esm/src/lib/dashboard-kit/index.js +8 -0
- package/esm/src/lib/dashboard-kit/styles.js +205 -0
- package/esm/src/lib/dashboard-kit/widgets.js +379 -0
- package/esm/src/lib/diagram-kit/card.js +199 -0
- package/esm/src/lib/diagram-kit/editing.js +448 -0
- package/esm/src/lib/diagram-kit/er.js +160 -0
- package/esm/src/lib/diagram-kit/handles.js +312 -0
- package/esm/src/lib/diagram-kit/index.js +15 -0
- package/esm/src/lib/diagram-kit/join-guidance.js +322 -0
- package/esm/src/lib/diagram-kit/rows.js +144 -0
- package/esm/src/lib/diagram-kit/styles.js +118 -0
- package/esm/src/lib/diagram-kit/uml.js +135 -0
- package/esm/src/lib/diagram-kit/update.js +244 -0
- package/esm/src/lib/grafloria-flow-element.js +266 -0
- package/esm/src/lib/grafloria.js +69 -0
- package/esm/src/lib/load.js +252 -0
- package/esm/src/lib/node-type-registry.js +42 -0
- package/esm/src/lib/stencil-kit/builders.js +18 -0
- package/esm/src/lib/stencil-kit/card-builders.js +105 -0
- package/esm/src/lib/stencil-kit/index.js +9 -0
- package/esm/src/lib/stencil-kit/palette.js +427 -0
- package/esm/src/lib/stencil-kit/shape-data.js +537 -0
- package/esm/src/lib/stencil-kit/styles.js +126 -0
- package/package.json +13 -4
- package/src/index.d.ts +2 -1
- package/src/index.js +11 -2
- package/src/lib/dashboard-kit/grid-binder.js +16 -15
- package/src/lib/dashboard-kit/styles.js +9 -3
- package/src/lib/diagram-kit/index.d.ts +1 -0
- package/src/lib/diagram-kit/index.js +11 -1
- package/src/lib/diagram-kit/join-guidance.d.ts +116 -0
- package/src/lib/diagram-kit/join-guidance.js +331 -0
- package/src/lib/stencil-kit/palette.js +60 -6
- package/src/lib/stencil-kit/shape-data.d.ts +3 -2
- package/src/lib/stencil-kit/shape-data.js +323 -31
- package/src/lib/stencil-kit/styles.js +15 -0
- package/src/libs/element/src/index.d.ts +92 -0
- package/src/libs/element/src/index.js +576 -0
- package/src/libs/element/src/lib/dashboard-kit/dashboard.d.ts +345 -0
- package/src/libs/element/src/lib/dashboard-kit/dashboard.js +594 -0
- package/src/libs/element/src/lib/dashboard-kit/grid-binder.d.ts +277 -0
- package/src/libs/element/src/lib/dashboard-kit/grid-binder.js +1636 -0
- package/src/libs/element/src/lib/dashboard-kit/grid-mapping.d.ts +141 -0
- package/src/libs/element/src/lib/dashboard-kit/grid-mapping.js +176 -0
- package/src/libs/element/src/lib/dashboard-kit/index.d.ts +5 -0
- package/src/libs/element/src/lib/dashboard-kit/index.js +33 -0
- package/src/libs/element/src/lib/dashboard-kit/styles.d.ts +25 -0
- package/src/libs/element/src/lib/dashboard-kit/styles.js +209 -0
- package/src/libs/element/src/lib/dashboard-kit/widgets.d.ts +112 -0
- package/src/libs/element/src/lib/dashboard-kit/widgets.js +389 -0
- package/src/libs/element/src/lib/diagram-kit/card.d.ts +75 -0
- package/src/libs/element/src/lib/diagram-kit/card.js +209 -0
- package/src/libs/element/src/lib/diagram-kit/editing.d.ts +58 -0
- package/src/libs/element/src/lib/diagram-kit/editing.js +453 -0
- package/src/libs/element/src/lib/diagram-kit/er.d.ts +73 -0
- package/src/libs/element/src/lib/diagram-kit/er.js +163 -0
- package/src/libs/element/src/lib/diagram-kit/handles.d.ts +181 -0
- package/src/libs/element/src/lib/diagram-kit/handles.js +325 -0
- package/src/libs/element/src/lib/diagram-kit/index.d.ts +10 -0
- package/src/libs/element/src/lib/diagram-kit/index.js +55 -0
- package/src/libs/element/src/lib/diagram-kit/join-guidance.d.ts +116 -0
- package/src/libs/element/src/lib/diagram-kit/join-guidance.js +331 -0
- package/src/libs/element/src/lib/diagram-kit/rows.d.ts +53 -0
- package/src/libs/element/src/lib/diagram-kit/rows.js +147 -0
- package/src/libs/element/src/lib/diagram-kit/styles.d.ts +18 -0
- package/src/libs/element/src/lib/diagram-kit/styles.js +122 -0
- package/src/libs/element/src/lib/diagram-kit/uml.d.ts +59 -0
- package/src/libs/element/src/lib/diagram-kit/uml.js +138 -0
- package/src/libs/element/src/lib/diagram-kit/update.d.ts +133 -0
- package/src/libs/element/src/lib/diagram-kit/update.js +251 -0
- package/src/libs/element/src/lib/grafloria-flow-element.d.ts +48 -0
- package/src/libs/element/src/lib/grafloria-flow-element.js +271 -0
- package/src/libs/element/src/lib/grafloria.d.ts +72 -0
- package/src/libs/element/src/lib/grafloria.js +74 -0
- package/src/libs/element/src/lib/load.d.ts +72 -0
- package/src/libs/element/src/lib/load.js +255 -0
- package/src/libs/element/src/lib/node-type-registry.d.ts +39 -0
- package/src/libs/element/src/lib/node-type-registry.js +50 -0
- package/src/libs/element/src/lib/stencil-kit/builders.d.ts +45 -0
- package/src/libs/element/src/lib/stencil-kit/builders.js +24 -0
- package/src/libs/element/src/lib/stencil-kit/card-builders.d.ts +2 -0
- package/src/libs/element/src/lib/stencil-kit/card-builders.js +108 -0
- package/src/libs/element/src/lib/stencil-kit/index.d.ts +7 -0
- package/src/libs/element/src/lib/stencil-kit/index.js +19 -0
- package/src/libs/element/src/lib/stencil-kit/palette.d.ts +93 -0
- package/src/libs/element/src/lib/stencil-kit/palette.js +430 -0
- package/src/libs/element/src/lib/stencil-kit/shape-data.d.ts +28 -0
- package/src/libs/element/src/lib/stencil-kit/shape-data.js +540 -0
- package/src/libs/element/src/lib/stencil-kit/styles.d.ts +2 -0
- package/src/libs/element/src/lib/stencil-kit/styles.js +129 -0
- package/src/libs/engine/src/adapters/component-adapter.interface.d.ts +302 -0
- package/src/libs/engine/src/adapters/component-adapter.interface.js +84 -0
- package/src/libs/engine/src/adapters/index.d.ts +7 -0
- package/src/libs/engine/src/adapters/index.js +11 -0
- package/src/libs/engine/src/clipboard/ClipboardManager.d.ts +81 -0
- package/src/libs/engine/src/clipboard/ClipboardManager.js +108 -0
- package/src/libs/engine/src/clipboard/index.d.ts +1 -0
- package/src/libs/engine/src/clipboard/index.js +6 -0
- package/src/libs/engine/src/collab/apply-op.d.ts +42 -0
- package/src/libs/engine/src/collab/apply-op.js +939 -0
- package/src/libs/engine/src/collab/capture.d.ts +147 -0
- package/src/libs/engine/src/collab/capture.js +510 -0
- package/src/libs/engine/src/collab/index.d.ts +12 -0
- package/src/libs/engine/src/collab/index.js +84 -0
- package/src/libs/engine/src/collab/integrity.d.ts +178 -0
- package/src/libs/engine/src/collab/integrity.js +438 -0
- package/src/libs/engine/src/collab/lww.d.ts +47 -0
- package/src/libs/engine/src/collab/lww.js +188 -0
- package/src/libs/engine/src/collab/op-log.d.ts +50 -0
- package/src/libs/engine/src/collab/op-log.js +167 -0
- package/src/libs/engine/src/collab/op.d.ts +120 -0
- package/src/libs/engine/src/collab/op.js +118 -0
- package/src/libs/engine/src/collab/replica.d.ts +188 -0
- package/src/libs/engine/src/collab/replica.js +526 -0
- package/src/libs/engine/src/collab/undo.d.ts +106 -0
- package/src/libs/engine/src/collab/undo.js +388 -0
- package/src/libs/engine/src/commands/Command.d.ts +66 -0
- package/src/libs/engine/src/commands/Command.js +64 -0
- package/src/libs/engine/src/commands/CommandManager.d.ts +161 -0
- package/src/libs/engine/src/commands/CommandManager.js +417 -0
- package/src/libs/engine/src/commands/basic/AddGroupCommand.d.ts +13 -0
- package/src/libs/engine/src/commands/basic/AddGroupCommand.js +50 -0
- package/src/libs/engine/src/commands/basic/AddLinkCommand.d.ts +13 -0
- package/src/libs/engine/src/commands/basic/AddLinkCommand.js +50 -0
- package/src/libs/engine/src/commands/basic/AddNodeCommand.d.ts +13 -0
- package/src/libs/engine/src/commands/basic/AddNodeCommand.js +65 -0
- package/src/libs/engine/src/commands/basic/AddToGroupCommand.d.ts +12 -0
- package/src/libs/engine/src/commands/basic/AddToGroupCommand.js +73 -0
- package/src/libs/engine/src/commands/basic/AlignCommands.d.ts +42 -0
- package/src/libs/engine/src/commands/basic/AlignCommands.js +138 -0
- package/src/libs/engine/src/commands/basic/CollapseGroupCommand.d.ts +14 -0
- package/src/libs/engine/src/commands/basic/CollapseGroupCommand.js +70 -0
- package/src/libs/engine/src/commands/basic/CopyCommand.d.ts +29 -0
- package/src/libs/engine/src/commands/basic/CopyCommand.js +131 -0
- package/src/libs/engine/src/commands/basic/CutCommand.d.ts +49 -0
- package/src/libs/engine/src/commands/basic/CutCommand.js +68 -0
- package/src/libs/engine/src/commands/basic/DeleteSelectionCommand.d.ts +58 -0
- package/src/libs/engine/src/commands/basic/DeleteSelectionCommand.js +309 -0
- package/src/libs/engine/src/commands/basic/DuplicateCommand.d.ts +31 -0
- package/src/libs/engine/src/commands/basic/DuplicateCommand.js +232 -0
- package/src/libs/engine/src/commands/basic/ExpandGroupCommand.d.ts +12 -0
- package/src/libs/engine/src/commands/basic/ExpandGroupCommand.js +69 -0
- package/src/libs/engine/src/commands/basic/MoveGroupCommand.d.ts +46 -0
- package/src/libs/engine/src/commands/basic/MoveGroupCommand.js +77 -0
- package/src/libs/engine/src/commands/basic/MoveNodeCommand.d.ts +30 -0
- package/src/libs/engine/src/commands/basic/MoveNodeCommand.js +87 -0
- package/src/libs/engine/src/commands/basic/NodeZOrderCommands.d.ts +39 -0
- package/src/libs/engine/src/commands/basic/NodeZOrderCommands.js +120 -0
- package/src/libs/engine/src/commands/basic/PasteCommand.d.ts +33 -0
- package/src/libs/engine/src/commands/basic/PasteCommand.js +228 -0
- package/src/libs/engine/src/commands/basic/PortCommands.d.ts +22 -0
- package/src/libs/engine/src/commands/basic/PortCommands.js +85 -0
- package/src/libs/engine/src/commands/basic/ReconnectLinkCommand.d.ts +15 -0
- package/src/libs/engine/src/commands/basic/ReconnectLinkCommand.js +59 -0
- package/src/libs/engine/src/commands/basic/RemoveFromGroupCommand.d.ts +12 -0
- package/src/libs/engine/src/commands/basic/RemoveFromGroupCommand.js +64 -0
- package/src/libs/engine/src/commands/basic/RemoveGroupCommand.d.ts +12 -0
- package/src/libs/engine/src/commands/basic/RemoveGroupCommand.js +56 -0
- package/src/libs/engine/src/commands/basic/RemoveLinkCommand.d.ts +12 -0
- package/src/libs/engine/src/commands/basic/RemoveLinkCommand.js +57 -0
- package/src/libs/engine/src/commands/basic/RemoveNodeCommand.d.ts +23 -0
- package/src/libs/engine/src/commands/basic/RemoveNodeCommand.js +108 -0
- package/src/libs/engine/src/commands/basic/ResizeNodeCommand.d.ts +16 -0
- package/src/libs/engine/src/commands/basic/ResizeNodeCommand.js +81 -0
- package/src/libs/engine/src/commands/basic/RotateNodeCommand.d.ts +37 -0
- package/src/libs/engine/src/commands/basic/RotateNodeCommand.js +88 -0
- package/src/libs/engine/src/commands/basic/SetFlexItemCommand.d.ts +14 -0
- package/src/libs/engine/src/commands/basic/SetFlexItemCommand.js +74 -0
- package/src/libs/engine/src/commands/basic/SetGridItemCommand.d.ts +14 -0
- package/src/libs/engine/src/commands/basic/SetGridItemCommand.js +74 -0
- package/src/libs/engine/src/commands/basic/SetLayoutCommand.d.ts +16 -0
- package/src/libs/engine/src/commands/basic/SetLayoutCommand.js +80 -0
- package/src/libs/engine/src/commands/basic/SetLinkDisplayLabelCommand.d.ts +28 -0
- package/src/libs/engine/src/commands/basic/SetLinkDisplayLabelCommand.js +83 -0
- package/src/libs/engine/src/commands/basic/SetLinkLabelCommand.d.ts +24 -0
- package/src/libs/engine/src/commands/basic/SetLinkLabelCommand.js +81 -0
- package/src/libs/engine/src/commands/basic/SetLinkLabelsCommand.d.ts +14 -0
- package/src/libs/engine/src/commands/basic/SetLinkLabelsCommand.js +75 -0
- package/src/libs/engine/src/commands/basic/SetLinkPathTypeCommand.d.ts +14 -0
- package/src/libs/engine/src/commands/basic/SetLinkPathTypeCommand.js +77 -0
- package/src/libs/engine/src/commands/basic/SetLinkPointsCommand.d.ts +32 -0
- package/src/libs/engine/src/commands/basic/SetLinkPointsCommand.js +87 -0
- package/src/libs/engine/src/commands/basic/SetNodeDataCommand.d.ts +14 -0
- package/src/libs/engine/src/commands/basic/SetNodeDataCommand.js +93 -0
- package/src/libs/engine/src/commands/basic/SetNodeLabelCommand.d.ts +26 -0
- package/src/libs/engine/src/commands/basic/SetNodeLabelCommand.js +81 -0
- package/src/libs/engine/src/commands/basic/SetNodeShapeConfigCommand.d.ts +14 -0
- package/src/libs/engine/src/commands/basic/SetNodeShapeConfigCommand.js +69 -0
- package/src/libs/engine/src/commands/basic/SetNodeStyleCommand.d.ts +15 -0
- package/src/libs/engine/src/commands/basic/SetNodeStyleCommand.js +88 -0
- package/src/libs/engine/src/commands/basic/SetParentCommand.d.ts +13 -0
- package/src/libs/engine/src/commands/basic/SetParentCommand.js +109 -0
- package/src/libs/engine/src/commands/basic/SetStrokePointsCommand.d.ts +34 -0
- package/src/libs/engine/src/commands/basic/SetStrokePointsCommand.js +86 -0
- package/src/libs/engine/src/commands/basic/StrokeLifecycleCommands.d.ts +31 -0
- package/src/libs/engine/src/commands/basic/StrokeLifecycleCommands.js +88 -0
- package/src/libs/engine/src/commands/basic/UpdateLinkStyleCommand.d.ts +15 -0
- package/src/libs/engine/src/commands/basic/UpdateLinkStyleCommand.js +72 -0
- package/src/libs/engine/src/commands/basic/index.d.ts +41 -0
- package/src/libs/engine/src/commands/basic/index.js +52 -0
- package/src/libs/engine/src/commands/basic/remapNodePortIds.d.ts +23 -0
- package/src/libs/engine/src/commands/basic/remapNodePortIds.js +46 -0
- package/src/libs/engine/src/commands/basic/resolveLinkNodeIds.d.ts +31 -0
- package/src/libs/engine/src/commands/basic/resolveLinkNodeIds.js +49 -0
- package/src/libs/engine/src/commands/composite/BatchCommand.d.ts +19 -0
- package/src/libs/engine/src/commands/composite/BatchCommand.js +61 -0
- package/src/libs/engine/src/commands/composite/MacroCommand.d.ts +35 -0
- package/src/libs/engine/src/commands/composite/MacroCommand.js +87 -0
- package/src/libs/engine/src/commands/composite/index.d.ts +2 -0
- package/src/libs/engine/src/commands/composite/index.js +7 -0
- package/src/libs/engine/src/commands/index.d.ts +4 -0
- package/src/libs/engine/src/commands/index.js +9 -0
- package/src/libs/engine/src/comments/comment-store.d.ts +238 -0
- package/src/libs/engine/src/comments/comment-store.js +538 -0
- package/src/libs/engine/src/comments/index.d.ts +4 -0
- package/src/libs/engine/src/comments/index.js +31 -0
- package/src/libs/engine/src/comments/mentions.d.ts +52 -0
- package/src/libs/engine/src/comments/mentions.js +94 -0
- package/src/libs/engine/src/comments/read-state.d.ts +37 -0
- package/src/libs/engine/src/comments/read-state.js +105 -0
- package/src/libs/engine/src/comments/types.d.ts +154 -0
- package/src/libs/engine/src/comments/types.js +107 -0
- package/src/libs/engine/src/config/InteractionConfig.d.ts +330 -0
- package/src/libs/engine/src/config/InteractionConfig.js +154 -0
- package/src/libs/engine/src/config/index.d.ts +1 -0
- package/src/libs/engine/src/config/index.js +6 -0
- package/src/libs/engine/src/dsl/DSL.d.ts +197 -0
- package/src/libs/engine/src/dsl/DSL.js +564 -0
- package/src/libs/engine/src/dsl/advanced/StyleParser.d.ts +75 -0
- package/src/libs/engine/src/dsl/advanced/StyleParser.js +166 -0
- package/src/libs/engine/src/dsl/advanced/TemplateParser.d.ts +88 -0
- package/src/libs/engine/src/dsl/advanced/TemplateParser.js +226 -0
- package/src/libs/engine/src/dsl/advanced/index.d.ts +9 -0
- package/src/libs/engine/src/dsl/advanced/index.js +13 -0
- package/src/libs/engine/src/dsl/detector/LayoutDetector.d.ts +80 -0
- package/src/libs/engine/src/dsl/detector/LayoutDetector.js +333 -0
- package/src/libs/engine/src/dsl/extended/BPMNGenerator.d.ts +38 -0
- package/src/libs/engine/src/dsl/extended/BPMNGenerator.js +90 -0
- package/src/libs/engine/src/dsl/extended/BPMNParser.d.ts +83 -0
- package/src/libs/engine/src/dsl/extended/BPMNParser.js +198 -0
- package/src/libs/engine/src/dsl/extended/ERDGenerator.d.ts +38 -0
- package/src/libs/engine/src/dsl/extended/ERDGenerator.js +126 -0
- package/src/libs/engine/src/dsl/extended/ERDParser.d.ts +81 -0
- package/src/libs/engine/src/dsl/extended/ERDParser.js +161 -0
- package/src/libs/engine/src/dsl/extended/ERDTransformer.d.ts +43 -0
- package/src/libs/engine/src/dsl/extended/ERDTransformer.js +105 -0
- package/src/libs/engine/src/dsl/extended/UMLGenerator.d.ts +42 -0
- package/src/libs/engine/src/dsl/extended/UMLGenerator.js +157 -0
- package/src/libs/engine/src/dsl/extended/UMLParser.d.ts +99 -0
- package/src/libs/engine/src/dsl/extended/UMLParser.js +200 -0
- package/src/libs/engine/src/dsl/extended/index.d.ts +13 -0
- package/src/libs/engine/src/dsl/extended/index.js +27 -0
- package/src/libs/engine/src/dsl/generator/DSLFormatter.d.ts +87 -0
- package/src/libs/engine/src/dsl/generator/DSLFormatter.js +261 -0
- package/src/libs/engine/src/dsl/generator/DSLGenerator.d.ts +96 -0
- package/src/libs/engine/src/dsl/generator/DSLGenerator.js +328 -0
- package/src/libs/engine/src/dsl/generator/DiagramAnalyzer.d.ts +111 -0
- package/src/libs/engine/src/dsl/generator/DiagramAnalyzer.js +361 -0
- package/src/libs/engine/src/dsl/index.d.ts +35 -0
- package/src/libs/engine/src/dsl/index.js +64 -0
- package/src/libs/engine/src/dsl/lexer/Lexer.d.ts +117 -0
- package/src/libs/engine/src/dsl/lexer/Lexer.js +521 -0
- package/src/libs/engine/src/dsl/mermaid/MermaidClass.d.ts +136 -0
- package/src/libs/engine/src/dsl/mermaid/MermaidClass.js +429 -0
- package/src/libs/engine/src/dsl/mermaid/MermaidER.d.ts +118 -0
- package/src/libs/engine/src/dsl/mermaid/MermaidER.js +338 -0
- package/src/libs/engine/src/dsl/mermaid/MermaidState.d.ts +89 -0
- package/src/libs/engine/src/dsl/mermaid/MermaidState.js +613 -0
- package/src/libs/engine/src/dsl/mermaid/index.d.ts +10 -0
- package/src/libs/engine/src/dsl/mermaid/index.js +33 -0
- package/src/libs/engine/src/dsl/mermaid/layout.d.ts +70 -0
- package/src/libs/engine/src/dsl/mermaid/layout.js +162 -0
- package/src/libs/engine/src/dsl/mermaid/lines.d.ts +25 -0
- package/src/libs/engine/src/dsl/mermaid/lines.js +74 -0
- package/src/libs/engine/src/dsl/parser/Parser.d.ts +131 -0
- package/src/libs/engine/src/dsl/parser/Parser.js +725 -0
- package/src/libs/engine/src/dsl/sync/BidirectionalSync.d.ts +154 -0
- package/src/libs/engine/src/dsl/sync/BidirectionalSync.js +389 -0
- package/src/libs/engine/src/dsl/sync/IntegratedSyncManager.d.ts +128 -0
- package/src/libs/engine/src/dsl/sync/IntegratedSyncManager.js +244 -0
- package/src/libs/engine/src/dsl/sync/LayoutApplicator.d.ts +140 -0
- package/src/libs/engine/src/dsl/sync/LayoutApplicator.js +271 -0
- package/src/libs/engine/src/dsl/sync/SyncStateManager.d.ts +145 -0
- package/src/libs/engine/src/dsl/sync/SyncStateManager.js +253 -0
- package/src/libs/engine/src/dsl/sync/index.d.ts +13 -0
- package/src/libs/engine/src/dsl/sync/index.js +21 -0
- package/src/libs/engine/src/dsl/transformer/ASTTransformer.d.ts +150 -0
- package/src/libs/engine/src/dsl/transformer/ASTTransformer.js +605 -0
- package/src/libs/engine/src/dsl/types/ASTNode.d.ts +159 -0
- package/src/libs/engine/src/dsl/types/ASTNode.js +31 -0
- package/src/libs/engine/src/dsl/types/Token.d.ts +79 -0
- package/src/libs/engine/src/dsl/types/Token.js +84 -0
- package/src/libs/engine/src/engine/DiagramEngine.d.ts +917 -0
- package/src/libs/engine/src/engine/DiagramEngine.js +2190 -0
- package/src/libs/engine/src/engine/DiagramMode.d.ts +51 -0
- package/src/libs/engine/src/engine/DiagramMode.js +53 -0
- package/src/libs/engine/src/engine/DiagramModeTypes.d.ts +73 -0
- package/src/libs/engine/src/engine/DiagramModeTypes.js +4 -0
- package/src/libs/engine/src/engine/ModeManager.d.ts +155 -0
- package/src/libs/engine/src/engine/ModeManager.js +387 -0
- package/src/libs/engine/src/engine/index.d.ts +2 -0
- package/src/libs/engine/src/engine/index.js +7 -0
- package/src/libs/engine/src/events/EventBus.d.ts +106 -0
- package/src/libs/engine/src/events/EventBus.js +226 -0
- package/src/libs/engine/src/events/index.d.ts +1 -0
- package/src/libs/engine/src/events/index.js +6 -0
- package/src/libs/engine/src/index.d.ts +43 -0
- package/src/libs/engine/src/index.js +142 -0
- package/src/libs/engine/src/interaction/GroupCollapseService.d.ts +53 -0
- package/src/libs/engine/src/interaction/GroupCollapseService.js +274 -0
- package/src/libs/engine/src/interaction/GroupMembershipService.d.ts +107 -0
- package/src/libs/engine/src/interaction/GroupMembershipService.js +245 -0
- package/src/libs/engine/src/interaction/SemanticMembershipService.d.ts +28 -0
- package/src/libs/engine/src/interaction/SemanticMembershipService.js +168 -0
- package/src/libs/engine/src/interaction/SwimlaneService.d.ts +62 -0
- package/src/libs/engine/src/interaction/SwimlaneService.js +180 -0
- package/src/libs/engine/src/interaction/index.d.ts +4 -0
- package/src/libs/engine/src/interaction/index.js +9 -0
- package/src/libs/engine/src/interop/drawio/importDrawio.d.ts +52 -0
- package/src/libs/engine/src/interop/drawio/importDrawio.js +940 -0
- package/src/libs/engine/src/interop/drawio/index.d.ts +1 -0
- package/src/libs/engine/src/interop/drawio/index.js +12 -0
- package/src/libs/engine/src/interop/drawio/xml.d.ts +26 -0
- package/src/libs/engine/src/interop/drawio/xml.js +213 -0
- package/src/libs/engine/src/layout/CompoundLayoutService.d.ts +121 -0
- package/src/libs/engine/src/layout/CompoundLayoutService.js +616 -0
- package/src/libs/engine/src/layout/ILayoutAlgorithm.d.ts +120 -0
- package/src/libs/engine/src/layout/ILayoutAlgorithm.js +88 -0
- package/src/libs/engine/src/layout/LayoutManager.d.ts +155 -0
- package/src/libs/engine/src/layout/LayoutManager.js +640 -0
- package/src/libs/engine/src/layout/SmartSpacingCalculator.d.ts +62 -0
- package/src/libs/engine/src/layout/SmartSpacingCalculator.js +134 -0
- package/src/libs/engine/src/layout/ViewportTransform.d.ts +55 -0
- package/src/libs/engine/src/layout/ViewportTransform.js +118 -0
- package/src/libs/engine/src/layout/algorithms/ForceDirectedLayoutAlgorithm.d.ts +34 -0
- package/src/libs/engine/src/layout/algorithms/ForceDirectedLayoutAlgorithm.js +317 -0
- package/src/libs/engine/src/layout/algorithms/GridLayoutAlgorithm.d.ts +56 -0
- package/src/libs/engine/src/layout/algorithms/GridLayoutAlgorithm.js +223 -0
- package/src/libs/engine/src/layout/algorithms/HierarchicalLayoutAlgorithm.d.ts +60 -0
- package/src/libs/engine/src/layout/algorithms/HierarchicalLayoutAlgorithm.js +307 -0
- package/src/libs/engine/src/layout/algorithms/HybridLayoutAlgorithm.d.ts +62 -0
- package/src/libs/engine/src/layout/algorithms/HybridLayoutAlgorithm.js +324 -0
- package/src/libs/engine/src/layout/community-layout-adapter.d.ts +107 -0
- package/src/libs/engine/src/layout/community-layout-adapter.js +486 -0
- package/src/libs/engine/src/layout/component-packing.d.ts +98 -0
- package/src/libs/engine/src/layout/component-packing.js +307 -0
- package/src/libs/engine/src/layout/dagre-layout-adapter.d.ts +122 -0
- package/src/libs/engine/src/layout/dagre-layout-adapter.js +697 -0
- package/src/libs/engine/src/layout/edge-bundling.interface.d.ts +159 -0
- package/src/libs/engine/src/layout/edge-bundling.interface.js +379 -0
- package/src/libs/engine/src/layout/elk-layout-adapter.d.ts +121 -0
- package/src/libs/engine/src/layout/elk-layout-adapter.js +586 -0
- package/src/libs/engine/src/layout/elk-loader.d.ts +1 -0
- package/src/libs/engine/src/layout/elk-loader.js +24 -0
- package/src/libs/engine/src/layout/force-layout-adapter.d.ts +167 -0
- package/src/libs/engine/src/layout/force-layout-adapter.js +790 -0
- package/src/libs/engine/src/layout/grid-pack/grid-pack-engine.d.ts +323 -0
- package/src/libs/engine/src/layout/grid-pack/grid-pack-engine.js +685 -0
- package/src/libs/engine/src/layout/incremental/mental-map.d.ts +98 -0
- package/src/libs/engine/src/layout/incremental/mental-map.js +221 -0
- package/src/libs/engine/src/layout/incremental-layout.interface.d.ts +145 -0
- package/src/libs/engine/src/layout/incremental-layout.interface.js +300 -0
- package/src/libs/engine/src/layout/index.d.ts +83 -0
- package/src/libs/engine/src/layout/index.js +116 -0
- package/src/libs/engine/src/layout/layout-adapter.interface.d.ts +185 -0
- package/src/libs/engine/src/layout/layout-adapter.interface.js +10 -0
- package/src/libs/engine/src/layout/layout-auto-select.d.ts +160 -0
- package/src/libs/engine/src/layout/layout-auto-select.js +621 -0
- package/src/libs/engine/src/layout/layout-constraints.interface.d.ts +117 -0
- package/src/libs/engine/src/layout/layout-constraints.interface.js +138 -0
- package/src/libs/engine/src/layout/layout-graph.d.ts +70 -0
- package/src/libs/engine/src/layout/layout-graph.js +119 -0
- package/src/libs/engine/src/layout/layout-history.d.ts +147 -0
- package/src/libs/engine/src/layout/layout-history.js +258 -0
- package/src/libs/engine/src/layout/layout-host.d.ts +172 -0
- package/src/libs/engine/src/layout/layout-host.js +523 -0
- package/src/libs/engine/src/layout/layout-presets.d.ts +91 -0
- package/src/libs/engine/src/layout/layout-presets.js +333 -0
- package/src/libs/engine/src/layout/layout-quality-extended.d.ts +66 -0
- package/src/libs/engine/src/layout/layout-quality-extended.js +246 -0
- package/src/libs/engine/src/layout/layout-quality-metrics.d.ts +127 -0
- package/src/libs/engine/src/layout/layout-quality-metrics.js +466 -0
- package/src/libs/engine/src/layout/layout-registry.d.ts +309 -0
- package/src/libs/engine/src/layout/layout-registry.js +414 -0
- package/src/libs/engine/src/layout/layout.service.d.ts +100 -0
- package/src/libs/engine/src/layout/layout.service.js +216 -0
- package/src/libs/engine/src/layout/overlap-removal.d.ts +20 -0
- package/src/libs/engine/src/layout/overlap-removal.js +117 -0
- package/src/libs/engine/src/layout/port-aware-layout.interface.d.ts +232 -0
- package/src/libs/engine/src/layout/port-aware-layout.interface.js +413 -0
- package/src/libs/engine/src/layout/port-label-bridge.d.ts +77 -0
- package/src/libs/engine/src/layout/port-label-bridge.js +250 -0
- package/src/libs/engine/src/layout/portfolio-layouts.d.ts +53 -0
- package/src/libs/engine/src/layout/portfolio-layouts.js +388 -0
- package/src/libs/engine/src/layout/rng.d.ts +34 -0
- package/src/libs/engine/src/layout/rng.js +71 -0
- package/src/libs/engine/src/layout/spectral-layout-adapter.d.ts +72 -0
- package/src/libs/engine/src/layout/spectral-layout-adapter.js +379 -0
- package/src/libs/engine/src/layout/steppable-layout.d.ts +40 -0
- package/src/libs/engine/src/layout/steppable-layout.js +34 -0
- package/src/libs/engine/src/layout/subgraph-layout.interface.d.ts +269 -0
- package/src/libs/engine/src/layout/subgraph-layout.interface.js +452 -0
- package/src/libs/engine/src/layout/sugiyama/layered-layout.d.ts +9 -0
- package/src/libs/engine/src/layout/sugiyama/layered-layout.js +83 -0
- package/src/libs/engine/src/layout/sugiyama/sugiyama.d.ts +91 -0
- package/src/libs/engine/src/layout/sugiyama/sugiyama.js +797 -0
- package/src/libs/engine/src/layout/tree-layout.d.ts +43 -0
- package/src/libs/engine/src/layout/tree-layout.js +426 -0
- package/src/libs/engine/src/layout/types.d.ts +263 -0
- package/src/libs/engine/src/layout/types.js +6 -0
- package/src/libs/engine/src/lib/performance/mobile-performance.service.d.ts +43 -0
- package/src/libs/engine/src/lib/performance/mobile-performance.service.js +95 -0
- package/src/libs/engine/src/models/DiagramEntity.d.ts +174 -0
- package/src/libs/engine/src/models/DiagramEntity.js +366 -0
- package/src/libs/engine/src/models/DiagramModel.d.ts +960 -0
- package/src/libs/engine/src/models/DiagramModel.js +2416 -0
- package/src/libs/engine/src/models/GroupModel.d.ts +573 -0
- package/src/libs/engine/src/models/GroupModel.js +1373 -0
- package/src/libs/engine/src/models/LinkModel.d.ts +395 -0
- package/src/libs/engine/src/models/LinkModel.js +1045 -0
- package/src/libs/engine/src/models/NodeModel.d.ts +666 -0
- package/src/libs/engine/src/models/NodeModel.js +1512 -0
- package/src/libs/engine/src/models/PortModel.d.ts +292 -0
- package/src/libs/engine/src/models/PortModel.js +637 -0
- package/src/libs/engine/src/models/StrokeModel.d.ts +160 -0
- package/src/libs/engine/src/models/StrokeModel.js +387 -0
- package/src/libs/engine/src/models/index.d.ts +7 -0
- package/src/libs/engine/src/models/index.js +12 -0
- package/src/libs/engine/src/models/readonly-lock.d.ts +108 -0
- package/src/libs/engine/src/models/readonly-lock.js +125 -0
- package/src/libs/engine/src/performance/LRUCache.d.ts +78 -0
- package/src/libs/engine/src/performance/LRUCache.js +179 -0
- package/src/libs/engine/src/performance/PerformanceMonitor.d.ts +47 -0
- package/src/libs/engine/src/performance/PerformanceMonitor.js +112 -0
- package/src/libs/engine/src/performance/SpatialIndex.d.ts +157 -0
- package/src/libs/engine/src/performance/SpatialIndex.js +306 -0
- package/src/libs/engine/src/performance/index.d.ts +2 -0
- package/src/libs/engine/src/performance/index.js +7 -0
- package/src/libs/engine/src/plugins/PluginManager.d.ts +95 -0
- package/src/libs/engine/src/plugins/PluginManager.js +388 -0
- package/src/libs/engine/src/plugins/index.d.ts +1 -0
- package/src/libs/engine/src/plugins/index.js +6 -0
- package/src/libs/engine/src/ports/connection-rules.d.ts +32 -0
- package/src/libs/engine/src/ports/connection-rules.js +131 -0
- package/src/libs/engine/src/ports/dynamic-ports.d.ts +27 -0
- package/src/libs/engine/src/ports/dynamic-ports.js +135 -0
- package/src/libs/engine/src/ports/index.d.ts +5 -0
- package/src/libs/engine/src/ports/index.js +16 -0
- package/src/libs/engine/src/ports/port-groups.d.ts +43 -0
- package/src/libs/engine/src/ports/port-groups.js +185 -0
- package/src/libs/engine/src/ports/port-type-registry.d.ts +34 -0
- package/src/libs/engine/src/ports/port-type-registry.js +87 -0
- package/src/libs/engine/src/ports/port-types.d.ts +266 -0
- package/src/libs/engine/src/ports/port-types.js +30 -0
- package/src/libs/engine/src/rendering/HtmlTemplateRenderer.d.ts +136 -0
- package/src/libs/engine/src/rendering/HtmlTemplateRenderer.js +292 -0
- package/src/libs/engine/src/rendering/LemonadeJSRenderer.d.ts +160 -0
- package/src/libs/engine/src/rendering/LemonadeJSRenderer.js +362 -0
- package/src/libs/engine/src/rendering/index.d.ts +2 -0
- package/src/libs/engine/src/rendering/index.js +7 -0
- package/src/libs/engine/src/routing/LiveReroutingEngine.d.ts +75 -0
- package/src/libs/engine/src/routing/LiveReroutingEngine.js +173 -0
- package/src/libs/engine/src/routing/ObstacleIndex.d.ts +42 -0
- package/src/libs/engine/src/routing/ObstacleIndex.js +215 -0
- package/src/libs/engine/src/routing/ObstacleMap.d.ts +68 -0
- package/src/libs/engine/src/routing/ObstacleMap.js +312 -0
- package/src/libs/engine/src/routing/ObstacleMapBuilder.d.ts +28 -0
- package/src/libs/engine/src/routing/ObstacleMapBuilder.js +76 -0
- package/src/libs/engine/src/routing/PathSimplifier.d.ts +119 -0
- package/src/libs/engine/src/routing/PathSimplifier.js +224 -0
- package/src/libs/engine/src/routing/RoutingEngine.d.ts +118 -0
- package/src/libs/engine/src/routing/RoutingEngine.js +546 -0
- package/src/libs/engine/src/routing/algorithms/AStarRouter.d.ts +90 -0
- package/src/libs/engine/src/routing/algorithms/AStarRouter.js +331 -0
- package/src/libs/engine/src/routing/algorithms/DijkstraRouter.d.ts +74 -0
- package/src/libs/engine/src/routing/algorithms/DijkstraRouter.js +297 -0
- package/src/libs/engine/src/routing/algorithms/ElkRouter.d.ts +34 -0
- package/src/libs/engine/src/routing/algorithms/ElkRouter.js +210 -0
- package/src/libs/engine/src/routing/algorithms/ManhattanRouter.d.ts +18 -0
- package/src/libs/engine/src/routing/algorithms/ManhattanRouter.js +224 -0
- package/src/libs/engine/src/routing/algorithms/OrthogonalRouter.d.ts +173 -0
- package/src/libs/engine/src/routing/algorithms/OrthogonalRouter.js +1092 -0
- package/src/libs/engine/src/routing/algorithms/StraightRouter.d.ts +8 -0
- package/src/libs/engine/src/routing/algorithms/StraightRouter.js +53 -0
- package/src/libs/engine/src/routing/algorithms/VisibilityGraphRouter.d.ts +59 -0
- package/src/libs/engine/src/routing/algorithms/VisibilityGraphRouter.js +258 -0
- package/src/libs/engine/src/routing/global/GlobalRouteSolver.d.ts +64 -0
- package/src/libs/engine/src/routing/global/GlobalRouteSolver.js +334 -0
- package/src/libs/engine/src/routing/global/solver-host.d.ts +65 -0
- package/src/libs/engine/src/routing/global/solver-host.js +87 -0
- package/src/libs/engine/src/routing/index.d.ts +15 -0
- package/src/libs/engine/src/routing/index.js +20 -0
- package/src/libs/engine/src/routing/types.d.ts +161 -0
- package/src/libs/engine/src/routing/types.js +4 -0
- package/src/libs/engine/src/selection/SelectionManager.d.ts +161 -0
- package/src/libs/engine/src/selection/SelectionManager.js +483 -0
- package/src/libs/engine/src/selection/index.d.ts +1 -0
- package/src/libs/engine/src/selection/index.js +6 -0
- package/src/libs/engine/src/serialization/DiagramMigrations.d.ts +41 -0
- package/src/libs/engine/src/serialization/DiagramMigrations.js +124 -0
- package/src/libs/engine/src/serialization/DiagramValidator.d.ts +20 -0
- package/src/libs/engine/src/serialization/DiagramValidator.js +136 -0
- package/src/libs/engine/src/serialization/DocumentEnvelope.d.ts +53 -0
- package/src/libs/engine/src/serialization/DocumentEnvelope.js +111 -0
- package/src/libs/engine/src/serialization/Incremental.d.ts +77 -0
- package/src/libs/engine/src/serialization/Incremental.js +227 -0
- package/src/libs/engine/src/serialization/Serializer.d.ts +29 -0
- package/src/libs/engine/src/serialization/Serializer.js +45 -0
- package/src/libs/engine/src/serialization/Subgraph.d.ts +51 -0
- package/src/libs/engine/src/serialization/Subgraph.js +172 -0
- package/src/libs/engine/src/serialization/TextFormat.d.ts +71 -0
- package/src/libs/engine/src/serialization/TextFormat.js +261 -0
- package/src/libs/engine/src/state/ConnectionStateManager.d.ts +178 -0
- package/src/libs/engine/src/state/ConnectionStateManager.js +319 -0
- package/src/libs/engine/src/state/DiagramStore.d.ts +134 -0
- package/src/libs/engine/src/state/DiagramStore.js +372 -0
- package/src/libs/engine/src/state/index.d.ts +2 -0
- package/src/libs/engine/src/state/index.js +7 -0
- package/src/libs/engine/src/sync/awareness.d.ts +91 -0
- package/src/libs/engine/src/sync/awareness.js +221 -0
- package/src/libs/engine/src/sync/batcher.d.ts +84 -0
- package/src/libs/engine/src/sync/batcher.js +0 -0
- package/src/libs/engine/src/sync/causal-buffer.d.ts +81 -0
- package/src/libs/engine/src/sync/causal-buffer.js +199 -0
- package/src/libs/engine/src/sync/index.d.ts +20 -0
- package/src/libs/engine/src/sync/index.js +41 -0
- package/src/libs/engine/src/sync/protocol.d.ts +74 -0
- package/src/libs/engine/src/sync/protocol.js +39 -0
- package/src/libs/engine/src/sync/sync-adapter.d.ts +243 -0
- package/src/libs/engine/src/sync/sync-adapter.js +524 -0
- package/src/libs/engine/src/sync/transport.d.ts +30 -0
- package/src/libs/engine/src/sync/transport.js +28 -0
- package/src/libs/engine/src/sync/transports/broadcast-channel.d.ts +39 -0
- package/src/libs/engine/src/sync/transports/broadcast-channel.js +117 -0
- package/src/libs/engine/src/sync/transports/memory.d.ts +38 -0
- package/src/libs/engine/src/sync/transports/memory.js +111 -0
- package/src/libs/engine/src/sync/transports/unreliable.d.ts +59 -0
- package/src/libs/engine/src/sync/transports/unreliable.js +153 -0
- package/src/libs/engine/src/sync/transports/websocket.d.ts +60 -0
- package/src/libs/engine/src/sync/transports/websocket.js +210 -0
- package/src/libs/engine/src/sync/version-vector.d.ts +47 -0
- package/src/libs/engine/src/sync/version-vector.js +218 -0
- package/src/libs/engine/src/template-library/common-templates.d.ts +46 -0
- package/src/libs/engine/src/template-library/common-templates.js +395 -0
- package/src/libs/engine/src/template-library/data-viz-templates.d.ts +52 -0
- package/src/libs/engine/src/template-library/data-viz-templates.js +471 -0
- package/src/libs/engine/src/template-library/erd-templates.d.ts +71 -0
- package/src/libs/engine/src/template-library/erd-templates.js +773 -0
- package/src/libs/engine/src/template-library/index.d.ts +141 -0
- package/src/libs/engine/src/template-library/index.js +271 -0
- package/src/libs/engine/src/template-library/integration.d.ts +80 -0
- package/src/libs/engine/src/template-library/integration.js +141 -0
- package/src/libs/engine/src/template-library/workflow-templates.d.ts +52 -0
- package/src/libs/engine/src/template-library/workflow-templates.js +438 -0
- package/src/libs/engine/src/templates/NodeFactory.d.ts +118 -0
- package/src/libs/engine/src/templates/NodeFactory.js +436 -0
- package/src/libs/engine/src/templates/NodeTemplate.d.ts +342 -0
- package/src/libs/engine/src/templates/NodeTemplate.js +13 -0
- package/src/libs/engine/src/templates/TemplateLoader.d.ts +46 -0
- package/src/libs/engine/src/templates/TemplateLoader.js +114 -0
- package/src/libs/engine/src/templates/TemplateRegistry.d.ts +70 -0
- package/src/libs/engine/src/templates/TemplateRegistry.js +128 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-business-rule-task.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-business-rule-task.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-end-event.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-end-event.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-error-event.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-error-event.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-exclusive-gateway.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-exclusive-gateway.template.js +124 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-inclusive-gateway.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-inclusive-gateway.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-intermediate-event.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-intermediate-event.template.js +124 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-manual-task.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-manual-task.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-message-event.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-message-event.template.js +122 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-parallel-gateway.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-parallel-gateway.template.js +125 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-script-task.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-script-task.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-service-task.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-service-task.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-start-event.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-start-event.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-task.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-task.template.js +152 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-timer-event.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-timer-event.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-user-task.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/bpmn/bpmn-user-task.template.js +123 -0
- package/src/libs/engine/src/templates/generated/bpmn/index.d.ts +15 -0
- package/src/libs/engine/src/templates/generated/bpmn/index.js +34 -0
- package/src/libs/engine/src/templates/generated/erd/erd-associative-entity.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-associative-entity.template.js +152 -0
- package/src/libs/engine/src/templates/generated/erd/erd-attribute.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-attribute.template.js +122 -0
- package/src/libs/engine/src/templates/generated/erd/erd-bridge-entity.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-bridge-entity.template.js +151 -0
- package/src/libs/engine/src/templates/generated/erd/erd-composite-attribute.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-composite-attribute.template.js +122 -0
- package/src/libs/engine/src/templates/generated/erd/erd-derived-attribute.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-derived-attribute.template.js +122 -0
- package/src/libs/engine/src/templates/generated/erd/erd-discriminator.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-discriminator.template.js +123 -0
- package/src/libs/engine/src/templates/generated/erd/erd-entity.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-entity.template.js +149 -0
- package/src/libs/engine/src/templates/generated/erd/erd-isa.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-isa.template.js +123 -0
- package/src/libs/engine/src/templates/generated/erd/erd-key-attribute.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-key-attribute.template.js +122 -0
- package/src/libs/engine/src/templates/generated/erd/erd-multivalued-attribute.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-multivalued-attribute.template.js +122 -0
- package/src/libs/engine/src/templates/generated/erd/erd-optional-attribute.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-optional-attribute.template.js +122 -0
- package/src/libs/engine/src/templates/generated/erd/erd-partial-key.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-partial-key.template.js +123 -0
- package/src/libs/engine/src/templates/generated/erd/erd-relationship.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-relationship.template.js +121 -0
- package/src/libs/engine/src/templates/generated/erd/erd-subtype.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-subtype.template.js +123 -0
- package/src/libs/engine/src/templates/generated/erd/erd-supertype.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-supertype.template.js +123 -0
- package/src/libs/engine/src/templates/generated/erd/erd-table.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-table.template.js +123 -0
- package/src/libs/engine/src/templates/generated/erd/erd-view.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-view.template.js +123 -0
- package/src/libs/engine/src/templates/generated/erd/erd-weak-entity.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-weak-entity.template.js +149 -0
- package/src/libs/engine/src/templates/generated/erd/erd-weak-relationship.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/erd/erd-weak-relationship.template.js +122 -0
- package/src/libs/engine/src/templates/generated/erd/index.d.ts +19 -0
- package/src/libs/engine/src/templates/generated/erd/index.js +42 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-connector.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-connector.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-data.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-data.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-decision.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-decision.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-delay.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-delay.template.js +124 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-display.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-display.template.js +124 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-document.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-document.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-input.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-input.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-operation.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-operation.template.js +122 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-merge.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-merge.template.js +122 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-or.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-or.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-predefined-process.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-predefined-process.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-preparation.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-preparation.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-process.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-process.template.js +122 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-stored-data.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-stored-data.template.js +123 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-summing-junction.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-summing-junction.template.js +124 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-terminal.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/flowchart/flowchart-terminal.template.js +124 -0
- package/src/libs/engine/src/templates/generated/flowchart/index.d.ts +16 -0
- package/src/libs/engine/src/templates/generated/flowchart/index.js +36 -0
- package/src/libs/engine/src/templates/generated/index.d.ts +9 -0
- package/src/libs/engine/src/templates/generated/index.js +13 -0
- package/src/libs/engine/src/templates/generated/register.d.ts +23 -0
- package/src/libs/engine/src/templates/generated/register.js +31 -0
- package/src/libs/engine/src/templates/generated/uml/index.d.ts +30 -0
- package/src/libs/engine/src/templates/generated/uml/index.js +64 -0
- package/src/libs/engine/src/templates/generated/uml/uml-abstract-class.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-abstract-class.template.js +204 -0
- package/src/libs/engine/src/templates/generated/uml/uml-activation.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-activation.template.js +124 -0
- package/src/libs/engine/src/templates/generated/uml/uml-activity-partition.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-activity-partition.template.js +124 -0
- package/src/libs/engine/src/templates/generated/uml/uml-activity.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-activity.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-actor.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-actor.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-class.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-class.template.js +204 -0
- package/src/libs/engine/src/templates/generated/uml/uml-collaboration.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-collaboration.template.js +122 -0
- package/src/libs/engine/src/templates/generated/uml/uml-component.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-component.template.js +122 -0
- package/src/libs/engine/src/templates/generated/uml/uml-datatype.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-datatype.template.js +204 -0
- package/src/libs/engine/src/templates/generated/uml/uml-decision.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-decision.template.js +124 -0
- package/src/libs/engine/src/templates/generated/uml/uml-enum.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-enum.template.js +204 -0
- package/src/libs/engine/src/templates/generated/uml/uml-final-node.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-final-node.template.js +124 -0
- package/src/libs/engine/src/templates/generated/uml/uml-final-state.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-final-state.template.js +124 -0
- package/src/libs/engine/src/templates/generated/uml/uml-fork.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-fork.template.js +125 -0
- package/src/libs/engine/src/templates/generated/uml/uml-initial-node.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-initial-node.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-initial-state.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-initial-state.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-interface.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-interface.template.js +204 -0
- package/src/libs/engine/src/templates/generated/uml/uml-join.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-join.template.js +125 -0
- package/src/libs/engine/src/templates/generated/uml/uml-lifeline.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-lifeline.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-merge.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-merge.template.js +122 -0
- package/src/libs/engine/src/templates/generated/uml/uml-node.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-node.template.js +122 -0
- package/src/libs/engine/src/templates/generated/uml/uml-note.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-note.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-object.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-object.template.js +204 -0
- package/src/libs/engine/src/templates/generated/uml/uml-package.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-package.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-part.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-part.template.js +122 -0
- package/src/libs/engine/src/templates/generated/uml/uml-port.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-port.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-primitive-type.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-primitive-type.template.js +204 -0
- package/src/libs/engine/src/templates/generated/uml/uml-signal.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-signal.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-state.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-state.template.js +123 -0
- package/src/libs/engine/src/templates/generated/uml/uml-use-case.template.d.ts +11 -0
- package/src/libs/engine/src/templates/generated/uml/uml-use-case.template.js +122 -0
- package/src/libs/engine/src/templates/index.d.ts +12 -0
- package/src/libs/engine/src/templates/index.js +27 -0
- package/src/libs/engine/src/templates/stencils.d.ts +45 -0
- package/src/libs/engine/src/templates/stencils.js +85 -0
- package/src/libs/engine/src/types/domain/bpmn.d.ts +25 -0
- package/src/libs/engine/src/types/domain/bpmn.js +313 -0
- package/src/libs/engine/src/types/domain/erd.d.ts +29 -0
- package/src/libs/engine/src/types/domain/erd.js +394 -0
- package/src/libs/engine/src/types/domain/flowchart.d.ts +26 -0
- package/src/libs/engine/src/types/domain/flowchart.js +434 -0
- package/src/libs/engine/src/types/domain/index.d.ts +4 -0
- package/src/libs/engine/src/types/domain/index.js +9 -0
- package/src/libs/engine/src/types/domain/uml.d.ts +40 -0
- package/src/libs/engine/src/types/domain/uml.js +758 -0
- package/src/libs/engine/src/types/event.types.d.ts +142 -0
- package/src/libs/engine/src/types/event.types.js +96 -0
- package/src/libs/engine/src/types/geometry.types.d.ts +84 -0
- package/src/libs/engine/src/types/geometry.types.js +16 -0
- package/src/libs/engine/src/types/index.d.ts +7 -0
- package/src/libs/engine/src/types/index.js +14 -0
- package/src/libs/engine/src/types/layout.types.d.ts +148 -0
- package/src/libs/engine/src/types/layout.types.js +28 -0
- package/src/libs/engine/src/types/model.types.d.ts +378 -0
- package/src/libs/engine/src/types/model.types.js +4 -0
- package/src/libs/engine/src/types/performance.types.d.ts +109 -0
- package/src/libs/engine/src/types/performance.types.js +122 -0
- package/src/libs/engine/src/types/plugin.types.d.ts +30 -0
- package/src/libs/engine/src/types/plugin.types.js +4 -0
- package/src/libs/engine/src/utils/deep-clone.d.ts +9 -0
- package/src/libs/engine/src/utils/deep-clone.js +123 -0
- package/src/libs/engine/src/utils/geometry.d.ts +45 -0
- package/src/libs/engine/src/utils/geometry.js +241 -0
- package/src/libs/engine/src/utils/id.d.ts +22 -0
- package/src/libs/engine/src/utils/id.js +44 -0
- package/src/libs/engine/src/utils/index.d.ts +3 -0
- package/src/libs/engine/src/utils/index.js +8 -0
- package/src/libs/engine/src/utils/transform.d.ts +84 -0
- package/src/libs/engine/src/utils/transform.js +200 -0
- package/src/libs/engine/src/validation/ConnectionGroupValidator.d.ts +22 -0
- package/src/libs/engine/src/validation/ConnectionGroupValidator.js +56 -0
- package/src/libs/engine/src/validation/TypeRegistry.d.ts +179 -0
- package/src/libs/engine/src/validation/TypeRegistry.js +358 -0
- package/src/libs/engine/src/validation/ValidationEngine.d.ts +79 -0
- package/src/libs/engine/src/validation/ValidationEngine.js +1150 -0
- package/src/libs/engine/src/validation/index.d.ts +3 -0
- package/src/libs/engine/src/validation/index.js +8 -0
- package/src/libs/renderer/src/a11y/diagram-outline.d.ts +93 -0
- package/src/libs/renderer/src/a11y/diagram-outline.js +0 -0
- package/src/libs/renderer/src/a11y/focus-containment.d.ts +90 -0
- package/src/libs/renderer/src/a11y/focus-containment.js +173 -0
- package/src/libs/renderer/src/a11y/graph-topology.d.ts +70 -0
- package/src/libs/renderer/src/a11y/graph-topology.js +0 -0
- package/src/libs/renderer/src/a11y/index.d.ts +26 -0
- package/src/libs/renderer/src/a11y/index.js +30 -0
- package/src/libs/renderer/src/a11y/live-region.d.ts +83 -0
- package/src/libs/renderer/src/a11y/live-region.js +170 -0
- package/src/libs/renderer/src/a11y/outline-view.d.ts +62 -0
- package/src/libs/renderer/src/a11y/outline-view.js +158 -0
- package/src/libs/renderer/src/a11y/reduced-motion.d.ts +48 -0
- package/src/libs/renderer/src/a11y/reduced-motion.js +223 -0
- package/src/libs/renderer/src/a11y/semantics.d.ts +76 -0
- package/src/libs/renderer/src/a11y/semantics.js +229 -0
- package/src/libs/renderer/src/canvas/canvas-context.d.ts +167 -0
- package/src/libs/renderer/src/canvas/canvas-context.js +267 -0
- package/src/libs/renderer/src/canvas/canvas-renderer.d.ts +194 -0
- package/src/libs/renderer/src/canvas/canvas-renderer.js +600 -0
- package/src/libs/renderer/src/canvas/dirty-region.d.ts +56 -0
- package/src/libs/renderer/src/canvas/dirty-region.js +171 -0
- package/src/libs/renderer/src/canvas/index.d.ts +16 -0
- package/src/libs/renderer/src/canvas/index.js +79 -0
- package/src/libs/renderer/src/canvas/path-geometry.d.ts +112 -0
- package/src/libs/renderer/src/canvas/path-geometry.js +673 -0
- package/src/libs/renderer/src/canvas/render-backend.d.ts +133 -0
- package/src/libs/renderer/src/canvas/render-backend.js +339 -0
- package/src/libs/renderer/src/canvas/style-resolution.d.ts +101 -0
- package/src/libs/renderer/src/canvas/style-resolution.js +466 -0
- package/src/libs/renderer/src/canvas/tier-policy.d.ts +33 -0
- package/src/libs/renderer/src/canvas/tier-policy.js +89 -0
- package/src/libs/renderer/src/canvas/vnode-painter.d.ts +154 -0
- package/src/libs/renderer/src/canvas/vnode-painter.js +649 -0
- package/src/libs/renderer/src/comments/comment-overlay.d.ts +56 -0
- package/src/libs/renderer/src/comments/comment-overlay.js +127 -0
- package/src/libs/renderer/src/comments/comment-panel.d.ts +45 -0
- package/src/libs/renderer/src/comments/comment-panel.js +287 -0
- package/src/libs/renderer/src/comments/comment-pins.d.ts +34 -0
- package/src/libs/renderer/src/comments/comment-pins.js +227 -0
- package/src/libs/renderer/src/comments/index.d.ts +3 -0
- package/src/libs/renderer/src/comments/index.js +17 -0
- package/src/libs/renderer/src/export/assets.d.ts +96 -0
- package/src/libs/renderer/src/export/assets.js +350 -0
- package/src/libs/renderer/src/export/batch.d.ts +49 -0
- package/src/libs/renderer/src/export/batch.js +95 -0
- package/src/libs/renderer/src/export/bounds.d.ts +81 -0
- package/src/libs/renderer/src/export/bounds.js +367 -0
- package/src/libs/renderer/src/export/capture-host.d.ts +39 -0
- package/src/libs/renderer/src/export/capture-host.js +1259 -0
- package/src/libs/renderer/src/export/custom-nodes.d.ts +88 -0
- package/src/libs/renderer/src/export/custom-nodes.js +237 -0
- package/src/libs/renderer/src/export/index.d.ts +14 -0
- package/src/libs/renderer/src/export/index.js +30 -0
- package/src/libs/renderer/src/export/node-raster.d.ts +60 -0
- package/src/libs/renderer/src/export/node-raster.js +161 -0
- package/src/libs/renderer/src/export/pagination.d.ts +116 -0
- package/src/libs/renderer/src/export/pagination.js +245 -0
- package/src/libs/renderer/src/export/pdf/flate.d.ts +13 -0
- package/src/libs/renderer/src/export/pdf/flate.js +287 -0
- package/src/libs/renderer/src/export/pdf/index.d.ts +4 -0
- package/src/libs/renderer/src/export/pdf/index.js +15 -0
- package/src/libs/renderer/src/export/pdf/pdf-export.d.ts +64 -0
- package/src/libs/renderer/src/export/pdf/pdf-export.js +1076 -0
- package/src/libs/renderer/src/export/pdf/pdf-path.d.ts +17 -0
- package/src/libs/renderer/src/export/pdf/pdf-path.js +85 -0
- package/src/libs/renderer/src/export/pdf/pdf-primitives.d.ts +115 -0
- package/src/libs/renderer/src/export/pdf/pdf-primitives.js +338 -0
- package/src/libs/renderer/src/export/pdf/png.d.ts +25 -0
- package/src/libs/renderer/src/export/pdf/png.js +596 -0
- package/src/libs/renderer/src/export/raster.d.ts +42 -0
- package/src/libs/renderer/src/export/raster.js +126 -0
- package/src/libs/renderer/src/export/round-trip.d.ts +83 -0
- package/src/libs/renderer/src/export/round-trip.js +432 -0
- package/src/libs/renderer/src/export/scope.d.ts +16 -0
- package/src/libs/renderer/src/export/scope.js +69 -0
- package/src/libs/renderer/src/export/style-flattener.d.ts +23 -0
- package/src/libs/renderer/src/export/style-flattener.js +144 -0
- package/src/libs/renderer/src/export/svg-export.d.ts +123 -0
- package/src/libs/renderer/src/export/svg-export.js +178 -0
- package/src/libs/renderer/src/export/vnode-serializer.d.ts +75 -0
- package/src/libs/renderer/src/export/vnode-serializer.js +344 -0
- package/src/libs/renderer/src/ext/capabilities.d.ts +178 -0
- package/src/libs/renderer/src/ext/capabilities.js +22 -0
- package/src/libs/renderer/src/ext/capability-factory.d.ts +44 -0
- package/src/libs/renderer/src/ext/capability-factory.js +194 -0
- package/src/libs/renderer/src/ext/components/attach.d.ts +66 -0
- package/src/libs/renderer/src/ext/components/attach.js +112 -0
- package/src/libs/renderer/src/ext/components/background.d.ts +84 -0
- package/src/libs/renderer/src/ext/components/background.js +202 -0
- package/src/libs/renderer/src/ext/components/controls.d.ts +49 -0
- package/src/libs/renderer/src/ext/components/controls.js +144 -0
- package/src/libs/renderer/src/ext/components/minimap.d.ts +78 -0
- package/src/libs/renderer/src/ext/components/minimap.js +326 -0
- package/src/libs/renderer/src/ext/diagram-registry.d.ts +109 -0
- package/src/libs/renderer/src/ext/diagram-registry.js +303 -0
- package/src/libs/renderer/src/ext/disposable.d.ts +51 -0
- package/src/libs/renderer/src/ext/disposable.js +104 -0
- package/src/libs/renderer/src/ext/extension-host.d.ts +144 -0
- package/src/libs/renderer/src/ext/extension-host.js +272 -0
- package/src/libs/renderer/src/ext/index.d.ts +62 -0
- package/src/libs/renderer/src/ext/index.js +91 -0
- package/src/libs/renderer/src/ext/link-pipeline.d.ts +195 -0
- package/src/libs/renderer/src/ext/link-pipeline.js +431 -0
- package/src/libs/renderer/src/ext/manifest.d.ts +73 -0
- package/src/libs/renderer/src/ext/manifest.js +149 -0
- package/src/libs/renderer/src/ext/node-component.d.ts +114 -0
- package/src/libs/renderer/src/ext/node-component.js +290 -0
- package/src/libs/renderer/src/ext/plugins-loader.d.ts +1 -0
- package/src/libs/renderer/src/ext/plugins-loader.js +18 -0
- package/src/libs/renderer/src/ext/portal.d.ts +129 -0
- package/src/libs/renderer/src/ext/portal.js +267 -0
- package/src/libs/renderer/src/ext/public-api.d.ts +101 -0
- package/src/libs/renderer/src/ext/public-api.js +201 -0
- package/src/libs/renderer/src/ext/registry-scope.d.ts +93 -0
- package/src/libs/renderer/src/ext/registry-scope.js +142 -0
- package/src/libs/renderer/src/ext/tools.d.ts +164 -0
- package/src/libs/renderer/src/ext/tools.js +170 -0
- package/src/libs/renderer/src/index.d.ts +34 -0
- package/src/libs/renderer/src/index.js +108 -0
- package/src/libs/renderer/src/instance/create-diagram.d.ts +385 -0
- package/src/libs/renderer/src/instance/create-diagram.js +1150 -0
- package/src/libs/renderer/src/instance/diagram-instance.d.ts +48 -0
- package/src/libs/renderer/src/instance/diagram-instance.js +51 -0
- package/src/libs/renderer/src/instance/dom-event-binder.d.ts +394 -0
- package/src/libs/renderer/src/instance/dom-event-binder.js +2104 -0
- package/src/libs/renderer/src/instance/index.d.ts +5 -0
- package/src/libs/renderer/src/instance/index.js +13 -0
- package/src/libs/renderer/src/instance/layers.d.ts +31 -0
- package/src/libs/renderer/src/instance/layers.js +43 -0
- package/src/libs/renderer/src/instance/model-input.d.ts +229 -0
- package/src/libs/renderer/src/instance/model-input.js +325 -0
- package/src/libs/renderer/src/instance/render-scheduler.d.ts +79 -0
- package/src/libs/renderer/src/instance/render-scheduler.js +96 -0
- package/src/libs/renderer/src/instance/wheel-scroll-yield.d.ts +38 -0
- package/src/libs/renderer/src/instance/wheel-scroll-yield.js +118 -0
- package/src/libs/renderer/src/interaction/ControlPointEditor.d.ts +160 -0
- package/src/libs/renderer/src/interaction/ControlPointEditor.js +360 -0
- package/src/libs/renderer/src/interaction/WaypointEditor.d.ts +133 -0
- package/src/libs/renderer/src/interaction/WaypointEditor.js +263 -0
- package/src/libs/renderer/src/interaction/highlighters.d.ts +88 -0
- package/src/libs/renderer/src/interaction/highlighters.js +212 -0
- package/src/libs/renderer/src/interaction/in-place-editor.d.ts +63 -0
- package/src/libs/renderer/src/interaction/in-place-editor.js +141 -0
- package/src/libs/renderer/src/interaction/index.d.ts +11 -0
- package/src/libs/renderer/src/interaction/index.js +29 -0
- package/src/libs/renderer/src/interaction/ink-overlay.d.ts +53 -0
- package/src/libs/renderer/src/interaction/ink-overlay.js +154 -0
- package/src/libs/renderer/src/interaction/interaction-controller.d.ts +555 -0
- package/src/libs/renderer/src/interaction/interaction-controller.js +1733 -0
- package/src/libs/renderer/src/interaction/keyboard-navigation.d.ts +223 -0
- package/src/libs/renderer/src/interaction/keyboard-navigation.js +885 -0
- package/src/libs/renderer/src/interaction/selection-tools.d.ts +343 -0
- package/src/libs/renderer/src/interaction/selection-tools.js +918 -0
- package/src/libs/renderer/src/interaction/snapping.d.ts +210 -0
- package/src/libs/renderer/src/interaction/snapping.js +569 -0
- package/src/libs/renderer/src/interaction/touch-gestures.d.ts +160 -0
- package/src/libs/renderer/src/interaction/touch-gestures.js +549 -0
- package/src/libs/renderer/src/interaction/whiteboard-tools.d.ts +171 -0
- package/src/libs/renderer/src/interaction/whiteboard-tools.js +476 -0
- package/src/libs/renderer/src/lazy/host-culling.d.ts +116 -0
- package/src/libs/renderer/src/lazy/host-culling.js +135 -0
- package/src/libs/renderer/src/lazy/index.d.ts +7 -0
- package/src/libs/renderer/src/lazy/index.js +28 -0
- package/src/libs/renderer/src/lazy/progressive-mounter.d.ts +80 -0
- package/src/libs/renderer/src/lazy/progressive-mounter.js +264 -0
- package/src/libs/renderer/src/lazy/types.d.ts +43 -0
- package/src/libs/renderer/src/lazy/types.js +14 -0
- package/src/libs/renderer/src/lazy/view-lifecycle.d.ts +97 -0
- package/src/libs/renderer/src/lazy/view-lifecycle.js +221 -0
- package/src/libs/renderer/src/perf/index.d.ts +2 -0
- package/src/libs/renderer/src/perf/index.js +7 -0
- package/src/libs/renderer/src/perf/perf-hud.d.ts +46 -0
- package/src/libs/renderer/src/perf/perf-hud.js +105 -0
- package/src/libs/renderer/src/perf/quality-governor.d.ts +77 -0
- package/src/libs/renderer/src/perf/quality-governor.js +154 -0
- package/src/libs/renderer/src/platform/index.d.ts +1 -0
- package/src/libs/renderer/src/platform/index.js +5 -0
- package/src/libs/renderer/src/platform/platform.d.ts +34 -0
- package/src/libs/renderer/src/platform/platform.js +64 -0
- package/src/libs/renderer/src/presence/bind-presence.d.ts +51 -0
- package/src/libs/renderer/src/presence/bind-presence.js +144 -0
- package/src/libs/renderer/src/presence/index.d.ts +4 -0
- package/src/libs/renderer/src/presence/index.js +18 -0
- package/src/libs/renderer/src/presence/presence-overlay.d.ts +121 -0
- package/src/libs/renderer/src/presence/presence-overlay.js +465 -0
- package/src/libs/renderer/src/presentation/index.d.ts +3 -0
- package/src/libs/renderer/src/presentation/index.js +14 -0
- package/src/libs/renderer/src/presentation/presentation.d.ts +94 -0
- package/src/libs/renderer/src/presentation/presentation.js +158 -0
- package/src/libs/renderer/src/presentation/viewport-channel.d.ts +78 -0
- package/src/libs/renderer/src/presentation/viewport-channel.js +86 -0
- package/src/libs/renderer/src/services/animation-lifecycle.d.ts +153 -0
- package/src/libs/renderer/src/services/animation-lifecycle.js +326 -0
- package/src/libs/renderer/src/services/animation-performance.service.d.ts +191 -0
- package/src/libs/renderer/src/services/animation-performance.service.js +371 -0
- package/src/libs/renderer/src/services/animation-sequencer.d.ts +226 -0
- package/src/libs/renderer/src/services/animation-sequencer.js +379 -0
- package/src/libs/renderer/src/services/animation.service.d.ts +182 -0
- package/src/libs/renderer/src/services/animation.service.js +858 -0
- package/src/libs/renderer/src/services/custom-animation-registry.d.ts +182 -0
- package/src/libs/renderer/src/services/custom-animation-registry.js +361 -0
- package/src/libs/renderer/src/ssr/index.d.ts +1 -0
- package/src/libs/renderer/src/ssr/index.js +6 -0
- package/src/libs/renderer/src/ssr/render-to-static.d.ts +91 -0
- package/src/libs/renderer/src/ssr/render-to-static.js +81 -0
- package/src/libs/renderer/src/svg/ArrowRenderer.d.ts +159 -0
- package/src/libs/renderer/src/svg/ArrowRenderer.js +723 -0
- package/src/libs/renderer/src/svg/JumpPointDetector.d.ts +79 -0
- package/src/libs/renderer/src/svg/JumpPointDetector.js +176 -0
- package/src/libs/renderer/src/svg/JumpPointRenderer.d.ts +59 -0
- package/src/libs/renderer/src/svg/JumpPointRenderer.js +309 -0
- package/src/libs/renderer/src/svg/LabelRenderer.d.ts +76 -0
- package/src/libs/renderer/src/svg/LabelRenderer.js +273 -0
- package/src/libs/renderer/src/svg/auto-size.d.ts +76 -0
- package/src/libs/renderer/src/svg/auto-size.js +142 -0
- package/src/libs/renderer/src/svg/channel-nudging.d.ts +34 -0
- package/src/libs/renderer/src/svg/channel-nudging.js +226 -0
- package/src/libs/renderer/src/svg/edge-optimizer.d.ts +228 -0
- package/src/libs/renderer/src/svg/edge-optimizer.js +606 -0
- package/src/libs/renderer/src/svg/edge-templates.d.ts +152 -0
- package/src/libs/renderer/src/svg/edge-templates.js +233 -0
- package/src/libs/renderer/src/svg/html-node.d.ts +50 -0
- package/src/libs/renderer/src/svg/html-node.js +214 -0
- package/src/libs/renderer/src/svg/index.d.ts +25 -0
- package/src/libs/renderer/src/svg/index.js +32 -0
- package/src/libs/renderer/src/svg/link-fanout.d.ts +127 -0
- package/src/libs/renderer/src/svg/link-fanout.js +333 -0
- package/src/libs/renderer/src/svg/link-hit-test.d.ts +142 -0
- package/src/libs/renderer/src/svg/link-hit-test.js +182 -0
- package/src/libs/renderer/src/svg/motion-tracker.d.ts +18 -0
- package/src/libs/renderer/src/svg/motion-tracker.js +71 -0
- package/src/libs/renderer/src/svg/node-sizing.d.ts +51 -0
- package/src/libs/renderer/src/svg/node-sizing.js +65 -0
- package/src/libs/renderer/src/svg/node-toolbar.d.ts +30 -0
- package/src/libs/renderer/src/svg/node-toolbar.js +45 -0
- package/src/libs/renderer/src/svg/notation-shapes.d.ts +2 -0
- package/src/libs/renderer/src/svg/notation-shapes.js +126 -0
- package/src/libs/renderer/src/svg/paint-servers.d.ts +49 -0
- package/src/libs/renderer/src/svg/paint-servers.js +225 -0
- package/src/libs/renderer/src/svg/panel.d.ts +115 -0
- package/src/libs/renderer/src/svg/panel.js +353 -0
- package/src/libs/renderer/src/svg/path-outline.d.ts +35 -0
- package/src/libs/renderer/src/svg/path-outline.js +134 -0
- package/src/libs/renderer/src/svg/port-glyph.d.ts +27 -0
- package/src/libs/renderer/src/svg/port-glyph.js +97 -0
- package/src/libs/renderer/src/svg/port-label.d.ts +74 -0
- package/src/libs/renderer/src/svg/port-label.js +201 -0
- package/src/libs/renderer/src/svg/port-layout.d.ts +50 -0
- package/src/libs/renderer/src/svg/port-layout.js +212 -0
- package/src/libs/renderer/src/svg/port-positioning.d.ts +33 -0
- package/src/libs/renderer/src/svg/port-positioning.js +101 -0
- package/src/libs/renderer/src/svg/port-spots.d.ts +69 -0
- package/src/libs/renderer/src/svg/port-spots.js +154 -0
- package/src/libs/renderer/src/svg/route-memo.d.ts +63 -0
- package/src/libs/renderer/src/svg/route-memo.js +206 -0
- package/src/libs/renderer/src/svg/route-solver-bridge.d.ts +48 -0
- package/src/libs/renderer/src/svg/route-solver-bridge.js +151 -0
- package/src/libs/renderer/src/svg/shape-registry.d.ts +189 -0
- package/src/libs/renderer/src/svg/shape-registry.js +1104 -0
- package/src/libs/renderer/src/svg/stroke-layer.d.ts +36 -0
- package/src/libs/renderer/src/svg/stroke-layer.js +183 -0
- package/src/libs/renderer/src/svg/svg-renderer.d.ts +1737 -0
- package/src/libs/renderer/src/svg/svg-renderer.js +7772 -0
- package/src/libs/renderer/src/svg/text-block.d.ts +54 -0
- package/src/libs/renderer/src/svg/text-block.js +171 -0
- package/src/libs/renderer/src/themes/color-mode.d.ts +81 -0
- package/src/libs/renderer/src/themes/color-mode.js +158 -0
- package/src/libs/renderer/src/themes/contrast.d.ts +67 -0
- package/src/libs/renderer/src/themes/contrast.js +215 -0
- package/src/libs/renderer/src/themes/default-dark-theme.d.ts +6 -0
- package/src/libs/renderer/src/themes/default-dark-theme.js +126 -0
- package/src/libs/renderer/src/themes/default-light-theme.d.ts +6 -0
- package/src/libs/renderer/src/themes/default-light-theme.js +168 -0
- package/src/libs/renderer/src/themes/default-theme-set.d.ts +10 -0
- package/src/libs/renderer/src/themes/default-theme-set.js +25 -0
- package/src/libs/renderer/src/themes/high-contrast-theme.d.ts +5 -0
- package/src/libs/renderer/src/themes/high-contrast-theme.js +170 -0
- package/src/libs/renderer/src/themes/index.d.ts +22 -0
- package/src/libs/renderer/src/themes/index.js +93 -0
- package/src/libs/renderer/src/themes/style-cascade.d.ts +23 -0
- package/src/libs/renderer/src/themes/style-cascade.js +194 -0
- package/src/libs/renderer/src/themes/style-registry.d.ts +40 -0
- package/src/libs/renderer/src/themes/style-registry.js +129 -0
- package/src/libs/renderer/src/themes/theme-a11y.d.ts +65 -0
- package/src/libs/renderer/src/themes/theme-a11y.js +256 -0
- package/src/libs/renderer/src/themes/theme-css.d.ts +30 -0
- package/src/libs/renderer/src/themes/theme-css.js +304 -0
- package/src/libs/renderer/src/themes/theme-ref.d.ts +63 -0
- package/src/libs/renderer/src/themes/theme-ref.js +206 -0
- package/src/libs/renderer/src/themes/theme-vars.d.ts +49 -0
- package/src/libs/renderer/src/themes/theme-vars.js +112 -0
- package/src/libs/renderer/src/themes/token-bridge.d.ts +62 -0
- package/src/libs/renderer/src/themes/token-bridge.js +354 -0
- package/src/libs/renderer/src/types/geometry.types.d.ts +10 -0
- package/src/libs/renderer/src/types/geometry.types.js +3 -0
- package/src/libs/renderer/src/types/index.d.ts +5 -0
- package/src/libs/renderer/src/types/index.js +14 -0
- package/src/libs/renderer/src/types/property-schema/conditions.d.ts +96 -0
- package/src/libs/renderer/src/types/property-schema/conditions.js +8 -0
- package/src/libs/renderer/src/types/property-schema/editor-types.d.ts +310 -0
- package/src/libs/renderer/src/types/property-schema/editor-types.js +8 -0
- package/src/libs/renderer/src/types/property-schema/groups.d.ts +58 -0
- package/src/libs/renderer/src/types/property-schema/groups.js +8 -0
- package/src/libs/renderer/src/types/property-schema/index.d.ts +101 -0
- package/src/libs/renderer/src/types/property-schema/index.js +98 -0
- package/src/libs/renderer/src/types/property-schema/property-definition.d.ts +117 -0
- package/src/libs/renderer/src/types/property-schema/property-definition.js +8 -0
- package/src/libs/renderer/src/types/property-schema/schema.d.ts +108 -0
- package/src/libs/renderer/src/types/property-schema/schema.js +8 -0
- package/src/libs/renderer/src/types/property-schema/validation.d.ts +181 -0
- package/src/libs/renderer/src/types/property-schema/validation.js +8 -0
- package/src/libs/renderer/src/types/renderer.interface.d.ts +623 -0
- package/src/libs/renderer/src/types/renderer.interface.js +3 -0
- package/src/libs/renderer/src/types/theme.types.d.ts +305 -0
- package/src/libs/renderer/src/types/theme.types.js +3 -0
- package/src/libs/renderer/src/types/vnode.types.d.ts +139 -0
- package/src/libs/renderer/src/types/vnode.types.js +3 -0
- package/src/libs/renderer/src/utils/animation-presets.d.ts +310 -0
- package/src/libs/renderer/src/utils/animation-presets.js +406 -0
- package/src/libs/renderer/src/utils/animation-priority.d.ts +118 -0
- package/src/libs/renderer/src/utils/animation-priority.js +258 -0
- package/src/libs/renderer/src/utils/animation-utils.d.ts +159 -0
- package/src/libs/renderer/src/utils/animation-utils.js +323 -0
- package/src/libs/renderer/src/utils/lru-cache.d.ts +34 -0
- package/src/libs/renderer/src/utils/lru-cache.js +72 -0
- package/src/libs/renderer/src/viewport/index.d.ts +1 -0
- package/src/libs/renderer/src/viewport/index.js +6 -0
- package/src/libs/renderer/src/viewport/viewport-controller.d.ts +198 -0
- package/src/libs/renderer/src/viewport/viewport-controller.js +315 -0
- package/src/libs/renderer/src/vnode/container-id-generator.d.ts +94 -0
- package/src/libs/renderer/src/vnode/container-id-generator.js +110 -0
- package/src/libs/renderer/src/vnode/foreign-object.d.ts +157 -0
- package/src/libs/renderer/src/vnode/foreign-object.js +167 -0
- package/src/libs/renderer/src/vnode/index.d.ts +56 -0
- package/src/libs/renderer/src/vnode/index.js +78 -0
- package/src/libs/renderer/src/vnode/patch.d.ts +189 -0
- package/src/libs/renderer/src/vnode/patch.js +564 -0
- package/src/index.js.map +0 -1
- package/src/lib/dashboard-kit/dashboard.js.map +0 -1
- package/src/lib/dashboard-kit/grid-binder.js.map +0 -1
- package/src/lib/dashboard-kit/grid-mapping.js.map +0 -1
- package/src/lib/dashboard-kit/index.js.map +0 -1
- package/src/lib/dashboard-kit/styles.js.map +0 -1
- package/src/lib/dashboard-kit/widgets.js.map +0 -1
- package/src/lib/diagram-kit/card.js.map +0 -1
- package/src/lib/diagram-kit/editing.js.map +0 -1
- package/src/lib/diagram-kit/er.js.map +0 -1
- package/src/lib/diagram-kit/handles.js.map +0 -1
- package/src/lib/diagram-kit/index.js.map +0 -1
- package/src/lib/diagram-kit/rows.js.map +0 -1
- package/src/lib/diagram-kit/styles.js.map +0 -1
- package/src/lib/diagram-kit/uml.js.map +0 -1
- package/src/lib/diagram-kit/update.js.map +0 -1
- package/src/lib/grafloria-flow-element.js.map +0 -1
- package/src/lib/grafloria.js.map +0 -1
- package/src/lib/load.js.map +0 -1
- package/src/lib/node-type-registry.js.map +0 -1
- package/src/lib/stencil-kit/builders.js.map +0 -1
- package/src/lib/stencil-kit/card-builders.js.map +0 -1
- package/src/lib/stencil-kit/index.js.map +0 -1
- package/src/lib/stencil-kit/palette.js.map +0 -1
- package/src/lib/stencil-kit/shape-data.js.map +0 -1
- package/src/lib/stencil-kit/styles.js.map +0 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ============================================================================
|
|
3
|
+
* Card 7 — the declarative extension manifest + semver engine-compat gate
|
|
4
|
+
* ============================================================================
|
|
5
|
+
*
|
|
6
|
+
* A manifest is a plugin's contract, and it is deliberately DECLARATIVE: the
|
|
7
|
+
* host can answer "what does this add?" and "may it run here?" by reading it,
|
|
8
|
+
* WITHOUT importing a line of the plugin's code. That is what makes lazy loading
|
|
9
|
+
* safe (`registerLazy` validates the manifest and stops) and what makes the
|
|
10
|
+
* capability grant enforceable (you cannot ask for privileges at runtime that
|
|
11
|
+
* your manifest did not declare).
|
|
12
|
+
*
|
|
13
|
+
* `contributes` is documentation + discovery (a palette can list a plugin's
|
|
14
|
+
* shapes before it loads). `capabilities` is the ENFORCED grant.
|
|
15
|
+
*
|
|
16
|
+
* The semver matcher below is intentionally small — `^`, `~`, `>=`, `x`-ranges
|
|
17
|
+
* and exact pins — rather than a dependency on `semver`. `libs/renderer` has no
|
|
18
|
+
* runtime deps and this wave is not the place to add one.
|
|
19
|
+
*/
|
|
20
|
+
import type { CapabilityName } from './capabilities';
|
|
21
|
+
/** What a plugin says it adds. Discovery/UX only — not a security boundary. */
|
|
22
|
+
export interface ExtensionContributions {
|
|
23
|
+
shapes?: string[];
|
|
24
|
+
routers?: string[];
|
|
25
|
+
connectors?: string[];
|
|
26
|
+
anchors?: string[];
|
|
27
|
+
connectionPoints?: string[];
|
|
28
|
+
markers?: string[];
|
|
29
|
+
linkTemplates?: string[];
|
|
30
|
+
labelTemplates?: string[];
|
|
31
|
+
tools?: string[];
|
|
32
|
+
panels?: string[];
|
|
33
|
+
animations?: string[];
|
|
34
|
+
templates?: string[];
|
|
35
|
+
}
|
|
36
|
+
export interface ExtensionManifest<C extends CapabilityName = CapabilityName> {
|
|
37
|
+
/** Reverse-DNS recommended: `acme.flowchart-shapes`. Must be unique per host. */
|
|
38
|
+
id: string;
|
|
39
|
+
/** The plugin's own semver. */
|
|
40
|
+
version: string;
|
|
41
|
+
/** Human-facing. */
|
|
42
|
+
name?: string;
|
|
43
|
+
description?: string;
|
|
44
|
+
/**
|
|
45
|
+
* The host API range this plugin supports, e.g. `{ grafloria: '^1.0.0' }`.
|
|
46
|
+
* Checked against `EXTENSION_API_VERSION` and REJECTED on mismatch.
|
|
47
|
+
*/
|
|
48
|
+
engines?: {
|
|
49
|
+
grafloria?: string;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* The ENFORCED privilege grant. `activate()` receives exactly these and
|
|
53
|
+
* nothing else.
|
|
54
|
+
*/
|
|
55
|
+
capabilities: readonly C[];
|
|
56
|
+
/** Declarative inventory, for discovery before load. */
|
|
57
|
+
contributes?: ExtensionContributions;
|
|
58
|
+
}
|
|
59
|
+
/** Throw with a precise reason. A malformed manifest must never half-load. */
|
|
60
|
+
export declare function validateManifest(manifest: ExtensionManifest<CapabilityName>): void;
|
|
61
|
+
/** Reject a plugin built against an incompatible host API. */
|
|
62
|
+
export declare function assertEngineCompatible(manifest: ExtensionManifest<CapabilityName>, apiVersion: string): void;
|
|
63
|
+
/**
|
|
64
|
+
* A deliberately small semver range matcher. Supports:
|
|
65
|
+
* * / x any
|
|
66
|
+
* 1.2.3 exact
|
|
67
|
+
* ^1.2.3 >=1.2.3 <2.0.0 (and ^0.2.3 → >=0.2.3 <0.3.0)
|
|
68
|
+
* ~1.2.3 >=1.2.3 <1.3.0
|
|
69
|
+
* >=1.2.3, >1.2.3, <=1.2.3, <1.2.3
|
|
70
|
+
* 1.x / 1.2.x
|
|
71
|
+
* " || " union of any of the above
|
|
72
|
+
*/
|
|
73
|
+
export declare function satisfies(version: string, range: string): boolean;
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ============================================================================
|
|
4
|
+
* Card 7 — the declarative extension manifest + semver engine-compat gate
|
|
5
|
+
* ============================================================================
|
|
6
|
+
*
|
|
7
|
+
* A manifest is a plugin's contract, and it is deliberately DECLARATIVE: the
|
|
8
|
+
* host can answer "what does this add?" and "may it run here?" by reading it,
|
|
9
|
+
* WITHOUT importing a line of the plugin's code. That is what makes lazy loading
|
|
10
|
+
* safe (`registerLazy` validates the manifest and stops) and what makes the
|
|
11
|
+
* capability grant enforceable (you cannot ask for privileges at runtime that
|
|
12
|
+
* your manifest did not declare).
|
|
13
|
+
*
|
|
14
|
+
* `contributes` is documentation + discovery (a palette can list a plugin's
|
|
15
|
+
* shapes before it loads). `capabilities` is the ENFORCED grant.
|
|
16
|
+
*
|
|
17
|
+
* The semver matcher below is intentionally small — `^`, `~`, `>=`, `x`-ranges
|
|
18
|
+
* and exact pins — rather than a dependency on `semver`. `libs/renderer` has no
|
|
19
|
+
* runtime deps and this wave is not the place to add one.
|
|
20
|
+
*/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.validateManifest = validateManifest;
|
|
23
|
+
exports.assertEngineCompatible = assertEngineCompatible;
|
|
24
|
+
exports.satisfies = satisfies;
|
|
25
|
+
const ID_RE = /^[a-z0-9][a-z0-9._-]*$/i;
|
|
26
|
+
const SEMVER_RE = /^(\d+)\.(\d+)\.(\d+)(?:-[0-9a-z.-]+)?(?:\+[0-9a-z.-]+)?$/i;
|
|
27
|
+
const VALID_CAPABILITIES = [
|
|
28
|
+
'shapes',
|
|
29
|
+
'links',
|
|
30
|
+
'routers',
|
|
31
|
+
'templates',
|
|
32
|
+
'animations',
|
|
33
|
+
'tools',
|
|
34
|
+
'panels',
|
|
35
|
+
];
|
|
36
|
+
/** Throw with a precise reason. A malformed manifest must never half-load. */
|
|
37
|
+
function validateManifest(manifest) {
|
|
38
|
+
if (!manifest || typeof manifest !== 'object') {
|
|
39
|
+
throw new Error('[ExtensionHost] manifest is required');
|
|
40
|
+
}
|
|
41
|
+
if (!manifest.id || !ID_RE.test(manifest.id)) {
|
|
42
|
+
throw new Error(`[ExtensionHost] invalid extension id '${String(manifest.id)}' — expected ` +
|
|
43
|
+
`letters/digits/dot/dash/underscore, e.g. 'acme.flowchart-shapes'`);
|
|
44
|
+
}
|
|
45
|
+
if (!manifest.version || !SEMVER_RE.test(manifest.version)) {
|
|
46
|
+
throw new Error(`[ExtensionHost] extension '${manifest.id}' has an invalid version ` +
|
|
47
|
+
`'${String(manifest.version)}' — expected semver, e.g. '1.2.0'`);
|
|
48
|
+
}
|
|
49
|
+
if (!Array.isArray(manifest.capabilities)) {
|
|
50
|
+
throw new Error(`[ExtensionHost] extension '${manifest.id}' must declare a 'capabilities' array ` +
|
|
51
|
+
`(use [] for a plugin that registers nothing)`);
|
|
52
|
+
}
|
|
53
|
+
for (const capability of manifest.capabilities) {
|
|
54
|
+
if (!VALID_CAPABILITIES.includes(capability)) {
|
|
55
|
+
throw new Error(`[ExtensionHost] extension '${manifest.id}' declares unknown capability ` +
|
|
56
|
+
`'${String(capability)}'. Known: ${VALID_CAPABILITIES.join(', ')}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/** Reject a plugin built against an incompatible host API. */
|
|
61
|
+
function assertEngineCompatible(manifest, apiVersion) {
|
|
62
|
+
var _a;
|
|
63
|
+
const range = (_a = manifest.engines) === null || _a === void 0 ? void 0 : _a.grafloria;
|
|
64
|
+
if (!range)
|
|
65
|
+
return; // No claim = no gate. The plugin takes its chances.
|
|
66
|
+
if (!satisfies(apiVersion, range)) {
|
|
67
|
+
throw new Error(`[ExtensionHost] extension '${manifest.id}' requires grafloria '${range}', ` +
|
|
68
|
+
`but this host is '${apiVersion}'. Refusing to register.`);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
function parse(version) {
|
|
72
|
+
const match = SEMVER_RE.exec(version.trim());
|
|
73
|
+
if (!match)
|
|
74
|
+
return null;
|
|
75
|
+
return { major: +match[1], minor: +match[2], patch: +match[3] };
|
|
76
|
+
}
|
|
77
|
+
function compare(a, b) {
|
|
78
|
+
return a.major - b.major || a.minor - b.minor || a.patch - b.patch;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* A deliberately small semver range matcher. Supports:
|
|
82
|
+
* * / x any
|
|
83
|
+
* 1.2.3 exact
|
|
84
|
+
* ^1.2.3 >=1.2.3 <2.0.0 (and ^0.2.3 → >=0.2.3 <0.3.0)
|
|
85
|
+
* ~1.2.3 >=1.2.3 <1.3.0
|
|
86
|
+
* >=1.2.3, >1.2.3, <=1.2.3, <1.2.3
|
|
87
|
+
* 1.x / 1.2.x
|
|
88
|
+
* " || " union of any of the above
|
|
89
|
+
*/
|
|
90
|
+
function satisfies(version, range) {
|
|
91
|
+
const target = parse(version);
|
|
92
|
+
if (!target)
|
|
93
|
+
return false;
|
|
94
|
+
return range
|
|
95
|
+
.split('||')
|
|
96
|
+
.map((part) => part.trim())
|
|
97
|
+
.some((part) => satisfiesOne(target, part));
|
|
98
|
+
}
|
|
99
|
+
function satisfiesOne(target, range) {
|
|
100
|
+
var _a;
|
|
101
|
+
if (range === '*' || range === 'x' || range === '')
|
|
102
|
+
return true;
|
|
103
|
+
// x-ranges: 1.x, 1.2.x
|
|
104
|
+
if (/^\d+(\.\d+)?\.?x$/i.test(range) || /^\d+$/.test(range)) {
|
|
105
|
+
const parts = range.toLowerCase().replace(/\.?x$/, '').split('.').filter(Boolean);
|
|
106
|
+
const major = Number(parts[0]);
|
|
107
|
+
if (Number.isNaN(major) || target.major !== major)
|
|
108
|
+
return false;
|
|
109
|
+
if (parts.length > 1 && target.minor !== Number(parts[1]))
|
|
110
|
+
return false;
|
|
111
|
+
return true;
|
|
112
|
+
}
|
|
113
|
+
const operatorMatch = /^(>=|<=|>|<|\^|~)?\s*(.+)$/.exec(range);
|
|
114
|
+
if (!operatorMatch)
|
|
115
|
+
return false;
|
|
116
|
+
const operator = (_a = operatorMatch[1]) !== null && _a !== void 0 ? _a : '';
|
|
117
|
+
const base = parse(operatorMatch[2]);
|
|
118
|
+
if (!base)
|
|
119
|
+
return false;
|
|
120
|
+
const cmp = compare(target, base);
|
|
121
|
+
switch (operator) {
|
|
122
|
+
case '':
|
|
123
|
+
return cmp === 0;
|
|
124
|
+
case '>=':
|
|
125
|
+
return cmp >= 0;
|
|
126
|
+
case '>':
|
|
127
|
+
return cmp > 0;
|
|
128
|
+
case '<=':
|
|
129
|
+
return cmp <= 0;
|
|
130
|
+
case '<':
|
|
131
|
+
return cmp < 0;
|
|
132
|
+
case '~':
|
|
133
|
+
// >=base, same major.minor
|
|
134
|
+
return cmp >= 0 && target.major === base.major && target.minor === base.minor;
|
|
135
|
+
case '^':
|
|
136
|
+
if (cmp < 0)
|
|
137
|
+
return false;
|
|
138
|
+
// ^0.x is special: the minor acts as the breaking-change axis.
|
|
139
|
+
if (base.major === 0) {
|
|
140
|
+
return base.minor === 0
|
|
141
|
+
? target.major === 0 && target.minor === 0 && target.patch === base.patch
|
|
142
|
+
: target.major === 0 && target.minor === base.minor;
|
|
143
|
+
}
|
|
144
|
+
return target.major === base.major;
|
|
145
|
+
default:
|
|
146
|
+
return false;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=manifest.js.map
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ============================================================================
|
|
3
|
+
* Card 3 — the custom node/edge component AUTHORING CONTRACT
|
|
4
|
+
* ============================================================================
|
|
5
|
+
*
|
|
6
|
+
* SCOPE, STATED PLAINLY. Wave 4 shipped the HOST HOOK (`renderCustomNode(node,
|
|
7
|
+
* element)` on `createDiagram`) and wave 5 shipped HTML/foreignObject nodes with
|
|
8
|
+
* content-hash keying. Both are mechanisms: "here is a div, do what you like".
|
|
9
|
+
* Neither is an authoring CONTRACT — there was no typed prop bag, no lifecycle,
|
|
10
|
+
* and no way to get a component's MEASURED size back into the model, which is the
|
|
11
|
+
* hard half (a node whose height depends on its content cannot be laid out or
|
|
12
|
+
* routed to until something measures it).
|
|
13
|
+
*
|
|
14
|
+
* This is that contract, built ON those hooks rather than forking them.
|
|
15
|
+
*
|
|
16
|
+
* defineNodeComponent({ render, onUpdate, onDestroy, autoSize })
|
|
17
|
+
* mountNodeComponents(instance, registry) ← wires into renderCustomNode
|
|
18
|
+
*
|
|
19
|
+
* ---------------------------------------------------------------------------
|
|
20
|
+
* MEASURED SIZE — the part that actually matters
|
|
21
|
+
* ---------------------------------------------------------------------------
|
|
22
|
+
* A component that renders text of unknown length must be able to say "I turned
|
|
23
|
+
* out to be 214 px tall" and have the engine believe it: the node model resizes,
|
|
24
|
+
* links re-route to the new boundary, and the layout re-flows.
|
|
25
|
+
*
|
|
26
|
+
* We measure with a `ResizeObserver` on the component's own host element, and
|
|
27
|
+
* write the result back through `node.setSize()`. Two hazards, both handled:
|
|
28
|
+
*
|
|
29
|
+
* 1. FEEDBACK LOOP. Writing the size re-renders the node, which can resize the
|
|
30
|
+
* host, which fires the observer again. We break it by only writing when the
|
|
31
|
+
* measurement differs by more than a threshold (sub-pixel jitter from
|
|
32
|
+
* fractional zoom is not a resize).
|
|
33
|
+
*
|
|
34
|
+
* 2. ZOOM. `getBoundingClientRect()` on the host returns SCREEN px, which is
|
|
35
|
+
* world px × zoom. Writing that straight into the model would make a node
|
|
36
|
+
* grow every time you zoomed in. We use `offsetWidth/offsetHeight` (layout
|
|
37
|
+
* px, unaffected by the CSS transform on the layer) and fall back to
|
|
38
|
+
* dividing the client rect by the zoom.
|
|
39
|
+
*/
|
|
40
|
+
import type { NodeModel } from '@grafloria/engine';
|
|
41
|
+
import type { DiagramInstance } from '../instance/create-diagram';
|
|
42
|
+
import type { VNode } from '../types';
|
|
43
|
+
import type { Disposer } from './disposable';
|
|
44
|
+
/** The typed props a node component receives. Recomputed on every update. */
|
|
45
|
+
export interface NodeComponentProps<D = Record<string, unknown>> {
|
|
46
|
+
readonly id: string;
|
|
47
|
+
/** The node's own data bag (`node.data` / metadata). */
|
|
48
|
+
readonly data: D;
|
|
49
|
+
readonly selected: boolean;
|
|
50
|
+
readonly dragging: boolean;
|
|
51
|
+
readonly hovered: boolean;
|
|
52
|
+
/** Current camera zoom — for LOD rendering ("hide the detail below 0.5"). */
|
|
53
|
+
readonly zoom: number;
|
|
54
|
+
readonly width: number;
|
|
55
|
+
readonly height: number;
|
|
56
|
+
/** The node's ports, so a component can position its own handles. */
|
|
57
|
+
readonly ports: ReadonlyArray<{
|
|
58
|
+
id: string;
|
|
59
|
+
side: string;
|
|
60
|
+
type: string;
|
|
61
|
+
}>;
|
|
62
|
+
/** Escape hatch: the live model. Prefer the fields above. */
|
|
63
|
+
readonly node: NodeModel;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* A component's render function.
|
|
67
|
+
*
|
|
68
|
+
* Return a `VNode` to have the renderer patch it (the framework-agnostic path),
|
|
69
|
+
* or take the `HTMLElement` and own it yourself (the React/Angular/Vue path —
|
|
70
|
+
* mount a portal into it and return `void`).
|
|
71
|
+
*/
|
|
72
|
+
export type NodeRenderFn<D = Record<string, unknown>> = (props: NodeComponentProps<D>, element: HTMLElement) => VNode | void;
|
|
73
|
+
export interface NodeComponent<D = Record<string, unknown>> {
|
|
74
|
+
render: NodeRenderFn<D>;
|
|
75
|
+
/** Called on every prop change AFTER the first render. Optional fast path. */
|
|
76
|
+
onUpdate?: (props: NodeComponentProps<D>, element: HTMLElement) => void;
|
|
77
|
+
/** Unmount your framework's subtree here. */
|
|
78
|
+
onDestroy?: (element: HTMLElement) => void;
|
|
79
|
+
/**
|
|
80
|
+
* Measure the rendered element and write the size back into the model, so
|
|
81
|
+
* layout + routing see the node's REAL extent. Default false — a node whose
|
|
82
|
+
* size is authored should not be silently overridden by its content.
|
|
83
|
+
*/
|
|
84
|
+
autoSize?: boolean;
|
|
85
|
+
/** Ignore measurement deltas smaller than this (px). Default 1. */
|
|
86
|
+
sizeThreshold?: number;
|
|
87
|
+
}
|
|
88
|
+
export declare function defineNodeComponent<D = Record<string, unknown>>(component: NodeComponent<D>): NodeComponent<D>;
|
|
89
|
+
/** type → component. */
|
|
90
|
+
export type NodeComponentRegistry = Record<string, NodeComponent<never>>;
|
|
91
|
+
/**
|
|
92
|
+
* Wire a component registry into a live diagram.
|
|
93
|
+
*
|
|
94
|
+
* Returns a disposer that unmounts every component and disconnects every
|
|
95
|
+
* observer — the leak rule; a stranded ResizeObserver keeps its target's whole
|
|
96
|
+
* subtree alive.
|
|
97
|
+
*/
|
|
98
|
+
export declare function mountNodeComponents(instance: DiagramInstance, registry: NodeComponentRegistry): Disposer;
|
|
99
|
+
/**
|
|
100
|
+
* The options you hand to `createDiagram()` to use a component registry from the
|
|
101
|
+
* very first paint (preferred over `mountNodeComponents` on a running instance,
|
|
102
|
+
* because the first render then already has the components).
|
|
103
|
+
*
|
|
104
|
+
* ```ts
|
|
105
|
+
* const diagram = createDiagram(el, {
|
|
106
|
+
* nodes, edges,
|
|
107
|
+
* ...nodeComponentOptions(registry, () => diagram),
|
|
108
|
+
* });
|
|
109
|
+
* ```
|
|
110
|
+
*/
|
|
111
|
+
export declare function nodeComponentOptions(registry: NodeComponentRegistry, getInstance: () => DiagramInstance): {
|
|
112
|
+
renderCustomNode: (node: NodeModel, element: HTMLElement) => void;
|
|
113
|
+
removeCustomNode: (id: string, element: HTMLElement) => void;
|
|
114
|
+
};
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ============================================================================
|
|
4
|
+
* Card 3 — the custom node/edge component AUTHORING CONTRACT
|
|
5
|
+
* ============================================================================
|
|
6
|
+
*
|
|
7
|
+
* SCOPE, STATED PLAINLY. Wave 4 shipped the HOST HOOK (`renderCustomNode(node,
|
|
8
|
+
* element)` on `createDiagram`) and wave 5 shipped HTML/foreignObject nodes with
|
|
9
|
+
* content-hash keying. Both are mechanisms: "here is a div, do what you like".
|
|
10
|
+
* Neither is an authoring CONTRACT — there was no typed prop bag, no lifecycle,
|
|
11
|
+
* and no way to get a component's MEASURED size back into the model, which is the
|
|
12
|
+
* hard half (a node whose height depends on its content cannot be laid out or
|
|
13
|
+
* routed to until something measures it).
|
|
14
|
+
*
|
|
15
|
+
* This is that contract, built ON those hooks rather than forking them.
|
|
16
|
+
*
|
|
17
|
+
* defineNodeComponent({ render, onUpdate, onDestroy, autoSize })
|
|
18
|
+
* mountNodeComponents(instance, registry) ← wires into renderCustomNode
|
|
19
|
+
*
|
|
20
|
+
* ---------------------------------------------------------------------------
|
|
21
|
+
* MEASURED SIZE — the part that actually matters
|
|
22
|
+
* ---------------------------------------------------------------------------
|
|
23
|
+
* A component that renders text of unknown length must be able to say "I turned
|
|
24
|
+
* out to be 214 px tall" and have the engine believe it: the node model resizes,
|
|
25
|
+
* links re-route to the new boundary, and the layout re-flows.
|
|
26
|
+
*
|
|
27
|
+
* We measure with a `ResizeObserver` on the component's own host element, and
|
|
28
|
+
* write the result back through `node.setSize()`. Two hazards, both handled:
|
|
29
|
+
*
|
|
30
|
+
* 1. FEEDBACK LOOP. Writing the size re-renders the node, which can resize the
|
|
31
|
+
* host, which fires the observer again. We break it by only writing when the
|
|
32
|
+
* measurement differs by more than a threshold (sub-pixel jitter from
|
|
33
|
+
* fractional zoom is not a resize).
|
|
34
|
+
*
|
|
35
|
+
* 2. ZOOM. `getBoundingClientRect()` on the host returns SCREEN px, which is
|
|
36
|
+
* world px × zoom. Writing that straight into the model would make a node
|
|
37
|
+
* grow every time you zoomed in. We use `offsetWidth/offsetHeight` (layout
|
|
38
|
+
* px, unaffected by the CSS transform on the layer) and fall back to
|
|
39
|
+
* dividing the client rect by the zoom.
|
|
40
|
+
*/
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.defineNodeComponent = defineNodeComponent;
|
|
43
|
+
exports.mountNodeComponents = mountNodeComponents;
|
|
44
|
+
exports.nodeComponentOptions = nodeComponentOptions;
|
|
45
|
+
const disposable_1 = require("./disposable");
|
|
46
|
+
function defineNodeComponent(component) {
|
|
47
|
+
return component;
|
|
48
|
+
}
|
|
49
|
+
function propsFor(node, zoom, dragging) {
|
|
50
|
+
var _a, _b, _c, _d, _e;
|
|
51
|
+
return {
|
|
52
|
+
id: node.id,
|
|
53
|
+
data: ((_c = (_a = node.data) !== null && _a !== void 0 ? _a : (_b = node.getMetadata) === null || _b === void 0 ? void 0 : _b.call(node, 'data')) !== null && _c !== void 0 ? _c : {}),
|
|
54
|
+
selected: ((_d = node.state) === null || _d === void 0 ? void 0 : _d.selected) === true,
|
|
55
|
+
// NOTE: `dragging` is NOT on NodeState — node-drag lives in the DomEventBinder.
|
|
56
|
+
// The instance exposes it via getDraggingNodeIds(); see Card 3 in that file.
|
|
57
|
+
dragging,
|
|
58
|
+
hovered: ((_e = node.state) === null || _e === void 0 ? void 0 : _e.hovered) === true,
|
|
59
|
+
zoom,
|
|
60
|
+
width: node.size.width,
|
|
61
|
+
height: node.size.height,
|
|
62
|
+
ports: node.getPorts().map((p) => {
|
|
63
|
+
var _a, _b;
|
|
64
|
+
return ({
|
|
65
|
+
id: p.id,
|
|
66
|
+
side: String((_b = (_a = p.alignment) === null || _a === void 0 ? void 0 : _a.side) !== null && _b !== void 0 ? _b : 'right'),
|
|
67
|
+
type: String(p.type),
|
|
68
|
+
});
|
|
69
|
+
}),
|
|
70
|
+
node,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Wire a component registry into a live diagram.
|
|
75
|
+
*
|
|
76
|
+
* Returns a disposer that unmounts every component and disconnects every
|
|
77
|
+
* observer — the leak rule; a stranded ResizeObserver keeps its target's whole
|
|
78
|
+
* subtree alive.
|
|
79
|
+
*/
|
|
80
|
+
function mountNodeComponents(instance, registry) {
|
|
81
|
+
const store = new disposable_1.DisposableStore();
|
|
82
|
+
const mounted = new Map();
|
|
83
|
+
const observers = new Map();
|
|
84
|
+
const componentFor = (node) => { var _a, _b, _c; return (_a = registry[String(node.type)]) !== null && _a !== void 0 ? _a : registry[String((_c = (_b = node.getMetadata) === null || _b === void 0 ? void 0 : _b.call(node, 'component')) !== null && _c !== void 0 ? _c : '')]; };
|
|
85
|
+
/**
|
|
86
|
+
* The READ half of auto-sizing: measure, and return the size to write back (or
|
|
87
|
+
* null when there is nothing to do). It writes NOTHING — see `measureAll`.
|
|
88
|
+
*/
|
|
89
|
+
const readSize = (node, element, component) => {
|
|
90
|
+
var _a;
|
|
91
|
+
if (!component.autoSize)
|
|
92
|
+
return null;
|
|
93
|
+
const threshold = (_a = component.sizeThreshold) !== null && _a !== void 0 ? _a : 1;
|
|
94
|
+
const zoom = instance.viewport.getZoom() || 1;
|
|
95
|
+
// offsetWidth/Height are LAYOUT px — immune to the CSS transform the HTML
|
|
96
|
+
// layer carries. The client-rect fallback must be divided by the zoom, or the
|
|
97
|
+
// node would grow every time the user zoomed in.
|
|
98
|
+
const width = element.offsetWidth || element.getBoundingClientRect().width / zoom;
|
|
99
|
+
const height = element.offsetHeight || element.getBoundingClientRect().height / zoom;
|
|
100
|
+
if (!(width > 0) || !(height > 0))
|
|
101
|
+
return null;
|
|
102
|
+
if (Math.abs(width - node.size.width) < threshold &&
|
|
103
|
+
Math.abs(height - node.size.height) < threshold) {
|
|
104
|
+
return null; // sub-threshold jitter — writing it would loop
|
|
105
|
+
}
|
|
106
|
+
return { width, height };
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* wave8/dirty — Card 1: measure a WHOLE batch of components in one read phase.
|
|
110
|
+
*
|
|
111
|
+
* The bug this replaces: `renderInto()` used to write a component's DOM and
|
|
112
|
+
* then immediately read `offsetWidth` off it. Inside `refresh()`, which loops
|
|
113
|
+
* over every mounted component, that is
|
|
114
|
+
*
|
|
115
|
+
* write → READ → write → READ → write → READ …
|
|
116
|
+
*
|
|
117
|
+
* and every one of those reads forces the browser to flush layout synchronously
|
|
118
|
+
* to answer it. N custom nodes ⇒ N forced layouts per frame. Textbook layout
|
|
119
|
+
* thrash, and invisible until someone puts 200 custom nodes on a canvas.
|
|
120
|
+
*
|
|
121
|
+
* Now: all writes, then all reads (ONE layout flush, because the first read
|
|
122
|
+
* pays for the whole batch), then the size write-backs — inside a single
|
|
123
|
+
* `batchUpdate` so N resizes still cost exactly one repaint.
|
|
124
|
+
*/
|
|
125
|
+
const measureAll = (pending) => {
|
|
126
|
+
if (pending.length === 0)
|
|
127
|
+
return;
|
|
128
|
+
// -- READ PHASE (no writes in this loop) ---------------------------------
|
|
129
|
+
const sizes = [];
|
|
130
|
+
for (const { node, element, component } of pending) {
|
|
131
|
+
const size = readSize(node, element, component);
|
|
132
|
+
if (size)
|
|
133
|
+
sizes.push(Object.assign({ node }, size));
|
|
134
|
+
}
|
|
135
|
+
if (sizes.length === 0)
|
|
136
|
+
return;
|
|
137
|
+
// -- WRITE-BACK PHASE ----------------------------------------------------
|
|
138
|
+
const batch = instance.batchUpdate;
|
|
139
|
+
const apply = () => {
|
|
140
|
+
// Wave 9 — Card 7: a SYSTEM write, for the same reason as svg/auto-size.ts —
|
|
141
|
+
// this is the MEASURED size of the component the document already declares,
|
|
142
|
+
// not an edit to the document. Exempt from the read-only lock so a custom
|
|
143
|
+
// node still sizes correctly in presentation mode.
|
|
144
|
+
for (const { node, width, height } of sizes) {
|
|
145
|
+
const write = () => node.setSize(width, height);
|
|
146
|
+
node.diagram ? node.diagram.runSystemWrite(write) : write();
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
// `batchUpdate` is the wave8 entry point; tolerate an older instance shape
|
|
150
|
+
// (tests build partial fakes) by falling back to the plain path.
|
|
151
|
+
if (typeof batch === 'function')
|
|
152
|
+
batch.call(instance, apply);
|
|
153
|
+
else {
|
|
154
|
+
apply();
|
|
155
|
+
instance.render();
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
/** The WRITE half: paint the component into its host. Reads nothing. */
|
|
159
|
+
const writeInto = (node, element, first) => {
|
|
160
|
+
const component = componentFor(node);
|
|
161
|
+
if (!component)
|
|
162
|
+
return false;
|
|
163
|
+
const dragging = instance.getDraggingNodeIds().includes(node.id);
|
|
164
|
+
const props = propsFor(node, instance.viewport.getZoom(), dragging);
|
|
165
|
+
if (first || !component.onUpdate) {
|
|
166
|
+
const vnode = component.render(props, element);
|
|
167
|
+
// A VNode-returning component gets patched for free; an element-owning one
|
|
168
|
+
// returned void and has already done its own thing.
|
|
169
|
+
if (vnode)
|
|
170
|
+
instance.patcher.reconcile(element, vnode);
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
component.onUpdate(props, element);
|
|
174
|
+
}
|
|
175
|
+
return !!component.autoSize;
|
|
176
|
+
};
|
|
177
|
+
const renderInto = (node, element, first) => {
|
|
178
|
+
const component = componentFor(node);
|
|
179
|
+
if (!component)
|
|
180
|
+
return;
|
|
181
|
+
if (writeInto(node, element, first))
|
|
182
|
+
measureAll([{ node, element, component }]);
|
|
183
|
+
};
|
|
184
|
+
// The host hook wave 4 shipped. We are a CONSUMER of it, not a replacement.
|
|
185
|
+
const onCreate = (node, element) => {
|
|
186
|
+
const component = componentFor(node);
|
|
187
|
+
if (!component)
|
|
188
|
+
return;
|
|
189
|
+
mounted.set(node.id, { component, element });
|
|
190
|
+
renderInto(node, element, true);
|
|
191
|
+
if (component.autoSize && typeof ResizeObserver !== 'undefined') {
|
|
192
|
+
// A ResizeObserver callback already runs after layout, so reading here is
|
|
193
|
+
// free — but route it through measureAll anyway so there is exactly one
|
|
194
|
+
// place that reads a size and one place that writes it back.
|
|
195
|
+
const observer = new ResizeObserver(() => measureAll([{ node, element, component }]));
|
|
196
|
+
observer.observe(element);
|
|
197
|
+
observers.set(node.id, observer);
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
const onRemove = (id, element) => {
|
|
201
|
+
var _a, _b, _c;
|
|
202
|
+
(_a = observers.get(id)) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
203
|
+
observers.delete(id);
|
|
204
|
+
const entry = mounted.get(id);
|
|
205
|
+
(_c = entry === null || entry === void 0 ? void 0 : (_b = entry.component).onDestroy) === null || _c === void 0 ? void 0 : _c.call(_b, element);
|
|
206
|
+
// Drop any VNode tree we patched in, so the patcher does not keep the old
|
|
207
|
+
// DOM keyed against a node that no longer exists.
|
|
208
|
+
if (entry)
|
|
209
|
+
instance.patcher.unmount(element);
|
|
210
|
+
mounted.delete(id);
|
|
211
|
+
};
|
|
212
|
+
// Re-render mounted components when their node or the camera changes (zoom is
|
|
213
|
+
// a PROP — an LOD component must re-render when it crosses its threshold).
|
|
214
|
+
//
|
|
215
|
+
// wave8/dirty — Card 1: WRITE every component first, THEN measure them all in
|
|
216
|
+
// one read pass. Interleaving (the old shape) cost one forced layout per node.
|
|
217
|
+
const refresh = () => {
|
|
218
|
+
const pending = [];
|
|
219
|
+
for (const [id, entry] of mounted) {
|
|
220
|
+
const node = instance.getModel().getNode(id);
|
|
221
|
+
if (!node)
|
|
222
|
+
continue;
|
|
223
|
+
if (writeInto(node, entry.element, false)) {
|
|
224
|
+
pending.push({ node, element: entry.element, component: entry.component });
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
measureAll(pending);
|
|
228
|
+
};
|
|
229
|
+
store.add(instance.on('nodes:change', refresh));
|
|
230
|
+
store.add(instance.on('selection:change', refresh));
|
|
231
|
+
store.add(instance.on('viewport:change', refresh));
|
|
232
|
+
// Hand our hooks to the instance. NOTE: `createDiagram` takes these as OPTIONS,
|
|
233
|
+
// so a diagram already running needs them installed here.
|
|
234
|
+
const host = instance;
|
|
235
|
+
host.__nodeComponentHooks = { renderCustomNode: onCreate, removeCustomNode: onRemove };
|
|
236
|
+
store.add(() => {
|
|
237
|
+
for (const [id, entry] of [...mounted])
|
|
238
|
+
onRemove(id, entry.element);
|
|
239
|
+
mounted.clear();
|
|
240
|
+
for (const observer of observers.values())
|
|
241
|
+
observer.disconnect();
|
|
242
|
+
observers.clear();
|
|
243
|
+
delete host.__nodeComponentHooks;
|
|
244
|
+
});
|
|
245
|
+
return (0, disposable_1.once)(() => store.dispose());
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* The options you hand to `createDiagram()` to use a component registry from the
|
|
249
|
+
* very first paint (preferred over `mountNodeComponents` on a running instance,
|
|
250
|
+
* because the first render then already has the components).
|
|
251
|
+
*
|
|
252
|
+
* ```ts
|
|
253
|
+
* const diagram = createDiagram(el, {
|
|
254
|
+
* nodes, edges,
|
|
255
|
+
* ...nodeComponentOptions(registry, () => diagram),
|
|
256
|
+
* });
|
|
257
|
+
* ```
|
|
258
|
+
*/
|
|
259
|
+
function nodeComponentOptions(registry, getInstance) {
|
|
260
|
+
let disposer;
|
|
261
|
+
let wired = false;
|
|
262
|
+
const ensure = () => {
|
|
263
|
+
const instance = getInstance();
|
|
264
|
+
if (!instance)
|
|
265
|
+
return undefined;
|
|
266
|
+
if (!wired) {
|
|
267
|
+
wired = true;
|
|
268
|
+
disposer = mountNodeComponents(instance, registry);
|
|
269
|
+
void disposer;
|
|
270
|
+
}
|
|
271
|
+
return instance;
|
|
272
|
+
};
|
|
273
|
+
return {
|
|
274
|
+
renderCustomNode(node, element) {
|
|
275
|
+
var _a;
|
|
276
|
+
const instance = ensure();
|
|
277
|
+
if (!instance)
|
|
278
|
+
return;
|
|
279
|
+
const hooks = instance.__nodeComponentHooks;
|
|
280
|
+
(_a = hooks === null || hooks === void 0 ? void 0 : hooks.renderCustomNode) === null || _a === void 0 ? void 0 : _a.call(hooks, node, element);
|
|
281
|
+
},
|
|
282
|
+
removeCustomNode(id, element) {
|
|
283
|
+
var _a;
|
|
284
|
+
const instance = getInstance();
|
|
285
|
+
const hooks = instance === null || instance === void 0 ? void 0 : instance.__nodeComponentHooks;
|
|
286
|
+
(_a = hooks === null || hooks === void 0 ? void 0 : hooks.removeCustomNode) === null || _a === void 0 ? void 0 : _a.call(hooks, id, element);
|
|
287
|
+
},
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
//# sourceMappingURL=node-component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function loadCanvasPlugins(): Promise<typeof import('./components/attach')>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadCanvasPlugins = loadCanvasPlugins;
|
|
4
|
+
/**
|
|
5
|
+
* Lazy, memoized loader for the canvas-plugins chain (minimap, zoom/fit
|
|
6
|
+
* controls, background grid) — the elkjs recipe applied to the ext layer.
|
|
7
|
+
*
|
|
8
|
+
* The framework wrappers reference `attachCanvasPlugins` on their `plugins`
|
|
9
|
+
* code path; a STATIC import makes every consumer bundle carry the whole ext
|
|
10
|
+
* chain whether plugins are used or not (measured: +0.6 MB on the Angular
|
|
11
|
+
* consumer app). Loading through `import()` keeps the chain out of the module
|
|
12
|
+
* graph until the first attach — bundlers split it into its own chunk.
|
|
13
|
+
*/
|
|
14
|
+
let pending;
|
|
15
|
+
function loadCanvasPlugins() {
|
|
16
|
+
return (pending !== null && pending !== void 0 ? pending : (pending = Promise.resolve().then(() => require('./components/attach'))));
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=plugins-loader.js.map
|