@likec4/diagram 1.24.1 → 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 (250) hide show
  1. package/dist/LikeC4Diagram.css.d.ts +0 -2
  2. package/dist/LikeC4Diagram.css.js +0 -1
  3. package/dist/LikeC4Diagram.d.ts +3 -2
  4. package/dist/LikeC4Diagram.js +71 -61
  5. package/dist/LikeC4Diagram.props.d.ts +5 -0
  6. package/dist/StaticLikeC4Diagram.d.ts +1 -1
  7. package/dist/base/BaseXYFlow.js +14 -3
  8. package/dist/base/const.d.ts +3 -3
  9. package/dist/base/const.js +3 -3
  10. package/dist/base/primitives/compound/CompoundActionButton.css.d.ts +0 -1
  11. package/dist/base/primitives/compound/CompoundActionButton.css.js +1 -4
  12. package/dist/base/primitives/compound/CompoundActionButton.js +9 -15
  13. package/dist/base/primitives/compound/CompoundDetailsButton.css.js +0 -3
  14. package/dist/base/primitives/compound/CompoundDetailsButton.js +8 -14
  15. package/dist/base/primitives/compound/CompoundNodeContainer.css.js +0 -2
  16. package/dist/base/primitives/compound/CompoundNodeContainer.js +2 -2
  17. package/dist/base/primitives/compound/CompoundTitle.css.js +0 -1
  18. package/dist/base/primitives/compound/CompoundTitle.js +1 -1
  19. package/dist/base/primitives/customNode.js +1 -1
  20. package/dist/base/primitives/edge/EdgeContainer.d.ts +2 -1
  21. package/dist/base/primitives/edge/EdgeContainer.js +20 -17
  22. package/dist/base/primitives/edge/EdgeLabel.css.js +0 -1
  23. package/dist/base/primitives/edge/EdgeLabel.js +5 -8
  24. package/dist/base/primitives/edge/EdgePath.js +13 -5
  25. package/dist/base/primitives/edge/edge.css.js +1 -2
  26. package/dist/base/primitives/element/ElementActionButtons.css.js +0 -1
  27. package/dist/base/primitives/element/ElementDetailsButton.css.js +0 -3
  28. package/dist/base/primitives/element/ElementDetailsButton.js +9 -15
  29. package/dist/base/primitives/element/ElementNodeContainer.css.js +1 -2
  30. package/dist/base/primitives/element/ElementNodeContainer.js +1 -3
  31. package/dist/base/primitives/element/ElementShape.css.js +0 -1
  32. package/dist/base/primitives/element/ElementTitle.css.d.ts +2 -0
  33. package/dist/base/primitives/element/ElementTitle.css.js +2 -4
  34. package/dist/base/primitives/element/ElementTitle.js +7 -7
  35. package/dist/components/SearchControl.css.d.ts +1 -0
  36. package/dist/components/SearchControl.css.js +3 -3
  37. package/dist/components/SearchControl.js +3 -3
  38. package/dist/context/ControlsCustomLayout.d.ts +13 -0
  39. package/dist/context/ControlsCustomLayout.js +10 -0
  40. package/dist/context/RootContainer.d.ts +2 -1
  41. package/dist/context/RootContainer.js +2 -3
  42. package/dist/diagram.css +1 -1
  43. package/dist/hooks/useDiagram.d.ts +155 -756
  44. package/dist/hooks/useDiagram.js +6 -1
  45. package/dist/index.d.ts +1 -0
  46. package/dist/likec4diagram/XYFlow.d.ts +3 -7
  47. package/dist/likec4diagram/XYFlow.js +13 -6
  48. package/dist/likec4diagram/custom/edges/RelationshipEdge.js +30 -25
  49. package/dist/likec4diagram/custom/edges/edges.css.d.ts +1 -0
  50. package/dist/likec4diagram/custom/edges/edges.css.js +5 -3
  51. package/dist/likec4diagram/custom/index.d.ts +9 -1
  52. package/dist/likec4diagram/custom/index.js +10 -1
  53. package/dist/likec4diagram/custom/nodes/nodeTypes.d.ts +5 -7
  54. package/dist/likec4diagram/custom/nodes/nodeTypes.js +60 -58
  55. package/dist/likec4diagram/ui/controls/Controls.js +110 -71
  56. package/dist/likec4diagram/ui/controls/NavigationButtons.js +14 -22
  57. package/dist/likec4diagram/ui/controls/_shared.js +1 -1
  58. package/dist/likec4diagram/ui/controls/styles.css.js +0 -2
  59. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.d.ts +0 -1
  60. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.js +3 -7
  61. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.js +2 -3
  62. package/dist/likec4diagram/ui/notation/NotationPanel.css.d.ts +1 -0
  63. package/dist/likec4diagram/ui/notation/NotationPanel.css.js +6 -4
  64. package/dist/likec4diagram/ui/notation/NotationPanel.js +2 -2
  65. package/dist/likec4diagram/ui/search/LikeC4Search.css.js +0 -2
  66. package/dist/likec4diagram/ui/search/SearchInput.js +1 -1
  67. package/dist/likec4diagram/ui/search/ViewsColum.js +1 -2
  68. package/dist/likec4diagram/ui/search/ViewsColumn.css.d.ts +1 -1
  69. package/dist/likec4diagram/ui/search/ViewsColumn.css.js +2 -0
  70. package/dist/likec4model/useLikeC4Model.js +0 -1
  71. 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
  72. package/dist/overlays/element-details/ElementDetailsCard.css.d.ts +2 -0
  73. package/dist/overlays/element-details/ElementDetailsCard.css.js +18 -14
  74. package/dist/overlays/element-details/ElementDetailsCard.js +10 -7
  75. package/dist/overlays/overlay/Overlay.css.d.ts +2 -0
  76. package/dist/overlays/overlay/Overlay.css.js +93 -89
  77. package/dist/overlays/overlay/Overlay.js +10 -7
  78. package/dist/overlays/relationship-details/useLayoutedDetails.js +4 -3
  79. package/dist/state/assign.js +15 -1
  80. package/dist/state/diagram-machine.d.ts +159 -756
  81. package/dist/state/diagram-machine.js +46 -41
  82. package/dist/state/persistence.js +1 -1
  83. package/dist/theme-vars.css.d.ts +0 -9
  84. package/dist/theme-vars.d.ts +13 -1
  85. package/dist/theme-vars.js +3 -1
  86. package/dist/utils/css.d.ts +1 -0
  87. package/dist/utils/css.js +10 -0
  88. package/package.json +16 -8
  89. package/src/LikeC4Diagram.css.ts +134 -4
  90. package/src/LikeC4Diagram.props.ts +6 -0
  91. package/src/LikeC4Diagram.tsx +21 -11
  92. package/src/StaticLikeC4Diagram.tsx +1 -0
  93. package/src/base/BaseXYFlow.tsx +18 -3
  94. package/src/base/const.ts +3 -3
  95. package/src/base/primitives/compound/CompoundActionButton.css.ts +5 -14
  96. package/src/base/primitives/compound/CompoundActionButton.tsx +10 -14
  97. package/src/base/primitives/compound/CompoundDetailsButton.css.ts +0 -2
  98. package/src/base/primitives/compound/CompoundDetailsButton.tsx +8 -12
  99. package/src/base/primitives/compound/CompoundNodeContainer.css.ts +4 -3
  100. package/src/base/primitives/compound/CompoundNodeContainer.tsx +2 -2
  101. package/src/base/primitives/compound/CompoundTitle.css.ts +2 -2
  102. package/src/base/primitives/customNode.ts +1 -1
  103. package/src/base/primitives/edge/EdgeContainer.tsx +27 -14
  104. package/src/base/primitives/edge/EdgeLabel.css.ts +19 -15
  105. package/src/base/primitives/edge/EdgeLabel.tsx +6 -9
  106. package/src/base/primitives/edge/EdgePath.tsx +28 -16
  107. package/src/base/primitives/edge/edge.css.ts +18 -17
  108. package/src/base/primitives/element/ElementActionButtons.css.ts +1 -1
  109. package/src/base/primitives/element/ElementDetailsButton.css.ts +0 -2
  110. package/src/base/primitives/element/ElementDetailsButton.tsx +9 -13
  111. package/src/base/primitives/element/ElementNodeContainer.css.ts +53 -4
  112. package/src/base/primitives/element/ElementNodeContainer.tsx +1 -2
  113. package/src/base/primitives/element/ElementShape.css.ts +15 -3
  114. package/src/base/primitives/element/ElementTitle.css.ts +4 -1
  115. package/src/base/primitives/element/ElementTitle.tsx +5 -4
  116. package/src/base/primitives/element/vars.css.ts +5 -0
  117. package/src/components/Link.css.ts +1 -1
  118. package/src/components/SearchControl.css.ts +15 -7
  119. package/src/components/SearchControl.tsx +2 -2
  120. package/src/context/ControlsCustomLayout.ts +16 -0
  121. package/src/context/RootContainer.tsx +6 -4
  122. package/src/index.ts +1 -0
  123. package/src/likec4diagram/XYFlow.tsx +9 -3
  124. package/src/likec4diagram/custom/edges/RelationshipEdge.tsx +32 -21
  125. package/src/likec4diagram/custom/edges/RelationshipsDropdownMenu.tsx +1 -1
  126. package/src/likec4diagram/custom/edges/edges.css.ts +15 -0
  127. package/src/likec4diagram/custom/index.tsx +14 -1
  128. package/src/likec4diagram/custom/nodes/nodeTypes.tsx +61 -59
  129. package/src/likec4diagram/ui/controls/Controls.tsx +102 -61
  130. package/src/likec4diagram/ui/controls/NavigationButtons.tsx +19 -20
  131. package/src/likec4diagram/ui/controls/styles.css.ts +8 -3
  132. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.css.ts +4 -9
  133. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.tsx +1 -2
  134. package/src/likec4diagram/ui/notation/NotationPanel.css.ts +14 -1
  135. package/src/likec4diagram/ui/notation/NotationPanel.tsx +1 -1
  136. package/src/likec4diagram/ui/search/ElementsColumn.css.ts +1 -2
  137. package/src/likec4diagram/ui/search/ElementsColumn.tsx +1 -1
  138. package/src/likec4diagram/ui/search/LikeC4Search.css.ts +1 -3
  139. package/src/likec4diagram/ui/search/SearchInput.tsx +1 -1
  140. package/src/likec4diagram/ui/search/ViewsColum.tsx +1 -2
  141. package/src/likec4diagram/ui/search/ViewsColumn.css.ts +1 -1
  142. package/src/likec4diagram/ui/search/_shared.css.ts +2 -3
  143. package/src/likec4model/useLikeC4Model.ts +1 -1
  144. package/src/overlays/element-details/ElementDetailsCard.css.ts +8 -5
  145. package/src/overlays/element-details/ElementDetailsCard.tsx +11 -7
  146. package/src/overlays/overlay/Overlay.css.ts +11 -7
  147. package/src/overlays/overlay/Overlay.tsx +10 -6
  148. package/src/overlays/relationship-details/RelationshipDetails.tsx +1 -5
  149. package/src/overlays/relationship-details/useLayoutedDetails.ts +4 -4
  150. package/src/state/DiagramActorProvider.tsx +0 -1
  151. package/src/state/assign.ts +15 -1
  152. package/src/state/diagram-machine.ts +45 -38
  153. package/src/state/persistence.ts +1 -1
  154. package/src/theme-vars.css.ts +0 -12
  155. package/src/theme-vars.ts +16 -4
  156. package/src/utils/css.ts +7 -0
  157. package/dist/base/primitives/element/styles.css.js +0 -8
  158. package/dist/globals.css.d.ts +0 -3
  159. package/dist/globals.css.js +0 -5
  160. package/dist/likec4diagram/ui/search/_shared.css.js +0 -5
  161. package/src/base/primitives/element/styles.css.ts +0 -52
  162. package/src/globals.css.ts +0 -131
  163. /package/dist/base/primitives/element/{styles.css.d.ts → vars.css.d.ts} +0 -0
  164. /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
  165. /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
  166. /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
  167. /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
  168. /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
  169. /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
  170. /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
  171. /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
  172. /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
  173. /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
  174. /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
  175. /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
  176. /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
  177. /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
  178. /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
  179. /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
  180. /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
  181. /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
  182. /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
  183. /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
  184. /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
  185. /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
  186. /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
  187. /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
  188. /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
  189. /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
  190. /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
  191. /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
  192. /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
  193. /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
  194. /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
  195. /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
  196. /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
  197. /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
  198. /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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
  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/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
