likec4 1.43.0 → 1.45.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.
@@ -1,9 +1,9 @@
1
- import '../shared/likec4.CQWzqezS.mjs';
2
- import { L as LikeC4LanguageServices } from '../shared/likec4.VWjIqhhl.mjs';
1
+ import { L as LikeC4LanguageServices } from '../shared/likec4.YFH8qb4R.mjs';
3
2
  import '@likec4/core';
3
+ import 'type-fest';
4
+ import '../shared/likec4.DVpfjKrU.mjs';
4
5
  import '@likec4/core/model';
5
6
  import '@likec4/core/types';
6
- import 'type-fest';
7
7
  import '@likec4/core/styles';
8
8
  import '@likec4/core/utils';
9
9
 
@@ -1 +1 @@
1
- export{L as LikeC4VitePlugin}from"../shared/likec4.CWfMOOnG.mjs";
1
+ export{L as LikeC4VitePlugin}from"../shared/likec4.DH1Cjktk.mjs";
@@ -1,7 +1,7 @@
1
- import{LikeC4Model as U}from"@likec4/core/model";import{useRef as _,useCallback as x,useSyncExternalStore as R,useState as A,useEffect as V}from"react";import{t as L}from"../shared/likec4.DO_7oUns.mjs";import{a as C}from"../shared/likec4.DOUP9ptn.mjs";let T=Symbol("clean"),a=[],o=0;const m=4;let g=0,M=e=>{let n=[],t={get(){return t.lc||t.listen(()=>{})(),t.value},lc:0,listen(l){return t.lc=n.push(l),()=>{for(let u=o+m;u<a.length;)a[u]===l?a.splice(u,m):u+=m;let i=n.indexOf(l);~i&&(n.splice(i,1),
2
- --t.lc||t.off())}},notify(l,i){g++;let u=!a.length;for(let r of n)a.push(r,t.value,l,i);if(u){for(o=0;o<a.length;o+=m)a[o](a[o+1],a[o+2],a[o+3]);a.length=0}},off(){},set(l){let i=t.value;i!==l&&(t.value=l,t.notify(i))},subscribe(l){let i=t.listen(l);return l(t.value),i},value:e};return process.env.NODE_ENV!=="production"&&(t[T]=()=>{n=[],t.lc=0,t.off()}),t};const I=5,v=6,E=10;let D=(e,n,t,l)=>(e.events=e.events||{},e.events[t+E]||(e.events[t+E]=l(i=>{e.events[t].reduceRight((u,r)=>(r(u),u),{shared:{},
1
+ import{LikeC4Model as U}from"@likec4/core/model";import{useRef as _,useCallback as x,useSyncExternalStore as R,useState as A,useEffect as V}from"react";import{t as L}from"../shared/likec4.DO_7oUns.mjs";import{a as C}from"../shared/likec4.DOUP9ptn.mjs";let T=Symbol("clean"),o=[],a=0;const m=4;let g=0;const M=e=>{let n=[],t={get(){return t.lc||t.listen(()=>{})(),t.value},lc:0,listen(l){return t.lc=n.push(l),()=>{for(let u=a+m;u<o.length;)o[u]===l?o.splice(u,m):u+=m;let i=n.indexOf(l);~i&&(n.splice(
2
+ i,1),--t.lc||t.off())}},notify(l,i){g++;let u=!o.length;for(let r of n)o.push(r,t.value,l,i);if(u){for(a=0;a<o.length;a+=m)o[a](o[a+1],o[a+2],o[a+3]);o.length=0}},off(){},set(l){let i=t.value;i!==l&&(t.value=l,t.notify(i))},subscribe(l){let i=t.listen(l);return l(t.value),i},value:e};return process.env.NODE_ENV!=="production"&&(t[T]=()=>{n=[],t.lc=0,t.off()}),t},I=5,v=6,E=10;let D=(e,n,t,l)=>(e.events=e.events||{},e.events[t+E]||(e.events[t+E]=l(i=>{e.events[t].reduceRight((u,r)=>(r(u),u),{shared:{},
3
3
  ...i})})),e.events[t]=e.events[t]||[],e.events[t].push(n),()=>{let i=e.events[t],u=i.indexOf(n);i.splice(u,1),i.length||(delete e.events[t],e.events[t+E](),delete e.events[t+E])}),Q=1e3,b=(e,n)=>D(e,l=>{let i=n(l);i&&e.events[v].push(i)},I,l=>{let i=e.listen;e.listen=(...r)=>(!e.lc&&!e.active&&(e.active=!0,l()),i(...r));let u=e.off;if(e.events[v]=[],e.off=()=>{u(),setTimeout(()=>{if(e.active&&!e.lc){e.active=!1;for(let r of e.events[v])r();e.events[v]=[]}},Q)},process.env.NODE_ENV!=="production"){
4
- let r=e[T];e[T]=()=>{for(let s of e.events[v])s();e.events[v]=[],e.active=!1,r()}}return()=>{e.listen=i,e.off=u}}),w=(e,n,t)=>{Array.isArray(e)||(e=[e]);let l,i,u=()=>{if(i===g)return;i=g;let c=e.map(f=>f.get());if(!l||c.some((f,h)=>f!==l[h])){l=c;let f=n(...c);f&&f.then&&f.t?f.then(h=>{l===c&&r.set(h)}):(r.set(f),i=g)}},r=M(void 0),s=r.get;r.get=()=>(u(),s());let d,p=t?()=>{clearTimeout(d),d=setTimeout(u)}:u;return b(r,()=>{let c=e.map(f=>f.listen(p));return u(),()=>{for(let f of c)f()}}),r},N=(e,n)=>w(
5
- e,n),k=(e,n)=>w(e,n,!0);function q(e,n,t){let l=new Set(n).add(void 0);return e.listen((i,u,r)=>{l.has(r)&&t(i,u,r)})}let F=(e={})=>{let n=M(e);return n.setKey=function(t,l){let i=n.value;typeof l>"u"&&t in n.value?(n.value={...n.value},delete n.value[t],n.notify(i,t)):n.value[t]!==l&&(n.value={...n.value,[t]:l},n.notify(i,t))},n},O=(e,n)=>t=>{e.current!==t&&(e.current=t,n())};function S(e,{keys:n,deps:t=[e,n]}={}){let l=_();l.current=e.get();let i=x(r=>(O(l,r)(e.value),n?.length>0?q(e,n,O(l,r)):
6
- e.listen(O(l,r))),t),u=()=>l.current;return R(i,u,u)}const H=e=>{const n=N(e,s=>U.create(s));function t(s){const d=e.get();if(L(d,s))return;const p={...s,views:C(s.views,c=>{const f=d.views[c.id];return L(f,c)?f:c})};e.set(p)}const l=N(e,s=>Object.values(s.views));function i(){return S(n)}function u(){return S(l)}function r(s){const[d,p]=A(e.value?.views[s]??null);return V(()=>e.subscribe(c=>{p(c.views[s]??null)}),[s]),d}return{updateModel:t,$likec4model:n,useLikeC4Model:i,useLikeC4Views:u,useLikeC4View:r}};
7
- export{M as atom,k as batched,N as computed,H as createHooksForModel,F as map,S as useStore};
4
+ let r=e[T];e[T]=()=>{for(let f of e.events[v])f();e.events[v]=[],e.active=!1,r()}}return()=>{e.listen=i,e.off=u}}),w=(e,n,t)=>{Array.isArray(e)||(e=[e]);let l,i,u=()=>{if(i===g)return;i=g;let c=e.map(s=>s.get());if(!l||c.some((s,h)=>s!==l[h])){l=c;let s=n(...c);s&&s.then&&s.t?s.then(h=>{l===c&&r.set(h)}):(r.set(s),i=g)}},r=M(void 0),f=r.get;r.get=()=>(u(),f());let d,p=t?()=>{clearTimeout(d),d=setTimeout(u)}:u;return b(r,()=>{let c=e.map(s=>s.listen(p));return u(),()=>{for(let s of c)s()}}),r};const N=(e,n)=>w(
5
+ e,n),k=(e,n)=>w(e,n,!0);function q(e,n,t){let l=new Set(n).add(void 0);return e.listen((i,u,r)=>{l.has(r)&&t(i,u,r)})}const F=(e={})=>{let n=M(e);return n.setKey=function(t,l){let i=n.value;typeof l>"u"&&t in n.value?(n.value={...n.value},delete n.value[t],n.notify(i,t)):n.value[t]!==l&&(n.value={...n.value,[t]:l},n.notify(i,t))},n};let O=(e,n)=>t=>{e.current!==t&&(e.current=t,n())};function S(e,{keys:n,deps:t=[e,n]}={}){let l=_();l.current=e.get();let i=x(r=>(O(l,r)(e.value),n?.length>0?q(e,n,O(
6
+ l,r)):e.listen(O(l,r))),t),u=()=>l.current;return R(i,u,u)}const H=e=>{const n=N(e,f=>U.create(f));function t(f){const d=e.get();if(L(d,f))return;const p={...f,views:C(f.views,c=>{const s=d.views[c.id];return L(s,c)?s:c})};e.set(p)}const l=N(e,f=>Object.values(f.views));function i(){return S(n)}function u(){return S(l)}function r(f){const[d,p]=A(e.value?.views[f]??null);return V(()=>e.subscribe(c=>{p(c.views[f]??null)}),[f]),d}return{updateModel:t,$likec4model:n,useLikeC4Model:i,useLikeC4Views:u,
7
+ useLikeC4View:r}};export{M as atom,k as batched,N as computed,H as createHooksForModel,F as map,S as useStore};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "likec4",
3
3
  "description": "Toolchain for your architecture diagrams",
4
- "version": "1.43.0",
4
+ "version": "1.45.0",
5
5
  "license": "MIT",
6
6
  "homepage": "https://likec4.dev",
7
7
  "author": "Denis Davydkov <denis@davydkov.com>",
@@ -22,7 +22,6 @@
22
22
  "engines": {
23
23
  "node": "^20.19.0 || >=22.18.0"
24
24
  },
25
- "engineStrict": true,
26
25
  "bugs": "https://github.com/likec4/likec4/issues",
27
26
  "type": "module",
28
27
  "bin": "./bin/likec4.mjs",
@@ -64,6 +63,7 @@
64
63
  "sources": "./react/index.ts",
65
64
  "default": {
66
65
  "types": "./react/index.d.ts",
66
+ "import": "./react/index.js",
67
67
  "default": "./react/index.js"
68
68
  }
69
69
  },
@@ -99,21 +99,21 @@
99
99
  "access": "public"
100
100
  },
101
101
  "dependencies": {
102
- "@hpcc-js/wasm-graphviz": "1.12.0",
103
- "@vitejs/plugin-react": "^5.0.4",
102
+ "@hpcc-js/wasm-graphviz": "1.15.0",
103
+ "@vitejs/plugin-react": "^5.1.1",
104
104
  "boxen": "^8.0.1",
105
105
  "bundle-require": "^5.1.0",
106
- "esbuild": "0.25.11",
106
+ "esbuild": "0.27.0",
107
107
  "fdir": "6.4.0",
108
108
  "playwright": "1.56.1",
109
- "rollup": "^4.52.3",
110
- "std-env": "^3.9.0",
109
+ "rollup": "^4.53.3",
110
+ "std-env": "^3.10.0",
111
111
  "type-fest": "^4.41.0",
112
- "vite": "^7.1.11",
113
- "@xyflow/react": "12.9.0",
114
- "@xyflow/system": "0.0.71",
112
+ "vite": "^7.2.4",
113
+ "@xyflow/react": "12.9.3",
114
+ "@xyflow/system": "0.0.73",
115
115
  "yargs": "17.7.2",
116
- "@likec4/core": "1.43.0"
116
+ "@likec4/core": "1.45.0"
117
117
  },
118
118
  "peerDependencies": {
119
119
  "react": "^18.x || ^19.x",
@@ -122,29 +122,30 @@
122
122
  "devDependencies": {
123
123
  "@dagrejs/dagre": "1.1.5",
124
124
  "@fontsource/ibm-plex-sans": "^5.2.8",
125
- "@mantine/core": "8.3.5",
126
- "@mantine/hooks": "8.3.5",
125
+ "@mantine/core": "8.3.9",
126
+ "@mantine/hooks": "8.3.9",
127
127
  "@nanostores/react": "1.0.0",
128
- "@pandacss/dev": "^1.4.3",
129
- "@react-hookz/web": "^25.1.1",
128
+ "@pandacss/dev": "^1.5.1",
129
+ "@react-hookz/web": "^25.2.0",
130
130
  "@tabler/icons-react": "3.35.0",
131
131
  "@tanstack/react-router": "^1.114.13",
132
132
  "@tanstack/router-cli": "^1.114.13",
133
133
  "@tanstack/router-vite-plugin": "^1.114.13",
134
134
  "@types/node": "~20.19.22",
135
135
  "@types/picomatch": "^4.0.2",
136
- "@types/react": "19.1.16",
137
- "@types/react-dom": "19.1.9",
136
+ "@types/react": "19.2.6",
137
+ "@types/react-dom": "19.2.3",
138
138
  "@types/semver": "^7.7.1",
139
139
  "@types/yargs": "^17.0.33",
140
+ "@xstate/react": "6.0.0",
140
141
  "autoprefixer": "^10.4.21",
141
142
  "clsx": "^2.1.1",
142
143
  "conf": "^13.1.0",
143
144
  "defu": "^6.1.4",
144
145
  "dts-bundle-generator": "^9.5.1",
145
- "esbuild-node-externals": "1.18.0",
146
+ "esbuild-node-externals": "1.20.1",
146
147
  "esm-env": "^1.2.2",
147
- "fast-equals": "^5.3.2",
148
+ "fast-equals": "^5.3.3",
148
149
  "get-port": "^7.1.0",
149
150
  "html-to-image": "1.11.11",
150
151
  "is-inside-container": "^1.0.0",
@@ -155,32 +156,32 @@
155
156
  "mkdirp": "^3.0.1",
156
157
  "motion": "^12.23.24",
157
158
  "nano-spawn": "^1.0.3",
158
- "nanostores": "1.0.1",
159
+ "nanostores": "1.1.0",
159
160
  "npm-run-all2": "^8.0.4",
160
161
  "p-limit": "6.2.0",
161
162
  "picomatch": "^4.0.3",
162
- "package-manager-detector": "1.3.0",
163
+ "package-manager-detector": "1.5.0",
163
164
  "package-up": "^5.0.0",
164
165
  "postcss": "8.5.6",
165
166
  "pretty-ms": "^9.2.0",
166
- "react": "19.1.1",
167
- "react-dom": "19.1.1",
167
+ "react": "19.2.0",
168
+ "react-dom": "19.2.0",
168
169
  "react-error-boundary": "^6.0.0",
169
- "react-resizable-panels": "^3.0.5",
170
+ "react-resizable-panels": "^3.0.6",
170
171
  "react-shadow": "^20.6.0",
171
172
  "remeda": "^2.32.0",
172
173
  "semver": "^7.7.3",
173
174
  "strip-indent": "^4.1.1",
174
175
  "tinyrainbow": "^2.0.0",
175
176
  "tsx": "4.20.6",
176
- "turbo": "2.5.8",
177
+ "turbo": "2.6.1",
177
178
  "typescript": "5.9.3",
178
179
  "ufo": "1.6.1",
179
180
  "unbuild": "3.5.0",
180
181
  "vite-plugin-dts": "^4.5.4",
181
182
  "vite-plugin-inspect": "^11.1.0",
182
183
  "vite-plugin-singlefile": "^2.2.0",
183
- "vitest": "3.2.4",
184
+ "vitest": "4.0.13",
184
185
  "vscode-jsonrpc": "8.2.1",
185
186
  "vscode-languageserver": "9.0.1",
186
187
  "vscode-languageserver-types": "3.17.5",
@@ -188,17 +189,18 @@
188
189
  "which": "^5.0.0",
189
190
  "wireit": "0.14.12",
190
191
  "zod": "^3.25.76",
191
- "@likec4/config": "1.43.0",
192
+ "xstate": "5.24.0",
193
+ "@likec4/config": "1.45.0",
192
194
  "@likec4/devops": "1.42.0",
193
- "@likec4/diagram": "1.43.0",
194
- "@likec4/generators": "1.43.0",
195
- "@likec4/icons": "1.43.0",
196
- "@likec4/language-server": "1.43.0",
197
- "@likec4/layouts": "1.43.0",
198
- "@likec4/log": "1.43.0",
199
- "@likec4/style-preset": "1.43.0",
200
- "@likec4/styles": "1.43.0",
201
- "@likec4/tsconfig": "1.43.0"
195
+ "@likec4/diagram": "1.45.0",
196
+ "@likec4/generators": "1.45.0",
197
+ "@likec4/icons": "1.45.0",
198
+ "@likec4/language-server": "1.45.0",
199
+ "@likec4/layouts": "1.45.0",
200
+ "@likec4/log": "1.45.0",
201
+ "@likec4/style-preset": "1.45.0",
202
+ "@likec4/tsconfig": "1.45.0",
203
+ "@likec4/styles": "1.45.0"
202
204
  },
203
205
  "scripts": {
204
206
  "typecheck": "tsc --build --verbose",