@likec4/styles 1.47.0 → 1.49.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 (147) hide show
  1. package/LICENSE +1 -1
  2. package/css/package.json +1 -1
  3. package/dev.d.mts +3 -0
  4. package/{dev.ts → dev.mjs} +8 -4
  5. package/dist/css/conditions.mjs +1 -1
  6. package/dist/css/{css.d.ts → css.d.mts} +1 -1
  7. package/dist/css/{cva.d.ts → cva.d.mts} +2 -2
  8. package/dist/css/index.d.mts +5 -0
  9. package/dist/css/sva.d.mts +4 -0
  10. package/dist/jsx/{aspect-ratio.d.ts → aspect-ratio.d.mts} +3 -3
  11. package/dist/jsx/bleed.d.mts +10 -0
  12. package/dist/jsx/box.d.mts +10 -0
  13. package/dist/jsx/center.d.mts +10 -0
  14. package/dist/jsx/circle.d.mts +10 -0
  15. package/dist/jsx/{container.d.ts → container.d.mts} +3 -3
  16. package/dist/jsx/cq.d.mts +10 -0
  17. package/dist/jsx/{create-style-context.d.ts → create-style-context.d.mts} +3 -3
  18. package/dist/jsx/divider.d.mts +10 -0
  19. package/dist/jsx/factory.d.mts +3 -0
  20. package/dist/jsx/flex.d.mts +10 -0
  21. package/dist/jsx/float.d.mts +10 -0
  22. package/dist/jsx/grid-item.d.mts +10 -0
  23. package/dist/jsx/grid.d.mts +10 -0
  24. package/dist/jsx/hstack.d.mts +10 -0
  25. package/dist/jsx/index.d.mts +26 -0
  26. package/dist/jsx/index.mjs +2 -1
  27. package/dist/jsx/is-valid-prop.mjs +1 -1
  28. package/dist/jsx/{link-overlay.d.ts → link-overlay.d.mts} +3 -3
  29. package/dist/jsx/spacer.d.mts +10 -0
  30. package/dist/jsx/square.d.mts +10 -0
  31. package/dist/jsx/stack.d.mts +10 -0
  32. package/dist/jsx/txt.d.mts +10 -0
  33. package/dist/jsx/txt.mjs +14 -0
  34. package/dist/jsx/{visually-hidden.d.ts → visually-hidden.d.mts} +3 -3
  35. package/dist/jsx/vstack.d.mts +10 -0
  36. package/dist/jsx/wrap.d.mts +10 -0
  37. package/dist/patterns/{aspect-ratio.d.ts → aspect-ratio.d.mts} +5 -5
  38. package/dist/patterns/{bleed.d.ts → bleed.d.mts} +5 -5
  39. package/dist/patterns/{box.d.ts → box.d.mts} +5 -5
  40. package/dist/patterns/{center.d.ts → center.d.mts} +5 -5
  41. package/dist/patterns/{circle.d.ts → circle.d.mts} +5 -5
  42. package/dist/patterns/{container.d.ts → container.d.mts} +5 -5
  43. package/dist/patterns/{cq.d.ts → cq.d.mts} +5 -5
  44. package/dist/patterns/{divider.d.ts → divider.d.mts} +5 -5
  45. package/dist/patterns/{flex.d.ts → flex.d.mts} +5 -5
  46. package/dist/patterns/{float.d.ts → float.d.mts} +5 -5
  47. package/dist/patterns/{grid-item.d.ts → grid-item.d.mts} +5 -5
  48. package/dist/patterns/{grid.d.ts → grid.d.mts} +5 -5
  49. package/dist/patterns/{hstack.d.ts → hstack.d.mts} +5 -5
  50. package/dist/patterns/index.d.mts +22 -0
  51. package/dist/patterns/index.mjs +2 -1
  52. package/dist/patterns/{link-overlay.d.ts → link-overlay.d.mts} +5 -5
  53. package/dist/patterns/{spacer.d.ts → spacer.d.mts} +5 -5
  54. package/dist/patterns/{square.d.ts → square.d.mts} +5 -5
  55. package/dist/patterns/{stack.d.ts → stack.d.mts} +5 -5
  56. package/dist/patterns/txt.d.mts +24 -0
  57. package/dist/patterns/txt.mjs +28 -0
  58. package/dist/patterns/{visually-hidden.d.ts → visually-hidden.d.mts} +5 -5
  59. package/dist/patterns/{vstack.d.ts → vstack.d.mts} +5 -5
  60. package/dist/patterns/{wrap.d.ts → wrap.d.mts} +5 -5
  61. package/dist/recipes/{action-btn.d.ts → action-btn.d.mts} +2 -2
  62. package/dist/recipes/action-buttons.d.mts +33 -0
  63. package/dist/recipes/action-buttons.mjs +24 -0
  64. package/dist/recipes/{compound-node.d.ts → compound-node.d.mts} +12 -3
  65. package/dist/recipes/compound-node.mjs +5 -1
  66. package/dist/recipes/{edge-action-btn.d.ts → edge-action-btn.d.mts} +2 -2
  67. package/dist/recipes/{edge-label.d.ts → edge-label.d.mts} +2 -2
  68. package/dist/recipes/{edge-path.d.ts → edge-path.d.mts} +2 -2
  69. package/dist/recipes/{element-node-data.d.ts → element-node-data.d.mts} +10 -3
  70. package/dist/recipes/element-node-data.mjs +16 -2
  71. package/dist/recipes/{element-node.d.ts → element-node.d.mts} +2 -2
  72. package/dist/recipes/{element-shape-recipe.d.ts → element-shape-recipe.d.mts} +6 -2
  73. package/dist/recipes/element-shape-recipe.mjs +6 -1
  74. package/dist/recipes/index.d.mts +17 -0
  75. package/dist/recipes/index.mjs +2 -0
  76. package/dist/recipes/{likec4tag.d.ts → likec4tag.d.mts} +2 -2
  77. package/dist/recipes/{markdown-block.d.ts → markdown-block.d.mts} +2 -2
  78. package/dist/recipes/{navigation-link.d.ts → navigation-link.d.mts} +2 -2
  79. package/dist/recipes/{navigation-panel-action-icon.d.ts → navigation-panel-action-icon.d.mts} +2 -2
  80. package/dist/recipes/{navigation-panel.d.ts → navigation-panel.d.mts} +6 -2
  81. package/dist/recipes/navigation-panel.mjs +8 -2
  82. package/dist/recipes/node-notes.d.mts +34 -0
  83. package/dist/recipes/node-notes.mjs +31 -0
  84. package/dist/recipes/{overlay.d.ts → overlay.d.mts} +2 -2
  85. package/dist/tokens/{index.d.ts → index.d.mts} +2 -2
  86. package/dist/tokens/index.mjs +328 -184
  87. package/dist/tokens/tokens.d.mts +54 -0
  88. package/dist/types/{composition.d.ts → composition.d.mts} +4 -1
  89. package/dist/types/{conditions.d.ts → conditions.d.mts} +4 -6
  90. package/dist/types/{global.d.ts → global.d.mts} +5 -5
  91. package/dist/types/index.d.mts +8 -0
  92. package/dist/types/{jsx.d.ts → jsx.d.mts} +2 -2
  93. package/dist/types/{pattern.d.ts → pattern.d.mts} +2 -2
  94. package/dist/types/{prop-type.d.ts → prop-type.d.mts} +21 -5
  95. package/dist/types/{recipe.d.ts → recipe.d.mts} +2 -2
  96. package/dist/types/{selectors.d.ts → selectors.d.mts} +1 -1
  97. package/dist/types/{style-props.d.ts → style-props.d.mts} +59 -59
  98. package/dist/types/{system-types.d.ts → system-types.d.mts} +3 -3
  99. package/jsx/package.json +1 -1
  100. package/package.json +42 -34
  101. package/patterns/package.json +1 -1
  102. package/preset/_chunks/libs/@radix-ui/colors.mjs +3784 -0
  103. package/preset/_chunks/libs/pandacss-preset-radix-colors.mjs +147 -0
  104. package/preset/_chunks/libs/remeda.mjs +120 -0
  105. package/preset/_chunks/rolldown-runtime.mjs +11 -0
  106. package/preset/package.json +2 -2
  107. package/preset/preset.d.mts +1466 -0
  108. package/preset/preset.mjs +3943 -0
  109. package/recipes/package.json +1 -1
  110. package/tokens/package.json +1 -1
  111. package/types/package.json +1 -1
  112. package/vars/package.json +4 -0
  113. package/vars/vars.d.mts +417 -0
  114. package/vars/vars.mjs +415 -0
  115. package/dist/css/index.d.ts +0 -5
  116. package/dist/css/sva.d.ts +0 -4
  117. package/dist/jsx/bleed.d.ts +0 -10
  118. package/dist/jsx/box.d.ts +0 -10
  119. package/dist/jsx/center.d.ts +0 -10
  120. package/dist/jsx/circle.d.ts +0 -10
  121. package/dist/jsx/cq.d.ts +0 -10
  122. package/dist/jsx/divider.d.ts +0 -10
  123. package/dist/jsx/factory.d.ts +0 -3
  124. package/dist/jsx/flex.d.ts +0 -10
  125. package/dist/jsx/float.d.ts +0 -10
  126. package/dist/jsx/grid-item.d.ts +0 -10
  127. package/dist/jsx/grid.d.ts +0 -10
  128. package/dist/jsx/hstack.d.ts +0 -10
  129. package/dist/jsx/index.d.ts +0 -25
  130. package/dist/jsx/spacer.d.ts +0 -10
  131. package/dist/jsx/square.d.ts +0 -10
  132. package/dist/jsx/stack.d.ts +0 -10
  133. package/dist/jsx/vstack.d.ts +0 -10
  134. package/dist/jsx/wrap.d.ts +0 -10
  135. package/dist/patterns/index.d.ts +0 -21
  136. package/dist/preset.d.mts +0 -1232
  137. package/dist/preset.mjs +0 -7553
  138. package/dist/recipes/index.d.ts +0 -15
  139. package/dist/tokens/tokens.d.ts +0 -51
  140. package/dist/types/index.d.ts +0 -8
  141. package/panda.config.ts +0 -10
  142. package/preset.ts +0 -3
  143. /package/dist/css/{cx.d.ts → cx.d.mts} +0 -0
  144. /package/dist/jsx/{is-valid-prop.d.ts → is-valid-prop.d.mts} +0 -0
  145. /package/dist/types/{csstype.d.ts → csstype.d.mts} +0 -0
  146. /package/dist/types/{parts.d.ts → parts.d.mts} +0 -0
  147. /package/dist/types/{static-css.d.ts → static-css.d.mts} +0 -0