@@ -1,6 +1,8 @@
1
- import { createVar, fallbackVar, style } from '@vanilla-extract/css'
2
- import { reactFlowReducedGraphics } from '../../../LikeC4Diagram.css'
3
- import { easings, vars } from '../../../theme-vars'
1
+ import { defaultTheme } from '@likec4/core'
2
+ import { rem } from '@mantine/core'
3
+ import { createVar, fallbackVar, globalStyle, style } from '@vanilla-extract/css'
4
+ import { easings, vars, whereReducedGraphics } from '../../../theme-vars'
5
+ import { iconSize, paddingSize, textSize } from './vars.css'
4
6
 
5
7
  export const stokeFillMix = createVar('stroke-fill-mix')
6
8
 
@@ -39,8 +41,55 @@ export const container = style({
39
41
  transition: `opacity 100ms ${easings.inOut}, filter 100ms ${easings.inOut}`,
40
42
  filter: `grayscale(0.85) ${fallbackVar(vars.safariAnimationHook, 'blur(2px)')}`,
41
43
  },
42
- [`${reactFlowReducedGraphics} &:after`]: {
44
+ [`${whereReducedGraphics} &:after`]: {
43
45
  display: 'none',
44
46
  },
47
+ [`:where(.react-flow__node.selectable:not(.dragging)) &`]: {
48
+ cursor: 'pointer',
49
+ },
50
+ },
51
+ })
52
+
53
+ globalStyle(`${container}`, {
54
+ vars: {
55
+ [textSize]: rem(defaultTheme.textSizes.md),
56
+ [paddingSize]: rem(defaultTheme.spacing.md),
57
+ [iconSize]: '60px',
58
+ },
59
+ })
60
+
61
+ globalStyle(`${container}[data-likec4-shape-size="xs"]`, {
62
+ vars: {
63
+ [iconSize]: '24px',
64
+ },
65
+ })
66
+ globalStyle(`${container}[data-likec4-shape-size="sm"]`, {
67
+ vars: {
68
+ [iconSize]: '36px',
45
69
  },
46
70
  })
