@likec4/diagram 1.56.0 → 1.57.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 (82) hide show
  1. package/dist/LikeC4Diagram.js +3 -1
  2. package/dist/LikeC4View.js +47 -55
  3. package/dist/adhoc-editor/ElementsTree.js +2 -6
  4. package/dist/components/RootContainer.js +19 -18
  5. package/dist/context/DiagramFeatures.d.ts +1 -1
  6. package/dist/context/DiagramFeatures.js +5 -0
  7. package/dist/context/RootContainerContext.d.ts +10 -17
  8. package/dist/context/RootContainerContext.js +1 -13
  9. package/dist/custom/index.d.ts +1 -1
  10. package/dist/custom/index.js +1 -2
  11. package/dist/editor/LikeC4EditorCallbacks.d.ts +5 -0
  12. package/dist/editor/actor/actions.d.ts +115 -0
  13. package/dist/editor/actor/actions.js +122 -0
  14. package/dist/editor/{hotkeyActor.d.ts → actor/hotkey.d.ts} +1 -1
  15. package/dist/editor/{hotkeyActor.js → actor/hotkey.js} +4 -4
  16. package/dist/editor/actor/machine.d.ts +11 -0
  17. package/dist/editor/actor/machine.js +22 -0
  18. package/dist/editor/{editorActor.setup.d.ts → actor/setup.d.ts} +13 -49
  19. package/dist/editor/{editorActor.setup.js → actor/setup.js} +13 -10
  20. package/dist/editor/actor/state.editor.d.ts +97 -0
  21. package/dist/editor/actor/state.editor.js +55 -0
  22. package/dist/editor/actor/state.sync-queue.d.ts +420 -0
  23. package/dist/editor/actor/state.sync-queue.js +235 -0
  24. package/dist/editor/actor/types.d.ts +59 -0
  25. package/dist/editor/actor/types.js +5 -0
  26. package/dist/editor/applyChangesToManualLayout.js +1 -1
  27. package/dist/editor/index.d.ts +2 -1
  28. package/dist/editor/useEditorActorLogic.d.ts +8 -2
  29. package/dist/editor/useEditorActorLogic.js +26 -6
  30. package/dist/hooks/useDiagram.js +6 -1
  31. package/dist/hooks/useDiagramCompareLayout.js +1 -1
  32. package/dist/hooks/useEditorActor.d.ts +4 -0
  33. package/dist/hooks/useEditorActor.js +26 -0
  34. package/dist/hooks/useLikeC4ElementsTree.d.ts +3 -2
  35. package/dist/hooks/useLikeC4ElementsTree.js +3 -1
  36. package/dist/likec4diagram/DiagramUI.js +8 -4
  37. package/dist/likec4diagram/DiagramXYFlow.js +12 -12
  38. package/dist/likec4diagram/state/aligners.js +3 -0
  39. package/dist/likec4diagram/state/assign.js +1 -1
  40. package/dist/likec4diagram/state/diagram-api.d.ts +16 -0
  41. package/dist/likec4diagram/state/diagram-api.js +13 -7
  42. package/dist/likec4diagram/state/machine.actions.js +7 -8
  43. package/dist/likec4diagram/state/machine.d.ts +1 -1
  44. package/dist/likec4diagram/state/machine.setup.js +1 -1
  45. package/dist/likec4diagram/state/types.d.ts +1 -1
  46. package/dist/likec4diagram/state/utils.d.ts +1 -1
  47. package/dist/likec4diagram/useLayoutConstraints.js +2 -0
  48. package/dist/navigationpanel/controls/ToggleReadonly.js +4 -2
  49. package/dist/navigationpanel/editorpanel/ApplySemanticLayout.d.ts +4 -0
  50. package/dist/navigationpanel/editorpanel/ApplySemanticLayout.js +36 -0
  51. package/dist/navigationpanel/editorpanel/EditorPanel.js +45 -33
  52. package/dist/navigationpanel/walkthrough/DynamicViewControls.d.ts +61 -61
  53. package/dist/overlays/overlay/Overlay.d.ts +16 -0
  54. package/dist/overlays/overlay/Overlay.js +50 -52
  55. package/dist/overlays/overlaysActor.js +28 -27
  56. package/dist/overlays/relationship-details/custom/nodeTypes.d.ts +4 -5
  57. package/dist/overlays/relationship-details/custom/nodeTypes.js +25 -24
  58. package/dist/overlays/relationships-browser/SelectElement.js +2 -2
  59. package/dist/search/Search.d.ts +6 -3
  60. package/dist/search/Search.js +60 -71
  61. package/dist/search/components/ElementsColumn.js +12 -8
  62. package/dist/search/searchActor.js +30 -26
  63. package/dist/shadowroot/ShadowRoot.d.ts +7 -6
  64. package/dist/shadowroot/ShadowRoot.js +59 -20
  65. package/dist/shadowroot/styles.css.d.ts +10 -2
  66. package/dist/shadowroot/styles.css.js +33 -36
  67. package/dist/styles2.js +1 -1
  68. package/package.json +17 -23
  69. package/panda.buildinfo.json +15 -15
  70. package/src/styles-font.css +114 -0
  71. package/src/styles-min.css +2 -0
  72. package/src/styles-xyflow.css +1 -0
  73. package/src/styles.css +3 -0
  74. package/styles-min.css +1 -1
  75. package/styles.css +1 -1
  76. package/dist/bundle/index.d.ts +0 -1
  77. package/dist/editor/editorActor.actions.d.ts +0 -153
  78. package/dist/editor/editorActor.actions.js +0 -133
  79. package/dist/editor/editorActor.states.d.ts +0 -9
  80. package/dist/editor/editorActor.states.js +0 -219
  81. package/dist/hooks/useOverlaysActor.js +0 -11
  82. package/dist/hooks/useSearchActor.js +0 -11
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@likec4/diagram",
3
- "version": "1.56.0",
3
+ "version": "1.57.0",
4
4
  "license": "MIT",
