@likec4/diagram 1.55.0 → 1.56.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.
Files changed (345) hide show
  1. package/dist/LikeC4Diagram.js +148 -194
  2. package/dist/LikeC4ModelProvider.js +13 -9
  3. package/dist/LikeC4ProjectsOverview.js +24 -30
  4. package/dist/LikeC4ProjectsProvider.js +33 -26
  5. package/dist/LikeC4Styles.js +40 -57
  6. package/dist/LikeC4View.js +156 -196
  7. package/dist/ReactLikeC4.js +43 -65
  8. package/dist/StaticLikeC4Diagram.js +36 -41
  9. package/dist/_virtual/_rolldown/runtime.js +17 -0
  10. package/dist/adhoc-editor/EditorPanel.js +102 -101
  11. package/dist/adhoc-editor/ElementsTree.js +113 -139
  12. package/dist/adhoc-editor/LikeC4AdHocViewEditor.js +77 -70
  13. package/dist/adhoc-editor/components/Tree.d.ts +2 -2
  14. package/dist/adhoc-editor/components/Tree.js +205 -288
  15. package/dist/adhoc-editor/hooks.js +28 -23
  16. package/dist/adhoc-editor/index.js +2 -1
  17. package/dist/adhoc-editor/state/ActorProvider.js +33 -36
  18. package/dist/adhoc-editor/state/actor.editor.js +148 -186
  19. package/dist/adhoc-editor/state/actor.js +12 -14
  20. package/dist/adhoc-editor/state/actor.layouter.js +49 -65
  21. package/dist/adhoc-editor/state/actor.types.js +19 -23
  22. package/dist/adhoc-editor/state/panel.js +112 -127
  23. package/dist/adhoc-editor/state/utils.js +22 -29
  24. package/dist/adhoc-editor/useElementsTree.js +89 -121
  25. package/dist/base/Background.js +26 -29
  26. package/dist/base/Base.js +34 -41
  27. package/dist/base/BaseXYFlow.js +135 -165
  28. package/dist/base/const.js +18 -19
  29. package/dist/base/updateEdges.js +38 -57
  30. package/dist/base/updateNodes.js +46 -65
  31. package/dist/base-primitives/Markdown.d.ts +1 -1
  32. package/dist/base-primitives/Markdown.js +32 -47
  33. package/dist/base-primitives/NodeHandles.js +39 -49
  34. package/dist/base-primitives/compound/CompoundActionButton.js +49 -69
  35. package/dist/base-primitives/compound/CompoundDetailsButton.js +39 -64
  36. package/dist/base-primitives/compound/CompoundNodeContainer.js +46 -66
  37. package/dist/base-primitives/compound/CompoundTitle.js +15 -12
  38. package/dist/base-primitives/compound/actionbtns.css.js +9 -18
  39. package/dist/base-primitives/edge/EdgeActionButton.js +17 -19
  40. package/dist/base-primitives/edge/EdgeContainer.js +29 -48
  41. package/dist/base-primitives/edge/EdgeLabel.js +44 -65
  42. package/dist/base-primitives/edge/EdgeLabelContainer.d.ts +1 -1
  43. package/dist/base-primitives/edge/EdgeLabelContainer.js +35 -72
  44. package/dist/base-primitives/edge/EdgeMarkers.js +157 -215
  45. package/dist/base-primitives/edge/EdgePath.js +62 -115
  46. package/dist/base-primitives/element/ElementActionButtons.js +92 -81
  47. package/dist/base-primitives/element/ElementData.js +107 -126
  48. package/dist/base-primitives/element/ElementDetailsButton.js +78 -98
  49. package/dist/base-primitives/element/ElementNodeContainer.js +51 -82
  50. package/dist/base-primitives/element/ElementShape.js +331 -317
  51. package/dist/base-primitives/element/ElementTags.d.ts +1 -1
  52. package/dist/base-primitives/element/ElementTags.js +133 -193
  53. package/dist/base-primitives/memoEdge.js +11 -10
  54. package/dist/base-primitives/memoNode.js +16 -20
  55. package/dist/components/ErrorFallback.js +111 -75
  56. package/dist/components/GithubIcon.js +14 -16
  57. package/dist/components/Link.js +99 -113
  58. package/dist/components/Logo.js +38 -41
  59. package/dist/components/NavigationLink.js +15 -23
  60. package/dist/components/NavigationPanel.js +26 -47
  61. package/dist/components/PortalToContainer.js +16 -10
  62. package/dist/components/RootContainer.js +35 -31
  63. package/dist/components/SearchControl.css.js +65 -75
  64. package/dist/components/SearchControl.js +36 -14
  65. package/dist/components/ViewNotFound.js +22 -29
  66. package/dist/context/CurrentViewModelProvider.js +11 -9
  67. package/dist/context/DefaultMantineProvider.js +45 -72
  68. package/dist/context/DiagramEventHandlers.js +43 -48
  69. package/dist/context/DiagramFeatures.js +73 -69
  70. package/dist/context/EnsureMantine.js +13 -16
  71. package/dist/context/FramerMotionConfig.js +17 -11
  72. package/dist/context/IconRenderer.js +90 -106
  73. package/dist/context/LikeC4ModelContext.js +14 -10
  74. package/dist/context/LikeC4ProjectsContext.js +7 -6
  75. package/dist/context/RootContainerContext.d.ts +2 -5
  76. package/dist/context/RootContainerContext.js +24 -26
  77. package/dist/context/TagStylesContext.js +49 -57
  78. package/dist/custom/customNodes.js +224 -28
  79. package/dist/custom/index.js +41 -40
  80. package/dist/editor/LikeC4EditorCallbacks.js +4 -2
  81. package/dist/editor/LikeC4EditorProvider.js +32 -7
  82. package/dist/editor/applyChangesToManualLayout.js +144 -163
  83. package/dist/editor/editorActor.actions.js +122 -138
  84. package/dist/editor/editorActor.setup.js +30 -36
  85. package/dist/editor/editorActor.states.js +209 -263
  86. package/dist/editor/hotkeyActor.js +18 -17
  87. package/dist/editor/useEditorActorLogic.js +31 -43
  88. package/dist/hooks/safeContext.js +17 -17
  89. package/dist/hooks/useCallbackRef.js +18 -11
  90. package/dist/hooks/useCurrentView.js +16 -7
  91. package/dist/hooks/useCurrentViewModel.js +14 -9
  92. package/dist/hooks/useDiagram.js +55 -37
  93. package/dist/hooks/useDiagramCompareLayout.js +77 -81
  94. package/dist/hooks/useId.js +8 -6
  95. package/dist/hooks/useLikeC4ElementsTree.js +22 -21
  96. package/dist/hooks/useLikeC4Model.js +21 -20
  97. package/dist/hooks/useLikeC4Project.js +40 -29
  98. package/dist/hooks/useLikeC4Styles.js +6 -6
  99. package/dist/hooks/useMantinePortalProps.js +10 -6
  100. package/dist/hooks/useOverlaysActor.js +7 -6
  101. package/dist/hooks/useSearchActor.js +7 -6
  102. package/dist/hooks/useSetState.js +21 -19
  103. package/dist/hooks/useUpdateEffect.js +18 -29
  104. package/dist/hooks/useXYFlow.js +13 -15
  105. package/dist/index.js +24 -23
  106. package/dist/likec4diagram/DiagramUI.js +33 -37
  107. package/dist/likec4diagram/DiagramXYFlow.js +215 -224
  108. package/dist/likec4diagram/convert-to-xyflow.js +21 -22
  109. package/dist/likec4diagram/custom/edges/EdgeDrifts.js +22 -32
  110. package/dist/likec4diagram/custom/edges/RelationshipEdge.js +275 -372
  111. package/dist/likec4diagram/custom/edges/SequenceStepEdge.js +71 -75
  112. package/dist/likec4diagram/custom/edges/edges.css.js +41 -47
  113. package/dist/likec4diagram/custom/edges/useControlPoints.js +52 -56
  114. package/dist/likec4diagram/custom/edges/useRelationshipEdgePath.js +54 -76
  115. package/dist/likec4diagram/custom/index.js +17 -17
  116. package/dist/likec4diagram/custom/nodes/CompoundActions.js +19 -26
  117. package/dist/likec4diagram/custom/nodes/ElementActions.js +131 -82
  118. package/dist/likec4diagram/custom/nodes/NodeDrifts.js +20 -26
  119. package/dist/likec4diagram/custom/nodes/NodeNotes.js +215 -273
  120. package/dist/likec4diagram/custom/nodes/SequenceActorNode.js +131 -147
  121. package/dist/likec4diagram/custom/nodes/nodes.js +135 -146
  122. package/dist/likec4diagram/custom/nodes/toolbar/ColorButton.js +155 -159
  123. package/dist/likec4diagram/custom/nodes/toolbar/CompoundToolbar.js +58 -86
  124. package/dist/likec4diagram/custom/nodes/toolbar/ElementToolbar.js +108 -164
  125. package/dist/likec4diagram/custom/nodes/toolbar/Toolbar.js +56 -68
  126. package/dist/likec4diagram/custom/nodes/toolbar/_shared.d.ts +3 -6
  127. package/dist/likec4diagram/custom/nodes/toolbar/_shared.js +97 -102
  128. package/dist/likec4diagram/custom/nodes/toolbar/styles.css.js +13 -13
  129. package/dist/likec4diagram/custom/nodes/toolbar/types.js +6 -5
  130. package/dist/likec4diagram/custom/nodes/toolbar/useHandlers.js +36 -41
  131. package/dist/likec4diagram/relationship-popover/RelationshipPopover.js +510 -534
  132. package/dist/likec4diagram/relationship-popover/actor.js +113 -152
  133. package/dist/likec4diagram/relationship-popover/components.js +39 -37
  134. package/dist/likec4diagram/state/DiagramActorProvider.js +135 -136
  135. package/dist/likec4diagram/state/aligners.js +283 -360
  136. package/dist/likec4diagram/state/assign.js +84 -108
  137. package/dist/likec4diagram/state/createViewChange.js +72 -92
  138. package/dist/likec4diagram/state/diagram-api.js +224 -152
  139. package/dist/likec4diagram/state/hotkeyActor.js +54 -45
  140. package/dist/likec4diagram/state/machine.actions.js +709 -821
  141. package/dist/likec4diagram/state/machine.actions.layout.js +154 -183
  142. package/dist/likec4diagram/state/machine.js +113 -134
  143. package/dist/likec4diagram/state/machine.setup.js +104 -113
  144. package/dist/likec4diagram/state/machine.state.initializing.js +54 -54
  145. package/dist/likec4diagram/state/machine.state.navigating.js +192 -227
  146. package/dist/likec4diagram/state/machine.state.ready.focused.js +72 -88
  147. package/dist/likec4diagram/state/machine.state.ready.idle.js +79 -98
  148. package/dist/likec4diagram/state/machine.state.ready.js +126 -202
  149. package/dist/likec4diagram/state/machine.state.ready.printing.js +38 -39
  150. package/dist/likec4diagram/state/machine.state.ready.walkthrough.js +153 -193
  151. package/dist/likec4diagram/state/mediaPrintActor.js +20 -16
  152. package/dist/likec4diagram/state/persistence.js +20 -21
  153. package/dist/likec4diagram/state/utils.js +131 -162
  154. package/dist/likec4diagram/ui/LayoutDriftFrame.js +53 -64
  155. package/dist/likec4diagram/ui/notation/NotationPanel.css.js +58 -80
  156. package/dist/likec4diagram/ui/notation/NotationPanel.js +183 -214
  157. package/dist/likec4diagram/useLayoutConstraints.js +386 -433
  158. package/dist/likec4diagram/xyflow-diagram/diagram-view.js +216 -227
  159. package/dist/likec4diagram/xyflow-sequence/const.js +11 -7
  160. package/dist/likec4diagram/xyflow-sequence/sequence-layout.js +177 -180
  161. package/dist/navigationpanel/NavigationPanel.js +113 -123
  162. package/dist/navigationpanel/NavigationPanelControls.js +124 -150
  163. package/dist/navigationpanel/NavigationPanelDropdown.js +365 -477
  164. package/dist/navigationpanel/_common.d.ts +4 -10
  165. package/dist/navigationpanel/_common.js +57 -70
  166. package/dist/navigationpanel/actor.js +153 -236
  167. package/dist/navigationpanel/comparepanel/CompareActionsMenu.js +66 -83
  168. package/dist/navigationpanel/comparepanel/ComparePanel.js +135 -164
  169. package/dist/navigationpanel/comparepanel/ComparePanelControls.js +50 -58
  170. package/dist/navigationpanel/comparepanel/DriftsSummary.js +207 -254
  171. package/dist/navigationpanel/comparepanel/LayoutTypeSwitcher.js +33 -35
  172. package/dist/navigationpanel/controls/DetailsControls.js +219 -246
  173. package/dist/navigationpanel/controls/LayoutWarning.js +89 -100
  174. package/dist/navigationpanel/controls/LogoButton.js +46 -70
  175. package/dist/navigationpanel/controls/NavigationButtons.js +35 -52
  176. package/dist/navigationpanel/controls/OpenSource.js +27 -25
  177. package/dist/navigationpanel/controls/SearchControl.js +50 -61
  178. package/dist/navigationpanel/controls/ToggleReadonly.js +84 -81
  179. package/dist/navigationpanel/dropdown/ProjectsMenu.js +69 -87
  180. package/dist/navigationpanel/editorpanel/CenterCamera.js +17 -13
  181. package/dist/navigationpanel/editorpanel/ChangeAutoLayoutButton.js +182 -154
  182. package/dist/navigationpanel/editorpanel/EditorPanel.js +47 -45
  183. package/dist/navigationpanel/editorpanel/ManualLayoutToolsButton.js +122 -173
  184. package/dist/navigationpanel/editorpanel/ToggleReadonly.js +20 -13
  185. package/dist/navigationpanel/editorpanel/_common.d.ts +3 -6
  186. package/dist/navigationpanel/editorpanel/_common.js +13 -13
  187. package/dist/navigationpanel/editorpanel/styles.js +58 -75
  188. package/dist/navigationpanel/hooks.js +35 -29
  189. package/dist/navigationpanel/styles.css.js +20 -28
  190. package/dist/navigationpanel/walkthrough/ActiveWalkthroughControls.js +107 -134
  191. package/dist/navigationpanel/walkthrough/DynamicViewControls.d.ts +8 -8
  192. package/dist/navigationpanel/walkthrough/DynamicViewControls.js +105 -120
  193. package/dist/navigationpanel/walkthrough/WalkthroughPanel.js +75 -83
  194. package/dist/overlays/Overlays.js +94 -112
  195. package/dist/overlays/element-details/ElementDetails.js +22 -28
  196. package/dist/overlays/element-details/ElementDetailsCard.css.js +198 -219
  197. package/dist/overlays/element-details/ElementDetailsCard.js +517 -490
  198. package/dist/overlays/element-details/MetadataValue.js +210 -250
  199. package/dist/overlays/element-details/TabPanelDeployments.css.js +40 -60
  200. package/dist/overlays/element-details/TabPanelDeployments.js +185 -178
  201. package/dist/overlays/element-details/TabPanelRelationships.css.js +63 -71
  202. package/dist/overlays/element-details/TabPanelRelationships.js +155 -140
  203. package/dist/overlays/element-details/TabPanelStructure.css.js +29 -33
  204. package/dist/overlays/element-details/TabPanelStructure.js +93 -93
  205. package/dist/overlays/element-details/actor.js +45 -55
  206. package/dist/overlays/element-details/actorContext.js +12 -10
  207. package/dist/overlays/overlay/Overlay.js +104 -144
  208. package/dist/overlays/overlaysActor.js +213 -264
  209. package/dist/overlays/relationship-details/RelationshipDetails.js +270 -253
  210. package/dist/overlays/relationship-details/SelectEdge.css.js +62 -74
  211. package/dist/overlays/relationship-details/SelectEdge.js +146 -126
  212. package/dist/overlays/relationship-details/actor.js +242 -303
  213. package/dist/overlays/relationship-details/compute.js +109 -135
  214. package/dist/overlays/relationship-details/custom/ElementActions.js +43 -56
  215. package/dist/overlays/relationship-details/custom/edgeTypes.js +43 -49
  216. package/dist/overlays/relationship-details/custom/nodeTypes.js +93 -119
  217. package/dist/overlays/relationship-details/hooks.js +44 -38
  218. package/dist/overlays/relationship-details/layout-to-xyflow.js +119 -141
  219. package/dist/overlays/relationship-details/layout.js +275 -304
  220. package/dist/overlays/relationships-browser/RelationshipsBrowser.js +319 -321
  221. package/dist/overlays/relationships-browser/SelectElement.css.js +18 -21
  222. package/dist/overlays/relationships-browser/SelectElement.js +192 -218
  223. package/dist/overlays/relationships-browser/actor.js +364 -462
  224. package/dist/overlays/relationships-browser/const.js +7 -6
  225. package/dist/overlays/relationships-browser/custom/ElementActions.js +60 -63
  226. package/dist/overlays/relationships-browser/custom/EmptyNode.js +25 -29
  227. package/dist/overlays/relationships-browser/custom/edgeTypes.js +66 -99
  228. package/dist/overlays/relationships-browser/custom/nodeTypes.js +98 -123
  229. package/dist/overlays/relationships-browser/hooks.js +49 -51
  230. package/dist/overlays/relationships-browser/layout.js +413 -465
  231. package/dist/overlays/relationships-browser/useViewToNodesEdges.js +141 -157
  232. package/dist/projects-overview/ProjectsOverview.js +56 -55
  233. package/dist/projects-overview/ProjectsOverviewXY.js +105 -94
  234. package/dist/projects-overview/actor.js +252 -345
  235. package/dist/projects-overview/context.js +8 -7
  236. package/dist/projects-overview/custom/edgeTypes.js +22 -21
  237. package/dist/projects-overview/custom/nodeTypes.js +38 -42
  238. package/dist/projects-overview/hooks.js +9 -9
  239. package/dist/projects-overview/layouted-to-xyflow.js +46 -42
  240. package/dist/projects-overview/panel/ProjectsOverviewPanel.js +7 -9
  241. package/dist/projects-overview/persistence.js +22 -22
  242. package/dist/search/Search.js +199 -181
  243. package/dist/search/SearchContext.js +16 -15
  244. package/dist/search/XStateSearchAdapter.js +68 -62
  245. package/dist/search/components/ElementsColumn.css.js +50 -68
  246. package/dist/search/components/ElementsColumn.js +248 -290
  247. package/dist/search/components/PickView.js +116 -140
  248. package/dist/search/components/SearchByTags.js +76 -94
  249. package/dist/search/components/SearchInput.js +187 -209
  250. package/dist/search/components/ViewsColum.js +151 -141
  251. package/dist/search/components/ViewsColumn.css.js +12 -26
  252. package/dist/search/components/_shared.css.js +127 -153
  253. package/dist/search/components/styles.css.js +47 -53
  254. package/dist/search/components/utils.js +44 -47
  255. package/dist/search/hooks.js +10 -10
  256. package/dist/search/searchActor.js +93 -128
  257. package/dist/shadowroot/ShadowRoot.js +66 -78
  258. package/dist/shadowroot/styles.css.js +56 -66
  259. package/dist/styles-font2.js +4 -0
  260. package/dist/styles2.js +4 -0
  261. package/dist/utils/index.js +5 -0
  262. package/dist/utils/roundDpr.js +19 -15
  263. package/dist/utils/view-bounds.js +48 -55
  264. package/dist/utils/xyflow.js +143 -113
  265. package/package.json +15 -16
  266. package/panda.buildinfo.json +6 -3
  267. package/styles-font.css +1 -1
  268. package/styles-min.css +1 -1
  269. package/styles-xyflow.css +1 -1
  270. package/styles.css +1 -1
  271. package/dist/_virtual/_commonjsHelpers.js +0 -3
  272. package/dist/_virtual/assign-f10db67b.cjs.js +0 -3
  273. package/dist/_virtual/log-30abbb83.cjs.js +0 -3
  274. package/dist/_virtual/raise-f051f097.cjs.js +0 -3
  275. package/dist/_virtual/store-cfe7da62.cjs.js +0 -3
  276. package/dist/_virtual/xstate-actions.cjs.js +0 -5
  277. package/dist/_virtual/xstate-actions.cjs2.js +0 -3
  278. package/dist/_virtual/xstate-dev.cjs.js +0 -3
  279. package/dist/_virtual/xstate-guards.cjs.js +0 -5
  280. package/dist/_virtual/xstate-guards.cjs2.js +0 -3
  281. package/dist/_virtual/xstate-store-react.cjs.js +0 -5
  282. package/dist/_virtual/xstate-store-react.cjs2.js +0 -3
  283. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/createReactComponent.js +0 -41
  284. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/defaultAttributes.js +0 -30
  285. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconAlertTriangle.js +0 -14
  286. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowDownRight.js +0 -14
  287. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowLeft.js +0 -14
  288. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowRight.js +0 -14
  289. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconBolt.js +0 -14
  290. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconBrowser.js +0 -14
  291. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconCheck.js +0 -14
  292. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronDown.js +0 -14
  293. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronLeft.js +0 -14
  294. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronRight.js +0 -14
  295. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconCopy.js +0 -14
  296. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconCylinder.js +0 -14
  297. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconDeviceMobile.js +0 -14
  298. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconDirectionSignFilled.js +0 -14
  299. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconExternalLink.js +0 -14
  300. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconFileSymlink.js +0 -14
  301. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconFileText.js +0 -14
  302. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconFocusCentered.js +0 -14
  303. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconFolderFilled.js +0 -14
  304. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconHelpCircle.js +0 -14
  305. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconId.js +0 -14
  306. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconInfoCircle.js +0 -14
  307. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignBottom.js +0 -14
  308. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignCenter.js +0 -14
  309. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignLeft.js +0 -14
  310. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignMiddle.js +0 -14
  311. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignRight.js +0 -14
  312. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignTop.js +0 -14
  313. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutBoardSplit.js +0 -14
  314. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutCollage.js +0 -14
  315. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutDashboard.js +0 -14
  316. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLink.js +0 -14
  317. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLock.js +0 -14
  318. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconLockOpen2.js +0 -14
  319. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerPlayFilled.js +0 -14
  320. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerSkipBackFilled.js +0 -14
  321. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerSkipForwardFilled.js +0 -14
  322. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerStopFilled.js +0 -14
  323. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconRectangularPrism.js +0 -14
  324. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconReorder.js +0 -14
  325. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconRouteOff.js +0 -14
  326. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconSearch.js +0 -14
  327. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconSelector.js +0 -14
  328. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconStack2.js +0 -14
  329. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconStarFilled.js +0 -14
  330. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconTarget.js +0 -14
  331. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconTransform.js +0 -14
  332. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconTrash.js +0 -14
  333. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconUser.js +0 -14
  334. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconX.js +0 -14
  335. package/dist/node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconZoomScan.js +0 -14
  336. package/dist/node_modules/.pnpm/@xstate_store@3.17.1_react@19.2.4/node_modules/@xstate/store/dist/store-cfe7da62.cjs.js +0 -761
  337. package/dist/node_modules/.pnpm/@xstate_store@3.17.1_react@19.2.4/node_modules/@xstate/store/react/dist/xstate-store-react.cjs.js +0 -180
  338. package/dist/node_modules/.pnpm/xstate@5.30.0/node_modules/xstate/actions/dist/xstate-actions.cjs.js +0 -37
  339. package/dist/node_modules/.pnpm/xstate@5.30.0/node_modules/xstate/dev/dist/xstate-dev.cjs.js +0 -59
  340. package/dist/node_modules/.pnpm/xstate@5.30.0/node_modules/xstate/dist/assign-f10db67b.cjs.js +0 -140
  341. package/dist/node_modules/.pnpm/xstate@5.30.0/node_modules/xstate/dist/log-30abbb83.cjs.js +0 -401
  342. package/dist/node_modules/.pnpm/xstate@5.30.0/node_modules/xstate/dist/raise-f051f097.cjs.js +0 -2830
  343. package/dist/node_modules/.pnpm/xstate@5.30.0/node_modules/xstate/guards/dist/xstate-guards.cjs.js +0 -26
  344. package/dist/styles-font.css2.js +0 -3
  345. package/dist/styles.css2.js +0 -3
