@likec4/diagram 1.35.0 → 1.36.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/bundle/{chunk-C0Eg81Gj.js → chunk-DHvr-RGh.js} +323 -311
  2. package/bundle/custom.js +52 -52
  3. package/bundle/index.js +1594 -749
  4. package/dist/LikeC4Diagram.js +6 -6
  5. package/dist/LikeC4Diagram.props.d.ts +2 -3
  6. package/dist/LikeC4ModelProvider.d.ts +3 -3
  7. package/dist/LikeC4ProjectsProvider.d.ts +17 -0
  8. package/dist/LikeC4ProjectsProvider.js +22 -0
  9. package/dist/LikeC4Styles.d.ts +1 -0
  10. package/dist/LikeC4Styles.js +94 -0
  11. package/dist/StaticLikeC4Diagram.d.ts +3 -3
  12. package/dist/base/BaseXYFlow.js +23 -26
  13. package/dist/base/primitives/MarkdownBlock.d.ts +7 -1
  14. package/dist/base/primitives/MarkdownBlock.js +1 -1
  15. package/dist/base/primitives/compound/CompoundActionButton.js +2 -2
  16. package/dist/base/primitives/compound/CompoundDetailsButton.js +2 -2
  17. package/dist/base/primitives/compound/CompoundNodeContainer.css.js +4 -4
  18. package/dist/base/primitives/compound/CompoundNodeContainer.js +1 -4
  19. package/dist/base/primitives/compound/CompoundTitle.js +9 -8
  20. package/dist/base/primitives/compound/actionbtns.css.js +6 -6
  21. package/dist/base/primitives/edge/EdgeActionButton.js +2 -2
  22. package/dist/base/primitives/edge/EdgeContainer.js +4 -7
  23. package/dist/base/primitives/edge/EdgeLabel.css.d.ts +0 -22
  24. package/dist/base/primitives/edge/EdgeLabel.css.js +6 -84
  25. package/dist/base/primitives/edge/EdgeLabel.js +16 -6
  26. package/dist/base/primitives/edge/EdgeLabelContainer.js +1 -6
  27. package/dist/base/primitives/edge/EdgeMarkers.js +3 -3
  28. package/dist/base/primitives/edge/edge.css.d.ts +0 -2
  29. package/dist/base/primitives/edge/edge.css.js +1 -55
  30. package/dist/base/primitives/element/ElementActionButtons.js +2 -2
  31. package/dist/base/primitives/element/ElementDetailsButton.js +8 -7
  32. package/dist/base/primitives/element/ElementNodeContainer.css.js +4 -4
  33. package/dist/base/primitives/element/ElementNodeContainer.js +1 -4
  34. package/dist/base/primitives/element/ElementShape.css.js +11 -11
  35. package/dist/base/primitives/element/ElementTags.d.ts +1 -0
  36. package/dist/base/primitives/element/ElementTags.js +17 -14
  37. package/dist/bundle/LikeC4View.d.ts +1 -1
  38. package/dist/bundle/LikeC4View.js +7 -1
  39. package/dist/bundle/LikeC4View.props.d.ts +1 -2
  40. package/dist/bundle/ReactLikeC4.d.ts +1 -1
  41. package/dist/bundle/ViewNotFound.js +1 -1
  42. package/dist/bundle/index.d.ts +2 -1
  43. package/dist/bundle/index.js +1 -0
  44. package/dist/bundle/styles.css.js +1 -1
  45. package/dist/components/ErrorFallback.js +1 -1
  46. package/dist/components/GithubIcon.d.ts +2 -0
  47. package/dist/components/GithubIcon.js +17 -0
  48. package/dist/components/Link.d.ts +4 -3
  49. package/dist/components/Link.js +84 -87
  50. package/dist/components/NavigationLink.d.ts +2 -2
  51. package/dist/components/SearchControl.css.js +6 -5
  52. package/dist/context/DiagramEventHandlers.d.ts +6 -6
  53. package/dist/context/DiagramEventHandlers.js +4 -7
  54. package/dist/globals.css.js +3 -0
  55. package/dist/hooks/useXYFlow.d.ts +10 -10
  56. package/dist/index.d.ts +1 -0
  57. package/dist/index.js +1 -0
  58. package/dist/likec4diagram/DiagramUI.js +2 -1
  59. package/dist/likec4diagram/custom/edges/NotePopover.css.js +2 -2
  60. package/dist/likec4diagram/custom/edges/RelationshipEdge.d.ts +2 -2
  61. package/dist/likec4diagram/custom/edges/RelationshipEdge.js +1 -1
  62. package/dist/likec4diagram/custom/edges/RelationshipsDropdownMenu.css.js +7 -7
  63. package/dist/likec4diagram/custom/edges/RelationshipsDropdownMenu.js +3 -3
  64. package/dist/likec4diagram/custom/edges/edges.css.js +4 -4
  65. package/dist/likec4diagram/custom/index.d.ts +2 -2
  66. package/dist/likec4diagram/custom/nodes/toolbar/CompoundToolbar.js +2 -2
  67. package/dist/likec4diagram/ui/controls/styles.css.js +5 -5
  68. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.js +4 -4
  69. package/dist/likec4diagram/ui/notation/NotationPanel.css.js +11 -11
  70. package/dist/likec4diagram/ui/notation/NotationPanel.js +2 -5
  71. package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.css.js +10 -10
  72. package/dist/likec4model/LikeC4ModelContext.d.ts +2 -1
  73. package/dist/likec4model/LikeC4ModelContext.js +10 -2
  74. package/dist/likec4model/LikeC4ProjectsContext.d.ts +7 -0
  75. package/dist/likec4model/LikeC4ProjectsContext.js +5 -0
  76. package/dist/likec4model/index.d.ts +1 -0
  77. package/dist/likec4model/useCurrentViewModel.d.ts +1 -0
  78. package/dist/likec4model/useCurrentViewModel.js +4 -1
  79. package/dist/likec4model/useLikeC4Project.d.ts +22 -0
  80. package/dist/likec4model/useLikeC4Project.js +23 -0
  81. package/dist/navigationpanel/NavigationPanel.js +15 -17
  82. package/dist/navigationpanel/NavigationPanelControls.js +34 -21
  83. package/dist/navigationpanel/NavigationPanelDropdown.js +33 -17
  84. package/dist/navigationpanel/_common.js +4 -1
  85. package/dist/navigationpanel/actor.d.ts +11 -15
  86. package/dist/navigationpanel/actor.js +14 -15
  87. package/dist/navigationpanel/controls/BurgerButton.js +5 -7
  88. package/dist/navigationpanel/controls/NavigationButtons.js +37 -24
  89. package/dist/navigationpanel/controls/OpenSource.js +1 -1
  90. package/dist/navigationpanel/controls/SearchControl.js +6 -4
  91. package/dist/navigationpanel/controls/ToggleReadonly.js +3 -3
  92. package/dist/navigationpanel/controls/ViewDetailsCard.d.ts +2 -0
  93. package/dist/navigationpanel/controls/ViewDetailsCard.js +232 -0
  94. package/dist/navigationpanel/controls/index.d.ts +1 -0
  95. package/dist/navigationpanel/dropdown/ProjectsMenu.d.ts +2 -0
  96. package/dist/navigationpanel/dropdown/ProjectsMenu.js +75 -0
  97. package/dist/navigationpanel/editorpanel/EditorPanel.js +3 -3
  98. package/dist/navigationpanel/editorpanel/ManualLayoutToolsButton.js +19 -20
  99. package/dist/navigationpanel/editorpanel/styles.js +5 -5
  100. package/dist/navigationpanel/hooks.d.ts +2 -2
  101. package/dist/navigationpanel/styles.css.js +0 -2
  102. package/dist/navigationpanel/walkthrough/ActiveWalkthroughControls.js +12 -7
  103. package/dist/node_modules/.pnpm/@tabler_icons-react@3.34.1_react@19.1.1/node_modules/@tabler/icons-react/dist/esm/icons/IconChevronDown.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/IconLink.js +14 -0
  105. package/dist/overlays/element-details/ElementDetailsCard.css.js +18 -17
  106. package/dist/overlays/element-details/ElementDetailsCard.js +8 -13
  107. package/dist/overlays/element-details/TabPanelDeployments.css.js +5 -4
  108. package/dist/overlays/element-details/TabPanelRelationships.css.js +7 -7
  109. package/dist/overlays/overlay/Overlay.css.d.ts +3 -3
  110. package/dist/overlays/overlay/Overlay.css.js +8 -7
  111. package/dist/overlays/relationship-details/SelectEdge.css.js +8 -8
  112. package/dist/overlays/relationships-browser/SelectElement.css.js +1 -1
  113. package/dist/search/Search.js +6 -6
  114. package/dist/search/components/ElementsColumn.css.js +5 -5
  115. package/dist/search/components/SearchByTags.js +3 -2
  116. package/dist/search/components/ViewsColum.js +1 -1
  117. package/dist/search/components/ViewsColumn.css.js +1 -1
  118. package/dist/search/components/_shared.css.js +3 -3
  119. package/dist/search/components/styles.css.js +5 -5
  120. package/dist/state/DiagramActorProvider.js +43 -25
  121. package/dist/state/diagram-machine.d.ts +29 -247
  122. package/dist/state/diagram-machine.js +16 -16
  123. package/dist/styles-min.css +1 -1
  124. package/dist/styles.css +1 -1
  125. package/dist/styles.css2.js +1 -1
  126. package/package.json +10 -8
  127. package/panda.buildinfo.json +254 -326
  128. package/src/LikeC4Diagram.props.ts +2 -2
  129. package/src/LikeC4Diagram.tsx +2 -2
  130. package/src/LikeC4ModelProvider.tsx +4 -4
  131. package/src/LikeC4ProjectsProvider.tsx +41 -0
  132. package/src/LikeC4Styles.tsx +107 -0
  133. package/src/StaticLikeC4Diagram.tsx +3 -3
  134. package/src/base/BaseXYFlow.tsx +24 -29
  135. package/src/base/primitives/MarkdownBlock.tsx +11 -3
  136. package/src/base/primitives/compound/CompoundActionButton.tsx +2 -2
  137. package/src/base/primitives/compound/CompoundDetailsButton.tsx +2 -2
  138. package/src/base/primitives/compound/CompoundNodeContainer.css.ts +4 -13
  139. package/src/base/primitives/compound/CompoundNodeContainer.tsx +0 -3
  140. package/src/base/primitives/compound/CompoundTitle.tsx +8 -8
  141. package/src/base/primitives/compound/actionbtns.css.ts +6 -6
  142. package/src/base/primitives/edge/EdgeActionButton.tsx +2 -2
  143. package/src/base/primitives/edge/EdgeContainer.tsx +3 -6
  144. package/src/base/primitives/edge/EdgeLabel.css.ts +4 -83
  145. package/src/base/primitives/edge/EdgeLabel.tsx +16 -10
  146. package/src/base/primitives/edge/EdgeLabelContainer.tsx +1 -6
  147. package/src/base/primitives/edge/EdgeMarkers.tsx +3 -3
  148. package/src/base/primitives/edge/edge.css.ts +0 -60
  149. package/src/base/primitives/element/ElementActionButtons.tsx +2 -2
  150. package/src/base/primitives/element/ElementDetailsButton.tsx +7 -7
  151. package/src/base/primitives/element/ElementNodeContainer.css.ts +4 -4
  152. package/src/base/primitives/element/ElementNodeContainer.tsx +0 -3
  153. package/src/base/primitives/element/ElementShape.css.ts +11 -11
  154. package/src/base/primitives/element/ElementTags.tsx +17 -14
  155. package/src/bundle/LikeC4View.props.ts +1 -2
  156. package/src/bundle/LikeC4View.tsx +10 -3
  157. package/src/bundle/ReactLikeC4.tsx +1 -2
  158. package/src/bundle/ViewNotFound.tsx +1 -1
  159. package/src/bundle/index.ts +2 -1
  160. package/src/bundle/styles.css.ts +1 -1
  161. package/src/components/ErrorFallback.tsx +1 -1
  162. package/src/components/GithubIcon.tsx +16 -0
  163. package/src/components/Link.tsx +102 -113
  164. package/src/components/NavigationLink.tsx +2 -1
  165. package/src/components/SearchControl.css.ts +5 -5
  166. package/src/context/DiagramEventHandlers.tsx +12 -12
  167. package/src/globals.css +71 -0
  168. package/src/index.ts +5 -0
  169. package/src/likec4diagram/DiagramUI.tsx +8 -2
  170. package/src/likec4diagram/custom/edges/NotePopover.css.ts +2 -2
  171. package/src/likec4diagram/custom/edges/RelationshipEdge.tsx +1 -1
  172. package/src/likec4diagram/custom/edges/RelationshipsDropdownMenu.css.ts +7 -7
  173. package/src/likec4diagram/custom/edges/RelationshipsDropdownMenu.tsx +3 -3
  174. package/src/likec4diagram/custom/edges/edges.css.ts +4 -4
  175. package/src/likec4diagram/custom/nodes/toolbar/CompoundToolbar.tsx +2 -2
  176. package/src/likec4diagram/ui/controls/styles.css.ts +5 -5
  177. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.tsx +4 -5
  178. package/src/likec4diagram/ui/notation/NotationPanel.css.ts +11 -11
  179. package/src/likec4diagram/ui/notation/NotationPanel.tsx +1 -4
  180. package/src/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.css.ts +10 -10
  181. package/src/likec4model/{LikeC4ModelContext.ts → LikeC4ModelContext.tsx} +9 -1
  182. package/src/likec4model/LikeC4ProjectsContext.ts +9 -0
  183. package/src/likec4model/index.ts +8 -0
  184. package/src/likec4model/useCurrentViewModel.ts +4 -0
  185. package/src/likec4model/useLikeC4Project.ts +61 -0
  186. package/src/navigationpanel/NavigationPanel.tsx +16 -17
  187. package/src/navigationpanel/NavigationPanelControls.tsx +24 -46
  188. package/src/navigationpanel/NavigationPanelDropdown.tsx +32 -16
  189. package/src/navigationpanel/_common.tsx +4 -1
  190. package/src/navigationpanel/actor.ts +14 -15
  191. package/src/navigationpanel/controls/BurgerButton.tsx +5 -7
  192. package/src/navigationpanel/controls/NavigationButtons.tsx +9 -1
  193. package/src/navigationpanel/controls/OpenSource.tsx +1 -1
  194. package/src/navigationpanel/controls/SearchControl.tsx +6 -4
  195. package/src/navigationpanel/controls/ToggleReadonly.tsx +3 -3
  196. package/src/navigationpanel/controls/ViewDetailsCard.tsx +244 -0
  197. package/src/navigationpanel/controls/index.ts +1 -0
  198. package/src/navigationpanel/dropdown/ProjectsMenu.tsx +74 -0
  199. package/src/navigationpanel/editorpanel/EditorPanel.tsx +3 -3
  200. package/src/navigationpanel/editorpanel/ManualLayoutToolsButton.tsx +19 -22
  201. package/src/navigationpanel/editorpanel/styles.ts +5 -5
  202. package/src/navigationpanel/hooks.tsx +2 -2
  203. package/src/navigationpanel/styles.css.ts +0 -2
  204. package/src/navigationpanel/walkthrough/ActiveWalkthroughControls.tsx +9 -4
  205. package/src/overlays/element-details/ElementDetailsCard.css.ts +17 -17
  206. package/src/overlays/element-details/ElementDetailsCard.tsx +8 -13
  207. package/src/overlays/element-details/TabPanelDeployments.css.ts +4 -4
  208. package/src/overlays/element-details/TabPanelRelationships.css.ts +7 -7
  209. package/src/overlays/overlay/Overlay.css.ts +7 -7
  210. package/src/overlays/relationship-details/SelectEdge.css.ts +8 -8
  211. package/src/overlays/relationships-browser/SelectElement.css.ts +1 -1
  212. package/src/search/Search.tsx +6 -6
  213. package/src/search/components/ElementsColumn.css.ts +5 -5
  214. package/src/search/components/SearchByTags.tsx +2 -2
  215. package/src/search/components/ViewsColum.tsx +1 -1
  216. package/src/search/components/ViewsColumn.css.ts +1 -1
  217. package/src/search/components/_shared.css.ts +3 -3
  218. package/src/search/components/styles.css.ts +5 -5
  219. package/src/state/DiagramActorProvider.tsx +56 -30
  220. package/src/state/diagram-machine.ts +22 -16
  221. package/dist/LikeC4CustomColors.d.ts +0 -2
  222. package/dist/LikeC4CustomColors.js +0 -45
  223. package/dist/overlays/relationships-browser/custom/nodeTypes.d.ts +0 -45
  224. package/src/LikeC4CustomColors.tsx +0 -85
