@likec4/diagram 1.41.0 → 1.42.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (624) hide show
  1. package/README.md +1 -1
  2. package/bundle/index.js +44390 -25365
  3. package/bundle/package.json +4 -0
  4. package/custom/package.json +4 -0
  5. package/dist/LikeC4Diagram.d.ts +7 -1
  6. package/dist/LikeC4Diagram.js +66 -33
  7. package/dist/LikeC4Diagram.props.d.ts +40 -40
  8. package/dist/LikeC4ModelProvider.js +1 -1
  9. package/dist/LikeC4ProjectsProvider.js +1 -1
  10. package/dist/LikeC4Styles.d.ts +6 -2
  11. package/dist/LikeC4Styles.js +22 -54
  12. package/dist/{bundle/LikeC4View.props.d.ts → LikeC4View.d.ts} +29 -25
  13. package/dist/LikeC4View.js +173 -0
  14. package/dist/{bundle/ReactLikeC4.d.ts → ReactLikeC4.d.ts} +15 -9
  15. package/dist/ReactLikeC4.js +65 -0
  16. package/dist/StaticLikeC4Diagram.d.ts +7 -1
  17. package/dist/StaticLikeC4Diagram.js +0 -1
  18. package/dist/base/BaseXYFlow.d.ts +3 -3
  19. package/dist/base/BaseXYFlow.js +11 -9
  20. package/dist/base/index.d.ts +1 -1
  21. package/dist/base/types.d.ts +65 -65
  22. package/dist/base/types.js +44 -45
  23. package/dist/base/updateEdges.d.ts +3 -3
  24. package/dist/base/updateNodes.d.ts +3 -3
  25. package/dist/{base/primitives/MarkdownBlock.d.ts → base-primitives/Markdown.d.ts} +4 -4
  26. package/dist/{base/primitives/MarkdownBlock.js → base-primitives/Markdown.js} +6 -5
  27. package/dist/{base/primitives → base-primitives}/NodeHandles.js +8 -1
  28. package/dist/{base/primitives → base-primitives}/compound/CompoundActionButton.d.ts +2 -2
  29. package/dist/{base/primitives → base-primitives}/compound/CompoundActionButton.js +2 -2
  30. package/dist/{base/primitives → base-primitives}/compound/CompoundDetailsButton.d.ts +2 -2
  31. package/dist/{base/primitives → base-primitives}/compound/CompoundDetailsButton.js +2 -2
  32. package/dist/{base/primitives → base-primitives}/compound/CompoundNodeContainer.d.ts +3 -3
  33. package/dist/{base/primitives → base-primitives}/compound/CompoundNodeContainer.js +1 -2
  34. package/dist/base-primitives/compound/CompoundTitle.d.ts +13 -0
  35. package/dist/{base/primitives → base-primitives}/compound/CompoundTitle.js +3 -7
  36. package/dist/{base/primitives → base-primitives}/compound/actionbtns.css.d.ts +1 -1
  37. package/dist/{base/primitives → base-primitives}/edge/EdgeActionButton.js +2 -2
  38. package/dist/{base/primitives → base-primitives}/edge/EdgeContainer.d.ts +2 -2
  39. package/dist/{base/primitives → base-primitives}/edge/EdgeLabel.d.ts +2 -2
  40. package/dist/{base/primitives → base-primitives}/edge/EdgeLabel.js +2 -1
  41. package/dist/{base/primitives → base-primitives}/edge/EdgeLabelContainer.d.ts +2 -2
  42. package/dist/{base/primitives → base-primitives}/edge/EdgeLabelContainer.js +2 -2
  43. package/dist/{base/primitives → base-primitives}/edge/EdgePath.d.ts +2 -2
  44. package/dist/base-primitives/element/ElementActionButtons.d.ts +40 -0
  45. package/dist/base-primitives/element/ElementActionButtons.js +86 -0
  46. package/dist/base-primitives/element/ElementData.d.ts +65 -0
  47. package/dist/base-primitives/element/ElementData.js +121 -0
  48. package/dist/{base/primitives → base-primitives}/element/ElementDetailsButton.d.ts +4 -2
  49. package/dist/{base/primitives → base-primitives}/element/ElementDetailsButton.js +2 -2
  50. package/dist/{base/primitives → base-primitives}/element/ElementNodeContainer.d.ts +8 -13
  51. package/dist/base-primitives/element/ElementShape.d.ts +18 -0
  52. package/dist/{base/primitives → base-primitives}/element/ElementShape.js +31 -43
  53. package/dist/{base/primitives → base-primitives}/element/ElementTags.d.ts +2 -2
  54. package/dist/{base/primitives → base-primitives}/element/ElementTags.js +4 -4
  55. package/dist/{base/primitives → base-primitives}/index.d.ts +4 -4
  56. package/dist/base-primitives/memoEdge.d.ts +3 -0
  57. package/dist/{base/primitives/customEdge.js → base-primitives/memoEdge.js} +2 -2
  58. package/dist/base-primitives/memoNode.d.ts +3 -0
  59. package/dist/{base/primitives/customNode.js → base-primitives/memoNode.js} +12 -3
  60. package/dist/bundle/index.d.ts +1 -8
  61. package/dist/components/ErrorFallback.js +36 -17
  62. package/dist/components/Link.js +2 -2
  63. package/dist/components/Logo.d.ts +5 -0
  64. package/dist/components/Logo.js +42 -0
  65. package/dist/components/PortalToContainer.d.ts +6 -0
  66. package/dist/components/PortalToContainer.js +14 -0
  67. package/dist/{context → components}/RootContainer.d.ts +1 -6
  68. package/dist/components/RootContainer.js +43 -0
  69. package/dist/{bundle → components}/ViewNotFound.js +2 -2
  70. package/dist/context/DiagramEventHandlers.d.ts +3 -3
  71. package/dist/context/DiagramEventHandlers.js +20 -16
  72. package/dist/context/DiagramFeatures.d.ts +1 -1
  73. package/dist/context/DiagramFeatures.js +0 -1
  74. package/dist/context/IconRenderer.d.ts +4 -3
  75. package/dist/context/IconRenderer.js +10 -8
  76. package/dist/context/RootContainerContext.d.ts +22 -0
  77. package/dist/context/RootContainerContext.js +31 -0
  78. package/dist/context/TagStylesContext.js +22 -25
  79. package/dist/context/index.d.ts +1 -1
  80. package/dist/custom/builtins.d.ts +1 -0
  81. package/dist/custom/customNodes.d.ts +30 -43
  82. package/dist/custom/customNodes.js +21 -10
  83. package/dist/custom/hooks.d.ts +5 -6
  84. package/dist/custom/index.d.ts +11 -1
  85. package/dist/custom/index.js +25 -20
  86. package/dist/custom/primitives.d.ts +1 -0
  87. package/dist/hooks/index.d.ts +6 -0
  88. package/dist/hooks/safeContext.d.ts +1 -1
  89. package/dist/{likec4model → hooks}/useCurrentViewModel.d.ts +2 -1
  90. package/dist/hooks/useCurrentViewModel.js +12 -0
  91. package/dist/hooks/useDiagram.d.ts +23 -15
  92. package/dist/hooks/useDiagram.js +1 -1
  93. package/dist/{likec4model → hooks}/useLikeC4Model.d.ts +1 -0
  94. package/dist/{likec4model → hooks}/useLikeC4Model.js +5 -2
  95. package/dist/{likec4model → hooks}/useLikeC4Project.d.ts +1 -1
  96. package/dist/{likec4model → hooks}/useLikeC4Project.js +2 -2
  97. package/dist/hooks/useLikeC4Styles.d.ts +2 -0
  98. package/dist/hooks/useLikeC4Styles.js +18 -0
  99. package/dist/hooks/useMantinePortalProps.js +2 -2
  100. package/dist/hooks/useReducedGraphics.d.ts +1 -1
  101. package/dist/hooks/useXYFlow.d.ts +10 -10
  102. package/dist/hooks/useXYFlow.js +11 -5
  103. package/dist/index.d.ts +14 -6
  104. package/dist/index.js +9 -13
  105. package/dist/likec4diagram/DiagramUI.d.ts +1 -1
  106. package/dist/likec4diagram/DiagramUI.js +10 -16
  107. package/dist/likec4diagram/DiagramXYFlow.js +130 -118
  108. package/dist/likec4diagram/convert-to-xyflow.js +2 -2
  109. package/dist/likec4diagram/custom/edges/RelationshipEdge.d.ts +3 -51
  110. package/dist/likec4diagram/custom/edges/RelationshipEdge.js +8 -9
  111. package/dist/likec4diagram/custom/edges/SequenceStepEdge.d.ts +1 -2
  112. package/dist/likec4diagram/custom/edges/SequenceStepEdge.js +5 -5
  113. package/dist/likec4diagram/custom/index.d.ts +16 -0
  114. package/dist/likec4diagram/custom/index.js +12 -12
  115. package/dist/likec4diagram/custom/nodes/CompoundActions.d.ts +1 -2
  116. package/dist/likec4diagram/custom/nodes/CompoundActions.js +1 -1
  117. package/dist/likec4diagram/custom/nodes/ElementActions.d.ts +61 -5
  118. package/dist/likec4diagram/custom/nodes/ElementActions.js +8 -8
  119. package/dist/likec4diagram/custom/nodes/SequenceActorNode.d.ts +2 -3
  120. package/dist/likec4diagram/custom/nodes/SequenceActorNode.js +12 -24
  121. package/dist/likec4diagram/custom/nodes/nodes.d.ts +10 -10
  122. package/dist/likec4diagram/custom/nodes/nodes.js +25 -28
  123. package/dist/likec4diagram/custom/nodes/toolbar/ColorButton.d.ts +3 -2
  124. package/dist/likec4diagram/custom/nodes/toolbar/ColorButton.js +17 -12
  125. package/dist/likec4diagram/custom/nodes/toolbar/CompoundToolbar.d.ts +2 -6
  126. package/dist/likec4diagram/custom/nodes/toolbar/ElementToolbar.d.ts +2 -6
  127. package/dist/likec4diagram/custom/nodes/toolbar/ElementToolbar.js +3 -3
  128. package/dist/likec4diagram/custom/nodes/toolbar/Toolbar.d.ts +2 -3
  129. package/dist/likec4diagram/custom/nodes/toolbar/_shared.d.ts +5 -19
  130. package/dist/likec4diagram/custom/nodes/toolbar/_shared.js +11 -22
  131. package/dist/likec4diagram/relationship-popover/RelationshipPopover.js +50 -49
  132. package/dist/likec4diagram/relationship-popover/actor.d.ts +1 -1
  133. package/dist/{state → likec4diagram/state}/DiagramActorProvider.d.ts +1 -1
  134. package/dist/{state → likec4diagram/state}/DiagramActorProvider.js +39 -13
  135. package/dist/{state → likec4diagram/state}/assign.d.ts +1 -1
  136. package/dist/{state → likec4diagram/state}/assign.js +3 -4
  137. package/dist/{state → likec4diagram/state}/diagram-machine.d.ts +178 -138
  138. package/dist/{state → likec4diagram/state}/diagram-machine.js +34 -24
  139. package/dist/{state → likec4diagram/state}/persistence.d.ts +1 -1
  140. package/dist/{state → likec4diagram/state}/syncManualLayoutActor.d.ts +1 -1
  141. package/dist/{state → likec4diagram/state}/syncManualLayoutActor.js +2 -2
  142. package/dist/{state → likec4diagram/state}/types.d.ts +2 -2
  143. package/dist/{state → likec4diagram/state}/utils.d.ts +2 -2
  144. package/dist/likec4diagram/types.d.ts +51 -34
  145. package/dist/likec4diagram/ui/index.d.ts +0 -3
  146. package/dist/likec4diagram/ui/notation/NotationPanel.css.js +4 -1
  147. package/dist/likec4diagram/ui/notation/NotationPanel.js +6 -6
  148. package/dist/likec4diagram/useLayoutConstraints.d.ts +1 -1
  149. package/dist/likec4diagram/xyflow-diagram/diagram-view.d.ts +1 -1
  150. package/dist/likec4diagram/xyflow-diagram/diagram-view.js +12 -9
  151. package/dist/likec4diagram/xyflow-sequence/const.js +1 -8
  152. package/dist/likec4diagram/xyflow-sequence/sequence-layout.d.ts +7 -0
  153. package/dist/likec4diagram/xyflow-sequence/sequence-layout.js +181 -0
  154. package/dist/navigationpanel/NavigationPanel.js +5 -6
  155. package/dist/navigationpanel/NavigationPanelControls.js +3 -4
  156. package/dist/navigationpanel/NavigationPanelDropdown.js +37 -13
  157. package/dist/navigationpanel/_common.js +1 -1
  158. package/dist/navigationpanel/actor.d.ts +1 -1
  159. package/dist/navigationpanel/controls/BurgerButton.js +46 -8
  160. package/dist/navigationpanel/controls/NavigationButtons.js +2 -2
  161. package/dist/navigationpanel/controls/OpenSource.js +1 -1
  162. package/dist/navigationpanel/controls/SearchControl.js +1 -1
  163. package/dist/navigationpanel/controls/ToggleReadonly.js +2 -2
  164. package/dist/navigationpanel/controls/ViewDetailsCard.js +8 -10
  165. package/dist/navigationpanel/dropdown/ProjectsMenu.js +2 -2
  166. package/dist/navigationpanel/editorpanel/CenterCamera.js +1 -1
  167. package/dist/navigationpanel/editorpanel/ChangeAutoLayoutButton.js +1 -1
  168. package/dist/navigationpanel/editorpanel/LayoutDriftNotification.js +1 -1
  169. package/dist/navigationpanel/editorpanel/ManualLayoutToolsButton.js +9 -9
  170. package/dist/navigationpanel/hooks.d.ts +3 -3
  171. package/dist/navigationpanel/hooks.js +2 -2
  172. package/dist/navigationpanel/styles.css.d.ts +1 -1
  173. package/dist/navigationpanel/styles.css.js +1 -1
  174. package/dist/navigationpanel/walkthrough/ActiveWalkthroughControls.js +3 -3
  175. package/dist/navigationpanel/walkthrough/DynamicViewControls.d.ts +107 -107
  176. package/dist/navigationpanel/walkthrough/DynamicViewControls.js +3 -13
  177. package/dist/navigationpanel/walkthrough/WalkthroughPanel.js +2 -2
  178. 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
  179. 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
  180. 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
  181. 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
  182. 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
  183. 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
  184. 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
  185. 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
  186. 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
  187. 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
  188. 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
  189. 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
  190. 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
  191. 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
  192. 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
  193. package/dist/node_modules/.pnpm/@tabler_icons-react@3.35.0_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconDirectionSignFilled.js +14 -0
  194. 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
  195. 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
  196. 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
  197. 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
  198. 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
  199. 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
  200. 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
  201. 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
  202. 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
  203. 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
  204. 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
  205. 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
  206. 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
  207. 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
  208. 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
  209. 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
  210. 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
  211. 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
  212. 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
  213. 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
  214. 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
  215. 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
  216. 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
  217. 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
  218. 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
  219. 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
  220. 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
  221. 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
  222. 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
  223. 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
  224. 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
  225. 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
  226. 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
  227. 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
  228. 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
  229. package/dist/overlays/element-details/ElementDetailsCard.css.js +1 -1
  230. package/dist/overlays/element-details/ElementDetailsCard.js +31 -27
  231. package/dist/overlays/element-details/TabPanelDeployments.js +4 -4
  232. package/dist/overlays/element-details/TabPanelRelationships.js +5 -7
  233. package/dist/overlays/element-details/TabPanelStructure.js +1 -1
  234. package/dist/overlays/element-details/actor.d.ts +14 -16620
  235. package/dist/overlays/element-details/actor.js +2 -1
  236. package/dist/overlays/overlay/Overlay.js +9 -6
  237. package/dist/overlays/relationship-details/RelationshipDetails.d.ts +3 -43
  238. package/dist/overlays/relationship-details/RelationshipDetails.js +6 -6
  239. package/dist/overlays/relationship-details/SelectEdge.js +2 -2
  240. package/dist/overlays/relationship-details/_types.d.ts +29 -12
  241. package/dist/overlays/relationship-details/actor.d.ts +14 -54
  242. package/dist/overlays/relationship-details/actor.js +4 -3
  243. package/dist/overlays/relationship-details/compute.d.ts +2 -1
  244. package/dist/overlays/relationship-details/custom/ElementActions.d.ts +1 -4
  245. package/dist/overlays/relationship-details/custom/ElementActions.js +4 -4
  246. package/dist/overlays/relationship-details/custom/edgeTypes.d.ts +3 -43
  247. package/dist/overlays/relationship-details/custom/edgeTypes.js +7 -9
  248. package/dist/overlays/relationship-details/custom/nodeTypes.d.ts +10 -0
  249. package/dist/overlays/relationship-details/custom/nodeTypes.js +19 -17
  250. package/dist/overlays/relationship-details/hooks.d.ts +5 -377
  251. package/dist/overlays/relationship-details/layout-to-xyflow.js +11 -10
  252. package/dist/overlays/relationship-details/layout.d.ts +2 -2
  253. package/dist/overlays/relationship-details/layout.js +6 -6
  254. package/dist/overlays/relationships-browser/RelationshipsBrowser.d.ts +3 -44
  255. package/dist/overlays/relationships-browser/RelationshipsBrowser.js +12 -8
  256. package/dist/overlays/relationships-browser/SelectElement.js +4 -4
  257. package/dist/overlays/relationships-browser/_types.d.ts +30 -13
  258. package/dist/overlays/relationships-browser/actor.d.ts +17 -523
  259. package/dist/overlays/relationships-browser/actor.js +5 -4
  260. package/dist/overlays/relationships-browser/const.d.ts +6 -2
  261. package/dist/overlays/relationships-browser/custom/ElementActions.d.ts +1 -4
  262. package/dist/overlays/relationships-browser/custom/ElementActions.js +4 -4
  263. package/dist/overlays/relationships-browser/custom/EmptyNode.d.ts +1 -4
  264. package/dist/overlays/relationships-browser/custom/edgeTypes.d.ts +3 -44
  265. package/dist/overlays/relationships-browser/custom/edgeTypes.js +7 -8
  266. package/dist/overlays/relationships-browser/custom/index.d.ts +2 -1
  267. package/dist/overlays/relationships-browser/custom/nodeTypes.d.ts +5 -12
  268. package/dist/overlays/relationships-browser/custom/nodeTypes.js +16 -21
  269. package/dist/overlays/relationships-browser/layout.js +12 -11
  270. package/dist/overlays/relationships-browser/useViewToNodesEdges.d.ts +2 -2
  271. package/dist/overlays/relationships-browser/useViewToNodesEdges.js +11 -10
  272. package/dist/search/components/ElementsColumn.js +5 -4
  273. package/dist/search/components/PickView.js +2 -2
  274. package/dist/search/components/SearchByTags.js +3 -3
  275. package/dist/search/components/SearchInput.js +2 -2
  276. package/dist/search/components/ViewsColum.js +4 -4
  277. package/dist/search/components/_shared.css.d.ts +2 -2
  278. package/dist/{bundle → shadowroot}/ShadowRoot.d.ts +5 -1
  279. package/dist/shadowroot/ShadowRoot.js +69 -0
  280. package/dist/{bundle → shadowroot}/styles.css.d.ts +4 -4
  281. package/dist/{bundle → shadowroot}/styles.css.js +17 -24
  282. package/dist/styles.css2.js +1 -1
  283. package/dist/utils/get-view-bounds.d.ts +3 -0
  284. package/dist/utils/get-view-bounds.js +14 -0
  285. package/dist/utils/index.d.ts +1 -0
  286. package/dist/utils/xyflow.d.ts +5 -2
  287. package/dist/utils/xyflow.js +2 -0
  288. package/package.json +48 -39
  289. package/panda.buildinfo.json +129 -180
  290. package/{dist/styles-min.css → styles-min.css} +1 -1
  291. package/styles.css +1 -0
  292. package/bundle/chunk-FGcODVxo.js +0 -21865
  293. package/bundle/custom.js +0 -82
  294. package/dist/base/primitives/compound/CompoundTitle.d.ts +0 -6
  295. package/dist/base/primitives/customEdge.d.ts +0 -4
  296. package/dist/base/primitives/customNode.d.ts +0 -4
  297. package/dist/base/primitives/edge/xyvars.d.ts +0 -24
  298. package/dist/base/primitives/element/ElementActionButtons.d.ts +0 -13
  299. package/dist/base/primitives/element/ElementActionButtons.js +0 -79
  300. package/dist/base/primitives/element/ElementShape.d.ts +0 -32
  301. package/dist/base/primitives/element/ElementTitle.d.ts +0 -12
  302. package/dist/base/primitives/element/ElementTitle.js +0 -76
  303. package/dist/bundle/LikeC4ModelProvider.d.ts +0 -9
  304. package/dist/bundle/LikeC4ModelProvider.js +0 -5
  305. package/dist/bundle/LikeC4View.d.ts +0 -3
  306. package/dist/bundle/LikeC4View.js +0 -186
  307. package/dist/bundle/ReactLikeC4.js +0 -91
  308. package/dist/bundle/ShadowRoot.js +0 -46
  309. package/dist/bundle/custom.d.ts +0 -1
  310. package/dist/bundle/custom.js +0 -33
  311. package/dist/bundle/index.js +0 -17
  312. package/dist/components/SearchControl.css.js +0 -79
  313. package/dist/components/SearchControl.js +0 -17
  314. package/dist/context/ControlsCustomLayout.d.ts +0 -12
  315. package/dist/context/ControlsCustomLayout.js +0 -8
  316. package/dist/context/ReduceGraphics.d.ts +0 -12
  317. package/dist/context/ReduceGraphics.js +0 -26
  318. package/dist/context/RootContainer.js +0 -39
  319. package/dist/custom/components.d.ts +0 -5
  320. package/dist/likec4diagram/ui/controls/ChangeAutoLayoutButton.d.ts +0 -2
  321. package/dist/likec4diagram/ui/controls/ChangeAutoLayoutButton.js +0 -159
  322. package/dist/likec4diagram/ui/controls/Controls.d.ts +0 -2
  323. package/dist/likec4diagram/ui/controls/Controls.js +0 -154
  324. package/dist/likec4diagram/ui/controls/LayoutDriftNotification.d.ts +0 -2
  325. package/dist/likec4diagram/ui/controls/LayoutDriftNotification.js +0 -50
  326. package/dist/likec4diagram/ui/controls/ManualLayoutToolsButton.d.ts +0 -2
  327. package/dist/likec4diagram/ui/controls/ManualLayoutToolsButton.js +0 -145
  328. package/dist/likec4diagram/ui/controls/NavigationButtons.d.ts +0 -1
  329. package/dist/likec4diagram/ui/controls/NavigationButtons.js +0 -61
  330. package/dist/likec4diagram/ui/controls/ToggleReadonly.d.ts +0 -1
  331. package/dist/likec4diagram/ui/controls/ToggleReadonly.js +0 -29
  332. package/dist/likec4diagram/ui/controls/_shared.d.ts +0 -7
  333. package/dist/likec4diagram/ui/controls/_shared.js +0 -22
  334. package/dist/likec4diagram/ui/controls/styles.css.d.ts +0 -8
  335. package/dist/likec4diagram/ui/controls/styles.css.js +0 -79
  336. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.d.ts +0 -3
  337. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.js +0 -49
  338. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.d.ts +0 -1
  339. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.js +0 -164
  340. package/dist/likec4diagram/ui/diagram-title/Link.d.ts +0 -4
  341. package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.css.d.ts +0 -4
  342. package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.css.js +0 -67
  343. package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.d.ts +0 -1
  344. package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.js +0 -124
  345. package/dist/likec4diagram/xyflow-sequence/layouter.js +0 -408
  346. package/dist/likec4diagram/xyflow-sequence/sequence-view.js +0 -273
  347. package/dist/likec4diagram/xyflow-sequence/utils.js +0 -92
  348. package/dist/likec4model/index.d.ts +0 -4
  349. package/dist/likec4model/useCurrentViewModel.js +0 -15
  350. 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
  351. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconMenu2.js +0 -14
  352. package/dist/overlays/overlay/Overlay.css.d.ts +0 -60
  353. package/dist/overlays/overlay/Overlay.css.js +0 -122
  354. package/dist/src/index.ts.d.ts +0 -2
  355. package/dist/styles.css +0 -1
  356. package/src/LikeC4Diagram.props.ts +0 -350
  357. package/src/LikeC4Diagram.tsx +0 -172
  358. package/src/LikeC4ModelProvider.tsx +0 -22
  359. package/src/LikeC4ProjectsProvider.tsx +0 -41
  360. package/src/LikeC4Styles.tsx +0 -137
  361. package/src/StaticLikeC4Diagram.tsx +0 -62
  362. package/src/base/Background.tsx +0 -31
  363. package/src/base/BaseXYFlow.tsx +0 -218
  364. package/src/base/const.ts +0 -22
  365. package/src/base/index.ts +0 -12
  366. package/src/base/primitives/MarkdownBlock.tsx +0 -82
  367. package/src/base/primitives/NodeHandles.tsx +0 -18
  368. package/src/base/primitives/compound/CompoundActionButton.tsx +0 -62
  369. package/src/base/primitives/compound/CompoundDetailsButton.tsx +0 -56
  370. package/src/base/primitives/compound/CompoundNodeContainer.tsx +0 -83
  371. package/src/base/primitives/compound/CompoundTitle.tsx +0 -34
  372. package/src/base/primitives/compound/actionbtns.css.ts +0 -18
  373. package/src/base/primitives/customEdge.ts +0 -34
  374. package/src/base/primitives/customNode.tsx +0 -29
  375. package/src/base/primitives/edge/EdgeActionButton.tsx +0 -24
  376. package/src/base/primitives/edge/EdgeContainer.tsx +0 -68
  377. package/src/base/primitives/edge/EdgeLabel.tsx +0 -94
  378. package/src/base/primitives/edge/EdgeLabelContainer.tsx +0 -102
  379. package/src/base/primitives/edge/EdgeMarkers.tsx +0 -198
  380. package/src/base/primitives/edge/EdgePath.tsx +0 -126
  381. package/src/base/primitives/edge/edge.css.ts +0 -74
  382. package/src/base/primitives/edge/xyvars.ts +0 -31
  383. package/src/base/primitives/element/ElementActionButtons.tsx +0 -95
  384. package/src/base/primitives/element/ElementDetailsButton.tsx +0 -80
  385. package/src/base/primitives/element/ElementNodeContainer.css.ts +0 -51
  386. package/src/base/primitives/element/ElementNodeContainer.tsx +0 -98
  387. package/src/base/primitives/element/ElementShape.tsx +0 -250
  388. package/src/base/primitives/element/ElementTags.tsx +0 -190
  389. package/src/base/primitives/element/ElementTitle.tsx +0 -94
  390. package/src/base/primitives/index.ts +0 -20
  391. package/src/base/types.ts +0 -174
  392. package/src/base/updateEdges.ts +0 -38
  393. package/src/base/updateNodes.ts +0 -43
  394. package/src/bundle/LikeC4ModelProvider.tsx +0 -12
  395. package/src/bundle/LikeC4View.props.ts +0 -288
  396. package/src/bundle/LikeC4View.tsx +0 -194
  397. package/src/bundle/ReactLikeC4.tsx +0 -127
  398. package/src/bundle/ShadowRoot.tsx +0 -54
  399. package/src/bundle/ViewNotFound.tsx +0 -25
  400. package/src/bundle/custom.ts +0 -1
  401. package/src/bundle/index.ts +0 -27
  402. package/src/bundle/react-dom-server-mock.ts +0 -3
  403. package/src/bundle/styles.css.ts +0 -172
  404. package/src/components/ErrorFallback.tsx +0 -45
  405. package/src/components/GithubIcon.tsx +0 -16
  406. package/src/components/Link.tsx +0 -112
  407. package/src/components/NavigationLink.tsx +0 -32
  408. package/src/components/SearchControl.css.ts +0 -79
  409. package/src/components/SearchControl.tsx +0 -30
  410. package/src/context/ControlsCustomLayout.ts +0 -15
  411. package/src/context/DiagramEventHandlers.tsx +0 -68
  412. package/src/context/DiagramFeatures.tsx +0 -141
  413. package/src/context/EnsureMantine.tsx +0 -25
  414. package/src/context/FramerMotionConfig.tsx +0 -25
  415. package/src/context/IconRenderer.tsx +0 -117
  416. package/src/context/ReduceGraphics.tsx +0 -42
  417. package/src/context/RootContainer.tsx +0 -54
  418. package/src/context/TagStylesContext.tsx +0 -98
  419. package/src/context/index.ts +0 -13
  420. package/src/custom/components.ts +0 -51
  421. package/src/custom/customNodes.ts +0 -282
  422. package/src/custom/hooks.ts +0 -52
  423. package/src/custom/index.ts +0 -5
  424. package/src/hooks/index.ts +0 -6
  425. package/src/hooks/safeContext.tsx +0 -18
  426. package/src/hooks/useCurrentViewId.ts +0 -15
  427. package/src/hooks/useDiagram.ts +0 -310
  428. package/src/hooks/useId.ts +0 -5
  429. package/src/hooks/useMantinePortalProps.ts +0 -17
  430. package/src/hooks/useOverlaysActor.ts +0 -11
  431. package/src/hooks/useReducedGraphics.ts +0 -1
  432. package/src/hooks/useSearchActor.ts +0 -11
  433. package/src/hooks/useSetState.ts +0 -19
  434. package/src/hooks/useUpdateEffect.ts +0 -46
  435. package/src/hooks/useXYFlow.ts +0 -41
  436. package/src/index.ts +0 -50
  437. package/src/likec4diagram/DiagramUI.tsx +0 -46
  438. package/src/likec4diagram/DiagramXYFlow.tsx +0 -240
  439. package/src/likec4diagram/convert-to-xyflow.ts +0 -45
  440. package/src/likec4diagram/custom/edges/RelationshipEdge.tsx +0 -373
  441. package/src/likec4diagram/custom/edges/SequenceStepEdge.tsx +0 -65
  442. package/src/likec4diagram/custom/edges/edges.css.ts +0 -45
  443. package/src/likec4diagram/custom/edges/utils.ts +0 -125
  444. package/src/likec4diagram/custom/index.ts +0 -28
  445. package/src/likec4diagram/custom/nodes/CompoundActions.tsx +0 -27
  446. package/src/likec4diagram/custom/nodes/ElementActions.tsx +0 -120
  447. package/src/likec4diagram/custom/nodes/SequenceActorNode.tsx +0 -175
  448. package/src/likec4diagram/custom/nodes/index.ts +0 -18
  449. package/src/likec4diagram/custom/nodes/nodes.tsx +0 -129
  450. package/src/likec4diagram/custom/nodes/toolbar/ColorButton.tsx +0 -175
  451. package/src/likec4diagram/custom/nodes/toolbar/CompoundToolbar.tsx +0 -122
  452. package/src/likec4diagram/custom/nodes/toolbar/ElementToolbar.tsx +0 -140
  453. package/src/likec4diagram/custom/nodes/toolbar/Toolbar.tsx +0 -82
  454. package/src/likec4diagram/custom/nodes/toolbar/_shared.tsx +0 -151
  455. package/src/likec4diagram/custom/nodes/toolbar/styles.css.ts +0 -13
  456. package/src/likec4diagram/relationship-popover/RelationshipPopover.tsx +0 -549
  457. package/src/likec4diagram/relationship-popover/actor.ts +0 -192
  458. package/src/likec4diagram/relationship-popover/styles.css.ts +0 -27
  459. package/src/likec4diagram/types.ts +0 -240
  460. package/src/likec4diagram/ui/controls/ChangeAutoLayoutButton.tsx +0 -202
  461. package/src/likec4diagram/ui/controls/Controls.tsx +0 -153
  462. package/src/likec4diagram/ui/controls/LayoutDriftNotification.tsx +0 -50
  463. package/src/likec4diagram/ui/controls/ManualLayoutToolsButton.tsx +0 -125
  464. package/src/likec4diagram/ui/controls/NavigationButtons.tsx +0 -61
  465. package/src/likec4diagram/ui/controls/ToggleReadonly.tsx +0 -30
  466. package/src/likec4diagram/ui/controls/_shared.ts +0 -21
  467. package/src/likec4diagram/ui/controls/styles.css.ts +0 -84
  468. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.ts +0 -51
  469. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.tsx +0 -175
  470. package/src/likec4diagram/ui/diagram-title/Link.tsx +0 -40
  471. package/src/likec4diagram/ui/index.ts +0 -4
  472. package/src/likec4diagram/ui/notation/NotationPanel.css.ts +0 -99
  473. package/src/likec4diagram/ui/notation/NotationPanel.tsx +0 -252
  474. package/src/likec4diagram/ui/notation/index.ts +0 -1
  475. package/src/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.css.ts +0 -70
  476. package/src/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.tsx +0 -130
  477. package/src/likec4diagram/useLayoutConstraints.ts +0 -281
  478. package/src/likec4diagram/xyflow-diagram/diagram-view.ts +0 -275
  479. package/src/likec4diagram/xyflow-sequence/_types.ts +0 -45
  480. package/src/likec4diagram/xyflow-sequence/const.ts +0 -37
  481. package/src/likec4diagram/xyflow-sequence/layouter.ts +0 -567
  482. package/src/likec4diagram/xyflow-sequence/sequence-view.ts +0 -337
  483. package/src/likec4diagram/xyflow-sequence/utils.ts +0 -112
  484. package/src/likec4model/LikeC4ModelContext.tsx +0 -19
  485. package/src/likec4model/LikeC4ProjectsContext.ts +0 -9
  486. package/src/likec4model/index.ts +0 -19
  487. package/src/likec4model/useCurrentViewModel.ts +0 -14
  488. package/src/likec4model/useLikeC4ElementsTree.ts +0 -39
  489. package/src/likec4model/useLikeC4Model.ts +0 -35
  490. package/src/likec4model/useLikeC4Project.ts +0 -61
  491. package/src/navigationpanel/NavigationPanel.tsx +0 -136
  492. package/src/navigationpanel/NavigationPanelControls.tsx +0 -133
  493. package/src/navigationpanel/NavigationPanelDropdown.tsx +0 -547
  494. package/src/navigationpanel/_common.tsx +0 -84
  495. package/src/navigationpanel/actor.ts +0 -320
  496. package/src/navigationpanel/controls/BurgerButton.tsx +0 -30
  497. package/src/navigationpanel/controls/NavigationButtons.tsx +0 -40
  498. package/src/navigationpanel/controls/OpenSource.tsx +0 -28
  499. package/src/navigationpanel/controls/SearchControl.tsx +0 -66
  500. package/src/navigationpanel/controls/ToggleReadonly.tsx +0 -66
  501. package/src/navigationpanel/controls/ViewDetailsCard.tsx +0 -263
  502. package/src/navigationpanel/controls/index.ts +0 -6
  503. package/src/navigationpanel/dropdown/ProjectsMenu.tsx +0 -78
  504. package/src/navigationpanel/editorpanel/CenterCamera.tsx +0 -15
  505. package/src/navigationpanel/editorpanel/ChangeAutoLayoutButton.tsx +0 -199
  506. package/src/navigationpanel/editorpanel/EditorPanel.tsx +0 -49
  507. package/src/navigationpanel/editorpanel/LayoutDriftNotification.tsx +0 -56
  508. package/src/navigationpanel/editorpanel/ManualLayoutToolsButton.tsx +0 -148
  509. package/src/navigationpanel/editorpanel/_common.tsx +0 -14
  510. package/src/navigationpanel/editorpanel/index.ts +0 -1
  511. package/src/navigationpanel/editorpanel/styles.ts +0 -84
  512. package/src/navigationpanel/hooks.tsx +0 -70
  513. package/src/navigationpanel/index.ts +0 -1
  514. package/src/navigationpanel/styles.css.ts +0 -28
  515. package/src/navigationpanel/walkthrough/ActiveWalkthroughControls.tsx +0 -132
  516. package/src/navigationpanel/walkthrough/DynamicViewControls.tsx +0 -125
  517. package/src/navigationpanel/walkthrough/WalkthroughPanel.css.ts +0 -21
  518. package/src/navigationpanel/walkthrough/WalkthroughPanel.tsx +0 -88
  519. package/src/navigationpanel/walkthrough/index.tsx +0 -2
  520. package/src/overlays/Overlays.tsx +0 -121
  521. package/src/overlays/element-details/ElementDetails.tsx +0 -33
  522. package/src/overlays/element-details/ElementDetailsCard.css.ts +0 -263
  523. package/src/overlays/element-details/ElementDetailsCard.tsx +0 -665
  524. package/src/overlays/element-details/TabPanelDeployments.css.ts +0 -64
  525. package/src/overlays/element-details/TabPanelDeployments.tsx +0 -220
  526. package/src/overlays/element-details/TabPanelRelationships.css.ts +0 -102
  527. package/src/overlays/element-details/TabPanelRelationships.tsx +0 -186
  528. package/src/overlays/element-details/TabPanelStructure.css.ts +0 -36
  529. package/src/overlays/element-details/TabPanelStructure.tsx +0 -121
  530. package/src/overlays/element-details/actor.ts +0 -104
  531. package/src/overlays/element-details/actorContext.tsx +0 -16
  532. package/src/overlays/overlay/Overlay.css.ts +0 -123
  533. package/src/overlays/overlay/Overlay.tsx +0 -169
  534. package/src/overlays/overlaysActor.ts +0 -284
  535. package/src/overlays/relationship-details/RelationshipDetails.tsx +0 -334
  536. package/src/overlays/relationship-details/SelectEdge.css.ts +0 -88
  537. package/src/overlays/relationship-details/SelectEdge.tsx +0 -141
  538. package/src/overlays/relationship-details/_types.ts +0 -88
  539. package/src/overlays/relationship-details/actor.ts +0 -397
  540. package/src/overlays/relationship-details/compute.ts +0 -177
  541. package/src/overlays/relationship-details/custom/ElementActions.tsx +0 -53
  542. package/src/overlays/relationship-details/custom/edgeTypes.tsx +0 -49
  543. package/src/overlays/relationship-details/custom/index.ts +0 -2
  544. package/src/overlays/relationship-details/custom/nodeTypes.tsx +0 -126
  545. package/src/overlays/relationship-details/custom/styles.css.ts +0 -13
  546. package/src/overlays/relationship-details/hooks.ts +0 -51
  547. package/src/overlays/relationship-details/layout-to-xyflow.ts +0 -173
  548. package/src/overlays/relationship-details/layout.ts +0 -477
  549. package/src/overlays/relationships-browser/RelationshipsBrowser.tsx +0 -282
  550. package/src/overlays/relationships-browser/SelectElement.css.ts +0 -22
  551. package/src/overlays/relationships-browser/SelectElement.tsx +0 -229
  552. package/src/overlays/relationships-browser/_types.ts +0 -102
  553. package/src/overlays/relationships-browser/actor.ts +0 -592
  554. package/src/overlays/relationships-browser/const.ts +0 -8
  555. package/src/overlays/relationships-browser/custom/ElementActions.tsx +0 -57
  556. package/src/overlays/relationships-browser/custom/EmptyNode.tsx +0 -18
  557. package/src/overlays/relationships-browser/custom/edgeTypes.tsx +0 -103
  558. package/src/overlays/relationships-browser/custom/index.ts +0 -2
  559. package/src/overlays/relationships-browser/custom/nodeTypes.tsx +0 -146
  560. package/src/overlays/relationships-browser/custom/styles.css.ts +0 -12
  561. package/src/overlays/relationships-browser/hooks.ts +0 -63
  562. package/src/overlays/relationships-browser/layout.ts +0 -630
  563. package/src/overlays/relationships-browser/useViewToNodesEdges.ts +0 -210
  564. package/src/overlays/types.ts +0 -39
  565. package/src/search/Search.tsx +0 -220
  566. package/src/search/components/ElementsColumn.css.ts +0 -84
  567. package/src/search/components/ElementsColumn.tsx +0 -318
  568. package/src/search/components/PickView.tsx +0 -134
  569. package/src/search/components/SearchByTags.tsx +0 -112
  570. package/src/search/components/SearchInput.tsx +0 -265
  571. package/src/search/components/ViewsColum.tsx +0 -167
  572. package/src/search/components/ViewsColumn.css.ts +0 -34
  573. package/src/search/components/_shared.css.ts +0 -176
  574. package/src/search/components/styles.css.ts +0 -72
  575. package/src/search/components/utils.ts +0 -64
  576. package/src/search/hooks.ts +0 -38
  577. package/src/search/searchActor.ts +0 -99
  578. package/src/state/DiagramActorProvider.tsx +0 -160
  579. package/src/state/aligners.ts +0 -500
  580. package/src/state/assign.ts +0 -425
  581. package/src/state/diagram-machine.ts +0 -1422
  582. package/src/state/hotkeyActor.ts +0 -41
  583. package/src/state/inspector.ts +0 -5
  584. package/src/state/persistence.ts +0 -22
  585. package/src/state/syncManualLayoutActor.ts +0 -218
  586. package/src/state/types.ts +0 -34
  587. package/src/state/utils.ts +0 -152
  588. package/src/styles-font.css +0 -251
  589. package/src/styles-min.css +0 -2
  590. package/src/styles-xyflow.css +0 -1
  591. package/src/styles.css +0 -3
  592. package/src/utils/css.ts +0 -7
  593. package/src/utils/index.ts +0 -15
  594. package/src/utils/roundDpr.ts +0 -27
  595. package/src/utils/vector.ts +0 -57
  596. package/src/utils/xyflow.ts +0 -105
  597. /package/dist/{base/primitives → base-primitives}/NodeHandles.d.ts +0 -0
  598. /package/dist/{base/primitives → base-primitives}/compound/actionbtns.css.js +0 -0
  599. /package/dist/{base/primitives → base-primitives}/edge/EdgeActionButton.d.ts +0 -0
  600. /package/dist/{base/primitives → base-primitives}/edge/EdgeContainer.js +0 -0
  601. /package/dist/{base/primitives → base-primitives}/edge/EdgeMarkers.d.ts +0 -0
  602. /package/dist/{base/primitives → base-primitives}/edge/EdgeMarkers.js +0 -0
  603. /package/dist/{base/primitives → base-primitives}/edge/EdgePath.js +0 -0
  604. /package/dist/{base/primitives → base-primitives}/edge/edge.css.d.ts +0 -0
  605. /package/dist/{base/primitives → base-primitives}/edge/edge.css.js +0 -0
  606. /package/dist/{base/primitives → base-primitives}/element/ElementNodeContainer.css.d.ts +0 -0
  607. /package/dist/{base/primitives → base-primitives}/element/ElementNodeContainer.css.js +0 -0
  608. /package/dist/{base/primitives → base-primitives}/element/ElementNodeContainer.js +0 -0
  609. /package/dist/{bundle → components}/ViewNotFound.d.ts +0 -0
  610. /package/dist/{likec4model → context}/LikeC4ModelContext.d.ts +0 -0
  611. /package/dist/{likec4model → context}/LikeC4ModelContext.js +0 -0
  612. /package/dist/{likec4model → context}/LikeC4ProjectsContext.d.ts +0 -0
  613. /package/dist/{likec4model → context}/LikeC4ProjectsContext.js +0 -0
  614. /package/dist/{likec4model → hooks}/useLikeC4ElementsTree.d.ts +0 -0
  615. /package/dist/{likec4model → hooks}/useLikeC4ElementsTree.js +0 -0
  616. /package/dist/{state → likec4diagram/state}/aligners.d.ts +0 -0
  617. /package/dist/{state → likec4diagram/state}/aligners.js +0 -0
  618. /package/dist/{state → likec4diagram/state}/hotkeyActor.d.ts +0 -0
  619. /package/dist/{state → likec4diagram/state}/hotkeyActor.js +0 -0
  620. /package/dist/{state → likec4diagram/state}/inspector.d.ts +0 -0
  621. /package/dist/{state → likec4diagram/state}/persistence.js +0 -0
  622. /package/dist/{state → likec4diagram/state}/utils.js +0 -0
  623. /package/{dist/styles-font.css → styles-font.css} +0 -0
  624. /package/{dist/styles-xyflow.css → styles-xyflow.css} +0 -0
