@likec4/diagram 1.34.2 → 1.35.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 (266) hide show
  1. package/bundle/{chunk-Dd7et66b.js → chunk-C0Eg81Gj.js} +971 -1045
  2. package/bundle/custom.js +59 -55
  3. package/bundle/index.js +6656 -4263
  4. package/dist/LikeC4Diagram.props.d.ts +51 -4
  5. package/dist/LikeC4ModelProvider.d.ts +3 -3
  6. package/dist/base/BaseXYFlow.d.ts +2 -2
  7. package/dist/base/BaseXYFlow.js +3 -3
  8. package/dist/base/primitives/compound/CompoundActionButton.js +1 -1
  9. package/dist/base/primitives/compound/CompoundDetailsButton.js +1 -1
  10. package/dist/base/primitives/edge/EdgeActionButton.js +1 -1
  11. package/dist/base/primitives/element/ElementDetailsButton.js +1 -1
  12. package/dist/base/primitives/element/ElementNodeContainer.d.ts +3 -3
  13. package/dist/base/primitives/element/ElementTitle.js +9 -9
  14. package/dist/bundle/LikeC4View.js +3 -3
  15. package/dist/bundle/LikeC4View.props.d.ts +8 -4
  16. package/dist/bundle/custom.js +1 -0
  17. package/dist/bundle/index.js +1 -0
  18. package/dist/components/ErrorFallback.d.ts +2 -1
  19. package/dist/components/ErrorFallback.js +15 -2
  20. package/dist/components/Link.js +2 -2
  21. package/dist/components/NavigationLink.d.ts +6 -0
  22. package/dist/components/NavigationLink.js +25 -0
  23. package/dist/components/SearchControl.js +1 -1
  24. package/dist/context/ControlsCustomLayout.d.ts +0 -1
  25. package/dist/context/DiagramFeatures.d.ts +4 -1
  26. package/dist/context/IconRenderer.js +6 -6
  27. package/dist/custom/customNodes.js +10 -2
  28. package/dist/custom/hooks.d.ts +1 -0
  29. package/dist/custom/index.js +1 -0
  30. package/dist/hooks/useDiagram.d.ts +1 -2
  31. package/dist/hooks/useDiagram.js +1 -5
  32. package/dist/index.js +1 -0
  33. package/dist/likec4diagram/DiagramUI.js +8 -4
  34. package/dist/likec4diagram/DiagramXYFlow.js +1 -1
  35. package/dist/likec4diagram/custom/edges/RelationshipsDropdownMenu.js +4 -4
  36. package/dist/likec4diagram/custom/nodes/ElementActions.js +2 -2
  37. package/dist/likec4diagram/custom/nodes/toolbar/ElementToolbar.js +2 -2
  38. package/dist/likec4diagram/custom/nodes/toolbar/_shared.js +2 -2
  39. package/dist/likec4diagram/ui/controls/ChangeAutoLayoutButton.js +1 -1
  40. package/dist/likec4diagram/ui/controls/Controls.js +11 -15
  41. package/dist/likec4diagram/ui/controls/LayoutDriftNotification.js +1 -1
  42. package/dist/likec4diagram/ui/controls/ManualLayoutToolsButton.js +9 -9
  43. package/dist/likec4diagram/ui/controls/NavigationButtons.js +4 -2
  44. package/dist/likec4diagram/ui/controls/ToggleReadonly.js +2 -2
  45. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.js +15 -13
  46. package/dist/likec4diagram/ui/notation/NotationPanel.js +3 -3
  47. package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.js +4 -4
  48. package/dist/likec4model/LikeC4ModelContext.d.ts +4 -1
  49. package/dist/likec4model/LikeC4ModelContext.js +2 -1
  50. package/dist/likec4model/index.d.ts +1 -0
  51. package/dist/likec4model/useCurrentViewModel.d.ts +2 -0
  52. package/dist/likec4model/useCurrentViewModel.js +12 -0
  53. package/dist/likec4model/useLikeC4Model.d.ts +2 -5
  54. package/dist/likec4model/useLikeC4Model.js +10 -16
  55. package/dist/navigationpanel/NavigationPanel.d.ts +2 -0
  56. package/dist/navigationpanel/NavigationPanel.js +124 -0
  57. package/dist/navigationpanel/NavigationPanelControls.d.ts +1 -0
  58. package/dist/navigationpanel/NavigationPanelControls.js +134 -0
  59. package/dist/navigationpanel/NavigationPanelDropdown.d.ts +1 -0
  60. package/dist/navigationpanel/NavigationPanelDropdown.js +436 -0
  61. package/dist/navigationpanel/_common.d.ts +15 -0
  62. package/dist/navigationpanel/_common.js +69 -0
  63. package/dist/navigationpanel/actor.d.ts +300 -0
  64. package/dist/navigationpanel/actor.js +240 -0
  65. package/dist/navigationpanel/controls/BurgerButton.d.ts +1 -0
  66. package/dist/navigationpanel/controls/BurgerButton.js +36 -0
  67. package/dist/navigationpanel/controls/NavigationButtons.d.ts +1 -0
  68. package/dist/navigationpanel/controls/NavigationButtons.js +44 -0
  69. package/dist/navigationpanel/controls/OpenSource.d.ts +1 -0
  70. package/dist/navigationpanel/controls/OpenSource.js +27 -0
  71. package/dist/navigationpanel/controls/SearchControl.d.ts +1 -0
  72. package/dist/navigationpanel/controls/SearchControl.js +68 -0
  73. package/dist/navigationpanel/controls/ToggleReadonly.d.ts +1 -0
  74. package/dist/navigationpanel/controls/ToggleReadonly.js +69 -0
  75. package/dist/navigationpanel/controls/index.d.ts +5 -0
  76. package/dist/navigationpanel/editorpanel/CenterCamera.d.ts +1 -0
  77. package/dist/navigationpanel/editorpanel/CenterCamera.js +12 -0
  78. package/dist/navigationpanel/editorpanel/ChangeAutoLayoutButton.d.ts +1 -0
  79. package/dist/navigationpanel/editorpanel/ChangeAutoLayoutButton.js +157 -0
  80. package/dist/navigationpanel/editorpanel/EditorPanel.d.ts +1 -0
  81. package/dist/navigationpanel/editorpanel/EditorPanel.js +48 -0
  82. package/dist/navigationpanel/editorpanel/LayoutDriftNotification.d.ts +1 -0
  83. package/dist/navigationpanel/editorpanel/LayoutDriftNotification.js +56 -0
  84. package/dist/navigationpanel/editorpanel/ManualLayoutToolsButton.d.ts +2 -0
  85. package/dist/navigationpanel/editorpanel/ManualLayoutToolsButton.js +174 -0
  86. package/dist/navigationpanel/editorpanel/_common.d.ts +6 -0
  87. package/dist/navigationpanel/editorpanel/_common.js +14 -0
  88. package/dist/navigationpanel/editorpanel/index.d.ts +1 -0
  89. package/dist/navigationpanel/editorpanel/styles.d.ts +8 -0
  90. package/dist/navigationpanel/editorpanel/styles.js +79 -0
  91. package/dist/navigationpanel/hooks.d.ts +20 -0
  92. package/dist/navigationpanel/hooks.js +38 -0
  93. package/dist/navigationpanel/index.d.ts +1 -0
  94. package/dist/navigationpanel/styles.css.d.ts +16 -0
  95. package/dist/navigationpanel/styles.css.js +32 -0
  96. package/dist/navigationpanel/walkthrough/ActiveWalkthroughControls.d.ts +2 -0
  97. package/dist/navigationpanel/walkthrough/ActiveWalkthroughControls.js +157 -0
  98. package/dist/navigationpanel/walkthrough/index.d.ts +1 -0
  99. package/dist/node_modules/.pnpm/{@tabler_icons-react@3.31.0_react@19.1.0 → @tabler_icons-react@3.34.1_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/createReactComponent.js +1 -1
  100. package/dist/node_modules/.pnpm/{@tabler_icons-react@3.31.0_react@19.1.0 → @tabler_icons-react@3.34.1_react@19.1.1}/node_modules/@tabler/icons-react/dist/esm/defaultAttributes.js +1 -1
  101. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconAlertTriangle.js +14 -0
  102. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowDownRight.js +14 -0
  103. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowLeft.js +14 -0
  104. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowRight.js +14 -0
  105. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconBrowser.js +14 -0
  106. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconCheck.js +14 -0
  107. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronLeft.js +14 -0
  108. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronRight.js +14 -0
  109. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconCopy.js +14 -0
  110. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconCylinder.js +14 -0
  111. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconDeviceMobile.js +14 -0
  112. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconExternalLink.js +14 -0
  113. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconFileSymlink.js +14 -0
  114. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconFocusCentered.js +14 -0
  115. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconFolderFilled.js +14 -0
  116. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconHelpCircle.js +14 -0
  117. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconId.js +14 -0
  118. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconInfoCircle.js +14 -0
  119. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignBottom.js +14 -0
  120. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignCenter.js +14 -0
  121. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignLeft.js +14 -0
  122. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignMiddle.js +14 -0
  123. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignRight.js +14 -0
  124. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignTop.js +14 -0
  125. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutBoardSplit.js +14 -0
  126. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutCollage.js +14 -0
  127. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutDashboard.js +14 -0
  128. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLock.js +14 -0
  129. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconLockOpen2.js +14 -0
  130. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconMenu.js +14 -0
  131. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconMenu2.js +14 -0
  132. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerPlayFilled.js +14 -0
  133. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerSkipBackFilled.js +14 -0
  134. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerSkipForwardFilled.js +14 -0
  135. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerStopFilled.js +14 -0
  136. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconRectangularPrism.js +14 -0
  137. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconReorder.js +14 -0
  138. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconRouteOff.js +14 -0
  139. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconSearch.js +14 -0
  140. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconSelector.js +14 -0
  141. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconStack2.js +14 -0
  142. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconStarFilled.js +14 -0
  143. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconTarget.js +14 -0
  144. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconTransform.js +14 -0
  145. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconUser.js +14 -0
  146. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconX.js +14 -0
  147. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconZoomScan.js +14 -0
  148. package/dist/overlays/element-details/ElementDetailsCard.js +4 -4
  149. package/dist/overlays/element-details/TabPanelDeployments.js +3 -3
  150. package/dist/overlays/element-details/TabPanelRelationships.js +3 -3
  151. package/dist/overlays/element-details/TabPanelStructure.js +1 -1
  152. package/dist/overlays/relationship-details/RelationshipDetails.js +3 -3
  153. package/dist/overlays/relationship-details/SelectEdge.js +2 -2
  154. package/dist/overlays/relationship-details/custom/ElementActions.js +3 -3
  155. package/dist/overlays/relationships-browser/RelationshipsBrowser.js +3 -3
  156. package/dist/overlays/relationships-browser/SelectElement.js +2 -2
  157. package/dist/overlays/relationships-browser/custom/ElementActions.js +3 -3
  158. package/dist/search/components/ElementsColumn.js +1 -1
  159. package/dist/search/components/PickView.js +1 -1
  160. package/dist/search/components/SearchByTags.js +1 -1
  161. package/dist/search/components/SearchInput.js +1 -1
  162. package/dist/search/components/ViewsColum.js +2 -2
  163. package/dist/state/DiagramActorProvider.d.ts +2 -2
  164. package/dist/state/DiagramActorProvider.js +48 -10
  165. package/dist/state/diagram-machine.d.ts +2 -2
  166. package/dist/styles-min.css +1 -1
  167. package/dist/styles.css +1 -1
  168. package/dist/styles.css2.js +1 -1
  169. package/package.json +16 -15
  170. package/panda.buildinfo.json +170 -134
  171. package/src/LikeC4Diagram.props.ts +51 -3
  172. package/src/LikeC4ModelProvider.tsx +3 -3
  173. package/src/base/BaseXYFlow.tsx +4 -4
  174. package/src/base/primitives/element/ElementNodeContainer.tsx +2 -2
  175. package/src/base/primitives/element/ElementTitle.tsx +4 -4
  176. package/src/bundle/LikeC4View.props.ts +14 -4
  177. package/src/bundle/LikeC4View.tsx +2 -2
  178. package/src/components/ErrorFallback.tsx +16 -1
  179. package/src/components/NavigationLink.tsx +31 -0
  180. package/src/context/ControlsCustomLayout.ts +0 -1
  181. package/src/context/DiagramFeatures.tsx +6 -1
  182. package/src/custom/customNodes.tsx +10 -2
  183. package/src/custom/hooks.ts +3 -0
  184. package/src/hooks/useDiagram.ts +0 -8
  185. package/src/likec4diagram/DiagramUI.tsx +9 -3
  186. package/src/likec4diagram/DiagramXYFlow.tsx +1 -1
  187. package/src/likec4diagram/ui/controls/Controls.tsx +8 -18
  188. package/src/likec4diagram/ui/controls/NavigationButtons.tsx +2 -0
  189. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.tsx +14 -11
  190. package/src/likec4model/LikeC4ModelContext.ts +5 -1
  191. package/src/likec4model/index.ts +3 -0
  192. package/src/likec4model/useCurrentViewModel.ts +10 -0
  193. package/src/likec4model/useLikeC4Model.ts +17 -27
  194. package/src/navigationpanel/NavigationPanel.tsx +136 -0
  195. package/src/navigationpanel/NavigationPanelControls.tsx +155 -0
  196. package/src/navigationpanel/NavigationPanelDropdown.tsx +523 -0
  197. package/src/navigationpanel/_common.tsx +81 -0
  198. package/src/navigationpanel/actor.ts +321 -0
  199. package/src/navigationpanel/controls/BurgerButton.tsx +32 -0
  200. package/src/navigationpanel/controls/NavigationButtons.tsx +36 -0
  201. package/src/navigationpanel/controls/OpenSource.tsx +28 -0
  202. package/src/navigationpanel/controls/SearchControl.tsx +64 -0
  203. package/src/navigationpanel/controls/ToggleReadonly.tsx +66 -0
  204. package/src/navigationpanel/controls/index.ts +5 -0
  205. package/src/navigationpanel/editorpanel/CenterCamera.tsx +15 -0
  206. package/src/navigationpanel/editorpanel/ChangeAutoLayoutButton.tsx +199 -0
  207. package/src/navigationpanel/editorpanel/EditorPanel.tsx +49 -0
  208. package/src/navigationpanel/editorpanel/LayoutDriftNotification.tsx +56 -0
  209. package/src/navigationpanel/editorpanel/ManualLayoutToolsButton.tsx +151 -0
  210. package/src/navigationpanel/editorpanel/_common.tsx +14 -0
  211. package/src/navigationpanel/editorpanel/index.ts +1 -0
  212. package/src/navigationpanel/editorpanel/styles.ts +84 -0
  213. package/src/navigationpanel/hooks.tsx +70 -0
  214. package/src/navigationpanel/index.ts +1 -0
  215. package/src/navigationpanel/styles.css.ts +30 -0
  216. package/src/navigationpanel/walkthrough/ActiveWalkthroughControls.tsx +160 -0
  217. package/src/navigationpanel/walkthrough/index.tsx +1 -0
  218. package/src/state/DiagramActorProvider.tsx +60 -12
  219. package/src/state/diagram-machine.ts +2 -2
  220. package/dist/base/primitives/element/ElementTitle.css.d.ts +0 -34
  221. package/dist/base/primitives/element/ElementTitle.css.js +0 -201
  222. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconAlertTriangle.js +0 -13
  223. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowDownRight.js +0 -13
  224. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowRight.js +0 -13
  225. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconBrowser.js +0 -13
  226. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconCheck.js +0 -13
  227. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronLeft.js +0 -13
  228. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronRight.js +0 -13
  229. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconCopy.js +0 -13
  230. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconCylinder.js +0 -13
  231. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconDeviceMobile.js +0 -13
  232. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconExternalLink.js +0 -13
  233. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconFileSymlink.js +0 -13
  234. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconFocusCentered.js +0 -13
  235. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconHelpCircle.js +0 -13
  236. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconId.js +0 -13
  237. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconInfoCircle.js +0 -13
  238. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignBottom.js +0 -13
  239. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignCenter.js +0 -13
  240. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignLeft.js +0 -13
  241. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignMiddle.js +0 -13
  242. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignRight.js +0 -13
  243. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutAlignTop.js +0 -13
  244. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutBoardSplit.js +0 -13
  245. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutCollage.js +0 -13
  246. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLayoutDashboard.js +0 -13
  247. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLock.js +0 -13
  248. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconLockOpen2.js +0 -13
  249. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconMenu.js +0 -13
  250. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconMenu2.js +0 -13
  251. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerPlayFilled.js +0 -13
  252. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerSkipBackFilled.js +0 -13
  253. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerSkipForwardFilled.js +0 -13
  254. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconPlayerStopFilled.js +0 -13
  255. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconRectangularPrism.js +0 -13
  256. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconReorder.js +0 -13
  257. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconRouteOff.js +0 -13
  258. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconSearch.js +0 -13
  259. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconSelector.js +0 -13
  260. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconStack2.js +0 -13
  261. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconTarget.js +0 -13
  262. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconTransform.js +0 -13
  263. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconUser.js +0 -13
  264. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconX.js +0 -13
  265. package/dist/node_modules/.pnpm/@tabler_icons-react@3.31.0_react@19.1.0/node_modules/@tabler/icons-react/dist/esm/icons/IconZoomScan.js +0 -13
  266. package/src/base/primitives/element/ElementTitle.css.ts +0 -206
@@ -0,0 +1,160 @@
1
+ import { css } from '@likec4/styles/css'
2
+ import { Box } from '@likec4/styles/jsx'
3
+ import { Badge, Button, Portal } from '@mantine/core'
4
+ import {
5
+ IconPlayerPlayFilled,
6
+ IconPlayerSkipBackFilled,
7
+ IconPlayerSkipForwardFilled,
8
+ IconPlayerStopFilled,
9
+ } from '@tabler/icons-react'
10
+ import { AnimatePresence } from 'motion/react'
11
+ import * as m from 'motion/react-m'
12
+ import { isTruthy } from 'remeda'
13
+ import { useMantinePortalProps } from '../../hooks'
14
+ import { useDiagram, useDiagramContext } from '../../hooks/useDiagram'
15
+ import { Tooltip } from '../_common'
16
+ import { useNavigationActor } from '../hooks'
17
+
18
+ const TriggerWalkthroughButton = Button.withProps({
19
+ // Button is polymorphic, but we dont want it to inherit the motion props
20
+ component: m.button as any as 'button',
21
+ // @ts-expect-error
22
+ layoutId: 'trigger-dynamic-walkthrough',
23
+ variant: 'filled',
24
+ size: 'xs',
25
+ fw: '500',
26
+ })
27
+
28
+ export const StartWalkthroughButton = () => {
29
+ const diagram = useDiagram()
30
+ const actor = useNavigationActor()
31
+ return (
32
+ <Tooltip label="Start Dynamic View Walkthrough">
33
+ <TriggerWalkthroughButton
34
+ onClick={e => {
35
+ e.stopPropagation()
36
+ actor.closeDropdown()
37
+ diagram.startWalkthrough()
38
+ }}
39
+ rightSection={<IconPlayerPlayFilled size={10} />}
40
+ >
41
+ Start
42
+ </TriggerWalkthroughButton>
43
+ </Tooltip>
44
+ )
45
+ }
46
+
47
+ const PrevNextButton = Button.withProps({
48
+ // Button is polymorphic, but we dont want it to inherit the motion props
49
+ component: m.button as any as 'button',
50
+ variant: 'light',
51
+ size: 'xs',
52
+ fw: '500',
53
+ })
54
+
55
+ const ParallelFrame = () => {
56
+ const { portalProps } = useMantinePortalProps()
57
+ return (
58
+ <Portal {...portalProps}>
59
+ <Box
60
+ css={{
61
+ position: 'absolute',
62
+ margin: 0,
63
+ padding: 0,
64
+ top: 0,
65
+ left: 0,
66
+ width: '100%',
67
+ height: '100%',
68
+ border: `2px solid`,
69
+ borderColor: 'mantine.colors.orange[6]',
70
+ pointerEvents: 'none',
71
+ md: {
72
+ borderWidth: 4,
73
+ },
74
+ }}
75
+ >
76
+ </Box>
77
+ </Portal>
78
+ )
79
+ }
80
+
81
+ export const ActiveWalkthroughControls = () => {
82
+ const diagram = useDiagram()
83
+ const {
84
+ isParallel,
85
+ hasNext,
86
+ hasPrevious,
87
+ currentStep,
88
+ totalSteps,
89
+ } = useDiagramContext(s => {
90
+ const currentStepIndex = s.xyedges.findIndex(e => e.id === s.activeWalkthrough?.stepId)
91
+ return ({
92
+ isParallel: isTruthy(s.activeWalkthrough?.parallelPrefix),
93
+ hasNext: currentStepIndex < s.xyedges.length - 1,
94
+ hasPrevious: currentStepIndex > 0,
95
+ currentStep: currentStepIndex + 1,
96
+ totalSteps: s.xyedges.length,
97
+ })
98
+ })
99
+
100
+ return (
101
+ <AnimatePresence propagate>
102
+ <TriggerWalkthroughButton
103
+ variant="light"
104
+ color="orange"
105
+ mr={'sm'}
106
+ onClick={e => {
107
+ e.stopPropagation()
108
+ diagram.stopWalkthrough()
109
+ }}
110
+ rightSection={<IconPlayerStopFilled size={10} />}
111
+ >
112
+ Stop
113
+ </TriggerWalkthroughButton>
114
+
115
+ <PrevNextButton
116
+ key="prev"
117
+ disabled={!hasPrevious}
118
+ onClick={() => diagram.walkthroughStep('previous')}
119
+ leftSection={<IconPlayerSkipBackFilled size={10} />}
120
+ >
121
+ Previous
122
+ </PrevNextButton>
123
+
124
+ <Badge
125
+ component={m.div}
126
+ size="md"
127
+ radius="sm"
128
+ // fw={500}
129
+ variant={isParallel ? 'gradient' : 'transparent'}
130
+ gradient={{ from: 'red', to: 'orange', deg: 90 }}
131
+ rightSection={
132
+ <m.div
133
+ className={css({
134
+ fontSize: 'xxs',
135
+ display: isParallel ? 'block' : 'none',
136
+ })}>
137
+ parallel
138
+ </m.div>
139
+ }
140
+ className={css({
141
+ alignItems: 'baseline',
142
+ })}
143
+ >
144
+ <m.span>
145
+ {currentStep} / {totalSteps}
146
+ </m.span>
147
+ </Badge>
148
+
149
+ <PrevNextButton
150
+ key="next"
151
+ disabled={!hasNext}
152
+ onClick={() => diagram.walkthroughStep('next')}
153
+ rightSection={<IconPlayerSkipForwardFilled size={10} />}
154
+ >
155
+ Next
156
+ </PrevNextButton>
157
+ {isParallel && <ParallelFrame />}
158
+ </AnimatePresence>
159
+ )
160
+ }
@@ -0,0 +1 @@
1
+ export { ActiveWalkthroughControls, StartWalkthroughButton } from './ActiveWalkthroughControls'
@@ -1,20 +1,25 @@
1
1
  import type { DiagramView, WhereOperator } from '@likec4/core/types'
2
+ import { useCustomCompareEffect, useDeepCompareEffect } from '@react-hookz/web'
2
3
  import { useActorRef, useSelector } from '@xstate/react'
3
4
  import { useStoreApi } from '@xyflow/react'
4
- import { shallowEqual } from 'fast-equals'
5
- import { type PropsWithChildren, useEffect, useRef } from 'react'
5
+ import { deepEqual, shallowEqual } from 'fast-equals'
6
+ import { type PropsWithChildren, useEffect, useRef, useState } from 'react'
7
+ import { ErrorBoundary } from '../components/ErrorFallback'
6
8
  import { useDiagramEventHandlersRef } from '../context/DiagramEventHandlers'
7
9
  import { DiagramFeatures, useEnabledFeatures } from '../context/DiagramFeatures'
8
10
  import { DiagramActorContextProvider } from '../hooks/safeContext'
9
- import type { PaddingWithUnit } from '../LikeC4Diagram.props'
11
+ import { useCurrentViewId } from '../hooks/useCurrentViewId'
12
+ import type { ViewPadding } from '../LikeC4Diagram.props'
10
13
  import type { Types } from '../likec4diagram/types'
11
14
  import { useViewToNodesEdges } from '../likec4diagram/useViewToNodesEdges'
15
+ import { CurrentViewModelContext } from '../likec4model/LikeC4ModelContext'
16
+ import { useLikeC4Model } from '../likec4model/useLikeC4Model'
12
17
  import { type DiagramMachine, diagramMachine } from './diagram-machine'
13
18
  import { syncManualLayoutActorLogic } from './syncManualLayoutActor'
14
19
  import type { DiagramActorSnapshot } from './types'
15
20
 
16
21
  const selectToggledFeatures = (state: DiagramActorSnapshot) => {
17
- if (state.context.features.enableReadOnly) {
22
+ if (state.context.features.enableReadOnly || state.context.activeWalkthrough) {
18
23
  return {
19
24
  ...state.context.toggledFeatures,
20
25
  enableReadOnly: true,
@@ -35,7 +40,7 @@ export function DiagramActorProvider({
35
40
  view: DiagramView
36
41
  zoomable: boolean
37
42
  pannable: boolean
38
- fitViewPadding: PaddingWithUnit
43
+ fitViewPadding: ViewPadding
39
44
  nodesSelectable: boolean
40
45
  where: WhereOperator | null
41
46
  }>) {
@@ -91,13 +96,21 @@ export function DiagramActorProvider({
91
96
  )
92
97
 
93
98
  const features = useEnabledFeatures()
94
- useEffect(() => {
95
- actorRef.send({ type: 'update.features', features })
96
- }, [features])
99
+ useCustomCompareEffect(
100
+ () => {
101
+ actorRef.send({ type: 'update.features', features })
102
+ },
103
+ [features],
104
+ shallowEqual,
105
+ )
97
106
 
98
- useEffect(() => {
99
- actorRef.send({ type: 'update.inputs', inputs: { zoomable, pannable, fitViewPadding, nodesSelectable } })
100
- }, [zoomable, pannable, fitViewPadding, nodesSelectable])
107
+ useCustomCompareEffect(
108
+ () => {
109
+ actorRef.send({ type: 'update.inputs', inputs: { zoomable, pannable, fitViewPadding, nodesSelectable } })
110
+ },
111
+ [zoomable, pannable, fitViewPadding, nodesSelectable],
112
+ deepEqual,
113
+ )
101
114
 
102
115
  const { xyedges, xynodes } = useViewToNodesEdges({
103
116
  view,
@@ -114,8 +127,43 @@ export function DiagramActorProvider({
114
127
  return (
115
128
  <DiagramActorContextProvider value={actorRef}>
116
129
  <DiagramFeatures overrides={toggledFeatures}>
117
- {children}
130
+ <ErrorBoundary>
131
+ <CurrentViewModelProvider>
132
+ {children}
133
+ </CurrentViewModelProvider>
134
+ </ErrorBoundary>
118
135
  </DiagramFeatures>
119
136
  </DiagramActorContextProvider>
120
137
  )
121
138
  }
139
+
140
+ function CurrentViewModelProvider({
141
+ children,
142
+ }: PropsWithChildren) {
143
+ const viewId = useCurrentViewId()
144
+ const likec4model = useLikeC4Model()
145
+ const [viewmodel, setViewmodel] = useState(() => likec4model.view(viewId))
146
+
147
+ useEffect(() => {
148
+ setViewmodel(current => {
149
+ const nextviewmodel = likec4model.findView(viewId)
150
+ if (!nextviewmodel) {
151
+ console.error(`View "${viewId}" not found in likec4model, current viewmodel: ${current.id}`, {
152
+ currentViewModel: current,
153
+ likec4model,
154
+ })
155
+ return current
156
+ }
157
+ return nextviewmodel
158
+ })
159
+ }, [likec4model, viewId])
160
+
161
+ if (!viewmodel.isDiagram()) {
162
+ console.warn(`View "${viewId}" is not diagram.\nMake sure you have LikeC4ModelProvider with layouted model.`)
163
+ }
164
+ return (
165
+ <CurrentViewModelContext.Provider value={viewmodel}>
166
+ {children}
167
+ </CurrentViewModelContext.Provider>
168
+ )
169
+ }
@@ -46,7 +46,7 @@ import {
46
46
  import { MinZoom } from '../base/const'
47
47
  import { Base } from '../base/types'
48
48
  import { type EnabledFeatures, type FeatureName, AllDisabled } from '../context/DiagramFeatures'
49
- import type { OpenSourceParams, PaddingWithUnit } from '../LikeC4Diagram.props'
49
+ import type { OpenSourceParams, ViewPadding } from '../LikeC4Diagram.props'
50
50
  import type { Types } from '../likec4diagram/types'
51
51
  import { createLayoutConstraints } from '../likec4diagram/useLayoutConstraints'
52
52
  import { overlaysActorLogic } from '../overlays/overlaysActor'
@@ -85,7 +85,7 @@ export interface Input {
85
85
  xystore: XYStoreApi
86
86
  zoomable: boolean
87
87
  pannable: boolean
88
- fitViewPadding: PaddingWithUnit
88
+ fitViewPadding: ViewPadding
89
89
  nodesSelectable: boolean
90
90
  }
91
91
 
@@ -1,34 +0,0 @@
1
- import { SlotRecipeRuntimeFn } from '@likec4/styles/types';
2
- export declare const iconSize = "--icon-size";
3
- export declare const elementIcon: string;
4
- export declare const elementTitle: SlotRecipeRuntimeFn<"root" | "title" | "technology" | "description" | "textContainer", {
5
- hasIcon: {
6
- false: {};
7
- true: {
8
- root: {
9
- gap: "16px";
10
- };
11
- textContainer: {
12
- minWidth: "calc(50% + var(--icon-size))";
13
- alignItems: "flex-start";
14
- };
15
- title: {
16
- textAlign: "left";
17
- };
18
- description: {
19
- textAlign: "left";
20
- };
21
- technology: {
22
- textAlign: "left";
23
- };
24
- };
25
- };
26
- hasDescription: {
27
- false: {};
28
- true: {};
29
- };
30
- hasTechnology: {
31
- false: {};
32
- true: {};
33
- };
34
- }>;
@@ -1,201 +0,0 @@
1
- import { sva, css } from '@likec4/styles/css';
2
-
3
- const iconSize = "--icon-size";
4
- const title = css.raw({
5
- textStyle: "likec4.node.primary",
6
- flex: "0 0 auto",
7
- textAlign: "center",
8
- color: "likec4.palette.hiContrast"
9
- });
10
- const description = css.raw({
11
- flexGrow: "0",
12
- flexShrink: "1",
13
- textStyle: "likec4.node.secondary",
14
- color: "likec4.palette.loContrast",
15
- textAlign: "center",
16
- textOverflow: "ellipsis",
17
- overflow: "hidden",
18
- _shapeSizeXs: {
19
- display: "none"
20
- },
21
- _smallZoom: {
22
- display: "none"
23
- }
24
- });
25
- const technology = css.raw({
26
- flex: "0 0 auto",
27
- textStyle: "likec4.node.secondary",
28
- color: "likec4.palette.loContrast",
29
- fontSize: `calc(var(--likec4-text-size) * 0.635)`,
30
- lineHeight: 1.125,
31
- textAlign: "center",
32
- textWrap: "balance",
33
- opacity: 0.92,
34
- _whenHovered: {
35
- opacity: 1
36
- },
37
- _shapeSizeXs: {
38
- display: "none"
39
- },
40
- _shapeSizeSm: {
41
- display: "none"
42
- },
43
- _smallZoom: {
44
- display: "none"
45
- }
46
- });
47
- const varIconSize = `var(${iconSize})`;
48
- const elementIcon = css({
49
- flex: `0 0 ${varIconSize}`,
50
- height: varIconSize,
51
- width: varIconSize,
52
- display: "flex",
53
- alignSelf: "flex-start",
54
- alignItems: "center",
55
- justifyContent: "center",
56
- mixBlendMode: {
57
- base: "hard-light",
58
- _reduceGraphicsOnPan: "normal"
59
- },
60
- [`& svg, & img`]: {
61
- width: "100%",
62
- height: "auto",
63
- maxHeight: "100%",
64
- pointerEvents: "none",
65
- filter: {
66
- base: [
67
- "drop-shadow(0 0 3px rgb(0 0 0 / 12%))",
68
- "drop-shadow(0 1px 8px rgb(0 0 0 / 8%))",
69
- "drop-shadow(1px 1px 16px rgb(0 0 0 / 3%))"
70
- ],
71
- _reduceGraphicsOnPan: "none"
72
- }
73
- },
74
- [`& img`]: {
75
- objectFit: "contain"
76
- }
77
- });
78
- const elementTitle = sva({
79
- slots: ["root", "textContainer", "title", "description", "technology"],
80
- base: {
81
- root: {
82
- position: "relative",
83
- flex: "1",
84
- height: "fit-content",
85
- width: "fit-content",
86
- maxHeight: "100%",
87
- maxWidth: "100%",
88
- margin: "0 auto",
89
- display: "flex",
90
- alignItems: "center",
91
- justifyContent: "center",
92
- flexDirection: "row",
93
- paddingTop: "var(--likec4-spacing)",
94
- paddingBottom: "var(--likec4-spacing)",
95
- paddingLeft: "calc(var(--likec4-spacing) + 8px)",
96
- paddingRight: "calc(var(--likec4-spacing) + 8px)",
97
- overflow: "hidden",
98
- pointerEvents: "none",
99
- gap: "12px",
100
- _shapeQueue: {
101
- paddingLeft: "46px",
102
- paddingRight: "16px"
103
- },
104
- _shapeMobile: {
105
- paddingLeft: "46px",
106
- paddingRight: "16px"
107
- },
108
- _shapeCylinder: {
109
- paddingTop: "30px"
110
- },
111
- _shapeStorage: {
112
- paddingTop: "30px"
113
- },
114
- _shapeBrowser: {
115
- paddingTop: "32px",
116
- paddingBottom: "28px"
117
- },
118
- _shapeSizeXs: {
119
- [iconSize]: "24px"
120
- },
121
- _shapeSizeSm: {
122
- [iconSize]: "36px"
123
- },
124
- _shapeSizeMd: {
125
- [iconSize]: "60px"
126
- },
127
- _shapeSizeLg: {
128
- [iconSize]: "82px",
129
- gap: "16px"
130
- },
131
- _shapeSizeXl: {
132
- [iconSize]: "90px",
133
- gap: "16px"
134
- }
135
- },
136
- textContainer: {
137
- height: "fit-content",
138
- width: "fit-content",
139
- maxHeight: "100%",
140
- maxWidth: "100%",
141
- flex: "0 1 auto",
142
- display: "flex",
143
- flexDirection: "column",
144
- alignItems: "stretch",
145
- justifyContent: "center",
146
- flexWrap: "nowrap",
147
- overflow: "hidden",
148
- gap: "8px"
149
- },
150
- title,
151
- description,
152
- technology
153
- },
154
- variants: {
155
- hasIcon: {
156
- false: {},
157
- true: {
158
- root: {
159
- gap: "16px"
160
- },
161
- textContainer: {
162
- minWidth: `calc(50% + ${varIconSize})`,
163
- alignItems: "flex-start"
164
- },
165
- title: {
166
- textAlign: "left"
167
- },
168
- description: {
169
- textAlign: "left"
170
- },
171
- technology: {
172
- textAlign: "left"
173
- }
174
- }
175
- },
176
- hasDescription: {
177
- false: {},
178
- true: {}
179
- },
180
- hasTechnology: {
181
- false: {},
182
- true: {}
183
- }
184
- },
185
- compoundVariants: [
186
- {
187
- hasDescription: true,
188
- hasTechnology: true,
189
- css: {
190
- textContainer: {
191
- gap: "6px"
192
- }
193
- }
194
- }
195
- ],
196
- defaultVariants: {
197
- hasIcon: false
198
- }
199
- });
200
-
201
- export { elementIcon, elementTitle, iconSize };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconAlertTriangle = createReactComponent("outline", "alert-triangle", "IconAlertTriangle", [["path", { "d": "M12 9v4", "key": "svg-0" }], ["path", { "d": "M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0z", "key": "svg-1" }], ["path", { "d": "M12 16h.01", "key": "svg-2" }]]);
12
-
13
- export { IconAlertTriangle as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconArrowDownRight = createReactComponent("outline", "arrow-down-right", "IconArrowDownRight", [["path", { "d": "M7 7l10 10", "key": "svg-0" }], ["path", { "d": "M17 8l0 9l-9 0", "key": "svg-1" }]]);
12
-
13
- export { IconArrowDownRight as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconArrowRight = createReactComponent("outline", "arrow-right", "IconArrowRight", [["path", { "d": "M5 12l14 0", "key": "svg-0" }], ["path", { "d": "M13 18l6 -6", "key": "svg-1" }], ["path", { "d": "M13 6l6 6", "key": "svg-2" }]]);
12
-
13
- export { IconArrowRight as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconBrowser = createReactComponent("outline", "browser", "IconBrowser", [["path", { "d": "M4 8h16", "key": "svg-0" }], ["path", { "d": "M4 4m0 2a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z", "key": "svg-1" }], ["path", { "d": "M8 4v4", "key": "svg-2" }]]);
12
-
13
- export { IconBrowser as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconCheck = createReactComponent("outline", "check", "IconCheck", [["path", { "d": "M5 12l5 5l10 -10", "key": "svg-0" }]]);
12
-
13
- export { IconCheck as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconChevronLeft = createReactComponent("outline", "chevron-left", "IconChevronLeft", [["path", { "d": "M15 6l-6 6l6 6", "key": "svg-0" }]]);
12
-
13
- export { IconChevronLeft as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconChevronRight = createReactComponent("outline", "chevron-right", "IconChevronRight", [["path", { "d": "M9 6l6 6l-6 6", "key": "svg-0" }]]);
12
-
13
- export { IconChevronRight as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconCopy = createReactComponent("outline", "copy", "IconCopy", [["path", { "d": "M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z", "key": "svg-0" }], ["path", { "d": "M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1", "key": "svg-1" }]]);
12
-
13
- export { IconCopy as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconCylinder = createReactComponent("outline", "cylinder", "IconCylinder", [["path", { "d": "M12 6m-7 0a7 3 0 1 0 14 0a7 3 0 1 0 -14 0", "key": "svg-0" }], ["path", { "d": "M5 6v12c0 1.657 3.134 3 7 3s7 -1.343 7 -3v-12", "key": "svg-1" }]]);
12
-
13
- export { IconCylinder as default };
@@ -1,13 +0,0 @@
1
- import createReactComponent from '../createReactComponent.js';
2
-
3
- /**
4
- * @license @tabler/icons-react v3.31.0 - MIT
5
- *
6
- * This source code is licensed under the MIT license.
7
- * See the LICENSE file in the root directory of this source tree.
8
- */
9
-
10
-
11
- var IconDeviceMobile = createReactComponent("outline", "device-mobile", "IconDeviceMobile", [["path", { "d": "M6 5a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2v-14z", "key": "svg-0" }], ["path", { "d": "M11 4h2", "key": "svg-1" }], ["path", { "d": "M12 17v.01", "key": "svg-2" }]]);
12
-
13
- export { IconDeviceMobile as default };