5
5
  "bugs": "https://github.com/likec4/likec4/issues",
6
6
  "homepage": "https://likec4.dev",
@@ -65,8 +65,8 @@
65
65
  "@dagrejs/dagre": "1.1.8",
66
66
  "@floating-ui/dom": "^1.7.6",
67
67
  "@lume/kiwi": "^0.4.4",
68
- "@mantine/core": "9.1.0",
69
- "@mantine/hooks": "9.1.0",
68
+ "@mantine/core": "9.2.1",
69
+ "@mantine/hooks": "9.2.1",
70
70
  "@nanostores/media-query": "0.1.2",
71
71
  "@nanostores/react": "1.1.0",
72
72
  "@react-hookz/web": "^25.2.0",
@@ -85,44 +85,38 @@
85
85
  "motion": "^12.36.0",
86
86
  "nanostores": "1.2.0",
87
87
  "react-error-boundary": "^6.1.1",
88
- "react-shadow": "^20.6.0",
89
88
  "remeda": "^2.33.7",
90
89
  "type-fest": "^4.41.0",
91
90
  "xstate": "5.30.0",
92
- "@tabler/icons-react": "3.40.0",
93
- "@likec4/core": "1.56.0",
94
- "@likec4/styles": "1.56.0"
91
+ "@tabler/icons-react": "3.44.0",
92
+ "@likec4/styles": "1.57.0",
93
+ "@likec4/core": "1.57.0"
95
94
  },
96
95
  "peerDependencies": {
97
- "@pandacss/dev": "^1.9.1",
98
96
  "react": "^18.x || ^19.x",
99
97
  "react-dom": "^18.x || ^19.x"
100
98
  },
101
- "peerDependenciesMeta": {
102
- "@pandacss/dev": {
103
- "optional": true
104
- }
105
- },
106
99
  "devDependencies": {
107
- "@pandacss/dev": "^1.9.1",
100
+ "@pandacss/dev": "^1.11.1",
108
101
  "@statelyai/inspect": "^0.4.0",
109
102
  "@types/bezier-js": "^4.1.3",
110
103
  "@types/d3-shape": "^3.1.8",
111
- "@types/node": "~22.19.17",
112
- "@types/react": "19.2.14",
104
+ "@types/node": "~22.19.19",
105
+ "@types/react": "19.2.15",
113
106
  "@types/react-dom": "19.2.3",
114
- "@vitejs/plugin-react": "^6.0.1",
107
+ "@vitejs/plugin-react": "^6.0.2",
108
+ "react-compiler-runtime": "^1.0.0",
115
109
  "oxlint": "1.59.0",
116
- "postcss": "8.5.10",
117
- "react": "19.2.4",
118
- "react-dom": "19.2.4",
110
+ "postcss": "8.5.15",
111
+ "react": "19.2.6",
112
+ "react-dom": "19.2.6",
119
113
  "typescript": "5.9.3",
120
- "vite": "^8.0.10",
114
+ "vite": "^8.0.14",
121
115
  "vite-plugin-dts": "5.0.0-beta.6",
122
116
  "vitest": "4.1.3",
123
117
  "zx": "8.8.5",
124
- "@likec4/devops": "1.42.0",
125
- "@likec4/tsconfig": "1.56.0"
118
+ "@likec4/devops": "1.57.0",
119
+ "@likec4/tsconfig": "1.57.0"
126
120
  },