@@ -0,0 +1,3943 @@
1
+ import { t as __exportAll } from "./_chunks/rolldown-runtime.mjs";
2
+ import { a as t$6, c as t$2, i as t$4, l as t$1, n as t$3, o as e$1, r as t$5, s as t, t as e } from "./_chunks/libs/remeda.mjs";
3
+ import { a as grass, c as orange, d as red, f as ruby, g as yellow, h as violet, i as crimson, l as pink, m as tomato, n as blue$2, o as indigo, p as teal, s as lime, t as amber, u as purple } from "./_chunks/libs/@radix-ui/colors.mjs";
4
+ import { t as createPreset } from "./_chunks/libs/pandacss-preset-radix-colors.mjs";
5
+ import { defineAnimationStyles, defineKeyframes, defineLayerStyles, defineParts, definePattern, definePreset, defineRecipe, defineSemanticTokens, defineSlotRecipe, defineTextStyles, defineTokens, defineUtility } from "@pandacss/dev";
6
+ const keyframes = defineKeyframes({
7
+ "indicatorOpacity": {
8
+ "0%": { opacity: .8 },
9
+ "100%": { opacity: .3 }
10
+ },
11
+ "xyedgeAnimated": {
12
+ "0%": { strokeDashoffset: 36 },
13
+ "100%": { strokeDashoffset: 0 }
14
+ }
15
+ });
16
+ const animationStyles = defineAnimationStyles({
17
+ "indicator": { value: {
18
+ animationDuration: ".8s",
19
+ animationIterationCount: "infinite",
20
+ animationDirection: "alternate",
21
+ animationName: "indicatorOpacity",
22
+ animationTimingFunction: "{easings.in}"
23
+ } },
24
+ "xyedgeAnimated": { value: {
25
+ animationDuration: ".8s",
26
+ animationIterationCount: "infinite",
27
+ animationTimingFunction: "linear",
28
+ animationFillMode: "both",
29
+ animationName: "xyedgeAnimated"
30
+ } }
31
+ });
32
+ const vars = {
33
+ font: "--likec4-app-font",
34
+ spacing: "--likec4-spacing",
35
+ textsize: "--likec4-text-size",
36
+ palette: {
37
+ fill: "--likec4-palette-fill",
38
+ stroke: "--likec4-palette-stroke",
39
+ hiContrast: "--likec4-palette-hiContrast",
40
+ loContrast: "--likec4-palette-loContrast",
41
+ relationStroke: "--likec4-palette-relation-stroke",
42
+ relationStrokeSelected: "--likec4-palette-relation-stroke-selected",
43
+ relationLabel: "--likec4-palette-relation-label",
44
+ relationLabelBg: "--likec4-palette-relation-label-bg",
45
+ outline: "--likec4-palette-outline"
46
+ },
47
+ icon: {
48
+ size: "--likec4-icon-size",
49
+ color: "--likec4-icon-color"
50
+ }
51
+ };
52
+ function readName(key) {
53
+ let path = key.includes(".") ? key.split(".") : [key];
54
+ if (!t(path, 1)) return;
55
+ let name = e(vars, ...path);
56
+ return e$1(name) ? name : void 0;
57
+ }
58
+ function __v(key, defaultTo) {
59
+ let name = readName(key);
60
+ if (!name) throw new Error(`Unknown var: ${key}`);
61
+ if (!defaultTo) return `var(${name})`;
62
+ const defaultValue = readName(defaultTo);
63
+ if (defaultValue) return `var(${name}, var(${defaultValue}))`;
64
+ return `var(${name}, ${defaultTo})`;
65
+ }
66
+ const root = ".likec4-root";
67
+ `${root}`;
68
+ const blue$1 = {
69
+ fill: "#3b82f6",
70
+ stroke: "#2563eb",
71
+ hiContrast: "#eff6ff",
72
+ loContrast: "#bfdbfe"
73
+ };
74
+ const sky$1 = {
75
+ fill: "#0284c7",
76
+ stroke: "#0369a1",
77
+ hiContrast: "#f0f9ff",
78
+ loContrast: "#B6ECF7"
79
+ };
80
+ const slate$1 = {
81
+ fill: "#64748b",
82
+ stroke: "#475569",
83
+ hiContrast: "#f8fafc",
84
+ loContrast: "#cbd5e1"
85
+ };
86
+ const ElementColors = {
87
+ primary: blue$1,
88
+ blue: blue$1,
89
+ secondary: sky$1,
90
+ sky: sky$1,
91
+ muted: slate$1,
92
+ slate: slate$1,
93
+ gray: {
94
+ fill: "#737373",
95
+ stroke: "#525252",
96
+ hiContrast: "#fafafa",
97
+ loContrast: "#d4d4d4"
98
+ },
99
+ red: {
100
+ fill: "#AC4D39",
101
+ stroke: "#853A2D",
102
+ hiContrast: "#FBD3CB",
103
+ loContrast: "#f5b2a3"
104
+ },
105
+ green: {
106
+ fill: "#428a4f",
107
+ stroke: "#2d5d39",
108
+ hiContrast: "#f8fafc",
109
+ loContrast: "#c2f0c2"
110
+ },
111
+ amber: {
112
+ fill: "#A35829",
113
+ stroke: "#7E451D",
114
+ hiContrast: "#FFE0C2",
115
+ loContrast: "#f9b27c"
116
+ },
117
+ indigo: {
118
+ fill: "#6366f1",
119
+ stroke: "#4f46e5",
120
+ hiContrast: "#eef2ff",
121
+ loContrast: "#c7d2fe"
122
+ }
123
+ };
124
+ const gray = {
125
+ line: "#8D8D8D",
126
+ labelBg: "#18191B",
127
+ label: "#C9C9C9"
128
+ };
129
+ const slate = {
130
+ line: "#64748b",
131
+ labelBg: "#0f172a",
132
+ label: "#cbd5e1"
133
+ };
134
+ const blue = {
135
+ line: "#3b82f6",
136
+ labelBg: "#172554",
137
+ label: "#60a5fa"
138
+ };
139
+ const sky = {
140
+ line: "#0ea5e9",
141
+ labelBg: "#082f49",
142
+ label: "#38bdf8"
143
+ };
144
+ const RelationshipColors = {
145
+ amber: {
146
+ line: "#b45309",
147
+ labelBg: "#78350f",
148
+ label: "#FFE0C2"
149
+ },
150
+ blue,
151
+ gray,
152
+ green: {
153
+ line: "#15803d",
154
+ labelBg: "#052e16",
155
+ label: "#22c55e"
156
+ },
157
+ indigo: {
158
+ line: "#6366f1",
159
+ labelBg: "#1e1b4b",
160
+ label: "#818cf8"
161
+ },
162
+ muted: slate,
163
+ primary: blue,
164
+ red: {
165
+ line: "#AC4D39",
166
+ labelBg: "#b91c1c",
167
+ label: "#f5b2a3"
168
+ },
169
+ secondary: sky,
170
+ sky,
171
+ slate
172
+ };
173
+ const defaultSizes = {
174
+ sizes: {
175
+ xs: {
176
+ width: 180,
177
+ height: 100
178
+ },
179
+ sm: {
180
+ width: 240,
181
+ height: 135
182
+ },
183
+ md: {
184
+ width: 320,
185
+ height: 180
186
+ },
187
+ lg: {
188
+ width: 420,
189
+ height: 234
190
+ },
191
+ xl: {
192
+ width: 520,
193
+ height: 290
194
+ }
195
+ },
196
+ spacing: {
197
+ xs: 8,
198
+ sm: 10,
199
+ md: 16,
200
+ lg: 24,
201
+ xl: 32
202
+ },
203
+ textSizes: {
204
+ xs: 13.33,
205
+ sm: 16,
206
+ md: 19.2,
207
+ lg: 23.04,
208
+ xl: 27.65
209
+ },
210
+ iconSizes: {
211
+ xs: 24,
212
+ sm: 36,
213
+ md: 60,
214
+ lg: 82,
215
+ xl: 90
216
+ }
217
+ };
218
+ const ElementShapes = [
219
+ "rectangle",
220
+ "person",
221
+ "browser",
222
+ "mobile",
223
+ "cylinder",
224
+ "storage",
225
+ "queue",
226
+ "bucket",
227
+ "document",
228
+ "component"
229
+ ];
230
+ const ThemeColors = [
231
+ "amber",
232
+ "blue",
233
+ "gray",
234
+ "slate",
235
+ "green",
236
+ "indigo",
237
+ "muted",
238
+ "primary",
239
+ "red",
240
+ "secondary",
241
+ "sky"
242
+ ];
243
+ const DefaultTagColors = [
244
+ "tomato",
245
+ "grass",
246
+ "blue",
247
+ "ruby",
248
+ "orange",
249
+ "indigo",
250
+ "pink",
251
+ "teal",
252
+ "purple",
253
+ "amber",
254
+ "crimson",
255
+ "red",
256
+ "lime",
257
+ "yellow",
258
+ "violet"
259
+ ];
260
+ tomato.tomato9, grass.grass9, blue$2.blue9, ruby.ruby9, orange.orange9, indigo.indigo9, pink.pink9, teal.teal9, purple.purple9, amber.amber9, crimson.crimson9, red.red9, lime.lime9, yellow.yellow9, violet.violet9;
261
+ const defaultTheme = {
262
+ colors: ThemeColors.reduce((acc, key) => {
263
+ acc[key] = {
264
+ elements: ElementColors[key],
265
+ relationships: RelationshipColors[key]
266
+ };
267
+ return acc;
268
+ }, {}),
269
+ ...defaultSizes
270
+ };
271
+ const shapeSizeCondition = (key) => `shapeSize${t$1(key)}`;
272
+ const conditions = { extend: {
273
+ ...t$2(defaultTheme.sizes, t$3((_, key) => `:where([data-likec4-shape-size='${key}']) &`), t$4(shapeSizeCondition)),
274
+ ...t$5(ElementShapes, (shape) => ["shape" + t$1(shape), `:where([data-likec4-shape='${shape}']) &`]),
275
+ light: "[data-mantine-color-scheme=\"light\"] &",
276
+ dark: "[data-mantine-color-scheme=\"dark\"] &",
277
+ notDisabled: "&:not(:is(:disabled, [disabled], [data-disabled]))",
278
+ reduceGraphics: [`${root}:is([data-likec4-reduced-graphics])`, " &"].join(""),
279
+ reduceGraphicsOnPan: [
280
+ `${root}:is(`,
281
+ "[data-likec4-reduced-graphics]",
282
+ "[data-likec4-diagram-panning=\"true\"]",
283
+ ") &"
284
+ ].join(""),
285
+ noReduceGraphics: [
286
+ `${root}:not(`,
287
+ "[data-likec4-reduced-graphics]",
288
+ ") &"
289
+ ].join(""),
290
+ whenPanning: `${root}:is([data-likec4-diagram-panning="true"]) &`,
291
+ smallZoom: ":where([data-likec4-zoom-small=\"true\"]) &",
292
+ compoundTransparent: ":where([data-compound-transparent]) &",
293
+ edgeActive: ":where([data-likec4-edge-active=\"true\"]) &",
294
+ whenHovered: ":where([data-likec4-hovered=\"true\"]) &",
295
+ whenSelectable: ":where(.react-flow__node, .react-flow__edge, .likec4-edge-container):is(.selectable) &",
296
+ whenSelected: ":where(.react-flow__node, .react-flow__edge, .likec4-edge-container):is(.selected) &",
297
+ whenDimmed: ":where(.react-flow__node, .react-flow__edge):has([data-likec4-dimmed]) &",
298
+ whenFocused: ":where(.react-flow__node, .react-flow__edge):is(:focus-visible, :focus, :focus-within) &"
299
+ } };
300
+ const breakpoints = {
301
+ xs: "36em",
302
+ sm: "48em",
303
+ md: "62em",
304
+ lg: "75em",
305
+ xl: "88em"
306
+ };
307
+ const tokens$1 = { colors: { mantine: { colors: {
308
+ primary: {
309
+ DEFAULT: {
310
+ description: "Mantine color primaryColors",
311
+ value: "var(--mantine-primary-color-6)"
312
+ },
313
+ filled: {
314
+ description: "Mantine color primaryColors filled",
315
+ value: "var(--mantine-primary-color-filled)"
316
+ },
317
+ filledHover: {
318
+ description: "Mantine color primaryColors filled hover",
319
+ value: "var(--mantine-primary-color-filled-hover)"
320
+ },
321
+ light: {
322
+ description: "Mantine color primaryColors light",
323
+ value: "var(--mantine-primary-color-light)"
324
+ },
325
+ lightHover: {
326
+ description: "Mantine color primaryColors light hover",
327
+ value: "var(--mantine-primary-color-light-hover)"
328
+ },
329
+ lightColor: {
330
+ description: "Mantine color primaryColors light color",
331
+ value: "var(--mantine-primary-color-light-color)"
332
+ },
333
+ outline: {
334
+ description: "Mantine color primaryColors outline",
335
+ value: "var(--mantine-primary-color-outline)"
336
+ },
337
+ outlineHover: {
338
+ description: "Mantine color primaryColors outline hover",
339
+ value: "var(--mantine-primary-color-outline-hover)"
340
+ }
341
+ },
342
+ "primary[0]": {
343
+ description: "Mantine color primaryColors.0",
344
+ value: "var(--mantine-primary-color-0)"
345
+ },
346
+ "primary[1]": {
347
+ description: "Mantine color primaryColors.1",
348
+ value: "var(--mantine-primary-color-1)"
349
+ },
350
+ "primary[2]": {
351
+ description: "Mantine color primaryColors.2",
352
+ value: "var(--mantine-primary-color-2)"
353
+ },
354
+ "primary[3]": {
355
+ description: "Mantine color primaryColors.3",
356
+ value: "var(--mantine-primary-color-3)"
357
+ },
358
+ "primary[4]": {
359
+ description: "Mantine color primaryColors.4",
360
+ value: "var(--mantine-primary-color-4)"
361
+ },
362
+ "primary[5]": {
363
+ description: "Mantine color primaryColors.5",
364
+ value: "var(--mantine-primary-color-5)"
365
+ },
366
+ "primary[6]": {
367
+ description: "Mantine color primaryColors.6",
368
+ value: "var(--mantine-primary-color-6)"
369
+ },
370
+ "primary[7]": {
371
+ description: "Mantine color primaryColors.7",
372
+ value: "var(--mantine-primary-color-7)"
373
+ },
374
+ "primary[8]": {
375
+ description: "Mantine color primaryColors.8",
376
+ value: "var(--mantine-primary-color-8)"
377
+ },
378
+ "primary[9]": {
379
+ description: "Mantine color primaryColors.9",
380
+ value: "var(--mantine-primary-color-9)"
381
+ },
382
+ white: { value: "var(--mantine-color-white)" },
383
+ text: { value: "var(--mantine-color-text)" },
384
+ body: { value: "var(--mantine-color-body)" },
385
+ dimmed: { value: "var(--mantine-color-dimmed)" },
386
+ defaultBorder: { value: "var(--mantine-color-default-border)" },
387
+ defaultColor: { value: "var(--mantine-color-default-color)" },
388
+ defaultHover: { value: "var(--mantine-color-default-hover)" },
389
+ default: { value: "var(--mantine-color-default)" },
390
+ error: { value: "var(--mantine-color-error)" },
391
+ placeholder: { value: "var(--mantine-color-placeholder)" },
392
+ gray: {
393
+ DEFAULT: {
394
+ description: "Mantine color gray",
395
+ value: "var(--mantine-color-gray-6)"
396
+ },
397
+ filled: {
398
+ description: "Mantine color gray filled",
399
+ value: "var(--mantine-color-gray-filled)"
400
+ },
401
+ filledHover: {
402
+ description: "Mantine color gray filled hover",
403
+ value: "var(--mantine-color-gray-filled-hover)"
404
+ },
405
+ light: {
406
+ description: "Mantine color gray light",
407
+ value: "var(--mantine-color-gray-light)"
408
+ },
409
+ lightHover: {
410
+ description: "Mantine color gray light hover",
411
+ value: "var(--mantine-color-gray-light-hover)"
412
+ },
413
+ lightColor: {
414
+ description: "Mantine color gray light color",
415
+ value: "var(--mantine-color-gray-light-color)"
416
+ },
417
+ outline: {
418
+ description: "Mantine color gray outline",
419
+ value: "var(--mantine-color-gray-outline)"
420
+ },
421
+ outlineHover: {
422
+ description: "Mantine color gray outline hover",
423
+ value: "var(--mantine-color-gray-outline-hover)"
424
+ }
425
+ },
426
+ "gray[0]": {
427
+ description: "Mantine color gray.0",
428
+ value: "var(--mantine-color-gray-0)"
429
+ },
430
+ "gray[1]": {
431
+ description: "Mantine color gray.1",
432
+ value: "var(--mantine-color-gray-1)"
433
+ },
434
+ "gray[2]": {
435
+ description: "Mantine color gray.2",
436
+ value: "var(--mantine-color-gray-2)"
437
+ },
438
+ "gray[3]": {
439
+ description: "Mantine color gray.3",
440
+ value: "var(--mantine-color-gray-3)"
441
+ },
442
+ "gray[4]": {
443
+ description: "Mantine color gray.4",
444
+ value: "var(--mantine-color-gray-4)"
445
+ },
446
+ "gray[5]": {
447
+ description: "Mantine color gray.5",
448
+ value: "var(--mantine-color-gray-5)"
449
+ },
450
+ "gray[6]": {
451
+ description: "Mantine color gray.6",
452
+ value: "var(--mantine-color-gray-6)"
453
+ },
454
+ "gray[7]": {
455
+ description: "Mantine color gray.7",
456
+ value: "var(--mantine-color-gray-7)"
457
+ },
458
+ "gray[8]": {
459
+ description: "Mantine color gray.8",
460
+ value: "var(--mantine-color-gray-8)"
461
+ },
462
+ "gray[9]": {
463
+ description: "Mantine color gray.9",
464
+ value: "var(--mantine-color-gray-9)"
465
+ },
466
+ dark: {
467
+ DEFAULT: {
468
+ description: "Mantine color dark",
469
+ value: "var(--mantine-color-dark-6)"
470
+ },
471
+ filled: {
472
+ description: "Mantine color dark filled",
473
+ value: "var(--mantine-color-dark-filled)"
474
+ },
475
+ filledHover: {
476
+ description: "Mantine color dark filled hover",
477
+ value: "var(--mantine-color-dark-filled-hover)"
478
+ },
479
+ light: {
480
+ description: "Mantine color dark light",
481
+ value: "var(--mantine-color-dark-light)"
482
+ },
483
+ lightHover: {
484
+ description: "Mantine color dark light hover",
485
+ value: "var(--mantine-color-dark-light-hover)"
486
+ },
487
+ lightColor: {
488
+ description: "Mantine color dark light color",
489
+ value: "var(--mantine-color-dark-light-color)"
490
+ },
491
+ outline: {
492
+ description: "Mantine color dark outline",
493
+ value: "var(--mantine-color-dark-outline)"
494
+ },
495
+ outlineHover: {
496
+ description: "Mantine color dark outline hover",
497
+ value: "var(--mantine-color-dark-outline-hover)"
498
+ }
499
+ },
500
+ "dark[0]": {
501
+ description: "Mantine color dark.0",
502
+ value: "var(--mantine-color-dark-0)"
503
+ },
504
+ "dark[1]": {
505
+ description: "Mantine color dark.1",
506
+ value: "var(--mantine-color-dark-1)"
507
+ },
508
+ "dark[2]": {
509
+ description: "Mantine color dark.2",
510
+ value: "var(--mantine-color-dark-2)"
511
+ },
512
+ "dark[3]": {
513
+ description: "Mantine color dark.3",
514
+ value: "var(--mantine-color-dark-3)"
515
+ },
516
+ "dark[4]": {
517
+ description: "Mantine color dark.4",
518
+ value: "var(--mantine-color-dark-4)"
519
+ },
520
+ "dark[5]": {
521
+ description: "Mantine color dark.5",
522
+ value: "var(--mantine-color-dark-5)"
523
+ },
524
+ "dark[6]": {
525
+ description: "Mantine color dark.6",
526
+ value: "var(--mantine-color-dark-6)"
527
+ },
528
+ "dark[7]": {
529
+ description: "Mantine color dark.7",
530
+ value: "var(--mantine-color-dark-7)"
531
+ },
532
+ "dark[8]": {
533
+ description: "Mantine color dark.8",
534
+ value: "var(--mantine-color-dark-8)"
535
+ },
536
+ "dark[9]": {
537
+ description: "Mantine color dark.9",
538
+ value: "var(--mantine-color-dark-9)"
539
+ },
540
+ orange: {
541
+ DEFAULT: {
542
+ description: "Mantine color orange",
543
+ value: "var(--mantine-color-orange-6)"
544
+ },
545
+ filled: {
546
+ description: "Mantine color orange filled",
547
+ value: "var(--mantine-color-orange-filled)"
548
+ },
549
+ filledHover: {
550
+ description: "Mantine color orange filled hover",
551
+ value: "var(--mantine-color-orange-filled-hover)"
552
+ },
553
+ light: {
554
+ description: "Mantine color orange light",
555
+ value: "var(--mantine-color-orange-light)"
556
+ },
557
+ lightHover: {
558
+ description: "Mantine color orange light hover",
559
+ value: "var(--mantine-color-orange-light-hover)"
560
+ },
561
+ lightColor: {
562
+ description: "Mantine color orange light color",
563
+ value: "var(--mantine-color-orange-light-color)"
564
+ },
565
+ outline: {
566
+ description: "Mantine color orange outline",
567
+ value: "var(--mantine-color-orange-outline)"
568
+ },
569
+ outlineHover: {
570
+ description: "Mantine color orange outline hover",
571
+ value: "var(--mantine-color-orange-outline-hover)"
572
+ }
573
+ },
574
+ "orange[0]": {
575
+ description: "Mantine color orange.0",
576
+ value: "var(--mantine-color-orange-0)"
577
+ },
578
+ "orange[1]": {
579
+ description: "Mantine color orange.1",
580
+ value: "var(--mantine-color-orange-1)"
581
+ },
582
+ "orange[2]": {
583
+ description: "Mantine color orange.2",
584
+ value: "var(--mantine-color-orange-2)"
585
+ },
586
+ "orange[3]": {
587
+ description: "Mantine color orange.3",
588
+ value: "var(--mantine-color-orange-3)"
589
+ },
590
+ "orange[4]": {
591
+ description: "Mantine color orange.4",
592
+ value: "var(--mantine-color-orange-4)"
593
+ },
594
+ "orange[5]": {
595
+ description: "Mantine color orange.5",
596
+ value: "var(--mantine-color-orange-5)"
597
+ },
598
+ "orange[6]": {
599
+ description: "Mantine color orange.6",
600
+ value: "var(--mantine-color-orange-6)"
601
+ },
602
+ "orange[7]": {
603
+ description: "Mantine color orange.7",
604
+ value: "var(--mantine-color-orange-7)"
605
+ },
606
+ "orange[8]": {
607
+ description: "Mantine color orange.8",
608
+ value: "var(--mantine-color-orange-8)"
609
+ },
610
+ "orange[9]": {
611
+ description: "Mantine color orange.9",
612
+ value: "var(--mantine-color-orange-9)"
613
+ },
614
+ teal: {
615
+ DEFAULT: {
616
+ description: "Mantine color teal",
617
+ value: "var(--mantine-color-teal-6)"
618
+ },
619
+ filled: {
620
+ description: "Mantine color teal filled",
621
+ value: "var(--mantine-color-teal-filled)"
622
+ },
623
+ filledHover: {
624
+ description: "Mantine color teal filled hover",
625
+ value: "var(--mantine-color-teal-filled-hover)"
626
+ },
627
+ light: {
628
+ description: "Mantine color teal light",
629
+ value: "var(--mantine-color-teal-light)"
630
+ },
631
+ lightHover: {
632
+ description: "Mantine color teal light hover",
633
+ value: "var(--mantine-color-teal-light-hover)"
634
+ },
635
+ lightColor: {
636
+ description: "Mantine color teal light color",
637
+ value: "var(--mantine-color-teal-light-color)"
638
+ },
639
+ outline: {
640
+ description: "Mantine color teal outline",
641
+ value: "var(--mantine-color-teal-outline)"
642
+ },
643
+ outlineHover: {
644
+ description: "Mantine color teal outline hover",
645
+ value: "var(--mantine-color-teal-outline-hover)"
646
+ }
647
+ },
648
+ "teal[0]": {
649
+ description: "Mantine color teal.0",
650
+ value: "var(--mantine-color-teal-0)"
651
+ },
652
+ "teal[1]": {
653
+ description: "Mantine color teal.1",
654
+ value: "var(--mantine-color-teal-1)"
655
+ },
656
+ "teal[2]": {
657
+ description: "Mantine color teal.2",
658
+ value: "var(--mantine-color-teal-2)"
659
+ },
660
+ "teal[3]": {
661
+ description: "Mantine color teal.3",
662
+ value: "var(--mantine-color-teal-3)"
663
+ },
664
+ "teal[4]": {
665
+ description: "Mantine color teal.4",
666
+ value: "var(--mantine-color-teal-4)"
667
+ },
668
+ "teal[5]": {
669
+ description: "Mantine color teal.5",
670
+ value: "var(--mantine-color-teal-5)"
671
+ },
672
+ "teal[6]": {
673
+ description: "Mantine color teal.6",
674
+ value: "var(--mantine-color-teal-6)"
675
+ },
676
+ "teal[7]": {
677
+ description: "Mantine color teal.7",
678
+ value: "var(--mantine-color-teal-7)"
679
+ },
680
+ "teal[8]": {
681
+ description: "Mantine color teal.8",
682
+ value: "var(--mantine-color-teal-8)"
683
+ },
684
+ "teal[9]": {
685
+ description: "Mantine color teal.9",
686
+ value: "var(--mantine-color-teal-9)"
687
+ },
688
+ red: {
689
+ DEFAULT: {
690
+ description: "Mantine color red",
691
+ value: "var(--mantine-color-red-6)"
692
+ },
693
+ filled: {
694
+ description: "Mantine color red filled",
695
+ value: "var(--mantine-color-red-filled)"
696
+ },
697
+ filledHover: {
698
+ description: "Mantine color red filled hover",
699
+ value: "var(--mantine-color-red-filled-hover)"
700
+ },
701
+ light: {
702
+ description: "Mantine color red light",
703
+ value: "var(--mantine-color-red-light)"
704
+ },
705
+ lightHover: {
706
+ description: "Mantine color red light hover",
707
+ value: "var(--mantine-color-red-light-hover)"
708
+ },
709
+ lightColor: {
710
+ description: "Mantine color red light color",
711
+ value: "var(--mantine-color-red-light-color)"
712
+ },
713
+ outline: {
714
+ description: "Mantine color red outline",
715
+ value: "var(--mantine-color-red-outline)"
716
+ },
717
+ outlineHover: {
718
+ description: "Mantine color red outline hover",
719
+ value: "var(--mantine-color-red-outline-hover)"
720
+ }
721
+ },
722
+ "red[0]": {
723
+ description: "Mantine color red.0",
724
+ value: "var(--mantine-color-red-0)"
725
+ },
726
+ "red[1]": {
727
+ description: "Mantine color red.1",
728
+ value: "var(--mantine-color-red-1)"
729
+ },
730
+ "red[2]": {
731
+ description: "Mantine color red.2",
732
+ value: "var(--mantine-color-red-2)"
733
+ },
734
+ "red[3]": {
735
+ description: "Mantine color red.3",
736
+ value: "var(--mantine-color-red-3)"
737
+ },
738
+ "red[4]": {
739
+ description: "Mantine color red.4",
740
+ value: "var(--mantine-color-red-4)"
741
+ },
742
+ "red[5]": {
743
+ description: "Mantine color red.5",
744
+ value: "var(--mantine-color-red-5)"
745
+ },
746
+ "red[6]": {
747
+ description: "Mantine color red.6",
748
+ value: "var(--mantine-color-red-6)"
749
+ },
750
+ "red[7]": {
751
+ description: "Mantine color red.7",
752
+ value: "var(--mantine-color-red-7)"
753
+ },
754
+ "red[8]": {
755
+ description: "Mantine color red.8",
756
+ value: "var(--mantine-color-red-8)"
757
+ },
758
+ "red[9]": {
759
+ description: "Mantine color red.9",
760
+ value: "var(--mantine-color-red-9)"
761
+ },
762
+ green: {
763
+ DEFAULT: {
764
+ description: "Mantine color green",
765
+ value: "var(--mantine-color-green-6)"
766
+ },
767
+ filled: {
768
+ description: "Mantine color green filled",
769
+ value: "var(--mantine-color-green-filled)"
770
+ },
771
+ filledHover: {
772
+ description: "Mantine color green filled hover",
773
+ value: "var(--mantine-color-green-filled-hover)"
774
+ },
775
+ light: {
776
+ description: "Mantine color green light",
777
+ value: "var(--mantine-color-green-light)"
778
+ },
779
+ lightHover: {
780
+ description: "Mantine color green light hover",
781
+ value: "var(--mantine-color-green-light-hover)"
782
+ },
783
+ lightColor: {
784
+ description: "Mantine color green light color",
785
+ value: "var(--mantine-color-green-light-color)"
786
+ },
787
+ outline: {
788
+ description: "Mantine color green outline",
789
+ value: "var(--mantine-color-green-outline)"
790
+ },
791
+ outlineHover: {
792
+ description: "Mantine color green outline hover",
793
+ value: "var(--mantine-color-green-outline-hover)"
794
+ }
795
+ },
796
+ "green[0]": {
797
+ description: "Mantine color green.0",
798
+ value: "var(--mantine-color-green-0)"
799
+ },
800
+ "green[1]": {
801
+ description: "Mantine color green.1",
802
+ value: "var(--mantine-color-green-1)"
803
+ },
804
+ "green[2]": {
805
+ description: "Mantine color green.2",
806
+ value: "var(--mantine-color-green-2)"
807
+ },
808
+ "green[3]": {
809
+ description: "Mantine color green.3",
810
+ value: "var(--mantine-color-green-3)"
811
+ },
812
+ "green[4]": {
813
+ description: "Mantine color green.4",
814
+ value: "var(--mantine-color-green-4)"
815
+ },
816
+ "green[5]": {
817
+ description: "Mantine color green.5",
818
+ value: "var(--mantine-color-green-5)"
819
+ },
820
+ "green[6]": {
821
+ description: "Mantine color green.6",
822
+ value: "var(--mantine-color-green-6)"
823
+ },
824
+ "green[7]": {
825
+ description: "Mantine color green.7",
826
+ value: "var(--mantine-color-green-7)"
827
+ },
828
+ "green[8]": {
829
+ description: "Mantine color green.8",
830
+ value: "var(--mantine-color-green-8)"
831
+ },
832
+ "green[9]": {
833
+ description: "Mantine color green.9",
834
+ value: "var(--mantine-color-green-9)"
835
+ },
836
+ yellow: {
837
+ DEFAULT: {
838
+ description: "Mantine color yellow",
839
+ value: "var(--mantine-color-yellow-6)"
840
+ },
841
+ filled: {
842
+ description: "Mantine color yellow filled",
843
+ value: "var(--mantine-color-yellow-filled)"
844
+ },
845
+ filledHover: {
846
+ description: "Mantine color yellow filled hover",
847
+ value: "var(--mantine-color-yellow-filled-hover)"
848
+ },
849
+ light: {
850
+ description: "Mantine color yellow light",
851
+ value: "var(--mantine-color-yellow-light)"
852
+ },
853
+ lightHover: {
854
+ description: "Mantine color yellow light hover",
855
+ value: "var(--mantine-color-yellow-light-hover)"
856
+ },
857
+ lightColor: {
858
+ description: "Mantine color yellow light color",
859
+ value: "var(--mantine-color-yellow-light-color)"
860
+ },
861
+ outline: {
862
+ description: "Mantine color yellow outline",
863
+ value: "var(--mantine-color-yellow-outline)"
864
+ },
865
+ outlineHover: {
866
+ description: "Mantine color yellow outline hover",
867
+ value: "var(--mantine-color-yellow-outline-hover)"
868
+ }
869
+ },
870
+ "yellow[0]": {
871
+ description: "Mantine color yellow.0",
872
+ value: "var(--mantine-color-yellow-0)"
873
+ },
874
+ "yellow[1]": {
875
+ description: "Mantine color yellow.1",
876
+ value: "var(--mantine-color-yellow-1)"
877
+ },
878
+ "yellow[2]": {
879
+ description: "Mantine color yellow.2",
880
+ value: "var(--mantine-color-yellow-2)"
881
+ },
882
+ "yellow[3]": {
883
+ description: "Mantine color yellow.3",
884
+ value: "var(--mantine-color-yellow-3)"
885
+ },
886
+ "yellow[4]": {
887
+ description: "Mantine color yellow.4",
888
+ value: "var(--mantine-color-yellow-4)"
889
+ },
890
+ "yellow[5]": {
891
+ description: "Mantine color yellow.5",
892
+ value: "var(--mantine-color-yellow-5)"
893
+ },
894
+ "yellow[6]": {
895
+ description: "Mantine color yellow.6",
896
+ value: "var(--mantine-color-yellow-6)"
897
+ },
898
+ "yellow[7]": {
899
+ description: "Mantine color yellow.7",
900
+ value: "var(--mantine-color-yellow-7)"
901
+ },
902
+ "yellow[8]": {
903
+ description: "Mantine color yellow.8",
904
+ value: "var(--mantine-color-yellow-8)"
905
+ },
906
+ "yellow[9]": {
907
+ description: "Mantine color yellow.9",
908
+ value: "var(--mantine-color-yellow-9)"
909
+ }
910
+ } } } };
911
+ const mantine = {
912
+ scale: "var(--mantine-scale)",
913
+ cursorType: "var(--mantine-cursor-type)",
914
+ webkitFontSmoothing: "var(--mantine-webkit-font-smoothing)",
915
+ mozFontSmoothing: "var(--mantine-moz-font-smoothing)",
916
+ lineHeight: "var(--mantine-line-height)",
917
+ fontFamily: "var(--mantine-font-family)",
918
+ fontFamilyMonospace: "var(--mantine-font-family-monospace)",
919
+ fontFamilyHeadings: "var(--mantine-font-family-headings)",
920
+ headingFontWeight: "var(--mantine-heading-font-weight)",
921
+ radiusDefault: "var(--mantine-radius-default)",
922
+ breakpoints: {
923
+ xs: "36em",
924
+ sm: "48em",
925
+ md: "62em",
926
+ lg: "75em",
927
+ xl: "88em"
928
+ },
929
+ fontSizes: {
930
+ xs: "var(--mantine-font-size-xs)",
931
+ sm: "var(--mantine-font-size-sm)",
932
+ md: "var(--mantine-font-size-md)",
933
+ lg: "var(--mantine-font-size-lg)",
934
+ xl: "var(--mantine-font-size-xl)"
935
+ },
936
+ lineHeights: {
937
+ xs: "var(--mantine-line-height-xs)",
938
+ sm: "var(--mantine-line-height-sm)",
939
+ md: "var(--mantine-line-height-md)",
940
+ lg: "var(--mantine-line-height-lg)",
941
+ xl: "var(--mantine-line-height-xl)"
942
+ },
943
+ shadows: {
944
+ xs: "var(--mantine-shadow-xs)",
945
+ sm: "var(--mantine-shadow-sm)",
946
+ md: "var(--mantine-shadow-md)",
947
+ lg: "var(--mantine-shadow-lg)",
948
+ xl: "var(--mantine-shadow-xl)"
949
+ },
950
+ radius: {
951
+ xs: "var(--mantine-radius-xs)",
952
+ sm: "var(--mantine-radius-sm)",
953
+ md: "var(--mantine-radius-md)",
954
+ lg: "var(--mantine-radius-lg)",
955
+ xl: "var(--mantine-radius-xl)"
956
+ },
957
+ headings: {
958
+ h1: {
959
+ fontSize: "var(--mantine-h1-font-size)",
960
+ lineHeight: "var(--mantine-h1-line-height)",
961
+ fontWeight: "var(--mantine-h1-font-weight)"
962
+ },
963
+ h2: {
964
+ fontSize: "var(--mantine-h2-font-size)",
965
+ lineHeight: "var(--mantine-h2-line-height)",
966
+ fontWeight: "var(--mantine-h2-font-weight)"
967
+ },
968
+ h3: {
969
+ fontSize: "var(--mantine-h3-font-size)",
970
+ lineHeight: "var(--mantine-h3-line-height)",
971
+ fontWeight: "var(--mantine-h3-font-weight)"
972
+ },
973
+ h4: {
974
+ fontSize: "var(--mantine-h4-font-size)",
975
+ lineHeight: "var(--mantine-h4-line-height)",
976
+ fontWeight: "var(--mantine-h4-font-weight)"
977
+ },
978
+ h5: {
979
+ fontSize: "var(--mantine-h5-font-size)",
980
+ lineHeight: "var(--mantine-h5-line-height)",
981
+ fontWeight: "var(--mantine-h5-font-weight)"
982
+ },
983
+ h6: {
984
+ fontSize: "var(--mantine-h6-font-size)",
985
+ lineHeight: "var(--mantine-h6-line-height)",
986
+ fontWeight: "var(--mantine-h6-font-weight)"
987
+ }
988
+ },
989
+ spacing: {
990
+ xs: "var(--mantine-spacing-xs)",
991
+ sm: "var(--mantine-spacing-sm)",
992
+ md: "var(--mantine-spacing-md)",
993
+ lg: "var(--mantine-spacing-lg)",
994
+ xl: "var(--mantine-spacing-xl)"
995
+ },
996
+ colors: {
997
+ primary: "var(--mantine-primary-color-filled)",
998
+ primaryColors: {
999
+ "0": "var(--mantine-primary-color-0)",
1000
+ "1": "var(--mantine-primary-color-1)",
1001
+ "2": "var(--mantine-primary-color-2)",
1002
+ "3": "var(--mantine-primary-color-3)",
1003
+ "4": "var(--mantine-primary-color-4)",
1004
+ "5": "var(--mantine-primary-color-5)",
1005
+ "6": "var(--mantine-primary-color-6)",
1006
+ "7": "var(--mantine-primary-color-7)",
1007
+ "8": "var(--mantine-primary-color-8)",
1008
+ "9": "var(--mantine-primary-color-9)",
1009
+ filled: "var(--mantine-primary-color-filled)",
1010
+ filledHover: "var(--mantine-primary-color-filled-hover)",
1011
+ light: "var(--mantine-primary-color-light)",
1012
+ lightHover: "var(--mantine-primary-color-light-hover)",
1013
+ lightColor: "var(--mantine-primary-color-light-color)",
1014
+ outline: "var(--mantine-primary-color-outline)",
1015
+ outlineHover: "var(--mantine-primary-color-outline-hover)"
1016
+ },
1017
+ white: "var(--mantine-color-white)",
1018
+ black: "var(--mantine-color-black)",
1019
+ text: "var(--mantine-color-text)",
1020
+ body: "var(--mantine-color-body)",
1021
+ error: "var(--mantine-color-error)",
1022
+ placeholder: "var(--mantine-color-placeholder)",
1023
+ anchor: "var(--mantine-color-anchor)",
1024
+ default: "var(--mantine-color-default)",
1025
+ defaultHover: "var(--mantine-color-default-hover)",
1026
+ defaultColor: "var(--mantine-color-default-color)",
1027
+ defaultBorder: "var(--mantine-color-default-border)",
1028
+ dimmed: "var(--mantine-color-dimmed)",
1029
+ disabledBody: "var(--mantine-color-disabled)",
1030
+ disabledText: "var(--mantine-color-disabled-color)",
1031
+ disabledBorder: "var(--mantine-color-disabled-border)",
1032
+ dark: {
1033
+ "0": "var(--mantine-color-dark-0)",
1034
+ "1": "var(--mantine-color-dark-1)",
1035
+ "2": "var(--mantine-color-dark-2)",
1036
+ "3": "var(--mantine-color-dark-3)",
1037
+ "4": "var(--mantine-color-dark-4)",
1038
+ "5": "var(--mantine-color-dark-5)",
1039
+ "6": "var(--mantine-color-dark-6)",
1040
+ "7": "var(--mantine-color-dark-7)",
1041
+ "8": "var(--mantine-color-dark-8)",
1042
+ "9": "var(--mantine-color-dark-9)",
1043
+ filled: "var(--mantine-color-dark-filled)",
1044
+ filledHover: "var(--mantine-color-dark-filled-hover)",
1045
+ light: "var(--mantine-color-dark-light)",
1046
+ lightHover: "var(--mantine-color-dark-light-hover)",
1047
+ lightColor: "var(--mantine-color-dark-light-color)",
1048
+ outline: "var(--mantine-color-dark-outline)",
1049
+ outlineHover: "var(--mantine-color-dark-outline-hover)"
1050
+ },
1051
+ gray: {
1052
+ "0": "var(--mantine-color-gray-0)",
1053
+ "1": "var(--mantine-color-gray-1)",
1054
+ "2": "var(--mantine-color-gray-2)",
1055
+ "3": "var(--mantine-color-gray-3)",
1056
+ "4": "var(--mantine-color-gray-4)",
1057
+ "5": "var(--mantine-color-gray-5)",
1058
+ "6": "var(--mantine-color-gray-6)",
1059
+ "7": "var(--mantine-color-gray-7)",
1060
+ "8": "var(--mantine-color-gray-8)",
1061
+ "9": "var(--mantine-color-gray-9)",
1062
+ filled: "var(--mantine-color-gray-filled)",
1063
+ filledHover: "var(--mantine-color-gray-filled-hover)",
1064
+ light: "var(--mantine-color-gray-light)",
1065
+ lightHover: "var(--mantine-color-gray-light-hover)",
1066
+ lightColor: "var(--mantine-color-gray-light-color)",
1067
+ outline: "var(--mantine-color-gray-outline)",
1068
+ outlineHover: "var(--mantine-color-gray-outline-hover)"
1069
+ },
1070
+ red: {
1071
+ "0": "var(--mantine-color-red-0)",
1072
+ "1": "var(--mantine-color-red-1)",
1073
+ "2": "var(--mantine-color-red-2)",
1074
+ "3": "var(--mantine-color-red-3)",
1075
+ "4": "var(--mantine-color-red-4)",
1076
+ "5": "var(--mantine-color-red-5)",
1077
+ "6": "var(--mantine-color-red-6)",
1078
+ "7": "var(--mantine-color-red-7)",
1079
+ "8": "var(--mantine-color-red-8)",
1080
+ "9": "var(--mantine-color-red-9)",
1081
+ filled: "var(--mantine-color-red-filled)",
1082
+ filledHover: "var(--mantine-color-red-filled-hover)",
1083
+ light: "var(--mantine-color-red-light)",
1084
+ lightHover: "var(--mantine-color-red-light-hover)",
1085
+ lightColor: "var(--mantine-color-red-light-color)",
1086
+ outline: "var(--mantine-color-red-outline)",
1087
+ outlineHover: "var(--mantine-color-red-outline-hover)"
1088
+ },
1089
+ pink: {
1090
+ "0": "var(--mantine-color-pink-0)",
1091
+ "1": "var(--mantine-color-pink-1)",
1092
+ "2": "var(--mantine-color-pink-2)",
1093
+ "3": "var(--mantine-color-pink-3)",
1094
+ "4": "var(--mantine-color-pink-4)",
1095
+ "5": "var(--mantine-color-pink-5)",
1096
+ "6": "var(--mantine-color-pink-6)",
1097
+ "7": "var(--mantine-color-pink-7)",
1098
+ "8": "var(--mantine-color-pink-8)",
1099
+ "9": "var(--mantine-color-pink-9)",
1100
+ filled: "var(--mantine-color-pink-filled)",
1101
+ filledHover: "var(--mantine-color-pink-filled-hover)",
1102
+ light: "var(--mantine-color-pink-light)",
1103
+ lightHover: "var(--mantine-color-pink-light-hover)",
1104
+ lightColor: "var(--mantine-color-pink-light-color)",
1105
+ outline: "var(--mantine-color-pink-outline)",
1106
+ outlineHover: "var(--mantine-color-pink-outline-hover)"
1107
+ },
1108
+ grape: {
1109
+ "0": "var(--mantine-color-grape-0)",
1110
+ "1": "var(--mantine-color-grape-1)",
1111
+ "2": "var(--mantine-color-grape-2)",
1112
+ "3": "var(--mantine-color-grape-3)",
1113
+ "4": "var(--mantine-color-grape-4)",
1114
+ "5": "var(--mantine-color-grape-5)",
1115
+ "6": "var(--mantine-color-grape-6)",
1116
+ "7": "var(--mantine-color-grape-7)",
1117
+ "8": "var(--mantine-color-grape-8)",
1118
+ "9": "var(--mantine-color-grape-9)",
1119
+ filled: "var(--mantine-color-grape-filled)",
1120
+ filledHover: "var(--mantine-color-grape-filled-hover)",
1121
+ light: "var(--mantine-color-grape-light)",
1122
+ lightHover: "var(--mantine-color-grape-light-hover)",
1123
+ lightColor: "var(--mantine-color-grape-light-color)",
1124
+ outline: "var(--mantine-color-grape-outline)",
1125
+ outlineHover: "var(--mantine-color-grape-outline-hover)"
1126
+ },
1127
+ violet: {
1128
+ "0": "var(--mantine-color-violet-0)",
1129
+ "1": "var(--mantine-color-violet-1)",
1130
+ "2": "var(--mantine-color-violet-2)",
1131
+ "3": "var(--mantine-color-violet-3)",
1132
+ "4": "var(--mantine-color-violet-4)",
1133
+ "5": "var(--mantine-color-violet-5)",
1134
+ "6": "var(--mantine-color-violet-6)",
1135
+ "7": "var(--mantine-color-violet-7)",
1136
+ "8": "var(--mantine-color-violet-8)",
1137
+ "9": "var(--mantine-color-violet-9)",
1138
+ filled: "var(--mantine-color-violet-filled)",
1139
+ filledHover: "var(--mantine-color-violet-filled-hover)",
1140
+ light: "var(--mantine-color-violet-light)",
1141
+ lightHover: "var(--mantine-color-violet-light-hover)",
1142
+ lightColor: "var(--mantine-color-violet-light-color)",
1143
+ outline: "var(--mantine-color-violet-outline)",
1144
+ outlineHover: "var(--mantine-color-violet-outline-hover)"
1145
+ },
1146
+ indigo: {
1147
+ "0": "var(--mantine-color-indigo-0)",
1148
+ "1": "var(--mantine-color-indigo-1)",
1149
+ "2": "var(--mantine-color-indigo-2)",
1150
+ "3": "var(--mantine-color-indigo-3)",
1151
+ "4": "var(--mantine-color-indigo-4)",
1152
+ "5": "var(--mantine-color-indigo-5)",
1153
+ "6": "var(--mantine-color-indigo-6)",
1154
+ "7": "var(--mantine-color-indigo-7)",
1155
+ "8": "var(--mantine-color-indigo-8)",
1156
+ "9": "var(--mantine-color-indigo-9)",
1157
+ filled: "var(--mantine-color-indigo-filled)",
1158
+ filledHover: "var(--mantine-color-indigo-filled-hover)",
1159
+ light: "var(--mantine-color-indigo-light)",
1160
+ lightHover: "var(--mantine-color-indigo-light-hover)",
1161
+ lightColor: "var(--mantine-color-indigo-light-color)",
1162
+ outline: "var(--mantine-color-indigo-outline)",
1163
+ outlineHover: "var(--mantine-color-indigo-outline-hover)"
1164
+ },
1165
+ blue: {
1166
+ "0": "var(--mantine-color-blue-0)",
1167
+ "1": "var(--mantine-color-blue-1)",
1168
+ "2": "var(--mantine-color-blue-2)",
1169
+ "3": "var(--mantine-color-blue-3)",
1170
+ "4": "var(--mantine-color-blue-4)",
1171
+ "5": "var(--mantine-color-blue-5)",
1172
+ "6": "var(--mantine-color-blue-6)",
1173
+ "7": "var(--mantine-color-blue-7)",
1174
+ "8": "var(--mantine-color-blue-8)",
1175
+ "9": "var(--mantine-color-blue-9)",
1176
+ filled: "var(--mantine-color-blue-filled)",
1177
+ filledHover: "var(--mantine-color-blue-filled-hover)",
1178
+ light: "var(--mantine-color-blue-light)",
1179
+ lightHover: "var(--mantine-color-blue-light-hover)",
1180
+ lightColor: "var(--mantine-color-blue-light-color)",
1181
+ outline: "var(--mantine-color-blue-outline)",
1182
+ outlineHover: "var(--mantine-color-blue-outline-hover)"
1183
+ },
1184
+ cyan: {
1185
+ "0": "var(--mantine-color-cyan-0)",
1186
+ "1": "var(--mantine-color-cyan-1)",
1187
+ "2": "var(--mantine-color-cyan-2)",
1188
+ "3": "var(--mantine-color-cyan-3)",
1189
+ "4": "var(--mantine-color-cyan-4)",
1190
+ "5": "var(--mantine-color-cyan-5)",
1191
+ "6": "var(--mantine-color-cyan-6)",
1192
+ "7": "var(--mantine-color-cyan-7)",
1193
+ "8": "var(--mantine-color-cyan-8)",
1194
+ "9": "var(--mantine-color-cyan-9)",
1195
+ filled: "var(--mantine-color-cyan-filled)",
1196
+ filledHover: "var(--mantine-color-cyan-filled-hover)",
1197
+ light: "var(--mantine-color-cyan-light)",
1198
+ lightHover: "var(--mantine-color-cyan-light-hover)",
1199
+ lightColor: "var(--mantine-color-cyan-light-color)",
1200
+ outline: "var(--mantine-color-cyan-outline)",
1201
+ outlineHover: "var(--mantine-color-cyan-outline-hover)"
1202
+ },
1203
+ teal: {
1204
+ "0": "var(--mantine-color-teal-0)",
1205
+ "1": "var(--mantine-color-teal-1)",
1206
+ "2": "var(--mantine-color-teal-2)",
1207
+ "3": "var(--mantine-color-teal-3)",
1208
+ "4": "var(--mantine-color-teal-4)",
1209
+ "5": "var(--mantine-color-teal-5)",
1210
+ "6": "var(--mantine-color-teal-6)",
1211
+ "7": "var(--mantine-color-teal-7)",
1212
+ "8": "var(--mantine-color-teal-8)",
1213
+ "9": "var(--mantine-color-teal-9)",
1214
+ filled: "var(--mantine-color-teal-filled)",
1215
+ filledHover: "var(--mantine-color-teal-filled-hover)",
1216
+ light: "var(--mantine-color-teal-light)",
1217
+ lightHover: "var(--mantine-color-teal-light-hover)",
1218
+ lightColor: "var(--mantine-color-teal-light-color)",
1219
+ outline: "var(--mantine-color-teal-outline)",
1220
+ outlineHover: "var(--mantine-color-teal-outline-hover)"
1221
+ },
1222
+ green: {
1223
+ "0": "var(--mantine-color-green-0)",
1224
+ "1": "var(--mantine-color-green-1)",
1225
+ "2": "var(--mantine-color-green-2)",
1226
+ "3": "var(--mantine-color-green-3)",
1227
+ "4": "var(--mantine-color-green-4)",
1228
+ "5": "var(--mantine-color-green-5)",
1229
+ "6": "var(--mantine-color-green-6)",
1230
+ "7": "var(--mantine-color-green-7)",
1231
+ "8": "var(--mantine-color-green-8)",
1232
+ "9": "var(--mantine-color-green-9)",
1233
+ filled: "var(--mantine-color-green-filled)",
1234
+ filledHover: "var(--mantine-color-green-filled-hover)",
1235
+ light: "var(--mantine-color-green-light)",
1236
+ lightHover: "var(--mantine-color-green-light-hover)",
1237
+ lightColor: "var(--mantine-color-green-light-color)",
1238
+ outline: "var(--mantine-color-green-outline)",
1239
+ outlineHover: "var(--mantine-color-green-outline-hover)"
1240
+ },
1241
+ lime: {
1242
+ "0": "var(--mantine-color-lime-0)",
1243
+ "1": "var(--mantine-color-lime-1)",
1244
+ "2": "var(--mantine-color-lime-2)",
1245
+ "3": "var(--mantine-color-lime-3)",
1246
+ "4": "var(--mantine-color-lime-4)",
1247
+ "5": "var(--mantine-color-lime-5)",
1248
+ "6": "var(--mantine-color-lime-6)",
1249
+ "7": "var(--mantine-color-lime-7)",
1250
+ "8": "var(--mantine-color-lime-8)",
1251
+ "9": "var(--mantine-color-lime-9)",
1252
+ filled: "var(--mantine-color-lime-filled)",
1253
+ filledHover: "var(--mantine-color-lime-filled-hover)",
1254
+ light: "var(--mantine-color-lime-light)",
1255
+ lightHover: "var(--mantine-color-lime-light-hover)",
1256
+ lightColor: "var(--mantine-color-lime-light-color)",
1257
+ outline: "var(--mantine-color-lime-outline)",
1258
+ outlineHover: "var(--mantine-color-lime-outline-hover)"
1259
+ },
1260
+ yellow: {
1261
+ "0": "var(--mantine-color-yellow-0)",
1262
+ "1": "var(--mantine-color-yellow-1)",
1263
+ "2": "var(--mantine-color-yellow-2)",
1264
+ "3": "var(--mantine-color-yellow-3)",
1265
+ "4": "var(--mantine-color-yellow-4)",
1266
+ "5": "var(--mantine-color-yellow-5)",
1267
+ "6": "var(--mantine-color-yellow-6)",
1268
+ "7": "var(--mantine-color-yellow-7)",
1269
+ "8": "var(--mantine-color-yellow-8)",
1270
+ "9": "var(--mantine-color-yellow-9)",
1271
+ filled: "var(--mantine-color-yellow-filled)",
1272
+ filledHover: "var(--mantine-color-yellow-filled-hover)",
1273
+ light: "var(--mantine-color-yellow-light)",
1274
+ lightHover: "var(--mantine-color-yellow-light-hover)",
1275
+ lightColor: "var(--mantine-color-yellow-light-color)",
1276
+ outline: "var(--mantine-color-yellow-outline)",
1277
+ outlineHover: "var(--mantine-color-yellow-outline-hover)"
1278
+ },
1279
+ orange: {
1280
+ "0": "var(--mantine-color-orange-0)",
1281
+ "1": "var(--mantine-color-orange-1)",
1282
+ "2": "var(--mantine-color-orange-2)",
1283
+ "3": "var(--mantine-color-orange-3)",
1284
+ "4": "var(--mantine-color-orange-4)",
1285
+ "5": "var(--mantine-color-orange-5)",
1286
+ "6": "var(--mantine-color-orange-6)",
1287
+ "7": "var(--mantine-color-orange-7)",
1288
+ "8": "var(--mantine-color-orange-8)",
1289
+ "9": "var(--mantine-color-orange-9)",
1290
+ filled: "var(--mantine-color-orange-filled)",
1291
+ filledHover: "var(--mantine-color-orange-filled-hover)",
1292
+ light: "var(--mantine-color-orange-light)",
1293
+ lightHover: "var(--mantine-color-orange-light-hover)",
1294
+ lightColor: "var(--mantine-color-orange-light-color)",
1295
+ outline: "var(--mantine-color-orange-outline)",
1296
+ outlineHover: "var(--mantine-color-orange-outline-hover)"
1297
+ }
1298
+ },
1299
+ rtlSelector: "[dir=\"rtl\"] &",
1300
+ darkSelector: "[data-mantine-color-scheme=\"dark\"] &",
1301
+ lightSelector: "[data-mantine-color-scheme=\"light\"] &"
1302
+ };
1303
+ function alpha(color, percentage = 50) {
1304
+ let alpha = percentage;
1305
+ if (typeof percentage === "number") {
1306
+ if (percentage > 0 && percentage < 1) percentage *= 100;
1307
+ alpha = `${percentage}%`;
1308
+ }
1309
+ return `oklch(from ${color} l c h / ${alpha})`;
1310
+ }
1311
+ function rem(pixels) {
1312
+ return `${pixels}px`;
1313
+ }
1314
+ const sizeConditions = {
1315
+ ...t$5(t$6(defaultTheme.textSizes), (size) => [`:where([data-likec4-text-size='${size}'])`, { [vars.textsize]: `{fontSizes.likec4.${size}}` }]),
1316
+ ...t$5(t$6(defaultTheme.spacing), (size) => [`:where([data-likec4-spacing='${size}'])`, { [vars.spacing]: `{spacing.likec4.${size}}` }])
1317
+ };
1318
+ const globalCss = { extend: {
1319
+ ":where(:root,:host)": { ["--likec4-app-font-default"]: `'IBM Plex Sans Variable',ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"` },
1320
+ ...sizeConditions,
1321
+ ".likec4-shadow-root": {
1322
+ display: "contents",
1323
+ color: "var(--colors-text)",
1324
+ "--mantine-font-family": "var(--likec4-app-font, var(--likec4-app-font-default))",
1325
+ "--mantine-font-family-headings": "var(--likec4-app-font, var(--likec4-app-font-default))",
1326
+ "& dialog": {
1327
+ "--mantine-font-family": "var(--likec4-app-font, var(--likec4-app-font-default))",
1328
+ color: "var(--colors-text)"
1329
+ }
1330
+ },
1331
+ ".likec4-edge-label-container": {
1332
+ top: 0,
1333
+ left: 0,
1334
+ position: "absolute",
1335
+ width: "auto",
1336
+ height: "auto",
1337
+ display: {
1338
+ _reduceGraphicsOnPan: "none",
1339
+ _smallZoom: "none"
1340
+ },
1341
+ willChange: "transform",
1342
+ zIndex: "likec4.diagram.edge.label"
1343
+ },
1344
+ ".likec4-root": {
1345
+ overflow: "hidden",
1346
+ position: "relative",
1347
+ padding: 0,
1348
+ margin: 0,
1349
+ width: "100%",
1350
+ height: "100%",
1351
+ border: "0px solid transparent",
1352
+ background: "transparent",
1353
+ containerName: "likec4-root",
1354
+ containerType: "size",
1355
+ _print: {
1356
+ "& .react-flow__background": { display: "none" },
1357
+ "& .react-flow": {
1358
+ background: "transparent !important",
1359
+ "--xy-background-color": "transparent !important"
1360
+ },
1361
+ "& *": {
1362
+ colorAdjust: "exact!",
1363
+ printColorAdjust: "exact!"
1364
+ }
1365
+ },
1366
+ "& .mantine-ActionIcon-icon .tabler-icon": {
1367
+ width: "75%",
1368
+ height: "75%"
1369
+ },
1370
+ "& .react-flow": {
1371
+ "--xy-background-color": "var(--colors-likec4-background)",
1372
+ "--xy-background-pattern-color": "var(--colors-likec4-background-pattern, var(--colors-likec4-background))",
1373
+ "&:is(.not-initialized)": { opacity: 0 },
1374
+ "&:is(.bg-transparent)": {
1375
+ background: "transparent !important",
1376
+ "--xy-background-color": "transparent !important"
1377
+ },
1378
+ "& .react-flow__pane": { userSelect: "none" },
1379
+ "& :is(.react-flow__nodes, .react-flow__edges, .react-flow__edgelabel-renderer, .react-flow__viewport-portal)": { display: "contents" },
1380
+ "& .react-flow__node.draggable:has(.likec4-compound-node)": { cursor: "default" },
1381
+ "& .likec4-node-handle-center": {
1382
+ top: "50%!",
1383
+ left: "50%!",
1384
+ right: "unset!",
1385
+ bottom: "unset!",
1386
+ visibility: "hidden!",
1387
+ width: "5px!",
1388
+ height: "5px!",
1389
+ transform: "translate(-50%, -50%)!"
1390
+ }
1391
+ },
1392
+ "& :where(.react-flow__node, .react-flow__edge):has([data-likec4-dimmed])": { opacity: .25 },
1393
+ "& .likec4-edge-label-container:is([data-likec4-dimmed])": { opacity: .25 },
1394
+ "& :where(.react-flow__edge, .likec4-edge-container, .likec4-edge-label-container)": {
1395
+ "--xy-edge-stroke-width": 3,
1396
+ "--xy-edge-stroke": __v("palette.relationStroke"),
1397
+ "--xy-edge-stroke-selected": __v("palette.relationStrokeSelected"),
1398
+ "--xy-edge-label-color": {
1399
+ base: __v("palette.relationLabel"),
1400
+ _light: `oklch(from ${__v("palette.relationLabel")} calc(l + 0.05) c h)`
1401
+ },
1402
+ "--xy-edge-label-background-color": {
1403
+ _dark: alpha(__v("palette.relationLabelBg"), 45),
1404
+ _light: alpha(__v("palette.relationLabelBg"), 60)
1405
+ },
1406
+ "&:is([data-likec4-hovered=\"true\"], [data-edge-active=\"true\"])": {
1407
+ "--xy-edge-stroke-width": 4,
1408
+ "--xy-edge-stroke": __v("palette.relationStrokeSelected")
1409
+ }
1410
+ },
1411
+ "&:is([data-likec4-reduced-graphics=\"true\"]) .hide-on-reduced-graphics": { display: "none!" },
1412
+ "&:not([data-likec4-reduced-graphics=\"true\"])": {
1413
+ "& :where(.react-flow__node, .react-flow__edge):has([data-likec4-dimmed])": { filter: "grayscale(85%)" },
1414
+ "& :where(.react-flow__node, .react-flow__edge):has([data-likec4-dimmed=\"true\"])": {
1415
+ transitionProperty: "opacity, filter",
1416
+ transitionTimingFunction: "cubic-bezier(0.50, 0, 0.2, 1)",
1417
+ transitionDuration: "400ms"
1418
+ },
1419
+ "& .likec4-edge-label-container:is([data-likec4-dimmed])": { filter: "grayscale(85%)" },
1420
+ "& .likec4-edge-label-container:is([data-likec4-dimmed=\"true\"])": {
1421
+ transitionProperty: "opacity, filter",
1422
+ transitionTimingFunction: "cubic-bezier(0.50, 0, 0.2, 1)",
1423
+ transitionDuration: "400ms"
1424
+ },
1425
+ "& :where(.react-flow__edgelabel-renderer) > *": { mixBlendMode: {
1426
+ base: "hard-light",
1427
+ _dark: "screen",
1428
+ _print: "normal!"
1429
+ } },
1430
+ "& :where(.react-flow__edges) > svg": { mixBlendMode: {
1431
+ base: "multiply",
1432
+ _dark: "plus-lighter",
1433
+ _print: "normal!"
1434
+ } },
1435
+ "&:has(.react-flow__node-seq-parallel) :where(.react-flow__edges > svg)": { mixBlendMode: { _light: "color-burn" } },
1436
+ "& .react-flow__node-seq-parallel": { mixBlendMode: {
1437
+ _dark: "luminosity",
1438
+ _light: "color-burn",
1439
+ _print: "normal!"
1440
+ } }
1441
+ }
1442
+ },
1443
+ ":where(.likec4-static-view, .relationships-browser, .likec4-relationship-details) .react-flow .react-flow__attribution": { display: "none" }
1444
+ } };
1445
+ const globalVars = { extend: {
1446
+ [vars.font]: "/*-*/ /*-*/",
1447
+ [vars.spacing]: "/*-*/ /*-*/",
1448
+ [vars.textsize]: rem(defaultTheme.textSizes.md),
1449
+ [vars.palette.fill]: defaultTheme.colors.primary.elements.fill,
1450
+ [vars.palette.stroke]: defaultTheme.colors.primary.elements.stroke,
1451
+ [vars.palette.hiContrast]: defaultTheme.colors.primary.elements.hiContrast,
1452
+ [vars.palette.loContrast]: defaultTheme.colors.primary.elements.loContrast,
1453
+ [vars.palette.relationStroke]: defaultTheme.colors.gray.relationships.line,
1454
+ [vars.palette.relationLabel]: defaultTheme.colors.gray.relationships.label,
1455
+ [vars.palette.relationLabelBg]: defaultTheme.colors.gray.relationships.labelBg,
1456
+ [vars.palette.relationStrokeSelected]: __v("palette.relationStroke"),
1457
+ "--mantine-scale": "1",
1458
+ [vars.palette.outline]: __v("palette.loContrast"),
1459
+ "--text-fz": "/*-*/ /*-*/",
1460
+ [vars.icon.color]: "/*-*/ /*-*/",
1461
+ [vars.icon.size]: "/*-*/ /*-*/"
1462
+ } };
1463
+ const layerStyles = /* @__PURE__ */ defineLayerStyles({ likec4: {
1464
+ tag: {
1465
+ description: "LikeC4 tag layer",
1466
+ value: {
1467
+ color: "likec4.tag.text",
1468
+ backgroundColor: "likec4.tag.bg",
1469
+ _hover: { backgroundColor: "likec4.tag.bg.hover" },
1470
+ border: "none",
1471
+ borderRadius: 3
1472
+ }
1473
+ },
1474
+ panel: {
1475
+ DEFAULT: {
1476
+ description: "LikeC4 panel layer",
1477
+ value: {
1478
+ padding: "1",
1479
+ borderRadius: "0",
1480
+ backgroundColor: "likec4.panel.bg",
1481
+ border: "1px solid {colors.likec4.panel.border}",
1482
+ "@/sm": {
1483
+ boxShadow: "lg",
1484
+ borderRadius: "md",
1485
+ paddingInline: "2"
1486
+ },
1487
+ _reduceGraphicsOnPan: { boxShadow: "none" }
1488
+ }
1489
+ },
1490
+ action: {
1491
+ DEFAULT: {
1492
+ description: "LikeC4 panel action layer",
1493
+ value: {
1494
+ color: {
1495
+ base: "likec4.panel.action",
1496
+ _disabled: "likec4.panel.action.disabled",
1497
+ _notDisabled: { _hover: "likec4.panel.action.hover" }
1498
+ },
1499
+ cursor: {
1500
+ base: "pointer",
1501
+ _disabled: "not-allowed"
1502
+ },
1503
+ paddingInline: "xxs",
1504
+ paddingBlock: "xxs",
1505
+ border: "transparent",
1506
+ borderRadius: "sm",
1507
+ backgroundColor: { _notDisabled: { _hover: "likec4.panel.action.bg.hover" } }
1508
+ }
1509
+ },
1510
+ filled: {
1511
+ description: "LikeC4 action panel filled layer",
1512
+ value: {
1513
+ color: {
1514
+ base: "likec4.panel.action",
1515
+ _disabled: "likec4.panel.action.disabled",
1516
+ _notDisabled: { _hover: "likec4.panel.action.hover" }
1517
+ },
1518
+ cursor: {
1519
+ base: "pointer",
1520
+ _disabled: "not-allowed"
1521
+ },
1522
+ paddingInline: "xxs",
1523
+ paddingBlock: "xxs",
1524
+ border: "transparent",
1525
+ borderRadius: "sm",
1526
+ backgroundColor: {
1527
+ base: "likec4.panel.action.bg",
1528
+ _disabled: "likec4.panel.action.bg",
1529
+ _notDisabled: { _hover: "likec4.panel.action.bg.hover" }
1530
+ }
1531
+ }
1532
+ }
1533
+ }
1534
+ },
1535
+ dropdown: {
1536
+ description: "LikeC4 dropdown layer",
1537
+ value: {
1538
+ padding: "2",
1539
+ backgroundColor: "likec4.dropdown.bg",
1540
+ border: "1px solid {colors.likec4.dropdown.border}",
1541
+ boxShadow: "lg",
1542
+ borderRadius: "md"
1543
+ }
1544
+ }
1545
+ } });
1546
+ const patterns = { extend: {
1547
+ vstack: { defaultValues: {
1548
+ alignItems: "stretch",
1549
+ gap: "sm"
1550
+ } },
1551
+ hstack: { defaultValues: { gap: "sm" } },
1552
+ box: { jsx: ["Box", "MarkdownBlock"] },
1553
+ txt: definePattern({
1554
+ properties: {
1555
+ inline: { type: "boolean" },
1556
+ dimmed: { type: "boolean" },
1557
+ lh: {
1558
+ type: "token",
1559
+ value: "lineHeights"
1560
+ },
1561
+ size: {
1562
+ type: "enum",
1563
+ value: [
1564
+ "xxs",
1565
+ "xs",
1566
+ "sm",
1567
+ "md",
1568
+ "lg",
1569
+ "xl"
1570
+ ]
1571
+ },
1572
+ likec4color: {
1573
+ type: "enum",
1574
+ value: [...ThemeColors]
1575
+ }
1576
+ },
1577
+ defaultValues: {
1578
+ inline: false,
1579
+ dimmed: false,
1580
+ size: "md"
1581
+ },
1582
+ transform(props, _helpers) {
1583
+ const { inline, size, dimmed, lh, likec4color, ...rest } = props;
1584
+ if (dimmed && likec4color) throw new Error("dimmed and likec4color are mutually exclusive");
1585
+ return {
1586
+ userSelect: "all",
1587
+ cursor: "default",
1588
+ textStyle: dimmed ? `dimmed.${size}` : size,
1589
+ ...inline && { display: "inline-block" },
1590
+ ...lh && { lineHeight: lh },
1591
+ ...likec4color && { "data-likec4-color": likec4color },
1592
+ ...rest
1593
+ };
1594
+ },
1595
+ jsxElement: "div",
1596
+ jsxName: "Txt",
1597
+ jsx: ["Txt"]
1598
+ })
1599
+ } };
1600
+ const radixColorsPreset = /* @__PURE__ */ createPreset({
1601
+ autoP3: false,
1602
+ darkMode: { condition: "[data-mantine-color-scheme=\"dark\"] &" },
1603
+ colorScales: [...DefaultTagColors]
1604
+ });
1605
+ const actionButtons = defineRecipe({
1606
+ className: "action-buttons",
1607
+ description: "Action Buttons Container within Diagram Node (Bottom-Center)",
1608
+ base: defineParts({
1609
+ root: { selector: "&" },
1610
+ container: { selector: "& > div" }
1611
+ })({
1612
+ root: {
1613
+ display: "flex",
1614
+ flexDirection: "row",
1615
+ position: "absolute",
1616
+ top: "calc(100% - 30px)",
1617
+ transform: "translateX(-50%)",
1618
+ left: `50%`,
1619
+ width: "auto",
1620
+ minHeight: 30,
1621
+ zIndex: 1,
1622
+ justifyContent: "center",
1623
+ alignItems: "center",
1624
+ _smallZoom: { display: "none" }
1625
+ },
1626
+ container: {
1627
+ display: "flex",
1628
+ flexDirection: "row",
1629
+ gap: "1.5",
1630
+ justifyContent: "center",
1631
+ alignItems: "center"
1632
+ }
1633
+ }),
1634
+ staticCss: [{ conditions: ["*"] }]
1635
+ });
1636
+ const actionBtn = defineRecipe({
1637
+ className: "action-btn",
1638
+ description: "Action Button within Diagram Node (Bottom-Center)",
1639
+ base: {
1640
+ color: "var(--actionbtn-color)",
1641
+ opacity: .75,
1642
+ "--actionbtn-color": "var(--likec4-palette-loContrast)",
1643
+ "--actionbtn-color-hovered": "var(--likec4-palette-loContrast)",
1644
+ "--actionbtn-color-hovered-btn": "var(--likec4-palette-hiContrast)",
1645
+ "--actionbtn-bg-idle": `color-mix(in oklab , var(--likec4-palette-fill), transparent 99%)`,
1646
+ "--actionbtn-bg-hovered": `color-mix(in oklab , var(--likec4-palette-fill) 65%, var(--likec4-palette-stroke))`,
1647
+ "--actionbtn-bg-hovered-btn": `color-mix(in oklab , var(--likec4-palette-fill) 50%, var(--likec4-palette-stroke))`,
1648
+ "--ai-bg": `var(--actionbtn-bg-idle)`,
1649
+ background: `var(--ai-bg)`,
1650
+ _whenSelectable: {
1651
+ pointerEvents: "all",
1652
+ cursor: "pointer"
1653
+ },
1654
+ _whenHovered: {
1655
+ opacity: 1,
1656
+ color: "var(--actionbtn-color-hovered)",
1657
+ "--ai-bg": `var(--actionbtn-bg-hovered)`
1658
+ },
1659
+ _hover: {
1660
+ opacity: 1,
1661
+ color: "var(--actionbtn-color-hovered-btn)",
1662
+ "--ai-bg": `var(--actionbtn-bg-hovered-btn)`
1663
+ },
1664
+ _reduceGraphicsOnPan: { display: "none" },
1665
+ _smallZoom: { display: "none" },
1666
+ "& *": { pointerEvents: "none" },
1667
+ _print: { display: "none" }
1668
+ },
1669
+ variants: {
1670
+ variant: {
1671
+ transparent: { "--actionbtn-bg-hovered": `var(--actionbtn-bg-idle)` },
1672
+ filled: { boxShadow: {
1673
+ base: "1px 1px 3px 0px transparent",
1674
+ _whenHovered: "1px 1px 3px 0px rgba(0, 0, 0, 0.2)",
1675
+ _reduceGraphics: "none"
1676
+ } }
1677
+ },
1678
+ size: {
1679
+ sm: { ["--ai-size"]: `22px` },
1680
+ md: { ["--ai-size"]: `28px` }
1681
+ },
1682
+ radius: {
1683
+ sm: { "--ai-radius": `{radii.sm}` },
1684
+ md: { "--ai-radius": `{radii.md}` }
1685
+ }
1686
+ },
1687
+ defaultVariants: {
1688
+ size: "md",
1689
+ radius: "md",
1690
+ variant: "filled"
1691
+ },
1692
+ staticCss: [{
1693
+ size: ["*"],
1694
+ radius: ["*"],
1695
+ variant: ["*"],
1696
+ conditions: ["*"]
1697
+ }]
1698
+ });
1699
+ const borderWidth = {
1700
+ var: "--_border-width",
1701
+ ref: "var(--_border-width)"
1702
+ };
1703
+ const borderRadius$1 = {
1704
+ var: "--_border-radius",
1705
+ ref: "var(--_border-radius)"
1706
+ };
1707
+ const compoundTransparency = {
1708
+ var: "--_compound-transparency",
1709
+ ref: "var(--_compound-transparency)"
1710
+ };
1711
+ const borderTransparency = {
1712
+ var: "--_border-transparency",
1713
+ ref: "var(--_border-transparency)"
1714
+ };
1715
+ const indicatorSpacing = {
1716
+ var: "--_indicator-spacing",
1717
+ ref: "var(--_indicator-spacing)"
1718
+ };
1719
+ const compoundColor = {
1720
+ var: "--_compound-color",
1721
+ ref: "var(--_compound-color)"
1722
+ };
1723
+ const parts$5 = defineParts({
1724
+ root: { selector: "&" },
1725
+ titleContainer: { selector: "& .likec4-compound-title-container" },
1726
+ title: { selector: "& .likec4-compound-title" },
1727
+ icon: { selector: "& .likec4-compound-icon" },
1728
+ navigationBtn: { selector: "& .likec4-compound-navigation" },
1729
+ detailsBtn: { selector: "& .likec4-compound-details" },
1730
+ actionBtn: { selector: "& .action-btn" }
1731
+ });
1732
+ const iconSize = "20px";
1733
+ const compoundNode = defineRecipe({
1734
+ className: "likec4-compound-node",
1735
+ base: parts$5({
1736
+ root: {
1737
+ position: "relative",
1738
+ width: "100%",
1739
+ height: "100%",
1740
+ padding: "0",
1741
+ margin: "0",
1742
+ pointerEvents: "none",
1743
+ backgroundClip: "padding-box",
1744
+ borderStyle: "solid",
1745
+ borderWidth: borderWidth.ref,
1746
+ borderRadius: borderRadius$1.ref,
1747
+ boxSizing: "border-box",
1748
+ [vars.palette.outline]: {
1749
+ base: `oklch(from ${__v("palette.stroke")} calc(l - 0.15) c h)`,
1750
+ _dark: `oklch(from ${__v("palette.stroke")} calc(l + 0.2) c h)`
1751
+ },
1752
+ [borderWidth.var]: "3px",
1753
+ [borderRadius$1.var]: "6px",
1754
+ [compoundTransparency.var]: "100%",
1755
+ [borderTransparency.var]: "100%",
1756
+ [indicatorSpacing.var]: `calc(${borderWidth.ref} + 1px)`,
1757
+ [vars.icon.color]: compoundColor.ref,
1758
+ color: compoundColor.ref,
1759
+ _before: {
1760
+ position: "absolute",
1761
+ content: "\" \"",
1762
+ top: `calc(1px - ${indicatorSpacing.ref} - ${borderWidth.ref})`,
1763
+ left: `calc(1px - ${indicatorSpacing.ref} - ${borderWidth.ref})`,
1764
+ width: `calc(100% + 2 * (${indicatorSpacing.ref} + ${borderWidth.ref} - 1px))`,
1765
+ height: `calc(100% + 2 * (${indicatorSpacing.ref} + ${borderWidth.ref} - 1px))`,
1766
+ borderStyle: "solid",
1767
+ borderWidth: `calc(${borderWidth.ref} + 1px)`,
1768
+ borderRadius: `calc(${borderRadius$1.ref} + 4px)`,
1769
+ borderColor: __v("palette.outline"),
1770
+ pointerEvents: "none",
1771
+ display: {
1772
+ base: "none",
1773
+ _whenFocused: "block",
1774
+ _whenSelected: "block"
1775
+ },
1776
+ animationStyle: "indicator",
1777
+ animationPlayState: {
1778
+ base: "paused",
1779
+ _whenFocused: "running",
1780
+ _whenSelected: "running",
1781
+ _whenPanning: "paused"
1782
+ }
1783
+ },
1784
+ [`&:has(.likec4-compound-navigation) .likec4-compound-title-container`]: { paddingLeft: "[24px]" }
1785
+ },
1786
+ titleContainer: {
1787
+ position: "absolute",
1788
+ display: "flex",
1789
+ alignItems: "center",
1790
+ gap: "1.5",
1791
+ left: "2.5",
1792
+ top: "0.5",
1793
+ right: "30px",
1794
+ width: "auto",
1795
+ minHeight: "28px",
1796
+ color: compoundColor.ref,
1797
+ [`:where(.react-flow__node.draggable) &`]: {
1798
+ pointerEvents: "all",
1799
+ cursor: "grab"
1800
+ }
1801
+ },
1802
+ title: {
1803
+ flex: "1",
1804
+ fontFamily: "likec4.compound",
1805
+ fontWeight: 600,
1806
+ fontSize: "15px",
1807
+ textTransform: "uppercase",
1808
+ letterSpacing: "0.25px",
1809
+ lineHeight: "1"
1810
+ },
1811
+ icon: {
1812
+ flex: `0 0 ${iconSize}`,
1813
+ height: `${iconSize}`,
1814
+ width: `${iconSize}`,
1815
+ display: "flex",
1816
+ alignItems: "center",
1817
+ justifyContent: "center",
1818
+ mixBlendMode: {
1819
+ base: "hard-light",
1820
+ _reduceGraphicsOnPan: "normal",
1821
+ _print: "normal!"
1822
+ },
1823
+ [`& svg, & img`]: {
1824
+ width: "100%",
1825
+ height: "auto",
1826
+ maxHeight: "100%",
1827
+ pointerEvents: "none",
1828
+ filter: {
1829
+ base: [
1830
+ "drop-shadow(0 0 3px rgb(0 0 0 / 12%))",
1831
+ "drop-shadow(0 1px 8px rgb(0 0 0 / 8%))",
1832
+ "drop-shadow(1px 1px 16px rgb(0 0 0 / 3%))"
1833
+ ].join("\n"),
1834
+ _reduceGraphicsOnPan: "none"
1835
+ }
1836
+ },
1837
+ [`& img`]: { objectFit: "contain" }
1838
+ },
1839
+ actionBtn: {
1840
+ "--actionbtn-color": `oklch(from ${compoundColor.ref} calc(l - 0.1) c h)`,
1841
+ "--actionbtn-color-hovered": compoundColor.ref,
1842
+ "--actionbtn-color-hovered-btn": `oklch(from ${compoundColor.ref} calc(l + 0.2) c h)`,
1843
+ opacity: {
1844
+ base: .6,
1845
+ _whenHovered: .75,
1846
+ _whenSelected: .75,
1847
+ _hover: 1
1848
+ },
1849
+ _noReduceGraphics: { transition: "fast" },
1850
+ _print: { display: "none" }
1851
+ },
1852
+ navigationBtn: {
1853
+ position: "absolute",
1854
+ top: "0.5",
1855
+ left: "0.5",
1856
+ _smallZoom: { display: "none" },
1857
+ _print: { display: "none" }
1858
+ },
1859
+ detailsBtn: {
1860
+ position: "absolute",
1861
+ top: "0.5",
1862
+ right: "0.5",
1863
+ _smallZoom: { display: "none" },
1864
+ _print: { display: "none" }
1865
+ }
1866
+ }),
1867
+ variants: {
1868
+ isTransparent: {
1869
+ false: parts$5({ root: {
1870
+ boxShadow: {
1871
+ _noReduceGraphics: "0 4px 10px 0.5px rgb(0 0 0/10%) , 0 2px 2px -1px rgb(0 0 0/40%)",
1872
+ _whenSelected: "none",
1873
+ _whenPanning: "none !important"
1874
+ },
1875
+ backgroundColor: __v("palette.fill"),
1876
+ borderColor: __v("palette.stroke"),
1877
+ [compoundColor.var]: alpha(__v("palette.hiContrast"), 90)
1878
+ } }),
1879
+ true: parts$5({ root: {
1880
+ backgroundColor: alpha(__v("palette.fill"), compoundTransparency.ref),
1881
+ borderColor: alpha(__v("palette.stroke"), borderTransparency.ref),
1882
+ [compoundColor.var]: `color-mix(in oklch, ${__v("palette.hiContrast")}, ${__v("palette.stroke")} 10%)`
1883
+ } })
1884
+ },
1885
+ inverseColor: {
1886
+ true: parts$5({
1887
+ root: {
1888
+ "--_mix": `color-mix(in oklch, ${__v("palette.hiContrast")}, ${__v("palette.stroke")} 60%)`,
1889
+ [compoundColor.var]: {
1890
+ base: "oklch(from var(--_mix) calc(l - 0.2) c h)",
1891
+ _dark: "oklch(from var(--_mix) calc(l + 0.2) c h)"
1892
+ }
1893
+ },
1894
+ actionBtn: {
1895
+ "--actionbtn-color": compoundColor.ref,
1896
+ _light: {
1897
+ "--actionbtn-color-hovered": __v("palette.stroke"),
1898
+ "--actionbtn-color-hovered-btn": __v("palette.hiContrast"),
1899
+ "--actionbtn-bg-hovered": alpha(__v("palette.fill"), 30),
1900
+ "--actionbtn-bg-hovered-btn": __v("palette.fill")
1901
+ }
1902
+ }
1903
+ }),
1904
+ false: {}
1905
+ },
1906
+ borderStyle: {
1907
+ solid: parts$5({ root: { borderStyle: "solid" } }),
1908
+ dashed: parts$5({ root: { borderStyle: "dashed" } }),
1909
+ dotted: parts$5({ root: { borderStyle: "dotted" } }),
1910
+ none: parts$5({ root: {
1911
+ borderColor: "transparent!",
1912
+ backgroundClip: "border-box!",
1913
+ [indicatorSpacing.var]: `calc(${borderWidth.ref} * 2)`
1914
+ } })
1915
+ }
1916
+ },
1917
+ defaultVariants: {
1918
+ isTransparent: false,
1919
+ inverseColor: false,
1920
+ borderStyle: "none"
1921
+ },
1922
+ staticCss: [{
1923
+ isTransparent: ["*"],
1924
+ inverseColor: ["*"],
1925
+ borderStyle: ["*"]
1926
+ }]
1927
+ });
1928
+ const edgeActionBtn = defineRecipe({
1929
+ className: "likec4-edge-action-btn",
1930
+ description: "Action Button within Diagram Edge Label",
1931
+ base: {
1932
+ pointerEvents: "all",
1933
+ color: `var(--xy-edge-label-color)`,
1934
+ cursor: "pointer",
1935
+ opacity: .75,
1936
+ transition: "fast",
1937
+ translate: "auto",
1938
+ "--ai-bg": "transparent",
1939
+ "--ai-hover": `color-mix(in oklab , var(--xy-edge-label-background-color), {colors.likec4.mixColor} 10%)`,
1940
+ "--ai-size": `28px`,
1941
+ "--ai-radius": `{radii.sm}`,
1942
+ _hover: {
1943
+ translateY: "[2px]",
1944
+ scale: 1.15
1945
+ },
1946
+ _active: {
1947
+ translateY: "[-1px]",
1948
+ scale: "0.9"
1949
+ },
1950
+ _whenHovered: {
1951
+ "--ai-bg": "var(--xy-edge-label-background-color)",
1952
+ opacity: 1
1953
+ },
1954
+ "& .tabler-icon": {
1955
+ width: "80%",
1956
+ height: "80%",
1957
+ strokeWidth: "2"
1958
+ },
1959
+ _print: { display: "none" }
1960
+ },
1961
+ variants: {},
1962
+ defaultVariants: {},
1963
+ staticCss: [{ conditions: ["*"] }]
1964
+ });
1965
+ const parts$4 = defineParts({
1966
+ root: { selector: "&" },
1967
+ stepNumber: { selector: "& .likec4-edge-label__step-number" },
1968
+ contents: { selector: "& .likec4-edge-label__contents" },
1969
+ label: { selector: "& .likec4-edge-label__text" },
1970
+ technology: { selector: "& .likec4-edge-label__technology" }
1971
+ });
1972
+ const edgeLabel = defineRecipe({
1973
+ className: "likec4-edge-label",
1974
+ jsx: [],
1975
+ base: parts$4({
1976
+ root: {
1977
+ fontFamily: "likec4.relation",
1978
+ paddingBlock: "1",
1979
+ paddingInline: "1.5",
1980
+ display: "flex",
1981
+ flexDirection: "column",
1982
+ alignItems: "center",
1983
+ width: "max-content",
1984
+ maxWidth: "100%",
1985
+ gap: "0.5",
1986
+ color: "var(--xy-edge-label-color)",
1987
+ background: "var(--xy-edge-label-background-color)",
1988
+ border: "0px solid transparent",
1989
+ borderRadius: "4px"
1990
+ },
1991
+ stepNumber: {
1992
+ alignSelf: "stretch",
1993
+ flex: "0 0 auto",
1994
+ fontWeight: 600,
1995
+ fontSize: "14px",
1996
+ padding: "1",
1997
+ textAlign: "center",
1998
+ minWidth: "22px",
1999
+ borderTopLeftRadius: "4px",
2000
+ borderBottomLeftRadius: "4px",
2001
+ _only: {
2002
+ borderRadius: "4px",
2003
+ minWidth: "24px"
2004
+ },
2005
+ background: `color-mix(in oklab, var(--xy-edge-label-background-color), {colors.likec4.mixColor} 12%)`,
2006
+ fontVariantNumeric: "tabular-nums",
2007
+ [":where([data-likec4-color=\"gray\"]) &"]: { _dark: { background: `[color-mix(in oklab, var(--xy-edge-label-background-color), {colors.likec4.mixColor} 15%)]` } }
2008
+ },
2009
+ contents: {
2010
+ display: "contents",
2011
+ _empty: { display: "none !important" }
2012
+ },
2013
+ label: {
2014
+ whiteSpaceCollapse: "preserve-breaks",
2015
+ fontSize: "14px",
2016
+ lineHeight: "1.2",
2017
+ margin: "0"
2018
+ },
2019
+ technology: {
2020
+ textAlign: "center",
2021
+ whiteSpaceCollapse: "preserve-breaks",
2022
+ fontSize: "11px",
2023
+ lineHeight: "1",
2024
+ opacity: .75
2025
+ }
2026
+ }),
2027
+ variants: {
2028
+ pointerEvents: {
2029
+ none: parts$4({ root: { pointerEvents: "none" } }),
2030
+ all: parts$4({ root: { pointerEvents: "all" } })
2031
+ },
2032
+ cursor: {
2033
+ pointer: parts$4({ root: { cursor: "pointer" } }),
2034
+ default: parts$4({ root: { cursor: "default" } })
2035
+ },
2036
+ isStepEdge: {
2037
+ false: {},
2038
+ true: parts$4({
2039
+ root: {
2040
+ flexDirection: "row",
2041
+ gap: "1",
2042
+ padding: "0"
2043
+ },
2044
+ contents: {
2045
+ display: "flex",
2046
+ flexDirection: "column",
2047
+ alignItems: "center",
2048
+ paddingTop: "0.5",
2049
+ paddingRight: "1",
2050
+ paddingBottom: "1",
2051
+ gap: "0.5"
2052
+ },
2053
+ label: {
2054
+ py: "0.5",
2055
+ paddingRight: "0.5"
2056
+ }
2057
+ })
2058
+ }
2059
+ },
2060
+ defaultVariants: {
2061
+ pointerEvents: "all",
2062
+ isStepEdge: false,
2063
+ cursor: "default"
2064
+ },
2065
+ staticCss: [{
2066
+ conditions: ["*"],
2067
+ isStepEdge: ["*"],
2068
+ cursor: ["*"],
2069
+ pointerEvents: ["*"]
2070
+ }]
2071
+ });
2072
+ const edgePath = defineSlotRecipe({
2073
+ description: "Recipe for Edge Path",
2074
+ slots: [
2075
+ "path",
2076
+ "pathBg",
2077
+ "markersCtx",
2078
+ "middlePoint"
2079
+ ],
2080
+ className: "likec4-edge",
2081
+ jsx: [],
2082
+ base: {
2083
+ path: {
2084
+ fill: "none",
2085
+ strokeDashoffset: 0,
2086
+ _noReduceGraphics: {
2087
+ animationStyle: "xyedgeAnimated",
2088
+ animationPlayState: "paused",
2089
+ transition: "stroke 130ms ease-out,stroke-width 130ms ease-out"
2090
+ },
2091
+ [`:where([data-edge-dir='back']) &`]: { animationDirection: "reverse" },
2092
+ _whenHovered: { _noReduceGraphics: {
2093
+ animationPlayState: "running",
2094
+ animationDelay: "450ms"
2095
+ } },
2096
+ [`:where(.selected, [data-edge-active='true'], [data-edge-animated='true']) &`]: { _noReduceGraphics: {
2097
+ animationPlayState: "running",
2098
+ animationDelay: "0ms"
2099
+ } },
2100
+ _whenDimmed: { animationPlayState: "paused" },
2101
+ _smallZoom: { animationName: "none" },
2102
+ _whenPanning: {
2103
+ strokeDasharray: "none !important",
2104
+ animationPlayState: "paused"
2105
+ }
2106
+ },
2107
+ pathBg: {
2108
+ pointerEvents: "none",
2109
+ fill: "none",
2110
+ strokeWidth: "calc(var(--xy-edge-stroke-width) + 2)",
2111
+ strokeOpacity: .08,
2112
+ _noReduceGraphics: {
2113
+ transitionProperty: "stroke-width, stroke-opacity",
2114
+ transitionDuration: "fast",
2115
+ transitionTimingFunction: "inOut"
2116
+ },
2117
+ _whenHovered: {
2118
+ transitionTimingFunction: "out",
2119
+ strokeWidth: "calc(var(--xy-edge-stroke-width) + 4)",
2120
+ strokeOpacity: .2
2121
+ },
2122
+ _whenSelected: {
2123
+ strokeWidth: "calc(var(--xy-edge-stroke-width) + 6)",
2124
+ strokeOpacity: .25,
2125
+ _whenHovered: { strokeOpacity: .4 }
2126
+ }
2127
+ },
2128
+ markersCtx: {
2129
+ fill: "[var(--xy-edge-stroke)]",
2130
+ stroke: "[var(--xy-edge-stroke)]"
2131
+ },
2132
+ middlePoint: {
2133
+ visibility: "hidden",
2134
+ offsetDistance: "50%",
2135
+ cx: 0,
2136
+ cy: 0,
2137
+ r: 4,
2138
+ pointerEvents: "none"
2139
+ }
2140
+ },
2141
+ staticCss: [{ conditions: ["*"] }]
2142
+ });
2143
+ const elementNode = defineRecipe({
2144
+ className: "likec4-element-node",
2145
+ jsx: ["ElementNodeContainer", "ElementNode"],
2146
+ base: {
2147
+ position: "relative",
2148
+ width: "full",
2149
+ height: "full",
2150
+ padding: "0",
2151
+ margin: "0",
2152
+ display: "flex",
2153
+ alignItems: "center",
2154
+ justifyContent: "center",
2155
+ pointerEvents: "none",
2156
+ _focusVisible: { outline: "none" },
2157
+ _whenSelectable: {
2158
+ pointerEvents: "all",
2159
+ _before: {
2160
+ content: "\" \"",
2161
+ position: "absolute",
2162
+ top: "calc(100% - 4px)",
2163
+ left: "0",
2164
+ width: "full",
2165
+ height: "24px",
2166
+ background: "transparent",
2167
+ pointerEvents: "all"
2168
+ }
2169
+ },
2170
+ _reduceGraphicsOnPan: { _before: { display: "none" } },
2171
+ [`:where(.react-flow__node.selectable:not(.dragging)) &`]: { cursor: "pointer" },
2172
+ [`&:is([data-likec4-shape="document"])`]: { paddingBottom: "16px" }
2173
+ },
2174
+ staticCss: [{ conditions: ["*"] }]
2175
+ });
2176
+ const parts$3 = defineParts({
2177
+ root: { selector: "&" },
2178
+ icon: { selector: "& [data-likec4-icon]" },
2179
+ content: { selector: "& .likec4-element-node-content" },
2180
+ title: { selector: "& [data-likec4-node-title]" },
2181
+ description: { selector: "& [data-likec4-node-description]" },
2182
+ technology: { selector: "& [data-likec4-node-technology]" }
2183
+ });
2184
+ const hasIcon = "&:has([data-likec4-icon])";
2185
+ const textAlign = "--__text-align";
2186
+ const varTextAlign = `var(${textAlign})`;
2187
+ const elementNodeData = defineRecipe({
2188
+ className: "likec4-element-node-data",
2189
+ jsx: [
2190
+ "ElementNodeData",
2191
+ "ElementNodeData.Root",
2192
+ "ElementTitle",
2193
+ "Root"
2194
+ ],
2195
+ base: parts$3({
2196
+ root: {
2197
+ position: "relative",
2198
+ flex: "1",
2199
+ height: "fit-content",
2200
+ width: "fit-content",
2201
+ maxHeight: "100%",
2202
+ maxWidth: "100%",
2203
+ margin: "auto",
2204
+ display: "flex",
2205
+ alignItems: "center",
2206
+ justifyContent: "center",
2207
+ flexDirection: "row",
2208
+ paddingTop: __v("spacing"),
2209
+ paddingBottom: __v("spacing"),
2210
+ paddingLeft: `calc(${__v("spacing")} + 8px)`,
2211
+ paddingRight: `calc(${__v("spacing")} + 8px)`,
2212
+ overflow: "hidden",
2213
+ pointerEvents: "none",
2214
+ gap: "3",
2215
+ [textAlign]: "center",
2216
+ _shapeQueue: {
2217
+ paddingLeft: "46px",
2218
+ paddingRight: "16px"
2219
+ },
2220
+ _shapeMobile: {
2221
+ paddingLeft: "46px",
2222
+ paddingRight: "16px"
2223
+ },
2224
+ _shapeCylinder: { paddingTop: "30px" },
2225
+ _shapeStorage: { paddingTop: "30px" },
2226
+ _shapeBrowser: {
2227
+ paddingTop: "32px",
2228
+ paddingBottom: "28px"
2229
+ },
2230
+ _shapeBucket: {
2231
+ paddingLeft: `calc(${__v("spacing")} + 20px)`,
2232
+ paddingRight: `calc(${__v("spacing")} + 20px)`
2233
+ },
2234
+ _shapeComponent: { paddingLeft: `calc(${__v("spacing")} + 30px)` },
2235
+ _shapeSizeXs: { [vars.icon.size]: `${defaultSizes.iconSizes.xs}px` },
2236
+ _shapeSizeSm: { [vars.icon.size]: `${defaultSizes.iconSizes.sm}px` },
2237
+ _shapeSizeMd: { [vars.icon.size]: `${defaultSizes.iconSizes.md}px` },
2238
+ _shapeSizeLg: {
2239
+ [vars.icon.size]: `${defaultSizes.iconSizes.lg}px`,
2240
+ gap: "4"
2241
+ },
2242
+ _shapeSizeXl: {
2243
+ [vars.icon.size]: `${defaultSizes.iconSizes.xl}px`,
2244
+ gap: "4"
2245
+ },
2246
+ [hasIcon]: { gap: "4" }
2247
+ },
2248
+ icon: {
2249
+ flex: `0 0 ${__v("icon.size", "48px")}`,
2250
+ height: __v("icon.size", "48px"),
2251
+ width: __v("icon.size", "48px"),
2252
+ display: "flex",
2253
+ alignSelf: "flex-start",
2254
+ alignItems: "center",
2255
+ justifyContent: "center",
2256
+ pointerEvents: "none",
2257
+ color: __v("icon.color", "palette.hiContrast"),
2258
+ "& svg, & img": {
2259
+ width: "100%",
2260
+ height: "auto",
2261
+ maxHeight: "100%",
2262
+ transition: "fast",
2263
+ filter: {
2264
+ base: ["drop-shadow(0 1px 3px rgb(0 0 0 / 20%))"].join("\n"),
2265
+ _whenHovered: ["drop-shadow(0 2px 4px rgb(0 0 0 / 30%))"].join("\n"),
2266
+ _reduceGraphicsOnPan: "none!"
2267
+ }
2268
+ },
2269
+ "& img": { objectFit: "contain" }
2270
+ },
2271
+ content: {
2272
+ height: "fit-content",
2273
+ width: "fit-content",
2274
+ maxHeight: "100%",
2275
+ maxWidth: "100%",
2276
+ flex: "0 1 auto",
2277
+ display: "flex",
2278
+ flexDirection: "column",
2279
+ alignItems: "stretch",
2280
+ justifyContent: "center",
2281
+ flexWrap: "nowrap",
2282
+ overflow: "hidden",
2283
+ gap: "2",
2284
+ "&:has([data-likec4-node-description]):has([data-likec4-node-technology])": { gap: "1.5" }
2285
+ },
2286
+ title: {
2287
+ flex: "0 0 auto",
2288
+ fontFamily: "likec4.element",
2289
+ fontWeight: "medium",
2290
+ fontSize: __v("textsize"),
2291
+ lineHeight: "sm",
2292
+ textWrapStyle: "balance",
2293
+ whiteSpace: "preserve-breaks",
2294
+ textAlign: varTextAlign,
2295
+ color: __v("palette.hiContrast"),
2296
+ lineClamp: {
2297
+ base: 3,
2298
+ _shapeSizeXs: 2,
2299
+ _shapeSizeSm: 2
2300
+ }
2301
+ },
2302
+ description: {
2303
+ flexGrow: "0",
2304
+ flexShrink: "1",
2305
+ fontFamily: "likec4.element",
2306
+ fontWeight: "420",
2307
+ fontSize: `calc(${__v("textsize")} * 0.74)`,
2308
+ lineHeight: "xs",
2309
+ textWrapStyle: "pretty",
2310
+ "--text-fz": `calc(${__v("textsize")} * 0.74)`,
2311
+ color: __v("palette.loContrast"),
2312
+ textAlign: varTextAlign,
2313
+ textOverflow: "ellipsis",
2314
+ overflow: "hidden",
2315
+ lineClamp: {
2316
+ base: "5",
2317
+ _shapeSizeSm: "3"
2318
+ },
2319
+ display: {
2320
+ _shapeSizeXs: "none!",
2321
+ _smallZoom: "none!"
2322
+ },
2323
+ "& a": { pointerEvents: "all" },
2324
+ "& .markdown-alert": { mixBlendMode: "screen" }
2325
+ },
2326
+ technology: {
2327
+ flex: "0 0 auto",
2328
+ fontFamily: "likec4.element",
2329
+ fontWeight: "normal",
2330
+ fontSize: `calc(${__v("textsize")} * 0.635)`,
2331
+ lineHeight: "xs",
2332
+ "--text-fz": `calc(${__v("textsize")} * 0.635)`,
2333
+ color: __v("palette.loContrast"),
2334
+ textAlign: varTextAlign,
2335
+ textWrap: "balance",
2336
+ opacity: {
2337
+ base: .92,
2338
+ _whenHovered: 1
2339
+ },
2340
+ display: {
2341
+ _shapeSizeXs: "none!",
2342
+ _shapeSizeSm: "none!",
2343
+ _smallZoom: "none!"
2344
+ }
2345
+ }
2346
+ }),
2347
+ variants: {
2348
+ iconPosition: {
2349
+ left: parts$3({ root: { [hasIcon]: {
2350
+ [textAlign]: "left",
2351
+ "& .likec4-element-node-content": {
2352
+ minWidth: `calc(50% + calc(${__v("icon.size")} / 2))`,
2353
+ alignItems: "flex-start"
2354
+ }
2355
+ } } }),
2356
+ right: parts$3({ root: { [hasIcon]: {
2357
+ flexDirection: "row-reverse",
2358
+ [textAlign]: "right",
2359
+ gap: "4",
2360
+ "& .likec4-element-node-content": {
2361
+ minWidth: `calc(50% - calc(${__v("icon.size")} / 2))`,
2362
+ alignItems: "flex-end"
2363
+ }
2364
+ } } }),
2365
+ top: parts$3({
2366
+ root: { [hasIcon]: {
2367
+ flexDirection: "column",
2368
+ gap: "2",
2369
+ height: "100%",
2370
+ "& .likec4-element-node-content": {
2371
+ minHeight: `calc(50% - ${__v("icon.size")})`,
2372
+ justifyContent: "flex-start"
2373
+ }
2374
+ } },
2375
+ icon: { alignSelf: "center" }
2376
+ }),
2377
+ bottom: parts$3({
2378
+ root: { [hasIcon]: {
2379
+ flexDirection: "column-reverse",
2380
+ gap: "2",
2381
+ height: "100%",
2382
+ "& .likec4-element-node-content": {
2383
+ justifyContent: "flex-end",
2384
+ minHeight: `calc(50% - ${__v("icon.size")})`
2385
+ }
2386
+ } },
2387
+ icon: { alignSelf: "center" }
2388
+ })
2389
+ },
2390
+ withIconColor: {
2391
+ true: parts$3({ icon: { "& svg": { color: __v("icon.color", "palette.stroke") } } }),
2392
+ false: parts$3({ icon: { mixBlendMode: {
2393
+ base: "hard-light",
2394
+ _reduceGraphicsOnPan: "normal"
2395
+ } } })
2396
+ }
2397
+ },
2398
+ defaultVariants: {
2399
+ iconPosition: "left",
2400
+ withIconColor: false
2401
+ },
2402
+ staticCss: [{
2403
+ withIconColor: ["*"],
2404
+ iconPosition: ["*"],
2405
+ conditions: ["*"]
2406
+ }]
2407
+ });
2408
+ const parts$2 = defineParts({
2409
+ root: { selector: "&" },
2410
+ outline: { selector: "& .likec4-shape-outline" },
2411
+ multipleHtml: { selector: "& .likec4-shape-multiple" },
2412
+ componentTopLeftRect: { selector: "& .top-left-rect" },
2413
+ multipleSvg: { selector: "&:is([data-likec4-shape-multiple=\"true\"])" }
2414
+ });
2415
+ const elementShapeRecipe = defineRecipe({
2416
+ description: "Recipe for Diagram node shape",
2417
+ className: "likec4-element-shape",
2418
+ base: parts$2({
2419
+ root: {
2420
+ top: "0",
2421
+ left: "0",
2422
+ position: "absolute",
2423
+ width: "100%",
2424
+ height: "100%",
2425
+ pointerEvents: "none",
2426
+ overflow: "visible",
2427
+ [vars.palette.outline]: {
2428
+ base: `oklch(from ${__v("palette.stroke")} calc(l * 0.9) c h)`,
2429
+ _dark: `oklch(from ${__v("palette.stroke")} calc(l * 1.2) calc(c * 1.05) h)`
2430
+ },
2431
+ ["--likec4-outline-size"]: `4px`
2432
+ },
2433
+ outline: {
2434
+ opacity: .8,
2435
+ transitionBehavior: "allow-discrete",
2436
+ visibility: {
2437
+ base: "hidden",
2438
+ _smallZoom: "hidden",
2439
+ _whenSelected: "visible",
2440
+ _whenFocused: "visible",
2441
+ _groupFocusVisible: "visible"
2442
+ },
2443
+ animationPlayState: {
2444
+ base: "paused",
2445
+ _whenSelected: "running",
2446
+ _whenFocused: "running",
2447
+ _groupFocusVisible: "running",
2448
+ _whenPanning: "paused"
2449
+ },
2450
+ pointerEvents: "none"
2451
+ }
2452
+ }),
2453
+ variants: {
2454
+ shapetype: {
2455
+ html: parts$2({
2456
+ root: {
2457
+ backgroundColor: "var(--likec4-palette-fill)",
2458
+ border: "none",
2459
+ borderRadius: "6px",
2460
+ boxShadow: {
2461
+ base: [
2462
+ "0 2px 1px 0 rgb(0 0 0 / 21%)",
2463
+ "0 1px 1px 0 color-mix(in oklab, var(--likec4-palette-stroke) 40%, transparent)",
2464
+ "0 5px 3px 0 rgb(0 0 0 / 10%)"
2465
+ ].join(","),
2466
+ _whenHovered: {
2467
+ base: `rgba(38, 57, 77, 95%) 0px 20px 30px -10px`,
2468
+ _dark: `rgba(10, 11, 16, 90%) 0px 20px 30px -10px`
2469
+ },
2470
+ _whenSelected: "none",
2471
+ _smallZoom: "none",
2472
+ _whenPanning: "none"
2473
+ },
2474
+ transition: {
2475
+ base: "background-color 150ms, box-shadow 130ms",
2476
+ _reduceGraphicsOnPan: "none"
2477
+ },
2478
+ transitionTimingFunction: "out",
2479
+ transitionDelay: "0ms"
2480
+ },
2481
+ multipleHtml: {
2482
+ position: "absolute",
2483
+ content: "\" \"",
2484
+ top: "16px",
2485
+ left: "16px",
2486
+ width: "calc(100% - 6px)",
2487
+ height: "calc(100% - 6px)",
2488
+ backgroundColor: "var(--likec4-palette-fill)",
2489
+ borderRadius: "6px",
2490
+ zIndex: -1,
2491
+ filter: "brightness(0.5) !important",
2492
+ visibility: {
2493
+ base: "visible",
2494
+ _smallZoom: "hidden",
2495
+ _whenSelected: "hidden",
2496
+ _whenFocused: "hidden",
2497
+ _reduceGraphicsOnPan: "hidden"
2498
+ },
2499
+ transition: "normal",
2500
+ _whenHovered: { transform: "translate(-14px, -14px)" }
2501
+ },
2502
+ outline: {
2503
+ position: "absolute",
2504
+ content: "\" \"",
2505
+ top: `[calc(-1 * var(--likec4-outline-size) - 1px)]`,
2506
+ left: `[calc(-1 * var(--likec4-outline-size) - 1px)]`,
2507
+ width: `[calc(100% + 2 * var(--likec4-outline-size) + 2px)]`,
2508
+ height: `[calc(100% + 2 * var(--likec4-outline-size) + 2px)]`,
2509
+ borderStyle: "solid",
2510
+ borderWidth: "var(--likec4-outline-size)",
2511
+ borderRadius: "11px",
2512
+ borderColor: "var(--likec4-palette-outline)",
2513
+ animationStyle: "indicator"
2514
+ }
2515
+ }),
2516
+ svg: parts$2({
2517
+ root: {
2518
+ fill: "var(--likec4-palette-fill)",
2519
+ stroke: "var(--likec4-palette-stroke)",
2520
+ transition: `fill 120ms {easings.in}, filter 130ms {easings.in}`,
2521
+ transitionTimingFunction: {
2522
+ base: "out",
2523
+ _whenHovered: "in"
2524
+ },
2525
+ transitionDelay: "0ms",
2526
+ filter: {
2527
+ base: [
2528
+ "drop-shadow(0 2px 1px rgba(0, 0, 0, 0.21))",
2529
+ "drop-shadow(0 1px 1px color-mix(in oklab, var(--likec4-palette-stroke) 40%, transparent))",
2530
+ "drop-shadow(0 5px 3px rgba(0, 0, 0, 0.1))"
2531
+ ].join("\n"),
2532
+ _whenHovered: [
2533
+ "drop-shadow(0 2px 1px rgba(0, 0, 0, 0.12))",
2534
+ "drop-shadow(0px 4px 2px rgba(0, 0, 0, 0.12))",
2535
+ "drop-shadow(0px 8px 4px rgba(0, 0, 0, 0.12))",
2536
+ "drop-shadow(0px 16px 8px rgba(0, 0, 0, 0.1))",
2537
+ "drop-shadow(0px 32px 16px rgba(0, 0, 0, 0.09))"
2538
+ ].join("\n"),
2539
+ _whenSelected: "none",
2540
+ _smallZoom: "none",
2541
+ _whenPanning: "none"
2542
+ },
2543
+ "& [data-likec4-fill=\"fill\"]": { fill: "var(--likec4-palette-fill)" },
2544
+ "& [data-likec4-fill=\"stroke\"]": { fill: "var(--likec4-palette-stroke)" },
2545
+ "& [data-likec4-fill=\"mix-stroke\"]": { fill: "color-mix(in oklab, var(--likec4-palette-stroke) 80%, var(--likec4-palette-fill))" }
2546
+ },
2547
+ componentTopLeftRect: {
2548
+ "--mix-bg": "40%",
2549
+ fill: "color-mix(in oklab, var(--likec4-palette-stroke) var(--mix-bg), var(--likec4-palette-fill))",
2550
+ transition: `all 120ms {easings.in}`,
2551
+ transitionDelay: "0ms",
2552
+ strokeOpacity: .8,
2553
+ _whenSelected: {
2554
+ transitionTimingFunction: "out",
2555
+ "--mix-bg": "60%",
2556
+ strokeOpacity: 1
2557
+ },
2558
+ _whenHovered: {
2559
+ transitionTimingFunction: "out",
2560
+ "--mix-bg": "60%",
2561
+ strokeOpacity: 1
2562
+ }
2563
+ },
2564
+ multipleSvg: {
2565
+ transformOrigin: {
2566
+ base: "50% 50%",
2567
+ _shapeQueue: "75% 25%",
2568
+ _shapeCylinder: "50% 100%",
2569
+ _shapeStorage: "50% 100%"
2570
+ },
2571
+ transform: {
2572
+ base: "translate(14px, 14px) perspective(200px) translateZ(-4px)",
2573
+ _whenHovered: "translate(2px, 2px) perspective(200px) translateZ(-4px)"
2574
+ },
2575
+ transitionBehavior: "allow-discrete",
2576
+ transitionProperty: "fill, filter, transform",
2577
+ transitionDuration: "faster",
2578
+ filter: "brightness(0.5) !important",
2579
+ stroke: "none",
2580
+ display: {
2581
+ _smallZoom: "none",
2582
+ _reduceGraphicsOnPan: "none",
2583
+ _whenSelected: "none",
2584
+ _whenFocused: "none"
2585
+ },
2586
+ "& [data-likec4-fill=\"mix-stroke\"]": { fill: "var(--likec4-palette-fill)" }
2587
+ },
2588
+ outline: {
2589
+ stroke: "var(--likec4-palette-outline)",
2590
+ fill: "none",
2591
+ strokeWidth: 4,
2592
+ animationStyle: "indicator"
2593
+ }
2594
+ })
2595
+ },
2596
+ withBorder: {
2597
+ true: {},
2598
+ false: {}
2599
+ },
2600
+ withOutline: {
2601
+ true: parts$2({ outline: { display: "block" } }),
2602
+ false: parts$2({ outline: { display: "none" } })
2603
+ }
2604
+ },
2605
+ defaultVariants: {
2606
+ withBorder: false,
2607
+ withOutline: false
2608
+ },
2609
+ compoundVariants: [{
2610
+ shapetype: "html",
2611
+ withBorder: true,
2612
+ css: parts$2({
2613
+ root: {
2614
+ borderStyle: "solid",
2615
+ borderWidth: "3px",
2616
+ borderColor: "var(--likec4-palette-stroke)",
2617
+ "--likec4-outline-size": "6px"
2618
+ },
2619
+ outline: { borderRadius: "10px" }
2620
+ })
2621
+ }],
2622
+ staticCss: [{
2623
+ shapetype: ["*"],
2624
+ withOutline: ["*"],
2625
+ withBorder: ["*"]
2626
+ }]
2627
+ });
2628
+ const likec4tag = defineRecipe({
2629
+ className: "likec4-tag",
2630
+ base: {
2631
+ pointerEvents: "all",
2632
+ display: "inline-flex",
2633
+ alignItems: "center",
2634
+ justifyContent: "center",
2635
+ minWidth: 40,
2636
+ width: "min-content",
2637
+ transition: "fast",
2638
+ fontSize: "xs",
2639
+ gap: "[1px]",
2640
+ cursor: "default",
2641
+ fontFamily: "likec4",
2642
+ fontWeight: "bold",
2643
+ layerStyle: "likec4.tag",
2644
+ whiteSpace: "nowrap",
2645
+ px: "1",
2646
+ py: "0"
2647
+ },
2648
+ variants: { autoTextColor: {
2649
+ false: { "& > span": {
2650
+ color: "likec4.tag.text",
2651
+ _first: { opacity: .65 }
2652
+ } },
2653
+ true: { "& > span": {
2654
+ color: "transparent",
2655
+ filter: "invert(1) grayscale(1) brightness(1.3) contrast(1000)",
2656
+ background: "inherit",
2657
+ backgroundClip: "text",
2658
+ mixBlendMode: {
2659
+ base: "plus-lighter",
2660
+ _print: "normal!"
2661
+ }
2662
+ } }
2663
+ } },
2664
+ defaultVariants: { autoTextColor: false },
2665
+ staticCss: [{
2666
+ autoTextColor: ["true", "false"],
2667
+ conditions: ["hover"]
2668
+ }]
2669
+ });
2670
+ const markdownBlock = defineRecipe({
2671
+ className: "likec4-markdown-block",
2672
+ jsx: ["MarkdownBlock", "Markdown"],
2673
+ description: "Block with Markdown content",
2674
+ base: {
2675
+ "--text-fz": "1em",
2676
+ "--text-fz-sm": "calc(var(--text-fz) * var(--mantine-scale, 1) / 1.125)",
2677
+ "--text-fz-md": "calc(var(--text-fz) * var(--mantine-scale, 1))",
2678
+ "--typography-spacing": "calc(0.75 * var(--text-fz-md))",
2679
+ "--text-fw-headings": "600",
2680
+ "--code-background": {
2681
+ base: mantine.colors.gray[2],
2682
+ _dark: mantine.colors.dark[8]
2683
+ },
2684
+ "--code-color": {
2685
+ base: mantine.colors.black,
2686
+ _dark: mantine.colors.white
2687
+ },
2688
+ _dark: {
2689
+ "--color-border-default": "#30363d",
2690
+ "--color-accent-fg": "#58a6ff",
2691
+ "--color-accent-emphasis": "#1f6feb",
2692
+ "--color-danger-fg": "#f85149",
2693
+ "--color-danger-emphasis": "#da3633",
2694
+ "--color-attention-fg": "#d29922",
2695
+ "--color-attention-emphasis": "#9e6a03",
2696
+ "--color-done-fg": "#a371f7",
2697
+ "--color-done-emphasis": "#8957e5",
2698
+ "--color-success-fg": "#3fb950",
2699
+ "--color-success-emphasis": "#238636"
2700
+ },
2701
+ _light: {
2702
+ "--color-border-default": "#d0d7de",
2703
+ "--color-accent-fg": "#0969da",
2704
+ "--color-accent-emphasis": "#0969da",
2705
+ "--color-danger-fg": "#d1242f",
2706
+ "--color-danger-emphasis": "#cf222e",
2707
+ "--color-attention-fg": "#9a6700",
2708
+ "--color-attention-emphasis": "#9a6700",
2709
+ "--color-done-fg": "#8250df",
2710
+ "--color-done-emphasis": "#8250df",
2711
+ "--color-success-fg": "#1a7f37",
2712
+ "--color-success-emphasis": "#1f883d"
2713
+ },
2714
+ fontSize: "var(--text-fz-md)",
2715
+ lineHeight: mantine.lineHeight,
2716
+ "& :first-child": { marginTop: "0" },
2717
+ "& :last-child": { marginBottom: "0" },
2718
+ "& :where(h1, h2, h3, h4, h5, h6)": {
2719
+ lineHeight: "1.5",
2720
+ textWrap: "var(--mantine-heading-text-wrap)",
2721
+ fontFamily: mantine.fontFamilyHeadings,
2722
+ marginBottom: "var(--typography-spacing)"
2723
+ },
2724
+ "& :is(h1, h2, h3, h4, h5, h6):not(:first-child)": { marginTop: "var(--typography-spacing)" },
2725
+ "& :is(h1)": {
2726
+ fontSize: "calc(1.476 * var(--text-fz-md))",
2727
+ fontWeight: "var(--text-fw-headings)"
2728
+ },
2729
+ "& :is(h2)": {
2730
+ fontSize: "calc(1.383 * var(--text-fz-md))",
2731
+ fontWeight: "var(--text-fw-headings)"
2732
+ },
2733
+ "& :is(h3)": {
2734
+ fontSize: "calc(1.296 * var(--text-fz-md))",
2735
+ fontWeight: "var(--text-fw-headings)"
2736
+ },
2737
+ "& :is(h4)": {
2738
+ fontSize: "calc(1.215 * var(--text-fz-md))",
2739
+ fontWeight: "var(--text-fw-headings)"
2740
+ },
2741
+ "& :is(h5)": {
2742
+ fontSize: "calc(1.138 * var(--text-fz-md))",
2743
+ fontWeight: "var(--text-fw-headings)"
2744
+ },
2745
+ "& :is(h6)": {
2746
+ fontSize: "calc(1.067 * var(--text-fz-md))",
2747
+ fontWeight: "var(--text-fw-headings)"
2748
+ },
2749
+ "& :where(img)": {
2750
+ maxWidth: "100%",
2751
+ marginBottom: "var(--typography-spacing)"
2752
+ },
2753
+ "& :where(p)": {
2754
+ fontSize: "var(--text-fz-md)",
2755
+ marginTop: "0",
2756
+ marginBottom: "var(--typography-spacing)"
2757
+ },
2758
+ "& :where(strong)": { fontWeight: "550" },
2759
+ "& :where(mark)": {
2760
+ fontSize: "var(--text-fz-md)",
2761
+ backgroundColor: mantine.colors.yellow[2],
2762
+ color: "inherit",
2763
+ _dark: {
2764
+ backgroundColor: mantine.colors.yellow[5],
2765
+ color: mantine.colors.black
2766
+ }
2767
+ },
2768
+ "& :where(a)": {
2769
+ fontSize: "var(--text-fz-md)",
2770
+ color: mantine.colors.anchor,
2771
+ textDecoration: "none",
2772
+ fontWeight: "450",
2773
+ _hover: { textDecoration: "underline" }
2774
+ },
2775
+ "& :where(hr)": {
2776
+ marginTop: "calc(var(--typography-spacing) / 2)",
2777
+ marginBottom: "calc(var(--typography-spacing) / 2)",
2778
+ border: "none",
2779
+ borderBottom: "1px solid",
2780
+ borderColor: {
2781
+ base: mantine.colors.gray[3],
2782
+ _dark: mantine.colors.dark[3]
2783
+ }
2784
+ },
2785
+ "& :where(pre)": {
2786
+ px: "3",
2787
+ py: "2",
2788
+ lineHeight: mantine.lineHeights.xs,
2789
+ margin: "0",
2790
+ marginTop: "var(--typography-spacing)",
2791
+ marginBottom: "var(--typography-spacing)",
2792
+ overflowX: "auto",
2793
+ fontFamily: "var(--mantine-font-family-monospace)",
2794
+ fontSize: "var(--text-fz-sm)",
2795
+ borderRadius: "sm",
2796
+ backgroundColor: "var(--code-background)",
2797
+ color: "var(--code-color)"
2798
+ },
2799
+ "& :where(code)": {
2800
+ lineHeight: "1",
2801
+ padding: "1px 4px",
2802
+ borderRadius: "xs",
2803
+ fontFamily: "var(--mantine-font-family-monospace)",
2804
+ fontSize: "var(--text-fz-sm)",
2805
+ backgroundColor: "var(--code-background)",
2806
+ color: "var(--code-color)"
2807
+ },
2808
+ "& :where(pre code)": {
2809
+ backgroundColor: "transparent",
2810
+ padding: "0",
2811
+ borderRadius: "0",
2812
+ color: "inherit",
2813
+ border: "0"
2814
+ },
2815
+ "& :where(ul, ol):not([data-type=\"taskList\"])": {
2816
+ marginBottom: "var(--typography-spacing)",
2817
+ paddingInlineStart: "var(--typography-spacing)",
2818
+ listStylePosition: "inside"
2819
+ },
2820
+ "& :where(table)": {
2821
+ width: "100%",
2822
+ borderCollapse: "collapse",
2823
+ captionSide: "bottom",
2824
+ marginBottom: "var(--typography-spacing)",
2825
+ _light: { ["--table-border-color"]: mantine.colors.gray["3"] },
2826
+ _dark: { ["--table-border-color"]: "var(--mantine-color-dark-4)" },
2827
+ "& :where(caption)": {
2828
+ marginTop: "calc(.5 * var(--typography-spacing) + 1px)",
2829
+ fontSize: "var(--text-fz-sm)",
2830
+ color: "var(--mantine-color-dimmed)"
2831
+ },
2832
+ "& :where(th)": {
2833
+ textAlign: "left",
2834
+ fontWeight: "550",
2835
+ fontSize: "var(--text-fz-sm)",
2836
+ padding: "var(--typography-spacing)"
2837
+ },
2838
+ "& :where(thead th)": {
2839
+ borderBottom: "1px solid",
2840
+ borderColor: "var(--table-border-color)"
2841
+ },
2842
+ "& :where(tfoot th)": {
2843
+ borderTop: "1px solid",
2844
+ borderColor: "var(--table-border-color)"
2845
+ },
2846
+ "& :where(td)": {
2847
+ padding: "var(--typography-spacing)",
2848
+ borderBottom: "1px solid",
2849
+ borderColor: "var(--table-border-color)",
2850
+ fontSize: "var(--text-fz-sm)"
2851
+ },
2852
+ "& :where(tr:last-of-type td)": { borderBottom: "0" }
2853
+ },
2854
+ "& :where(blockquote)": {
2855
+ fontSize: "var(--text-fz-md)",
2856
+ margin: "0",
2857
+ borderRadius: "var(--mantine-radius-sm)",
2858
+ padding: "xs",
2859
+ backgroundColor: {
2860
+ base: mantine.colors.gray[1],
2861
+ _dark: mantine.colors.dark[5]
2862
+ },
2863
+ "&:not(:first-child)": { marginTop: "var(--typography-spacing)" }
2864
+ },
2865
+ "& .markdown-alert": {
2866
+ borderLeft: ".25em solid var(--borderColor-default, var(--color-border-default))",
2867
+ color: "inherit",
2868
+ marginBottom: "calc(var(--typography-spacing) * 1.5)",
2869
+ paddingLeft: "1em",
2870
+ paddingRight: ".5em",
2871
+ "&:last-child": { marginBottom: "0!important" },
2872
+ "& .markdown-alert-title": {
2873
+ alignItems: "center",
2874
+ display: "flex",
2875
+ fontSize: "var(--text-fz-md)",
2876
+ fontWeight: "550",
2877
+ lineHeight: "1.5",
2878
+ marginBottom: "0.1em",
2879
+ gap: "2"
2880
+ },
2881
+ "& .markdown-alert-title svg": {
2882
+ height: "var(--text-fz-md)",
2883
+ fill: "currentColor"
2884
+ },
2885
+ "&.markdown-alert-note": { borderLeftColor: "var(--borderColor-accent-emphasis,var(--color-accent-emphasis))" },
2886
+ "&.markdown-alert-note .markdown-alert-title": { color: ["var(--color-accent-fg)", "var(--fgColor-accent,var(--color-accent-fg))"] },
2887
+ "&.markdown-alert-tip": { borderLeftColor: "var(--borderColor-success-emphasis,var(--color-success-emphasis))" },
2888
+ "&.markdown-alert-tip .markdown-alert-title": { color: ["var(--color-success-fg)", "var(--fgColor-success,var(--color-success-fg))"] },
2889
+ "&.markdown-alert-important": { borderLeftColor: "var(--borderColor-done-emphasis,var(--color-done-emphasis))" },
2890
+ "&.markdown-alert-important .markdown-alert-title": { color: ["var(--color-done-fg)", "var(--fgColor-done,var(--color-done-fg))"] },
2891
+ "&.markdown-alert-warning": { borderLeftColor: "var(--borderColor-attention-emphasis,var(--color-attention-emphasis))" },
2892
+ "&.markdown-alert-warning .markdown-alert-title": { color: ["var(--color-attention-fg)", "var(--fgColor-attention,var(--color-attention-fg))"] },
2893
+ "&.markdown-alert-caution": { borderLeftColor: "var(--borderColor-danger-emphasis,var(--color-danger-emphasis))" },
2894
+ "&.markdown-alert-caution .markdown-alert-title": { color: ["var(--color-danger-fg)", "var(--fgColor-danger,var(--color-danger-fg))"] }
2895
+ }
2896
+ },
2897
+ variants: {
2898
+ uselikec4palette: {
2899
+ true: {
2900
+ "--code-background": "color-mix(in oklab , var(--likec4-palette-stroke) 70%, transparent)",
2901
+ "--code-color": "var(--likec4-palette-loContrast)",
2902
+ "--typography-spacing": "calc(0.5 * var(--text-fz-md))",
2903
+ "& :where(a)": {
2904
+ color: "var(--likec4-palette-fill)/45",
2905
+ mixBlendMode: {
2906
+ base: "difference",
2907
+ _print: "normal!"
2908
+ }
2909
+ },
2910
+ "& :where(strong)": { color: `color-mix(in oklab, ${__v("palette.hiContrast")} 50%, ${__v("palette.loContrast")})` },
2911
+ "& :where(blockquote)": {
2912
+ padding: "xxs",
2913
+ backgroundColor: alpha(__v("palette.stroke"), 65)
2914
+ },
2915
+ "& :where(hr)": { borderColor: alpha(__v("palette.stroke"), 85) }
2916
+ },
2917
+ false: {}
2918
+ },
2919
+ value: {
2920
+ markdown: {},
2921
+ plaintext: { "& :where(p)": { whiteSpace: "preserve-breaks" } }
2922
+ }
2923
+ },
2924
+ defaultVariants: {
2925
+ uselikec4palette: false,
2926
+ value: "markdown"
2927
+ },
2928
+ staticCss: [{
2929
+ uselikec4palette: ["*"],
2930
+ value: ["plaintext"],
2931
+ conditions: ["*"]
2932
+ }]
2933
+ });
2934
+ const navigationPanelActionIcon = defineRecipe({
2935
+ className: "likec4-navigation-panel-icon",
2936
+ jsx: ["PanelActionIcon"],
2937
+ description: "ActionIcon for navigation panel",
2938
+ base: {
2939
+ color: {
2940
+ base: "likec4.panel.action",
2941
+ _disabled: "likec4.panel.action.disabled",
2942
+ _notDisabled: { _hover: "likec4.panel.action.hover" }
2943
+ },
2944
+ _disabled: { opacity: .5 }
2945
+ },
2946
+ variants: {
2947
+ variant: {
2948
+ "default": { backgroundColor: {
2949
+ base: "transparent",
2950
+ _notDisabled: { _hover: "likec4.panel.action.bg.hover" }
2951
+ } },
2952
+ "filled": { backgroundColor: {
2953
+ base: "likec4.panel.action.bg",
2954
+ _notDisabled: { _hover: "likec4.panel.action.bg.hover" }
2955
+ } }
2956
+ },
2957
+ type: {
2958
+ "default": {},
2959
+ "warning": { color: {
2960
+ base: "likec4.panel.action.warning",
2961
+ _hover: "likec4.panel.action.warning.hover"
2962
+ } }
2963
+ }
2964
+ },
2965
+ compoundVariants: [{
2966
+ type: "warning",
2967
+ variant: "filled",
2968
+ css: { backgroundColor: {
2969
+ base: "likec4.panel.action.warning.bg",
2970
+ _hover: "likec4.panel.action.warning.bg.hover"
2971
+ } }
2972
+ }],
2973
+ defaultVariants: {
2974
+ variant: "default",
2975
+ type: "default"
2976
+ },
2977
+ staticCss: [{
2978
+ variant: ["*"],
2979
+ conditions: ["*"]
2980
+ }]
2981
+ });
2982
+ const parts$1 = defineParts({
2983
+ root: { selector: "&" },
2984
+ paper: { selector: "& .__paper" },
2985
+ popover: { selector: "& .__popover" }
2986
+ });
2987
+ const nodeNotes = defineRecipe({
2988
+ className: "likec4-node-notes",
2989
+ jsx: ["NodeNotesr"],
2990
+ base: parts$1({
2991
+ root: {
2992
+ position: "absolute",
2993
+ top: "-20px",
2994
+ left: "10px",
2995
+ width: "120px",
2996
+ height: "60px",
2997
+ pointerEvents: "all",
2998
+ userSelect: "none",
2999
+ appearance: "none",
3000
+ touchAction: "manipulation",
3001
+ overflow: "visible",
3002
+ "--paper-bg": `color-mix(in oklab, ${__v("palette.fill")} 10%, #DDD)`
3003
+ },
3004
+ paper: {
3005
+ pointerEvents: "all",
3006
+ position: "absolute",
3007
+ top: "14px",
3008
+ left: "10px",
3009
+ width: "90px",
3010
+ height: "120px",
3011
+ boxShadow: ["inset 0 0 20px rgba(0, 0, 0, 0.25)", "0px 0px 3px 0px rgba(0, 0, 0, 0.35)"].join(", "),
3012
+ backgroundColor: "oklch(from var(--paper-bg) calc(l - 0.1) c h)",
3013
+ zIndex: -1,
3014
+ transform: "rotateZ(-3deg)",
3015
+ transformOrigin: "55% 90% 0",
3016
+ overflow: "visible",
3017
+ transition: "faster",
3018
+ transitionDelay: "20ms",
3019
+ _before: {
3020
+ position: "absolute",
3021
+ zIndex: -1,
3022
+ content: "\" \"",
3023
+ width: "100%",
3024
+ height: "100%",
3025
+ transform: "rotateZ(6deg) translate(-2px, 0px)",
3026
+ transformOrigin: "45% 90% 0",
3027
+ boxShadow: ["inset 0 0 20px rgba(0, 0, 0, 0.25)", "0px 0px 3px 0px rgba(0, 0, 0, 0.35)"].join(", "),
3028
+ backgroundColor: "var(--paper-bg)"
3029
+ },
3030
+ _whenHovered: {
3031
+ transform: "rotateZ(-4deg) scale(1.06)",
3032
+ _before: { transform: "translate(-1px, -2px) rotateZ(6deg) scale(1.02)" }
3033
+ }
3034
+ },
3035
+ popover: {
3036
+ position: "absolute",
3037
+ w: "auto",
3038
+ h: "auto",
3039
+ zIndex: 300,
3040
+ top: "0",
3041
+ left: "0",
3042
+ display: "block",
3043
+ pointerEvents: "all",
3044
+ rounded: "sm",
3045
+ backgroundColor: "likec4.overlay.body",
3046
+ padding: "sm"
3047
+ }
3048
+ }),
3049
+ variants: { opened: {
3050
+ false: parts$1({}),
3051
+ true: parts$1({})
3052
+ } },
3053
+ defaultVariants: { opened: false },
3054
+ staticCss: [{ opened: ["*"] }]
3055
+ });
3056
+ const backdropBlur = "--_blur";
3057
+ const backdropOpacity = "--_opacity";
3058
+ const level = "--_level";
3059
+ const offset = "--_offset";
3060
+ const inset = "--_inset";
3061
+ const borderRadius = "--_border-radius";
3062
+ const overlay = defineRecipe({
3063
+ description: "Recipe for Overlay Dialog",
3064
+ className: "likec4-overlay",
3065
+ base: defineParts({
3066
+ dialog: { selector: "&" },
3067
+ body: { selector: "& .likec4-overlay-body" }
3068
+ })({
3069
+ dialog: {
3070
+ boxSizing: "border-box",
3071
+ margin: "0",
3072
+ position: "fixed",
3073
+ width: "100vw",
3074
+ height: "100vh",
3075
+ maxWidth: "100vw",
3076
+ maxHeight: "100vh",
3077
+ background: `likec4.overlay.border`,
3078
+ shadow: "xl",
3079
+ border: "transparent",
3080
+ outline: "none",
3081
+ borderRadius: `var(${borderRadius})`,
3082
+ [backdropBlur]: "0px",
3083
+ [level]: "0",
3084
+ [offset]: "0px",
3085
+ [inset]: "calc((1 + var(--_level) * 0.75) * var(--_offset))",
3086
+ [backdropOpacity]: "0%",
3087
+ [borderRadius]: "0px",
3088
+ _backdrop: { cursor: "zoom-out" },
3089
+ inset: "0",
3090
+ padding: "0"
3091
+ },
3092
+ body: {
3093
+ position: "relative",
3094
+ containerName: "likec4-dialog",
3095
+ containerType: "size",
3096
+ border: `transparent`,
3097
+ overflow: "hidden",
3098
+ width: "100%",
3099
+ height: "100%",
3100
+ background: "likec4.overlay.body"
3101
+ }
3102
+ }),
3103
+ variants: {
3104
+ fullscreen: {
3105
+ false: {
3106
+ dialog: {
3107
+ sm: {
3108
+ inset: "[var(--_inset) var(--_inset) var(--_offset) var(--_inset)]",
3109
+ width: "calc(100vw - 2 * var(--_inset))",
3110
+ height: "calc(100vh - var(--_offset) - var(--_inset))",
3111
+ [borderRadius]: "6px",
3112
+ padding: "1.5",
3113
+ [offset]: "{spacing.4}"
3114
+ },
3115
+ md: { [offset]: "{spacing.4}" },
3116
+ lg: { [offset]: "{spacing.8}" },
3117
+ xl: { [offset]: "{spacing.16}" }
3118
+ },
3119
+ body: { sm: { borderRadius: `calc(var(${borderRadius}) - 2px)` } }
3120
+ },
3121
+ true: { dialog: {
3122
+ inset: "0",
3123
+ padding: "0"
3124
+ } }
3125
+ },
3126
+ withBackdrop: {
3127
+ false: { dialog: { _backdrop: { display: "none" } } },
3128
+ true: { dialog: { _backdrop: {
3129
+ backdropFilter: `blur(var(${backdropBlur}))`,
3130
+ background: `color-mix(in oklab, {colors.likec4.overlay.backdrop} var(${backdropOpacity}), transparent)`
3131
+ } } }
3132
+ }
3133
+ },
3134
+ defaultVariants: {
3135
+ fullscreen: false,
3136
+ withBackdrop: true
3137
+ },
3138
+ staticCss: [{
3139
+ fullscreen: ["*"],
3140
+ withBackdrop: ["*"]
3141
+ }]
3142
+ });
3143
+ var recipes_exports = /* @__PURE__ */ __exportAll({
3144
+ actionBtn: () => actionBtn,
3145
+ actionButtons: () => actionButtons,
3146
+ compoundNode: () => compoundNode,
3147
+ edgeActionBtn: () => edgeActionBtn,
3148
+ edgeLabel: () => edgeLabel,
3149
+ edgePath: () => edgePath,
3150
+ elementNode: () => elementNode,
3151
+ elementNodeData: () => elementNodeData,
3152
+ elementShapeRecipe: () => elementShapeRecipe,
3153
+ likec4tag: () => likec4tag,
3154
+ markdownBlock: () => markdownBlock,
3155
+ navigationPanelActionIcon: () => navigationPanelActionIcon,
3156
+ nodeNotes: () => nodeNotes,
3157
+ overlay: () => overlay
3158
+ });
3159
+ const navigationLink = defineSlotRecipe({
3160
+ className: "likec4-navlink",
3161
+ description: "Navigation Link (classes for Mantine NavLink)",
3162
+ jsx: ["NavLink"],
3163
+ slots: [
3164
+ "root",
3165
+ "body",
3166
+ "section",
3167
+ "label",
3168
+ "description"
3169
+ ],
3170
+ base: {
3171
+ root: {
3172
+ rounded: "sm",
3173
+ px: "xs",
3174
+ py: "xxs",
3175
+ backgroundColor: { _hover: { "&:not([data-active])": {
3176
+ base: mantine.colors.gray[1],
3177
+ _dark: mantine.colors.dark[5]
3178
+ } } }
3179
+ },
3180
+ body: {
3181
+ gap: "0.5",
3182
+ display: "flex",
3183
+ flexDirection: "column"
3184
+ },
3185
+ section: { "&:where([data-position=\"left\"])": { marginInlineEnd: "xxs" } },
3186
+ label: {
3187
+ display: "block",
3188
+ fontSize: "sm",
3189
+ fontWeight: "500",
3190
+ lineHeight: 1.2
3191
+ },
3192
+ description: {
3193
+ display: "block",
3194
+ fontSize: "xxs",
3195
+ lineHeight: 1.2
3196
+ }
3197
+ },
3198
+ variants: { truncateLabel: {
3199
+ "true": {
3200
+ label: {
3201
+ width: "100%",
3202
+ truncate: true
3203
+ },
3204
+ description: {
3205
+ width: "100%",
3206
+ truncate: true
3207
+ }
3208
+ },
3209
+ "false": {}
3210
+ } },
3211
+ defaultVariants: { truncateLabel: false },
3212
+ staticCss: [{
3213
+ truncateLabel: ["*"],
3214
+ conditions: ["*"]
3215
+ }]
3216
+ });
3217
+ const navigationPanel = defineSlotRecipe({
3218
+ className: "likec4-navigation-panel",
3219
+ jsx: ["NavigationPanel", /NavigationPanel/],
3220
+ slots: [
3221
+ "root",
3222
+ "body",
3223
+ "logo",
3224
+ "label",
3225
+ "dropdown"
3226
+ ],
3227
+ description: "LikeC4 Navigation panel",
3228
+ base: {
3229
+ root: {
3230
+ display: "flex",
3231
+ flexDirection: "column",
3232
+ alignItems: "flex-start",
3233
+ pointerEvents: "none",
3234
+ position: "absolute",
3235
+ margin: "0",
3236
+ width: "100%",
3237
+ gap: "xxs",
3238
+ height: "auto",
3239
+ overflow: "hidden",
3240
+ maxHeight: ["calc(100vh)", "calc(100cqh)"],
3241
+ maxWidth: ["calc(100vw)", "calc(100cqw)"],
3242
+ "@/sm": {
3243
+ margin: "xs",
3244
+ gap: "xs",
3245
+ width: "max-content",
3246
+ maxWidth: ["calc(100vw - 2 * {spacing.xs})", "calc(100cqw - 2 * {spacing.xs})"],
3247
+ maxHeight: ["calc(100vh - 2 * {spacing.xs})", "calc(100cqh - 2 * {spacing.xs})"]
3248
+ },
3249
+ "@/md": {
3250
+ margin: "sm",
3251
+ width: "max-content",
3252
+ maxWidth: ["calc(100vw - 2 * {spacing.md})", "calc(100cqw - 2 * {spacing.md})"],
3253
+ maxHeight: ["calc(100vh - 2 * {spacing.md})", "calc(100cqh - 2 * {spacing.md})"]
3254
+ },
3255
+ _print: { display: "none" }
3256
+ },
3257
+ body: {
3258
+ display: "flex",
3259
+ flexDirection: "row",
3260
+ alignItems: "center",
3261
+ layerStyle: "likec4.panel",
3262
+ position: "relative",
3263
+ gap: "xs",
3264
+ pointerEvents: "all",
3265
+ width: "100%",
3266
+ "@/sm": { width: "auto" },
3267
+ minHeight: "40px",
3268
+ cursor: "default"
3269
+ },
3270
+ logo: {
3271
+ display: "flex",
3272
+ flexDirection: "row",
3273
+ padding: "0.5",
3274
+ margin: "0",
3275
+ background: "none",
3276
+ border: "none",
3277
+ cursor: "pointer",
3278
+ width: {
3279
+ base: "20px",
3280
+ "@/sm": "64px"
3281
+ },
3282
+ ["& > [data-logo-icon]"]: { display: {
3283
+ base: "block",
3284
+ "@/sm": "none"
3285
+ } },
3286
+ ["& > [data-logo-full]"]: { display: {
3287
+ base: "none",
3288
+ "@/sm": "block"
3289
+ } }
3290
+ },
3291
+ label: {
3292
+ fontSize: "sm",
3293
+ fontWeight: "500",
3294
+ transition: "fast",
3295
+ userSelect: "none",
3296
+ color: "likec4.panel.text"
3297
+ },
3298
+ dropdown: {
3299
+ display: "flex",
3300
+ height: "auto",
3301
+ width: "auto",
3302
+ flex: "1",
3303
+ flexGrow: 0,
3304
+ overflow: "hidden",
3305
+ layerStyle: "likec4.dropdown",
3306
+ pointerEvents: "all"
3307
+ }
3308
+ },
3309
+ variants: {
3310
+ size: {
3311
+ md: {},
3312
+ lg: {
3313
+ body: { "@/sm": {
3314
+ gap: "sm",
3315
+ minHeight: "48px",
3316
+ paddingInline: "md",
3317
+ _hover: { boxShadow: "xl" }
3318
+ } },
3319
+ label: { "@/sm": { fontSize: "md" } }
3320
+ }
3321
+ },
3322
+ panelPosition: {
3323
+ left: { root: {
3324
+ top: "0",
3325
+ left: "0"
3326
+ } },
3327
+ right: { root: {
3328
+ top: "0",
3329
+ right: "0"
3330
+ } }
3331
+ }
3332
+ },
3333
+ defaultVariants: {
3334
+ size: "md",
3335
+ panelPosition: "left"
3336
+ },
3337
+ staticCss: [{
3338
+ size: ["*"],
3339
+ panelPosition: ["*"]
3340
+ }]
3341
+ });
3342
+ var stot_recipes_exports = /* @__PURE__ */ __exportAll({
3343
+ navigationLink: () => navigationLink,
3344
+ navigationPanel: () => navigationPanel
3345
+ });
3346
+ function defineTextStyles$1(definition) {
3347
+ return defineTextStyles(definition);
3348
+ }
3349
+ const textStyles = defineTextStyles$1({
3350
+ dimmed: {
3351
+ DEFAULT: {
3352
+ description: "Text style for dimmed content",
3353
+ value: {
3354
+ fontSize: "md",
3355
+ lineHeight: "md",
3356
+ color: "text.dimmed"
3357
+ }
3358
+ },
3359
+ xxs: { value: {
3360
+ fontSize: "xxs",
3361
+ lineHeight: "xxs",
3362
+ color: "text.dimmed"
3363
+ } },
3364
+ xs: { value: {
3365
+ fontSize: "xs",
3366
+ lineHeight: "xs",
3367
+ color: "text.dimmed"
3368
+ } },
3369
+ sm: { value: {
3370
+ fontSize: "sm",
3371
+ lineHeight: "sm",
3372
+ color: "text.dimmed"
3373
+ } },
3374
+ md: { value: {
3375
+ fontSize: "md",
3376
+ lineHeight: "md",
3377
+ color: "text.dimmed"
3378
+ } }
3379
+ },
3380
+ xxs: { value: {
3381
+ fontSize: "xxs",
3382
+ lineHeight: "xxs"
3383
+ } },
3384
+ xs: { value: {
3385
+ fontSize: "xs",
3386
+ lineHeight: "xs"
3387
+ } },
3388
+ sm: { value: {
3389
+ fontSize: "sm",
3390
+ lineHeight: "sm"
3391
+ } },
3392
+ md: { value: {
3393
+ fontSize: "md",
3394
+ lineHeight: "md"
3395
+ } },
3396
+ lg: { value: {
3397
+ fontSize: "lg",
3398
+ lineHeight: "lg"
3399
+ } },
3400
+ xl: { value: {
3401
+ fontSize: "xl",
3402
+ lineHeight: "xl"
3403
+ } },
3404
+ likec4: {
3405
+ DEFAULT: {
3406
+ description: "Text style for panel content",
3407
+ value: {
3408
+ fontSize: "md",
3409
+ lineHeight: "md",
3410
+ fontWeight: "normal",
3411
+ color: "text"
3412
+ }
3413
+ },
3414
+ panel: {
3415
+ DEFAULT: {
3416
+ description: "Text style for panel content",
3417
+ value: {
3418
+ fontSize: "sm",
3419
+ lineHeight: "sm",
3420
+ fontWeight: "medium",
3421
+ color: "likec4.panel.text"
3422
+ }
3423
+ },
3424
+ action: {
3425
+ description: "Text style for panel action items",
3426
+ value: {
3427
+ fontSize: "sm",
3428
+ lineHeight: "sm",
3429
+ fontWeight: "medium",
3430
+ color: {
3431
+ base: "likec4.panel.action",
3432
+ _hover: "likec4.panel.action.hover"
3433
+ }
3434
+ }
3435
+ }
3436
+ }
3437
+ }
3438
+ });
3439
+ const semanticTokens = defineSemanticTokens({ colors: defineSemanticTokens.colors({
3440
+ white: { value: "#fff" },
3441
+ black: { value: "#000" },
3442
+ body: {
3443
+ description: "Background color",
3444
+ value: mantine.colors.body
3445
+ },
3446
+ text: {
3447
+ DEFAULT: {
3448
+ description: "Default text color",
3449
+ value: mantine.colors.text
3450
+ },
3451
+ bright: {
3452
+ description: "Bright text color",
3453
+ value: "var(--mantine-color-bright)"
3454
+ },
3455
+ dimmed: {
3456
+ description: "Dimmed text color",
3457
+ value: alpha(mantine.colors.text, 60)
3458
+ },
3459
+ placeholder: {
3460
+ description: "Placeholder text color",
3461
+ value: mantine.colors.placeholder
3462
+ }
3463
+ },
3464
+ default: {
3465
+ DEFAULT: {
3466
+ description: "Default color",
3467
+ value: mantine.colors.default
3468
+ },
3469
+ color: {
3470
+ description: "Default text color",
3471
+ value: mantine.colors.defaultColor
3472
+ },
3473
+ border: {
3474
+ description: "Default border color",
3475
+ value: mantine.colors.defaultBorder
3476
+ },
3477
+ hover: {
3478
+ description: "Default hover color",
3479
+ value: mantine.colors.defaultHover
3480
+ }
3481
+ },
3482
+ disabled: {
3483
+ text: {
3484
+ description: "Disabled text color",
3485
+ value: mantine.colors.disabledText
3486
+ },
3487
+ border: {
3488
+ description: "Disabled border color",
3489
+ value: mantine.colors.disabledBorder
3490
+ },
3491
+ body: {
3492
+ description: "Disabled body color",
3493
+ value: mantine.colors.disabledBody
3494
+ }
3495
+ },
3496
+ likec4: {
3497
+ background: {
3498
+ DEFAULT: {
3499
+ description: "Background color",
3500
+ value: mantine.colors.body
3501
+ },
3502
+ pattern: {
3503
+ description: "Background pattern color",
3504
+ value: {
3505
+ base: mantine.colors.gray[4],
3506
+ _dark: alpha(mantine.colors.dark[4], 70)
3507
+ }
3508
+ }
3509
+ },
3510
+ mixColor: {
3511
+ description: "Color to be used in color-mix",
3512
+ value: {
3513
+ base: "#000",
3514
+ _dark: "#fff"
3515
+ }
3516
+ },
3517
+ tag: {
3518
+ bg: {
3519
+ DEFAULT: { value: `{colors.tomato.9}` },
3520
+ hover: { value: `{colors.tomato.10}` }
3521
+ },
3522
+ border: { value: `{colors.tomato.8}` },
3523
+ text: { value: `{colors.tomato.12}` }
3524
+ },
3525
+ panel: {
3526
+ bg: { DEFAULT: {
3527
+ description: "LikeC4 panel background color",
3528
+ value: {
3529
+ base: mantine.colors.body,
3530
+ _dark: mantine.colors.dark[6]
3531
+ }
3532
+ } },
3533
+ border: {
3534
+ description: "LikeC4 panel border color",
3535
+ value: {
3536
+ base: "transparent",
3537
+ _light: mantine.colors.gray[2]
3538
+ }
3539
+ },
3540
+ text: {
3541
+ DEFAULT: {
3542
+ description: "LikeC4 panel text color",
3543
+ value: alpha(mantine.colors.text, 85)
3544
+ },
3545
+ dimmed: {
3546
+ description: "LikeC4 panel dimmed text color",
3547
+ value: "{colors.text.dimmed}"
3548
+ }
3549
+ },
3550
+ action: {
3551
+ DEFAULT: {
3552
+ description: "LikeC4 panel action text color (Links/Icons)",
3553
+ value: alpha(mantine.colors.text, 90)
3554
+ },
3555
+ disabled: {
3556
+ description: "LikeC4 action icon text color when disabled",
3557
+ value: "{colors.text.dimmed}"
3558
+ },
3559
+ hover: {
3560
+ description: "LikeC4 panel action text color on hover",
3561
+ value: "var(--mantine-color-bright)"
3562
+ },
3563
+ bg: {
3564
+ DEFAULT: {
3565
+ description: "LikeC4 action icon background color",
3566
+ value: {
3567
+ base: mantine.colors.gray[1],
3568
+ _dark: alpha(mantine.colors.dark[7], 70)
3569
+ }
3570
+ },
3571
+ hover: {
3572
+ description: "LikeC4 action icon background color on hover",
3573
+ value: {
3574
+ base: mantine.colors.gray[2],
3575
+ _dark: mantine.colors.dark[8]
3576
+ }
3577
+ }
3578
+ },
3579
+ warning: {
3580
+ DEFAULT: {
3581
+ description: "LikeC4 action icon text color",
3582
+ value: mantine.colors.orange[6]
3583
+ },
3584
+ hover: {
3585
+ description: "LikeC4 action icon text color on hover",
3586
+ value: {
3587
+ base: mantine.colors.orange[7],
3588
+ _dark: mantine.colors.orange[5]
3589
+ }
3590
+ },
3591
+ bg: {
3592
+ DEFAULT: {
3593
+ description: "LikeC4 action icon background color",
3594
+ value: {
3595
+ base: alpha(mantine.colors.orange[1], 90),
3596
+ _dark: alpha(mantine.colors.orange[9], 10)
3597
+ }
3598
+ },
3599
+ hover: {
3600
+ description: "LikeC4 action icon background color on hover",
3601
+ value: {
3602
+ base: alpha(mantine.colors.orange[3], 70),
3603
+ _dark: alpha(mantine.colors.orange[9], 20)
3604
+ }
3605
+ }
3606
+ }
3607
+ }
3608
+ }
3609
+ },
3610
+ dropdown: {
3611
+ bg: { DEFAULT: {
3612
+ description: "LikeC4 dropdown background color",
3613
+ value: {
3614
+ base: `#FFF`,
3615
+ _dark: mantine.colors.dark[6]
3616
+ }
3617
+ } },
3618
+ border: {
3619
+ description: "LikeC4 dropdown border color",
3620
+ value: "{colors.likec4.panel.border}"
3621
+ }
3622
+ },
3623
+ overlay: {
3624
+ backdrop: { DEFAULT: {
3625
+ description: "LikeC4 overlay backdrop color",
3626
+ value: {
3627
+ base: `rgb(15 15 15)`,
3628
+ _dark: `rgb(34 34 34)`
3629
+ }
3630
+ } },
3631
+ body: { DEFAULT: {
3632
+ description: "LikeC4 overlay body color",
3633
+ value: {
3634
+ base: mantine.colors.body,
3635
+ _dark: mantine.colors.dark[6]
3636
+ }
3637
+ } },
3638
+ border: {
3639
+ description: "LikeC4 overlay border color",
3640
+ value: alpha(mantine.colors.defaultBorder, 50)
3641
+ }
3642
+ },
3643
+ walkthrough: { parallelFrame: {
3644
+ description: "LikeC4 walkthrough parallel frame color",
3645
+ value: {
3646
+ _light: mantine.colors.orange[8],
3647
+ _dark: mantine.colors.orange[6]
3648
+ }
3649
+ } },
3650
+ compare: {
3651
+ manual: {
3652
+ DEFAULT: {
3653
+ description: "LikeC4 Compare color for manual changes",
3654
+ value: {
3655
+ _light: mantine.colors.orange[8],
3656
+ _dark: mantine.colors.orange[6]
3657
+ }
3658
+ },
3659
+ outline: {
3660
+ description: "LikeC4 Compare color for outline around nodes with manual changes",
3661
+ value: {
3662
+ _light: mantine.colors.orange[8],
3663
+ _dark: alpha(mantine.colors.orange[6], 80)
3664
+ }
3665
+ }
3666
+ },
3667
+ latest: {
3668
+ description: "LikeC4 Compare color for latest changes",
3669
+ value: mantine.colors.green[6]
3670
+ }
3671
+ }
3672
+ }
3673
+ }) });
3674
+ const colors = defineTokens.colors({
3675
+ mantine: tokens$1.colors.mantine,
3676
+ transparent: { value: "transparent" },
3677
+ none: { value: "none" },
3678
+ inherit: { value: "inherit" }
3679
+ });
3680
+ const tokens = defineTokens({
3681
+ fontSizes: {
3682
+ "xxs": { value: "10px" },
3683
+ xs: { value: "12px" },
3684
+ sm: { value: "14px" },
3685
+ md: { value: "16px" },
3686
+ lg: { value: "18px" },
3687
+ xl: { value: "20px" },
3688
+ likec4: { ...t$3(defaultTheme.textSizes, (value, key) => ({
3689
+ description: `LikeC4 Diagram Text Size: ${key}`,
3690
+ value: rem(value)
3691
+ })) }
3692
+ },
3693
+ lineHeights: {
3694
+ "xxs": { value: "1.1" },
3695
+ xs: { value: "1.2" },
3696
+ sm: { value: "1.35" },
3697
+ md: { value: "1.45" },
3698
+ lg: { value: "1.55" },
3699
+ xl: { value: "1.6" },
3700
+ "1": { value: "1" }
3701
+ },
3702
+ sizes: {
3703
+ "100%": { value: "100%" },
3704
+ full: { value: "100%" }
3705
+ },
3706
+ borders: {
3707
+ none: { value: "none" },
3708
+ transparent: { value: "0px solid transparent" },
3709
+ default: { value: `1px solid {colors.default.border}` }
3710
+ },
3711
+ borderWidths: {
3712
+ "0": { value: "0px" },
3713
+ "1": { value: "1px" },
3714
+ "2": { value: "2px" },
3715
+ "3": { value: "3px" },
3716
+ "4": { value: "4px" }
3717
+ },
3718
+ spacing: {
3719
+ "0": {
3720
+ description: "Non-scalable spacing value - 0px",
3721
+ value: "0px"
3722
+ },
3723
+ "0.5": {
3724
+ description: "Non-scalable spacing value - (0.5 * 4px)",
3725
+ value: "2px"
3726
+ },
3727
+ "1": {
3728
+ description: "Non-scalable spacing value - (1 * 4px)",
3729
+ value: "4px"
3730
+ },
3731
+ "1.5": {
3732
+ description: "Non-scalable spacing value - (1.5 * 4px)",
3733
+ value: "6px"
3734
+ },
3735
+ "2": {
3736
+ description: "Non-scalable spacing value - (2 * 4px)",
3737
+ value: "8px"
3738
+ },
3739
+ "2.5": {
3740
+ description: "Non-scalable spacing value - (2.5 * 4px)",
3741
+ value: "10px"
3742
+ },
3743
+ "3": {
3744
+ description: "Non-scalable spacing value - (3 * 4px)",
3745
+ value: "12px"
3746
+ },
3747
+ "3.5": {
3748
+ description: "Non-scalable spacing value - (3.5 * 4px)",
3749
+ value: "14px"
3750
+ },
3751
+ "4": {
3752
+ description: "Non-scalable spacing value - (4 * 4px)",
3753
+ value: "16px"
3754
+ },
3755
+ "4.5": {
3756
+ description: "Non-scalable spacing value - (4.5 * 4px)",
3757
+ value: "18px"
3758
+ },
3759
+ "5": {
3760
+ description: "Non-scalable spacing value - (5 * 4px)",
3761
+ value: "20px"
3762
+ },
3763
+ "6": {
3764
+ description: "Non-scalable spacing value - (6 * 4px)",
3765
+ value: "24px"
3766
+ },
3767
+ "7": {
3768
+ description: "Non-scalable spacing value - (7 * 4px)",
3769
+ value: "28px"
3770
+ },
3771
+ "8": {
3772
+ description: "Non-scalable spacing value - (8 * 4px)",
3773
+ value: "32px"
3774
+ },
3775
+ "9": {
3776
+ description: "Non-scalable spacing value - (9 * 4px)",
3777
+ value: "36px"
3778
+ },
3779
+ "10": {
3780
+ description: "Non-scalable spacing value - (10 * 4px)",
3781
+ value: "40px"
3782
+ },
3783
+ "12": {
3784
+ description: "Non-scalable spacing value - (12 * 4px)",
3785
+ value: "48px"
3786
+ },
3787
+ "16": {
3788
+ description: "Non-scalable spacing value - (16 * 4px)",
3789
+ value: "64px"
3790
+ },
3791
+ xxs: {
3792
+ description: "Scalable spacing value - (8px * var(--scale)) (8px)",
3793
+ value: "calc(8px * var(--mantine-scale))"
3794
+ },
3795
+ xs: {
3796
+ description: "Scalable spacing value - (10px * var(--scale)) (10px)",
3797
+ value: "calc(10px * var(--mantine-scale))"
3798
+ },
3799
+ sm: {
3800
+ description: "Scalable spacing value - (12px * var(--scale)) (12px)",
3801
+ value: "calc(12px * var(--mantine-scale))"
3802
+ },
3803
+ md: {
3804
+ description: "Scalable spacing value - (16px * var(--scale)) (16px)",
3805
+ value: "calc(16px * var(--mantine-scale))"
3806
+ },
3807
+ lg: {
3808
+ description: "Scalable spacing value - (20px * var(--scale)) (20px)",
3809
+ value: "calc(20px * var(--mantine-scale))"
3810
+ },
3811
+ xl: {
3812
+ description: "Scalable spacing value - (32px * var(--scale)) (32px)",
3813
+ value: "calc(32px * var(--mantine-scale))"
3814
+ },
3815
+ likec4: { ...t$3(defaultTheme.spacing, (value, key) => ({
3816
+ description: `LikeC4 Diagram Spacing: ${key}`,
3817
+ value: `${value}px`
3818
+ })) }
3819
+ },
3820
+ radii: {
3821
+ "0": { value: "0px" },
3822
+ xs: { value: "2px" },
3823
+ sm: { value: "4px" },
3824
+ md: { value: "8px" },
3825
+ lg: { value: "16px" },
3826
+ xl: { value: "32px" }
3827
+ },
3828
+ colors,
3829
+ fontWeights: {
3830
+ normal: { value: "400" },
3831
+ medium: { value: "500" },
3832
+ bold: { value: "600" },
3833
+ bolder: { value: "700" }
3834
+ },
3835
+ fonts: {
3836
+ mono: { value: `ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace` },
3837
+ body: { value: "var(--likec4-app-font, var(--likec4-app-font-default))" },
3838
+ likec4: {
3839
+ DEFAULT: { value: "var(--likec4-app-font, var(--likec4-app-font-default))" },
3840
+ element: { value: "var(--likec4-element-font, {fonts.likec4})" },
3841
+ compound: { value: "var(--likec4-compound-font, {fonts.likec4})" },
3842
+ relation: { value: "var(--likec4-relation-font, {fonts.likec4})" }
3843
+ }
3844
+ },
3845
+ easings: {
3846
+ default: { value: "cubic-bezier(0.4, 0, 0.2, 1)" },
3847
+ in: { value: "cubic-bezier(0.4, 0, 1, 1)" },
3848
+ out: { value: "cubic-bezier(0, 0, 0.40, 1)" },
3849
+ inOut: { value: "cubic-bezier(0.50, 0, 0.2, 1)" }
3850
+ },
3851
+ durations: {
3852
+ fastest: { value: "50ms" },
3853
+ faster: { value: "100ms" },
3854
+ fast: { value: "130ms" },
3855
+ normal: { value: "170ms" },
3856
+ slow: { value: "300ms" },
3857
+ slower: { value: "400ms" },
3858
+ slowest: { value: "500ms" }
3859
+ },
3860
+ shadows: {
3861
+ none: { value: "none" },
3862
+ xs: { value: "0 1px 3px rgb(0 0 0/5%), 0 1px 2px rgb(0 0 0/10%)" },
3863
+ sm: { value: "0 1px 3px rgb(0 0 0/5%), 0 10px 15px -5px rgb(0 0 0/5%), 0 7px 7px -5px rgb(0 0 0/4%)" },
3864
+ md: { value: "0 1px 3px rgb(0 0 0/5%), 0 20px 25px -5px rgb(0 0 0/5%), 0 10px 10px -5px rgb(0 0 0/4%)" },
3865
+ lg: { value: "0 1px 3px rgb(0 0 0/5%), 0 28px 23px -7px rgb(0 0 0/5%), 0 12px 12px -7px rgb(0 0 0/4%)" },
3866
+ xl: { value: "0 1px 3px rgb(0 0 0/5%), 0 36px 28px -7px rgb(0 0 0/5%), 0 17px 17px -7px rgb(0 0 0/4%)" }
3867
+ },
3868
+ zIndex: {
3869
+ "-1": { value: "-1" },
3870
+ "0": { value: "0" },
3871
+ "1": { value: "1" },
3872
+ likec4: {
3873
+ diagram: {
3874
+ edge: {
3875
+ DEFAULT: { value: "20" },
3876
+ label: { value: "25" },
3877
+ controlPoint: { value: "30" }
3878
+ },
3879
+ node: {
3880
+ compound: { value: "10" },
3881
+ element: { value: "40" }
3882
+ }
3883
+ },
3884
+ dropdown: { value: "200" },
3885
+ panel: {
3886
+ DEFAULT: { value: "100" },
3887
+ dropdown: { value: "200" }
3888
+ }
3889
+ }
3890
+ }
3891
+ });
3892
+ const durationValues = [
3893
+ "fastest",
3894
+ "faster",
3895
+ "fast",
3896
+ "normal",
3897
+ "slow",
3898
+ "slower",
3899
+ "slowest",
3900
+ "none"
3901
+ ];
3902
+ const utilities = { extend: { transition: defineUtility({
3903
+ values: durationValues,
3904
+ className: "transition",
3905
+ transform(value, { token }) {
3906
+ if (value === "none") return { transition: "none" };
3907
+ if (!durationValues.includes(value)) return { transition: value };
3908
+ return {
3909
+ transitionDuration: token(`durations.${value}`),
3910
+ transitionTimingFunction: token("easings.inOut")
3911
+ };
3912
+ }
3913
+ }) } };
3914
+ const theme = {
3915
+ breakpoints,
3916
+ textStyles,
3917
+ layerStyles,
3918
+ tokens,
3919
+ semanticTokens,
3920
+ recipes: recipes_exports,
3921
+ slotRecipes: stot_recipes_exports,
3922
+ containerNames: ["likec4-root", "likec4-dialog"],
3923
+ containerSizes: {
3924
+ xs: "384px",
3925
+ sm: "640px",
3926
+ md: "768px",
3927
+ lg: "1024px"
3928
+ },
3929
+ keyframes,
3930
+ animationStyles
3931
+ };
3932
+ var src_default = /* @__PURE__ */ definePreset({
3933
+ name: "likec4",
3934
+ presets: [radixColorsPreset],
3935
+ globalVars,
3936
+ globalCss,
3937
+ staticCss: { extend: { themes: ["light", "dark"] } },
3938
+ conditions,
3939
+ patterns,
3940
+ utilities,
3941
+ theme: { extend: theme }
3942
+ });
3943
+ export { src_default as default, theme };