71
+ globalStyle(`${container}[data-likec4-shape-size="lg"]`, {
72
+ vars: {
73
+ [iconSize]: '82px',
74
+ },
75
+ })
76
+ globalStyle(`${container}[data-likec4-shape-size="xl"]`, {
77
+ vars: {
78
+ [iconSize]: '90px',
79
+ },
80
+ })
81
+
82
+ const sizes = ['xs', 'sm', 'lg', 'xl'] as const
83
+ sizes.forEach((size) => {
84
+ globalStyle(`${container}[data-likec4-text-size="${size}"]`, {
85
+ vars: {
86
+ [textSize]: rem(defaultTheme.textSizes[size]),
87
+ },
88
+ })
89
+
90
+ globalStyle(`${container}[data-likec4-padding="${size}"]`, {
91
+ vars: {
92
+ [paddingSize]: rem(defaultTheme.spacing[size]),
93
+ },
94
+ })
95
+ })
@@ -64,7 +64,6 @@ export const ElementNodeContainer = createPolymorphicComponent<'div', ElementNod
64
64
  children,
65
65
  ...rest
66
66
  }, ref) => {
67
- const nonReducedGraphics = !useIsReducedGraphics()
68
67
  let scale = 1
69
68
  switch (true) {
70
69
  case isHovered:
@@ -90,7 +89,7 @@ export const ElementNodeContainer = createPolymorphicComponent<'div', ElementNod
90
89
  'likec4-element-node',
91
90
  ])}
92
91
  initial={false}
