likec4 1.7.3 → 1.7.4

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.
@@ -69,7 +69,7 @@ Use "options.replacer" or "options.ignoreUnknown"
69
69
  `)].filter(Boolean).map(i=>" > "+i).join(`
70
70
  `)+`
71
71
  `:this.filterAndJoin([vC(e.type),vC(e.tag),n])}log(e,r){let n=this.formatLogObj(e,{columns:r.options.stdout.columns||0,...r.options.formatOptions});return CW(n+`
72
- `,e.level<2?r.options.stderr||process.stderr:r.options.stdout||process.stdout)}};function CC(t={}){let e=_t.info;return process.env.CONSOLA_LEVEL&&(e=Number.parseInt(process.env.CONSOLA_LEVEL)??e),cP({level:e,defaults:{level:e},stdout:process.stdout,stderr:process.stderr,reporters:t.reporters||[new Bg],...t})}var TEe=CC();var se=CC({level:_t.debug,fancy:!0,formatOptions:{colors:!0,date:!1}});var Ig=pe(Zt(),1);import{argv as hEe,exit as gEe,stdout as yEe}from"node:process";var SW={done:!0,hasNext:!1},ni={done:!1,hasNext:!1},qg=()=>SW,fP=t=>({hasNext:!0,next:t,done:!1});function Ot(t,...e){let r=t,n=e.map(o=>"lazy"in o?RW(o):void 0),i=0;for(;i<e.length;){if(n[i]===void 0||!TW(r)){let u=e[i];r=u(r),i+=1;continue}let o=[];for(let u=i;u<e.length;u++){let c=n[u];if(c===void 0||(o.push(c),c.isSingle))break}let s=[];for(let u of r)if(pP(u,s,o))break;let{isSingle:a}=o.at(-1);r=a?s[0]:s,i+=o.length}return r}function pP(t,e,r){if(r.length===0)return e.push(t),!1;let n=t,i=ni,o=!1;for(let[s,a]of r.entries()){let{index:u,items:c}=a;if(c.push(n),i=a(n,u,c),a.index+=1,i.hasNext){if(i.hasMany??!1){for(let l of i.next)if(pP(l,e,r.slice(s+1)))return!0;return o}n=i.next}if(!i.hasNext)break;i.done&&(o=!0)}return i.hasNext&&e.push(n),o}function RW(t){let{lazy:e,lazyArgs:r}=t,n=e(...r);return Object.assign(n,{isSingle:e.single??!1,index:0,items:[]})}function TW(t){return typeof t=="string"||typeof t=="object"&&t!==null&&Symbol.iterator in t}function Nu(t,e){let r=e.length-t.length;if(r===1){let[n,...i]=e;return Ot(n,{lazy:t,lazyArgs:i})}if(r===0){let n={lazy:t,lazyArgs:e};return Object.assign(i=>Ot(i,n),n)}throw new Error("Wrong number of arguments")}function mP(t,e,r){let n=i=>t(i,...e);return r===void 0?n:Object.assign(n,{lazy:r,lazyArgs:e})}function de(t,e,r){let n=t.length-e.length;if(n===0)return t(...e);if(n===1)return mP(t,e,r);throw new Error("Wrong number of arguments")}function $u(...t){return de(Object.values,t)}function DC(...t){return de(kW,t,PW)}var kW=(t,e)=>t.length<e.length?t.map((r,n)=>[r,e[n]]):e.map((r,n)=>[t[n],r]),PW=t=>(e,r)=>({hasNext:!0,next:[e,t[r]],done:r>=t.length-1});function It(...t){return de(_W,t)}var _W=(t,e)=>t.length>=e;function ii(...t){return Nu(IW,t)}function IW(){let t=new Set;return e=>t.has(e)?ni:(t.add(e),{done:!1,hasNext:!0,next:e})}function bC(...t){return de(FW,t,LW)}var FW=(t,e)=>e<0?[]:t.slice(0,e);function LW(t){if(t<=0)return qg;let e=t;return r=>(e-=1,{done:e<=0,hasNext:!0,next:r})}function ya(...t){return de(NW,t)}function NW(t,e){let r=[...t];return r.sort(e),r}function SC(...t){return de(hP,t)}var hP=(t,e)=>t[e];function RC(...t){return de($W,t)}var $W=(t,e,r)=>t.reduce(e,r);function TC(...t){return de(OW,t)}function OW(t){return[...t].reverse()}function Ug(...t){return de(BW,t)}function BW(t,e){let r={};for(let n of e)n in t&&(r[n]=t[n]);return r}function zf(...t){return de(MW,t)}function MW(t,e){let r={...t};for(let[n,i]of Object.entries(r))e(i,n,t)&&delete r[n];return r}function er(...t){return de(qW,t,UW)}var qW=(t,e)=>t.map(e),UW=t=>(e,r,n)=>({done:!1,hasNext:!0,next:t(e,r,n)});function zi(...t){return de(jW,t)}function jW(t,e){let r={};for(let[n,i]of t.entries()){let[o,s]=e(i,n,t);r[o]=s}return r}function Ou(...t){return de(VW,t)}function VW(t,e){let r={};for(let[n,i]of Object.entries(t)){let o=e(i,n,t);r[n]=o}return r}function Kf(t){return typeof t=="string"}function K(t){return!!t}function Es(...t){return de(WW,t)}var WW=t=>t.at(-1);function Ea(t){return t!=null}function kC(t){return e=>!t(e)}function ve(t){return t==null}function Yf(t){return typeof t=="number"&&!Number.isNaN(t)}function Mn(t){return t!==void 0}function oi(t){return t===void 0?!0:typeof t=="string"?t.length===0:typeof t!="object"?!1:Array.isArray(t)?t.length===0:Object.keys(t).length===0}function PC(...t){return Nu(GW,t)}function GW(t){if(t.length===0)return qg;let e=new Map;for(let r of t)e.set(r,(e.get(r)??0)+1);return r=>{let n=e.get(r);return n===void 0||n===0?ni:(n===1?e.delete(r):e.set(r,n-1),{hasNext:!0,next:r,done:e.size===0})}}function _C(...t){return de(HW,t,zW)}function HW(t,e){return t.forEach(e),t}var zW=t=>(e,r,n)=>(t(e,r,n),{done:!1,hasNext:!0,next:e});var jg=t=>Object.assign(t,{single:!0});function Xf(...t){return de(KW,t,jg(YW))}var KW=(t,e)=>t.find(e),YW=t=>(e,r,n)=>t(e,r,n)?{done:!0,hasNext:!0,next:e}:ni;function IC(...t){return de(XW,t)}var XW=(t,e)=>{for(let r=t.length-1;r>=0;r--){let n=t[r];if(e(n,r,t))return n}};function vn(...t){return de(JW,t,jg(QW))}var JW=([t])=>t,QW=()=>ZW,ZW=t=>({hasNext:!0,next:t,done:!0});function jr(...t){return de(eG,t,tG)}var eG=(t,e)=>t.flatMap(e),tG=t=>(e,r,n)=>{let i=t(e,r,n);return Array.isArray(i)?{done:!1,hasNext:!0,hasMany:!0,next:i}:{done:!1,hasNext:!0,next:i}};function Bu(...t){return de(Object.entries,t)}function ut(...t){return de(rG,t,nG)}var rG=(t,e)=>t.filter(e),nG=t=>(e,r,n)=>t(e,r,n)?{done:!1,hasNext:!0,next:e}:ni;function FC(t,{waitMs:e,timing:r="trailing",maxWaitMs:n}){if(n!==void 0&&e!==void 0&&n<e)throw new Error(`debounce: maxWaitMs (${n}) cannot be less than waitMs (${e})`);let i,o,s,a,u=()=>{if(o!==void 0){let f=o;o=void 0,clearTimeout(f)}if(s===void 0)throw new Error("REMEDA[debounce]: latestCallArgs was unexpectedly undefined.");let d=s;s=void 0,a=t(...d)},c=()=>{if(i===void 0)return;let d=i;i=void 0,clearTimeout(d),s!==void 0&&u()},l=d=>{s=d,n!==void 0&&o===void 0&&(o=setTimeout(u,n))};return{call:(...d)=>{if(i===void 0)r==="trailing"?l(d):a=t(...d);else{r!=="leading"&&l(d);let f=i;i=void 0,clearTimeout(f)}return i=setTimeout(c,e??n??0),a},cancel:()=>{if(i!==void 0){let d=i;i=void 0,clearTimeout(d)}if(o!==void 0){let d=o;o=void 0,clearTimeout(d)}s=void 0},flush:()=>(c(),a),get isPending(){return i!==void 0},get cachedValue(){return a}}}function LC(...t){return Nu(iG,t)}function iG(t){if(t.length===0)return fP;let e=new Map;for(let r of t)e.set(r,(e.get(r)??0)+1);return r=>{let n=e.get(r);return n===void 0||n===0?{done:!1,hasNext:!0,next:r}:(e.set(r,n-1),ni)}}function Mu(...t){return de(oG,t)}var oG=(t,e)=>e.every(r=>r(t));function Jf(...t){return de(sG,t)}var sG=(t,e)=>e.some(r=>r(t));function NC(...t){return de(aG,t)}function aG(t,e){let r=[];for(let n=0;n<t.length;n+=e)r.push(t.slice(n,n+e));return r}function xa(...t){return de(uG,t)}var uG=(t,{min:e,max:r})=>e!==void 0&&t<e?e:r!==void 0&&t>r?r:t;import EEe from"yargs";import{hideBin as xEe}from"yargs/helpers";var Vg={name:"likec4",version:"1.7.3",license:"MIT",homepage:"https://likec4.dev",author:"Denis Davydkov <denis@davydkov.com>",repository:{type:"git",url:"https://github.com/likec4/likec4.git",directory:"packages/likec4"},engines:{node:"^18.0.0 || >=20.0.0"},bugs:"https://github.com/likec4/likec4/issues",type:"module",bin:"./bin/likec4.mjs",exports:{".":{types:"./app/react/components/index.ts",default:"./dist/__app__/react/components.mjs"},"./react":{types:"./app/react/components/index.ts",default:"./dist/__app__/react/components.mjs"},"./icons/all":{types:"./icons/all.d.ts",default:"./icons/all.js"},"./icons/*":{types:"./icons/icon.d.ts",default:"./icons/*"}},publishConfig:{registry:"https://registry.npmjs.org",access:"public",exports:{".":{types:"./react/index.d.ts",default:"./react/index.mjs"},"./react":{types:"./react/index.d.ts",default:"./react/index.mjs"},"./icons/all":{types:"./icons/all.d.ts",default:"./icons/all.js"},"./icons/*":{types:"./icons/icon.d.ts",default:"./icons/*"}}},scripts:{"turbo-build":"run -T turbo run build --filter='likec4' --log-prefix=none --log-order=grouped","typecheck:app":"tsc --noEmit -p ./app/tsconfig.json","typecheck:cli":"tsc --noEmit -p ./tsconfig.json",typecheck:"run 'typecheck:cli' && run 'typecheck:app'",prebuild:"tsx scripts/prebuild.ts","build:cli":"tsx scripts/build-cli.ts","build:app":"tsx scripts/bundle-app.ts","build:react":"tsx scripts/bundle-react.ts","build:webcomponent":"tsx scripts/bundle-webcomponent.ts",build:"run prebuild && run-p --print-label 'build:*'",generate:"tsx scripts/generate.ts",prepack:"tsx scripts/prepack.ts",postpack:"tsx scripts/postpack.ts",lint:"run -T eslint src/ --fix",clean:"run -T rimraf dist app/dist dev/.export dev/dist node_modules/.vite",dev:"tsx watch src/cli/index.ts serve dev","dev:bigbank":"tsx watch src/cli/index.ts serve ../../apps/docs/src/components/bigbank","dev:dynamic-view":"tsx watch src/cli/index.ts serve ../../apps/docs/src/components/dynamic-view","dev:index-page":"tsx watch src/cli/index.ts serve ../../apps/docs/src/components/index-page","dev:template":"tsx watch src/cli/index.ts serve ../create-likec4/template","dev:example-cloud":"tsx watch src/cli/index.ts serve ../../examples/cloud-system","dev:failed":"tsx watch src/cli/index.ts serve ../../examples/failed","dev:example-dev":"tsx watch src/cli/index.ts serve ../../examples/diagrams-dev/likec4",cli:"tsx src/cli/index.ts","cli:serve":"tsx watch src/cli/index.ts serve dev","cli:build":"tsx src/cli/index.ts build -o dev/dist dev","cli:preview":"tsx src/cli/index.ts preview -o dev/dist dev","cli:export":"tsx src/cli/index.ts export png -o dev/export dev","cli:export:json":"tsx src/cli/index.ts export json -o dev/export/likec4.json dev"},dependencies:{"@hpcc-js/wasm":"2.18.2","@nanostores/react":"0.7.2","@vitejs/plugin-react":"4.3.1",nanostores:"0.10.3",playwright:"1.46.0",react:"18.3.1","react-dom":"18.3.1",vite:"5.3.4",yargs:"17.7.2"},devDependencies:{"@fontsource/ibm-plex-sans":"^5.0.20","@likec4/core":"workspace:*","@likec4/diagram":"workspace:*","@likec4/generators":"workspace:*","@likec4/icons":"workspace:*","@likec4/language-server":"workspace:*","@likec4/layouts":"workspace:*","@likec4/log":"workspace:*","@likec4/tsconfig":"workspace:*","@mantine/core":"7.11.2","@mantine/hooks":"7.11.2","@mantine/vanilla-extract":"7.11.2","@react-hookz/web":"^24.0.4","@tabler/icons-react":"^3.11.0","@tanstack/react-router":"1.45.13","@tanstack/router-cli":"1.45.13","@tanstack/router-vite-plugin":"1.45.13","@types/node":"^20.14.14","@types/prop-types":"^15.7.11","@types/react":"18.3.3","@types/react-dom":"18.3.0","@types/string-hash":"^1.1.3","@types/yargs":"^17.0.33","@vanilla-extract/css":"^1.15.3","@vanilla-extract/dynamic":"^2.1.1","@vanilla-extract/vite-plugin":"^4.0.13",autoprefixer:"^10.4.20","ci-info":"^3.9.0",classnames:"^2.3.2",clsx:"^2.1.1",esbuild:"^0.21.5","esbuild-node-externals":"^1.14.0","esm-env":"^1.0.0",execa:"^9.3.0","fast-equals":"^5.0.1","framer-motion":"^11.3.24","get-port":"^7.1.0",glob:"^11.0.0","html-to-image":"^1.11.11",json5:"^2.2.3",langium:"3.1.3",mkdirp:"^3.0.1","npm-run-all2":"^6.2.2","p-limit":"^6.1.0","package-up":"^5.0.0",picocolors:"^1.0.1",postcss:"^8.4.41","postcss-preset-mantine":"^1.17.0","pretty-ms":"^9.0.0","react-error-boundary":"^4.0.13","react-resizable-panels":"^2.0.23","react-shadow":"^20.5.0",remeda:"^2.3.0","string-hash":"^1.1.3","strip-indent":"^4.0.0",terser:"^5.31.5",tsx:"~4.9.3","type-fest":"^4.21.0",typescript:"^5.5.4",ufo:"^1.5.4","vite-plugin-css-injected-by-js":"^3.5.1","vite-plugin-shadow-style":"^1.1.1",vitest:"~2.0.5"},packageManager:"yarn@4.3.1"};var Xk=pe(Zt(),1);import{resolve as x0e}from"node:path";import{resolve as gP}from"node:path";var xs={type:"string",description:"<directory> with LikeC4 sources (default is current directory)",desc:"<directory> with LikeC4 sources (default is current directory)",normalize:!0,default:".",coerce:gP},Cn={alias:"use-dot-bin",boolean:!0,type:"boolean",description:'use local binaries of graphviz ("dot")',desc:'use local binaries of graphviz ("dot")',default:!1},Wg={boolean:!0,type:"boolean",desc:'hash history, e.g. "/#/view" instead of "/view"'},Gg={alias:"o",type:"string",desc:"<directory> output directory",normalize:!0,coerce:gP},qu={alias:"w",type:"string",desc:'prefix for webcomponents, e.g "c4" generates <c4-view ../>',default:"likec4"},Hg={alias:["base-url"],type:"string",desc:'base url the app is being served from, e.g. "/" or "/pages/"'};var Le=se.withTag("lsp");function ct(t){Le.error(t)}function Rr(t){if(t instanceof Error){Le.warn(t.stack??t.message);return}Le.warn(t)}function $C(t){Le.level=_t[t]}function yP(t){let e={log:({level:r,...n},i)=>{if(r!==_t.error&&r!==_t.fatal)return;let o=n.tag||"",s=n.args.map(u=>u&&typeof u.stack=="string"?u.message+`
72
+ `,e.level<2?r.options.stderr||process.stderr:r.options.stdout||process.stdout)}};function CC(t={}){let e=_t.info;return process.env.CONSOLA_LEVEL&&(e=Number.parseInt(process.env.CONSOLA_LEVEL)??e),cP({level:e,defaults:{level:e},stdout:process.stdout,stderr:process.stderr,reporters:t.reporters||[new Bg],...t})}var TEe=CC();var se=CC({level:_t.debug,fancy:!0,formatOptions:{colors:!0,date:!1}});var Ig=pe(Zt(),1);import{argv as hEe,exit as gEe,stdout as yEe}from"node:process";var SW={done:!0,hasNext:!1},ni={done:!1,hasNext:!1},qg=()=>SW,fP=t=>({hasNext:!0,next:t,done:!1});function Ot(t,...e){let r=t,n=e.map(o=>"lazy"in o?RW(o):void 0),i=0;for(;i<e.length;){if(n[i]===void 0||!TW(r)){let u=e[i];r=u(r),i+=1;continue}let o=[];for(let u=i;u<e.length;u++){let c=n[u];if(c===void 0||(o.push(c),c.isSingle))break}let s=[];for(let u of r)if(pP(u,s,o))break;let{isSingle:a}=o.at(-1);r=a?s[0]:s,i+=o.length}return r}function pP(t,e,r){if(r.length===0)return e.push(t),!1;let n=t,i=ni,o=!1;for(let[s,a]of r.entries()){let{index:u,items:c}=a;if(c.push(n),i=a(n,u,c),a.index+=1,i.hasNext){if(i.hasMany??!1){for(let l of i.next)if(pP(l,e,r.slice(s+1)))return!0;return o}n=i.next}if(!i.hasNext)break;i.done&&(o=!0)}return i.hasNext&&e.push(n),o}function RW(t){let{lazy:e,lazyArgs:r}=t,n=e(...r);return Object.assign(n,{isSingle:e.single??!1,index:0,items:[]})}function TW(t){return typeof t=="string"||typeof t=="object"&&t!==null&&Symbol.iterator in t}function Nu(t,e){let r=e.length-t.length;if(r===1){let[n,...i]=e;return Ot(n,{lazy:t,lazyArgs:i})}if(r===0){let n={lazy:t,lazyArgs:e};return Object.assign(i=>Ot(i,n),n)}throw new Error("Wrong number of arguments")}function mP(t,e,r){let n=i=>t(i,...e);return r===void 0?n:Object.assign(n,{lazy:r,lazyArgs:e})}function de(t,e,r){let n=t.length-e.length;if(n===0)return t(...e);if(n===1)return mP(t,e,r);throw new Error("Wrong number of arguments")}function $u(...t){return de(Object.values,t)}function DC(...t){return de(kW,t,PW)}var kW=(t,e)=>t.length<e.length?t.map((r,n)=>[r,e[n]]):e.map((r,n)=>[t[n],r]),PW=t=>(e,r)=>({hasNext:!0,next:[e,t[r]],done:r>=t.length-1});function It(...t){return de(_W,t)}var _W=(t,e)=>t.length>=e;function ii(...t){return Nu(IW,t)}function IW(){let t=new Set;return e=>t.has(e)?ni:(t.add(e),{done:!1,hasNext:!0,next:e})}function bC(...t){return de(FW,t,LW)}var FW=(t,e)=>e<0?[]:t.slice(0,e);function LW(t){if(t<=0)return qg;let e=t;return r=>(e-=1,{done:e<=0,hasNext:!0,next:r})}function ya(...t){return de(NW,t)}function NW(t,e){let r=[...t];return r.sort(e),r}function SC(...t){return de(hP,t)}var hP=(t,e)=>t[e];function RC(...t){return de($W,t)}var $W=(t,e,r)=>t.reduce(e,r);function TC(...t){return de(OW,t)}function OW(t){return[...t].reverse()}function Ug(...t){return de(BW,t)}function BW(t,e){let r={};for(let n of e)n in t&&(r[n]=t[n]);return r}function zf(...t){return de(MW,t)}function MW(t,e){let r={...t};for(let[n,i]of Object.entries(r))e(i,n,t)&&delete r[n];return r}function er(...t){return de(qW,t,UW)}var qW=(t,e)=>t.map(e),UW=t=>(e,r,n)=>({done:!1,hasNext:!0,next:t(e,r,n)});function zi(...t){return de(jW,t)}function jW(t,e){let r={};for(let[n,i]of t.entries()){let[o,s]=e(i,n,t);r[o]=s}return r}function Ou(...t){return de(VW,t)}function VW(t,e){let r={};for(let[n,i]of Object.entries(t)){let o=e(i,n,t);r[n]=o}return r}function Kf(t){return typeof t=="string"}function K(t){return!!t}function Es(...t){return de(WW,t)}var WW=t=>t.at(-1);function Ea(t){return t!=null}function kC(t){return e=>!t(e)}function ve(t){return t==null}function Yf(t){return typeof t=="number"&&!Number.isNaN(t)}function Mn(t){return t!==void 0}function oi(t){return t===void 0?!0:typeof t=="string"?t.length===0:typeof t!="object"?!1:Array.isArray(t)?t.length===0:Object.keys(t).length===0}function PC(...t){return Nu(GW,t)}function GW(t){if(t.length===0)return qg;let e=new Map;for(let r of t)e.set(r,(e.get(r)??0)+1);return r=>{let n=e.get(r);return n===void 0||n===0?ni:(n===1?e.delete(r):e.set(r,n-1),{hasNext:!0,next:r,done:e.size===0})}}function _C(...t){return de(HW,t,zW)}function HW(t,e){return t.forEach(e),t}var zW=t=>(e,r,n)=>(t(e,r,n),{done:!1,hasNext:!0,next:e});var jg=t=>Object.assign(t,{single:!0});function Xf(...t){return de(KW,t,jg(YW))}var KW=(t,e)=>t.find(e),YW=t=>(e,r,n)=>t(e,r,n)?{done:!0,hasNext:!0,next:e}:ni;function IC(...t){return de(XW,t)}var XW=(t,e)=>{for(let r=t.length-1;r>=0;r--){let n=t[r];if(e(n,r,t))return n}};function vn(...t){return de(JW,t,jg(QW))}var JW=([t])=>t,QW=()=>ZW,ZW=t=>({hasNext:!0,next:t,done:!0});function jr(...t){return de(eG,t,tG)}var eG=(t,e)=>t.flatMap(e),tG=t=>(e,r,n)=>{let i=t(e,r,n);return Array.isArray(i)?{done:!1,hasNext:!0,hasMany:!0,next:i}:{done:!1,hasNext:!0,next:i}};function Bu(...t){return de(Object.entries,t)}function ut(...t){return de(rG,t,nG)}var rG=(t,e)=>t.filter(e),nG=t=>(e,r,n)=>t(e,r,n)?{done:!1,hasNext:!0,next:e}:ni;function FC(t,{waitMs:e,timing:r="trailing",maxWaitMs:n}){if(n!==void 0&&e!==void 0&&n<e)throw new Error(`debounce: maxWaitMs (${n}) cannot be less than waitMs (${e})`);let i,o,s,a,u=()=>{if(o!==void 0){let f=o;o=void 0,clearTimeout(f)}if(s===void 0)throw new Error("REMEDA[debounce]: latestCallArgs was unexpectedly undefined.");let d=s;s=void 0,a=t(...d)},c=()=>{if(i===void 0)return;let d=i;i=void 0,clearTimeout(d),s!==void 0&&u()},l=d=>{s=d,n!==void 0&&o===void 0&&(o=setTimeout(u,n))};return{call:(...d)=>{if(i===void 0)r==="trailing"?l(d):a=t(...d);else{r!=="leading"&&l(d);let f=i;i=void 0,clearTimeout(f)}return i=setTimeout(c,e??n??0),a},cancel:()=>{if(i!==void 0){let d=i;i=void 0,clearTimeout(d)}if(o!==void 0){let d=o;o=void 0,clearTimeout(d)}s=void 0},flush:()=>(c(),a),get isPending(){return i!==void 0},get cachedValue(){return a}}}function LC(...t){return Nu(iG,t)}function iG(t){if(t.length===0)return fP;let e=new Map;for(let r of t)e.set(r,(e.get(r)??0)+1);return r=>{let n=e.get(r);return n===void 0||n===0?{done:!1,hasNext:!0,next:r}:(e.set(r,n-1),ni)}}function Mu(...t){return de(oG,t)}var oG=(t,e)=>e.every(r=>r(t));function Jf(...t){return de(sG,t)}var sG=(t,e)=>e.some(r=>r(t));function NC(...t){return de(aG,t)}function aG(t,e){let r=[];for(let n=0;n<t.length;n+=e)r.push(t.slice(n,n+e));return r}function xa(...t){return de(uG,t)}var uG=(t,{min:e,max:r})=>e!==void 0&&t<e?e:r!==void 0&&t>r?r:t;import EEe from"yargs";import{hideBin as xEe}from"yargs/helpers";var Vg={name:"likec4",version:"1.7.4",license:"MIT",homepage:"https://likec4.dev",author:"Denis Davydkov <denis@davydkov.com>",sponsor:{url:"https://github.com/sponsors/davydkov"},repository:{type:"git",url:"https://github.com/likec4/likec4.git",directory:"packages/likec4"},engines:{node:"^18.0.0 || >=20.0.0"},bugs:"https://github.com/likec4/likec4/issues",type:"module",bin:"./bin/likec4.mjs",exports:{".":{types:"./app/react/components/index.ts",default:"./dist/__app__/react/components.mjs"},"./react":{types:"./app/react/components/index.ts",default:"./dist/__app__/react/components.mjs"},"./icons/all":{types:"./icons/all.d.ts",default:"./icons/all.js"},"./icons/*":{types:"./icons/icon.d.ts",default:"./icons/*"}},publishConfig:{registry:"https://registry.npmjs.org",access:"public",exports:{".":{types:"./react/index.d.ts",default:"./react/index.mjs"},"./react":{types:"./react/index.d.ts",default:"./react/index.mjs"},"./icons/all":{types:"./icons/all.d.ts",default:"./icons/all.js"},"./icons/*":{types:"./icons/icon.d.ts",default:"./icons/*"}}},scripts:{"turbo-build":"run -T turbo run build --filter='likec4' --log-prefix=none --log-order=grouped","typecheck:app":"tsc --noEmit -p ./app/tsconfig.json","typecheck:cli":"tsc --noEmit -p ./tsconfig.json",typecheck:"run 'typecheck:cli' && run 'typecheck:app'",prebuild:"tsx scripts/prebuild.ts","build:cli":"tsx scripts/build-cli.ts","build:app":"tsx scripts/bundle-app.ts","build:react":"tsx scripts/bundle-react.ts","build:webcomponent":"tsx scripts/bundle-webcomponent.ts",build:"run prebuild && run-p --print-label 'build:*'",generate:"tsx scripts/generate.ts",prepack:"tsx scripts/prepack.ts",postpack:"tsx scripts/postpack.ts",lint:"run -T eslint src/ --fix",clean:"run -T rimraf dist app/dist dev/.export dev/dist node_modules/.vite",dev:"tsx watch src/cli/index.ts serve dev","dev:bigbank":"tsx watch src/cli/index.ts serve ../../apps/docs/src/components/bigbank","dev:dynamic-view":"tsx watch src/cli/index.ts serve ../../apps/docs/src/components/dynamic-view","dev:index-page":"tsx watch src/cli/index.ts serve ../../apps/docs/src/components/index-page","dev:template":"tsx watch src/cli/index.ts serve ../create-likec4/template","dev:example-cloud":"tsx watch src/cli/index.ts serve ../../examples/cloud-system","dev:failed":"tsx watch src/cli/index.ts serve ../../examples/failed","dev:example-dev":"tsx watch src/cli/index.ts serve ../../examples/diagrams-dev/likec4",cli:"tsx src/cli/index.ts","cli:serve":"tsx watch src/cli/index.ts serve dev","cli:build":"tsx src/cli/index.ts build -o dev/dist dev","cli:preview":"tsx src/cli/index.ts preview -o dev/dist dev","cli:export":"tsx src/cli/index.ts export png -o dev/export dev","cli:export:json":"tsx src/cli/index.ts export json -o dev/export/likec4.json dev"},dependencies:{"@hpcc-js/wasm":"2.18.2","@nanostores/react":"0.7.2","@vitejs/plugin-react":"4.3.1",nanostores:"0.10.3",playwright:"1.46.0",react:"18.3.1","react-dom":"18.3.1",vite:"5.3.4",yargs:"17.7.2"},devDependencies:{"@fontsource/ibm-plex-sans":"^5.0.20","@likec4/core":"workspace:*","@likec4/diagram":"workspace:*","@likec4/generators":"workspace:*","@likec4/icons":"workspace:*","@likec4/language-server":"workspace:*","@likec4/layouts":"workspace:*","@likec4/log":"workspace:*","@likec4/tsconfig":"workspace:*","@mantine/core":"7.11.2","@mantine/hooks":"7.11.2","@mantine/vanilla-extract":"7.11.2","@react-hookz/web":"^24.0.4","@tabler/icons-react":"^3.11.0","@tanstack/react-router":"1.45.13","@tanstack/router-cli":"1.45.13","@tanstack/router-vite-plugin":"1.45.13","@types/node":"^20.14.14","@types/prop-types":"^15.7.11","@types/react":"18.3.3","@types/react-dom":"18.3.0","@types/string-hash":"^1.1.3","@types/yargs":"^17.0.33","@vanilla-extract/css":"^1.15.3","@vanilla-extract/dynamic":"^2.1.1","@vanilla-extract/vite-plugin":"^4.0.13",autoprefixer:"^10.4.20","ci-info":"^3.9.0",classnames:"^2.3.2",clsx:"^2.1.1",esbuild:"^0.21.5","esbuild-node-externals":"^1.14.0","esm-env":"^1.0.0",execa:"^9.3.0","fast-equals":"^5.0.1","framer-motion":"^11.3.24","get-port":"^7.1.0",glob:"^11.0.0","html-to-image":"^1.11.11",json5:"^2.2.3",langium:"3.1.3",mkdirp:"^3.0.1","npm-run-all2":"^6.2.2","p-limit":"^6.1.0","package-up":"^5.0.0",picocolors:"^1.0.1",postcss:"^8.4.41","postcss-preset-mantine":"^1.17.0","pretty-ms":"^9.0.0","react-error-boundary":"^4.0.13","react-resizable-panels":"^2.0.23","react-shadow":"^20.5.0",remeda:"^2.3.0","string-hash":"^1.1.3","strip-indent":"^4.0.0",terser:"^5.31.5",tsx:"~4.9.3","type-fest":"^4.21.0",typescript:"^5.5.4",ufo:"^1.5.4","vite-plugin-css-injected-by-js":"^3.5.1","vite-plugin-shadow-style":"^1.1.1",vitest:"~2.0.5"},packageManager:"yarn@4.3.1"};var Xk=pe(Zt(),1);import{resolve as x0e}from"node:path";import{resolve as gP}from"node:path";var xs={type:"string",description:"<directory> with LikeC4 sources (default is current directory)",desc:"<directory> with LikeC4 sources (default is current directory)",normalize:!0,default:".",coerce:gP},Cn={alias:"use-dot-bin",boolean:!0,type:"boolean",description:'use local binaries of graphviz ("dot")',desc:'use local binaries of graphviz ("dot")',default:!1},Wg={boolean:!0,type:"boolean",desc:'hash history, e.g. "/#/view" instead of "/view"'},Gg={alias:"o",type:"string",desc:"<directory> output directory",normalize:!0,coerce:gP},qu={alias:"w",type:"string",desc:'prefix for webcomponents, e.g "c4" generates <c4-view ../>',default:"likec4"},Hg={alias:["base-url"],type:"string",desc:'base url the app is being served from, e.g. "/" or "/pages/"'};var Le=se.withTag("lsp");function ct(t){Le.error(t)}function Rr(t){if(t instanceof Error){Le.warn(t.stack??t.message);return}Le.warn(t)}function $C(t){Le.level=_t[t]}function yP(t){let e={log:({level:r,...n},i)=>{if(r!==_t.error&&r!==_t.fatal)return;let o=n.tag||"",s=n.args.map(u=>u&&typeof u.stack=="string"?u.message+`
73
73
  `+u.stack:typeof u=="string"?u:String(u));o&&s.unshift(`[${o}]`);let a=s.join(" ");t.telemetry.logEvent({eventName:"error",error:a})}};se.addReporter(e),Le.setReporters(se.options.reporters)}var Ee={};Lo(Ee,{AbstractAstReflection:()=>wa,AbstractCstNode:()=>Vp,AbstractLangiumParser:()=>Wp,AbstractParserErrorMessageProvider:()=>S0,AbstractThreadedAsyncParser:()=>M0,AstUtils:()=>rt,BiMap:()=>Ya,Cancellation:()=>J,CompositeCstNodeImpl:()=>Ha,ContextCache:()=>Ja,CstNodeBuilder:()=>jp,CstUtils:()=>Yi,DONE_RESULT:()=>tr,DatatypeSymbol:()=>b0,DefaultAstNodeDescriptionProvider:()=>am,DefaultAstNodeLocator:()=>cm,DefaultAsyncParser:()=>Em,DefaultCommentProvider:()=>ym,DefaultConfigurationProvider:()=>lm,DefaultDocumentBuilder:()=>dm,DefaultDocumentValidator:()=>sm,DefaultHydrator:()=>wm,DefaultIndexManager:()=>fm,DefaultJsonSerializer:()=>nm,DefaultLangiumDocumentFactory:()=>Xp,DefaultLangiumDocuments:()=>Jp,DefaultLexer:()=>pm,DefaultLinker:()=>Qp,DefaultNameProvider:()=>Zp,DefaultReferenceDescriptionProvider:()=>um,DefaultReferences:()=>em,DefaultScopeComputation:()=>Xa,DefaultScopeProvider:()=>Qa,DefaultServiceRegistry:()=>im,DefaultTokenBuilder:()=>zp,DefaultValueConverter:()=>Kp,DefaultWorkspaceLock:()=>xm,DefaultWorkspaceManager:()=>Za,Deferred:()=>mn,Disposable:()=>ci,DisposableCache:()=>Pl,DocumentCache:()=>L0,DocumentState:()=>ke,DocumentValidator:()=>Yo,EMPTY_SCOPE:()=>BD,EMPTY_STREAM:()=>$o,EmptyFileSystem:()=>Dm,EmptyFileSystemProvider:()=>j0,ErrorWithLocation:()=>Da,GrammarAST:()=>Ra,GrammarUtils:()=>Bt,JSDocDocumentationProvider:()=>gm,LangiumCompletionParser:()=>Hp,LangiumParser:()=>Gp,LangiumParserErrorMessageProvider:()=>bl,LeafCstNodeImpl:()=>Ga,MapScope:()=>tm,Module:()=>Il,MultiMap:()=>fr,OperationCancelled:()=>fo,ParserWorker:()=>q0,Reduction:()=>Uu,RegExpUtils:()=>iy,RootCstNodeImpl:()=>Dl,SimpleCache:()=>rm,StreamImpl:()=>Tr,StreamScope:()=>po,TextDocument:()=>js,TreeStreamImpl:()=>qn,URI:()=>nt,UriUtils:()=>sr,ValidationCategory:()=>_l,ValidationRegistry:()=>om,ValueConverter:()=>lo,WorkspaceCache:()=>Vs,assertUnreachable:()=>ws,createCompletionParser:()=>RD,createDefaultCoreModule:()=>vm,createDefaultSharedCoreModule:()=>Cm,createGrammarConfig:()=>CA,createLangiumParser:()=>TD,delayNextTick:()=>$D,diagnosticData:()=>N0,eagerLoad:()=>Am,getDiagnosticRange:()=>l$,inject:()=>eu,interruptAndCheck:()=>et,isAstNode:()=>lt,isAstNodeDescription:()=>OC,isAstNodeWithComment:()=>MD,isCompositeCstNode:()=>An,isIMultiModeLexerDefinition:()=>UD,isJSDoc:()=>GD,isLeafCstNode:()=>No,isLinkingError:()=>va,isNamed:()=>F0,isOperationCancelled:()=>ki,isReference:()=>Vr,isRootCstNode:()=>Qf,isTokenTypeArray:()=>d$,isTokenTypeDictionary:()=>qD,loadGrammarFromJson:()=>V0,parseJSDoc:()=>WD,prepareLangiumParser:()=>ZN,setInterruptionPeriod:()=>o$,startCancelableOperation:()=>i$,stream:()=>we,toDiagnosticSeverity:()=>$0});var Yi={};Lo(Yi,{DefaultNameRegexp:()=>Kg,RangeComparison:()=>Ki,compareRange:()=>xP,findCommentNode:()=>UC,findDeclarationNodeAtOffset:()=>kr,findLeafNodeAtOffset:()=>Yg,findLeafNodeBeforeOffset:()=>ep,flattenCst:()=>MC,getInteriorNodes:()=>AP,getNextNode:()=>CP,getPreviousNode:()=>vP,getStartlineNode:()=>dG,inRange:()=>Zf,isChildNode:()=>qC,isCommentNode:()=>BC,streamCst:()=>Ca,toDocumentSegment:()=>Aa,tokenToRange:()=>ju});function lt(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function Vr(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"}function OC(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function va(t){return typeof t=="object"&&t!==null&&lt(t.container)&&Vr(t.reference)&&typeof t.message=="string"}var wa=class{constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,r){return lt(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let o=this.computeIsSubtype(e,r);return n[r]=o,o}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let o of n)this.isSubtype(o,e)&&i.push(o);return this.allSubtypes[e]=i,i}}};function An(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function No(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function Qf(t){return An(t)&&typeof t.fullText=="string"}var Tr=class t{constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new t(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return tr})}join(e=","){let r=this.iterator(),n="",i,o=!1;do i=r.next(),i.done||(o&&(n+=e),n+=lG(i.value)),o=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,o=n.next();for(;!o.done;){if(i>=r&&o.value===e)return i;o=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new t(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?tr:{done:!1,value:e(i)}})}filter(e){return new t(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return tr})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,o=n.next();for(;!o.done;)i===void 0?i=o.value:i=e(i,o.value),o=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let o=this.recursiveReduce(e,r,n);return o===void 0?i.value:r(o,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new t(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let o=r.iterator.next();if(o.done)r.iterator=void 0;else return o}let{done:n,value:i}=this.nextFn(r.this);if(!n){let o=e(i);if(zg(o))r.iterator=o[Symbol.iterator]();else return{done:!1,value:o}}}while(r.iterator);return tr})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new t(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}let{done:i,value:o}=r.nextFn(n.this);if(!i)if(zg(o))n.iterator=o[Symbol.iterator]();else return{done:!1,value:o}}while(n.iterator);return tr})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new t(()=>{let r=this.startFn();for(let n=0;n<e;n++)if(this.nextFn(r).done)return r;return r},this.nextFn)}limit(e){return new t(()=>({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?tr:this.nextFn(r.state)))}distinct(e){return new t(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return tr})}exclude(e,r){let n=new Set;for(let i of e){let o=r?r(i):i;n.add(o)}return this.filter(i=>{let o=r?r(i):i;return!n.has(o)})}};function lG(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function zg(t){return!!t&&typeof t[Symbol.iterator]=="function"}var $o=new Tr(()=>{},()=>tr),tr=Object.freeze({done:!0,value:void 0});function we(...t){if(t.length===1){let e=t[0];if(e instanceof Tr)return e;if(zg(e))return new Tr(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new Tr(()=>({index:0}),r=>r.index<e.length?{done:!1,value:e[r.index++]}:tr)}return t.length>1?new Tr(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<t.length){let r=t[e.collIndex++];zg(r)?e.iterator=r[Symbol.iterator]():r&&typeof r.length=="number"&&(e.array=r)}}while(e.iterator||e.array||e.collIndex<t.length);return tr}):$o}var qn=class extends Tr{constructor(e,r,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return tr})}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}},Uu;(function(t){function e(o){return o.reduce((s,a)=>s+a,0)}t.sum=e;function r(o){return o.reduce((s,a)=>s*a,0)}t.product=r;function n(o){return o.reduce((s,a)=>Math.min(s,a))}t.min=n;function i(o){return o.reduce((s,a)=>Math.max(s,a))}t.max=i})(Uu||(Uu={}));function Ca(t){return new qn(t,e=>An(e)?e.content:[],{includeRoot:!0})}function MC(t){return Ca(t).filter(No)}function qC(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function ju(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Aa(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}var Ki;(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(Ki||(Ki={}));function xP(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return Ki.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Ki.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return r&&n?Ki.Inside:r?Ki.OverlapBack:n?Ki.OverlapFront:Ki.Outside}function Zf(t,e){return xP(t,e)>Ki.After}var Kg=/^[\w\p{L}]$/u;function kr(t,e,r=Kg){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return Yg(t,e)}}function UC(t,e){if(t){let r=vP(t,!0);if(r&&BC(r,e))return r;if(Qf(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let o=t.content[i];if(BC(o,e))return o}}}}function BC(t,e){return No(t)&&e.includes(t.tokenType.name)}function Yg(t,e){if(No(t))return t;if(An(t)){let r=wP(t,e,!1);if(r)return Yg(r,e)}}function ep(t,e){if(No(t))return t;if(An(t)){let r=wP(t,e,!0);if(r)return ep(r,e)}}function wP(t,e,r){let n=0,i=t.content.length-1,o;for(;n<=i;){let s=Math.floor((n+i)/2),a=t.content[s];if(a.offset<=e&&a.end>e)return a;a.end<=e?(o=r?a:void 0,n=s+1):i=s-1}return o}function vP(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}function CP(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;n<i;){n++;let o=r.content[n];if(e||!o.hidden)return o}t=r}}function dG(t){if(t.range.start.character===0)return t;let e=t.range.start.line,r=t,n;for(;t.container;){let i=t.container,o=n??i.content.indexOf(t);if(o===0?(t=i,n=void 0):(n=o-1,t=i.content[n]),t.range.start.line!==e)break;r=t}return r}function AP(t,e){let r=fG(t,e);return r?r.parent.content.slice(r.a+1,r.b):[]}function fG(t,e){let r=EP(t),n=EP(e),i;for(let o=0;o<r.length&&o<n.length;o++){let s=r[o],a=n[o];if(s.parent===a.parent)i={parent:s.parent,a:s.index,b:a.index};else break}return i}function EP(t){let e=[];for(;t.container;){let r=t.container,n=r.content.indexOf(t);e.push({parent:r,index:n}),t=r}return e.reverse()}var Bt={};Lo(Bt,{findAssignment:()=>EA,findNameAssignment:()=>sy,findNodeForKeyword:()=>Fc,findNodeForProperty:()=>Cs,findNodesForKeyword:()=>oy,findNodesForKeywordInternal:()=>yA,findNodesForProperty:()=>vs,getActionAtElement:()=>FP,getActionType:()=>NP,getAllReachableRules:()=>pp,getCrossReferenceTerminal:()=>mp,getEntryRule:()=>fp,getExplicitRuleType:()=>Ji,getHiddenRules:()=>PP,getRuleType:()=>wA,getRuleTypeName:()=>NG,getTypeName:()=>Na,isArrayCardinality:()=>xA,isArrayOperator:()=>FG,isCommentTerminal:()=>hA,isDataType:()=>LG,isDataTypeRule:()=>hp,isOptionalCardinality:()=>La,terminalRegex:()=>As});var Da=class extends Error{constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};function ws(t){throw new Error("Error! The input value was not handled.")}var Ra={};Lo(Ra,{AbstractElement:()=>Gu,AbstractRule:()=>Vu,AbstractType:()=>Wu,Action:()=>lc,Alternatives:()=>dc,ArrayLiteral:()=>Hu,ArrayType:()=>zu,Assignment:()=>fc,BooleanLiteral:()=>Ku,CharacterRange:()=>pc,Condition:()=>tp,Conjunction:()=>Yu,CrossReference:()=>mc,Disjunction:()=>Xu,EndOfFile:()=>hc,Grammar:()=>Ju,GrammarImport:()=>np,Group:()=>gc,InferredType:()=>Qu,Interface:()=>Zu,Keyword:()=>yc,LangiumGrammarAstReflection:()=>Rc,LangiumGrammarTerminals:()=>pG,NamedArgument:()=>ip,NegatedToken:()=>Ec,Negation:()=>ec,NumberLiteral:()=>tc,Parameter:()=>rc,ParameterReference:()=>nc,ParserRule:()=>ic,ReferenceType:()=>oc,RegexToken:()=>xc,ReturnType:()=>op,RuleCall:()=>wc,SimpleType:()=>sc,StringLiteral:()=>ac,TerminalAlternatives:()=>vc,TerminalGroup:()=>Cc,TerminalRule:()=>ba,TerminalRuleCall:()=>Ac,Type:()=>uc,TypeAttribute:()=>sp,TypeDefinition:()=>Xg,UnionType:()=>cc,UnorderedGroup:()=>Dc,UntilToken:()=>bc,ValueLiteral:()=>rp,Wildcard:()=>Sc,isAbstractElement:()=>Sa,isAbstractRule:()=>mG,isAbstractType:()=>hG,isAction:()=>bi,isAlternatives:()=>Tc,isArrayLiteral:()=>wG,isArrayType:()=>jC,isAssignment:()=>Jr,isBooleanLiteral:()=>VC,isCharacterRange:()=>JC,isCondition:()=>gG,isConjunction:()=>WC,isCrossReference:()=>Si,isDisjunction:()=>GC,isEndOfFile:()=>QC,isFeatureName:()=>yG,isGrammar:()=>vG,isGrammarImport:()=>CG,isGroup:()=>si,isInferredType:()=>Jg,isInterface:()=>Qg,isKeyword:()=>Wr,isNamedArgument:()=>AG,isNegatedToken:()=>ZC,isNegation:()=>HC,isNumberLiteral:()=>DG,isParameter:()=>bG,isParameterReference:()=>zC,isParserRule:()=>Gt,isPrimitiveType:()=>DP,isReferenceType:()=>KC,isRegexToken:()=>eA,isReturnType:()=>YC,isRuleCall:()=>Dn,isSimpleType:()=>Zg,isStringLiteral:()=>SG,isTerminalAlternatives:()=>tA,isTerminalGroup:()=>rA,isTerminalRule:()=>an,isTerminalRuleCall:()=>ey,isType:()=>ap,isTypeAttribute:()=>RG,isTypeDefinition:()=>EG,isUnionType:()=>XC,isUnorderedGroup:()=>kc,isUntilToken:()=>nA,isValueLiteral:()=>xG,isWildcard:()=>iA,reflection:()=>ye});var pG={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},Vu="AbstractRule";function mG(t){return ye.isInstance(t,Vu)}var Wu="AbstractType";function hG(t){return ye.isInstance(t,Wu)}var tp="Condition";function gG(t){return ye.isInstance(t,tp)}function yG(t){return DP(t)||t==="current"||t==="entry"||t==="extends"||t==="false"||t==="fragment"||t==="grammar"||t==="hidden"||t==="import"||t==="interface"||t==="returns"||t==="terminal"||t==="true"||t==="type"||t==="infer"||t==="infers"||t==="with"||typeof t=="string"&&/\^?[_a-zA-Z][\w_]*/.test(t)}function DP(t){return t==="string"||t==="number"||t==="boolean"||t==="Date"||t==="bigint"}var Xg="TypeDefinition";function EG(t){return ye.isInstance(t,Xg)}var rp="ValueLiteral";function xG(t){return ye.isInstance(t,rp)}var Gu="AbstractElement";function Sa(t){return ye.isInstance(t,Gu)}var Hu="ArrayLiteral";function wG(t){return ye.isInstance(t,Hu)}var zu="ArrayType";function jC(t){return ye.isInstance(t,zu)}var Ku="BooleanLiteral";function VC(t){return ye.isInstance(t,Ku)}var Yu="Conjunction";function WC(t){return ye.isInstance(t,Yu)}var Xu="Disjunction";function GC(t){return ye.isInstance(t,Xu)}var Ju="Grammar";function vG(t){return ye.isInstance(t,Ju)}var np="GrammarImport";function CG(t){return ye.isInstance(t,np)}var Qu="InferredType";function Jg(t){return ye.isInstance(t,Qu)}var Zu="Interface";function Qg(t){return ye.isInstance(t,Zu)}var ip="NamedArgument";function AG(t){return ye.isInstance(t,ip)}var ec="Negation";function HC(t){return ye.isInstance(t,ec)}var tc="NumberLiteral";function DG(t){return ye.isInstance(t,tc)}var rc="Parameter";function bG(t){return ye.isInstance(t,rc)}var nc="ParameterReference";function zC(t){return ye.isInstance(t,nc)}var ic="ParserRule";function Gt(t){return ye.isInstance(t,ic)}var oc="ReferenceType";function KC(t){return ye.isInstance(t,oc)}var op="ReturnType";function YC(t){return ye.isInstance(t,op)}var sc="SimpleType";function Zg(t){return ye.isInstance(t,sc)}var ac="StringLiteral";function SG(t){return ye.isInstance(t,ac)}var ba="TerminalRule";function an(t){return ye.isInstance(t,ba)}var uc="Type";function ap(t){return ye.isInstance(t,uc)}var sp="TypeAttribute";function RG(t){return ye.isInstance(t,sp)}var cc="UnionType";function XC(t){return ye.isInstance(t,cc)}var lc="Action";function bi(t){return ye.isInstance(t,lc)}var dc="Alternatives";function Tc(t){return ye.isInstance(t,dc)}var fc="Assignment";function Jr(t){return ye.isInstance(t,fc)}var pc="CharacterRange";function JC(t){return ye.isInstance(t,pc)}var mc="CrossReference";function Si(t){return ye.isInstance(t,mc)}var hc="EndOfFile";function QC(t){return ye.isInstance(t,hc)}var gc="Group";function si(t){return ye.isInstance(t,gc)}var yc="Keyword";function Wr(t){return ye.isInstance(t,yc)}var Ec="NegatedToken";function ZC(t){return ye.isInstance(t,Ec)}var xc="RegexToken";function eA(t){return ye.isInstance(t,xc)}var wc="RuleCall";function Dn(t){return ye.isInstance(t,wc)}var vc="TerminalAlternatives";function tA(t){return ye.isInstance(t,vc)}var Cc="TerminalGroup";function rA(t){return ye.isInstance(t,Cc)}var Ac="TerminalRuleCall";function ey(t){return ye.isInstance(t,Ac)}var Dc="UnorderedGroup";function kc(t){return ye.isInstance(t,Dc)}var bc="UntilToken";function nA(t){return ye.isInstance(t,bc)}var Sc="Wildcard";function iA(t){return ye.isInstance(t,Sc)}var Rc=class extends wa{getAllTypes(){return[Gu,Vu,Wu,lc,dc,Hu,zu,fc,Ku,pc,tp,Yu,mc,Xu,hc,Ju,np,gc,Qu,Zu,yc,ip,Ec,ec,tc,rc,nc,ic,oc,xc,op,wc,sc,ac,vc,Cc,ba,Ac,uc,sp,Xg,cc,Dc,bc,rp,Sc]}computeIsSubtype(e,r){switch(e){case lc:case dc:case fc:case pc:case mc:case hc:case gc:case yc:case Ec:case xc:case wc:case vc:case Cc:case Ac:case Dc:case bc:case Sc:return this.isSubtype(Gu,r);case Hu:case tc:case ac:return this.isSubtype(rp,r);case zu:case oc:case sc:case cc:return this.isSubtype(Xg,r);case Ku:return this.isSubtype(tp,r)||this.isSubtype(rp,r);case Yu:case Xu:case ec:case nc:return this.isSubtype(tp,r);case Qu:case Zu:case uc:return this.isSubtype(Wu,r);case ic:return this.isSubtype(Vu,r)||this.isSubtype(Wu,r);case ba:return this.isSubtype(Vu,r);default:return!1}}getReferenceType(e){let r=`${e.container.$type}:${e.property}`;switch(r){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return Wu;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return Vu;case"Grammar:usedGrammars":return Ju;case"NamedArgument:parameter":case"ParameterReference:parameter":return rc;case"TerminalRuleCall:rule":return ba;default:throw new Error(`${r} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case Gu:return{name:Gu,properties:[{name:"cardinality"},{name:"lookahead"}]};case Hu:return{name:Hu,properties:[{name:"elements",defaultValue:[]}]};case zu:return{name:zu,properties:[{name:"elementType"}]};case Ku:return{name:Ku,properties:[{name:"true",defaultValue:!1}]};case Yu:return{name:Yu,properties:[{name:"left"},{name:"right"}]};case Xu:return{name:Xu,properties:[{name:"left"},{name:"right"}]};case Ju:return{name:Ju,properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case np:return{name:np,properties:[{name:"path"}]};case Qu:return{name:Qu,properties:[{name:"name"}]};case Zu:return{name:Zu,properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case ip:return{name:ip,properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case ec:return{name:ec,properties:[{name:"value"}]};case tc:return{name:tc,properties:[{name:"value"}]};case rc:return{name:rc,properties:[{name:"name"}]};case nc:return{name:nc,properties:[{name:"parameter"}]};case ic:return{name:ic,properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case oc:return{name:oc,properties:[{name:"referenceType"}]};case op:return{name:op,properties:[{name:"name"}]};case sc:return{name:sc,properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case ac:return{name:ac,properties:[{name:"value"}]};case ba:return{name:ba,properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case uc:return{name:uc,properties:[{name:"name"},{name:"type"}]};case sp:return{name:sp,properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case cc:return{name:cc,properties:[{name:"types",defaultValue:[]}]};case lc:return{name:lc,properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case dc:return{name:dc,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case fc:return{name:fc,properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case pc:return{name:pc,properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case mc:return{name:mc,properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case hc:return{name:hc,properties:[{name:"cardinality"},{name:"lookahead"}]};case gc:return{name:gc,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case yc:return{name:yc,properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case Ec:return{name:Ec,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case xc:return{name:xc,properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case wc:return{name:wc,properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case vc:return{name:vc,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Cc:return{name:Cc,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Ac:return{name:Ac,properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case Dc:return{name:Dc,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case bc:return{name:bc,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case Sc:return{name:Sc,properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}},ye=new Rc;var rt={};Lo(rt,{assignMandatoryProperties:()=>up,copyAstNode:()=>sA,findLocalReferences:()=>kG,findRootNode:()=>bP,getContainerOfType:()=>Un,getDocument:()=>dt,hasContainerOfType:()=>TG,linkContentToContainer:()=>ty,streamAllContents:()=>jn,streamAst:()=>un,streamContents:()=>Ta,streamReferences:()=>Pc});function ty(t){for(let[e,r]of Object.entries(t))e.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{lt(n)&&(n.$container=t,n.$containerProperty=e,n.$containerIndex=i)}):lt(r)&&(r.$container=t,r.$containerProperty=e))}function Un(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function TG(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function dt(t){let r=bP(t).$document;if(!r)throw new Error("AST node has no document.");return r}function bP(t){for(;t.$container;)t=t.$container;return t}function Ta(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new Tr(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndex<n.keys.length;){let i=n.keys[n.keyIndex];if(!i.startsWith("$")){let o=t[i];if(lt(o)){if(n.keyIndex++,oA(o,r))return{done:!1,value:o}}else if(Array.isArray(o)){for(;n.arrayIndex<o.length;){let s=n.arrayIndex++,a=o[s];if(lt(a)&&oA(a,r))return{done:!1,value:a}}n.arrayIndex=0}}n.keyIndex++}return tr})}function jn(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new qn(t,r=>Ta(r,e))}function un(t,e){if(t){if(e?.range&&!oA(t,e.range))return new qn(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new qn(t,r=>Ta(r,e),{includeRoot:!0})}function oA(t,e){var r;if(!e)return!0;let n=(r=t.$cstNode)===null||r===void 0?void 0:r.range;return n?Zf(n,e):!1}function Pc(t){return new Tr(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){let r=e.keys[e.keyIndex];if(!r.startsWith("$")){let n=t[r];if(Vr(n))return e.keyIndex++,{done:!1,value:{reference:n,container:t,property:r}};if(Array.isArray(n)){for(;e.arrayIndex<n.length;){let i=e.arrayIndex++,o=n[i];if(Vr(o))return{done:!1,value:{reference:o,container:t,property:r,index:i}}}e.arrayIndex=0}}e.keyIndex++}return tr})}function kG(t,e=dt(t).parseResult.value){let r=[];return un(e).forEach(n=>{Pc(n).forEach(i=>{i.reference.ref===t&&r.push(i.reference)})}),we(r)}function up(t,e){let r=t.getTypeMetaData(e.$type),n=e;for(let i of r.properties)i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=SP(i.defaultValue))}function SP(t){return Array.isArray(t)?[...t.map(SP)]:t}function sA(t,e){let r={$type:t.$type};for(let[n,i]of Object.entries(t))if(!n.startsWith("$"))if(lt(i))r[n]=sA(i,e);else if(Vr(i))r[n]=e(r,n,i.$refNode,i.$refText);else if(Array.isArray(i)){let o=[];for(let s of i)lt(s)?o.push(sA(s,e)):Vr(s)?o.push(e(r,n,s.$refNode,s.$refText)):o.push(s);r[n]=o}else r[n]=i;return ty(r),r}var iy={};Lo(iy,{NEWLINE_REGEXP:()=>Ia,escapeRegExp:()=>Fa,getCaseInsensitivePattern:()=>dA,getTerminalParts:()=>IG,isMultilineComment:()=>lA,isWhitespace:()=>Ic,partialMatches:()=>fA,partialRegExp:()=>kP,whitespaceCharacters:()=>TP});function fe(t){return t.charCodeAt(0)}function ry(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function _c(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function ka(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function cp(){throw Error("Internal Error - Should never get here!")}function aA(t){return t.type==="Character"}var lp=[];for(let t=fe("0");t<=fe("9");t++)lp.push(t);var dp=[fe("_")].concat(lp);for(let t=fe("a");t<=fe("z");t++)dp.push(t);for(let t=fe("A");t<=fe("Z");t++)dp.push(t);var uA=[fe(" "),fe("\f"),fe(`
74
74
  `),fe("\r"),fe(" "),fe("\v"),fe(" "),fe("\xA0"),fe("\u1680"),fe("\u2000"),fe("\u2001"),fe("\u2002"),fe("\u2003"),fe("\u2004"),fe("\u2005"),fe("\u2006"),fe("\u2007"),fe("\u2008"),fe("\u2009"),fe("\u200A"),fe("\u2028"),fe("\u2029"),fe("\u202F"),fe("\u205F"),fe("\u3000"),fe("\uFEFF")];var PG=/[0-9a-fA-F]/,ny=/[0-9]/,_G=/[1-9]/,Pa=class{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":_c(n,"global");break;case"i":_c(n,"ignoreCase");break;case"m":_c(n,"multiLine");break;case"u":_c(n,"unicode");break;case"y":_c(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break}ka(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return cp()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let o;this.isDigit()?(o=this.integerIncludingZero(),r={atLeast:i,atMost:o}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;ka(r);break}if(!(e===!0&&r===void 0)&&ka(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),ka(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):cp()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[fe(`
75
75
  `),fe("\r"),fe("\u2028"),fe("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=lp;break;case"D":e=lp,r=!0;break;case"s":e=uA;break;case"S":e=uA,r=!0;break;case"w":e=dp;break;case"W":e=dp,r=!0;break}return ka(e)?{type:"Set",value:e,complement:r}:cp()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=fe("\f");break;case"n":e=fe(`
package/package.json CHANGED
@@ -1,9 +1,12 @@
1
1
  {
2
2
  "name": "likec4",
3
- "version": "1.7.3",
3
+ "version": "1.7.4",
4
4
  "license": "MIT",
5
5
  "homepage": "https://likec4.dev",
6
6
  "author": "Denis Davydkov <denis@davydkov.com>",
7
+ "sponsor": {
8
+ "url": "https://github.com/sponsors/davydkov"
9
+ },
7
10
  "repository": {
8
11
  "type": "git",
9
12
  "url": "https://github.com/likec4/likec4.git",
@@ -99,14 +102,14 @@
99
102
  },
100
103
  "devDependencies": {
101
104
  "@fontsource/ibm-plex-sans": "^5.0.20",
102
- "@likec4/core": "1.7.3",
103
- "@likec4/diagram": "1.7.3",
104
- "@likec4/generators": "1.7.3",
105
- "@likec4/icons": "1.7.3",
106
- "@likec4/language-server": "1.7.3",
107
- "@likec4/layouts": "1.7.3",
108
- "@likec4/log": "1.7.3",
109
- "@likec4/tsconfig": "1.7.3",
105
+ "@likec4/core": "1.7.4",
106
+ "@likec4/diagram": "1.7.4",
107
+ "@likec4/generators": "1.7.4",
108
+ "@likec4/icons": "1.7.4",
109
+ "@likec4/language-server": "1.7.4",
110
+ "@likec4/layouts": "1.7.4",
111
+ "@likec4/log": "1.7.4",
112
+ "@likec4/tsconfig": "1.7.4",
110
113
  "@mantine/core": "7.11.2",
111
114
  "@mantine/hooks": "7.11.2",
112
115
  "@mantine/vanilla-extract": "7.11.2",