@likec4/diagram 1.40.0 → 1.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/bundle/index.js +44253 -25320
- package/bundle/package.json +4 -0
- package/custom/package.json +4 -0
- package/dist/LikeC4Diagram.d.ts +7 -1
- package/dist/LikeC4Diagram.js +35 -28
- package/dist/LikeC4Diagram.props.d.ts +40 -30
- package/dist/LikeC4ModelProvider.js +1 -1
- package/dist/LikeC4ProjectsProvider.js +1 -1
- package/dist/LikeC4Styles.d.ts +6 -2
- package/dist/LikeC4Styles.js +22 -54
- package/dist/{bundle/LikeC4View.props.d.ts → LikeC4View.d.ts} +29 -25
- package/dist/LikeC4View.js +173 -0
- package/dist/{bundle/ReactLikeC4.d.ts → ReactLikeC4.d.ts} +15 -9
- package/dist/ReactLikeC4.js +65 -0
- package/dist/StaticLikeC4Diagram.d.ts +7 -1
- package/dist/StaticLikeC4Diagram.js +0 -1
- package/dist/base/BaseXYFlow.d.ts +3 -3
- package/dist/base/BaseXYFlow.js +11 -9
- package/dist/base/index.d.ts +1 -1
- package/dist/base/types.d.ts +65 -65
- package/dist/base/types.js +44 -45
- package/dist/base/updateEdges.d.ts +3 -3
- package/dist/base/updateNodes.d.ts +3 -3
- package/dist/{base/primitives/MarkdownBlock.d.ts → base-primitives/Markdown.d.ts} +4 -4
- package/dist/{base/primitives/MarkdownBlock.js → base-primitives/Markdown.js} +8 -5
- package/dist/{base/primitives → base-primitives}/NodeHandles.js +8 -1
- package/dist/{base/primitives → base-primitives}/compound/CompoundActionButton.d.ts +2 -2
- package/dist/{base/primitives → base-primitives}/compound/CompoundActionButton.js +2 -2
- package/dist/{base/primitives → base-primitives}/compound/CompoundDetailsButton.d.ts +2 -2
- package/dist/{base/primitives → base-primitives}/compound/CompoundDetailsButton.js +2 -2
- package/dist/{base/primitives → base-primitives}/compound/CompoundNodeContainer.d.ts +3 -3
- package/dist/{base/primitives → base-primitives}/compound/CompoundNodeContainer.js +1 -2
- package/dist/base-primitives/compound/CompoundTitle.d.ts +13 -0
- package/dist/{base/primitives → base-primitives}/compound/CompoundTitle.js +3 -7
- package/dist/{base/primitives → base-primitives}/compound/actionbtns.css.d.ts +1 -1
- package/dist/{base/primitives → base-primitives}/edge/EdgeActionButton.js +2 -2
- package/dist/{base/primitives → base-primitives}/edge/EdgeContainer.d.ts +2 -2
- package/dist/{base/primitives → base-primitives}/edge/EdgeLabel.d.ts +2 -2
- package/dist/{base/primitives → base-primitives}/edge/EdgeLabel.js +2 -1
- package/dist/{base/primitives → base-primitives}/edge/EdgeLabelContainer.d.ts +2 -2
- package/dist/{base/primitives → base-primitives}/edge/EdgeLabelContainer.js +2 -2
- package/dist/{base/primitives → base-primitives}/edge/EdgePath.d.ts +2 -2
- package/dist/base-primitives/element/ElementActionButtons.d.ts +40 -0
- package/dist/base-primitives/element/ElementActionButtons.js +86 -0
- package/dist/base-primitives/element/ElementData.d.ts +65 -0
- package/dist/base-primitives/element/ElementData.js +121 -0
- package/dist/{base/primitives → base-primitives}/element/ElementDetailsButton.d.ts +4 -2
- package/dist/{base/primitives → base-primitives}/element/ElementDetailsButton.js +2 -2
- package/dist/{base/primitives → base-primitives}/element/ElementNodeContainer.d.ts +8 -13
- package/dist/base-primitives/element/ElementShape.d.ts +18 -0
- package/dist/{base/primitives → base-primitives}/element/ElementShape.js +31 -43
- package/dist/{base/primitives → base-primitives}/element/ElementTags.d.ts +2 -2
- package/dist/{base/primitives → base-primitives}/element/ElementTags.js +4 -4
- package/dist/{base/primitives → base-primitives}/index.d.ts +4 -4
- package/dist/base-primitives/memoEdge.d.ts +3 -0
- package/dist/{base/primitives/customEdge.js → base-primitives/memoEdge.js} +2 -2
- package/dist/base-primitives/memoNode.d.ts +3 -0
- package/dist/{base/primitives/customNode.js → base-primitives/memoNode.js} +12 -3
- package/dist/bundle/index.d.ts +1 -8
- package/dist/components/ErrorFallback.js +36 -17
- package/dist/components/Link.js +30 -22
- package/dist/components/Logo.d.ts +5 -0
- package/dist/components/PortalToContainer.d.ts +6 -0
- package/dist/components/PortalToContainer.js +14 -0
- package/dist/{context → components}/RootContainer.d.ts +1 -6
- package/dist/{context → components}/RootContainer.js +12 -11
- package/dist/{bundle → components}/ViewNotFound.js +2 -2
- package/dist/context/DiagramEventHandlers.d.ts +3 -3
- package/dist/context/DiagramEventHandlers.js +20 -16
- package/dist/context/DiagramFeatures.d.ts +1 -1
- package/dist/context/DiagramFeatures.js +0 -1
- package/dist/context/IconRenderer.d.ts +4 -3
- package/dist/context/IconRenderer.js +10 -8
- package/dist/context/RootContainerContext.d.ts +11 -0
- package/dist/context/RootContainerContext.js +18 -0
- package/dist/context/TagStylesContext.js +22 -25
- package/dist/context/index.d.ts +1 -1
- package/dist/custom/builtins.d.ts +1 -0
- package/dist/custom/customNodes.d.ts +30 -43
- package/dist/custom/customNodes.js +21 -10
- package/dist/custom/hooks.d.ts +5 -6
- package/dist/custom/index.d.ts +11 -1
- package/dist/custom/index.js +25 -20
- package/dist/custom/primitives.d.ts +1 -0
- package/dist/hooks/index.d.ts +6 -0
- package/dist/hooks/safeContext.d.ts +1 -1
- package/dist/{likec4model → hooks}/useCurrentViewModel.d.ts +2 -1
- package/dist/hooks/useCurrentViewModel.js +12 -0
- package/dist/hooks/useDiagram.d.ts +23 -15
- package/dist/hooks/useDiagram.js +1 -1
- package/dist/{likec4model → hooks}/useLikeC4Model.d.ts +1 -0
- package/dist/{likec4model → hooks}/useLikeC4Model.js +5 -2
- package/dist/{likec4model → hooks}/useLikeC4Project.d.ts +1 -1
- package/dist/{likec4model → hooks}/useLikeC4Project.js +2 -2
- package/dist/hooks/useLikeC4Styles.d.ts +2 -0
- package/dist/hooks/useLikeC4Styles.js +18 -0
- package/dist/hooks/useMantinePortalProps.js +2 -2
- package/dist/hooks/useXYFlow.d.ts +10 -10
- package/dist/hooks/useXYFlow.js +11 -5
- package/dist/index.d.ts +14 -5
- package/dist/index.js +9 -13
- package/dist/likec4diagram/DiagramUI.d.ts +1 -1
- package/dist/likec4diagram/DiagramUI.js +10 -16
- package/dist/likec4diagram/DiagramXYFlow.js +131 -117
- package/dist/likec4diagram/convert-to-xyflow.js +2 -2
- package/dist/likec4diagram/custom/edges/RelationshipEdge.d.ts +3 -51
- package/dist/likec4diagram/custom/edges/RelationshipEdge.js +8 -9
- package/dist/likec4diagram/custom/edges/SequenceStepEdge.d.ts +1 -2
- package/dist/likec4diagram/custom/edges/SequenceStepEdge.js +5 -5
- package/dist/likec4diagram/custom/index.d.ts +16 -0
- package/dist/likec4diagram/custom/index.js +12 -12
- package/dist/likec4diagram/custom/nodes/CompoundActions.d.ts +1 -2
- package/dist/likec4diagram/custom/nodes/CompoundActions.js +1 -1
- package/dist/likec4diagram/custom/nodes/ElementActions.d.ts +61 -5
- package/dist/likec4diagram/custom/nodes/ElementActions.js +8 -8
- package/dist/likec4diagram/custom/nodes/SequenceActorNode.d.ts +2 -3
- package/dist/likec4diagram/custom/nodes/SequenceActorNode.js +12 -24
- package/dist/likec4diagram/custom/nodes/nodes.d.ts +10 -10
- package/dist/likec4diagram/custom/nodes/nodes.js +25 -28
- package/dist/likec4diagram/custom/nodes/toolbar/ColorButton.d.ts +3 -2
- package/dist/likec4diagram/custom/nodes/toolbar/ColorButton.js +17 -12
- package/dist/likec4diagram/custom/nodes/toolbar/CompoundToolbar.d.ts +2 -6
- package/dist/likec4diagram/custom/nodes/toolbar/ElementToolbar.d.ts +2 -6
- package/dist/likec4diagram/custom/nodes/toolbar/ElementToolbar.js +3 -3
- package/dist/likec4diagram/custom/nodes/toolbar/Toolbar.d.ts +2 -3
- package/dist/likec4diagram/custom/nodes/toolbar/_shared.d.ts +5 -19
- package/dist/likec4diagram/custom/nodes/toolbar/_shared.js +11 -22
- package/dist/likec4diagram/relationship-popover/RelationshipPopover.js +50 -49
- package/dist/likec4diagram/relationship-popover/actor.d.ts +1 -1
- package/dist/{state → likec4diagram/state}/DiagramActorProvider.d.ts +1 -1
- package/dist/{state → likec4diagram/state}/DiagramActorProvider.js +55 -37
- package/dist/{state → likec4diagram/state}/assign.d.ts +1 -1
- package/dist/{state → likec4diagram/state}/assign.js +3 -4
- package/dist/{state → likec4diagram/state}/diagram-machine.d.ts +178 -138
- package/dist/{state → likec4diagram/state}/diagram-machine.js +34 -24
- package/dist/{state → likec4diagram/state}/persistence.d.ts +1 -1
- package/dist/{state → likec4diagram/state}/syncManualLayoutActor.d.ts +1 -1
- package/dist/{state → likec4diagram/state}/syncManualLayoutActor.js +2 -2
- package/dist/{state → likec4diagram/state}/types.d.ts +2 -2
- package/dist/{state → likec4diagram/state}/utils.d.ts +2 -2
- package/dist/likec4diagram/types.d.ts +51 -34
- package/dist/likec4diagram/ui/index.d.ts +0 -3
- package/dist/likec4diagram/ui/notation/NotationPanel.css.js +4 -1
- package/dist/likec4diagram/ui/notation/NotationPanel.js +6 -6
- package/dist/likec4diagram/useLayoutConstraints.d.ts +1 -1
- package/dist/likec4diagram/xyflow-diagram/diagram-view.d.ts +1 -1
- package/dist/likec4diagram/xyflow-diagram/diagram-view.js +12 -9
- package/dist/likec4diagram/xyflow-sequence/const.js +1 -8
- package/dist/likec4diagram/xyflow-sequence/sequence-layout.d.ts +7 -0
- package/dist/likec4diagram/xyflow-sequence/sequence-layout.js +181 -0
- package/dist/navigationpanel/NavigationPanel.js +5 -6
- package/dist/navigationpanel/NavigationPanelControls.js +1 -2
- package/dist/navigationpanel/NavigationPanelDropdown.js +7 -7
- package/dist/navigationpanel/_common.js +1 -1
- package/dist/navigationpanel/actor.d.ts +1 -1
- package/dist/navigationpanel/controls/BurgerButton.js +1 -1
- package/dist/navigationpanel/controls/NavigationButtons.js +2 -2
- package/dist/navigationpanel/controls/OpenSource.js +1 -1
- package/dist/navigationpanel/controls/SearchControl.js +1 -1
- package/dist/navigationpanel/controls/ToggleReadonly.js +2 -2
- package/dist/navigationpanel/controls/ViewDetailsCard.js +30 -20
- package/dist/navigationpanel/dropdown/ProjectsMenu.js +2 -2
- package/dist/navigationpanel/editorpanel/CenterCamera.js +1 -1
- package/dist/navigationpanel/editorpanel/ChangeAutoLayoutButton.js +1 -1
- package/dist/navigationpanel/editorpanel/LayoutDriftNotification.js +1 -1
- package/dist/navigationpanel/editorpanel/ManualLayoutToolsButton.js +9 -9
- package/dist/navigationpanel/hooks.d.ts +3 -3
- package/dist/navigationpanel/hooks.js +2 -2
- package/dist/navigationpanel/styles.css.d.ts +1 -1
- package/dist/navigationpanel/walkthrough/ActiveWalkthroughControls.js +3 -3
- package/dist/navigationpanel/walkthrough/DynamicViewControls.d.ts +107 -107
- package/dist/navigationpanel/walkthrough/DynamicViewControls.js +3 -13
- package/dist/navigationpanel/walkthrough/WalkthroughPanel.js +2 -2
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/createReactComponent.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/defaultAttributes.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconAlertTriangle.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowDownRight.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowLeft.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowRight.js +1 -1
- package/dist/node_modules/.pnpm/@tabler_icons-react@3.35.0_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconBolt.js +14 -0
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconBrowser.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconCheck.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronDown.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronLeft.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronRight.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconCopy.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconCylinder.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconDeviceMobile.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconExternalLink.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconFileSymlink.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconFocusCentered.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconFolderFilled.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconHelpCircle.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconId.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconInfoCircle.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignBottom.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignCenter.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignLeft.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignMiddle.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignRight.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignTop.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutBoardSplit.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutCollage.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutDashboard.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLink.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLock.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconLockOpen2.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconMenu2.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerPlayFilled.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerSkipBackFilled.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerSkipForwardFilled.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerStopFilled.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconRectangularPrism.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconReorder.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconRouteOff.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconSearch.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconSelector.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconStack2.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconStarFilled.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconTarget.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconTransform.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconUser.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconX.js +1 -1
- package/dist/node_modules/.pnpm/{@tabler_icons-react@3.34.1_react@19.1.1 → @tabler_icons-react@3.35.0_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/icons/IconZoomScan.js +1 -1
- package/dist/overlays/element-details/ElementDetailsCard.css.js +8 -2
- package/dist/overlays/element-details/ElementDetailsCard.js +45 -43
- package/dist/overlays/element-details/TabPanelDeployments.js +4 -4
- package/dist/overlays/element-details/TabPanelRelationships.js +5 -7
- package/dist/overlays/element-details/TabPanelStructure.js +1 -1
- package/dist/overlays/element-details/actor.d.ts +14 -16620
- package/dist/overlays/element-details/actor.js +2 -1
- package/dist/overlays/overlay/Overlay.js +9 -6
- package/dist/overlays/relationship-details/RelationshipDetails.d.ts +3 -43
- package/dist/overlays/relationship-details/RelationshipDetails.js +6 -6
- package/dist/overlays/relationship-details/SelectEdge.js +2 -2
- package/dist/overlays/relationship-details/_types.d.ts +29 -12
- package/dist/overlays/relationship-details/actor.d.ts +14 -54
- package/dist/overlays/relationship-details/actor.js +4 -3
- package/dist/overlays/relationship-details/compute.d.ts +2 -1
- package/dist/overlays/relationship-details/custom/ElementActions.d.ts +1 -4
- package/dist/overlays/relationship-details/custom/ElementActions.js +4 -4
- package/dist/overlays/relationship-details/custom/edgeTypes.d.ts +3 -43
- package/dist/overlays/relationship-details/custom/edgeTypes.js +7 -9
- package/dist/overlays/relationship-details/custom/nodeTypes.d.ts +10 -0
- package/dist/overlays/relationship-details/custom/nodeTypes.js +19 -17
- package/dist/overlays/relationship-details/hooks.d.ts +5 -377
- package/dist/overlays/relationship-details/layout-to-xyflow.js +11 -10
- package/dist/overlays/relationship-details/layout.d.ts +5 -4
- package/dist/overlays/relationship-details/layout.js +7 -8
- package/dist/overlays/relationships-browser/RelationshipsBrowser.d.ts +3 -44
- package/dist/overlays/relationships-browser/RelationshipsBrowser.js +14 -9
- package/dist/overlays/relationships-browser/SelectElement.js +4 -4
- package/dist/overlays/relationships-browser/_types.d.ts +30 -13
- package/dist/overlays/relationships-browser/actor.d.ts +17 -523
- package/dist/overlays/relationships-browser/actor.js +5 -4
- package/dist/overlays/relationships-browser/const.d.ts +6 -2
- package/dist/overlays/relationships-browser/custom/ElementActions.d.ts +1 -4
- package/dist/overlays/relationships-browser/custom/ElementActions.js +4 -4
- package/dist/overlays/relationships-browser/custom/EmptyNode.d.ts +1 -4
- package/dist/overlays/relationships-browser/custom/edgeTypes.d.ts +3 -44
- package/dist/overlays/relationships-browser/custom/edgeTypes.js +7 -8
- package/dist/overlays/relationships-browser/custom/index.d.ts +2 -1
- package/dist/overlays/relationships-browser/custom/nodeTypes.d.ts +5 -12
- package/dist/overlays/relationships-browser/custom/nodeTypes.js +16 -21
- package/dist/overlays/relationships-browser/layout.js +13 -12
- package/dist/overlays/relationships-browser/useViewToNodesEdges.d.ts +2 -2
- package/dist/overlays/relationships-browser/useViewToNodesEdges.js +11 -10
- package/dist/search/components/ElementsColumn.js +6 -5
- package/dist/search/components/PickView.js +2 -2
- package/dist/search/components/SearchByTags.js +3 -3
- package/dist/search/components/SearchInput.js +2 -2
- package/dist/search/components/ViewsColum.js +4 -4
- package/dist/search/components/_shared.css.d.ts +2 -2
- package/dist/{bundle → shadowroot}/ShadowRoot.d.ts +5 -1
- package/dist/shadowroot/ShadowRoot.js +69 -0
- package/dist/{bundle → shadowroot}/styles.css.d.ts +4 -4
- package/dist/{bundle → shadowroot}/styles.css.js +17 -24
- package/dist/styles.css2.js +1 -1
- package/dist/utils/get-view-bounds.d.ts +3 -0
- package/dist/utils/get-view-bounds.js +14 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/xyflow.d.ts +5 -2
- package/dist/utils/xyflow.js +2 -0
- package/package.json +46 -37
- package/panda.buildinfo.json +137 -192
- package/{dist/styles-min.css → styles-min.css} +1 -1
- package/styles.css +1 -0
- package/bundle/chunk-CDr-4Ymp.js +0 -21862
- package/bundle/custom.js +0 -82
- package/dist/base/primitives/compound/CompoundTitle.d.ts +0 -6
- package/dist/base/primitives/customEdge.d.ts +0 -4
- package/dist/base/primitives/customNode.d.ts +0 -4
- package/dist/base/primitives/edge/xyvars.d.ts +0 -24
- package/dist/base/primitives/element/ElementActionButtons.d.ts +0 -13
- package/dist/base/primitives/element/ElementActionButtons.js +0 -79
- package/dist/base/primitives/element/ElementShape.d.ts +0 -32
- package/dist/base/primitives/element/ElementTitle.d.ts +0 -12
- package/dist/base/primitives/element/ElementTitle.js +0 -76
- package/dist/bundle/LikeC4ModelProvider.d.ts +0 -9
- package/dist/bundle/LikeC4ModelProvider.js +0 -5
- package/dist/bundle/LikeC4View.d.ts +0 -3
- package/dist/bundle/LikeC4View.js +0 -186
- package/dist/bundle/ReactLikeC4.js +0 -91
- package/dist/bundle/ShadowRoot.js +0 -46
- package/dist/bundle/custom.d.ts +0 -1
- package/dist/bundle/custom.js +0 -33
- package/dist/bundle/index.js +0 -17
- package/dist/components/SearchControl.css.js +0 -79
- package/dist/components/SearchControl.js +0 -17
- package/dist/custom/components.d.ts +0 -5
- package/dist/likec4diagram/ui/controls/ChangeAutoLayoutButton.d.ts +0 -2
- package/dist/likec4diagram/ui/controls/ChangeAutoLayoutButton.js +0 -159
- package/dist/likec4diagram/ui/controls/Controls.d.ts +0 -2
- package/dist/likec4diagram/ui/controls/Controls.js +0 -154
- package/dist/likec4diagram/ui/controls/LayoutDriftNotification.d.ts +0 -2
- package/dist/likec4diagram/ui/controls/LayoutDriftNotification.js +0 -50
- package/dist/likec4diagram/ui/controls/ManualLayoutToolsButton.d.ts +0 -2
- package/dist/likec4diagram/ui/controls/ManualLayoutToolsButton.js +0 -145
- package/dist/likec4diagram/ui/controls/NavigationButtons.d.ts +0 -1
- package/dist/likec4diagram/ui/controls/NavigationButtons.js +0 -61
- package/dist/likec4diagram/ui/controls/ToggleReadonly.d.ts +0 -1
- package/dist/likec4diagram/ui/controls/ToggleReadonly.js +0 -29
- package/dist/likec4diagram/ui/controls/_shared.d.ts +0 -7
- package/dist/likec4diagram/ui/controls/_shared.js +0 -22
- package/dist/likec4diagram/ui/controls/styles.css.d.ts +0 -8
- package/dist/likec4diagram/ui/controls/styles.css.js +0 -79
- package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.d.ts +0 -3
- package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.js +0 -49
- package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.d.ts +0 -1
- package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.js +0 -164
- package/dist/likec4diagram/ui/diagram-title/Link.d.ts +0 -4
- package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.css.d.ts +0 -4
- package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.css.js +0 -67
- package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.d.ts +0 -1
- package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.js +0 -124
- package/dist/likec4diagram/xyflow-sequence/layouter.js +0 -408
- package/dist/likec4diagram/xyflow-sequence/sequence-view.js +0 -273
- package/dist/likec4diagram/xyflow-sequence/utils.js +0 -92
- package/dist/likec4model/index.d.ts +0 -4
- package/dist/likec4model/useCurrentViewModel.js +0 -15
- package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconMenu.js +0 -14
- package/dist/overlays/overlay/Overlay.css.d.ts +0 -60
- package/dist/overlays/overlay/Overlay.css.js +0 -122
- package/dist/src/index.ts.d.ts +0 -2
- package/dist/styles.css +0 -1
- package/src/LikeC4Diagram.props.ts +0 -350
- package/src/LikeC4Diagram.tsx +0 -172
- package/src/LikeC4ModelProvider.tsx +0 -22
- package/src/LikeC4ProjectsProvider.tsx +0 -41
- package/src/LikeC4Styles.tsx +0 -137
- package/src/StaticLikeC4Diagram.tsx +0 -62
- package/src/base/Background.tsx +0 -31
- package/src/base/BaseXYFlow.tsx +0 -218
- package/src/base/const.ts +0 -22
- package/src/base/index.ts +0 -12
- package/src/base/primitives/MarkdownBlock.tsx +0 -80
- package/src/base/primitives/NodeHandles.tsx +0 -18
- package/src/base/primitives/compound/CompoundActionButton.tsx +0 -62
- package/src/base/primitives/compound/CompoundDetailsButton.tsx +0 -56
- package/src/base/primitives/compound/CompoundNodeContainer.tsx +0 -83
- package/src/base/primitives/compound/CompoundTitle.tsx +0 -34
- package/src/base/primitives/compound/actionbtns.css.ts +0 -18
- package/src/base/primitives/customEdge.ts +0 -34
- package/src/base/primitives/customNode.tsx +0 -29
- package/src/base/primitives/edge/EdgeActionButton.tsx +0 -24
- package/src/base/primitives/edge/EdgeContainer.tsx +0 -68
- package/src/base/primitives/edge/EdgeLabel.tsx +0 -94
- package/src/base/primitives/edge/EdgeLabelContainer.tsx +0 -102
- package/src/base/primitives/edge/EdgeMarkers.tsx +0 -198
- package/src/base/primitives/edge/EdgePath.tsx +0 -126
- package/src/base/primitives/edge/edge.css.ts +0 -74
- package/src/base/primitives/edge/xyvars.ts +0 -31
- package/src/base/primitives/element/ElementActionButtons.tsx +0 -95
- package/src/base/primitives/element/ElementDetailsButton.tsx +0 -80
- package/src/base/primitives/element/ElementNodeContainer.css.ts +0 -51
- package/src/base/primitives/element/ElementNodeContainer.tsx +0 -98
- package/src/base/primitives/element/ElementShape.tsx +0 -250
- package/src/base/primitives/element/ElementTags.tsx +0 -190
- package/src/base/primitives/element/ElementTitle.tsx +0 -94
- package/src/base/primitives/index.ts +0 -20
- package/src/base/types.ts +0 -174
- package/src/base/updateEdges.ts +0 -38
- package/src/base/updateNodes.ts +0 -43
- package/src/bundle/LikeC4ModelProvider.tsx +0 -12
- package/src/bundle/LikeC4View.props.ts +0 -288
- package/src/bundle/LikeC4View.tsx +0 -194
- package/src/bundle/ReactLikeC4.tsx +0 -127
- package/src/bundle/ShadowRoot.tsx +0 -54
- package/src/bundle/ViewNotFound.tsx +0 -25
- package/src/bundle/custom.ts +0 -1
- package/src/bundle/index.ts +0 -27
- package/src/bundle/react-dom-server-mock.ts +0 -3
- package/src/bundle/styles.css.ts +0 -172
- package/src/components/ErrorFallback.tsx +0 -45
- package/src/components/GithubIcon.tsx +0 -16
- package/src/components/Link.tsx +0 -109
- package/src/components/NavigationLink.tsx +0 -32
- package/src/components/SearchControl.css.ts +0 -79
- package/src/components/SearchControl.tsx +0 -30
- package/src/context/ControlsCustomLayout.ts +0 -15
- package/src/context/DiagramEventHandlers.tsx +0 -68
- package/src/context/DiagramFeatures.tsx +0 -141
- package/src/context/EnsureMantine.tsx +0 -25
- package/src/context/FramerMotionConfig.tsx +0 -25
- package/src/context/IconRenderer.tsx +0 -117
- package/src/context/ReduceGraphics.tsx +0 -42
- package/src/context/RootContainer.tsx +0 -54
- package/src/context/TagStylesContext.tsx +0 -98
- package/src/context/index.ts +0 -13
- package/src/custom/components.ts +0 -51
- package/src/custom/customNodes.ts +0 -282
- package/src/custom/hooks.ts +0 -52
- package/src/custom/index.ts +0 -5
- package/src/hooks/index.ts +0 -6
- package/src/hooks/safeContext.tsx +0 -18
- package/src/hooks/useCurrentViewId.ts +0 -15
- package/src/hooks/useDiagram.ts +0 -310
- package/src/hooks/useId.ts +0 -5
- package/src/hooks/useMantinePortalProps.ts +0 -17
- package/src/hooks/useOverlaysActor.ts +0 -11
- package/src/hooks/useReducedGraphics.ts +0 -1
- package/src/hooks/useSearchActor.ts +0 -11
- package/src/hooks/useSetState.ts +0 -19
- package/src/hooks/useUpdateEffect.ts +0 -46
- package/src/hooks/useXYFlow.ts +0 -41
- package/src/index.ts +0 -50
- package/src/likec4diagram/DiagramUI.tsx +0 -46
- package/src/likec4diagram/DiagramXYFlow.tsx +0 -240
- package/src/likec4diagram/convert-to-xyflow.ts +0 -45
- package/src/likec4diagram/custom/edges/RelationshipEdge.tsx +0 -373
- package/src/likec4diagram/custom/edges/SequenceStepEdge.tsx +0 -65
- package/src/likec4diagram/custom/edges/edges.css.ts +0 -45
- package/src/likec4diagram/custom/edges/utils.ts +0 -125
- package/src/likec4diagram/custom/index.ts +0 -28
- package/src/likec4diagram/custom/nodes/CompoundActions.tsx +0 -27
- package/src/likec4diagram/custom/nodes/ElementActions.tsx +0 -120
- package/src/likec4diagram/custom/nodes/SequenceActorNode.tsx +0 -175
- package/src/likec4diagram/custom/nodes/index.ts +0 -18
- package/src/likec4diagram/custom/nodes/nodes.tsx +0 -129
- package/src/likec4diagram/custom/nodes/toolbar/ColorButton.tsx +0 -175
- package/src/likec4diagram/custom/nodes/toolbar/CompoundToolbar.tsx +0 -122
- package/src/likec4diagram/custom/nodes/toolbar/ElementToolbar.tsx +0 -140
- package/src/likec4diagram/custom/nodes/toolbar/Toolbar.tsx +0 -82
- package/src/likec4diagram/custom/nodes/toolbar/_shared.tsx +0 -151
- package/src/likec4diagram/custom/nodes/toolbar/styles.css.ts +0 -13
- package/src/likec4diagram/relationship-popover/RelationshipPopover.tsx +0 -549
- package/src/likec4diagram/relationship-popover/actor.ts +0 -192
- package/src/likec4diagram/relationship-popover/styles.css.ts +0 -27
- package/src/likec4diagram/types.ts +0 -240
- package/src/likec4diagram/ui/controls/ChangeAutoLayoutButton.tsx +0 -202
- package/src/likec4diagram/ui/controls/Controls.tsx +0 -153
- package/src/likec4diagram/ui/controls/LayoutDriftNotification.tsx +0 -50
- package/src/likec4diagram/ui/controls/ManualLayoutToolsButton.tsx +0 -125
- package/src/likec4diagram/ui/controls/NavigationButtons.tsx +0 -61
- package/src/likec4diagram/ui/controls/ToggleReadonly.tsx +0 -30
- package/src/likec4diagram/ui/controls/_shared.ts +0 -21
- package/src/likec4diagram/ui/controls/styles.css.ts +0 -84
- package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.ts +0 -51
- package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.tsx +0 -175
- package/src/likec4diagram/ui/diagram-title/Link.tsx +0 -40
- package/src/likec4diagram/ui/index.ts +0 -4
- package/src/likec4diagram/ui/notation/NotationPanel.css.ts +0 -99
- package/src/likec4diagram/ui/notation/NotationPanel.tsx +0 -252
- package/src/likec4diagram/ui/notation/index.ts +0 -1
- package/src/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.css.ts +0 -70
- package/src/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.tsx +0 -130
- package/src/likec4diagram/useLayoutConstraints.ts +0 -281
- package/src/likec4diagram/xyflow-diagram/diagram-view.ts +0 -275
- package/src/likec4diagram/xyflow-sequence/_types.ts +0 -45
- package/src/likec4diagram/xyflow-sequence/const.ts +0 -37
- package/src/likec4diagram/xyflow-sequence/layouter.ts +0 -567
- package/src/likec4diagram/xyflow-sequence/sequence-view.ts +0 -337
- package/src/likec4diagram/xyflow-sequence/utils.ts +0 -112
- package/src/likec4model/LikeC4ModelContext.tsx +0 -19
- package/src/likec4model/LikeC4ProjectsContext.ts +0 -9
- package/src/likec4model/index.ts +0 -19
- package/src/likec4model/useCurrentViewModel.ts +0 -14
- package/src/likec4model/useLikeC4ElementsTree.ts +0 -39
- package/src/likec4model/useLikeC4Model.ts +0 -35
- package/src/likec4model/useLikeC4Project.ts +0 -61
- package/src/navigationpanel/NavigationPanel.tsx +0 -136
- package/src/navigationpanel/NavigationPanelControls.tsx +0 -133
- package/src/navigationpanel/NavigationPanelDropdown.tsx +0 -547
- package/src/navigationpanel/_common.tsx +0 -84
- package/src/navigationpanel/actor.ts +0 -320
- package/src/navigationpanel/controls/BurgerButton.tsx +0 -30
- package/src/navigationpanel/controls/NavigationButtons.tsx +0 -40
- package/src/navigationpanel/controls/OpenSource.tsx +0 -28
- package/src/navigationpanel/controls/SearchControl.tsx +0 -66
- package/src/navigationpanel/controls/ToggleReadonly.tsx +0 -66
- package/src/navigationpanel/controls/ViewDetailsCard.tsx +0 -249
- package/src/navigationpanel/controls/index.ts +0 -6
- package/src/navigationpanel/dropdown/ProjectsMenu.tsx +0 -78
- package/src/navigationpanel/editorpanel/CenterCamera.tsx +0 -15
- package/src/navigationpanel/editorpanel/ChangeAutoLayoutButton.tsx +0 -199
- package/src/navigationpanel/editorpanel/EditorPanel.tsx +0 -49
- package/src/navigationpanel/editorpanel/LayoutDriftNotification.tsx +0 -56
- package/src/navigationpanel/editorpanel/ManualLayoutToolsButton.tsx +0 -148
- package/src/navigationpanel/editorpanel/_common.tsx +0 -14
- package/src/navigationpanel/editorpanel/index.ts +0 -1
- package/src/navigationpanel/editorpanel/styles.ts +0 -84
- package/src/navigationpanel/hooks.tsx +0 -70
- package/src/navigationpanel/index.ts +0 -1
- package/src/navigationpanel/styles.css.ts +0 -28
- package/src/navigationpanel/walkthrough/ActiveWalkthroughControls.tsx +0 -132
- package/src/navigationpanel/walkthrough/DynamicViewControls.tsx +0 -125
- package/src/navigationpanel/walkthrough/WalkthroughPanel.css.ts +0 -21
- package/src/navigationpanel/walkthrough/WalkthroughPanel.tsx +0 -88
- package/src/navigationpanel/walkthrough/index.tsx +0 -2
- package/src/overlays/Overlays.tsx +0 -121
- package/src/overlays/element-details/ElementDetails.tsx +0 -33
- package/src/overlays/element-details/ElementDetailsCard.css.ts +0 -257
- package/src/overlays/element-details/ElementDetailsCard.tsx +0 -666
- package/src/overlays/element-details/TabPanelDeployments.css.ts +0 -64
- package/src/overlays/element-details/TabPanelDeployments.tsx +0 -220
- package/src/overlays/element-details/TabPanelRelationships.css.ts +0 -102
- package/src/overlays/element-details/TabPanelRelationships.tsx +0 -186
- package/src/overlays/element-details/TabPanelStructure.css.ts +0 -36
- package/src/overlays/element-details/TabPanelStructure.tsx +0 -121
- package/src/overlays/element-details/actor.ts +0 -104
- package/src/overlays/element-details/actorContext.tsx +0 -16
- package/src/overlays/overlay/Overlay.css.ts +0 -123
- package/src/overlays/overlay/Overlay.tsx +0 -169
- package/src/overlays/overlaysActor.ts +0 -284
- package/src/overlays/relationship-details/RelationshipDetails.tsx +0 -334
- package/src/overlays/relationship-details/SelectEdge.css.ts +0 -88
- package/src/overlays/relationship-details/SelectEdge.tsx +0 -141
- package/src/overlays/relationship-details/_types.ts +0 -88
- package/src/overlays/relationship-details/actor.ts +0 -397
- package/src/overlays/relationship-details/compute.ts +0 -177
- package/src/overlays/relationship-details/custom/ElementActions.tsx +0 -53
- package/src/overlays/relationship-details/custom/edgeTypes.tsx +0 -49
- package/src/overlays/relationship-details/custom/index.ts +0 -2
- package/src/overlays/relationship-details/custom/nodeTypes.tsx +0 -126
- package/src/overlays/relationship-details/custom/styles.css.ts +0 -13
- package/src/overlays/relationship-details/hooks.ts +0 -51
- package/src/overlays/relationship-details/layout-to-xyflow.ts +0 -173
- package/src/overlays/relationship-details/layout.ts +0 -476
- package/src/overlays/relationships-browser/RelationshipsBrowser.tsx +0 -281
- package/src/overlays/relationships-browser/SelectElement.css.ts +0 -22
- package/src/overlays/relationships-browser/SelectElement.tsx +0 -229
- package/src/overlays/relationships-browser/_types.ts +0 -102
- package/src/overlays/relationships-browser/actor.ts +0 -592
- package/src/overlays/relationships-browser/const.ts +0 -8
- package/src/overlays/relationships-browser/custom/ElementActions.tsx +0 -57
- package/src/overlays/relationships-browser/custom/EmptyNode.tsx +0 -18
- package/src/overlays/relationships-browser/custom/edgeTypes.tsx +0 -103
- package/src/overlays/relationships-browser/custom/index.ts +0 -2
- package/src/overlays/relationships-browser/custom/nodeTypes.tsx +0 -146
- package/src/overlays/relationships-browser/custom/styles.css.ts +0 -12
- package/src/overlays/relationships-browser/hooks.ts +0 -63
- package/src/overlays/relationships-browser/layout.ts +0 -630
- package/src/overlays/relationships-browser/useViewToNodesEdges.ts +0 -210
- package/src/overlays/types.ts +0 -39
- package/src/search/Search.tsx +0 -220
- package/src/search/components/ElementsColumn.css.ts +0 -84
- package/src/search/components/ElementsColumn.tsx +0 -318
- package/src/search/components/PickView.tsx +0 -134
- package/src/search/components/SearchByTags.tsx +0 -112
- package/src/search/components/SearchInput.tsx +0 -265
- package/src/search/components/ViewsColum.tsx +0 -167
- package/src/search/components/ViewsColumn.css.ts +0 -34
- package/src/search/components/_shared.css.ts +0 -176
- package/src/search/components/styles.css.ts +0 -72
- package/src/search/components/utils.ts +0 -64
- package/src/search/hooks.ts +0 -38
- package/src/search/searchActor.ts +0 -99
- package/src/state/DiagramActorProvider.tsx +0 -176
- package/src/state/aligners.ts +0 -500
- package/src/state/assign.ts +0 -425
- package/src/state/diagram-machine.ts +0 -1422
- package/src/state/hotkeyActor.ts +0 -41
- package/src/state/inspector.ts +0 -5
- package/src/state/persistence.ts +0 -22
- package/src/state/syncManualLayoutActor.ts +0 -218
- package/src/state/types.ts +0 -34
- package/src/state/utils.ts +0 -152
- package/src/styles-font.css +0 -251
- package/src/styles-min.css +0 -2
- package/src/styles-xyflow.css +0 -1
- package/src/styles.css +0 -3
- package/src/utils/css.ts +0 -7
- package/src/utils/index.ts +0 -15
- package/src/utils/roundDpr.ts +0 -27
- package/src/utils/vector.ts +0 -57
- package/src/utils/xyflow.ts +0 -105
- /package/dist/{base/primitives → base-primitives}/NodeHandles.d.ts +0 -0
- /package/dist/{base/primitives → base-primitives}/compound/actionbtns.css.js +0 -0
- /package/dist/{base/primitives → base-primitives}/edge/EdgeActionButton.d.ts +0 -0
- /package/dist/{base/primitives → base-primitives}/edge/EdgeContainer.js +0 -0
- /package/dist/{base/primitives → base-primitives}/edge/EdgeMarkers.d.ts +0 -0
- /package/dist/{base/primitives → base-primitives}/edge/EdgeMarkers.js +0 -0
- /package/dist/{base/primitives → base-primitives}/edge/EdgePath.js +0 -0
- /package/dist/{base/primitives → base-primitives}/edge/edge.css.d.ts +0 -0
- /package/dist/{base/primitives → base-primitives}/edge/edge.css.js +0 -0
- /package/dist/{base/primitives → base-primitives}/element/ElementNodeContainer.css.d.ts +0 -0
- /package/dist/{base/primitives → base-primitives}/element/ElementNodeContainer.css.js +0 -0
- /package/dist/{base/primitives → base-primitives}/element/ElementNodeContainer.js +0 -0
- /package/dist/{bundle → components}/ViewNotFound.d.ts +0 -0
- /package/dist/{likec4model → context}/LikeC4ModelContext.d.ts +0 -0
- /package/dist/{likec4model → context}/LikeC4ModelContext.js +0 -0
- /package/dist/{likec4model → context}/LikeC4ProjectsContext.d.ts +0 -0
- /package/dist/{likec4model → context}/LikeC4ProjectsContext.js +0 -0
- /package/dist/{likec4model → hooks}/useLikeC4ElementsTree.d.ts +0 -0
- /package/dist/{likec4model → hooks}/useLikeC4ElementsTree.js +0 -0
- /package/dist/{state → likec4diagram/state}/aligners.d.ts +0 -0
- /package/dist/{state → likec4diagram/state}/aligners.js +0 -0
- /package/dist/{state → likec4diagram/state}/hotkeyActor.d.ts +0 -0
- /package/dist/{state → likec4diagram/state}/hotkeyActor.js +0 -0
- /package/dist/{state → likec4diagram/state}/inspector.d.ts +0 -0
- /package/dist/{state → likec4diagram/state}/persistence.js +0 -0
- /package/dist/{state → likec4diagram/state}/utils.js +0 -0
- /package/{dist/styles-font.css → styles-font.css} +0 -0
- /package/{dist/styles-xyflow.css → styles-xyflow.css} +0 -0
|
@@ -1,27 +1,22 @@
|
|
|
1
1
|
import { Color, ElementShape, ElementStyle } from '@likec4/core/types';
|
|
2
2
|
import { MotionNodeLayoutOptions } from 'motion/react';
|
|
3
|
-
import { CSSProperties,
|
|
4
|
-
import {
|
|
5
|
-
|
|
3
|
+
import { CSSProperties, ForwardRefExoticComponent, ReactNode, RefAttributes } from 'react';
|
|
4
|
+
import { BaseNodePropsWithData } from '../../base/types';
|
|
5
|
+
type RequiredData = {
|
|
6
6
|
color: Color;
|
|
7
7
|
shape: ElementShape;
|
|
8
8
|
style?: ElementStyle;
|
|
9
9
|
};
|
|
10
|
-
export type ElementNodeContainerProps = {
|
|
11
|
-
nodeProps: NodeProps<RequiredData>;
|
|
12
|
-
children?: ReactNode | undefined;
|
|
13
|
-
className?: string | undefined;
|
|
14
|
-
style?: CSSProperties | undefined;
|
|
15
|
-
[key: `data-${string}`]: string | undefined;
|
|
16
|
-
} & MotionNodeLayoutOptions;
|
|
17
10
|
/**
|
|
18
11
|
* Top-level primitive to compose leaf nodes renderers.
|
|
19
12
|
* This container provides the state via data-* attributes
|
|
20
13
|
*/
|
|
21
14
|
export declare const ElementNodeContainer: ForwardRefExoticComponent<{
|
|
22
15
|
[key: `data-${string}`]: string | undefined;
|
|
23
|
-
nodeProps:
|
|
24
|
-
children?: ReactNode | undefined;
|
|
16
|
+
nodeProps: BaseNodePropsWithData<RequiredData>;
|
|
25
17
|
className?: string | undefined;
|
|
26
18
|
style?: CSSProperties | undefined;
|
|
27
|
-
} & MotionNodeLayoutOptions &
|
|
19
|
+
} & MotionNodeLayoutOptions & {
|
|
20
|
+
children?: ReactNode | undefined;
|
|
21
|
+
} & RefAttributes<HTMLDivElement>>;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ComputedNodeStyle, ElementShape } from '@likec4/core/types';
|
|
2
|
+
type Data = {
|
|
3
|
+
shape: ElementShape;
|
|
4
|
+
width: number;
|
|
5
|
+
height: number;
|
|
6
|
+
style?: ComputedNodeStyle;
|
|
7
|
+
};
|
|
8
|
+
type ElementShapeProps = {
|
|
9
|
+
data: Data;
|
|
10
|
+
width?: number | undefined;
|
|
11
|
+
height?: number | undefined;
|
|
12
|
+
/**
|
|
13
|
+
* @default true
|
|
14
|
+
*/
|
|
15
|
+
showSeletionOutline?: boolean | undefined;
|
|
16
|
+
};
|
|
17
|
+
export declare function ElementShape({ data, width, height, showSeletionOutline }: ElementShapeProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export {};
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { nonexhaustive } from '@likec4/core';
|
|
3
|
-
import { Box } from '@likec4/styles/jsx';
|
|
4
3
|
import { elementShapeRecipe } from '@likec4/styles/recipes';
|
|
5
|
-
import { roundDpr } from '
|
|
4
|
+
import { roundDpr } from '../../utils/roundDpr.js';
|
|
6
5
|
|
|
7
6
|
function cylinderSVGPath(diameter, height, tilt = 0.065) {
|
|
8
7
|
const radius = Math.round(diameter / 2);
|
|
@@ -132,25 +131,41 @@ function ShapeSvg({ shape, w, h }) {
|
|
|
132
131
|
/* @__PURE__ */ jsx("ellipse", { cx: rx, cy: ry, ry, rx: rx - 0.75, "data-likec4-fill": "mix-stroke", strokeWidth: 2 })
|
|
133
132
|
] });
|
|
134
133
|
}
|
|
135
|
-
|
|
136
|
-
return
|
|
134
|
+
default: {
|
|
135
|
+
return nonexhaustive(shape);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
function ShapeSvgOutline({ shape, w, h }) {
|
|
140
|
+
let svg;
|
|
141
|
+
switch (shape) {
|
|
142
|
+
case "queue":
|
|
143
|
+
svg = /* @__PURE__ */ jsx("path", { d: queueSVGPath(w, h).path });
|
|
144
|
+
break;
|
|
145
|
+
case "storage":
|
|
146
|
+
case "cylinder": {
|
|
147
|
+
svg = /* @__PURE__ */ jsx("path", { d: cylinderSVGPath(w, h).path });
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
default: {
|
|
151
|
+
svg = /* @__PURE__ */ jsx(
|
|
137
152
|
"rect",
|
|
138
153
|
{
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
154
|
+
x: -1,
|
|
155
|
+
y: -1,
|
|
156
|
+
width: w + 2,
|
|
157
|
+
height: h + 2,
|
|
158
|
+
rx: 6
|
|
143
159
|
}
|
|
144
160
|
);
|
|
145
|
-
|
|
146
|
-
default: {
|
|
147
|
-
return nonexhaustive(shape);
|
|
161
|
+
break;
|
|
148
162
|
}
|
|
149
163
|
}
|
|
164
|
+
return /* @__PURE__ */ jsx("g", { className: "likec4-shape-outline", children: svg });
|
|
150
165
|
}
|
|
151
166
|
function ShapeHtml({ multiple, withOutLine }) {
|
|
152
167
|
return /* @__PURE__ */ jsxs(
|
|
153
|
-
|
|
168
|
+
"div",
|
|
154
169
|
{
|
|
155
170
|
className: elementShapeRecipe({
|
|
156
171
|
shapetype: "html"
|
|
@@ -162,12 +177,12 @@ function ShapeHtml({ multiple, withOutLine }) {
|
|
|
162
177
|
}
|
|
163
178
|
);
|
|
164
179
|
}
|
|
165
|
-
function ElementShape({ data, width, height,
|
|
180
|
+
function ElementShape({ data, width, height, showSeletionOutline = true }) {
|
|
166
181
|
let w = !!width && width > 10 ? width : data.width;
|
|
167
182
|
let h = !!height && height > 10 ? height : data.height;
|
|
168
183
|
const isMultiple = data.style?.multiple ?? false;
|
|
169
184
|
if (data.shape === "rectangle") {
|
|
170
|
-
return /* @__PURE__ */ jsx(ShapeHtml, { multiple: isMultiple, withOutLine:
|
|
185
|
+
return /* @__PURE__ */ jsx(ShapeHtml, { multiple: isMultiple, withOutLine: showSeletionOutline });
|
|
171
186
|
}
|
|
172
187
|
const className = elementShapeRecipe({
|
|
173
188
|
shapetype: "svg"
|
|
@@ -175,37 +190,10 @@ function ElementShape({ data, width, height, withSelectedIndicator = true }) {
|
|
|
175
190
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
176
191
|
isMultiple && /* @__PURE__ */ jsx("svg", { className, "data-likec4-shape-multiple": "true", viewBox: `0 0 ${w} ${h}`, children: /* @__PURE__ */ jsx(ShapeSvg, { shape: data.shape, w, h }) }),
|
|
177
192
|
/* @__PURE__ */ jsxs("svg", { className, viewBox: `0 0 ${w} ${h}`, children: [
|
|
178
|
-
|
|
193
|
+
showSeletionOutline && /* @__PURE__ */ jsx(ShapeSvgOutline, { shape: data.shape, w, h }),
|
|
179
194
|
/* @__PURE__ */ jsx(ShapeSvg, { shape: data.shape, w, h })
|
|
180
195
|
] })
|
|
181
196
|
] });
|
|
182
197
|
}
|
|
183
|
-
function SelectedIndicator({ shape, w, h }) {
|
|
184
|
-
let svg;
|
|
185
|
-
switch (shape) {
|
|
186
|
-
case "queue":
|
|
187
|
-
svg = /* @__PURE__ */ jsx("path", { d: queueSVGPath(w, h).path });
|
|
188
|
-
break;
|
|
189
|
-
case "storage":
|
|
190
|
-
case "cylinder": {
|
|
191
|
-
svg = /* @__PURE__ */ jsx("path", { d: cylinderSVGPath(w, h).path });
|
|
192
|
-
break;
|
|
193
|
-
}
|
|
194
|
-
default: {
|
|
195
|
-
svg = /* @__PURE__ */ jsx(
|
|
196
|
-
"rect",
|
|
197
|
-
{
|
|
198
|
-
x: -1,
|
|
199
|
-
y: -1,
|
|
200
|
-
width: w + 2,
|
|
201
|
-
height: h + 2,
|
|
202
|
-
rx: 6
|
|
203
|
-
}
|
|
204
|
-
);
|
|
205
|
-
break;
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
return /* @__PURE__ */ jsx("g", { className: "likec4-shape-outline", children: svg });
|
|
209
|
-
}
|
|
210
198
|
|
|
211
|
-
export { ElementShape
|
|
199
|
+
export { ElementShape };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BoxProps } from '@likec4/styles/jsx';
|
|
2
|
-
import {
|
|
2
|
+
import { BaseNodePropsWithData } from '../../base/types';
|
|
3
3
|
import { ForwardRefExoticComponent, RefAttributes, MemoExoticComponent } from 'react';
|
|
4
4
|
export type ElementTagProps = {
|
|
5
5
|
tag: string;
|
|
@@ -10,6 +10,6 @@ type Data = {
|
|
|
10
10
|
tags: readonly string[] | null | undefined;
|
|
11
11
|
width: number;
|
|
12
12
|
};
|
|
13
|
-
type ElementTagsProps =
|
|
13
|
+
type ElementTagsProps = BaseNodePropsWithData<Data>;
|
|
14
14
|
export declare const ElementTags: MemoExoticComponent<({ id, data: { tags, width, hovered } }: ElementTagsProps) => import("react/jsx-runtime").JSX.Element | null>;
|
|
15
15
|
export {};
|
|
@@ -8,10 +8,10 @@ import { useHover, useDebouncedState } from '@mantine/hooks';
|
|
|
8
8
|
import { NodeToolbar, Position } from '@xyflow/react';
|
|
9
9
|
import { deepEqual } from 'fast-equals';
|
|
10
10
|
import { forwardRef, memo, useEffect, useCallback } from 'react';
|
|
11
|
-
import { useTagSpecification } from '
|
|
12
|
-
import { useDiagram } from '
|
|
13
|
-
import { useCurrentZoom } from '
|
|
14
|
-
import { stopPropagation } from '
|
|
11
|
+
import { useTagSpecification } from '../../context/TagStylesContext.js';
|
|
12
|
+
import { useDiagram } from '../../hooks/useDiagram.js';
|
|
13
|
+
import { useCurrentZoom } from '../../hooks/useXYFlow.js';
|
|
14
|
+
import { stopPropagation } from '../../utils/xyflow.js';
|
|
15
15
|
|
|
16
16
|
const ElementTag = forwardRef(
|
|
17
17
|
({ tag, cursor, className, style, ...props }, ref) => {
|
|
@@ -2,8 +2,6 @@ export { CompoundActionButton } from './compound/CompoundActionButton';
|
|
|
2
2
|
export { CompoundDetailsButton } from './compound/CompoundDetailsButton';
|
|
3
3
|
export { CompoundNodeContainer } from './compound/CompoundNodeContainer';
|
|
4
4
|
export { CompoundTitle } from './compound/CompoundTitle';
|
|
5
|
-
export { customEdge } from './customEdge';
|
|
6
|
-
export { customNode } from './customNode';
|
|
7
5
|
export { EdgeActionButton } from './edge/EdgeActionButton';
|
|
8
6
|
export { EdgeContainer } from './edge/EdgeContainer';
|
|
9
7
|
export { EdgeLabel } from './edge/EdgeLabel';
|
|
@@ -11,10 +9,12 @@ export { EdgeLabelContainer } from './edge/EdgeLabelContainer';
|
|
|
11
9
|
export { arrowTypeToMarker, EdgeMarkers, type EdgeMarkerType } from './edge/EdgeMarkers';
|
|
12
10
|
export { EdgePath } from './edge/EdgePath';
|
|
13
11
|
export { ElementActionButtons } from './element/ElementActionButtons';
|
|
12
|
+
export { ElementData } from './element/ElementData';
|
|
14
13
|
export { ElementDetailsButton } from './element/ElementDetailsButton';
|
|
15
14
|
export { ElementNodeContainer } from './element/ElementNodeContainer';
|
|
16
15
|
export { ElementShape } from './element/ElementShape';
|
|
17
16
|
export { ElementTag, ElementTags } from './element/ElementTags';
|
|
18
|
-
export {
|
|
19
|
-
export {
|
|
17
|
+
export { Markdown } from './Markdown';
|
|
18
|
+
export { memoEdge } from './memoEdge';
|
|
19
|
+
export { memoNode } from './memoNode';
|
|
20
20
|
export { DefaultHandles } from './NodeHandles';
|
|
@@ -5,8 +5,8 @@ const isSame = (a, b) => {
|
|
|
5
5
|
return Math.abs(a - b) < 2.5;
|
|
6
6
|
};
|
|
7
7
|
const edgePropsEqual = (prev, next) => prev.id === next.id && deepEqual(prev.selected ?? false, next.selected ?? false) && deepEqual(prev.animated ?? false, next.animated ?? false) && deepEqual(prev.source, next.source) && deepEqual(prev.sourceHandleId ?? null, next.sourceHandleId ?? null) && deepEqual(prev.sourcePosition, next.sourcePosition) && deepEqual(prev.target, next.target) && deepEqual(prev.targetHandleId ?? null, next.targetHandleId ?? null) && deepEqual(prev.targetPosition, next.targetPosition) && isSame(prev.sourceX, next.sourceX) && isSame(prev.sourceY, next.sourceY) && isSame(prev.targetX, next.targetX) && isSame(prev.targetY, next.targetY) && deepEqual(prev.data, next.data);
|
|
8
|
-
function
|
|
8
|
+
function memoEdge(Edge) {
|
|
9
9
|
return memo(Edge, edgePropsEqual);
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
export {
|
|
12
|
+
export { memoEdge };
|
|
@@ -4,13 +4,22 @@ import { memo } from 'react';
|
|
|
4
4
|
function nodePropsEqual(prev, next) {
|
|
5
5
|
return prev.id === next.id && deepEqual(prev.selected ?? false, next.selected ?? false) && deepEqual(prev.dragging ?? false, next.dragging ?? false) && deepEqual(prev.width ?? 0, next.width ?? 0) && deepEqual(prev.height ?? 0, next.height ?? 0) && deepEqual(prev.zIndex ?? 0, next.zIndex ?? 0) && deepEqual(prev.data, next.data);
|
|
6
6
|
}
|
|
7
|
-
|
|
7
|
+
const isMemoized = Symbol.for("isMemoized");
|
|
8
|
+
function memoNode(Node) {
|
|
9
|
+
if (Node.hasOwnProperty(isMemoized)) {
|
|
10
|
+
return Node;
|
|
11
|
+
}
|
|
8
12
|
const NodeComponent = memo(
|
|
9
13
|
Node,
|
|
10
|
-
|
|
14
|
+
nodePropsEqual
|
|
11
15
|
);
|
|
12
16
|
NodeComponent.displayName = "Node";
|
|
17
|
+
Object.defineProperty(NodeComponent, isMemoized, {
|
|
18
|
+
enumerable: false,
|
|
19
|
+
writable: false,
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
13
22
|
return NodeComponent;
|
|
14
23
|
}
|
|
15
24
|
|
|
16
|
-
export {
|
|
25
|
+
export { memoNode };
|
package/dist/bundle/index.d.ts
CHANGED
|
@@ -1,8 +1 @@
|
|
|
1
|
-
export
|
|
2
|
-
export { LikeC4View } from './LikeC4View';
|
|
3
|
-
export type { LikeC4BrowserProps, LikeC4ViewProps } from './LikeC4View.props';
|
|
4
|
-
export { ReactLikeC4, type ReactLikeC4Props } from './ReactLikeC4';
|
|
5
|
-
export { LikeC4ProjectsProvider, type LikeC4ProjectsProviderProps } from '../LikeC4ProjectsProvider';
|
|
6
|
-
export { LikeC4ModelProvider, type LikeC4ModelProviderProps } from './LikeC4ModelProvider';
|
|
7
|
-
export { ViewNotFound } from './ViewNotFound';
|
|
8
|
-
export * from '../custom/hooks';
|
|
1
|
+
export * from '../index';
|
|
@@ -2,29 +2,48 @@ import { jsx, jsxs } from 'react/jsx-runtime';
|
|
|
2
2
|
import { Box } from '@likec4/styles/jsx';
|
|
3
3
|
import { Notification, ScrollAreaAutosize, Code, Group, Button } from '@mantine/core';
|
|
4
4
|
import { ErrorBoundary as ErrorBoundary$1 } from 'react-error-boundary';
|
|
5
|
-
import IconX from '../node_modules/.pnpm/@tabler_icons-react@3.
|
|
5
|
+
import IconX from '../node_modules/.pnpm/@tabler_icons-react@3.35.0_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconX.js';
|
|
6
6
|
|
|
7
7
|
function ErrorFallback({ error, resetErrorBoundary }) {
|
|
8
8
|
const errorString = error instanceof Error ? error.message : "Unknown error";
|
|
9
|
-
return /* @__PURE__ */ jsx(
|
|
10
|
-
|
|
9
|
+
return /* @__PURE__ */ jsx(
|
|
10
|
+
Box,
|
|
11
11
|
{
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
css: {
|
|
13
|
+
position: "absolute",
|
|
14
|
+
top: "0",
|
|
15
|
+
left: "0",
|
|
16
|
+
width: "100%",
|
|
17
|
+
height: "100%",
|
|
18
|
+
padding: "0",
|
|
19
|
+
backdropFilter: `blur(5px)`,
|
|
20
|
+
backgroundColor: {
|
|
21
|
+
_dark: `[rgb(34 34 34 / 10%)]`,
|
|
22
|
+
_light: `[rgb(15 15 15/ 20%)]`
|
|
23
|
+
},
|
|
24
|
+
zIndex: 1e3
|
|
17
25
|
},
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
children: /* @__PURE__ */ jsxs(
|
|
27
|
+
Notification,
|
|
28
|
+
{
|
|
29
|
+
icon: /* @__PURE__ */ jsx(IconX, { style: { width: 16, height: 16 } }),
|
|
30
|
+
styles: {
|
|
31
|
+
icon: {
|
|
32
|
+
alignSelf: "flex-start"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
color: "red",
|
|
36
|
+
title: "Oops, something went wrong",
|
|
37
|
+
p: "xl",
|
|
38
|
+
withCloseButton: false,
|
|
39
|
+
children: [
|
|
40
|
+
/* @__PURE__ */ jsx(ScrollAreaAutosize, { maw: "100%", mah: 400, children: /* @__PURE__ */ jsx(Code, { block: true, children: errorString }) }),
|
|
41
|
+
/* @__PURE__ */ jsx(Group, { gap: "xs", mt: "xl", children: /* @__PURE__ */ jsx(Button, { color: "gray", size: "xs", variant: "light", onClick: () => resetErrorBoundary(), children: "Reset" }) })
|
|
42
|
+
]
|
|
43
|
+
}
|
|
44
|
+
)
|
|
26
45
|
}
|
|
27
|
-
)
|
|
46
|
+
);
|
|
28
47
|
}
|
|
29
48
|
function ErrorBoundary(props) {
|
|
30
49
|
return /* @__PURE__ */ jsx(
|
package/dist/components/Link.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { css, cx } from '@likec4/styles/css';
|
|
3
|
+
import { styled } from '@likec4/styles/jsx';
|
|
3
4
|
import { Badge, CopyButton, ActionIcon } from '@mantine/core';
|
|
4
5
|
import { forwardRef } from 'react';
|
|
5
6
|
import { GithubIcon } from './GithubIcon.js';
|
|
6
|
-
import IconCheck from '../node_modules/.pnpm/@tabler_icons-react@3.
|
|
7
|
-
import IconCopy from '../node_modules/.pnpm/@tabler_icons-react@3.
|
|
7
|
+
import IconCheck from '../node_modules/.pnpm/@tabler_icons-react@3.35.0_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconCheck.js';
|
|
8
|
+
import IconCopy from '../node_modules/.pnpm/@tabler_icons-react@3.35.0_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconCopy.js';
|
|
8
9
|
|
|
9
10
|
const GITHUB_PREFIX = "https://github.com/";
|
|
10
11
|
const Link = forwardRef(
|
|
@@ -66,15 +67,22 @@ const Link = forwardRef(
|
|
|
66
67
|
userSelect: "none",
|
|
67
68
|
pointerEvents: "none",
|
|
68
69
|
_groupHover: {
|
|
69
|
-
color: "[
|
|
70
|
+
color: "[var(--badge-color)]",
|
|
70
71
|
opacity: 0.7
|
|
71
72
|
}
|
|
72
73
|
}
|
|
73
|
-
})
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
74
|
+
})
|
|
75
|
+
},
|
|
76
|
+
children: /* @__PURE__ */ jsxs(
|
|
77
|
+
styled.a,
|
|
78
|
+
{
|
|
79
|
+
href: url,
|
|
80
|
+
target: "_blank",
|
|
81
|
+
style: {
|
|
82
|
+
color: "var(--badge-color)",
|
|
83
|
+
cursor: "pointer"
|
|
84
|
+
},
|
|
85
|
+
css: {
|
|
78
86
|
transition: "fast",
|
|
79
87
|
opacity: {
|
|
80
88
|
base: 0.7,
|
|
@@ -84,20 +92,20 @@ const Link = forwardRef(
|
|
|
84
92
|
base: "none",
|
|
85
93
|
_hover: "underline"
|
|
86
94
|
}
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
95
|
+
},
|
|
96
|
+
children: [
|
|
97
|
+
isGithub && /* @__PURE__ */ jsx(
|
|
98
|
+
GithubIcon,
|
|
99
|
+
{
|
|
100
|
+
height: "12",
|
|
101
|
+
width: "12",
|
|
102
|
+
style: { verticalAlign: "middle", marginRight: "4px" }
|
|
103
|
+
}
|
|
104
|
+
),
|
|
105
|
+
isGithub ? url.replace(GITHUB_PREFIX, "") : url
|
|
106
|
+
]
|
|
107
|
+
}
|
|
108
|
+
)
|
|
101
109
|
}
|
|
102
110
|
);
|
|
103
111
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SVGProps, ForwardRefExoticComponent, RefAttributes } from 'react';
|
|
2
|
+
type LogoProps = Omit<SVGProps<SVGSVGElement>, 'viewBox'>;
|
|
3
|
+
export declare const Logo: ForwardRefExoticComponent<Omit<LogoProps, "ref"> & RefAttributes<SVGSVGElement>>;
|
|
4
|
+
export declare const LogoIcon: ForwardRefExoticComponent<Omit<LogoProps, "ref"> & RefAttributes<SVGSVGElement>>;
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PropsWithChildren } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* PortalToContainer is used to render elements outside the LikeC4DiagramXYFlow, but inside the container.
|
|
4
|
+
* It is used internally by the library.
|
|
5
|
+
*/
|
|
6
|
+
export declare function PortalToContainer({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { Portal } from '@mantine/core';
|
|
3
|
+
import { useContext } from 'react';
|
|
4
|
+
import { RootContainerContext } from '../context/RootContainerContext.js';
|
|
5
|
+
|
|
6
|
+
function PortalToContainer({ children }) {
|
|
7
|
+
const ctx = useContext(RootContainerContext);
|
|
8
|
+
if (!ctx) {
|
|
9
|
+
throw new Error("PortalToContainer must be used within RootContainer");
|
|
10
|
+
}
|
|
11
|
+
return /* @__PURE__ */ jsx(Portal, { target: ctx.ref.current ?? `#${ctx.id}`, children });
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export { PortalToContainer };
|
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
import { PropsWithChildren
|
|
1
|
+
import { PropsWithChildren } from 'react';
|
|
2
2
|
export declare function RootContainer({ id, className, reduceGraphics, children, }: PropsWithChildren<{
|
|
3
3
|
id: string;
|
|
4
4
|
className?: string | undefined;
|
|
5
5
|
reduceGraphics?: boolean;
|
|
6
6
|
}>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
-
export declare function useRootContainerRef(): RefObject<HTMLDivElement | null>;
|
|
8
|
-
/**
|
|
9
|
-
* NOTE: Non-reactive
|
|
10
|
-
*/
|
|
11
|
-
export declare function useRootContainer(): HTMLDivElement | null;
|
|
@@ -1,26 +1,30 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { cx } from '@likec4/styles/css';
|
|
3
|
-
import {
|
|
4
|
-
import { useRef, useEffect,
|
|
5
|
-
import { usePanningAtom } from '
|
|
6
|
-
import {
|
|
3
|
+
import { useIsomorphicLayoutEffect } from '@react-hookz/web';
|
|
4
|
+
import { useState, useRef, useEffect, useMemo } from 'react';
|
|
5
|
+
import { usePanningAtom } from '../context/ReduceGraphics.js';
|
|
6
|
+
import { RootContainerContext } from '../context/RootContainerContext.js';
|
|
7
7
|
|
|
8
|
-
const RootContainerContext = createContext(createRef());
|
|
9
8
|
function RootContainer({
|
|
10
9
|
id,
|
|
11
10
|
className,
|
|
12
11
|
reduceGraphics = false,
|
|
13
12
|
children
|
|
14
13
|
}) {
|
|
14
|
+
const [mounted, setMounted] = useState(false);
|
|
15
15
|
const ref = useRef(null);
|
|
16
16
|
const $isPanning = usePanningAtom();
|
|
17
|
+
useIsomorphicLayoutEffect(() => {
|
|
18
|
+
setMounted(true);
|
|
19
|
+
}, []);
|
|
17
20
|
useEffect(() => {
|
|
18
21
|
return $isPanning.listen((isPanning) => {
|
|
19
22
|
ref.current?.setAttribute("data-likec4-diagram-panning", isPanning ? "true" : "false");
|
|
20
23
|
});
|
|
21
24
|
}, [$isPanning]);
|
|
25
|
+
const ctx = useMemo(() => ({ id, ref }), [id, ref]);
|
|
22
26
|
return /* @__PURE__ */ jsx(
|
|
23
|
-
|
|
27
|
+
"div",
|
|
24
28
|
{
|
|
25
29
|
id,
|
|
26
30
|
className: cx("likec4-root", className),
|
|
@@ -28,12 +32,9 @@ function RootContainer({
|
|
|
28
32
|
...reduceGraphics && {
|
|
29
33
|
["data-likec4-reduced-graphics"]: true
|
|
30
34
|
},
|
|
31
|
-
children:
|
|
35
|
+
children: mounted && !!ctx.ref.current && /* @__PURE__ */ jsx(RootContainerContext.Provider, { value: ctx, children })
|
|
32
36
|
}
|
|
33
37
|
);
|
|
34
38
|
}
|
|
35
|
-
function useRootContainer() {
|
|
36
|
-
return useContext(RootContainerContext).current;
|
|
37
|
-
}
|
|
38
39
|
|
|
39
|
-
export { RootContainer
|
|
40
|
+
export { RootContainer };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
|
|
3
3
|
const ErrorMessage = ({ children }) => /* @__PURE__ */ jsx(
|
|
4
4
|
"div",
|
|
5
5
|
{
|
|
6
6
|
style: {
|
|
7
|
-
margin: "
|
|
7
|
+
margin: "1rem 0"
|
|
8
8
|
},
|
|
9
9
|
children: /* @__PURE__ */ jsx(
|
|
10
10
|
"div",
|
|
@@ -4,11 +4,11 @@ import { LikeC4DiagramEventHandlers } from '../LikeC4Diagram.props';
|
|
|
4
4
|
type RequiredOrNull<T> = {
|
|
5
5
|
[P in keyof T]-?: NonNullable<T[P]> | null;
|
|
6
6
|
};
|
|
7
|
-
export type DiagramEventHandlersContext = RequiredOrNull<LikeC4DiagramEventHandlers
|
|
8
|
-
handlersRef: RefObject<LikeC4DiagramEventHandlers
|
|
7
|
+
export type DiagramEventHandlersContext = RequiredOrNull<LikeC4DiagramEventHandlers> & {
|
|
8
|
+
handlersRef: RefObject<Required<LikeC4DiagramEventHandlers>>;
|
|
9
9
|
};
|
|
10
10
|
export declare function DiagramEventHandlers<A extends aux.Any>({ handlers, children, }: PropsWithChildren<{
|
|
11
|
-
handlers: LikeC4DiagramEventHandlers<A
|
|
11
|
+
handlers: Required<LikeC4DiagramEventHandlers<A>>;
|
|
12
12
|
}>): import("react/jsx-runtime").JSX.Element;
|
|
13
13
|
export declare function useDiagramEventHandlers(): DiagramEventHandlersContext;
|
|
14
14
|
export declare function useDiagramEventHandlersRef<A extends aux.Any = aux.Any>(): RefObject<LikeC4DiagramEventHandlers<A>>;
|
|
@@ -1,32 +1,36 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { useSyncedRef } from '@react-hookz/web';
|
|
3
3
|
import { useContext, createContext, useMemo } from 'react';
|
|
4
|
-
import { isFunction, mapToObj } from 'remeda';
|
|
4
|
+
import { keys, isFunction, mapToObj } from 'remeda';
|
|
5
5
|
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
6
|
+
const defaultHandlers = {
|
|
7
|
+
onChange: null,
|
|
8
|
+
onNavigateTo: null,
|
|
9
|
+
onNodeClick: null,
|
|
10
|
+
onNodeContextMenu: null,
|
|
11
|
+
onCanvasContextMenu: null,
|
|
12
|
+
onEdgeClick: null,
|
|
13
|
+
onEdgeContextMenu: null,
|
|
14
|
+
onCanvasClick: null,
|
|
15
|
+
onCanvasDblClick: null,
|
|
16
|
+
onBurgerMenuClick: null,
|
|
17
|
+
onOpenSource: null,
|
|
18
|
+
onInitialized: null
|
|
19
|
+
};
|
|
20
|
+
const HandlerNames = keys(defaultHandlers);
|
|
19
21
|
const DiagramEventHandlersReactContext = createContext({
|
|
20
22
|
...mapToObj(HandlerNames, (name) => [name, null]),
|
|
21
23
|
handlersRef: {
|
|
22
|
-
current:
|
|
24
|
+
current: defaultHandlers
|
|
23
25
|
}
|
|
24
26
|
});
|
|
25
27
|
function DiagramEventHandlers({
|
|
26
28
|
handlers,
|
|
27
29
|
children
|
|
28
30
|
}) {
|
|
29
|
-
const handlersRef = useSyncedRef(
|
|
31
|
+
const handlersRef = useSyncedRef(
|
|
32
|
+
handlers
|
|
33
|
+
);
|
|
30
34
|
const deps = HandlerNames.map((name) => isFunction(handlers[name]));
|
|
31
35
|
const value = useMemo(() => ({
|
|
32
36
|
...mapToObj(HandlerNames, (name) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ExclusiveUnion } from '@likec4/core/types';
|
|
2
2
|
import { PropsWithChildren } from 'react';
|
|
3
|
-
declare const FeatureNames: readonly ["Controls", "ReadOnly", "FocusMode", "NavigateTo", "ElementDetails", "RelationshipDetails", "RelationshipBrowser", "Search", "NavigationButtons", "Notations", "DynamicViewWalkthrough", "EdgeEditing", "
|
|
3
|
+
declare const FeatureNames: readonly ["Controls", "ReadOnly", "FocusMode", "NavigateTo", "ElementDetails", "RelationshipDetails", "RelationshipBrowser", "Search", "NavigationButtons", "Notations", "DynamicViewWalkthrough", "EdgeEditing", "FitView", "Vscode", "ElementTags"];
|
|
4
4
|
export type FeatureName = typeof FeatureNames[number];
|
|
5
5
|
type CustomFeatures = {
|
|
6
6
|
enableControls: 'next' | boolean;
|