@likec4/diagram 1.24.0 → 1.25.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 (285) hide show
  1. package/dist/LikeC4Diagram.css.d.ts +3 -0
  2. package/dist/LikeC4Diagram.d.ts +3 -2
  3. package/dist/LikeC4Diagram.js +74 -60
  4. package/dist/LikeC4Diagram.props.d.ts +11 -0
  5. package/dist/StaticLikeC4Diagram.d.ts +1 -1
  6. package/dist/base/BaseXYFlow.d.ts +1 -1
  7. package/dist/base/BaseXYFlow.js +25 -5
  8. package/dist/base/const.d.ts +4 -4
  9. package/dist/base/const.js +4 -4
  10. package/dist/base/primitives/compound/CompoundActionButton.css.d.ts +0 -1
  11. package/dist/base/primitives/compound/CompoundActionButton.css.js +2 -3
  12. package/dist/base/primitives/compound/CompoundActionButton.js +9 -15
  13. package/dist/base/primitives/compound/CompoundDetailsButton.css.js +1 -2
  14. package/dist/base/primitives/compound/CompoundDetailsButton.js +8 -14
  15. package/dist/base/primitives/compound/CompoundNodeContainer.css.d.ts +0 -1
  16. package/dist/base/primitives/compound/CompoundNodeContainer.css.js +2 -4
  17. package/dist/base/primitives/compound/CompoundNodeContainer.js +37 -24
  18. package/dist/base/primitives/compound/CompoundTitle.css.js +2 -1
  19. package/dist/base/primitives/compound/CompoundTitle.js +1 -1
  20. package/dist/base/primitives/customNode.js +1 -1
  21. package/dist/base/primitives/edge/EdgeContainer.d.ts +2 -1
  22. package/dist/base/primitives/edge/EdgeContainer.js +21 -17
  23. package/dist/base/primitives/edge/EdgeLabel.css.d.ts +0 -1
  24. package/dist/base/primitives/edge/EdgeLabel.css.js +1 -5
  25. package/dist/base/primitives/edge/EdgeLabel.js +9 -12
  26. package/dist/base/primitives/edge/EdgePath.js +13 -5
  27. package/dist/base/primitives/edge/edge.css.d.ts +1 -1
  28. package/dist/base/primitives/edge/edge.css.js +2 -4
  29. package/dist/base/primitives/element/ElementActionButtons.css.js +1 -0
  30. package/dist/base/primitives/element/ElementActionButtons.js +4 -3
  31. package/dist/base/primitives/element/ElementDetailsButton.css.js +1 -2
  32. package/dist/base/primitives/element/ElementDetailsButton.js +9 -15
  33. package/dist/base/primitives/element/ElementNodeContainer.css.js +1 -0
  34. package/dist/base/primitives/element/ElementShape.css.js +3 -2
  35. package/dist/base/primitives/element/ElementShape.js +2 -3
  36. package/dist/base/primitives/element/ElementTitle.css.d.ts +2 -0
  37. package/dist/base/primitives/element/ElementTitle.css.js +2 -2
  38. package/dist/base/primitives/element/ElementTitle.js +7 -7
  39. package/dist/components/SearchControl.css.d.ts +1 -0
  40. package/dist/components/SearchControl.css.js +3 -1
  41. package/dist/components/SearchControl.js +3 -3
  42. package/dist/context/ControlsCustomLayout.d.ts +13 -0
  43. package/dist/context/ControlsCustomLayout.js +10 -0
  44. package/dist/context/FramerMotionConfig.d.ts +9 -1
  45. package/dist/context/FramerMotionConfig.js +5 -2
  46. package/dist/context/RootContainer.d.ts +2 -1
  47. package/dist/context/RootContainer.js +13 -2
  48. package/dist/diagram.css +1 -1
  49. package/dist/hooks/safeContext.js +1 -0
  50. package/dist/hooks/useDiagram.d.ts +954 -1865
  51. package/dist/hooks/useDiagram.js +7 -1
  52. package/dist/hooks/useIsReducedGraphics.d.ts +4 -0
  53. package/dist/hooks/useIsReducedGraphics.js +8 -0
  54. package/dist/hooks/useXYFlow.js +1 -1
  55. package/dist/index.d.ts +1 -0
  56. package/dist/likec4diagram/DiagramUI.d.ts +2 -1
  57. package/dist/likec4diagram/DiagramUI.js +5 -3
  58. package/dist/likec4diagram/XYFlow.d.ts +3 -7
  59. package/dist/likec4diagram/XYFlow.js +13 -6
  60. package/dist/likec4diagram/custom/edges/RelationshipEdge.js +30 -25
  61. package/dist/likec4diagram/custom/edges/edges.css.d.ts +1 -0
  62. package/dist/likec4diagram/custom/edges/edges.css.js +5 -3
  63. package/dist/likec4diagram/custom/index.d.ts +9 -1
  64. package/dist/likec4diagram/custom/index.js +10 -1
  65. package/dist/likec4diagram/custom/nodes/nodeTypes.d.ts +5 -7
  66. package/dist/likec4diagram/custom/nodes/nodeTypes.js +60 -58
  67. package/dist/likec4diagram/ui/controls/Controls.js +110 -71
  68. package/dist/likec4diagram/ui/controls/NavigationButtons.js +14 -22
  69. package/dist/likec4diagram/ui/controls/_shared.js +1 -1
  70. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.d.ts +0 -1
  71. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.js +3 -5
  72. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.js +5 -7
  73. package/dist/likec4diagram/ui/notation/NotationPanel.css.d.ts +1 -0
  74. package/dist/likec4diagram/ui/notation/NotationPanel.css.js +6 -4
  75. package/dist/likec4diagram/ui/notation/NotationPanel.js +2 -2
  76. package/dist/likec4diagram/ui/search/SearchInput.js +1 -1
  77. package/dist/likec4diagram/ui/search/ViewsColum.js +1 -2
  78. package/dist/likec4diagram/ui/search/ViewsColumn.css.d.ts +1 -1
  79. package/dist/likec4diagram/ui/search/ViewsColumn.css.js +2 -0
  80. package/dist/likec4model/useLikeC4Model.js +0 -1
  81. package/dist/node_modules/.pnpm/@mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/VisuallyHidden/VisuallyHidden.module.css.mjs.vanilla.css.js +1 -0
  82. package/dist/overlays/element-details/ElementDetailsCard.css.d.ts +2 -0
  83. package/dist/overlays/element-details/ElementDetailsCard.css.js +18 -14
  84. package/dist/overlays/element-details/ElementDetailsCard.js +21 -14
  85. package/dist/overlays/element-details/actor.d.ts +9084 -2569
  86. package/dist/overlays/overlay/Overlay.css.d.ts +2 -0
  87. package/dist/overlays/overlay/Overlay.css.js +93 -89
  88. package/dist/overlays/overlay/Overlay.js +16 -10
  89. package/dist/overlays/relationship-details/RelationshipDetails.js +31 -17
  90. package/dist/overlays/relationship-details/actor.d.ts +228 -3
  91. package/dist/overlays/relationship-details/actor.js +86 -14
  92. package/dist/overlays/relationship-details/hooks.d.ts +3 -0
  93. package/dist/overlays/relationship-details/hooks.js +6 -2
  94. package/dist/overlays/relationship-details/useLayoutedDetails.js +4 -3
  95. package/dist/overlays/relationships-browser/-useRelationshipsView.js +12 -3
  96. package/dist/overlays/relationships-browser/RelationshipsBrowser.js +12 -3
  97. package/dist/overlays/relationships-browser/actor.d.ts +271 -54
  98. package/dist/overlays/relationships-browser/actor.js +86 -23
  99. package/dist/state/DiagramActorProvider.js +12 -2
  100. package/dist/state/assign.js +15 -1
  101. package/dist/state/diagram-machine.d.ts +971 -1872
  102. package/dist/state/diagram-machine.js +127 -121
  103. package/dist/state/persistence.d.ts +5 -0
  104. package/dist/state/persistence.js +23 -0
  105. package/dist/theme-vars.css.d.ts +0 -9
  106. package/dist/theme-vars.d.ts +13 -1
  107. package/dist/theme-vars.js +3 -1
  108. package/dist/utils/css.d.ts +1 -0
  109. package/dist/utils/css.js +10 -0
  110. package/package.json +22 -14
  111. package/src/LikeC4Diagram.css.ts +145 -7
  112. package/src/LikeC4Diagram.props.ts +13 -0
  113. package/src/LikeC4Diagram.tsx +46 -27
  114. package/src/StaticLikeC4Diagram.tsx +1 -0
  115. package/src/base/BaseXYFlow.tsx +31 -11
  116. package/src/base/const.ts +4 -4
  117. package/src/base/primitives/compound/CompoundActionButton.css.ts +9 -12
  118. package/src/base/primitives/compound/CompoundActionButton.tsx +10 -14
  119. package/src/base/primitives/compound/CompoundDetailsButton.css.ts +4 -2
  120. package/src/base/primitives/compound/CompoundDetailsButton.tsx +8 -12
  121. package/src/base/primitives/compound/CompoundNodeContainer.css.ts +42 -59
  122. package/src/base/primitives/compound/CompoundNodeContainer.tsx +44 -24
  123. package/src/base/primitives/compound/CompoundTitle.css.ts +14 -13
  124. package/src/base/primitives/customNode.ts +4 -3
  125. package/src/base/primitives/edge/EdgeContainer.tsx +27 -13
  126. package/src/base/primitives/edge/EdgeLabel.css.ts +34 -24
  127. package/src/base/primitives/edge/EdgeLabel.tsx +10 -13
  128. package/src/base/primitives/edge/EdgePath.tsx +28 -16
  129. package/src/base/primitives/edge/edge.css.ts +54 -33
  130. package/src/base/primitives/element/ElementActionButtons.css.ts +5 -1
  131. package/src/base/primitives/element/ElementActionButtons.tsx +4 -2
  132. package/src/base/primitives/element/ElementDetailsButton.css.ts +6 -10
  133. package/src/base/primitives/element/ElementDetailsButton.tsx +9 -13
  134. package/src/base/primitives/element/ElementNodeContainer.css.ts +64 -18
  135. package/src/base/primitives/element/ElementNodeContainer.tsx +1 -0
  136. package/src/base/primitives/element/ElementShape.css.ts +24 -8
  137. package/src/base/primitives/element/ElementShape.tsx +2 -2
  138. package/src/base/primitives/element/ElementTitle.css.ts +4 -1
  139. package/src/base/primitives/element/ElementTitle.tsx +5 -4
  140. package/src/base/primitives/element/vars.css.ts +5 -0
  141. package/src/components/Link.css.ts +1 -1
  142. package/src/components/SearchControl.css.ts +25 -10
  143. package/src/components/SearchControl.tsx +2 -2
  144. package/src/context/ControlsCustomLayout.ts +16 -0
  145. package/src/context/FramerMotionConfig.tsx +13 -2
  146. package/src/context/RootContainer.tsx +13 -4
  147. package/src/hooks/safeContext.tsx +2 -1
  148. package/src/hooks/useDiagram.ts +1 -0
  149. package/src/hooks/useIsReducedGraphics.ts +5 -0
  150. package/src/hooks/useXYFlow.ts +1 -1
  151. package/src/index.ts +1 -0
  152. package/src/likec4diagram/DiagramUI.tsx +5 -3
  153. package/src/likec4diagram/XYFlow.tsx +9 -3
  154. package/src/likec4diagram/custom/edges/RelationshipEdge.tsx +32 -21
  155. package/src/likec4diagram/custom/edges/RelationshipsDropdownMenu.tsx +1 -1
  156. package/src/likec4diagram/custom/edges/edges.css.ts +15 -0
  157. package/src/likec4diagram/custom/index.tsx +14 -1
  158. package/src/likec4diagram/custom/nodes/nodeTypes.tsx +61 -59
  159. package/src/likec4diagram/ui/controls/Controls.tsx +102 -61
  160. package/src/likec4diagram/ui/controls/NavigationButtons.tsx +19 -20
  161. package/src/likec4diagram/ui/controls/styles.css.ts +17 -2
  162. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.ts +13 -11
  163. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.tsx +7 -5
  164. package/src/likec4diagram/ui/notation/NotationPanel.css.ts +14 -1
  165. package/src/likec4diagram/ui/notation/NotationPanel.tsx +1 -1
  166. package/src/likec4diagram/ui/search/ElementsColumn.css.ts +1 -2
  167. package/src/likec4diagram/ui/search/ElementsColumn.tsx +1 -1
  168. package/src/likec4diagram/ui/search/LikeC4Search.css.ts +1 -2
  169. package/src/likec4diagram/ui/search/SearchInput.tsx +1 -1
  170. package/src/likec4diagram/ui/search/ViewsColum.tsx +1 -2
  171. package/src/likec4diagram/ui/search/ViewsColumn.css.ts +1 -1
  172. package/src/likec4diagram/ui/search/_shared.css.ts +2 -3
  173. package/src/likec4model/useLikeC4Model.ts +1 -1
  174. package/src/overlays/element-details/ElementDetailsCard.css.ts +8 -5
  175. package/src/overlays/element-details/ElementDetailsCard.tsx +249 -238
  176. package/src/overlays/overlay/Overlay.css.ts +12 -16
  177. package/src/overlays/overlay/Overlay.tsx +16 -9
  178. package/src/overlays/relationship-details/RelationshipDetails.tsx +83 -70
  179. package/src/overlays/relationship-details/actor.ts +106 -13
  180. package/src/overlays/relationship-details/hooks.ts +6 -2
  181. package/src/overlays/relationship-details/useLayoutedDetails.ts +4 -4
  182. package/src/overlays/relationships-browser/-useRelationshipsView.ts +10 -0
  183. package/src/overlays/relationships-browser/RelationshipsBrowser.tsx +16 -8
  184. package/src/overlays/relationships-browser/actor.ts +92 -22
  185. package/src/state/DiagramActorProvider.tsx +13 -3
  186. package/src/state/assign.ts +15 -1
  187. package/src/state/diagram-machine.ts +124 -116
  188. package/src/state/persistence.ts +22 -0
  189. package/src/theme-vars.css.ts +0 -12
  190. package/src/theme-vars.ts +16 -4
  191. package/src/utils/css.ts +7 -0
  192. package/dist/base/primitives/element/styles.css.js +0 -6
  193. package/dist/globals.css.d.ts +0 -1
  194. package/dist/globals.css.js +0 -5
  195. package/dist/likec4diagram/ui/search/_shared.css.js +0 -5
  196. package/src/base/primitives/element/styles.css.ts +0 -52
  197. package/src/globals.css.ts +0 -128
  198. /package/dist/base/primitives/element/{styles.css.d.ts → vars.css.d.ts} +0 -0
  199. /package/dist/{node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Accordion/Accordion.module.css.mjs.vanilla.css.js → base/primitives/element/vars.css.ts.vanilla.css.js} +0 -0
  200. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ActionIcon/ActionIcon.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Accordion/Accordion.module.css.mjs.vanilla.css.js} +0 -0
  201. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Affix/Affix.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ActionIcon/ActionIcon.module.css.mjs.vanilla.css.js} +0 -0
  202. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Alert/Alert.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Affix/Affix.module.css.mjs.vanilla.css.js} +0 -0
  203. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Anchor/Anchor.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Alert/Alert.module.css.mjs.vanilla.css.js} +0 -0
  204. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AngleSlider/AngleSlider.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Anchor/Anchor.module.css.mjs.vanilla.css.js} +0 -0
  205. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AppShell/AppShell.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AngleSlider/AngleSlider.module.css.mjs.vanilla.css.js} +0 -0
  206. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AspectRatio/AspectRatio.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AppShell/AppShell.module.css.mjs.vanilla.css.js} +0 -0
  207. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Avatar/Avatar.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AspectRatio/AspectRatio.module.css.mjs.vanilla.css.js} +0 -0
  208. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/BackgroundImage/BackgroundImage.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Avatar/Avatar.module.css.mjs.vanilla.css.js} +0 -0
  209. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Badge/Badge.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/BackgroundImage/BackgroundImage.module.css.mjs.vanilla.css.js} +0 -0
  210. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Blockquote/Blockquote.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Badge/Badge.module.css.mjs.vanilla.css.js} +0 -0
  211. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Breadcrumbs/Breadcrumbs.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Blockquote/Blockquote.module.css.mjs.vanilla.css.js} +0 -0
  212. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Burger/Burger.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Breadcrumbs/Breadcrumbs.module.css.mjs.vanilla.css.js} +0 -0
  213. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Button/Button.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Burger/Burger.module.css.mjs.vanilla.css.js} +0 -0
  214. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Card/Card.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Button/Button.module.css.mjs.vanilla.css.js} +0 -0
  215. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Center/Center.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Card/Card.module.css.mjs.vanilla.css.js} +0 -0
  216. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/Checkbox.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Center/Center.module.css.mjs.vanilla.css.js} +0 -0
  217. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/CheckboxCard/CheckboxCard.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/Checkbox.module.css.mjs.vanilla.css.js} +0 -0
  218. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/CheckboxCard/CheckboxCard.module.css.mjs.vanilla.css.js} +0 -0
  219. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Chip/Chip.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.module.css.mjs.vanilla.css.js} +0 -0
  220. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/CloseButton/CloseButton.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Chip/Chip.module.css.mjs.vanilla.css.js} +0 -0
  221. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Code/Code.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/CloseButton/CloseButton.module.css.mjs.vanilla.css.js} +0 -0
  222. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorInput/ColorInput.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Code/Code.module.css.mjs.vanilla.css.js} +0 -0
  223. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorPicker/ColorPicker.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorInput/ColorInput.module.css.mjs.vanilla.css.js} +0 -0
  224. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorSwatch/ColorSwatch.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorPicker/ColorPicker.module.css.mjs.vanilla.css.js} +0 -0
  225. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Combobox/Combobox.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorSwatch/ColorSwatch.module.css.mjs.vanilla.css.js} +0 -0
  226. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Container/Container.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Combobox/Combobox.module.css.mjs.vanilla.css.js} +0 -0
  227. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Dialog/Dialog.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Container/Container.module.css.mjs.vanilla.css.js} +0 -0
  228. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Divider/Divider.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Dialog/Dialog.module.css.mjs.vanilla.css.js} +0 -0
  229. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Drawer/Drawer.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Divider/Divider.module.css.mjs.vanilla.css.js} +0 -0
  230. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Fieldset/Fieldset.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Drawer/Drawer.module.css.mjs.vanilla.css.js} +0 -0
  231. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Flex/Flex.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Fieldset/Fieldset.module.css.mjs.vanilla.css.js} +0 -0
  232. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/FloatingIndicator/FloatingIndicator.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Flex/Flex.module.css.mjs.vanilla.css.js} +0 -0
  233. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Grid/Grid.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/FloatingIndicator/FloatingIndicator.module.css.mjs.vanilla.css.js} +0 -0
  234. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Group/Group.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Grid/Grid.module.css.mjs.vanilla.css.js} +0 -0
  235. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Image/Image.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Group/Group.module.css.mjs.vanilla.css.js} +0 -0
  236. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Indicator/Indicator.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Image/Image.module.css.mjs.vanilla.css.js} +0 -0
  237. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/InlineInput/InlineInput.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Indicator/Indicator.module.css.mjs.vanilla.css.js} +0 -0
  238. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Input/Input.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/InlineInput/InlineInput.module.css.mjs.vanilla.css.js} +0 -0
  239. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Kbd/Kbd.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Input/Input.module.css.mjs.vanilla.css.js} +0 -0
  240. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/List/List.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Kbd/Kbd.module.css.mjs.vanilla.css.js} +0 -0
  241. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Loader/Loader.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/List/List.module.css.mjs.vanilla.css.js} +0 -0
  242. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/LoadingOverlay/LoadingOverlay.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Loader/Loader.module.css.mjs.vanilla.css.js} +0 -0
  243. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Mark/Mark.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/LoadingOverlay/LoadingOverlay.module.css.mjs.vanilla.css.js} +0 -0
  244. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Menu/Menu.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Mark/Mark.module.css.mjs.vanilla.css.js} +0 -0
  245. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Modal/Modal.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Menu/Menu.module.css.mjs.vanilla.css.js} +0 -0
  246. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ModalBase/ModalBase.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Modal/Modal.module.css.mjs.vanilla.css.js} +0 -0
  247. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/NavLink/NavLink.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ModalBase/ModalBase.module.css.mjs.vanilla.css.js} +0 -0
  248. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Notification/Notification.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/NavLink/NavLink.module.css.mjs.vanilla.css.js} +0 -0
  249. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/NumberInput/NumberInput.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Notification/Notification.module.css.mjs.vanilla.css.js} +0 -0
  250. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Overlay/Overlay.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/NumberInput/NumberInput.module.css.mjs.vanilla.css.js} +0 -0
  251. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Pagination/Pagination.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Overlay/Overlay.module.css.mjs.vanilla.css.js} +0 -0
  252. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Paper/Paper.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Pagination/Pagination.module.css.mjs.vanilla.css.js} +0 -0
  253. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PasswordInput/PasswordInput.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Paper/Paper.module.css.mjs.vanilla.css.js} +0 -0
  254. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Pill/Pill.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PasswordInput/PasswordInput.module.css.mjs.vanilla.css.js} +0 -0
  255. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PillsInput/PillsInput.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Pill/Pill.module.css.mjs.vanilla.css.js} +0 -0
  256. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PinInput/PinInput.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PillsInput/PillsInput.module.css.mjs.vanilla.css.js} +0 -0
  257. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Popover/Popover.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PinInput/PinInput.module.css.mjs.vanilla.css.js} +0 -0
  258. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Progress/Progress.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Popover/Popover.module.css.mjs.vanilla.css.js} +0 -0
  259. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/Radio.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Progress/Progress.module.css.mjs.vanilla.css.js} +0 -0
  260. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/RadioCard/RadioCard.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/Radio.module.css.mjs.vanilla.css.js} +0 -0
  261. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/RadioIndicator/RadioIndicator.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/RadioCard/RadioCard.module.css.mjs.vanilla.css.js} +0 -0
  262. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Rating/Rating.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/RadioIndicator/RadioIndicator.module.css.mjs.vanilla.css.js} +0 -0
  263. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/RingProgress/RingProgress.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Rating/Rating.module.css.mjs.vanilla.css.js} +0 -0
  264. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ScrollArea/ScrollArea.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/RingProgress/RingProgress.module.css.mjs.vanilla.css.js} +0 -0
  265. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SegmentedControl/SegmentedControl.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ScrollArea/ScrollArea.module.css.mjs.vanilla.css.js} +0 -0
  266. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SemiCircleProgress/SemiCircleProgress.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SegmentedControl/SegmentedControl.module.css.mjs.vanilla.css.js} +0 -0
  267. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SimpleGrid/SimpleGrid.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SemiCircleProgress/SemiCircleProgress.module.css.mjs.vanilla.css.js} +0 -0
  268. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Skeleton/Skeleton.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SimpleGrid/SimpleGrid.module.css.mjs.vanilla.css.js} +0 -0
  269. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Slider/Slider.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Skeleton/Skeleton.module.css.mjs.vanilla.css.js} +0 -0
  270. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Spoiler/Spoiler.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Slider/Slider.module.css.mjs.vanilla.css.js} +0 -0
  271. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Stack/Stack.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Spoiler/Spoiler.module.css.mjs.vanilla.css.js} +0 -0
  272. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Stepper/Stepper.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Stack/Stack.module.css.mjs.vanilla.css.js} +0 -0
  273. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Switch/Switch.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Stepper/Stepper.module.css.mjs.vanilla.css.js} +0 -0
  274. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Table/Table.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Switch/Switch.module.css.mjs.vanilla.css.js} +0 -0
  275. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/TableOfContents/TableOfContents.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Table/Table.module.css.mjs.vanilla.css.js} +0 -0
  276. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tabs/Tabs.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/TableOfContents/TableOfContents.module.css.mjs.vanilla.css.js} +0 -0
  277. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Text/Text.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tabs/Tabs.module.css.mjs.vanilla.css.js} +0 -0
  278. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ThemeIcon/ThemeIcon.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Text/Text.module.css.mjs.vanilla.css.js} +0 -0
  279. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Timeline/Timeline.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ThemeIcon/ThemeIcon.module.css.mjs.vanilla.css.js} +0 -0
  280. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Title/Title.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Timeline/Timeline.module.css.mjs.vanilla.css.js} +0 -0
  281. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tooltip/Tooltip.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Title/Title.module.css.mjs.vanilla.css.js} +0 -0
  282. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tree/Tree.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tooltip/Tooltip.module.css.mjs.vanilla.css.js} +0 -0
  283. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/TypographyStylesProvider/TypographyStylesProvider.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tree/Tree.module.css.mjs.vanilla.css.js} +0 -0
  284. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/UnstyledButton/UnstyledButton.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/TypographyStylesProvider/TypographyStylesProvider.module.css.mjs.vanilla.css.js} +0 -0
  285. /package/dist/node_modules/.pnpm/{@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/VisuallyHidden/VisuallyHidden.module.css.mjs.vanilla.css.js → @mantine_core@7.17.1_@mantine_hooks@7.17.1_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/UnstyledButton/UnstyledButton.module.css.mjs.vanilla.css.js} +0 -0