127
121
  "scripts": {
128
122
  "typecheck": "tsc --build --verbose",
@@ -1,5 +1,5 @@
1
1
  {
2
- "schemaVersion": "1.9.1",
2
+ "schemaVersion": "1.11.1",
3
3
  "styles": {
4
4
  "atomic": [
5
5
  "background]___[value:dots",
@@ -977,20 +977,6 @@
977
977
  "*]___[value:default]___[recipe:navigationPanelActionIcon",
978
978
  "*]___[value:filled]___[recipe:navigationPanelActionIcon"
979
979
  ],
980
- "elementNodeData": [
981
- "iconPosition]___[value:left]___[recipe:elementNodeData",
982
- "withIconColor]___[value:false]___[recipe:elementNodeData",
983
- "withIconColor]___[value:true]___[recipe:elementNodeData",
984
- "*]___[value:true]___[recipe:elementNodeData",
985
- "*]___[value:false]___[recipe:elementNodeData",
986
- "*]___[value:left]___[recipe:elementNodeData",
987
- "iconPosition]___[value:right]___[recipe:elementNodeData",
988
- "*]___[value:right]___[recipe:elementNodeData",
989
- "iconPosition]___[value:top]___[recipe:elementNodeData",
990
- "*]___[value:top]___[recipe:elementNodeData",
991
- "iconPosition]___[value:bottom]___[recipe:elementNodeData",
992
- "*]___[value:bottom]___[recipe:elementNodeData"
993
- ],
994
980
  "actionBtn": [
995
981
  "size]___[value:md]___[recipe:actionBtn",
996
982
  "radius]___[value:md]___[recipe:actionBtn",
@@ -1018,6 +1004,20 @@
1018
1004
  "edgeActionBtn": [],
1019
1005
  "edgePath": [],
1020
1006
  "actionButtons": [],
1007
+ "elementNodeData": [
1008
+ "iconPosition]___[value:left]___[recipe:elementNodeData",
1009
+ "withIconColor]___[value:false]___[recipe:elementNodeData",
1010
+ "withIconColor]___[value:true]___[recipe:elementNodeData",
1011
+ "*]___[value:true]___[recipe:elementNodeData",
1012
+ "*]___[value:false]___[recipe:elementNodeData",
1013
+ "*]___[value:left]___[recipe:elementNodeData",
1014
+ "iconPosition]___[value:right]___[recipe:elementNodeData",
1015
+ "*]___[value:right]___[recipe:elementNodeData",
1016
+ "iconPosition]___[value:top]___[recipe:elementNodeData",
1017
+ "*]___[value:top]___[recipe:elementNodeData",
1018
+ "iconPosition]___[value:bottom]___[recipe:elementNodeData",
1019
+ "*]___[value:bottom]___[recipe:elementNodeData"
1020
+ ],
1021
1021
  "elementNode": [],
1022
1022
  "elementShapeRecipe": [
1023
1023
  "withBorder]___[value:none]___[recipe:elementShapeRecipe",
@@ -0,0 +1,114 @@
1
+ /* ibm-plex-sans-latin-wght-normal */
2
+ @font-face {
3
+ font-family: "IBM Plex Sans Variable";
4
+ font-style: normal;
5
+ font-display: swap;
6
+ font-weight: 100 700;
7
+ src: url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans:vf@latest/latin-wght-normal.woff2)
8
+ format("woff2-variations");
9
+ unicode-range:
10
+ U+0000-00FF,
11
+ U+0131,
12
+ U+0152-0153,
13
+ U+02BB-02BC,
14
+ U+02C6,
15
+ U+02DA,
16
+ U+02DC,
17
+ U+0304,
18
+ U+0308,
19
+ U+0329,
20
+ U+2000-206F,
21
+ U+20AC,
22
+ U+2122,
23
+ U+2191,
24
+ U+2193,
25
+ U+2212,
26
+ U+2215,
27
+ U+FEFF,
28
+ U+FFFD;
29
+ }
30
+
31
+ /* ibm-plex-sans-cyrillic-wght-normal */
32
+ @font-face {
33
+ font-family: "IBM Plex Sans Variable";
34
+ font-style: normal;
35
+ font-display: swap;
36
+ font-weight: 100 700;
37
+ src: url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans:vf@latest/cyrillic-wght-normal.woff2)
38
+ format("woff2-variations");
39
+ unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
40
+ }
41
+
42
+ /* ibm-plex-sans-cyrillic-ext-wght-normal */
43
+ @font-face {
44
+ font-family: "IBM Plex Sans Variable";
45
+ font-style: normal;
46
+ font-display: swap;
47
+ font-weight: 100 700;
48
+ src: url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans:vf@latest/cyrillic-ext-wght-normal.woff2)
49
+ format("woff2-variations");
50
+ unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
51
+ }
52
+
53
+ /* ibm-plex-sans-greek-wght-normal */
54
+ @font-face {
55
+ font-family: "IBM Plex Sans Variable";
56
+ font-style: normal;
57
+ font-display: swap;
58
+ font-weight: 100 700;
59
+ src: url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans:vf@latest/greek-wght-normal.woff2)
60
+ format("woff2-variations");
61
+ unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
62
+ }
63
+
64
+ /* ibm-plex-sans-latin-ext-wght-normal */
65
+ @font-face {
66
+ font-family: "IBM Plex Sans Variable";
67
+ font-style: normal;
68
+ font-display: swap;
69
+ font-weight: 100 700;
70
+ src: url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans:vf@latest/latin-ext-wght-normal.woff2)
71
+ format("woff2-variations");
72
+ unicode-range:
73
+ U+0100-02BA,
74
+ U+02BD-02C5,
75
+ U+02C7-02CC,
76
+ U+02CE-02D7,
77
+ U+02DD-02FF,
78
+ U+0304,
79
+ U+0308,
80
+ U+0329,
81
+ U+1D00-1DBF,
82
+ U+1E00-1E9F,
83
+ U+1EF2-1EFF,
84
+ U+2020,
85
+ U+20A0-20AB,
86
+ U+20AD-20C0,
87
+ U+2113,
88
+ U+2C60-2C7F,
89
+ U+A720-A7FF;
90
+ }
91
+
92
+ /* ibm-plex-sans-vietnamese-wght-normal */
93
+ @font-face {
94
+ font-family: "IBM Plex Sans Variable";
95
+ font-style: normal;
96
+ font-display: swap;
97
+ font-weight: 100 700;
98
+ src: url(https://cdn.jsdelivr.net/fontsource/fonts/ibm-plex-sans:vf@latest/vietnamese-wght-normal.woff2)
99
+ format("woff2-variations");
100
+ unicode-range:
101
+ U+0102-0103,
102
+ U+0110-0111,
103
+ U+0128-0129,
104
+ U+0168-0169,
105
+ U+01A0-01A1,
106
+ U+01AF-01B0,
107
+ U+0300-0301,
108
+ U+0303-0304,
109
+ U+0308-0309,
110
+ U+0323,
111
+ U+0329,
112
+ U+1EA0-1EF9,
113
+ U+20AB;
114
+ }
@@ -0,0 +1,2 @@
1
+ @layer reset, base, mantine, xyflow, tokens, recipes, utilities;
2
+ @import "@xyflow/react/dist/style.css" layer(xyflow);
@@ -0,0 +1 @@
1
+ @import "@xyflow/react/dist/style.css" layer(xyflow);
package/src/styles.css ADDED
@@ -0,0 +1,3 @@
1
+ @layer reset, base, mantine, xyflow, tokens, recipes, utilities;
2
+ @import "@mantine/core/styles.layer.css";
3
+ @import "@xyflow/react/dist/style.css" layer(xyflow);