@@ -1,84 +1,88 @@
1
- import { jsx, Fragment } from 'react/jsx-runtime';
2
- import { useContext, createContext } from 'react';
3
- import { useSetState } from '../hooks/useSetState.js';
4
- import { useUpdateEffect } from '../hooks/useUpdateEffect.js';
5
-
6
- const DefaultFeatures = {
7
- enableEditor: false,
8
- enableReadOnly: true,
9
- enableCompareWithLatest: false,
10
- enableControls: false,
11
- enableDynamicViewWalkthrough: false,
12
- enableElementDetails: false,
13
- enableFocusMode: false,
14
- enableNavigateTo: false,
15
- enableNotations: false,
16
- enableRelationshipBrowser: false,
17
- enableRelationshipDetails: false,
18
- enableSearch: false,
19
- enableNavigationButtons: false,
20
- enableFitView: false,
21
- enableVscode: false,
22
- enableElementTags: false,
23
- enableNotes: false
1
+ import "../_virtual/_rolldown/runtime.js";
2
+ import { useUpdateEffect } from "../hooks/useUpdateEffect.js";
3
+ import { useSetState } from "../hooks/useSetState.js";
4
+ import { createContext, useContext } from "react";
5
+ import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
6
+ //#region src/context/DiagramFeatures.tsx
7
+ var DefaultFeatures = {
8
+ enableEditor: false,
9
+ enableReadOnly: true,
10
+ enableCompareWithLatest: false,
11
+ enableControls: false,
12
+ enableDynamicViewWalkthrough: false,
13
+ enableElementDetails: false,
14
+ enableFocusMode: false,
15
+ enableNavigateTo: false,
16
+ enableNotations: false,
17
+ enableRelationshipBrowser: false,
18
+ enableRelationshipDetails: false,
19
+ enableSearch: false,
20
+ enableNavigationButtons: false,
21
+ enableFitView: false,
22
+ enableVscode: false,
23
+ enableElementTags: false,
24
+ enableNotes: false
24
25
  };
25
- const DiagramFeaturesContext = createContext(DefaultFeatures);
26
- function DiagramFeatures({
27
- children,
28
- features,
29
- overrides
30
- }) {
31
- const outerScope = useContext(DiagramFeaturesContext);
32
- const [scope, setScope] = useSetState(() => ({
33
- ...outerScope,
34
- ...features,
35
- ...overrides
36
- }));
37
- useUpdateEffect(
38
- () => {
39
- setScope({
40
- ...outerScope,
41
- ...features,
42
- ...overrides
43
- });
44
- },
45
- [outerScope, features, overrides, setScope]
46
- );
47
- return /* @__PURE__ */ jsx(DiagramFeaturesContext.Provider, { value: scope, children });
26
+ var DiagramFeaturesContext = createContext(DefaultFeatures);
27
+ function DiagramFeatures({ children, features, overrides }) {
28
+ const outerScope = useContext(DiagramFeaturesContext);
29
+ const [scope, setScope] = useSetState(() => ({
30
+ ...outerScope,
31
+ ...features,
32
+ ...overrides
33
+ }));
34
+ useUpdateEffect(() => {
35
+ setScope({
36
+ ...outerScope,
37
+ ...features,
38
+ ...overrides
39
+ });
40
+ }, [
41
+ outerScope,
42
+ features,
43
+ overrides,
44
+ setScope
45
+ ]);
46
+ return /* @__PURE__ */ jsx(DiagramFeaturesContext.Provider, {
47
+ value: scope,
48
+ children
49
+ });
48
50
  }
49
- const overridesForOverlays = {
50
- enableControls: false,
51
- enableReadOnly: true,
52
- enableCompareWithLatest: false
51
+ var overridesForOverlays = {
52
+ enableControls: false,
53
+ enableReadOnly: true,
54
+ enableCompareWithLatest: false
53
55
  };
54
56
  DiagramFeatures.Overlays = ({ children }) => {
55
- return /* @__PURE__ */ jsx(DiagramFeatures, { overrides: overridesForOverlays, children });
57
+ return /* @__PURE__ */ jsx(DiagramFeatures, {
58
+ overrides: overridesForOverlays,
59
+ children
60
+ });
56
61
  };
57
62
  function useEnabledFeatures() {
58
- return useContext(DiagramFeaturesContext);
63
+ return useContext(DiagramFeaturesContext);
59
64
  }
60
- function IfEnabled({
61
- feature,
62
- children,
63
- and = true
64
- }) {
65
- const enabled = useEnabledFeatures()[`enable${feature}`] === true;
66
- return enabled && and ? /* @__PURE__ */ jsx(Fragment, { children }) : null;
65
+ /**
66
+ * Renders children only if the specified feature is enabled
67
+ * @param feature Feature name
68
+ * @param and Additional AND condition
69
+ * @example
70
+ * <IfEnabled feature="ReadOnly" and={isSomething}>
71
+ * ...
72
+ * </IfEnabled>
73
+ */
74
+ function IfEnabled({ feature, children, and = true }) {
75
+ return useEnabledFeatures()[`enable${feature}`] === true && and ? /* @__PURE__ */ jsx(Fragment$1, { children }) : null;
67
76
  }
68
77
  function IfNotEnabled({ feature, children }) {
69
- const notEnabled = useEnabledFeatures()[`enable${feature}`] !== true;
70
- return notEnabled ? /* @__PURE__ */ jsx(Fragment, { children }) : null;
78
+ return useEnabledFeatures()[`enable${feature}`] !== true ? /* @__PURE__ */ jsx(Fragment$1, { children }) : null;
71
79
  }
72
80
  function IfReadOnly({ children }) {
73
- const isReadOnly = useEnabledFeatures().enableReadOnly === true;
74
- return isReadOnly ? /* @__PURE__ */ jsx(Fragment, { children }) : null;
81
+ return useEnabledFeatures().enableReadOnly === true ? /* @__PURE__ */ jsx(Fragment$1, { children }) : null;
75
82
  }
76
83
  function IfNotReadOnly({ children }) {
77
- const isReadOnly = useEnabledFeatures().enableReadOnly === true;
78
- if (isReadOnly) {
79
- return null;
80
- }
81
- return /* @__PURE__ */ jsx(Fragment, { children });
84
+ if (useEnabledFeatures().enableReadOnly === true) return null;
85
+ return /* @__PURE__ */ jsx(Fragment$1, { children });
82
86
  }
83
-
87
+ //#endregion
84
88
  export { DefaultFeatures, DiagramFeatures, IfEnabled, IfNotEnabled, IfNotReadOnly, IfReadOnly, useEnabledFeatures };
@@ -1,19 +1,16 @@
1
- import { jsx, Fragment } from 'react/jsx-runtime';
2
- import { MantineContext } from '@mantine/core';
3
- import { useContext, useEffect } from 'react';
4
- import { DefaultMantineProvider } from './DefaultMantineProvider.js';
5
-
1
+ import "../_virtual/_rolldown/runtime.js";
2
+ import { DefaultMantineProvider } from "./DefaultMantineProvider.js";
3
+ import { useContext, useEffect } from "react";
4
+ import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
5
+ import { MantineContext } from "@mantine/core";
6
+ //#region src/context/EnsureMantine.tsx
6
7
  function EnsureMantine({ children }) {
7
- const mantineCtx = useContext(MantineContext);
8
- useEffect(() => {
9
- if (!mantineCtx) {
10
- console.warn("LikeC4Diagram must be a child of MantineProvider");
11
- }
12
- }, []);
13
- if (!mantineCtx) {
14
- return /* @__PURE__ */ jsx(DefaultMantineProvider, { children });
15
- }
16
- return /* @__PURE__ */ jsx(Fragment, { children });
8
+ const mantineCtx = useContext(MantineContext);
9
+ useEffect(() => {
10
+ if (!mantineCtx) console.warn("LikeC4Diagram must be a child of MantineProvider");
11
+ }, []);
12
+ if (!mantineCtx) return /* @__PURE__ */ jsx(DefaultMantineProvider, { children });
13
+ return /* @__PURE__ */ jsx(Fragment$1, { children });
17
14
  }
18
-
15
+ //#endregion
19
16
  export { EnsureMantine };
@@ -1,13 +1,19 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { useMantineStyleNonce } from '@mantine/core';
3
- import { LazyMotion, domMax, MotionConfig } from 'motion/react';
4
-
5
- const FramerMotionConfig = ({
6
- reducedMotion = "user",
7
- children
8
- }) => {
9
- const nonce = useMantineStyleNonce()?.();
10
- return /* @__PURE__ */ jsx(LazyMotion, { features: domMax, strict: true, children: /* @__PURE__ */ jsx(MotionConfig, { reducedMotion, ...nonce && { nonce }, children }) });
1
+ import "../_virtual/_rolldown/runtime.js";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { useMantineStyleNonce } from "@mantine/core";
4
+ import { LazyMotion, MotionConfig, domMax } from "motion/react";
5
+ //#region src/context/FramerMotionConfig.tsx
6
+ var FramerMotionConfig = ({ reducedMotion = "user", children }) => {
7
+ const nonce = useMantineStyleNonce()?.();
8
+ return /* @__PURE__ */ jsx(LazyMotion, {
9
+ features: domMax,
10
+ strict: true,
11
+ children: /* @__PURE__ */ jsx(MotionConfig, {
12
+ reducedMotion,
13
+ ...nonce && { nonce },
14
+ children
15
+ })
16
+ });
11
17
  };
12
-
18
+ //#endregion
13
19
  export { FramerMotionConfig };
@@ -1,113 +1,97 @@
1
- import { jsx, Fragment } from 'react/jsx-runtime';
2
- import { cx } from '@likec4/styles/css';
3
- import { createContext, useContext } from 'react';
4
- import IconRectangularPrism from '../node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconRectangularPrism.js';
5
- import IconFileText from '../node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconFileText.js';
6
- import IconCylinder from '../node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconCylinder.js';
7
- import IconReorder from '../node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconReorder.js';
8
- import IconUser from '../node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconUser.js';
9
- import IconDeviceMobile from '../node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconDeviceMobile.js';
10
- import IconBrowser from '../node_modules/.pnpm/@tabler_icons-react@3.40.0_react@19.2.4/node_modules/@tabler/icons-react/dist/esm/icons/IconBrowser.js';
11
-
12
- const IconRendererContext = createContext(null);
13
- function IconRendererProvider({
14
- value,
15
- children
16
- }) {
17
- const outerScope = useContext(IconRendererContext);
18
- if (outerScope) {
19
- return /* @__PURE__ */ jsx(Fragment, { children });
20
- }
21
- return /* @__PURE__ */ jsx(IconRendererContext.Provider, { value, children });
1
+ import "../_virtual/_rolldown/runtime.js";
2
+ import { cx } from "@likec4/styles/css";
3
+ import { IconBrowser, IconCylinder, IconDeviceMobile, IconFileText, IconRectangularPrism, IconReorder, IconUser } from "@tabler/icons-react";
4
+ import { createContext, useContext } from "react";
5
+ import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
6
+ //#region src/context/IconRenderer.tsx
7
+ var IconRendererContext = createContext(null);
8
+ /**
9
+ * Provider for custom element icon renderers
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * const MyIconRenderer: ElementIconRenderer = ({ node }) => {
14
+ * return <div>{node.title}</div>
15
+ * }
16
+ *
17
+ * <IconRendererProvider value={MyIconRenderer}>
18
+ * <LikeC4Diagram />
19
+ * </IconRendererProvider>
20
+ * ```
21
+ */
22
+ function IconRendererProvider({ value, children }) {
23
+ if (useContext(IconRendererContext)) return /* @__PURE__ */ jsx(Fragment$1, { children });
24
+ return /* @__PURE__ */ jsx(IconRendererContext.Provider, {
25
+ value,
26
+ children
27
+ });
22
28
  }
29
+ /**
30
+ * Attempts to extract and decode SVG content from a data URL.
31
+ * Returns the decoded SVG string if successful, or null if not an SVG data URL.
32
+ */
23
33
  function decodeSvgDataUrl(dataUrl) {
24
- if (!dataUrl.startsWith("data:image/svg+xml")) {
25
- return null;
26
- }
27
- try {
28
- if (dataUrl.includes(";base64,")) {
29
- const base64Content = dataUrl.split(";base64,")[1];
30
- if (base64Content) {
31
- return atob(base64Content);
32
- }
33
- } else {
34
- const encodedContent = dataUrl.split(",")[1];
35
- if (encodedContent) {
36
- return decodeURIComponent(encodedContent);
37
- }
38
- }
39
- } catch {
40
- }
41
- return null;
34
+ if (!dataUrl.startsWith("data:image/svg+xml")) return null;
35
+ try {
36
+ if (dataUrl.includes(";base64,")) {
37
+ const base64Content = dataUrl.split(";base64,")[1];
38
+ if (base64Content) return atob(base64Content);
39
+ } else {
40
+ const encodedContent = dataUrl.split(",")[1];
41
+ if (encodedContent) return decodeURIComponent(encodedContent);
42
+ }
43
+ } catch {}
44
+ return null;
42
45
  }
43
- function IconRenderer({
44
- element,
45
- className,
46
- style
47
- }) {
48
- const RenderIcon = useContext(IconRendererContext);
49
- if (!element || !element.icon || element.icon === "none") {
50
- return null;
51
- }
52
- let icon;
53
- if (element.icon.startsWith("http://") || element.icon.startsWith("https://") || element.icon.startsWith("data:image")) {
54
- const svgContent = element.icon.startsWith("data:image/svg+xml") ? decodeSvgDataUrl(element.icon) : null;
55
- if (svgContent) {
56
- icon = /* @__PURE__ */ jsx("span", { style: { display: "contents" }, dangerouslySetInnerHTML: { __html: svgContent } });
57
- } else {
58
- icon = /* @__PURE__ */ jsx("img", { src: element.icon, alt: element.title });
59
- }
60
- } else if (RenderIcon) {
61
- icon = /* @__PURE__ */ jsx(RenderIcon, { node: element });
62
- }
63
- if (!icon) {
64
- return null;
65
- }
66
- return /* @__PURE__ */ jsx(
67
- "div",
68
- {
69
- className: cx(
70
- className,
71
- "likec4-element-icon"
72
- ),
73
- "data-likec4-icon": element.icon,
74
- style,
75
- children: icon
76
- }
77
- );
46
+ function IconRenderer({ element, className, style }) {
47
+ const RenderIcon = useContext(IconRendererContext);
48
+ if (!element || !element.icon || element.icon === "none") return null;
49
+ let icon;
50
+ if (element.icon.startsWith("http://") || element.icon.startsWith("https://") || element.icon.startsWith("data:image")) {
51
+ const svgContent = element.icon.startsWith("data:image/svg+xml") ? decodeSvgDataUrl(element.icon) : null;
52
+ if (svgContent) icon = /* @__PURE__ */ jsx("span", {
53
+ style: { display: "contents" },
54
+ dangerouslySetInnerHTML: { __html: svgContent }
55
+ });
56
+ else icon = /* @__PURE__ */ jsx("img", {
57
+ src: element.icon,
58
+ alt: element.title
59
+ });
60
+ } else if (RenderIcon) icon = /* @__PURE__ */ jsx(RenderIcon, { node: element });
61
+ if (!icon) return null;
62
+ return /* @__PURE__ */ jsx("div", {
63
+ className: cx(className, "likec4-element-icon"),
64
+ "data-likec4-icon": element.icon,
65
+ style,
66
+ children: icon
67
+ });
78
68
  }
79
- const ShapeIcons = {
80
- browser: IconBrowser,
81
- cylinder: IconCylinder,
82
- mobile: IconDeviceMobile,
83
- person: IconUser,
84
- queue: IconReorder,
85
- rectangle: IconRectangularPrism,
86
- storage: IconCylinder,
87
- bucket: IconCylinder,
88
- document: IconFileText,
89
- component: IconRectangularPrism
69
+ var ShapeIcons = {
70
+ browser: IconBrowser,
71
+ cylinder: IconCylinder,
72
+ mobile: IconDeviceMobile,
73
+ person: IconUser,
74
+ queue: IconReorder,
75
+ rectangle: IconRectangularPrism,
76
+ storage: IconCylinder,
77
+ bucket: IconCylinder,
78
+ document: IconFileText,
79
+ component: IconRectangularPrism
90
80
  };
91
- function IconOrShapeRenderer({
92
- element,
93
- className,
94
- style
95
- }) {
96
- if (!element.icon || element.icon === "none") {
97
- const ShapeIcon = ShapeIcons[element.shape];
98
- return /* @__PURE__ */ jsx(
99
- "div",
100
- {
101
- className: cx(
102
- className,
103
- "likec4-shape-icon"
104
- ),
105
- style,
106
- children: /* @__PURE__ */ jsx(ShapeIcon, {})
107
- }
108
- );
109
- }
110
- return /* @__PURE__ */ jsx(IconRenderer, { element, className, style });
81
+ function IconOrShapeRenderer({ element, className, style }) {
82
+ if (!element.icon || element.icon === "none") {
83
+ const ShapeIcon = ShapeIcons[element.shape];
84
+ return /* @__PURE__ */ jsx("div", {
85
+ className: cx(className, "likec4-shape-icon"),
86
+ style,
87
+ children: /* @__PURE__ */ jsx(ShapeIcon, {})
88
+ });
89
+ }
90
+ return /* @__PURE__ */ jsx(IconRenderer, {
91
+ element,
92
+ className,
93
+ style
94
+ });
111
95
  }
112
-
96
+ //#endregion
113
97
  export { IconOrShapeRenderer, IconRenderer, IconRendererProvider };
@@ -1,15 +1,19 @@
1
- import 'react/jsx-runtime';
2
- import { useContext, createContext } from 'react';
3
-
4
- const LikeC4ModelContext = createContext(null);
5
- const LikeC4ModelContextProvider = LikeC4ModelContext.Provider;
6
- const CurrentViewModelCtx = createContext(null);
7
- const CurrentViewModelContext = CurrentViewModelCtx.Provider;
1
+ import "../_virtual/_rolldown/runtime.js";
2
+ import { createContext, useContext } from "react";
3
+ import "react/jsx-runtime";
4
+ //#region src/context/LikeC4ModelContext.tsx
5
+ var LikeC4ModelContext = createContext(null);
6
+ var LikeC4ModelContextProvider = LikeC4ModelContext.Provider;
7
+ var CurrentViewModelCtx = createContext(null);
8
+ var CurrentViewModelContext = CurrentViewModelCtx.Provider;
9
+ /**
10
+ * @returns The LikeC4Model from context, or null if no LikeC4ModelProvider is found.
11
+ */
8
12
  function useOptionalLikeC4Model() {
9
- return useContext(LikeC4ModelContext);
13
+ return useContext(LikeC4ModelContext);
10
14
  }
11
15
  function useOptionalCurrentViewModel() {
12
- return useContext(CurrentViewModelCtx);
16
+ return useContext(CurrentViewModelCtx);
13
17
  }
14
-
18
+ //#endregion
15
19
  export { CurrentViewModelContext, LikeC4ModelContextProvider, useOptionalCurrentViewModel, useOptionalLikeC4Model };
@@ -1,9 +1,10 @@
1
- import { useContext, createContext } from 'react';
2
-
3
- const LikeC4ProjectsContext = createContext(null);
4
- const LikeC4ProjectsContextProvider = LikeC4ProjectsContext.Provider;
1
+ import "../_virtual/_rolldown/runtime.js";
2
+ import { createContext, useContext } from "react";
3
+ //#region src/context/LikeC4ProjectsContext.ts
4
+ var LikeC4ProjectsContext = createContext(null);
5
+ var LikeC4ProjectsContextProvider = LikeC4ProjectsContext.Provider;
5
6
  function useOptionalProjectsContext() {
6
- return useContext(LikeC4ProjectsContext);
7
+ return useContext(LikeC4ProjectsContext);
7
8
  }
8
-
9
+ //#endregion
9
10
  export { LikeC4ProjectsContextProvider, useOptionalProjectsContext };
@@ -1,5 +1,5 @@
1
1
  import { WritableAtom } from 'nanostores';
2
- import { RefObject, Provider } from 'react';
2
+ import { RefObject, Provider, Context } from 'react';
3
3
  export declare const RootContainerContextProvider: Provider<{
4
4
  id: string;
5
5
  selector: string;
@@ -22,8 +22,5 @@ export declare const ReduceGraphicsModeProvider: Provider<boolean | null>;
22
22
  * Hook to determine if reduced graphics mode is enabled.
23
23
  */
24
24
  export declare function useIsReducedGraphics(): boolean;
25
- export declare const PanningAtomSafeCtx: ({ children, value }: {
26
- value: WritableAtom<boolean>;
27
- children: React.ReactNode;
28
- }) => import("react/jsx-runtime").JSX.Element, usePanningAtom: () => WritableAtom<boolean>;
25
+ export declare const PanningAtomSafeCtx: Context<WritableAtom<boolean> | null>, usePanningAtom: () => WritableAtom<boolean>;
29
26
  export declare function useIsPanning(): boolean;
@@ -1,36 +1,34 @@
1
- import { createSafeContext } from '@mantine/core';
2
- import '@nanostores/react';
3
- import { useContext, createContext } from 'react';
4
-
5
- const RootContainerContext = createContext(null);
6
- const RootContainerContextProvider = RootContainerContext.Provider;
1
+ import "../_virtual/_rolldown/runtime.js";
2
+ import { createContext, useContext } from "react";
3
+ import { createSafeContext } from "@mantine/core";
4
+ import "@nanostores/react";
5
+ //#region src/context/RootContainerContext.tsx
6
+ var RootContainerContext = createContext(null);
7
+ var RootContainerContextProvider = RootContainerContext.Provider;
7
8
  function useRootContainerContext() {
8
- return useContext(RootContainerContext);
9
+ return useContext(RootContainerContext);
9
10
  }
10
11
  function useRootContainer() {
11
- const ctx = useRootContainerContext();
12
- if (!ctx) {
13
- throw new Error("useRootContainer must be used within a RootContainer");
14
- }
15
- return ctx;
12
+ const ctx = useRootContainerContext();
13
+ if (!ctx) throw new Error("useRootContainer must be used within a RootContainer");
14
+ return ctx;
16
15
  }
17
16
  function useRootContainerRef() {
18
- return useRootContainer().ref;
17
+ return useRootContainer().ref;
19
18
  }
20
19
  function useRootContainerElement() {
21
- return useRootContainer().ref.current;
20
+ return useRootContainer().ref.current;
22
21
  }
23
- const ReduceGraphicsModeCtx = createContext(null);
24
- const ReduceGraphicsModeProvider = ReduceGraphicsModeCtx.Provider;
22
+ var ReduceGraphicsModeCtx = createContext(null);
23
+ var ReduceGraphicsModeProvider = ReduceGraphicsModeCtx.Provider;
24
+ /**
25
+ * Hook to determine if reduced graphics mode is enabled.
26
+ */
25
27
  function useIsReducedGraphics() {
26
- const isReduced = useContext(ReduceGraphicsModeCtx);
27
- if (isReduced === null) {
28
- console.warn("ReduceGraphicsMode is not provided");
29
- }
30
- return isReduced ?? false;
28
+ const isReduced = useContext(ReduceGraphicsModeCtx);
29
+ if (isReduced === null) console.warn("ReduceGraphicsMode is not provided");
30
+ return isReduced ?? false;
31
31
  }
32
- const [PanningAtomSafeCtx, usePanningAtom] = createSafeContext(
33
- "PanningAtomSafeCtx is not provided"
34
- );
35
-
36
- export { PanningAtomSafeCtx, ReduceGraphicsModeProvider, RootContainerContextProvider, useIsReducedGraphics, usePanningAtom, useRootContainer, useRootContainerContext, useRootContainerElement, useRootContainerRef };
32
+ var [PanningAtomSafeCtx, usePanningAtom] = createSafeContext("PanningAtomSafeCtx is not provided");
33
+ //#endregion
34
+ export { PanningAtomSafeCtx, ReduceGraphicsModeProvider, RootContainerContextProvider, useIsReducedGraphics, usePanningAtom, useRootContainerContext, useRootContainerElement, useRootContainerRef };