@@ -1,350 +0,0 @@
1
- import type * as t from '@likec4/core/types'
2
- import type {
3
- DiagramEdge,
4
- DiagramNode,
5
- DynamicViewDisplayVariant,
6
- LayoutedView,
7
- ViewChange,
8
- WhereOperator,
9
- } from '@likec4/core/types'
10
- import type { ReactFlowProps as XYFlowProps } from '@xyflow/react'
11
- import type { MouseEvent as ReactMouseEvent, ReactNode } from 'react'
12
- import type { SetRequired } from 'type-fest'
13
- import type { ControlsCustomLayout } from './context/ControlsCustomLayout'
14
- import type { CustomNodes } from './custom/customNodes'
15
-
16
- type Any = t.aux.Any
17
- type ViewId<A> = t.aux.ViewId<A>
18
- type Fqn<A> = t.aux.Fqn<A>
19
- type RelationId = t.aux.RelationId
20
- type DeploymentFqn<A> = t.aux.DeploymentFqn<A>
21
- type StrictViewId<A> = t.aux.StrictViewId<A>
22
-
23
- export type { CustomNodes, WhereOperator }
24
-
25
- export type DiagramNodeWithNavigate<A extends Any> = SetRequired<DiagramNode<A>, 'navigateTo'>
26
-
27
- export type ElementIconRendererProps = {
28
- node: {
29
- id: string
30
- title: string
31
- icon?: string | null | undefined
32
- }
33
- className?: string
34
- }
35
-
36
- export type ElementIconRenderer = (props: ElementIconRendererProps) => ReactNode
37
-
38
- export type OnNavigateTo<A extends Any = Any> = (
39
- to: ViewId<A>,
40
- // These fields present if navigateTo triggered by a node click
41
- event?: ReactMouseEvent,
42
- element?: DiagramNodeWithNavigate<A>,
43
- ) => void
44
-
45
- export type OnNodeClick<A extends Any = Any> = (
46
- node: DiagramNode<A>,
47
- event: ReactMouseEvent,
48
- ) => void
49
-
50
- export type OnEdgeClick<A extends Any = Any> = (
51
- edge: DiagramEdge<A>,
52
- event: ReactMouseEvent,
53
- ) => void
54
-
55
- /**
56
- * On pane/canvas click (not on any node or edge)
57
- */
58
- export type OnCanvasClick = (event: ReactMouseEvent) => void
59
-
60
- export type ChangeEvent = {
61
- change: ViewChange
62
- }
63
- export type OnChange = (event: ChangeEvent) => void
64
-
65
- export type LikeC4ColorScheme = 'light' | 'dark'
66
-
67
- export type OverrideReactFlowProps = Pick<
68
- XYFlowProps,
69
- | 'paneClickDistance'
70
- | 'nodeClickDistance'
71
- | 'selectionKeyCode'
72
- | 'panActivationKeyCode'
73
- | 'multiSelectionKeyCode'
74
- | 'zoomActivationKeyCode'
75
- | 'snapToGrid'
76
- | 'snapGrid'
77
- | 'onlyRenderVisibleElements'
78
- | 'nodesDraggable'
79
- | 'nodesFocusable'
80
- | 'elementsSelectable'
81
- | 'selectNodesOnDrag'
82
- | 'panOnDrag'
83
- | 'preventScrolling'
84
- | 'zoomOnScroll'
85
- | 'zoomOnPinch'
86
- | 'panOnScroll'
87
- | 'panOnScrollSpeed'
88
- | 'panOnScrollMode'
89
- | 'zoomOnDoubleClick'
90
- | 'nodeDragThreshold'
91
- >
92
-
93
- export type PaddingUnit = 'px' | '%'
94
- export type PaddingWithUnit = `${number}${PaddingUnit}` | number
95
-
96
- /**
97
- * Padding around the diagram
98
- *
99
- * @example
100
- * {
101
- * top: '8px',
102
- * right: '8px',
103
- * bottom: '8px',
104
- * left: '8px',
105
- * }
106
- */
107
- export type ViewPadding = PaddingWithUnit | {
108
- top?: PaddingWithUnit
109
- right?: PaddingWithUnit
110
- bottom?: PaddingWithUnit
111
- left?: PaddingWithUnit
112
- x?: PaddingWithUnit
113
- y?: PaddingWithUnit
114
- }
115
-
116
- export interface LikeC4DiagramProperties<A extends Any = Any> {
117
- view: LayoutedView<A>
118
-
119
- className?: string | undefined
120
-
121
- /**
122
- * Enable/disable panning
123
- * @default true
124
- */
125
- pannable?: boolean | undefined
126
- /**
127
- * Enable/disable zooming
128
- * @default true
129
- */
130
- zoomable?: boolean | undefined
131
- /**
132
- * Disable any editing (dragging still can be enabled with `nodesDraggable`)
133
- * @default true
134
- */
135
- readonly?: boolean | undefined
136
- /**
137
- * Show/hide panel with top left controls,
138
- * - `next` - Experimental navigation panel
139
- *
140
- * @default true if not readonly
141
- */
142
- controls?: boolean | 'next' | undefined
143
- /**
144
- * If set, initial viewport will show all nodes & edges
145
- * @default true
146
- */
147
- fitView?: boolean | undefined
148
-
149
- /**
150
- * Padding around the diagram
151
- * @default '8px'
152
- *
153
- * @see {@link ViewPadding}
154
- *
155
- * @example
156
- * ```tsx
157
- * <LikeC4Diagram
158
- * fitViewPadding={{
159
- * x: '16px',
160
- * y: '16px',
161
- * }}
162
- * />
163
- *
164
- * <LikeC4Diagram
165
- * fitViewPadding={{
166
- * top: '8px',
167
- * right: '8px',
168
- * bottom: '8px',
169
- * left: '8px',
170
- * }}
171
- * />
172
- * ```
173
- */
174
- fitViewPadding?: ViewPadding | undefined
175
-
176
- /**
177
- * @default false if readonly
178
- */
179
- nodesSelectable?: boolean | undefined
180
-
181
- /**
182
- * @default false if readonly
183
- */
184
- nodesDraggable?: boolean | undefined
185
-
186
- /**
187
- * Initial width of the diagram
188
- * (supposed to be used during SSR)
189
- */
190
- initialWidth?: number | undefined
191
- /**
192
- * Initial height of the diagram
193
- * (supposed to be used during SSR)
194
- */
195
- initialHeight?: number | undefined
196
-
197
- /**
198
- * Background pattern
199
- * @default 'dots'
200
- */
201
- background?: 'transparent' | 'solid' | 'dots' | 'lines' | 'cross' | undefined
202
-
203
- /**
204
- * Display webview with diagram title / description
205
- * @default true
206
- */
207
- showDiagramTitle?: boolean | undefined
208
-
209
- /**
210
- * Show back/forward history navigation buttons
211
- * @default true if `onNavigateTo` is set
212
- */
213
- showNavigationButtons?: undefined | boolean
214
-
215
- /**
216
- * Display notations in the bottom right corner
217
- * (Active if only notations are present)
218
- *
219
- * @default true
220
- */
221
- showNotations?: boolean | undefined
222
-
223
- /**
224
- * Display dropdown with details on relationship's label click
225
- * @default false
226
- */
227
- enableRelationshipDetails?: boolean | undefined
228
-
229
- /**
230
- * If double click on a node should enable focus mode, i.e. highlight incoming/outgoing edges
231
- * @default false
232
- */
233
- enableFocusMode?: boolean | undefined
234
-
235
- /**
236
- * Enable search popup for elements and views
237
- * @default true
238
- */
239
- enableSearch?: boolean | undefined
240
-
241
- /**
242
- * Enable modal with element details
243
- * @default false
244
- */
245
- enableElementDetails?: boolean | undefined
246
-
247
- /**
248
- * Experimental feature to browse relationships
249
- *
250
- * @default false
251
- */
252
- enableRelationshipBrowser?: boolean | undefined
253
-
254
- /**
255
- * If Walkthrough for dynamic views should be enabled
256
- * @default false
257
- */
258
- enableDynamicViewWalkthrough?: boolean | undefined
259
-
260
- /**
261
- * Default dynamic view display variant
262
- * @default 'diagram'
263
- */
264
- dynamicViewVariant?: DynamicViewDisplayVariant | undefined
265
-
266
- /**
267
- * Display element tags in the bottom left corner
268
- * @default false
269
- */
270
- enableElementTags?: boolean | undefined
271
-
272
- /**
273
- * Experimental feature to enable edge editing
274
- * @default false
275
- */
276
- experimentalEdgeEditing?: boolean | undefined
277
-
278
- /**
279
- * Improve performance by hiding certain elements and reducing visual effects (disable mix-blend, shadows, animations)
280
- * Enable it if you have a large or static view
281
- * - `auto` - will be `true` if view has more then 3000 * 2000 pixels
282
- *
283
- * @default 'auto'
284
- */
285
- reduceGraphics?: 'auto' | boolean | undefined
286
-
287
- /**
288
- * Render icon for an element, bundled or remote
289
- * By default, if icon is http:// or https://, it will be rendered as an image
290
- */
291
- renderIcon?: ElementIconRenderer | undefined
292
-
293
- /**
294
- * Customize layout of the controls on the top left
295
- *
296
- * @note
297
- * Ignored if `controls="next"`
298
- *
299
- * @see {@link controls}
300
- */
301
- renderControls?: ControlsCustomLayout | undefined
302
-
303
- /**
304
- * Override node renderers
305
- */
306
- renderNodes?: CustomNodes | undefined
307
-
308
- /**
309
- * Dynamic filter, applies both to nodes and edges
310
- */
311
- where?: WhereOperator<A> | undefined
312
-
313
- /**
314
- * Override ReactFlow props
315
- */
316
- reactFlowProps?: OverrideReactFlowProps | undefined
317
- }
318
-
319
- export type OpenSourceParams<A extends Any = Any> =
320
- | {
321
- element: Fqn<A>
322
- property?: string
323
- }
324
- | {
325
- relation: RelationId
326
- }
327
- | {
328
- deployment: DeploymentFqn<A>
329
- property?: string
330
- }
331
- | {
332
- view: StrictViewId<A>
333
- }
334
-
335
- export interface LikeC4DiagramEventHandlers<A extends Any = Any> {
336
- onChange?: OnChange | null | undefined
337
- onNavigateTo?: OnNavigateTo<A> | null | undefined
338
- onNodeClick?: OnNodeClick<A> | null | undefined
339
- onNodeContextMenu?: OnNodeClick<A> | null | undefined
340
- onCanvasContextMenu?: OnCanvasClick | null | undefined
341
- onEdgeClick?: OnEdgeClick<A> | null | undefined
342
- onEdgeContextMenu?: OnEdgeClick<A> | null | undefined
343
- onCanvasClick?: OnCanvasClick | null | undefined
344
- onCanvasDblClick?: OnCanvasClick | null | undefined
345
-
346
- // if set, will render a burger menu icon in the top left corner
347
- onBurgerMenuClick?: null | undefined | (() => void)
348
-
349
- onOpenSource?: null | undefined | ((params: OpenSourceParams<A>) => void)
350
- }
@@ -1,172 +0,0 @@
1
- import type { Any } from '@likec4/core/types'
2
- import { ReactFlowProvider as XYFlowProvider } from '@xyflow/react'
3
- import { type PropsWithChildren, useRef } from 'react'
4
- import { FitViewPaddings } from './base'
5
- import {
6
- DiagramEventHandlers,
7
- DiagramFeatures,
8
- EnsureMantine,
9
- FramerMotionConfig,
10
- IconRendererProvider,
11
- RootContainer,
12
- } from './context'
13
- import { ControlsCustomLayoutProvider } from './context/ControlsCustomLayout'
14
- import { ReduceGraphicsContext } from './context/ReduceGraphics'
15
- import { useId } from './hooks/useId'
16
- import { type LikeC4DiagramEventHandlers, type LikeC4DiagramProperties } from './LikeC4Diagram.props'
17
- import { LikeC4DiagramXYFlow } from './likec4diagram/DiagramXYFlow'
18
- import type { Types } from './likec4diagram/types'
19
- import { LikeC4Styles } from './LikeC4Styles'
20
- import { DiagramActorProvider } from './state/DiagramActorProvider'
21
-
22
- export type LikeC4DiagramProps<A extends Any = Any> = PropsWithChildren<
23
- & LikeC4DiagramProperties<A>
24
- & LikeC4DiagramEventHandlers<A>
25
- >
26
-
27
- export function LikeC4Diagram<A extends Any = Any>({
28
- onCanvasClick,
29
- onCanvasContextMenu,
30
- onCanvasDblClick,
31
- onEdgeClick,
32
- onChange,
33
- onEdgeContextMenu,
34
- onNavigateTo,
35
- onNodeClick,
36
- onNodeContextMenu,
37
- onOpenSource,
38
- onBurgerMenuClick,
39
- view,
40
- className,
41
- readonly = true,
42
- controls = !readonly,
43
- fitView = true,
44
- fitViewPadding = controls === 'next' ? FitViewPaddings.withControls : FitViewPaddings.default,
45
- pannable = true,
46
- zoomable = true,
47
- background = 'dots',
48
- enableElementTags = false,
49
- enableFocusMode = false,
50
- enableElementDetails = false,
51
- enableRelationshipDetails = enableElementDetails,
52
- enableRelationshipBrowser = enableRelationshipDetails,
53
- nodesDraggable = !readonly,
54
- nodesSelectable = !readonly || enableFocusMode || !!onNavigateTo || !!onNodeClick,
55
- showDiagramTitle = true,
56
- showNotations = true,
57
- showNavigationButtons = !!onNavigateTo,
58
- enableDynamicViewWalkthrough = false,
59
- dynamicViewVariant,
60
- enableSearch = true,
61
- initialWidth,
62
- initialHeight,
63
- experimentalEdgeEditing = !readonly,
64
- reduceGraphics = 'auto',
65
- renderIcon,
66
- renderControls,
67
- where,
68
- reactFlowProps,
69
- renderNodes,
70
- children,
71
- }: LikeC4DiagramProps<A>) {
72
- const id = useId()
73
- const initialRef = useRef<{
74
- defaultNodes: Types.Node[]
75
- defaultEdges: Types.Edge[]
76
- initialWidth: number
77
- initialHeight: number
78
- }>(null)
79
-
80
- if (initialRef.current == null) {
81
- initialRef.current = {
82
- defaultEdges: [],
83
- defaultNodes: [],
84
- initialWidth: initialWidth ?? view.bounds.width,
85
- initialHeight: initialHeight ?? view.bounds.height,
86
- }
87
- }
88
-
89
- const isReducedGraphicsMode = reduceGraphics === 'auto'
90
- // If view has more then 3000 * 2000 pixels - assume it is a big diagram
91
- // Enable reduced graphics mode if diagram is "big" and pannable
92
- ? pannable && ((view.bounds?.width ?? 1) * (view.bounds?.height ?? 1) > 6_000_000)
93
- : reduceGraphics
94
-
95
- return (
96
- <EnsureMantine>
97
- <FramerMotionConfig
98
- {...isReducedGraphicsMode && { reducedMotion: 'always' }}
99
- >
100
- <IconRendererProvider value={renderIcon ?? null}>
101
- <DiagramFeatures
102
- features={{
103
- enableFitView: fitView,
104
- enableReadOnly: readonly,
105
- enableFocusMode,
106
- enableNavigateTo: !!onNavigateTo,
107
- enableElementDetails,
108
- enableRelationshipDetails,
109
- enableRelationshipBrowser,
110
- enableSearch,
111
- enableNavigationButtons: showNavigationButtons && !!onNavigateTo,
112
- enableDynamicViewWalkthrough: view._type === 'dynamic' && enableDynamicViewWalkthrough,
113
- enableEdgeEditing: experimentalEdgeEditing,
114
- enableNotations: showNotations,
115
- enableVscode: !!onOpenSource,
116
- enableControls: controls,
117
- enableViewTitle: showDiagramTitle,
118
- enableElementTags,
119
- }}
120
- >
121
- <DiagramEventHandlers
122
- handlers={{
123
- onCanvasClick,
124
- onCanvasContextMenu,
125
- onCanvasDblClick,
126
- onEdgeClick,
127
- onChange,
128
- onEdgeContextMenu,
129
- onNavigateTo,
130
- onNodeClick,
131
- onNodeContextMenu,
132
- onOpenSource,
133
- onBurgerMenuClick,
134
- }}>
135
- <ReduceGraphicsContext reduceGraphics={isReducedGraphicsMode}>
136
- <LikeC4Styles id={id} />
137
- <RootContainer id={id} className={className} reduceGraphics={isReducedGraphicsMode}>
138
- <XYFlowProvider
139
- fitView={fitView}
140
- {...initialRef.current}
141
- >
142
- <DiagramActorProvider
143
- view={view}
144
- zoomable={zoomable}
145
- pannable={pannable}
146
- fitViewPadding={fitViewPadding}
147
- nodesSelectable={nodesSelectable}
148
- where={where ?? null}
149
- dynamicViewVariant={dynamicViewVariant}
150
- >
151
- <ControlsCustomLayoutProvider value={renderControls ?? null}>
152
- <LikeC4DiagramXYFlow
153
- nodesDraggable={nodesDraggable}
154
- nodesSelectable={nodesSelectable}
155
- background={background}
156
- reactFlowProps={reactFlowProps}
157
- renderNodes={renderNodes}
158
- >
159
- {children}
160
- </LikeC4DiagramXYFlow>
161
- </ControlsCustomLayoutProvider>
162
- </DiagramActorProvider>
163
- </XYFlowProvider>
164
- </RootContainer>
165
- </ReduceGraphicsContext>
166
- </DiagramEventHandlers>
167
- </DiagramFeatures>
168
- </IconRendererProvider>
169
- </FramerMotionConfig>
170
- </EnsureMantine>
171
- )
172
- }
@@ -1,22 +0,0 @@
1
- import { LikeC4Model } from '@likec4/core/model'
2
- import type { aux } from '@likec4/core/types'
3
- import { type PropsWithChildren } from 'react'
4
- import { LikeC4ModelContext } from './likec4model/LikeC4ModelContext'
5
-
6
- export interface LikeC4ModelProviderProps<A extends aux.Any = aux.Unknown> {
7
- likec4model: LikeC4Model<A>
8
- }
9
-
10
- /**
11
- * Ensures LikeC4Model context
12
- */
13
- export function LikeC4ModelProvider<A extends aux.Any = aux.Unknown>({
14
- children,
15
- likec4model,
16
- }: PropsWithChildren<LikeC4ModelProviderProps<A>>) {
17
- return (
18
- <LikeC4ModelContext.Provider value={likec4model}>
19
- {children}
20
- </LikeC4ModelContext.Provider>
21
- )
22
- }
@@ -1,41 +0,0 @@
1
- import type { LikeC4Project, ProjectId } from '@likec4/core/types'
2
- import { useCallbackRef } from '@mantine/hooks'
3
- import { useCustomCompareMemo } from '@react-hookz/web'
4
- import { shallowEqual } from 'fast-equals'
5
- import { type PropsWithChildren, useContext } from 'react'
6
- import { LikeC4ProjectsContext } from './likec4model/LikeC4ProjectsContext'
7
-
8
- export interface LikeC4ProjectsProviderProps {
9
- /**
10
- * Projects to be used in the navigation panel.
11
- * Current project is taken from the LikeC4Model
12
- */
13
- projects: ReadonlyArray<LikeC4Project>
14
-
15
- /**
16
- * Optional callback when another project is selected.
17
- */
18
- onProjectChange?: (id: ProjectId) => void
19
- }
20
-
21
- /**
22
- * Ensures LikeC4Projects context
23
- */
24
- export function LikeC4ProjectsProvider({
25
- children,
26
- projects,
27
- onProjectChange: _onProjectChange,
28
- }: PropsWithChildren<LikeC4ProjectsProviderProps>) {
29
- const outerScope = useContext(LikeC4ProjectsContext)
30
- if (outerScope) {
31
- console.warn('LikeC4ProjectsProvider should not be nested inside another one')
32
- }
33
-
34
- const onProjectChange = useCallbackRef(_onProjectChange)
35
- const value = useCustomCompareMemo(() => ({ projects, onProjectChange }), [projects, onProjectChange], shallowEqual)
36
- return (
37
- <LikeC4ProjectsContext.Provider value={value}>
38
- {children}
39
- </LikeC4ProjectsContext.Provider>
40
- )
41
- }