@@ -2,16 +2,17 @@ import { nonNullable, invariant, DiagramNode, nonexhaustive, getBBoxCenter, getP
2
2
  import { getViewportForBounds, applyEdgeChanges, applyNodeChanges } from "@xyflow/react";
3
3
  import { nodeToRect } from "@xyflow/system";
4
4
  import { hasAtLeast, prop, clamp, first } from "remeda";
5
- import { setup, enqueueActions, assertEvent, stopChild, assign, sendTo, cancel, raise, spawnChild, and, or } from "xstate";
5
+ import { setup, enqueueActions, assign, assertEvent, stopChild, sendTo, cancel, raise, spawnChild, and, or } from "xstate";
6
6
  import { MinZoom } from "../base/const.js";
7
7
  import { AllDisabled } from "../context/DiagramFeatures.js";
8
8
  import { createLayoutConstraints } from "../likec4diagram/useLayoutConstraints.js";
9
9
  import { overlaysActorLogic } from "../overlays/overlaysActor.js";
10
10
  import { getAligner, toNodeRect } from "./aligners.js";
11
- import { resetEdgeControlPoints, updateEdgeData, updateNodeData, updateNavigationHistory, mergeXYNodesEdges, navigateForward, navigateBack, unfocusNodesEdges, updateActiveWalkthrough, focusNodesEdges, lastClickedNode } from "./assign.js";
11
+ import { lastClickedNode, resetEdgeControlPoints, updateEdgeData, updateNodeData, updateNavigationHistory, mergeXYNodesEdges, navigateForward, navigateBack, unfocusNodesEdges, updateActiveWalkthrough, focusNodesEdges } from "./assign.js";
12
12
  import { hotkeyActorLogic } from "./hotkeyActor.js";
13
+ import { DiagramToggledFeaturesPersistence } from "./persistence.js";
13
14
  import { syncManualLayoutActorLogic } from "./syncManualLayoutActor.js";
14
- import { typedSystem, findDiagramNode, focusedBounds } from "./utils.js";
15
+ import { typedSystem, focusedBounds, findDiagramNode } from "./utils.js";
15
16
  const diagramMachine = setup({
16
17
  types: {
17
18
  context: {},
@@ -40,7 +41,7 @@ const diagramMachine = setup({
40
41
  }
41
42
  nonexhaustive(event.type);
42
43
  },
43
- "click: selected node ": ({ event }) => {
44
+ "click: selected node": ({ event }) => {
44
45
  assertEvent(event, "xyflow.nodeClick");
45
46
  return event.node.selected === true;
46
47
  },
@@ -52,6 +53,10 @@ const diagramMachine = setup({
52
53
  "click: focused node": ({ context, event }) => {
53
54
  assertEvent(event, "xyflow.nodeClick");
54
55
  return context.focusedNode === event.node.id;
56
+ },
57
+ "click: node has connections": ({ context, event }) => {
58
+ assertEvent(event, "xyflow.nodeClick");
59
+ return context.xyedges.some((e) => e.source === event.node.id || e.target === event.node.id);
55
60
  }
56
61
  },
57
62
  actions: {
@@ -61,21 +66,22 @@ const diagramMachine = setup({
61
66
  },
62
67
  "trigger:OpenSource": (_, _params) => {
63
68
  },
64
- "open source of focused node": enqueueActions(({ context, enqueue }) => {
65
- if (!context.focusedNode || !context.features.enableVscode) return;
66
- const diagramNode = findDiagramNode(context, context.focusedNode);
69
+ "assign lastClickedNode": assign(({ context, event }) => {
70
+ assertEvent(event, "xyflow.nodeClick");
71
+ return {
72
+ lastClickedNode: lastClickedNode({ context, event })
73
+ };
74
+ }),
75
+ "open source of focused or last clicked node": enqueueActions(({ context, enqueue }) => {
76
+ var _a;
77
+ const nodeId = context.focusedNode ?? ((_a = context.lastClickedNode) == null ? void 0 : _a.id);
78
+ if (!nodeId || !context.features.enableVscode) return;
79
+ const diagramNode = findDiagramNode(context, nodeId);
67
80
  if (!diagramNode) return;
68
- enqueue.cancel("openSource");
69
81
  if (DiagramNode.deploymentRef(diagramNode)) {
70
- enqueue.raise({ type: "open.source", deployment: DiagramNode.deploymentRef(diagramNode) }, {
71
- id: "openSource",
72
- delay: 100
73
- });
82
+ enqueue.raise({ type: "open.source", deployment: DiagramNode.deploymentRef(diagramNode) });
74
83
  } else if (DiagramNode.modelRef(diagramNode)) {
75
- enqueue.raise({ type: "open.source", element: DiagramNode.modelRef(diagramNode) }, {
76
- id: "openSource",
77
- delay: 100
78
- });
84
+ enqueue.raise({ type: "open.source", element: DiagramNode.modelRef(diagramNode) });
79
85
  }
80
86
  }),
81
87
  "xyflow:fitDiagram": ({ context }, params) => {
@@ -97,6 +103,22 @@ const diagramMachine = setup({
97
103
  viewport.y = Math.round(viewport.y);
98
104
  panZoom == null ? void 0 : panZoom.setViewport(viewport, duration > 0 ? { duration } : void 0);
99
105
  },
106
+ "xyflow:fitFocusedBounds": ({ context }) => {
107
+ const { bounds, duration = 450 } = focusedBounds({ context });
108
+ const { width, height, panZoom, transform } = context.xystore.getState();
109
+ const maxZoom = Math.max(1, transform[2]);
110
+ const viewport = getViewportForBounds(
111
+ bounds,
112
+ width,
113
+ height,
114
+ MinZoom,
115
+ maxZoom,
116
+ context.fitViewPadding
117
+ );
118
+ viewport.x = Math.round(viewport.x);
119
+ viewport.y = Math.round(viewport.y);
120
+ panZoom == null ? void 0 : panZoom.setViewport(viewport, duration > 0 ? { duration } : void 0);
121
+ },
100
122
  "xyflow:setViewportCenter": ({ context }, params) => {
101
123
  const { x, y } = params;
102
124
  invariant(context.xyflow, "xyflow is not initialized");
@@ -183,7 +205,7 @@ const diagramMachine = setup({
183
205
  context: ({ input, self, spawn }) => ({
184
206
  ...input,
185
207
  features: { ...AllDisabled },
186
- toggledFeatures: {
208
+ toggledFeatures: DiagramToggledFeaturesPersistence.read() ?? {
187
209
  enableReadOnly: true
188
210
  },
189
211
  initialized: false,
@@ -242,9 +264,10 @@ const diagramMachine = setup({
242
264
  // TODO: xstate fails to infer the type of the guard
243
265
  guard: and([
244
266
  "enabled: FocusMode",
267
+ "click: node has connections",
245
268
  or([
246
269
  "click: same node",
247
- "click: selected node "
270
+ "click: selected node"
248
271
  ])
249
272
  ]),
250
273
  actions: [
@@ -256,9 +279,10 @@ const diagramMachine = setup({
256
279
  target: "focused"
257
280
  },
258
281
  {
259
- actions: assign({
260
- lastClickedNode
261
- })
282
+ actions: [
283
+ "assign lastClickedNode",
284
+ "open source of focused or last clicked node"
285
+ ]
262
286
  }
263
287
  ],
264
288
  "xyflow.paneClick": {
@@ -301,12 +325,9 @@ const diagramMachine = setup({
301
325
  ...focusNodesEdges(s),
302
326
  viewportBeforeFocus: { ...s.context.viewport }
303
327
  })),
304
- "open source of focused node",
328
+ "open source of focused or last clicked node",
305
329
  spawnChild("hotkeyActorLogic", { id: "hotkey" }),
306
- {
307
- type: "xyflow:fitDiagram",
308
- params: focusedBounds
309
- }
330
+ "xyflow:fitFocusedBounds"
310
331
  ],
311
332
  exit: enqueueActions(({ enqueue, context }) => {
312
333
  enqueue.stopChild("hotkey");
@@ -330,15 +351,12 @@ const diagramMachine = setup({
330
351
  {
331
352
  actions: [
332
353
  assign({
333
- lastClickedNode,
334
- focusedNode: ({ event }) => event.node.id
354
+ lastClickedNode
335
355
  }),
336
- assign(focusNodesEdges),
337
- "open source of focused node",
338
- {
339
- type: "xyflow:fitDiagram",
340
- params: focusedBounds
341
- }
356
+ raise(({ event }) => ({
357
+ type: "focus.node",
358
+ nodeId: event.node.id
359
+ }))
342
360
  ]
343
361
  }
344
362
  ],
@@ -348,11 +366,8 @@ const diagramMachine = setup({
348
366
  focusedNode: ({ event }) => event.nodeId
349
367
  }),
350
368
  assign(focusNodesEdges),
351
- "open source of focused node",
352
- {
353
- type: "xyflow:fitDiagram",
354
- params: focusedBounds
355
- }
369
+ "open source of focused or last clicked node",
370
+ "xyflow:fitFocusedBounds"
356
371
  ]
357
372
  },
358
373
  "key.esc": {
@@ -380,69 +395,60 @@ const diagramMachine = setup({
380
395
  },
381
396
  // Navigating to another view (after `navigateTo` event)
382
397
  navigating: {
383
- initial: "pending",
384
- type: "compound",
385
- states: {
386
- pending: {
387
- entry: enqueueActions(({ enqueue }) => {
388
- enqueue("closeAllOverlays");
389
- enqueue("stopSyncLayout");
390
- enqueue({
391
- type: "trigger:NavigateTo",
392
- params: ({ context }) => ({
393
- viewId: nonNullable(context.lastOnNavigate, "Invalid state, lastOnNavigate is null").toView
394
- })
395
- });
396
- }),
397
- on: {
398
- "update.view": {
399
- actions: enqueueActions(({ enqueue, context, event }) => {
400
- const { fromNode, toNode } = findCorrespondingNode(context, event);
401
- if (fromNode && toNode) {
402
- enqueue({
403
- type: "xyflow:alignNodeFromToAfterNavigate",
404
- params: {
405
- fromNode: fromNode.id,
406
- toPosition: {
407
- x: toNode.position[0],
408
- y: toNode.position[1]
409
- }
410
- }
411
- });
412
- enqueue.raise({ type: "fitDiagram" }, { id: "fitDiagram", delay: 80 });
413
- } else {
414
- enqueue({
415
- type: "xyflow:setViewportCenter",
416
- params: getBBoxCenter(event.view.bounds)
417
- });
418
- enqueue.raise({ type: "fitDiagram", duration: 200 }, { id: "fitDiagram", delay: 25 });
419
- }
420
- enqueue.assign(updateNavigationHistory);
421
- enqueue.assign(mergeXYNodesEdges);
422
- }),
423
- target: "done"
424
- }
425
- }
426
- },
427
- done: {
428
- type: "final"
398
+ entry: [
399
+ "closeAllOverlays",
400
+ "stopSyncLayout",
401
+ {
402
+ type: "trigger:NavigateTo",
403
+ params: ({ context }) => ({
404
+ viewId: nonNullable(context.lastOnNavigate, "Invalid state, lastOnNavigate is null").toView
405
+ })
429
406
  }
430
- },
431
- onDone: {
432
- target: "idle"
433
- },
407
+ ],
434
408
  exit: assign({
435
409
  syncLayoutActorRef: ({ self, context, spawn }) => spawn("syncManualLayoutActorLogic", {
436
410
  id: "syncLayout",
437
411
  systemId: "syncLayout",
438
412
  input: { parent: self, viewId: context.view.id }
439
- }),
440
- lastOnNavigate: null
441
- })
413
+ })
414
+ // lastOnNavigate: null,
415
+ }),
416
+ on: {
417
+ "update.view": {
418
+ actions: enqueueActions(({ enqueue, context, event }) => {
419
+ const { fromNode, toNode } = findCorrespondingNode(context, event);
420
+ if (fromNode && toNode) {
421
+ enqueue({
422
+ type: "xyflow:alignNodeFromToAfterNavigate",
423
+ params: {
424
+ fromNode: fromNode.id,
425
+ toPosition: {
426
+ x: toNode.position[0],
427
+ y: toNode.position[1]
428
+ }
429
+ }
430
+ });
431
+ enqueue.raise({ type: "fitDiagram" }, { id: "fitDiagram", delay: 80 });
432
+ } else {
433
+ enqueue({
434
+ type: "xyflow:setViewportCenter",
435
+ params: getBBoxCenter(event.view.bounds)
436
+ });
437
+ enqueue.raise({ type: "fitDiagram", duration: 200 }, { id: "fitDiagram", delay: 25 });
438
+ }
439
+ enqueue.assign(updateNavigationHistory);
440
+ enqueue.assign(mergeXYNodesEdges);
441
+ enqueue.assign({
442
+ lastOnNavigate: null
443
+ });
444
+ }),
445
+ target: "#idle"
446
+ }
447
+ }
442
448
  },
443
449
  walkthrough: {
444
450
  entry: [
445
- // spawnChild('hotkeyActor', { id: 'hotkey' }),
451
+ spawnChild("hotkeyActorLogic", { id: "hotkey" }),
446
452
  assign({
447
453
  viewportBeforeFocus: ({ context }) => context.viewport,
448
454
  activeWalkthrough: ({ context, event }) => {
@@ -455,10 +461,7 @@ const diagramMachine = setup({
455
461
  }
456
462
  }),
457
463
  assign(updateActiveWalkthrough),
458
- {
459
- type: "xyflow:fitDiagram",
460
- params: focusedBounds
461
- }
464
+ "xyflow:fitFocusedBounds"
462
465
  ],
463
466
  on: {
464
467
  "key.esc": {
@@ -489,15 +492,15 @@ const diagramMachine = setup({
489
492
  }
490
493
  });
491
494
  enqueue.assign(updateActiveWalkthrough);
492
- enqueue({
493
- type: "xyflow:fitDiagram",
494
- params: focusedBounds
495
- });
495
+ enqueue("xyflow:fitFocusedBounds");
496
496
  })
497
497
  },
498
498
  "walkthrough.end": {
499
499
  target: "idle"
500
500
  },
501
+ "xyflow.paneDblClick": {
502
+ target: "idle"
503
+ },
501
504
  // We received another view, close overlay and process event again
502
505
  "update.view": {
503
506
  guard: "is another view",
@@ -505,18 +508,18 @@ const diagramMachine = setup({
505
508
  target: "idle"
506
509
  }
507
510
  },
508
- exit: enqueueActions(({ enqueue, context }) => {
511
+ exit: enqueueActions(({ enqueue, context, event }) => {
509
512
  enqueue.stopChild("hotkey");
510
513
  if (context.viewportBeforeFocus) {
511
514
  enqueue({ type: "xyflow:setViewport", params: { viewport: context.viewportBeforeFocus } });
512
515
  } else {
513
516
  enqueue({ type: "xyflow:fitDiagram" });
514
517
  }
515
- enqueue.assign((s) => ({
518
+ enqueue.assign({
516
519
  activeWalkthrough: null,
517
- ...unfocusNodesEdges(s),
520
+ ...unfocusNodesEdges({ context }),
518
521
  viewportBeforeFocus: null
519
- }));
522
+ });
520
523
  })
521
524
  }
522
525
  },
@@ -546,15 +549,13 @@ const diagramMachine = setup({
546
549
  },
547
550
  "navigate.to": {
548
551
  guard: "is another view",
549
- actions: [
550
- assign({
551
- lastOnNavigate: ({ context, event }) => ({
552
- fromView: context.view.id,
553
- toView: event.viewId,
554
- fromNode: event.fromNode ?? null
555
- })
552
+ actions: assign({
553
+ lastOnNavigate: ({ context, event }) => ({
554
+ fromView: context.view.id,
555
+ toView: event.viewId,
556
+ fromNode: event.fromNode ?? null
556
557
  })
557
- ],
558
+ }),
558
559
  target: ".navigating"
559
560
  },
560
561
  "navigate.back": {
@@ -631,7 +632,10 @@ const diagramMachine = setup({
631
632
  "layout.align": {
632
633
  guard: "not readonly",
633
634
  actions: [
634
- { type: "layout.align", params: ({ event }) => ({ mode: event.mode }) },
635
+ {
636
+ type: "layout.align",
637
+ params: ({ event }) => ({ mode: event.mode })
638
+ },
635
639
  raise({ type: "saveManualLayout.schedule" })
636
640
  ]
637
641
  },
@@ -650,7 +654,7 @@ const diagramMachine = setup({
650
654
  ]
651
655
  },
652
656
  "open.elementDetails": {
653
- actions: enqueueActions(({ context, enqueue, system, event }) => {
657
+ actions: sendTo(({ system }) => typedSystem(system).overlaysActorRef, ({ context, event }) => {
654
658
  var _a;
655
659
  let initiatedFrom = null;
656
660
  const fromNodeId = event.fromNode ?? ((_a = context.view.nodes.find((n) => DiagramNode.modelRef(n) === event.fqn)) == null ? void 0 : _a.id);
@@ -668,12 +672,12 @@ const diagramMachine = setup({
668
672
  clientRect
669
673
  };
670
674
  }
671
- enqueue.sendTo(typedSystem(system).overlaysActorRef, {
675
+ return {
672
676
  type: "open.elementDetails",
673
677
  subject: event.fqn,
674
678
  currentView: context.view,
675
679
  ...initiatedFrom && { initiatedFrom }
676
- });
680
+ };
677
681
  })
678
682
  },
679
683
  "open.relationshipsBrowser": {
@@ -702,10 +706,12 @@ const diagramMachine = setup({
702
706
  },
703
707
  "toggle.feature": {
704
708
  actions: assign({
705
- toggledFeatures: ({ context, event }) => ({
706
- ...context.toggledFeatures,
707
- [`enable${event.feature}`]: event.forceValue ?? !(context.toggledFeatures[`enable${event.feature}`] ?? context.features[`enable${event.feature}`])
708
- })
709
+ toggledFeatures: ({ context, event }) => {
710
+ return DiagramToggledFeaturesPersistence.write({
711
+ ...context.toggledFeatures,
712
+ [`enable${event.feature}`]: event.forceValue ?? !(context.toggledFeatures[`enable${event.feature}`] ?? context.features[`enable${event.feature}`])
713
+ });
714
+ }
709
715
  })
710
716
  }
711
717
  },
@@ -0,0 +1,5 @@
1
+ import { EnabledFeatures } from '../context/DiagramFeatures';
2
+ export declare const DiagramToggledFeaturesPersistence: {
3
+ read(): Partial<EnabledFeatures> | null;
4
+ write<F extends Partial<EnabledFeatures>>(toggledFeatures: F): F;
5
+ };
@@ -0,0 +1,23 @@
1
+ import { pickBy, isBoolean } from "remeda";
2
+ const key = `likec4:diagram:toggledFeatures`;
3
+ const DiagramToggledFeaturesPersistence = {
4
+ read() {
5
+ try {
6
+ let fromStorage = sessionStorage.getItem(key);
7
+ if (fromStorage) {
8
+ return JSON.parse(fromStorage);
9
+ }
10
+ return null;
11
+ } catch (e) {
12
+ console.error(`Error reading fromStorage ${key}:`, e);
13
+ return null;
14
+ }
15
+ },
16
+ write(toggledFeatures) {
17
+ sessionStorage.setItem(key, JSON.stringify(pickBy(toggledFeatures, isBoolean)));
18
+ return toggledFeatures;
19
+ }
20
+ };
21
+ export {
22
+ DiagramToggledFeaturesPersistence
23
+ };
@@ -61,12 +61,3 @@ export declare const xyvars: {
61
61
  borderRadius: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
62
62
  };
63
63
  };
64
- export declare const whereLight = ":where([data-mantine-color-scheme=\"light\"])";
65
- export declare const whereDark = ":where([data-mantine-color-scheme=\"dark\"])";
66
- export declare const easings: {
67
- out: string;
68
- inOut: string;
69
- };
70
- export declare const transitions: {
71
- fast: string;
72
- };
@@ -1,3 +1,15 @@
1
1
  import { MantineVars } from '@mantine/vanilla-extract';
2
- export { easings, transitions, vars, whereDark, whereLight, xyvars, } from './theme-vars.css';
2
+ export { vars, xyvars, } from './theme-vars.css';
3
+ export declare const rootClassName = "likec4-diagram-root";
4
+ export declare const whereNotReducedGraphics = ":where(.likec4-diagram-root:not([data-likec4-reduced-graphics]))";
5
+ export declare const whereReducedGraphics = ":where(.likec4-diagram-root:is([data-likec4-reduced-graphics=\"true\"]))";
6
+ export declare const whereLight = ":where([data-mantine-color-scheme=\"light\"])";
7
+ export declare const whereDark = ":where([data-mantine-color-scheme=\"dark\"])";
8
+ export declare const easings: {
9
+ out: string;
10
+ inOut: string;
11
+ };
12
+ export declare const transitions: {
13
+ fast: string;
14
+ };
3
15
  export declare const mantine: MantineVars;
@@ -1,5 +1,7 @@
1
1
  import { themeToVars } from "@mantine/vanilla-extract";
2
+ const rootClassName = "likec4-diagram-root";
2
3
  const mantine = themeToVars({});
3
4
  export {
4
- mantine
5
+ mantine,
6
+ rootClassName
5
7
  };
@@ -0,0 +1 @@
1
+ export declare function getVarName(variable: string): string;
@@ -0,0 +1,10 @@
1
+ function getVarName(variable) {
2
+ var matches = variable.match(/^var\((.*)\)$/);
3
+ if (matches) {
4
+ return matches[1];
5
+ }
6
+ return variable;
7
+ }
8
+ export {
9
+ getVarName
10
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@likec4/diagram",
3
- "version": "1.24.0",
3
+ "version": "1.25.0",
4
4
  "license": "MIT",
5
5
  "bugs": "https://github.com/likec4/likec4/issues",
6
6
  "homepage": "https://likec4.dev",
@@ -27,35 +27,41 @@
27
27
  "default": "./dist/index.js"
28
28
  }
29
29
  },
30
- "./style.css": "./dist/style.css"
30
+ "./package.json": "./package.json",
31
+ "./diagram.css": "./dist/diagram.css"
32
+ },
33
+ "wireit": {
34
+ "build:watch": {
35
+ "command": "vite build --watch --mode development --clearScreen=false -l warn",
36
+ "service": true
37
+ }
31
38
  },
32
39
  "dependencies": {
33
40
  "@dagrejs/dagre": "1.1.4",
34
- "@mantine/vanilla-extract": "7.17.0",
41
+ "@mantine/vanilla-extract": "7.17.1",
35
42
  "@nanostores/react": "0.8.4",
36
43
  "@react-hookz/web": "^25.0.1",
37
44
  "@tabler/icons-react": "3.29.0",
38
- "@vanilla-extract/dynamic": "^2.1.2",
39
45
  "@xstate/react": "^5.0.2",
40
- "@xyflow/react": "12.4.3",
41
- "@xyflow/system": "0.0.51",
46
+ "@xyflow/react": "12.4.4",
47
+ "@xyflow/system": "0.0.52",
42
48
  "bezier-js": "^6.1.4",
43
49
  "clsx": "^2.1.1",
44
50
  "d3-shape": "^3.2.0",
45
51
  "esm-env": "^1.2.2",
46
52
  "fast-equals": "^5.2.2",
47
- "framer-motion": "^12.4.2",
53
+ "framer-motion": "^12.4.7",
48
54
  "khroma": "^2.1.0",
49
55
  "nanostores": "0.11.3",
50
56
  "react-error-boundary": "^5.0.0",
51
- "remeda": "^2.20.1",
57
+ "remeda": "^2.20.2",
52
58
  "type-fest": "4.34.1",
53
59
  "xstate": "^5.19.2",
54
- "@likec4/core": "1.24.0"
60
+ "@likec4/core": "1.25.0"
55
61
  },
56
62
  "peerDependencies": {
57
- "@mantine/core": "7.17.0",
58
- "@mantine/hooks": "7.17.0",
63
+ "@mantine/core": "7.17.1",
64
+ "@mantine/hooks": "7.17.1",
59
65
  "react": "~19.0.0",
60
66
  "react-dom": "~19.0.0"
61
67
  },
@@ -72,14 +78,16 @@
72
78
  "typescript": "5.7.3",
73
79
  "vite": "6.1.0",
74
80
  "vite-plugin-dts": "^4.5.0",
75
- "vitest": "^3.0.4",
76
- "@likec4/tsconfig": "1.24.0"
81
+ "vitest": "^3.0.6",
82
+ "wireit": "^0.14.11",
83
+ "@likec4/tsconfig": "1.25.0"
77
84
  },
78
85
  "scripts": {
79
86
  "typecheck": "tsc --noEmit",
80
87
  "build": "vite build",
88
+ "build:watch": "wireit",
81
89
  "lint": "run -T eslint src/ --fix",
82
- "clean": "rm -r -f -g 'dist/*' .tsbuildinfo",
90
+ "clean": "rm -r -f -g \"dist/*\" .tsbuildinfo",
83
91
  "test": "vitest run --no-isolate"
84
92
  }
85
93
  }