@@ -23,6 +23,9 @@ const TriggerWalkthroughButton = Button.withProps({
23
23
  variant: 'filled',
24
24
  size: 'xs',
25
25
  fw: '500',
26
+ className: css({
27
+ flexShrink: 0,
28
+ }),
26
29
  })
27
30
 
28
31
  export const StartWalkthroughButton = () => {
@@ -59,10 +62,10 @@ const ParallelFrame = () => {
59
62
  <Box
60
63
  css={{
61
64
  position: 'absolute',
62
- margin: 0,
63
- padding: 0,
64
- top: 0,
65
- left: 0,
65
+ margin: '0',
66
+ padding: '0',
67
+ top: '0',
68
+ left: '0',
66
69
  width: '100%',
67
70
  height: '100%',
68
71
  border: `2px solid`,
@@ -100,6 +103,7 @@ export const ActiveWalkthroughControls = () => {
100
103
  return (
101
104
  <AnimatePresence propagate>
102
105
  <TriggerWalkthroughButton
106
+ key="trigger-dynamic-walkthrough"
103
107
  variant="light"
104
108
  color="orange"
105
109
  mr={'sm'}
@@ -122,6 +126,7 @@ export const ActiveWalkthroughControls = () => {
122
126
  </PrevNextButton>
123
127
 
124
128
  <Badge
129
+ key="step-badge"
125
130
  component={m.div}
126
131
  size="md"
127
132
  radius="sm"
@@ -5,10 +5,10 @@ export const backdropOpacity = '--_opacity'
5
5
 
6
6
  export const dialog = css({
7
7
  boxSizing: 'border-box',
8
- margin: 0,
9
- padding: 0,
8
+ margin: '0',
9
+ padding: '0',
10
10
  position: 'fixed',
11
- inset: 0,
11
+ inset: '0',
12
12
  width: '100vw',
13
13
  height: '100vh',
14
14
  maxWidth: '100vw',
@@ -34,12 +34,12 @@ export const card = css({
34
34
  border: `none`,
35
35
  backgroundImage: `
36
36
  linear-gradient(180deg,
37
- color-mix(in srgb, {colors.likec4.palette.fill} 60%, transparent),
38
- color-mix(in srgb, {colors.likec4.palette.fill} 20%, transparent) 8px,
39
- color-mix(in srgb, {colors.likec4.palette.fill} 14%, transparent) 20px,
37
+ color-mix(in srgb, var(--likec4-palette-fill) 60%, transparent),
38
+ color-mix(in srgb, var(--likec4-palette-fill) 20%, transparent) 8px,
39
+ color-mix(in srgb, var(--likec4-palette-fill) 14%, transparent) 20px,
40
40
  transparent 80px
41
41
  ),
42
- linear-gradient(180deg, {colors.likec4.palette.fill}, {colors.likec4.palette.fill} 4px, transparent 4px)
42
+ linear-gradient(180deg, var(--likec4-palette-fill), var(--likec4-palette-fill) 4px, transparent 4px)
43
43
  `,
44
44
  '& .react-flow__attribution': {
45
45
  display: 'none',
@@ -99,7 +99,7 @@ export const viewButton = css({
99
99
  width: '100%',
100
100
  background: 'mantine.colors.body',
101
101
  borderRadius: 'sm',
102
- padding: `10px 8px`,
102
+ padding: `[10px 8px]`,
103
103
  // gap: 6,
104
104
  // alignItems: 'flex-start',
105
105
  transition: 'fast',
@@ -163,8 +163,8 @@ export const tabsList = css({
163
163
  background: 'mantine.colors.gray[1]',
164
164
  borderRadius: 'sm',
165
165
  flexWrap: 'nowrap',
166
- gap: '6px',
167
- padding: '4px',
166
+ gap: '1.5', // 6px
167
+ padding: '1',
168
168
  _dark: {
169
169
  background: 'mantine.colors.dark[7]',
170
170
  },
@@ -174,7 +174,7 @@ export const tabsTab = css({
174
174
  fontSize: 'xs',
175
175
  fontWeight: 500,
176
176
  flexGrow: 1,
177
- padding: '6px 8px',
177
+ padding: '[6px 8px]',
178
178
  transition: 'fast',
179
179
  borderRadius: 'sm',
180
180
  color: 'mantine.colors.gray[7]',
@@ -208,15 +208,15 @@ export const tabsPanel = css({
208
208
  overflow: 'hidden',
209
209
  position: 'relative',
210
210
  '&:not(:has(.mantine-ScrollArea-root))': {
211
- paddingLeft: '4px',
212
- paddingRight: '4px',
211
+ paddingLeft: '1',
212
+ paddingRight: '1',
213
213
  },
214
214
  '& .mantine-ScrollArea-root': {
215
215
  width: '100%',
216
216
  height: '100%',
217
217
  '& > div': {
218
- paddingLeft: '4px',
219
- paddingRight: '4px',
218
+ paddingLeft: '1',
219
+ paddingRight: '1',
220
220
  },
221
221
  },
222
222
  })
@@ -246,8 +246,8 @@ export const resizeHandle = css({
246
246
  borderTop: 'none',
247
247
  borderLeft: 'none',
248
248
  borderRadius: '2px',
249
- bottom: '2px',
250
- right: '2px',
249
+ bottom: '0.5',
250
+ right: '0.5',
251
251
  transition: 'fast',
252
252
  cursor: 'se-resize',
253
253
  _hover: {
@@ -9,6 +9,7 @@ import {
9
9
  type ViewId,
10
10
  } from '@likec4/core/types'
11
11
  import { css, cx } from '@likec4/styles/css'
12
+ import { HStack } from '@likec4/styles/jsx'
12
13
  import {
13
14
  type TextProps,
14
15
  ActionIcon,
@@ -266,12 +267,8 @@ export function ElementDetailsCard({
266
267
  dragElastic={0}
267
268
  dragMomentum={false}
268
269
  dragListener={false}
269
- className={cx(
270
- css({
271
- likec4Palette: nodeModel?.color ?? elementModel.color,
272
- }),
273
- styles.card,
274
- )}
270
+ data-likec4-color={nodeModel?.color ?? elementModel.color}
271
+ className={styles.card}
275
272
  initial={{
276
273
  top,
277
274
  left,
@@ -349,9 +346,7 @@ export function ElementDetailsCard({
349
346
  <ElementTag
350
347
  key={tag}
351
348
  tag={tag}
352
- css={{
353
- cursor: 'pointer',
354
- }}
349
+ cursor="pointer"
355
350
  onClick={e => {
356
351
  e.stopPropagation()
357
352
  diagram.openSearch(`#${tag}`)
@@ -446,9 +441,9 @@ export function ElementDetailsCard({
446
441
  {elementModel.links.length > 0 && (
447
442
  <>
448
443
  <PropertyLabel>links</PropertyLabel>
449
- <Stack gap={'xs'} align="flex-start">
444
+ <HStack gap={'xs'} flexWrap="wrap">
450
445
  {elementModel.links.map((link, i) => <Link key={i} value={link} />)}
451
- </Stack>
446
+ </HStack>
452
447
  </>
453
448
  )}
454
449
  {elementModel.$element.metadata && <ElementMetata value={elementModel.$element.metadata} />}
@@ -609,7 +604,7 @@ function ElementMetata({
609
604
  gap: `[4px 4px]`,
610
605
  alignItems: 'baseline',
611
606
  justifyItems: 'stretch',
612
- paddingRight: '2xs',
607
+ paddingRight: 'xxs',
613
608
  })}>
614
609
  {entries(metadata).map(([key, value]) => (
615
610
  <div
@@ -654,7 +649,7 @@ function ElementMetata({
654
649
  <div
655
650
  className={css({
656
651
  fontSize: 'sm',
657
- padding: '2xs',
652
+ padding: 'xxs',
658
653
  whiteSpace: 'pre',
659
654
  fontFamily: '[var(--mantine-font-family-monospace)]',
660
655
  userSelect: 'all',
@@ -8,8 +8,8 @@ export const treeNode = css({
8
8
 
9
9
  export const treeNodeLabel = css({
10
10
  cursor: 'default',
11
- marginTop: 0,
12
- marginBottom: 0,
11
+ marginTop: '0',
12
+ marginBottom: '0',
13
13
  })
14
14
 
15
15
  const label = css({
@@ -44,8 +44,8 @@ export const instanceLabel = cx(
44
44
  justifyContent: 'stretch',
45
45
  flexWrap: 'nowrap',
46
46
  height: '36px',
47
- paddingInlineStart: '16px',
48
- paddingInlineEnd: '10px',
47
+ paddingInlineStart: '[16px]',
48
+ paddingInlineEnd: '2.5', // 10px
49
49
  borderRadius: 'sm',
50
50
  alignItems: 'center',
51
51
  color: 'mantine.colors.gray[7]',
@@ -5,11 +5,11 @@ export const fqn = css({
5
5
  fontSize: 'sm',
6
6
  fontWeight: 500,
7
7
  whiteSpace: 'nowrap',
8
- padding: '3px 6px',
8
+ padding: '[3px 6px]',
9
9
  borderRadius: 3,
10
- background: `likec4.palette.fill/75`,
10
+ background: `var(--likec4-palette-fill)/75`,
11
11
  lineHeight: 1.2,
12
- color: 'likec4.palette.hiContrast',
12
+ color: 'var(--likec4-palette-hiContrast)',
13
13
  // selectors: {
14
14
  // [`${whereDark} &`]: {
15
15
  // }
@@ -55,9 +55,9 @@ export const panelScope = css({
55
55
  _before: {
56
56
  content: '"scope:"',
57
57
  position: 'absolute',
58
- top: 0,
59
- left: 8,
60
- fontSize: '2xs',
58
+ top: '0',
59
+ left: '2',
60
+ fontSize: 'xxs',
61
61
  fontWeight: 500,
62
62
  lineHeight: '1',
63
63
  color: 'mantine.colors.dimmed',
@@ -75,7 +75,7 @@ export const edgeNum = css({
75
75
  display: 'inline-block',
76
76
  fontSize: 'xl',
77
77
  fontWeight: 600,
78
- padding: '1px 5px',
78
+ padding: '[1px 5px]',
79
79
  minWidth: 24,
80
80
  textAlign: 'center',
81
81
  borderRadius: 'sm',
@@ -10,7 +10,7 @@ const inset = '--_inset'
10
10
  const borderRadius = '--_border-radius'
11
11
  const dialog = css.raw({
12
12
  boxSizing: 'border-box',
13
- margin: 0,
13
+ margin: '0',
14
14
  position: 'fixed',
15
15
  width: '100vw',
16
16
  height: '100vh',
@@ -30,13 +30,13 @@ const dialog = css.raw({
30
30
  _backdrop: {
31
31
  cursor: 'zoom-out',
32
32
  },
33
- inset: 0,
34
- padding: 0,
33
+ inset: '0',
34
+ padding: '0',
35
35
  })
36
36
 
37
37
  const body = css.raw({
38
38
  position: 'relative',
39
- containerName: 'overlay-dialog',
39
+ containerName: 'likec4-dialog',
40
40
  containerType: 'size',
41
41
  border: `0 solid transparent`,
42
42
  overflow: 'hidden',
@@ -60,7 +60,7 @@ export const overlay = sva({
60
60
  width: 'calc(100vw - 2 * var(--_inset))',
61
61
  height: 'calc(100vh - var(--_offset) - var(--_inset))',
62
62
  [borderRadius]: '6px',
63
- padding: '6px',
63
+ padding: '1.5', // 6px
64
64
  [offset]: '1rem',
65
65
  },
66
66
  md: {
@@ -81,8 +81,8 @@ export const overlay = sva({
81
81
  },
82
82
  true: {
83
83
  dialog: {
84
- inset: 0,
85
- padding: 0,
84
+ inset: '0',
85
+ padding: '0',
86
86
  },
87
87
  },
88
88
  },
@@ -3,7 +3,7 @@ import { css, cx } from '@likec4/styles/css'
3
3
  const edgeEnpoint = css.raw({
4
4
  display: 'inline-flex',
5
5
  alignItems: 'center',
6
- padding: '6px 2px 0 2px',
6
+ padding: '[6px 2px 0 2px]',
7
7
  '& .mantine-Text-root': {
8
8
  color: 'mantine.colors.text/90',
9
9
  fontSize: 'xs',
@@ -13,7 +13,7 @@ const edgeEnpoint = css.raw({
13
13
  })
14
14
 
15
15
  export const edgeSource = css({
16
- paddingLeft: 4,
16
+ paddingLeft: '1',
17
17
  gridColumn: 1,
18
18
  }, edgeEnpoint)
19
19
 
@@ -23,7 +23,7 @@ export const edgeArrow = css({
23
23
 
24
24
  export const edgeTarget = css({
25
25
  gridColumn: 3,
26
- paddingRight: 4,
26
+ paddingRight: '1',
27
27
  }, edgeEnpoint)
28
28
 
29
29
  const edgeLabelclass = 'likec4-edge-label'
@@ -35,8 +35,8 @@ export const edgeLabel = cx(
35
35
  gridColumnEnd: 4,
36
36
  borderBottom: `1px solid`,
37
37
  borderBottomColor: 'mantine.colors.defaultBorder',
38
- marginBottom: '0px',
39
- padding: '0 4px 5px 4px',
38
+ marginBottom: '0',
39
+ padding: '[0 4px 5px 4px]',
40
40
  width: '100%',
41
41
  '& .mantine-Text-root': {
42
42
  fontSize: 'xxs',
@@ -51,7 +51,7 @@ export const edgeRow = css({
51
51
  display: 'contents',
52
52
  [`&:last-child .${edgeLabelclass}`]: {
53
53
  borderBottom: 'none',
54
- marginBottom: 0,
54
+ marginBottom: '0',
55
55
  },
56
56
  '& > *': {
57
57
  transition: 'all 0.15s ease-in',
@@ -67,7 +67,7 @@ export const edgeGrid = css({
67
67
  display: 'grid',
68
68
  gridTemplateColumns: '1fr 30px 1fr',
69
69
  gridAutoRows: 'min-content max-content',
70
- gap: 0,
70
+ gap: '0',
71
71
  alignItems: 'stretch',
72
72
  })
73
73
 
@@ -75,7 +75,7 @@ export const edgeDataGrid = css({
75
75
  display: 'grid',
76
76
  gridTemplateColumns: 'min-content 1fr',
77
77
  gridAutoRows: 'min-content max-content',
78
- gap: '10px 12px',
78
+ gap: '[10px 12px]',
79
79
  alignItems: 'baseline',
80
80
  justifyItems: 'start',
81
81
  })
@@ -1,7 +1,7 @@
1
1
  import { css } from '@likec4/styles/css'
2
2
 
3
3
  export const node = css({
4
- margin: 0,
4
+ margin: '0',
5
5
  })
6
6
 
7
7
  export const label = css({
@@ -40,8 +40,8 @@ const body = css({
40
40
  // containerType: 'size',
41
41
  // position: 'fixed',
42
42
  // zIndex: 901,
43
- // top: 0,
44
- // left: 0,
43
+ // top: '0',
44
+ // left: '0',
45
45
  width: '100%',
46
46
  height: '100%',
47
47
  maxHeight: '100vh',
@@ -50,10 +50,10 @@ const body = css({
50
50
  flexDirection: 'column',
51
51
  justifyContent: 'stretch',
52
52
  gap: 'sm',
53
- paddingTop: 20,
54
- paddingLeft: 16,
55
- paddingRight: 16,
56
- paddingBottom: 8,
53
+ paddingTop: '[20px]',
54
+ paddingLeft: 'md',
55
+ paddingRight: 'md',
56
+ paddingBottom: 'sm',
57
57
  background: '[transparent]',
58
58
  // backgroundColor: {
59
59
  // _dark: `[rgb(34 34 34 / 0.95)]`,
@@ -7,7 +7,7 @@ const whenContainerIsNarrow = `@container likec4-tree (max-width: 450px)`
7
7
 
8
8
  export const treeNode = css({
9
9
  outline: 'none',
10
- marginBottom: '8px',
10
+ marginBottom: '2',
11
11
  })
12
12
  export const treeRoot = css(
13
13
  container.raw({
@@ -22,10 +22,10 @@ export const treeLabel = css({
22
22
  display: 'flex',
23
23
  alignItems: 'baseline',
24
24
  outline: 'none !important',
25
- gap: '4px',
25
+ gap: '1',
26
26
  })
27
27
  export const treeSubtree = css({
28
- marginTop: '8px',
28
+ marginTop: '2',
29
29
  })
30
30
 
31
31
  // const iconSize = '--likec4-icon-size'
@@ -44,7 +44,7 @@ export const elementTitleAndId = css({
44
44
  [whenContainerIsNarrow]: {
45
45
  flexDirection: 'column-reverse',
46
46
  alignItems: 'flex-start',
47
- gap: 2,
47
+ gap: '0.5',
48
48
  },
49
49
  })
50
50
 
@@ -56,7 +56,7 @@ export const elementId = css({
56
56
  display: 'block',
57
57
  fontWeight: 500,
58
58
  whiteSpace: 'nowrap',
59
- padding: '1px 5px',
59
+ padding: '[1px 5px]',
60
60
  borderRadius: '4px',
61
61
  background: `mantine.colors.dark[9]/30`,
62
62
  _light: {
@@ -29,13 +29,13 @@ export function SearchByTags() {
29
29
  ref={ref}
30
30
  css={{
31
31
  gap: 'md',
32
- paddingLeft: 48,
32
+ paddingLeft: '[48px]',
33
33
  flexWrap: 'nowrap',
34
34
  }}
35
35
  >
36
36
  <HStack
37
37
  css={{
38
- gap: 6,
38
+ gap: '1.5', // 6px
39
39
  flexWrap: 'wrap',
40
40
  opacity: isFiltered ? 1 : .3,
41
41
  grayscale: isFiltered ? 0 : .9,
@@ -43,7 +43,7 @@ export const ViewsColumn = memo(() => {
43
43
  if (search.startsWith('#')) {
44
44
  return view.tags.some((tag) => tag.toLocaleLowerCase().includes(search.slice(1)))
45
45
  }
46
- return (view.title ?? '' + view.$view.description ?? '').toLocaleLowerCase().includes(search)
46
+ return `${view.title} ${view.$view.description}`.toLocaleLowerCase().includes(search)
47
47
  })
48
48
  }
49
49
  }
@@ -23,7 +23,7 @@ export const viewButton = cx(
23
23
  // export const viewDescription = css(description)
24
24
 
25
25
  export const viewButtonDescription = css({
26
- marginTop: '4px',
26
+ marginTop: '1',
27
27
  // transition: transitions.fast,
28
28
  // color: `[var(${descriptionColor}, {colors.mantine.colors.dimmed})]`,
29
29
  fontSize: '13px',
@@ -17,9 +17,9 @@ const button = css.raw({
17
17
  width: '100%',
18
18
  background: 'mantine.colors.body',
19
19
  rounded: 'sm',
20
- padding: `12px 8px 12px 14px`,
20
+ padding: `[12px 8px 12px 14px]`,
21
21
  minHeight: '60px',
22
- gap: 8,
22
+ gap: '2',
23
23
  // alignItems: 'flex-start',
24
24
  // transition: `all 50ms ${easings.inOut}`,
25
25
  border: `1px solid`,
@@ -139,7 +139,7 @@ const descriptionColor = css.raw({
139
139
  })
140
140
 
141
141
  const description = css.raw(descriptionColor, {
142
- marginTop: '4px',
142
+ marginTop: '1',
143
143
  fontSize: '12px',
144
144
  lineHeight: '1.4',
145
145
 
@@ -18,7 +18,7 @@ export const input = css({
18
18
 
19
19
  export const pickviewBackdrop = css({
20
20
  position: 'absolute',
21
- inset: 0,
21
+ inset: '0',
22
22
  width: '100%',
23
23
  height: '100%',
24
24
  backgroundColor: '[rgb(34 34 34 / 0.7)]',
@@ -31,8 +31,8 @@ export const pickviewBackdrop = css({
31
31
  })
32
32
  export const pickview = css({
33
33
  position: 'absolute',
34
- top: '2rem',
35
- left: '50%',
34
+ top: '[2rem]',
35
+ left: '[50%]',
36
36
  width: '100%',
37
37
  maxWidth: '600px',
38
38
  minWidth: '200px',
@@ -41,9 +41,9 @@ export const pickview = css({
41
41
  })
42
42
 
43
43
  export const pickviewGroup = css({
44
- marginTop: '8px',
44
+ marginTop: '2',
45
45
  '& + &': {
46
- marginTop: '32px',
46
+ marginTop: '[32px]',
47
47
  },
48
48
  })
49
49