93
- {...selectable && nonReducedGraphics && {
92
+ {...selectable && {
94
93
  animate: {
95
94
  scale,
96
95
  },
@@ -1,6 +1,6 @@
1
1
  import { createVar, fallbackVar, globalStyle, keyframes, style } from '@vanilla-extract/css'
2
- import { hiddenIfZoomTooSmall, reactFlowReducedGraphics, whereNotReducedGraphics } from '../../../LikeC4Diagram.css'
3
- import { easings, mantine, vars } from '../../../theme-vars'
2
+ import { hiddenIfZoomTooSmall, reactFlowReducedGraphics } from '../../../LikeC4Diagram.css'
3
+ import { easings, mantine, vars, whereNotReducedGraphics } from '../../../theme-vars'
4
4
  import { container, stokeFillMix } from './ElementNodeContainer.css'
5
5
 
6
6
  const indicatorKeyframes = keyframes({
@@ -81,7 +81,9 @@ const shapeBase = style({
81
81
  fill: vars.element.fill,
82
82
  stroke: vars.element.stroke,
83
83
  overflow: 'visible',
84
- zIndex: -1,
84
+ // zIndex is removed to improve rendering performance
85
+ // this forces to keep shape in the same layer as the node
86
+ // zIndex: -1,
85
87
  })
86
88
 
87
89
  export const shapeSvgMultiple = style([shapeBase, hiddenIfZoomTooSmall, {
@@ -128,6 +130,16 @@ export const shapeSvg = style([shapeBase, {
128
130
  `,
129
131
  },
130
132
  },
133
+ [`:where([data-likec4-level='true']) &`]: {
134
+ vars: {
135
+ [filterShadow]: `
136
+ drop-shadow(0 2px 1px rgba(0, 0, 0, 0.25))
137
+ drop-shadow(0 8px 3px rgba(0, 0, 0, 0.1))
138
+ drop-shadow(0 10px 10px rgba(0, 0, 0, 0.05))
139
+
140
+ `,
141
+ },
142
+ },
131
143
  [`:where(.react-flow__node.selected, .react-flow__node:focus-visible, ${container}:focus-visible) &`]: {
132
144
  vars: {
133
145
  [filterShadow]: `none`,
@@ -2,12 +2,14 @@ import { rem } from '@mantine/core'
2
2
  import { createVar, globalStyle, style } from '@vanilla-extract/css'
3
3
  import { calc } from '@vanilla-extract/css-utils'
4
4
  import { vars } from '../../../theme-vars'
5
- import { iconSize, paddingSize, textSize } from './styles.css'
5
+ import { iconSize, paddingSize, textSize } from './vars.css'
6
6
 
7
7
  export const hasIcon = style({})
8
8
 
9
9
  const textAlign = createVar('text-align')
10
10
 
11
+ export { iconSize, paddingSize, textSize }
12
+
11
13
  export const title = style({
12
14
  flex: '0 0 auto',
13
15
  fontFamily: vars.element.font,
@@ -66,6 +68,7 @@ export const technology = style({
66
68
  })
67
69
 
68
70
  export const elementDataContainer = style({
71
+ position: 'relative',
69
72
  flex: '1',
70
73
  height: 'fit-content',
71
74
  width: 'fit-content',
@@ -1,14 +1,13 @@
1
1
  import { type DiagramNode } from '@likec4/core'
2
2
  import { Box, Text } from '@mantine/core'
3
- import { assignInlineVars } from '@vanilla-extract/dynamic'
4
3
  import clsx from 'clsx'
5
4
  import { isNumber, isTruthy } from 'remeda'
6
5
  import { IconRenderer } from '../../../context/IconRenderer'
7
6
  import { hiddenIfZoomTooSmall } from '../../../LikeC4Diagram.css'
7
+ import { getVarName } from '../../../utils/css'
8
8
  import type { NodeProps } from '../../types'
9
9
  import { nodeSizes } from './ElementNodeContainer'
10
10
  import * as css from './ElementTitle.css'
11
- import { iconSize as varIconSize } from './styles.css'
12
11
 
13
12
  type Data =
14
13
  & Pick<
@@ -27,6 +26,8 @@ type ElementTitleProps = NodeProps<Data> & {
27
26
  iconSize?: number
28
27
  }
29
28
 
29
+ const varIconSize = getVarName(css.iconSize)
30
+
30
31
  export function ElementTitle({ id, data, iconSize }: ElementTitleProps) {
31
32
  const elementIcon = IconRenderer({
32
33
  element: {
@@ -47,9 +48,9 @@ export function ElementTitle({ id, data, iconSize }: ElementTitleProps) {
47
48
  'likec4-element',
48
49
  )}
49
50
  style={{
50
- ...isNumber(iconSize) && assignInlineVars({
51
+ ...isNumber(iconSize) && {
51
52
  [varIconSize]: `${iconSize}px`,
52
- }),
53
+ },
53
54
  }}
54
55
  >
55
56
  {elementIcon}
@@ -0,0 +1,5 @@
1
+ import { createGlobalVar, createVar } from '@vanilla-extract/css'
2
+
3
+ export const textSize = createVar('text-size')
4
+ export const paddingSize = createVar('padding-size')
5
+ export const iconSize = createGlobalVar('likec4-icon-size')
@@ -1,6 +1,6 @@
1
1
  import { style } from '@vanilla-extract/css'
2
2
  import { mantine } from '../theme-vars'
3
- import { easings, transitions, whereDark } from '../theme-vars.css'
3
+ import { easings, transitions, whereDark } from '../theme-vars'
4
4
 
5
5
  export const elementLink = style({
6
6
  display: 'flex',
@@ -1,19 +1,18 @@
1
1
  import { createVar, fallbackVar, globalStyle, style } from '@vanilla-extract/css'
2
- import { whereNotReducedGraphics } from '../LikeC4Diagram.css'
3
- import { mantine, transitions, vars, whereDark, whereLight } from '../theme-vars'
2
+ import { mantine, transitions, vars, whereDark, whereLight, whereNotReducedGraphics } from '../theme-vars'
4
3
 
5
4
  const transparent = createVar('transparent')
6
5
  const bgColor = createVar('bgcolor')
7
6
  export const root = style({
8
- height: '32px',
7
+ height: '30px',
9
8
  paddingLeft: mantine.spacing.sm,
10
9
  paddingRight: '4px',
11
- borderRadius: mantine.radius.sm,
12
- color: mantine.colors.placeholder,
10
+ borderRadius: '0px',
11
+ color: fallbackVar('var(--search-color)', mantine.colors.placeholder),
13
12
  border: '1px solid',
14
13
  cursor: 'pointer',
15
- transition: transitions.fast,
16
14
  backgroundColor: bgColor,
15
+ width: '100%',
17
16
  vars: {
18
17
  [transparent]: '20%',
19
18
  [bgColor]: mantine.colors.default,
@@ -32,6 +31,8 @@ export const root = style({
32
31
  },
33
32
  },
34
33
  [`${whereNotReducedGraphics} &`]: {
34
+ transition: transitions.fast,
35
+ borderRadius: fallbackVar('var(--search-border-radius)', mantine.radius.sm),
35
36
  backgroundColor: `color-mix(in srgb, ${bgColor}, transparent ${transparent})`,
36
37
  boxShadow: mantine.shadows.xs,
37
38
  WebkitBackdropFilter: fallbackVar(vars.safariAnimationHook, 'blur(8px)'),
@@ -51,13 +52,20 @@ globalStyle(`${root} .tabler-icon`, {
51
52
  color: mantine.colors.text,
52
53
  })
53
54
 
55
+ export const placeholder = style({
56
+ fontSize: mantine.fontSizes.sm,
57
+ fontWeight: 500,
58
+ paddingRight: 50,
59
+ flex: 1,
60
+ })
61
+
54
62
  export const shortcut = style({
55
63
  fontSize: '11px',
64
+ fontWeight: 600,
56
65
  lineHeight: 1,
57
66
  padding: '4px 7px',
58
67
  borderRadius: mantine.radius.sm,
59
68
  border: '1px solid',
60
- fontWeight: 'bold',
61
69
  selectors: {
62
70
  [`${whereLight} &`]: {
63
71
  color: mantine.colors.gray[7],
@@ -21,10 +21,10 @@ export function SearchControl({ className, ...others }: SearchControlProps) {
21
21
  <UnstyledButton {...others} className={cx(classes.root, className)}>
22
22
  <Group gap="xs">
23
23
  <IconSearch style={{ width: rem(15), height: rem(15) }} stroke={2} />
24
- <Text fz="sm" fw="500" pr={50}>
24
+ <Text component="div" className={classes.placeholder}>
25
25
  Search
26
26
  </Text>
27
- <Text fw={700} className={classes.shortcut}>
27
+ <Text component="div" className={classes.shortcut}>
28
28
  {isMac ? '⌘ + K' : 'Ctrl + K'}
29
29
  </Text>
30
30
  </Group>
@@ -0,0 +1,16 @@
1
+ import { createOptionalContext } from '@mantine/core'
2
+ import { type ReactNode } from 'react'
3
+
4
+ export type ControlsCustomLayoutProps = {
5
+ burgerMenu: ReactNode
6
+ navigationButtons: ReactNode
7
+ search: ReactNode
8
+ actionsGroup: ReactNode
9
+ syncInProgressBadge: ReactNode
10
+ }
11
+ export type ControlsCustomLayout = (props: ControlsCustomLayoutProps) => ReactNode
12
+
13
+ export const [
14
+ ControlsCustomLayoutProvider,
15
+ useControlsCustomLayout,
16
+ ] = createOptionalContext<ControlsCustomLayout | null>(null)
@@ -1,17 +1,19 @@
1
1
  import { Box } from '@mantine/core'
2
2
  import clsx from 'clsx'
3
3
  import { type PropsWithChildren, createContext, createRef, useContext, useRef } from 'react'
4
- import { rootClassName } from '../globals.css'
5
- import { useIsReducedGraphics } from '../hooks/useIsReducedGraphics'
4
+ import { rootClassName } from '../theme-vars'
6
5
 
7
6
  const RootContainerContext = createContext(createRef<HTMLDivElement>())
8
7
 
9
8
  export function RootContainer({
10
9
  className,
10
+ reduceGraphics = false,
11
11
  children,
12
- }: PropsWithChildren<{ className?: string | undefined }>) {
12
+ }: PropsWithChildren<{
13
+ className?: string | undefined
14
+ reduceGraphics?: boolean
15
+ }>) {
13
16
  const ref = useRef<HTMLDivElement>(null)
14
- const reduceGraphics = useIsReducedGraphics()
15
17
  return (
16
18
  <Box
17
19
  className={clsx(rootClassName, className)}
package/src/index.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import '@xyflow/react/dist/style.css'
2
2
 
3
+ export type { ControlsCustomLayout, ControlsCustomLayoutProps } from './context/ControlsCustomLayout'
3
4
  export { FramerMotionConfig } from './context/FramerMotionConfig'
4
5
  export { LikeC4Diagram } from './LikeC4Diagram'
5
6
  export type { LikeC4DiagramProps } from './LikeC4Diagram'
@@ -2,7 +2,7 @@ import { type EdgeId, type NodeId, nonNullable } from '@likec4/core'
2
2
  import { useCallbackRef } from '@mantine/hooks'
3
3
  import clsx from 'clsx'
4
4
  import { shallowEqual } from 'fast-equals'
5
- import { memo } from 'react'
5
+ import { type PropsWithChildren, memo } from 'react'
6
6
  import type { EnforceOptional } from 'type-fest/source/enforce-optional'
7
7
  import { BaseXYFlow } from '../base/BaseXYFlow'
8
8
  import { useDiagramEventHandlers } from '../context'
@@ -50,9 +50,14 @@ type Picked = EnforceOptional<
50
50
  | 'nodesSelectable'
51
51
  >
52
52
  >
53
- export type LikeC4DiagramXYFlowProps = Required<Picked>
53
+ export type LikeC4DiagramXYFlowProps = PropsWithChildren<Required<Picked>>
54
54
 
55
- export const LikeC4DiagramXYFlow = memo<LikeC4DiagramXYFlowProps>(({ background, nodesDraggable, nodesSelectable }) => {
55
+ export const LikeC4DiagramXYFlow = memo<LikeC4DiagramXYFlowProps>(({
56
+ background,
57
+ nodesDraggable,
58
+ nodesSelectable,
59
+ children,
60
+ }) => {
56
61
  const diagram = useDiagram()
57
62
  const {
58
63
  initialized,
@@ -150,6 +155,7 @@ export const LikeC4DiagramXYFlow = memo<LikeC4DiagramXYFlowProps>(({ background,
150
155
  {...(notReadOnly && nodesDraggable && layoutConstraints)}
151
156
  {...props}>
152
157
  <DiagramUI />
158
+ {children}
153
159
  </BaseXYFlow>
154
160
  )
155
161
  }, shallowEqual)
@@ -5,6 +5,7 @@ import {
5
5
  } from '@likec4/core'
6
6
  import { useDebouncedEffect } from '@react-hookz/web'
7
7
  import type { XYPosition } from '@xyflow/react'
8
+ import { EdgeLabelRenderer } from '@xyflow/react'
8
9
  import clsx from 'clsx'
9
10
  import { curveCatmullRomOpen, line as d3line } from 'd3-shape'
10
11
  import { type PointerEvent as ReactPointerEvent, useEffect, useRef, useState } from 'react'
@@ -13,6 +14,7 @@ import { customEdge, EdgeActionButton, EdgeContainer, EdgeLabel, EdgePath } from
13
14
  import { useEnabledFeature } from '../../../context'
14
15
  import { useXYFlow, useXYInternalNode, useXYStoreApi } from '../../../hooks'
15
16
  import { useDiagram } from '../../../hooks/useDiagram'
17
+ import { useIsReducedGraphics } from '../../../hooks/useIsReducedGraphics'
16
18
  import { vector, VectorImpl } from '../../../utils/vector'
17
19
  import { bezierControlPoints, bezierPath, isSamePoint } from '../../../utils/xyflow'
18
20
  import type { Types } from '../../types'
@@ -27,6 +29,7 @@ const curve = d3line<XYPosition>()
27
29
  .y(d => d.y)
28
30
 
29
31
  export const RelationshipEdge = customEdge<Types.RelationshipEdgeData>((props) => {
32
+ const isReducedGraphicsMode = useIsReducedGraphics()
30
33
  const [isControlPointDragging, setIsControlPointDragging] = useState(false)
31
34
  const xyflowStore = useXYStoreApi()
32
35
  const xyflow = useXYFlow()
@@ -44,10 +47,11 @@ export const RelationshipEdge = customEdge<Types.RelationshipEdgeData>((props) =
44
47
  target,
45
48
  targetX,
46
49
  targetY,
50
+ selected = false,
47
51
  data: {
48
52
  id: edgeId,
49
- navigateTo,
50
53
  points,
54
+ hovered = false,
51
55
  active = false,
52
56
  dimmed = false,
53
57
  labelBBox,
@@ -56,6 +60,8 @@ export const RelationshipEdge = customEdge<Types.RelationshipEdgeData>((props) =
56
60
  },
57
61
  } = props
58
62
 
63
+ const navigateTo = enableNavigateTo ? data.navigateTo : undefined
64
+
59
65
  const sourceNode = nonNullable(useXYInternalNode(source)!, `source node ${source} not found`)
60
66
  const targetNode = nonNullable(useXYInternalNode(target)!, `target node ${target} not found`)
61
67
 
@@ -297,7 +303,7 @@ export const RelationshipEdge = customEdge<Types.RelationshipEdgeData>((props) =
297
303
  <div {...props} />
298
304
  </NotePopover>
299
305
  )
300
- } else if (enableRelationshipDetails) {
306
+ } else if (enableRelationshipDetails && (!isReducedGraphicsMode || hovered || selected || active)) {
301
307
  renderLabel = (props: any) => (
302
308
  <RelationshipsDropdownMenu
303
309
  disabled={!!dimmed}
@@ -313,24 +319,6 @@ export const RelationshipEdge = customEdge<Types.RelationshipEdgeData>((props) =
313
319
  return (
314
320
  <EdgeContainer {...props} className={clsx(isControlPointDragging && edgesCss.controlDragging)}>
315
321
  <EdgePath {...props} svgPath={edgePath} ref={svgPathRef} onEdgePointerDown={onEdgePointerDown} />
316
- {enableEdgeEditing && (
317
- <g
318
- onContextMenu={e => {
319
- e.preventDefault()
320
- e.stopPropagation()
321
- }}>
322
- {controlPoints.map((p, i) => (
323
- <circle
324
- onPointerDown={e => onControlPointerDown(i, e)}
325
- className={edgesCss.controlPoint}
326
- key={i}
327
- cx={p.x}
328
- cy={p.y}
329
- r={3}
330
- />
331
- ))}
332
- </g>
333
- )}
334
322
  <EdgeLabel
335
323
  edgeProps={props}
336
324
  labelPosition={{
@@ -340,7 +328,7 @@ export const RelationshipEdge = customEdge<Types.RelationshipEdgeData>((props) =
340
328
  }}
341
329
  {...renderLabel && { renderRoot: renderLabel }}
342
330
  >
343
- {!isControlPointDragging && enableNavigateTo && navigateTo && (
331
+ {!isControlPointDragging && navigateTo && (
344
332
  <EdgeActionButton
345
333
  {...props}
346
334
  onClick={e => {
@@ -349,6 +337,29 @@ export const RelationshipEdge = customEdge<Types.RelationshipEdgeData>((props) =
349
337
  }} />
350
338
  )}
351
339
  </EdgeLabel>
340
+ {/* Render control points above edge label */}
341
+ {enableEdgeEditing && controlPoints.length > 0 && (
342
+ <EdgeLabelRenderer>
343
+ <EdgeContainer component="svg" className={edgesCss.controlPointsContainer} {...props}>
344
+ <g
345
+ onContextMenu={e => {
346
+ e.preventDefault()
347
+ e.stopPropagation()
348
+ }}>
349
+ {controlPoints.map((p, i) => (
350
+ <circle
351
+ onPointerDown={e => onControlPointerDown(i, e)}
352
+ className={clsx('nodrag nopan', edgesCss.controlPoint)}
353
+ key={i}
354
+ cx={Math.round(p.x)}
355
+ cy={Math.round(p.y)}
356
+ r={3}
357
+ />
358
+ ))}
359
+ </g>
360
+ </EdgeContainer>
361
+ </EdgeLabelRenderer>
362
+ )}
352
363
  </EdgeContainer>
353
364
  )
354
365
  })
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  type DiagramEdge,
3
3
  type EdgeId,
4
+ type LikeC4Model,
4
5
  type NodeId,
5
6
  DiagramNode,
6
- LikeC4Model,
7
7
  nameFromFqn,
8
8
  } from '@likec4/core'
9
9
  import {
@@ -1,8 +1,23 @@
1
1
  import { globalStyle, style } from '@vanilla-extract/css'
2
+ import { ZIndexes } from '../../../base/const'
2
3
  import { mantine, xyvars } from '../../../theme-vars'
3
4
 
4
5
  const isSelected = '.react-flow__edge.selected'
5
6
 
7
+ export const controlPointsContainer = style({
8
+ overflow: 'visible',
9
+ position: 'absolute',
10
+ pointerEvents: 'none',
11
+ top: 0,
12
+ left: 0,
13
+ zIndex: ZIndexes.Edge,
14
+ selectors: {
15
+ [`&:is([data-edge-hovered='true'])`]: {
16
+ zIndex: ZIndexes.Edge + 1,
17
+ },
18
+ },
19
+ })
20
+
6
21
  export const controlPoint = style({
7
22
  fill: xyvars.edge.stroke,
8
23
  stroke: xyvars.edge.stroke,
@@ -1,7 +1,20 @@
1
1
  import type { Types } from '../types'
2
2
  import { RelationshipEdge } from './edges/RelationshipEdge'
3
+ import {
4
+ CompoundDeploymentNode,
5
+ CompoundElementNode,
6
+ DeploymentNode,
7
+ ElementNode,
8
+ ViewGroupNode,
9
+ } from './nodes/nodeTypes'
3
10
 
4
- export { nodeTypes } from './nodes/nodeTypes'
11
+ export const nodeTypes = {
12
+ element: ElementNode,
13
+ deployment: DeploymentNode,
14
+ 'compound-element': CompoundElementNode,
15
+ 'compound-deployment': CompoundDeploymentNode,
16
+ 'view-group': ViewGroupNode,
17
+ } satisfies { [key in Types.Node['type']]: any }
5
18
 
6
19
  export const edgeTypes = {
7
20
  relationship: RelationshipEdge,
@@ -36,72 +36,74 @@ const ElementDetailsButtonWithHandler = ({ fqn, ...props }: NodeProps<Types.Node
36
36
  )
37
37
  }
38
38
 
39
- export const nodeTypes = {
40
- element: customNode<Types.ElementNodeData>((props) => (
41
- <ElementNodeContainer nodeProps={props}>
42
- <ElementShape {...props} isMultiple={props.data.isMultiple} withSelectedIndicator={props.selected} />
43
- <ElementTitle {...props} />
44
- <ElementActions {...props} />
39
+ export const ElementNode = customNode<Types.ElementNodeData>((props) => (
40
+ <ElementNodeContainer nodeProps={props}>
41
+ <ElementShape {...props} isMultiple={props.data.isMultiple} withSelectedIndicator={props.selected} />
42
+ <ElementTitle {...props} />
43
+ <ElementActions {...props} />
44
+ <ElementDetailsButtonWithHandler
45
+ fqn={props.data.modelFqn}
46
+ {...props} />
47
+ <IfNotEnabled feature="ReadOnly">
48
+ <ElementToolbar {...props} />
49
+ </IfNotEnabled>
50
+ <DefaultHandles />
51
+ </ElementNodeContainer>
52
+ ))
53
+
54
+ export const DeploymentNode = customNode<Types.DeploymentElementNodeData>((props) => (
55
+ <ElementNodeContainer nodeProps={props}>
56
+ <ElementShape {...props} isMultiple={props.data.isMultiple} withSelectedIndicator={props.selected} />
57
+ <ElementTitle {...props} />
58
+ <DeploymentElementActions {...props} />
59
+ {!!props.data.modelFqn && (
45
60
  <ElementDetailsButtonWithHandler
46
61
  fqn={props.data.modelFqn}
47
62
  {...props} />
48
- <IfNotEnabled feature="ReadOnly">
49
- <ElementToolbar {...props} />
50
- </IfNotEnabled>
51
- <DefaultHandles />
52
- </ElementNodeContainer>
53
- )),
54
- deployment: customNode<Types.DeploymentElementNodeData>((props) => (
55
- <ElementNodeContainer nodeProps={props}>
56
- <ElementShape {...props} isMultiple={props.data.isMultiple} withSelectedIndicator={props.selected} />
57
- <ElementTitle {...props} />
58
- <DeploymentElementActions {...props} />
59
- {!!props.data.modelFqn && (
60
- <ElementDetailsButtonWithHandler
61
- fqn={props.data.modelFqn}
62
- {...props} />
63
- )}
64
- <IfNotEnabled feature="ReadOnly">
65
- <DeploymentElementToolbar {...props} />
66
- </IfNotEnabled>
67
- <DefaultHandles />
68
- </ElementNodeContainer>
69
- )),
70
- 'compound-element': customNode<Types.CompoundElementNodeData>((props) => {
71
- const diagram = useDiagram()
72
- return (
73
- <CompoundNodeContainer nodeProps={props}>
74
- <CompoundTitle {...props} />
75
- <CompoundActions {...props} />
76
- <IfEnabled feature="ElementDetails">
77
- <CompoundDetailsButton
78
- {...props}
79
- onClick={e => {
80
- e.stopPropagation()
81
- diagram.openElementDetails(props.data.modelFqn, props.id as NodeId)
82
- }} />
83
- </IfEnabled>
84
- <IfNotEnabled feature="ReadOnly">
85
- <CompoundElementToolbar {...props} />
86
- </IfNotEnabled>
87
- <DefaultHandles />
88
- </CompoundNodeContainer>
89
- )
90
- }),
91
- 'compound-deployment': customNode<Types.CompoundDeploymentNodeData>((props) => (
63
+ )}
64
+ <IfNotEnabled feature="ReadOnly">
65
+ <DeploymentElementToolbar {...props} />
66
+ </IfNotEnabled>
67
+ <DefaultHandles />
68
+ </ElementNodeContainer>
69
+ ))
70
+
71
+ export const CompoundElementNode = customNode<Types.CompoundElementNodeData>((props) => {
72
+ const diagram = useDiagram()
73
+ return (
92
74
  <CompoundNodeContainer nodeProps={props}>
93
75
  <CompoundTitle {...props} />
94
76
  <CompoundActions {...props} />
77
+ <IfEnabled feature="ElementDetails">
78
+ <CompoundDetailsButton
79
+ {...props}
80
+ onClick={e => {
81
+ e.stopPropagation()
82
+ diagram.openElementDetails(props.data.modelFqn, props.id as NodeId)
83
+ }} />
84
+ </IfEnabled>
95
85
  <IfNotEnabled feature="ReadOnly">
96
- <CompoundDeploymentToolbar {...props} />
86
+ <CompoundElementToolbar {...props} />
97
87
  </IfNotEnabled>
98
88
  <DefaultHandles />
99
89
  </CompoundNodeContainer>
100
- )),
101
- 'view-group': customNode<Types.ViewGroupNodeData>((props) => (
102
- <CompoundNodeContainer nodeProps={props}>
103
- <CompoundTitle {...props} />
104
- <DefaultHandles />
105
- </CompoundNodeContainer>
106
- )),
107
- } satisfies { [key in Types.Node['type']]: any }
90
+ )
91
+ })
92
+
93
+ export const CompoundDeploymentNode = customNode<Types.CompoundDeploymentNodeData>((props) => (
94
+ <CompoundNodeContainer nodeProps={props}>
95
+ <CompoundTitle {...props} />
96
+ <CompoundActions {...props} />
97
+ <IfNotEnabled feature="ReadOnly">
98
+ <CompoundDeploymentToolbar {...props} />
99
+ </IfNotEnabled>
100
+ <DefaultHandles />
101
+ </CompoundNodeContainer>
102
+ ))
103
+
104
+ export const ViewGroupNode = customNode<Types.ViewGroupNodeData>((props) => (
105
+ <CompoundNodeContainer nodeProps={props}>
106
+ <CompoundTitle {...props} />
107
+ <DefaultHandles />
108
+ </CompoundNodeContainer>
109
+ ))