@likec4/styles 1.44.0 → 1.46.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.
- package/dist/jsx/create-style-context.d.ts +4 -4
- package/dist/jsx/create-style-context.mjs +23 -3
- package/dist/preset.d.mts +20 -7
- package/dist/preset.mjs +533 -225
- package/dist/recipes/edge-label.d.ts +3 -3
- package/dist/recipes/edge-label.mjs +20 -49
- package/dist/recipes/edge-path.d.ts +33 -0
- package/dist/recipes/edge-path.mjs +45 -0
- package/dist/recipes/index.d.ts +2 -1
- package/dist/recipes/index.mjs +2 -1
- package/dist/tokens/index.mjs +8 -0
- package/dist/tokens/tokens.d.ts +2 -2
- package/dist/types/conditions.d.ts +3 -3
- package/dist/types/jsx.d.ts +3 -1
- package/dist/types/prop-type.d.ts +3 -3
- package/package.json +11 -11
package/dist/preset.mjs
CHANGED
|
@@ -3935,11 +3935,11 @@ function createPreset(options) {
|
|
|
3935
3935
|
const keyframes = defineKeyframes({
|
|
3936
3936
|
"indicatorOpacity": {
|
|
3937
3937
|
"0%": {
|
|
3938
|
-
opacity: 0.
|
|
3938
|
+
opacity: 0.8,
|
|
3939
3939
|
strokeOpacity: 0.8
|
|
3940
3940
|
},
|
|
3941
3941
|
"100%": {
|
|
3942
|
-
opacity: 0.
|
|
3942
|
+
opacity: 0.4,
|
|
3943
3943
|
strokeOpacity: 0.4
|
|
3944
3944
|
}
|
|
3945
3945
|
},
|
|
@@ -4744,18 +4744,23 @@ const paletteGlobalVars = {
|
|
|
4744
4744
|
"--likec4-palette-stroke": "#2563eb",
|
|
4745
4745
|
"--likec4-palette-hiContrast": "#eff6ff",
|
|
4746
4746
|
"--likec4-palette-loContrast": "#bfdbfe",
|
|
4747
|
-
"--likec4-palette-relation-stroke": "#
|
|
4748
|
-
"--likec4-palette-relation-label": "#
|
|
4749
|
-
"--likec4-palette-relation-label-bg": "#
|
|
4747
|
+
"--likec4-palette-relation-stroke": "#8D8D8D",
|
|
4748
|
+
"--likec4-palette-relation-label": "#C9C9C9",
|
|
4749
|
+
"--likec4-palette-relation-label-bg": "#18191B"
|
|
4750
4750
|
};
|
|
4751
4751
|
const mantine = {
|
|
4752
4752
|
colors: {
|
|
4753
|
+
white: "var(--mantine-color-white)",
|
|
4754
|
+
black: "var(--mantine-color-black)",
|
|
4753
4755
|
text: "var(--mantine-color-text)",
|
|
4754
4756
|
body: "var(--mantine-color-body)",
|
|
4757
|
+
anchor: "var(--mantine-color-anchor)",
|
|
4755
4758
|
defaultBorder: "var(--mantine-color-default-border)",
|
|
4756
4759
|
dimmed: "var(--mantine-color-dimmed)",
|
|
4757
4760
|
dark: {
|
|
4761
|
+
"3": "var(--mantine-color-dark-3)",
|
|
4758
4762
|
"4": "var(--mantine-color-dark-4)",
|
|
4763
|
+
"5": "var(--mantine-color-dark-5)",
|
|
4759
4764
|
"6": "var(--mantine-color-dark-6)",
|
|
4760
4765
|
"7": "var(--mantine-color-dark-7)",
|
|
4761
4766
|
"8": "var(--mantine-color-dark-8)"
|
|
@@ -4763,11 +4768,16 @@ const mantine = {
|
|
|
4763
4768
|
gray: {
|
|
4764
4769
|
"1": "var(--mantine-color-gray-1)",
|
|
4765
4770
|
"2": "var(--mantine-color-gray-2)",
|
|
4771
|
+
"3": "var(--mantine-color-gray-3)",
|
|
4766
4772
|
"4": "var(--mantine-color-gray-4)"
|
|
4767
4773
|
},
|
|
4768
4774
|
green: {
|
|
4769
4775
|
"6": "var(--mantine-color-green-6)"
|
|
4770
4776
|
},
|
|
4777
|
+
yellow: {
|
|
4778
|
+
"2": "var(--mantine-color-yellow-2)",
|
|
4779
|
+
"5": "var(--mantine-color-yellow-5)"
|
|
4780
|
+
},
|
|
4771
4781
|
orange: {
|
|
4772
4782
|
"1": "var(--mantine-color-orange-1)",
|
|
4773
4783
|
"3": "var(--mantine-color-orange-3)",
|
|
@@ -4827,9 +4837,9 @@ const conditions = {
|
|
|
4827
4837
|
smallZoom: ':where([data-likec4-zoom-small="true"]) &',
|
|
4828
4838
|
compoundTransparent: ":where([data-compound-transparent]) &",
|
|
4829
4839
|
edgeActive: ':where([data-likec4-edge-active="true"]) &',
|
|
4830
|
-
whenHovered: ':where(.react-flow__node, .react-flow__edge
|
|
4831
|
-
whenSelectable: ":where(.react-flow__node, .react-flow__edge):is(.selectable) &",
|
|
4832
|
-
whenSelected: ":where(.react-flow__node, .react-flow__edge):is(.selected) &",
|
|
4840
|
+
whenHovered: ':where(.react-flow__node:has([data-likec4-hovered="true"]), .react-flow__edge:has([data-likec4-hovered="true"]), .likec4-edge-container[data-likec4-hovered="true"]) &',
|
|
4841
|
+
whenSelectable: ":where(.react-flow__node, .react-flow__edge, .likec4-edge-container):is(.selectable) &",
|
|
4842
|
+
whenSelected: ":where(.react-flow__node, .react-flow__edge, .likec4-edge-container):is(.selected) &",
|
|
4833
4843
|
whenDimmed: ":where(.react-flow__node, .react-flow__edge):has([data-likec4-dimmed]) &",
|
|
4834
4844
|
whenFocused: ":where(.react-flow__node, .react-flow__edge):is(:focus-visible, :focus, :focus-within) &"
|
|
4835
4845
|
// likec4Color: ':where([data-likec4-color]) &',
|
|
@@ -4872,14 +4882,27 @@ const globalCss = {
|
|
|
4872
4882
|
width: "100%",
|
|
4873
4883
|
height: "100%",
|
|
4874
4884
|
border: "0px solid transparent",
|
|
4885
|
+
background: "transparent",
|
|
4875
4886
|
containerName: "likec4-root",
|
|
4876
4887
|
containerType: "size",
|
|
4888
|
+
_print: {
|
|
4889
|
+
"& .react-flow__background": {
|
|
4890
|
+
display: "none"
|
|
4891
|
+
},
|
|
4892
|
+
"& .react-flow": {
|
|
4893
|
+
background: "transparent !important",
|
|
4894
|
+
"--xy-background-color": "transparent !important"
|
|
4895
|
+
},
|
|
4896
|
+
"& *": {
|
|
4897
|
+
colorAdjust: "exact!",
|
|
4898
|
+
printColorAdjust: "exact!"
|
|
4899
|
+
}
|
|
4900
|
+
},
|
|
4877
4901
|
"& .mantine-ActionIcon-icon .tabler-icon": {
|
|
4878
4902
|
width: "75%",
|
|
4879
4903
|
height: "75%"
|
|
4880
4904
|
},
|
|
4881
4905
|
"& .react-flow": {
|
|
4882
|
-
contain: "paint",
|
|
4883
4906
|
"--xy-background-color": "var(--colors-likec4-background)",
|
|
4884
4907
|
"--xy-background-pattern-color": "var(--colors-likec4-background-pattern, var(--colors-likec4-background))",
|
|
4885
4908
|
"&:is(.not-initialized)": {
|
|
@@ -4897,6 +4920,16 @@ const globalCss = {
|
|
|
4897
4920
|
},
|
|
4898
4921
|
"& .react-flow__node.draggable:has(.likec4-compound-node)": {
|
|
4899
4922
|
cursor: "default"
|
|
4923
|
+
},
|
|
4924
|
+
"& .likec4-node-handle-center": {
|
|
4925
|
+
top: "50%!",
|
|
4926
|
+
left: "50%!",
|
|
4927
|
+
right: "unset!",
|
|
4928
|
+
bottom: "unset!",
|
|
4929
|
+
visibility: "hidden!",
|
|
4930
|
+
width: "5px!",
|
|
4931
|
+
height: "5px!",
|
|
4932
|
+
transform: "translate(-50%, -50%)!"
|
|
4900
4933
|
}
|
|
4901
4934
|
},
|
|
4902
4935
|
"& :where(.react-flow__node, .react-flow__edge):has([data-likec4-dimmed])": {
|
|
@@ -4912,11 +4945,11 @@ const globalCss = {
|
|
|
4912
4945
|
"--xy-edge-label-color": "var(--likec4-palette-relation-label)",
|
|
4913
4946
|
"--xy-edge-label-background-color": "var(--likec4-palette-relation-label-bg)",
|
|
4914
4947
|
_dark: {
|
|
4915
|
-
"--xy-edge-label-background-color": "color-mix(in
|
|
4948
|
+
"--xy-edge-label-background-color": "color-mix(in oklab, var(--likec4-palette-relation-label-bg) 50%, transparent)"
|
|
4916
4949
|
},
|
|
4917
4950
|
_light: {
|
|
4918
|
-
"--xy-edge-label-color": "color-mix(in
|
|
4919
|
-
"--xy-edge-label-background-color": "color-mix(in
|
|
4951
|
+
"--xy-edge-label-color": "color-mix(in oklab, var(--likec4-palette-relation-label), #FFF 50%)",
|
|
4952
|
+
"--xy-edge-label-background-color": "color-mix(in oklab, var(--likec4-palette-relation-label-bg) 65%, transparent)"
|
|
4920
4953
|
},
|
|
4921
4954
|
'&:is([data-likec4-hovered="true"], [data-edge-active="true"])': {
|
|
4922
4955
|
"--xy-edge-stroke-width": 4,
|
|
@@ -4943,10 +4976,18 @@ const globalCss = {
|
|
|
4943
4976
|
transitionTimingFunction: "cubic-bezier(0.50, 0, 0.2, 1)",
|
|
4944
4977
|
transitionDuration: "400ms"
|
|
4945
4978
|
},
|
|
4946
|
-
"& :where(.react-
|
|
4979
|
+
"& :where(.react-flow__edgelabel-renderer) > *": {
|
|
4980
|
+
mixBlendMode: {
|
|
4981
|
+
_dark: "screen",
|
|
4982
|
+
_light: "hard-light",
|
|
4983
|
+
_print: "normal!"
|
|
4984
|
+
}
|
|
4985
|
+
},
|
|
4986
|
+
"& :where(.react-flow__edges) > svg": {
|
|
4947
4987
|
mixBlendMode: {
|
|
4948
4988
|
_dark: "plus-lighter",
|
|
4949
|
-
_light: "
|
|
4989
|
+
_light: "multiply",
|
|
4990
|
+
_print: "normal!"
|
|
4950
4991
|
}
|
|
4951
4992
|
},
|
|
4952
4993
|
"&:has(.react-flow__node-seq-parallel) :where(.react-flow__edges > svg)": {
|
|
@@ -4958,7 +4999,8 @@ const globalCss = {
|
|
|
4958
4999
|
"& .react-flow__node-seq-parallel": {
|
|
4959
5000
|
mixBlendMode: {
|
|
4960
5001
|
_dark: "luminosity",
|
|
4961
|
-
_light: "color-burn"
|
|
5002
|
+
_light: "color-burn",
|
|
5003
|
+
_print: "normal!"
|
|
4962
5004
|
}
|
|
4963
5005
|
}
|
|
4964
5006
|
},
|
|
@@ -5007,29 +5049,59 @@ const layerStyles = defineLayerStyles({
|
|
|
5007
5049
|
boxShadow: "lg",
|
|
5008
5050
|
borderRadius: "md",
|
|
5009
5051
|
paddingInline: "2"
|
|
5010
|
-
},
|
|
5011
|
-
_whenPanning: {
|
|
5012
|
-
boxShadow: "none",
|
|
5013
|
-
borderRadius: "0"
|
|
5014
5052
|
}
|
|
5015
5053
|
}
|
|
5016
5054
|
},
|
|
5017
5055
|
action: {
|
|
5018
|
-
|
|
5019
|
-
|
|
5020
|
-
|
|
5021
|
-
|
|
5022
|
-
|
|
5023
|
-
|
|
5056
|
+
DEFAULT: {
|
|
5057
|
+
description: "LikeC4 panel action layer",
|
|
5058
|
+
value: {
|
|
5059
|
+
color: {
|
|
5060
|
+
base: "likec4.panel.action",
|
|
5061
|
+
_disabled: "likec4.panel.action.disabled",
|
|
5062
|
+
_notDisabled: {
|
|
5063
|
+
_hover: "likec4.panel.action.hover"
|
|
5064
|
+
}
|
|
5065
|
+
},
|
|
5066
|
+
cursor: {
|
|
5067
|
+
base: "pointer",
|
|
5068
|
+
_disabled: "not-allowed"
|
|
5069
|
+
},
|
|
5070
|
+
paddingInline: "xxs",
|
|
5071
|
+
paddingBlock: "xxs",
|
|
5072
|
+
border: "transparent",
|
|
5073
|
+
borderRadius: "sm",
|
|
5074
|
+
backgroundColor: {
|
|
5075
|
+
_notDisabled: {
|
|
5076
|
+
_hover: "likec4.panel.action.bg.hover"
|
|
5077
|
+
}
|
|
5024
5078
|
}
|
|
5025
|
-
}
|
|
5026
|
-
|
|
5027
|
-
|
|
5028
|
-
|
|
5029
|
-
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5079
|
+
}
|
|
5080
|
+
},
|
|
5081
|
+
filled: {
|
|
5082
|
+
description: "LikeC4 action panel filled layer",
|
|
5083
|
+
value: {
|
|
5084
|
+
color: {
|
|
5085
|
+
base: "likec4.panel.action",
|
|
5086
|
+
_disabled: "likec4.panel.action.disabled",
|
|
5087
|
+
_notDisabled: {
|
|
5088
|
+
_hover: "likec4.panel.action.hover"
|
|
5089
|
+
}
|
|
5090
|
+
},
|
|
5091
|
+
cursor: {
|
|
5092
|
+
base: "pointer",
|
|
5093
|
+
_disabled: "not-allowed"
|
|
5094
|
+
},
|
|
5095
|
+
paddingInline: "xxs",
|
|
5096
|
+
paddingBlock: "xxs",
|
|
5097
|
+
border: "transparent",
|
|
5098
|
+
borderRadius: "sm",
|
|
5099
|
+
backgroundColor: {
|
|
5100
|
+
base: "likec4.panel.action.bg",
|
|
5101
|
+
_disabled: "likec4.panel.action.bg",
|
|
5102
|
+
_notDisabled: {
|
|
5103
|
+
_hover: "likec4.panel.action.bg.hover"
|
|
5104
|
+
}
|
|
5033
5105
|
}
|
|
5034
5106
|
}
|
|
5035
5107
|
}
|
|
@@ -5042,12 +5114,7 @@ const layerStyles = defineLayerStyles({
|
|
|
5042
5114
|
backgroundColor: "likec4.dropdown.bg",
|
|
5043
5115
|
border: "1px solid {colors.likec4.dropdown.border}",
|
|
5044
5116
|
boxShadow: "lg",
|
|
5045
|
-
borderRadius: "md"
|
|
5046
|
-
_whenPanning: {
|
|
5047
|
-
boxShadow: "none",
|
|
5048
|
-
borderRadius: "0px",
|
|
5049
|
-
borderColor: "transparent"
|
|
5050
|
-
}
|
|
5117
|
+
borderRadius: "md"
|
|
5051
5118
|
}
|
|
5052
5119
|
}
|
|
5053
5120
|
}
|
|
@@ -5074,18 +5141,20 @@ const actionBtn = defineRecipe({
|
|
|
5074
5141
|
className: "action-btn",
|
|
5075
5142
|
description: "Action Button within Diagram Node (Bottom-Center)",
|
|
5076
5143
|
base: {
|
|
5077
|
-
pointerEvents: "all",
|
|
5078
|
-
cursor: "pointer",
|
|
5079
5144
|
color: "var(--actionbtn-color)",
|
|
5080
5145
|
opacity: 0.75,
|
|
5081
5146
|
"--actionbtn-color": "var(--likec4-palette-loContrast)",
|
|
5082
5147
|
"--actionbtn-color-hovered": "var(--likec4-palette-loContrast)",
|
|
5083
5148
|
"--actionbtn-color-hovered-btn": "var(--likec4-palette-hiContrast)",
|
|
5084
|
-
"--actionbtn-bg-idle": `color-mix(in
|
|
5085
|
-
"--actionbtn-bg-hovered": `color-mix(in
|
|
5086
|
-
"--actionbtn-bg-hovered-btn": `color-mix(in
|
|
5149
|
+
"--actionbtn-bg-idle": `color-mix(in oklab , var(--likec4-palette-fill), transparent 99%)`,
|
|
5150
|
+
"--actionbtn-bg-hovered": `color-mix(in oklab , var(--likec4-palette-fill) 65%, var(--likec4-palette-stroke))`,
|
|
5151
|
+
"--actionbtn-bg-hovered-btn": `color-mix(in oklab , var(--likec4-palette-fill) 50%, var(--likec4-palette-stroke))`,
|
|
5087
5152
|
"--ai-bg": `var(--actionbtn-bg-idle)`,
|
|
5088
5153
|
background: `var(--ai-bg)`,
|
|
5154
|
+
_whenSelectable: {
|
|
5155
|
+
pointerEvents: "all",
|
|
5156
|
+
cursor: "pointer"
|
|
5157
|
+
},
|
|
5089
5158
|
_whenHovered: {
|
|
5090
5159
|
opacity: 1,
|
|
5091
5160
|
color: "var(--actionbtn-color-hovered)",
|
|
@@ -5104,6 +5173,9 @@ const actionBtn = defineRecipe({
|
|
|
5104
5173
|
},
|
|
5105
5174
|
"& *": {
|
|
5106
5175
|
pointerEvents: "none"
|
|
5176
|
+
},
|
|
5177
|
+
_print: {
|
|
5178
|
+
display: "none"
|
|
5107
5179
|
}
|
|
5108
5180
|
},
|
|
5109
5181
|
variants: {
|
|
@@ -5168,7 +5240,7 @@ const compoundColor = {
|
|
|
5168
5240
|
var: "--_compound-color",
|
|
5169
5241
|
ref: "var(--_compound-color)"
|
|
5170
5242
|
};
|
|
5171
|
-
const parts$
|
|
5243
|
+
const parts$4 = defineParts({
|
|
5172
5244
|
root: { selector: "&" },
|
|
5173
5245
|
titleContainer: { selector: "& .likec4-compound-title-container" },
|
|
5174
5246
|
title: { selector: "& .likec4-compound-title" },
|
|
@@ -5180,7 +5252,7 @@ const parts$3 = defineParts({
|
|
|
5180
5252
|
const iconSize = "20px";
|
|
5181
5253
|
const compoundNode = defineRecipe({
|
|
5182
5254
|
className: "likec4-compound-node",
|
|
5183
|
-
base: parts$
|
|
5255
|
+
base: parts$4({
|
|
5184
5256
|
root: {
|
|
5185
5257
|
position: "relative",
|
|
5186
5258
|
width: "100%",
|
|
@@ -5194,17 +5266,17 @@ const compoundNode = defineRecipe({
|
|
|
5194
5266
|
borderRadius: borderRadius$1.ref,
|
|
5195
5267
|
boxSizing: "border-box",
|
|
5196
5268
|
["--likec4-palette-outline"]: {
|
|
5197
|
-
|
|
5198
|
-
_dark: "
|
|
5269
|
+
base: "oklab(from var(--likec4-palette-stroke) calc(l - 0.05) a b)",
|
|
5270
|
+
_dark: "oklab(from var(--likec4-palette-stroke) calc(l + 0.2) a b)"
|
|
5199
5271
|
},
|
|
5200
5272
|
[borderWidth.var]: "3px",
|
|
5201
5273
|
[borderRadius$1.var]: "6px",
|
|
5202
5274
|
[compoundTransparency.var]: "100%",
|
|
5203
5275
|
[borderTransparency.var]: "100%",
|
|
5204
|
-
[indicatorSpacing.var]: `calc(${borderWidth.ref} +
|
|
5276
|
+
[indicatorSpacing.var]: `calc(${borderWidth.ref} + 1px)`,
|
|
5205
5277
|
[compoundColor.var]: "var(--likec4-palette-loContrast)",
|
|
5206
5278
|
color: compoundColor.ref,
|
|
5207
|
-
|
|
5279
|
+
_before: {
|
|
5208
5280
|
position: "absolute",
|
|
5209
5281
|
content: '" "',
|
|
5210
5282
|
top: `[calc(-1 * ${indicatorSpacing.ref})]`,
|
|
@@ -5221,7 +5293,7 @@ const compoundNode = defineRecipe({
|
|
|
5221
5293
|
_whenFocused: "block",
|
|
5222
5294
|
_whenSelected: "block"
|
|
5223
5295
|
},
|
|
5224
|
-
animationStyle: "
|
|
5296
|
+
animationStyle: "indicator",
|
|
5225
5297
|
animationPlayState: {
|
|
5226
5298
|
base: "paused",
|
|
5227
5299
|
_whenFocused: "running",
|
|
@@ -5268,7 +5340,8 @@ const compoundNode = defineRecipe({
|
|
|
5268
5340
|
justifyContent: "center",
|
|
5269
5341
|
mixBlendMode: {
|
|
5270
5342
|
base: "hard-light",
|
|
5271
|
-
_reduceGraphicsOnPan: "normal"
|
|
5343
|
+
_reduceGraphicsOnPan: "normal",
|
|
5344
|
+
_print: "normal!"
|
|
5272
5345
|
},
|
|
5273
5346
|
[`& svg, & img`]: {
|
|
5274
5347
|
width: "100%",
|
|
@@ -5291,7 +5364,7 @@ const compoundNode = defineRecipe({
|
|
|
5291
5364
|
actionBtn: {
|
|
5292
5365
|
"--actionbtn-color": compoundColor.ref,
|
|
5293
5366
|
"--actionbtn-color-hovered": compoundColor.ref,
|
|
5294
|
-
"--actionbtn-color-hovered-btn": `color-mix(in
|
|
5367
|
+
"--actionbtn-color-hovered-btn": `color-mix(in oklab, ${compoundColor.ref} 80%, #fff)`,
|
|
5295
5368
|
opacity: {
|
|
5296
5369
|
base: 0.6,
|
|
5297
5370
|
_whenHovered: 0.75,
|
|
@@ -5300,6 +5373,9 @@ const compoundNode = defineRecipe({
|
|
|
5300
5373
|
},
|
|
5301
5374
|
_noReduceGraphics: {
|
|
5302
5375
|
transition: "fast"
|
|
5376
|
+
},
|
|
5377
|
+
_print: {
|
|
5378
|
+
display: "none"
|
|
5303
5379
|
}
|
|
5304
5380
|
},
|
|
5305
5381
|
navigationBtn: {
|
|
@@ -5308,6 +5384,9 @@ const compoundNode = defineRecipe({
|
|
|
5308
5384
|
left: "0.5",
|
|
5309
5385
|
_smallZoom: {
|
|
5310
5386
|
display: "none"
|
|
5387
|
+
},
|
|
5388
|
+
_print: {
|
|
5389
|
+
display: "none"
|
|
5311
5390
|
}
|
|
5312
5391
|
},
|
|
5313
5392
|
detailsBtn: {
|
|
@@ -5316,12 +5395,15 @@ const compoundNode = defineRecipe({
|
|
|
5316
5395
|
right: "0.5",
|
|
5317
5396
|
_smallZoom: {
|
|
5318
5397
|
display: "none"
|
|
5398
|
+
},
|
|
5399
|
+
_print: {
|
|
5400
|
+
display: "none"
|
|
5319
5401
|
}
|
|
5320
5402
|
}
|
|
5321
5403
|
}),
|
|
5322
5404
|
variants: {
|
|
5323
5405
|
isTransparent: {
|
|
5324
|
-
false: parts$
|
|
5406
|
+
false: parts$4({
|
|
5325
5407
|
root: {
|
|
5326
5408
|
boxShadow: {
|
|
5327
5409
|
_noReduceGraphics: "0 4px 10px 0.5px rgb(0 0 0/10%) , 0 2px 2px -1px rgb(0 0 0/40%)",
|
|
@@ -5332,20 +5414,20 @@ const compoundNode = defineRecipe({
|
|
|
5332
5414
|
borderColor: "var(--likec4-palette-stroke)"
|
|
5333
5415
|
}
|
|
5334
5416
|
}),
|
|
5335
|
-
true: parts$
|
|
5417
|
+
true: parts$4({
|
|
5336
5418
|
root: {
|
|
5337
|
-
backgroundColor: `
|
|
5338
|
-
borderColor: `
|
|
5419
|
+
backgroundColor: `color-mix(in oklab, var(--likec4-palette-fill) ${compoundTransparency.ref}, transparent)`,
|
|
5420
|
+
borderColor: `color-mix(in oklab, var(--likec4-palette-stroke) ${borderTransparency.ref}, transparent)`
|
|
5339
5421
|
}
|
|
5340
5422
|
})
|
|
5341
5423
|
},
|
|
5342
5424
|
// When the compound node is too transparent, the text color should be inverted
|
|
5343
5425
|
inverseColor: {
|
|
5344
|
-
true: parts$
|
|
5426
|
+
true: parts$4({
|
|
5345
5427
|
root: {
|
|
5346
5428
|
[compoundColor.var]: {
|
|
5347
5429
|
base: "var(--likec4-palette-stroke)",
|
|
5348
|
-
_dark: "[color-mix(in
|
|
5430
|
+
_dark: "[color-mix(in oklab, var(--likec4-palette-loContrast) 60%, var(--likec4-palette-fill))]"
|
|
5349
5431
|
}
|
|
5350
5432
|
},
|
|
5351
5433
|
actionBtn: {
|
|
@@ -5364,22 +5446,22 @@ const compoundNode = defineRecipe({
|
|
|
5364
5446
|
false: {}
|
|
5365
5447
|
},
|
|
5366
5448
|
borderStyle: {
|
|
5367
|
-
solid: parts$
|
|
5449
|
+
solid: parts$4({
|
|
5368
5450
|
root: {
|
|
5369
5451
|
borderStyle: "solid"
|
|
5370
5452
|
}
|
|
5371
5453
|
}),
|
|
5372
|
-
dashed: parts$
|
|
5454
|
+
dashed: parts$4({
|
|
5373
5455
|
root: {
|
|
5374
5456
|
borderStyle: "dashed"
|
|
5375
5457
|
}
|
|
5376
5458
|
}),
|
|
5377
|
-
dotted: parts$
|
|
5459
|
+
dotted: parts$4({
|
|
5378
5460
|
root: {
|
|
5379
5461
|
borderStyle: "dotted"
|
|
5380
5462
|
}
|
|
5381
5463
|
}),
|
|
5382
|
-
none: parts$
|
|
5464
|
+
none: parts$4({
|
|
5383
5465
|
root: {
|
|
5384
5466
|
// We still need to have a border for consistent internal coordinates
|
|
5385
5467
|
// So we use a transparent border and extend background
|
|
@@ -5411,7 +5493,7 @@ const edgeActionBtn = defineRecipe({
|
|
|
5411
5493
|
translate: "auto",
|
|
5412
5494
|
// '--ai-bg': 'var(--xy-edge-label-background-color)',
|
|
5413
5495
|
"--ai-bg": "transparent",
|
|
5414
|
-
"--ai-hover": `color-mix(in
|
|
5496
|
+
"--ai-hover": `color-mix(in oklab , var(--xy-edge-label-background-color), {colors.likec4.mixColor} 10%)`,
|
|
5415
5497
|
"--ai-size": `var(--ai-size-sm)`,
|
|
5416
5498
|
"--ai-radius": `{radii.sm}`,
|
|
5417
5499
|
_hover: {
|
|
@@ -5430,6 +5512,9 @@ const edgeActionBtn = defineRecipe({
|
|
|
5430
5512
|
width: "80%",
|
|
5431
5513
|
height: "80%",
|
|
5432
5514
|
strokeWidth: "2"
|
|
5515
|
+
},
|
|
5516
|
+
_print: {
|
|
5517
|
+
display: "none"
|
|
5433
5518
|
}
|
|
5434
5519
|
},
|
|
5435
5520
|
variants: {},
|
|
@@ -5438,6 +5523,217 @@ const edgeActionBtn = defineRecipe({
|
|
|
5438
5523
|
conditions: ["*"]
|
|
5439
5524
|
}]
|
|
5440
5525
|
});
|
|
5526
|
+
const parts$3 = defineParts({
|
|
5527
|
+
root: { selector: "&" },
|
|
5528
|
+
stepNumber: { selector: "& .likec4-edge-label__step-number" },
|
|
5529
|
+
contents: { selector: "& .likec4-edge-label__contents" },
|
|
5530
|
+
label: { selector: "& .likec4-edge-label__text" },
|
|
5531
|
+
technology: { selector: "& .likec4-edge-label__technology" }
|
|
5532
|
+
});
|
|
5533
|
+
const edgeLabel = defineRecipe({
|
|
5534
|
+
className: "likec4-edge-label",
|
|
5535
|
+
jsx: [],
|
|
5536
|
+
base: parts$3({
|
|
5537
|
+
root: {
|
|
5538
|
+
fontFamily: "likec4.relation",
|
|
5539
|
+
paddingBlock: "1",
|
|
5540
|
+
paddingInline: "1.5",
|
|
5541
|
+
display: "flex",
|
|
5542
|
+
flexDirection: "column",
|
|
5543
|
+
alignItems: "center",
|
|
5544
|
+
width: "max-content",
|
|
5545
|
+
maxWidth: "100%",
|
|
5546
|
+
gap: "0.5",
|
|
5547
|
+
color: "var(--xy-edge-label-color)",
|
|
5548
|
+
background: "var(--xy-edge-label-background-color)",
|
|
5549
|
+
border: "0px solid transparent",
|
|
5550
|
+
borderRadius: "4px"
|
|
5551
|
+
},
|
|
5552
|
+
stepNumber: {
|
|
5553
|
+
alignSelf: "stretch",
|
|
5554
|
+
flex: "0 0 auto",
|
|
5555
|
+
fontWeight: 600,
|
|
5556
|
+
fontSize: "14px",
|
|
5557
|
+
padding: "1",
|
|
5558
|
+
textAlign: "center",
|
|
5559
|
+
minWidth: "22px",
|
|
5560
|
+
borderTopLeftRadius: "4px",
|
|
5561
|
+
borderBottomLeftRadius: "4px",
|
|
5562
|
+
_only: {
|
|
5563
|
+
borderRadius: "4px",
|
|
5564
|
+
minWidth: "24px"
|
|
5565
|
+
},
|
|
5566
|
+
background: `[color-mix(in oklab, var(--likec4-palette-relation-label-bg), {colors.likec4.mixColor} 10%)]`,
|
|
5567
|
+
fontVariantNumeric: "tabular-nums",
|
|
5568
|
+
// _dark: {
|
|
5569
|
+
[':where([data-likec4-color="gray"]) &']: {
|
|
5570
|
+
_dark: {
|
|
5571
|
+
background: `[color-mix(in oklab, var(--likec4-palette-relation-label-bg), {colors.likec4.mixColor} 15%)]`
|
|
5572
|
+
}
|
|
5573
|
+
}
|
|
5574
|
+
},
|
|
5575
|
+
contents: {
|
|
5576
|
+
display: "contents",
|
|
5577
|
+
_empty: {
|
|
5578
|
+
display: "none !important"
|
|
5579
|
+
}
|
|
5580
|
+
},
|
|
5581
|
+
label: {
|
|
5582
|
+
whiteSpaceCollapse: "preserve-breaks",
|
|
5583
|
+
fontSize: "14px",
|
|
5584
|
+
lineHeight: "1.2",
|
|
5585
|
+
margin: "0"
|
|
5586
|
+
},
|
|
5587
|
+
technology: {
|
|
5588
|
+
textAlign: "center",
|
|
5589
|
+
whiteSpaceCollapse: "preserve-breaks",
|
|
5590
|
+
fontSize: "11px",
|
|
5591
|
+
lineHeight: "1",
|
|
5592
|
+
opacity: 0.75
|
|
5593
|
+
}
|
|
5594
|
+
}),
|
|
5595
|
+
variants: {
|
|
5596
|
+
pointerEvents: {
|
|
5597
|
+
none: parts$3({
|
|
5598
|
+
root: {
|
|
5599
|
+
pointerEvents: "none"
|
|
5600
|
+
}
|
|
5601
|
+
}),
|
|
5602
|
+
all: parts$3({
|
|
5603
|
+
root: {
|
|
5604
|
+
pointerEvents: "all"
|
|
5605
|
+
}
|
|
5606
|
+
})
|
|
5607
|
+
},
|
|
5608
|
+
cursor: {
|
|
5609
|
+
pointer: parts$3({
|
|
5610
|
+
root: {
|
|
5611
|
+
cursor: "pointer"
|
|
5612
|
+
}
|
|
5613
|
+
}),
|
|
5614
|
+
default: parts$3({
|
|
5615
|
+
root: {
|
|
5616
|
+
cursor: "default"
|
|
5617
|
+
}
|
|
5618
|
+
})
|
|
5619
|
+
},
|
|
5620
|
+
isStepEdge: {
|
|
5621
|
+
false: {},
|
|
5622
|
+
true: parts$3({
|
|
5623
|
+
root: {
|
|
5624
|
+
flexDirection: "row",
|
|
5625
|
+
gap: "1",
|
|
5626
|
+
padding: "0"
|
|
5627
|
+
},
|
|
5628
|
+
contents: {
|
|
5629
|
+
display: "flex",
|
|
5630
|
+
flexDirection: "column",
|
|
5631
|
+
alignItems: "center",
|
|
5632
|
+
paddingTop: "0.5",
|
|
5633
|
+
paddingRight: "1",
|
|
5634
|
+
paddingBottom: "1",
|
|
5635
|
+
gap: "0.5"
|
|
5636
|
+
},
|
|
5637
|
+
label: {
|
|
5638
|
+
py: "0.5",
|
|
5639
|
+
paddingRight: "0.5"
|
|
5640
|
+
}
|
|
5641
|
+
})
|
|
5642
|
+
}
|
|
5643
|
+
},
|
|
5644
|
+
defaultVariants: {
|
|
5645
|
+
pointerEvents: "all",
|
|
5646
|
+
isStepEdge: false,
|
|
5647
|
+
cursor: "default"
|
|
5648
|
+
},
|
|
5649
|
+
staticCss: [{
|
|
5650
|
+
conditions: ["*"],
|
|
5651
|
+
isStepEdge: ["*"],
|
|
5652
|
+
cursor: ["*"],
|
|
5653
|
+
pointerEvents: ["*"]
|
|
5654
|
+
}]
|
|
5655
|
+
});
|
|
5656
|
+
const edgePath = defineSlotRecipe({
|
|
5657
|
+
description: "Recipe for Edge Path",
|
|
5658
|
+
slots: ["path", "pathBg", "markersCtx", "middlePoint"],
|
|
5659
|
+
className: "likec4-edge",
|
|
5660
|
+
jsx: [],
|
|
5661
|
+
base: {
|
|
5662
|
+
path: {
|
|
5663
|
+
fill: "none",
|
|
5664
|
+
strokeDashoffset: 0,
|
|
5665
|
+
_noReduceGraphics: {
|
|
5666
|
+
animationStyle: "xyedgeAnimated",
|
|
5667
|
+
animationPlayState: "paused",
|
|
5668
|
+
transition: "stroke 130ms ease-out,stroke-width 130ms ease-out"
|
|
5669
|
+
},
|
|
5670
|
+
[`:where([data-edge-dir='back']) &`]: {
|
|
5671
|
+
animationDirection: "reverse"
|
|
5672
|
+
},
|
|
5673
|
+
_whenHovered: {
|
|
5674
|
+
_noReduceGraphics: {
|
|
5675
|
+
animationPlayState: "running",
|
|
5676
|
+
animationDelay: "450ms"
|
|
5677
|
+
}
|
|
5678
|
+
},
|
|
5679
|
+
[`:where(.selected, [data-edge-active='true'], [data-edge-animated='true']) &`]: {
|
|
5680
|
+
_noReduceGraphics: {
|
|
5681
|
+
animationPlayState: "running",
|
|
5682
|
+
animationDelay: "0ms"
|
|
5683
|
+
}
|
|
5684
|
+
},
|
|
5685
|
+
_whenDimmed: {
|
|
5686
|
+
animationPlayState: "paused"
|
|
5687
|
+
},
|
|
5688
|
+
_smallZoom: {
|
|
5689
|
+
animationName: "none"
|
|
5690
|
+
},
|
|
5691
|
+
_whenPanning: {
|
|
5692
|
+
strokeDasharray: "none !important",
|
|
5693
|
+
animationPlayState: "paused"
|
|
5694
|
+
}
|
|
5695
|
+
},
|
|
5696
|
+
pathBg: {
|
|
5697
|
+
pointerEvents: "none",
|
|
5698
|
+
fill: "none",
|
|
5699
|
+
strokeWidth: "calc(var(--xy-edge-stroke-width) + 2)",
|
|
5700
|
+
strokeOpacity: 0.08,
|
|
5701
|
+
_noReduceGraphics: {
|
|
5702
|
+
transitionProperty: "stroke-width, stroke-opacity",
|
|
5703
|
+
transitionDuration: "fast",
|
|
5704
|
+
transitionTimingFunction: "inOut"
|
|
5705
|
+
},
|
|
5706
|
+
_whenHovered: {
|
|
5707
|
+
transitionTimingFunction: "out",
|
|
5708
|
+
strokeWidth: "calc(var(--xy-edge-stroke-width) + 4)",
|
|
5709
|
+
strokeOpacity: 0.2
|
|
5710
|
+
},
|
|
5711
|
+
_whenSelected: {
|
|
5712
|
+
strokeWidth: "calc(var(--xy-edge-stroke-width) + 6)",
|
|
5713
|
+
strokeOpacity: 0.25,
|
|
5714
|
+
_whenHovered: {
|
|
5715
|
+
strokeOpacity: 0.4
|
|
5716
|
+
}
|
|
5717
|
+
}
|
|
5718
|
+
},
|
|
5719
|
+
// To fix issue with marker not inheriting color from path - we need to create container
|
|
5720
|
+
markersCtx: {
|
|
5721
|
+
fill: "[var(--xy-edge-stroke)]",
|
|
5722
|
+
stroke: "[var(--xy-edge-stroke)]"
|
|
5723
|
+
},
|
|
5724
|
+
middlePoint: {
|
|
5725
|
+
visibility: "hidden",
|
|
5726
|
+
offsetDistance: "50%",
|
|
5727
|
+
cx: 0,
|
|
5728
|
+
cy: 0,
|
|
5729
|
+
r: 4,
|
|
5730
|
+
pointerEvents: "none"
|
|
5731
|
+
}
|
|
5732
|
+
},
|
|
5733
|
+
staticCss: [{
|
|
5734
|
+
conditions: ["*"]
|
|
5735
|
+
}]
|
|
5736
|
+
});
|
|
5441
5737
|
const parts$2 = defineParts({
|
|
5442
5738
|
root: { selector: "&" },
|
|
5443
5739
|
icon: { selector: "& [data-likec4-icon]" },
|
|
@@ -5587,6 +5883,9 @@ const elementNodeData = defineRecipe({
|
|
|
5587
5883
|
},
|
|
5588
5884
|
"& a": {
|
|
5589
5885
|
pointerEvents: "all"
|
|
5886
|
+
},
|
|
5887
|
+
"& .markdown-alert": {
|
|
5888
|
+
mixBlendMode: "screen"
|
|
5590
5889
|
}
|
|
5591
5890
|
},
|
|
5592
5891
|
technology: {
|
|
@@ -5635,9 +5934,10 @@ const elementShapeRecipe = defineRecipe({
|
|
|
5635
5934
|
pointerEvents: "none",
|
|
5636
5935
|
overflow: "visible",
|
|
5637
5936
|
["--likec4-palette-outline"]: {
|
|
5638
|
-
|
|
5639
|
-
_dark: "
|
|
5640
|
-
}
|
|
5937
|
+
base: "oklab(from var(--likec4-palette-stroke) calc(l - 0.05) a b)",
|
|
5938
|
+
_dark: "oklab(from var(--likec4-palette-stroke) calc(l + 0.2) a b)"
|
|
5939
|
+
},
|
|
5940
|
+
["--likec4-outline-size"]: `4px`
|
|
5641
5941
|
},
|
|
5642
5942
|
outline: {
|
|
5643
5943
|
visibility: {
|
|
@@ -5666,11 +5966,11 @@ const elementShapeRecipe = defineRecipe({
|
|
|
5666
5966
|
boxShadow: {
|
|
5667
5967
|
base: [
|
|
5668
5968
|
"0 2px 1px 0 rgb(0 0 0 / 21%)",
|
|
5669
|
-
"0 1px 1px 0 color-mix(in
|
|
5969
|
+
"0 1px 1px 0 color-mix(in oklab, var(--likec4-palette-stroke) 40%, transparent)",
|
|
5670
5970
|
"0 5px 3px 0 rgb(0 0 0 / 10%)"
|
|
5671
5971
|
].join(","),
|
|
5672
5972
|
_whenHovered: {
|
|
5673
|
-
|
|
5973
|
+
base: `rgba(38, 57, 77, 95%) 0px 20px 30px -10px`,
|
|
5674
5974
|
_dark: `rgba(10, 11, 16, 90%) 0px 20px 30px -10px`
|
|
5675
5975
|
},
|
|
5676
5976
|
_whenSelected: "none",
|
|
@@ -5681,8 +5981,7 @@ const elementShapeRecipe = defineRecipe({
|
|
|
5681
5981
|
base: "background-color 120ms linear, box-shadow 130ms {easings.inOut}",
|
|
5682
5982
|
_reduceGraphicsOnPan: "none"
|
|
5683
5983
|
},
|
|
5684
|
-
transitionDelay: "0ms"
|
|
5685
|
-
["--likec4-outline-size"]: `4px`
|
|
5984
|
+
transitionDelay: "0ms"
|
|
5686
5985
|
},
|
|
5687
5986
|
multipleHtml: {
|
|
5688
5987
|
position: "absolute",
|
|
@@ -5710,13 +6009,13 @@ const elementShapeRecipe = defineRecipe({
|
|
|
5710
6009
|
outline: {
|
|
5711
6010
|
position: "absolute",
|
|
5712
6011
|
content: '" "',
|
|
5713
|
-
top: `[calc(-1 * var(--likec4-outline-size))]`,
|
|
5714
|
-
left: `[calc(-1 * var(--likec4-outline-size))]`,
|
|
5715
|
-
width: `[calc(100% + 2 * var(--likec4-outline-size))]`,
|
|
5716
|
-
height: `[calc(100% + 2 * var(--likec4-outline-size))]`,
|
|
6012
|
+
top: `[calc(-1 * var(--likec4-outline-size) - 1px)]`,
|
|
6013
|
+
left: `[calc(-1 * var(--likec4-outline-size) - 1px)]`,
|
|
6014
|
+
width: `[calc(100% + 2 * var(--likec4-outline-size) + 2px)]`,
|
|
6015
|
+
height: `[calc(100% + 2 * var(--likec4-outline-size) + 2px)]`,
|
|
5717
6016
|
borderStyle: "solid",
|
|
5718
6017
|
borderWidth: "var(--likec4-outline-size)",
|
|
5719
|
-
borderRadius: "
|
|
6018
|
+
borderRadius: "11px",
|
|
5720
6019
|
borderColor: "var(--likec4-palette-outline)",
|
|
5721
6020
|
animationStyle: "indicator"
|
|
5722
6021
|
}
|
|
@@ -5730,7 +6029,7 @@ const elementShapeRecipe = defineRecipe({
|
|
|
5730
6029
|
filter: {
|
|
5731
6030
|
base: [
|
|
5732
6031
|
"drop-shadow(0 2px 1px rgba(0, 0, 0, 0.21))",
|
|
5733
|
-
"drop-shadow(0 1px 1px color-mix(in
|
|
6032
|
+
"drop-shadow(0 1px 1px color-mix(in oklab, var(--likec4-palette-stroke) 40%, transparent))",
|
|
5734
6033
|
"drop-shadow(0 5px 3px rgba(0, 0, 0, 0.1))"
|
|
5735
6034
|
].join("\n"),
|
|
5736
6035
|
_whenHovered: [
|
|
@@ -5751,7 +6050,7 @@ const elementShapeRecipe = defineRecipe({
|
|
|
5751
6050
|
fill: "var(--likec4-palette-stroke)"
|
|
5752
6051
|
},
|
|
5753
6052
|
'& [data-likec4-fill="mix-stroke"]': {
|
|
5754
|
-
fill: "[color-mix(in
|
|
6053
|
+
fill: "[color-mix(in oklab, var(--likec4-palette-stroke) 90%, var(--likec4-palette-fill))]"
|
|
5755
6054
|
}
|
|
5756
6055
|
},
|
|
5757
6056
|
multipleSvg: {
|
|
@@ -5781,7 +6080,7 @@ const elementShapeRecipe = defineRecipe({
|
|
|
5781
6080
|
outline: {
|
|
5782
6081
|
stroke: "var(--likec4-palette-outline)",
|
|
5783
6082
|
fill: "[none]",
|
|
5784
|
-
strokeWidth:
|
|
6083
|
+
strokeWidth: 3,
|
|
5785
6084
|
strokeOpacity: 0.8,
|
|
5786
6085
|
animationStyle: "indicator"
|
|
5787
6086
|
}
|
|
@@ -5829,7 +6128,10 @@ const likec4tag = defineRecipe({
|
|
|
5829
6128
|
filter: "invert(1) grayscale(1) brightness(1.3) contrast(1000)",
|
|
5830
6129
|
background: "inherit",
|
|
5831
6130
|
backgroundClip: "text",
|
|
5832
|
-
mixBlendMode:
|
|
6131
|
+
mixBlendMode: {
|
|
6132
|
+
base: "plus-lighter",
|
|
6133
|
+
_print: "normal!"
|
|
6134
|
+
}
|
|
5833
6135
|
}
|
|
5834
6136
|
}
|
|
5835
6137
|
}
|
|
@@ -5856,12 +6158,38 @@ const markdownBlock = defineRecipe({
|
|
|
5856
6158
|
"--typography-spacing": "calc(0.75 * var(--text-fz-md))",
|
|
5857
6159
|
"--text-fw-headings": "600",
|
|
5858
6160
|
"--code-background": {
|
|
5859
|
-
|
|
5860
|
-
_dark:
|
|
6161
|
+
base: mantine.colors.gray[2],
|
|
6162
|
+
_dark: mantine.colors.dark[8]
|
|
5861
6163
|
},
|
|
5862
6164
|
"--code-color": {
|
|
5863
|
-
|
|
5864
|
-
_dark:
|
|
6165
|
+
base: mantine.colors.black,
|
|
6166
|
+
_dark: mantine.colors.white
|
|
6167
|
+
},
|
|
6168
|
+
_dark: {
|
|
6169
|
+
"--color-border-default": "#30363d",
|
|
6170
|
+
"--color-accent-fg": "#58a6ff",
|
|
6171
|
+
"--color-accent-emphasis": "#1f6feb",
|
|
6172
|
+
"--color-danger-fg": "#f85149",
|
|
6173
|
+
"--color-danger-emphasis": "#da3633",
|
|
6174
|
+
"--color-attention-fg": "#d29922",
|
|
6175
|
+
"--color-attention-emphasis": "#9e6a03",
|
|
6176
|
+
"--color-done-fg": "#a371f7",
|
|
6177
|
+
"--color-done-emphasis": "#8957e5",
|
|
6178
|
+
"--color-success-fg": "#3fb950",
|
|
6179
|
+
"--color-success-emphasis": "#238636"
|
|
6180
|
+
},
|
|
6181
|
+
_light: {
|
|
6182
|
+
"--color-border-default": "#d0d7de",
|
|
6183
|
+
"--color-accent-fg": "#0969da",
|
|
6184
|
+
"--color-accent-emphasis": "#0969da",
|
|
6185
|
+
"--color-danger-fg": "#d1242f",
|
|
6186
|
+
"--color-danger-emphasis": "#cf222e",
|
|
6187
|
+
"--color-attention-fg": "#9a6700",
|
|
6188
|
+
"--color-attention-emphasis": "#9a6700",
|
|
6189
|
+
"--color-done-fg": "#8250df",
|
|
6190
|
+
"--color-done-emphasis": "#8250df",
|
|
6191
|
+
"--color-success-fg": "#1a7f37",
|
|
6192
|
+
"--color-success-emphasis": "#1f883d"
|
|
5865
6193
|
},
|
|
5866
6194
|
fontSize: "var(--text-fz-md)",
|
|
5867
6195
|
lineHeight: "var(--mantine-line-height)",
|
|
@@ -5923,18 +6251,16 @@ const markdownBlock = defineRecipe({
|
|
|
5923
6251
|
},
|
|
5924
6252
|
"& :where(mark)": {
|
|
5925
6253
|
fontSize: "var(--text-fz-md)",
|
|
5926
|
-
|
|
5927
|
-
|
|
5928
|
-
color: "inherit"
|
|
5929
|
-
},
|
|
6254
|
+
backgroundColor: mantine.colors.yellow[2],
|
|
6255
|
+
color: "inherit",
|
|
5930
6256
|
_dark: {
|
|
5931
|
-
backgroundColor:
|
|
5932
|
-
color:
|
|
6257
|
+
backgroundColor: mantine.colors.yellow[5],
|
|
6258
|
+
color: mantine.colors.black
|
|
5933
6259
|
}
|
|
5934
6260
|
},
|
|
5935
6261
|
"& :where(a)": {
|
|
5936
6262
|
fontSize: "var(--text-fz-md)",
|
|
5937
|
-
color:
|
|
6263
|
+
color: mantine.colors.anchor,
|
|
5938
6264
|
textDecoration: "none",
|
|
5939
6265
|
fontWeight: "500",
|
|
5940
6266
|
_hover: {
|
|
@@ -5947,8 +6273,8 @@ const markdownBlock = defineRecipe({
|
|
|
5947
6273
|
border: "none",
|
|
5948
6274
|
borderBottom: "1px solid",
|
|
5949
6275
|
borderColor: {
|
|
5950
|
-
|
|
5951
|
-
_dark:
|
|
6276
|
+
base: mantine.colors.gray[3],
|
|
6277
|
+
_dark: mantine.colors.dark[3]
|
|
5952
6278
|
}
|
|
5953
6279
|
},
|
|
5954
6280
|
"& :where(pre)": {
|
|
@@ -6032,12 +6358,80 @@ const markdownBlock = defineRecipe({
|
|
|
6032
6358
|
borderRadius: "var(--mantine-radius-sm)",
|
|
6033
6359
|
padding: "xs",
|
|
6034
6360
|
backgroundColor: {
|
|
6035
|
-
|
|
6036
|
-
_dark:
|
|
6361
|
+
base: mantine.colors.gray[1],
|
|
6362
|
+
_dark: mantine.colors.dark[5]
|
|
6037
6363
|
},
|
|
6038
6364
|
"&:not(:first-child)": {
|
|
6039
6365
|
marginTop: "var(--typography-spacing)"
|
|
6040
6366
|
}
|
|
6367
|
+
},
|
|
6368
|
+
"& .markdown-alert": {
|
|
6369
|
+
borderLeft: ".25em solid var(--borderColor-default, var(--color-border-default))",
|
|
6370
|
+
color: "inherit",
|
|
6371
|
+
marginBottom: "calc(var(--typography-spacing) * 1.5)",
|
|
6372
|
+
paddingLeft: "1em",
|
|
6373
|
+
paddingRight: ".5em",
|
|
6374
|
+
"&:last-child": {
|
|
6375
|
+
marginBottom: "0!important"
|
|
6376
|
+
},
|
|
6377
|
+
"& .markdown-alert-title": {
|
|
6378
|
+
alignItems: "center",
|
|
6379
|
+
display: "flex",
|
|
6380
|
+
fontSize: "var(--text-fz-md)",
|
|
6381
|
+
fontWeight: "500",
|
|
6382
|
+
lineHeight: "1.5",
|
|
6383
|
+
marginBottom: "0.1em",
|
|
6384
|
+
gap: "2"
|
|
6385
|
+
},
|
|
6386
|
+
"& .markdown-alert-title svg": {
|
|
6387
|
+
height: "var(--text-fz-md)",
|
|
6388
|
+
fill: "currentColor"
|
|
6389
|
+
},
|
|
6390
|
+
"&.markdown-alert-note": {
|
|
6391
|
+
borderLeftColor: "var(--borderColor-accent-emphasis,var(--color-accent-emphasis))"
|
|
6392
|
+
},
|
|
6393
|
+
"&.markdown-alert-note .markdown-alert-title": {
|
|
6394
|
+
color: [
|
|
6395
|
+
"var(--color-accent-fg)",
|
|
6396
|
+
"var(--fgColor-accent,var(--color-accent-fg))"
|
|
6397
|
+
]
|
|
6398
|
+
},
|
|
6399
|
+
"&.markdown-alert-tip": {
|
|
6400
|
+
borderLeftColor: "var(--borderColor-success-emphasis,var(--color-success-emphasis))"
|
|
6401
|
+
},
|
|
6402
|
+
"&.markdown-alert-tip .markdown-alert-title": {
|
|
6403
|
+
color: [
|
|
6404
|
+
"var(--color-success-fg)",
|
|
6405
|
+
"var(--fgColor-success,var(--color-success-fg))"
|
|
6406
|
+
]
|
|
6407
|
+
},
|
|
6408
|
+
"&.markdown-alert-important": {
|
|
6409
|
+
borderLeftColor: "var(--borderColor-done-emphasis,var(--color-done-emphasis))"
|
|
6410
|
+
},
|
|
6411
|
+
"&.markdown-alert-important .markdown-alert-title": {
|
|
6412
|
+
color: [
|
|
6413
|
+
"var(--color-done-fg)",
|
|
6414
|
+
"var(--fgColor-done,var(--color-done-fg))"
|
|
6415
|
+
]
|
|
6416
|
+
},
|
|
6417
|
+
"&.markdown-alert-warning": {
|
|
6418
|
+
borderLeftColor: "var(--borderColor-attention-emphasis,var(--color-attention-emphasis))"
|
|
6419
|
+
},
|
|
6420
|
+
"&.markdown-alert-warning .markdown-alert-title": {
|
|
6421
|
+
color: [
|
|
6422
|
+
"var(--color-attention-fg)",
|
|
6423
|
+
"var(--fgColor-attention,var(--color-attention-fg))"
|
|
6424
|
+
]
|
|
6425
|
+
},
|
|
6426
|
+
"&.markdown-alert-caution": {
|
|
6427
|
+
borderLeftColor: "var(--borderColor-danger-emphasis,var(--color-danger-emphasis))"
|
|
6428
|
+
},
|
|
6429
|
+
"&.markdown-alert-caution .markdown-alert-title": {
|
|
6430
|
+
color: [
|
|
6431
|
+
"var(--color-danger-fg)",
|
|
6432
|
+
"var(--fgColor-danger,var(--color-danger-fg))"
|
|
6433
|
+
]
|
|
6434
|
+
}
|
|
6041
6435
|
}
|
|
6042
6436
|
},
|
|
6043
6437
|
variants: {
|
|
@@ -6046,15 +6440,18 @@ const markdownBlock = defineRecipe({
|
|
|
6046
6440
|
*/
|
|
6047
6441
|
uselikec4palette: {
|
|
6048
6442
|
true: {
|
|
6049
|
-
"--code-background": "color-mix(in
|
|
6443
|
+
"--code-background": "color-mix(in oklab , var(--likec4-palette-stroke) 70%, transparent)",
|
|
6050
6444
|
"--code-color": "var(--likec4-palette-loContrast)",
|
|
6051
6445
|
"--typography-spacing": "calc(0.5 * var(--text-fz-md))",
|
|
6052
6446
|
"& :where(a)": {
|
|
6053
6447
|
color: "var(--likec4-palette-fill)/45",
|
|
6054
|
-
mixBlendMode:
|
|
6448
|
+
mixBlendMode: {
|
|
6449
|
+
base: "difference",
|
|
6450
|
+
_print: "normal!"
|
|
6451
|
+
}
|
|
6055
6452
|
},
|
|
6056
6453
|
"& :where(strong)": {
|
|
6057
|
-
color: `color-mix(in
|
|
6454
|
+
color: `color-mix(in oklab , var(--likec4-palette-hiContrast) 50%, var(--likec4-palette-loContrast))`
|
|
6058
6455
|
},
|
|
6059
6456
|
"& :where(blockquote)": {
|
|
6060
6457
|
padding: "xxs",
|
|
@@ -6252,7 +6649,7 @@ const overlay = defineRecipe({
|
|
|
6252
6649
|
dialog: {
|
|
6253
6650
|
_backdrop: {
|
|
6254
6651
|
backdropFilter: `blur(var(${backdropBlur}))`,
|
|
6255
|
-
background: `color-mix(in
|
|
6652
|
+
background: `color-mix(in oklab, {colors.likec4.overlay.backdrop} var(${backdropOpacity}), transparent)`
|
|
6256
6653
|
}
|
|
6257
6654
|
}
|
|
6258
6655
|
}
|
|
@@ -6272,6 +6669,8 @@ const recipes = {
|
|
|
6272
6669
|
actionBtn,
|
|
6273
6670
|
compoundNode,
|
|
6274
6671
|
edgeActionBtn,
|
|
6672
|
+
edgeLabel,
|
|
6673
|
+
edgePath,
|
|
6275
6674
|
elementNodeData,
|
|
6276
6675
|
elementShapeRecipe,
|
|
6277
6676
|
likec4tag,
|
|
@@ -6284,6 +6683,16 @@ function mixTransparent(color, percentage = 50) {
|
|
|
6284
6683
|
}
|
|
6285
6684
|
const semanticTokens = defineSemanticTokens({
|
|
6286
6685
|
colors: {
|
|
6686
|
+
text: {
|
|
6687
|
+
DEFAULT: {
|
|
6688
|
+
description: "Default text color",
|
|
6689
|
+
value: mantine.colors.text
|
|
6690
|
+
},
|
|
6691
|
+
dimmed: {
|
|
6692
|
+
description: "Dimmed text color",
|
|
6693
|
+
value: mantine.colors.dimmed
|
|
6694
|
+
}
|
|
6695
|
+
},
|
|
6287
6696
|
likec4: {
|
|
6288
6697
|
background: {
|
|
6289
6698
|
DEFAULT: {
|
|
@@ -6331,7 +6740,7 @@ const semanticTokens = defineSemanticTokens({
|
|
|
6331
6740
|
description: "LikeC4 panel border color",
|
|
6332
6741
|
value: {
|
|
6333
6742
|
base: "transparent",
|
|
6334
|
-
_light:
|
|
6743
|
+
_light: mantine.colors.gray[2]
|
|
6335
6744
|
}
|
|
6336
6745
|
},
|
|
6337
6746
|
text: {
|
|
@@ -6452,7 +6861,7 @@ const semanticTokens = defineSemanticTokens({
|
|
|
6452
6861
|
outline: {
|
|
6453
6862
|
value: {
|
|
6454
6863
|
_light: mantine.colors.orange[8],
|
|
6455
|
-
_dark: mantine.colors.orange[6]
|
|
6864
|
+
_dark: mixTransparent(mantine.colors.orange[6], 80)
|
|
6456
6865
|
}
|
|
6457
6866
|
}
|
|
6458
6867
|
},
|
|
@@ -6464,129 +6873,6 @@ const semanticTokens = defineSemanticTokens({
|
|
|
6464
6873
|
}
|
|
6465
6874
|
}
|
|
6466
6875
|
});
|
|
6467
|
-
const edgeLabel = defineSlotRecipe({
|
|
6468
|
-
className: "likec4-edge-label",
|
|
6469
|
-
slots: ["root", "stepNumber", "labelContents", "labelText", "labelTechnology"],
|
|
6470
|
-
base: {
|
|
6471
|
-
root: {
|
|
6472
|
-
fontFamily: "likec4.relation",
|
|
6473
|
-
paddingBlock: "1",
|
|
6474
|
-
paddingInline: "1.5",
|
|
6475
|
-
display: "flex",
|
|
6476
|
-
flexDirection: "column",
|
|
6477
|
-
alignItems: "center",
|
|
6478
|
-
width: "max-content",
|
|
6479
|
-
lineHeight: "[1.2]",
|
|
6480
|
-
maxWidth: "100%",
|
|
6481
|
-
gap: "0.5",
|
|
6482
|
-
color: "var(--xy-edge-label-color)",
|
|
6483
|
-
background: "var(--xy-edge-label-background-color)",
|
|
6484
|
-
border: "0px solid transparent",
|
|
6485
|
-
borderRadius: "4px"
|
|
6486
|
-
},
|
|
6487
|
-
stepNumber: {
|
|
6488
|
-
alignSelf: "stretch",
|
|
6489
|
-
flex: "0 0 auto",
|
|
6490
|
-
fontWeight: 600,
|
|
6491
|
-
fontSize: "14px",
|
|
6492
|
-
padding: "1",
|
|
6493
|
-
textAlign: "center",
|
|
6494
|
-
minWidth: "22px",
|
|
6495
|
-
borderTopLeftRadius: "4px",
|
|
6496
|
-
borderBottomLeftRadius: "4px",
|
|
6497
|
-
_only: {
|
|
6498
|
-
borderRadius: "4px",
|
|
6499
|
-
minWidth: "24px"
|
|
6500
|
-
},
|
|
6501
|
-
background: `[color-mix(in srgb, var(--likec4-palette-relation-label-bg), {colors.likec4.mixColor} 10%)]`,
|
|
6502
|
-
fontVariantNumeric: "tabular-nums",
|
|
6503
|
-
// _dark: {
|
|
6504
|
-
[':where([data-likec4-color="gray"]) &']: {
|
|
6505
|
-
_dark: {
|
|
6506
|
-
background: `[color-mix(in srgb, var(--likec4-palette-relation-label-bg), {colors.likec4.mixColor} 15%)]`
|
|
6507
|
-
}
|
|
6508
|
-
}
|
|
6509
|
-
},
|
|
6510
|
-
labelContents: {
|
|
6511
|
-
display: "contents",
|
|
6512
|
-
_empty: {
|
|
6513
|
-
display: "none !important"
|
|
6514
|
-
}
|
|
6515
|
-
},
|
|
6516
|
-
labelText: {
|
|
6517
|
-
whiteSpaceCollapse: "preserve-breaks",
|
|
6518
|
-
fontSize: "14px",
|
|
6519
|
-
margin: "0"
|
|
6520
|
-
},
|
|
6521
|
-
labelTechnology: {
|
|
6522
|
-
textAlign: "center",
|
|
6523
|
-
whiteSpaceCollapse: "preserve-breaks",
|
|
6524
|
-
fontSize: "11px",
|
|
6525
|
-
lineHeight: "[1]",
|
|
6526
|
-
opacity: 0.75
|
|
6527
|
-
}
|
|
6528
|
-
},
|
|
6529
|
-
variants: {
|
|
6530
|
-
pointerEvents: {
|
|
6531
|
-
none: {
|
|
6532
|
-
root: {
|
|
6533
|
-
pointerEvents: "none"
|
|
6534
|
-
}
|
|
6535
|
-
},
|
|
6536
|
-
all: {
|
|
6537
|
-
root: {
|
|
6538
|
-
pointerEvents: "all"
|
|
6539
|
-
}
|
|
6540
|
-
}
|
|
6541
|
-
},
|
|
6542
|
-
cursor: {
|
|
6543
|
-
pointer: {
|
|
6544
|
-
root: {
|
|
6545
|
-
cursor: "pointer"
|
|
6546
|
-
}
|
|
6547
|
-
},
|
|
6548
|
-
default: {
|
|
6549
|
-
root: {
|
|
6550
|
-
cursor: "default"
|
|
6551
|
-
}
|
|
6552
|
-
}
|
|
6553
|
-
},
|
|
6554
|
-
isStepEdge: {
|
|
6555
|
-
false: {},
|
|
6556
|
-
true: {
|
|
6557
|
-
root: {
|
|
6558
|
-
flexDirection: "row",
|
|
6559
|
-
gap: "1",
|
|
6560
|
-
padding: "0"
|
|
6561
|
-
},
|
|
6562
|
-
labelContents: {
|
|
6563
|
-
display: "flex",
|
|
6564
|
-
flexDirection: "column",
|
|
6565
|
-
alignItems: "center",
|
|
6566
|
-
paddingTop: "0.5",
|
|
6567
|
-
paddingRight: "1",
|
|
6568
|
-
paddingBottom: "1",
|
|
6569
|
-
gap: "0.5"
|
|
6570
|
-
},
|
|
6571
|
-
labelText: {
|
|
6572
|
-
py: "0.5",
|
|
6573
|
-
paddingRight: "0.5"
|
|
6574
|
-
}
|
|
6575
|
-
}
|
|
6576
|
-
}
|
|
6577
|
-
},
|
|
6578
|
-
defaultVariants: {
|
|
6579
|
-
pointerEvents: "all",
|
|
6580
|
-
isStepEdge: false,
|
|
6581
|
-
cursor: "default"
|
|
6582
|
-
},
|
|
6583
|
-
staticCss: [{
|
|
6584
|
-
conditions: ["*"],
|
|
6585
|
-
isStepEdge: ["*"],
|
|
6586
|
-
cursor: ["*"],
|
|
6587
|
-
pointerEvents: ["*"]
|
|
6588
|
-
}]
|
|
6589
|
-
});
|
|
6590
6876
|
const navigationLink = defineSlotRecipe({
|
|
6591
6877
|
className: "likec4-navlink",
|
|
6592
6878
|
description: "Navigation Link (classes for Mantine NavLink)",
|
|
@@ -6654,10 +6940,32 @@ const navigationLink = defineSlotRecipe({
|
|
|
6654
6940
|
});
|
|
6655
6941
|
const slotRecipes = {
|
|
6656
6942
|
__proto__: null,
|
|
6657
|
-
edgeLabel,
|
|
6658
6943
|
navigationLink
|
|
6659
6944
|
};
|
|
6660
6945
|
const textStyles = defineTextStyles({
|
|
6946
|
+
dimmed: {
|
|
6947
|
+
xxs: {
|
|
6948
|
+
value: {
|
|
6949
|
+
fontSize: "0.625rem",
|
|
6950
|
+
lineHeight: "1rem",
|
|
6951
|
+
color: "text.dimmed"
|
|
6952
|
+
}
|
|
6953
|
+
},
|
|
6954
|
+
xs: {
|
|
6955
|
+
value: {
|
|
6956
|
+
fontSize: "0.75rem",
|
|
6957
|
+
lineHeight: "1rem",
|
|
6958
|
+
color: "text.dimmed"
|
|
6959
|
+
}
|
|
6960
|
+
},
|
|
6961
|
+
sm: {
|
|
6962
|
+
value: {
|
|
6963
|
+
fontSize: "0.875rem",
|
|
6964
|
+
lineHeight: "1.25rem",
|
|
6965
|
+
color: "text.dimmed"
|
|
6966
|
+
}
|
|
6967
|
+
}
|
|
6968
|
+
},
|
|
6661
6969
|
xxs: {
|
|
6662
6970
|
value: {
|
|
6663
6971
|
fontSize: "0.625rem",
|