orcaq 1.1.6 → 1.1.7
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/.output/nitro.json +1 -1
- package/.output/public/_nuxt/{Lh0RfwhV.js → 1VXrIDkr.js} +1 -1
- package/.output/public/_nuxt/{ZVYA9HBl.js → 1fIGBJPQ.js} +1 -1
- package/.output/public/_nuxt/{BbawOYVr.js → 1kY3DHv7.js} +1 -1
- package/.output/public/_nuxt/{DDsaDrGo.js → 2TwRWQjG.js} +1 -1
- package/.output/public/_nuxt/{wrneOCBW.js → 39ZZCZCn.js} +1 -1
- package/.output/public/_nuxt/{BmEIj9l9.js → 3vYvhEat.js} +1 -1
- package/.output/public/_nuxt/{CEoM97rJ.js → 9bnMBg54.js} +1 -1
- package/.output/public/_nuxt/{ZNDxw-7x.js → B-u0WX5Q.js} +1 -1
- package/.output/public/_nuxt/{uDsvlLN0.js → B41tp0B8.js} +1 -1
- package/.output/public/_nuxt/{4LC09zKL.js → BCm7jnPt.js} +1 -1
- package/.output/public/_nuxt/{D29mzs5t.js → BFMjnjgH.js} +1 -1
- package/.output/public/_nuxt/{BEvswgw7.js → BGAd-CMD.js} +1 -1
- package/.output/public/_nuxt/{CP-7VdtS.js → BG_B-fo0.js} +1 -1
- package/.output/public/_nuxt/{Dd89Vyx8.js → BLEKzUmC.js} +1 -1
- package/.output/public/_nuxt/{DoNLWeqB.js → BN2mQ8OV.js} +1 -1
- package/.output/public/_nuxt/{DP6Az3fC.js → BNnChlxR.js} +1 -1
- package/.output/public/_nuxt/{BKAEFZqP.js → BNyWhB4W.js} +1 -1
- package/.output/public/_nuxt/{Bibtvqd8.js → BO-QgaRL.js} +1 -1
- package/.output/public/_nuxt/{DViCRsmA.js → BOVFFCPB.js} +1 -1
- package/.output/public/_nuxt/{BWg3wiuc.js → BRVpLa1E.js} +1 -1
- package/.output/public/_nuxt/{BJ8qQpib.js → BV4g1sVY.js} +1 -1
- package/.output/public/_nuxt/{_TExiQQQ.js → BXziI6Bt.js} +1 -1
- package/.output/public/_nuxt/{Df4wU3r0.js → BZQUF1W4.js} +1 -1
- package/.output/public/_nuxt/BZmEvFAZ.js +28 -0
- package/.output/public/_nuxt/B_G752SV.js +20 -0
- package/.output/public/_nuxt/{BusLuQ4Q.js → Ba_fqsW2.js} +1 -1
- package/.output/public/_nuxt/{DZFq5yqu.js → BbzZxPNQ.js} +1 -1
- package/.output/public/_nuxt/{BxZgIpkD.js → BhT0iBlH.js} +1 -1
- package/.output/public/_nuxt/{CoX1_N4R.js → Bhm1GL_M.js} +1 -1
- package/.output/public/_nuxt/{27ZsWTm2.js → BiSZmDoN.js} +1 -1
- package/.output/public/_nuxt/{DZVfXu09.js → BjK8Fug8.js} +1 -1
- package/.output/public/_nuxt/{G40WRC_L.js → BjpSpz5C.js} +1 -1
- package/.output/public/_nuxt/{Bok35x_B.js → BkqB6n0T.js} +1 -1
- package/.output/public/_nuxt/{6NXhlm49.js → BoPjUGS6.js} +1 -1
- package/.output/public/_nuxt/{B10QBDL6.js → BtwwqY0e.js} +1 -1
- package/.output/public/_nuxt/{FHx3Ejt6.js → BvD9dW-2.js} +1 -1
- package/.output/public/_nuxt/{Cvkyd5iW.js → Bw-4PosZ.js} +1 -1
- package/.output/public/_nuxt/C0l_59dE.js +1 -0
- package/.output/public/_nuxt/{__PEYcIB.js → C1TOiVRQ.js} +1 -1
- package/.output/public/_nuxt/{BoUZO_NV.js → C7A87LE3.js} +1 -1
- package/.output/public/_nuxt/{o60RgyTd.js → C80Zs8U0.js} +1 -1
- package/.output/public/_nuxt/{BnZ5qYkP.js → CB56S0b2.js} +9 -9
- package/.output/public/_nuxt/{CNPNWuzz.js → CBgbjsPd.js} +1 -1
- package/.output/public/_nuxt/{BCazdlgN.js → CCk2r9DD.js} +1 -1
- package/.output/public/_nuxt/{CCOlJAKS.js → CFZerEKx.js} +2 -2
- package/.output/public/_nuxt/{Bgj8Q52i.js → CG4v011f.js} +1 -1
- package/.output/public/_nuxt/{C4-wpUAK.js → CJnTtXrv.js} +1 -1
- package/.output/public/_nuxt/{DHyymmeR.js → CRDIOG8r.js} +1 -1
- package/.output/public/_nuxt/{XETGYn3c.js → CSPqdI4x.js} +1 -1
- package/.output/public/_nuxt/{DyDU0wFf.js → CTYqoFvv.js} +1 -1
- package/.output/public/_nuxt/{BbLqUOHs.js → CWGzL6OE.js} +1 -1
- package/.output/public/_nuxt/{CZLVBTJx.js → CYJEOEaU.js} +1 -1
- package/.output/public/_nuxt/{BTvOPFKG.js → CYu-xp_f.js} +1 -1
- package/.output/public/_nuxt/CZvnl0uO.js +52 -0
- package/.output/public/_nuxt/{DsPClaxV.js → CadjlDLt.js} +1 -1
- package/.output/public/_nuxt/{BJoSd_uV.js → CczQKYUP.js} +1 -1
- package/.output/public/_nuxt/{CHAVZu6b.js → CeXr_3vU.js} +2 -2
- package/.output/public/_nuxt/{BAasx5OS.js → Ch-A9iSC.js} +1 -1
- package/.output/public/_nuxt/{Bap1X7GD.js → Cj9tYr3P.js} +1 -1
- package/.output/public/_nuxt/Clm3Z8VL.js +1 -0
- package/.output/public/_nuxt/{F8eHh68O.js → CpkrwN3Q.js} +8 -8
- package/.output/public/_nuxt/{CO0Pa76w.js → CrwM3gOU.js} +1 -1
- package/.output/public/_nuxt/{DeVs4gEL.js → Culm7V2R.js} +1 -1
- package/.output/public/_nuxt/{Cl3VX8Um.js → CxZK-Vs6.js} +1 -1
- package/.output/public/_nuxt/{DLA-ioQ4.js → Cym7bWgs.js} +1 -1
- package/.output/public/_nuxt/CzBFxx8v.js +1 -0
- package/.output/public/_nuxt/{BCa-NKh0.js → D0oaRUYx.js} +1 -1
- package/.output/public/_nuxt/{DgGwe7jd.js → D7uoAo-G.js} +133 -133
- package/.output/public/_nuxt/{CvDZBOay.js → D8KJQqug.js} +1 -1
- package/.output/public/_nuxt/{DlymFQ5D.js → D8Z5BXgG.js} +3 -3
- package/.output/public/_nuxt/{DdbhVPqD.js → DDK9-_jm.js} +1 -1
- package/.output/public/_nuxt/{CnQob-tn.js → DDQU7vSH.js} +1 -1
- package/.output/public/_nuxt/{BuSZbOQO.js → DEjwIQuc.js} +1 -1
- package/.output/public/_nuxt/{yLATXAxG.js → DLIUYAz9.js} +1 -1
- package/.output/public/_nuxt/{DYPm3mWQ.js → DQdL5Jcl.js} +1 -1
- package/.output/public/_nuxt/{EZ0owjER.js → DRuCf0Sx.js} +1 -1
- package/.output/public/_nuxt/DSEkO8kW.js +1 -0
- package/.output/public/_nuxt/{DYqShb5v.js → DSOwr8Hs.js} +4 -4
- package/.output/public/_nuxt/{Cf6n9dsT.js → DStg2VwN.js} +1 -1
- package/.output/public/_nuxt/{Ci7hrFNN.js → DTlu-CJn.js} +1 -1
- package/.output/public/_nuxt/{CCK1so3F.js → DUvUg_V7.js} +1 -1
- package/.output/public/_nuxt/{CBjcd4cE.js → D_fdC3mJ.js} +1 -1
- package/.output/public/_nuxt/{BhzzQZRC.js → Da1F0IxL.js} +1 -1
- package/.output/public/_nuxt/{C6bwwZAc.js → DcXAnOS1.js} +1 -1
- package/.output/public/_nuxt/DdtQIDaq.js +1 -0
- package/.output/public/_nuxt/Dfz8k_Rn.js +1 -0
- package/.output/public/_nuxt/{Dpm6rnHk.js → DitYzGT4.js} +1 -1
- package/.output/public/_nuxt/{NMm6Vanu.js → Djh3G2Nf.js} +1 -1
- package/.output/public/_nuxt/DmWFeTaU.js +1 -0
- package/.output/public/_nuxt/{x85BV7y_.js → DtgJAz2h.js} +1 -1
- package/.output/public/_nuxt/{3jfBYqJb.js → DuKway_J.js} +1 -1
- package/.output/public/_nuxt/{7nPLTDFM.js → DxF9DsEl.js} +1 -1
- package/.output/public/_nuxt/{C9ZBCJdc.js → DyFXtlg0.js} +1 -1
- package/.output/public/_nuxt/DzN4YRfa.js +7 -0
- package/.output/public/_nuxt/{B_hWP06g.js → DzaPC1WB.js} +1 -1
- package/.output/public/_nuxt/{wH-P-_6A.js → DzjHXopz.js} +1 -1
- package/.output/public/_nuxt/{CE0zlNDo.js → LUfaevBS.js} +1 -1
- package/.output/public/_nuxt/{DRX1aIGD.js → RFRrMFyH.js} +1 -1
- package/.output/public/_nuxt/{CROH8wgk.js → RTN5rY4m.js} +1 -1
- package/.output/public/_nuxt/{Un5zjlKE.js → XVZ0obUR.js} +1 -1
- package/.output/public/_nuxt/{B5HZeat4.js → Z5g5B4NJ.js} +1 -1
- package/.output/public/_nuxt/_ltJfz1p.js +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/1cbed594-12e2-48e6-bea9-7a9159c3c1d3.json +1 -0
- package/.output/public/_nuxt/{DtOg0Asw.js → dkyHOJLf.js} +1 -1
- package/.output/public/_nuxt/entry.D1DMaixs.css +1 -0
- package/.output/public/_nuxt/{habs8oz6.js → gWmEw6BT.js} +1 -1
- package/.output/public/_nuxt/ixgiI20S.js +1 -0
- package/.output/public/_nuxt/{C6CFIGob.js → jJeqAxmP.js} +1 -1
- package/.output/public/_nuxt/{P_2SRa71.js → lisFd8W1.js} +2 -2
- package/.output/public/_nuxt/{CoQ_oOia.js → nrlEwpIH.js} +1 -1
- package/.output/public/_nuxt/{6wO6CbCo.js → uHyBIwWw.js} +1 -1
- package/.output/public/_nuxt/{dDqgUqt5.js → vGkKA7iH.js} +1 -1
- package/.output/public/_nuxt/{C445d10Z.js → z1xPtaLw.js} +1 -1
- package/.output/server/chunks/_/registry.mjs +116 -0
- package/.output/server/chunks/_/registry.mjs.map +1 -0
- package/.output/server/chunks/_/{native-backup.mjs → runtime.mjs} +325 -164
- package/.output/server/chunks/_/runtime.mjs.map +1 -0
- package/.output/server/chunks/_/{native-backup-jobs.mjs → service.mjs} +185 -248
- package/.output/server/chunks/_/service.mjs.map +1 -0
- package/.output/server/chunks/build/client.manifest.mjs +734 -723
- package/.output/server/chunks/build/client.manifest.mjs.map +1 -1
- package/.output/server/chunks/nitro/nitro.mjs +659 -652
- package/.output/server/chunks/routes/api/database-backup/capability.get.mjs +7 -2
- package/.output/server/chunks/routes/api/database-backup/capability.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-export/export-database.mjs +4 -3
- package/.output/server/chunks/routes/api/database-export/export-database.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-export/jobs/_jobId/download.get.mjs +1 -20
- package/.output/server/chunks/routes/api/database-export/jobs/_jobId/download.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-export/jobs/_jobId_.get.mjs +1 -20
- package/.output/server/chunks/routes/api/database-export/jobs/_jobId_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-import/import-database.mjs +14 -3
- package/.output/server/chunks/routes/api/database-import/import-database.mjs.map +1 -1
- package/.output/server/chunks/routes/api/database-import/jobs/_jobId_.get.mjs +1 -20
- package/.output/server/chunks/routes/api/database-import/jobs/_jobId_.get.mjs.map +1 -1
- package/.output/server/package.json +1 -1
- package/package.json +1 -1
- package/.output/public/_nuxt/4OV_5qQE.js +0 -1
- package/.output/public/_nuxt/B3iNzG14.js +0 -1
- package/.output/public/_nuxt/Bf2bW_MY.js +0 -7
- package/.output/public/_nuxt/C7C1kq_N.js +0 -1
- package/.output/public/_nuxt/CN8b9qPP.js +0 -1
- package/.output/public/_nuxt/CUws2Uv7.js +0 -1
- package/.output/public/_nuxt/Cl5p4EQY.js +0 -1
- package/.output/public/_nuxt/D9MMtvTu.js +0 -52
- package/.output/public/_nuxt/DM8LJTsg.js +0 -1
- package/.output/public/_nuxt/ORit_vRp.js +0 -1
- package/.output/public/_nuxt/ZhP2FY6Y.js +0 -1
- package/.output/public/_nuxt/builds/meta/47c294b1-d6b3-4974-bd50-5046ae0a393e.json +0 -1
- package/.output/public/_nuxt/dSX5D8ur.js +0 -28
- package/.output/public/_nuxt/entry.CGwcggc4.css +0 -1
- package/.output/server/chunks/_/native-backup-jobs.mjs.map +0 -1
- package/.output/server/chunks/_/native-backup.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{s as e,b as r,a,S as s}from"./Cym7bWgs.js";import{_ as i}from"./DSOwr8Hs.js";import"./RTN5rY4m.js";import"./DuKway_J.js";import"./D7uoAo-G.js";var p={parser:a,get db(){return new s(2)},renderer:r,styles:e,init:i(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")};export{p as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as o}from"./jJeqAxmP.js";import{d as r,T as s,c as n,k as c,g as m,o as p}from"./D7uoAo-G.js";import"./CB56S0b2.js";import"./vGkKA7iH.js";import"./LUfaevBS.js";const I=r({__name:"[tableId]",setup(u){const e=s(),t=n(()=>e.params.tableId);return(a,l)=>(p(),c(o,{tableId:m(t)},null,8,["tableId"]))}});export{I as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as _,V as y,k as c,o as f,w as n,D as b,W as C,X as D,g as e,Y as N,Z as k,$,c as u,p as z,j as M,bd as q,f as r,b5 as I,af as R,b6 as H,b7 as O,n as S,l as T,z as v,A as W,t as g,b8 as j,b9 as F,ba as U,bb as V}from"./
|
|
1
|
+
import{d as _,V as y,k as c,o as f,w as n,D as b,W as C,X as D,g as e,Y as N,Z as k,$,c as u,p as z,j as M,bd as q,f as r,b5 as I,af as R,b6 as H,b7 as O,n as S,l as T,z as v,A as W,t as g,b8 as j,b9 as F,ba as U,bb as V}from"./D7uoAo-G.js";import{M as Y,a as Z}from"./uHyBIwWw.js";import{D as B,b as J,a as K,c as X}from"./BbzZxPNQ.js";import{_ as A}from"./DDQU7vSH.js";var G=_({__name:"DropdownMenuLabel",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const o=a;return y(),(s,t)=>(f(),c(e(Y),C(D(o)),{default:n(()=>[b(s.$slots,"default")]),_:3},16))}}),Q=G,ee=_({__name:"DropdownMenuSeparator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(a){const o=a;return y(),(s,t)=>(f(),c(e(Z),C(D(o)),{default:n(()=>[b(s.$slots,"default")]),_:3},16))}}),ae=ee;const le=_({__name:"DropdownMenuLabel",props:{asChild:{type:Boolean},as:{},class:{},inset:{type:Boolean}},setup(a){const o=a,s=N(o,"class","inset"),t=k(s),d=$(B,u(()=>"default"));return(l,h)=>(f(),c(e(Q),z({"data-slot":"dropdown-menu-label","data-size":e(d),"data-inset":l.inset?"":void 0},e(t),{class:e(M)("font-medium",e(J)[e(d)],l.inset&&e(K)[e(d)],o.class)}),{default:n(()=>[b(l.$slots,"default")]),_:3},16,["data-size","data-inset","class"]))}}),de=_({__name:"DropdownMenuSeparator",props:{asChild:{type:Boolean},as:{},class:{}},setup(a){const o=a,s=u(()=>{const{class:d,...l}=o;return l}),t=$(B,u(()=>"default"));return(d,l)=>(f(),c(e(ae),z({"data-slot":"dropdown-menu-separator","data-size":e(t)},s.value,{class:e(M)("bg-border h-px",e(X)[e(t)],o.class)}),null,16,["data-size","class"]))}});var se=(a=>(a.Data="Data",a.Structure="Structure",a.Erd="Erd",a))(se||{}),p=(a=>(a.Save="save",a.Delete="delete",a))(p||{});const ie=_({__name:"SafeModeConfirmDialog",props:{open:{type:Boolean},sql:{},type:{},loading:{type:Boolean},dangerous:{type:Boolean}},emits:["update:open","confirm","cancel"],setup(a,{emit:o}){const s=a,t=o,d=u(()=>s.dangerous?s.type===p.Save?"High-Risk: Confirm Save":"High-Risk: Confirm Delete":s.type===p.Save?"Confirm Save":"Confirm Delete"),l=u(()=>s.dangerous?"Caution: No primary key detected. To identify the record, this operation will match all columns in the WHERE clause. This carries a risk of affecting multiple rows if they share identical data. Please verify the SQL below carefully before proceeding:":s.type===p.Save?"The following SQL will be executed to save your changes:":"The following SQL will be executed to delete the selected rows:"),h=u(()=>s.type===p.Save?"Save":"Delete"),L=()=>{t("confirm"),t("update:open",!1)},P=()=>{t("cancel"),t("update:open",!1)};return(i,m)=>{const w=W,E=A;return f(),c(e(q),{open:i.open,"onUpdate:open":m[0]||(m[0]=x=>t("update:open",x))},{default:n(()=>[r(e(I),{size:"preview"},{default:n(()=>[r(e(R),{visible:!!i.loading},null,8,["visible"]),r(e(H),null,{default:n(()=>[r(e(O),{class:S(["flex items-center gap-2 text-base font-medium",{"text-destructive":i.dangerous}])},{default:n(()=>[i.dangerous?(f(),c(w,{key:0,name:"lucide:alert-triangle",class:"size-5 text-destructive"})):T("",!0),v(" "+g(e(d)),1)]),_:1},8,["class"]),r(e(j),{class:S({"text-destructive font-normal":i.dangerous})},{default:n(()=>[v(g(e(l)),1)]),_:1},8,["class"])]),_:1}),r(E,{code:i.sql,"show-copy-button":"","max-height":"24rem"},null,8,["code"]),r(e(F),null,{default:n(()=>[r(e(U),{class:"border font-normal",onClick:P},{default:n(()=>m[1]||(m[1]=[v(" Cancel ")])),_:1}),r(e(V),{class:"border font-normal flex gap-1",onClick:L},{default:n(()=>[r(w,{name:i.type===e(p).Save?"lucide:save":"lucide:trash-2",class:"size-4"},null,8,["name"]),v(" "+g(e(h)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["open"])}}});export{se as Q,ie as _,p as a,le as b,de as c};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as r,V as i,a5 as u,r as p,k as o,o as l,w as n,D as d,g as e,a6 as _,n as c,j as f}from"./
|
|
1
|
+
import{d as r,V as i,a5 as u,r as p,k as o,o as l,w as n,D as d,g as e,a6 as _,n as c,j as f}from"./D7uoAo-G.js";const[R,v]=u("AvatarRoot");var h=r({__name:"AvatarRoot",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(s){return i(),v({imageLoadingStatus:p("idle")}),(a,t)=>(l(),o(e(_),{"as-child":a.asChild,as:a.as},{default:n(()=>[d(a.$slots,"default")]),_:3},8,["as-child","as"]))}}),m=h;const x=r({__name:"Avatar",props:{class:{}},setup(s){const a=s;return(t,C)=>(l(),o(e(m),{"data-slot":"avatar",class:c(e(f)("relative flex size-8 shrink-0 overflow-hidden rounded-full",a.class))},{default:n(()=>[d(t.$slots,"default")]),_:3},8,["class"]))}});export{x as _,R as i};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{s as a,c as s,a as e,C as t}from"./RFRrMFyH.js";import{_ as i}from"./DSOwr8Hs.js";import"./D_fdC3mJ.js";import"./CWGzL6OE.js";import"./RTN5rY4m.js";import"./DuKway_J.js";import"./D7uoAo-G.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{g as Ht}from"./
|
|
1
|
+
import{g as Ht}from"./D_fdC3mJ.js";import{_ as m,o as Mt,l as t1,c as b1,d as O1,p as Xt,r as Qt,u as rt,b as Jt,s as Zt,q as $t,a as te,g as ee,t as se,k as ie,v as re,J as ae,x as ne,y as it,z as ue,A as oe,B as le,C as ce}from"./DSOwr8Hs.js";import{c as he}from"./CWGzL6OE.js";import{g as de}from"./RTN5rY4m.js";import{s as pe}from"./DuKway_J.js";import{c as fe}from"./CzBFxx8v.js";import"./D7uoAo-G.js";var ge="flowchart-",G1,be=(G1=class{constructor(){this.vertexCounter=0,this.config=b1(),this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=Jt,this.setAccDescription=Zt,this.setDiagramTitle=$t,this.getAccTitle=te,this.getAccDescription=ee,this.getDiagramTitle=se,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}sanitizeText(i){return ie.sanitizeText(i,this.config)}sanitizeNodeLabelType(i){switch(i){case"markdown":case"string":case"text":return i;default:return"markdown"}}lookUpDomId(i){for(const n of this.vertices.values())if(n.id===i)return n.domId;return i}addVertex(i,n,a,u,o,f,c={},A){var L,C;if(!i||i.trim().length===0)return;let r;if(A!==void 0){let d;A.includes(`
|
|
2
2
|
`)?d=A+`
|
|
3
3
|
`:d=`{
|
|
4
4
|
`+A+`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as a,e as w,l as x}from"./
|
|
1
|
+
import{_ as a,e as w,l as x}from"./DSOwr8Hs.js";var d=a((e,t,i,o)=>{e.attr("class",i);const{width:r,height:h,x:n,y:c}=u(e,t);w(e,h,r,o);const s=l(n,c,r,h,t);e.attr("viewBox",s),x.debug(`viewBox configured: ${s} with padding: ${t}`)},"setupViewPortForSVG"),u=a((e,t)=>{var o;const i=((o=e.node())==null?void 0:o.getBBox())||{width:0,height:0,x:0,y:0};return{width:i.width+t*2,height:i.height+t*2,x:i.x,y:i.y}},"calculateDimensionsWithPadding"),l=a((e,t,i,o,r)=>`${e-r} ${t-r} ${i} ${o}`,"createViewBox");export{d as s};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as p,q as _t,t as xt,s as vt,g as bt,b as wt,a as St,c as lt,B as Lt,d as H,ac as Et,A as At,k as Tt}from"./DYqShb5v.js";import{o as Mt}from"./CmKTTxBW.js";import"./DgGwe7jd.js";import"./Gi6I4Gst.js";function Nt(t){for(var e=t.length/6|0,i=new Array(e),a=0;a<e;)i[a]="#"+t.slice(a*6,++a*6);return i}const It=Nt("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");function ct(t,e){let i;if(e===void 0)for(const a of t)a!=null&&(i<a||i===void 0&&a>=a)&&(i=a);else{let a=-1;for(let h of t)(h=e(h,++a,t))!=null&&(i<h||i===void 0&&h>=h)&&(i=h)}return i}function pt(t,e){let i;if(e===void 0)for(const a of t)a!=null&&(i>a||i===void 0&&a>=a)&&(i=a);else{let a=-1;for(let h of t)(h=e(h,++a,t))!=null&&(i>h||i===void 0&&h>=h)&&(i=h)}return i}function nt(t,e){let i=0;if(e===void 0)for(let a of t)(a=+a)&&(i+=a);else{let a=-1;for(let h of t)(h=+e(h,++a,t))&&(i+=h)}return i}function Pt(t){return t.target.depth}function Ct(t){return t.depth}function Ot(t,e){return e-1-t.height}function mt(t,e){return t.sourceLinks.length?t.depth:e-1}function Dt(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?pt(t.sourceLinks,Pt)-1:0}function X(t){return function(){return t}}function ut(t,e){return Q(t.source,e.source)||t.index-e.index}function ht(t,e){return Q(t.target,e.target)||t.index-e.index}function Q(t,e){return t.y0-e.y0}function it(t){return t.value}function $t(t){return t.index}function zt(t){return t.nodes}function jt(t){return t.links}function ft(t,e){const i=t.get(e);if(!i)throw new Error("missing: "+e);return i}function yt({nodes:t}){for(const e of t){let i=e.y0,a=i;for(const h of e.sourceLinks)h.y0=i+h.width/2,i+=h.width;for(const h of e.targetLinks)h.y1=a+h.width/2,a+=h.width}}function Bt(){let t=0,e=0,i=1,a=1,h=24,d=8,m,_=$t,s=mt,o,l,x=zt,v=jt,y=6;function b(){const n={nodes:x.apply(null,arguments),links:v.apply(null,arguments)};return M(n),T(n),N(n),C(n),S(n),yt(n),n}b.update=function(n){return yt(n),n},b.nodeId=function(n){return arguments.length?(_=typeof n=="function"?n:X(n),b):_},b.nodeAlign=function(n){return arguments.length?(s=typeof n=="function"?n:X(n),b):s},b.nodeSort=function(n){return arguments.length?(o=n,b):o},b.nodeWidth=function(n){return arguments.length?(h=+n,b):h},b.nodePadding=function(n){return arguments.length?(d=m=+n,b):d},b.nodes=function(n){return arguments.length?(x=typeof n=="function"?n:X(n),b):x},b.links=function(n){return arguments.length?(v=typeof n=="function"?n:X(n),b):v},b.linkSort=function(n){return arguments.length?(l=n,b):l},b.size=function(n){return arguments.length?(t=e=0,i=+n[0],a=+n[1],b):[i-t,a-e]},b.extent=function(n){return arguments.length?(t=+n[0][0],i=+n[1][0],e=+n[0][1],a=+n[1][1],b):[[t,e],[i,a]]},b.iterations=function(n){return arguments.length?(y=+n,b):y};function M({nodes:n,links:f}){for(const[c,r]of n.entries())r.index=c,r.sourceLinks=[],r.targetLinks=[];const u=new Map(n.map((c,r)=>[_(c,r,n),c]));for(const[c,r]of f.entries()){r.index=c;let{source:k,target:w}=r;typeof k!="object"&&(k=r.source=ft(u,k)),typeof w!="object"&&(w=r.target=ft(u,w)),k.sourceLinks.push(r),w.targetLinks.push(r)}if(l!=null)for(const{sourceLinks:c,targetLinks:r}of n)c.sort(l),r.sort(l)}function T({nodes:n}){for(const f of n)f.value=f.fixedValue===void 0?Math.max(nt(f.sourceLinks,it),nt(f.targetLinks,it)):f.fixedValue}function N({nodes:n}){const f=n.length;let u=new Set(n),c=new Set,r=0;for(;u.size;){for(const k of u){k.depth=r;for(const{target:w}of k.sourceLinks)c.add(w)}if(++r>f)throw new Error("circular link");u=c,c=new Set}}function C({nodes:n}){const f=n.length;let u=new Set(n),c=new Set,r=0;for(;u.size;){for(const k of u){k.height=r;for(const{source:w}of k.targetLinks)c.add(w)}if(++r>f)throw new Error("circular link");u=c,c=new Set}}function $({nodes:n}){const f=ct(n,r=>r.depth)+1,u=(i-t-h)/(f-1),c=new Array(f);for(const r of n){const k=Math.max(0,Math.min(f-1,Math.floor(s.call(null,r,f))));r.layer=k,r.x0=t+k*u,r.x1=r.x0+h,c[k]?c[k].push(r):c[k]=[r]}if(o)for(const r of c)r.sort(o);return c}function R(n){const f=pt(n,u=>(a-e-(u.length-1)*m)/nt(u,it));for(const u of n){let c=e;for(const r of u){r.y0=c,r.y1=c+r.value*f,c=r.y1+m;for(const k of r.sourceLinks)k.width=k.value*f}c=(a-c+m)/(u.length+1);for(let r=0;r<u.length;++r){const k=u[r];k.y0+=c*(r+1),k.y1+=c*(r+1)}A(u)}}function S(n){const f=$(n);m=Math.min(d,(a-e)/(ct(f,u=>u.length)-1)),R(f);for(let u=0;u<y;++u){const c=Math.pow(.99,u),r=Math.max(1-c,(u+1)/y);B(f,c,r),P(f,c,r)}}function P(n,f,u){for(let c=1,r=n.length;c<r;++c){const k=n[c];for(const w of k){let L=0,F=0;for(const{source:Y,value:et}of w.targetLinks){let q=et*(w.layer-Y.layer);L+=z(Y,w)*q,F+=q}if(!(F>0))continue;let G=(L/F-w.y0)*f;w.y0+=G,w.y1+=G,E(w)}o===void 0&&k.sort(Q),O(k,u)}}function B(n,f,u){for(let c=n.length,r=c-2;r>=0;--r){const k=n[r];for(const w of k){let L=0,F=0;for(const{target:Y,value:et}of w.sourceLinks){let q=et*(Y.layer-w.layer);L+=I(w,Y)*q,F+=q}if(!(F>0))continue;let G=(L/F-w.y0)*f;w.y0+=G,w.y1+=G,E(w)}o===void 0&&k.sort(Q),O(k,u)}}function O(n,f){const u=n.length>>1,c=n[u];g(n,c.y0-m,u-1,f),D(n,c.y1+m,u+1,f),g(n,a,n.length-1,f),D(n,e,0,f)}function D(n,f,u,c){for(;u<n.length;++u){const r=n[u],k=(f-r.y0)*c;k>1e-6&&(r.y0+=k,r.y1+=k),f=r.y1+m}}function g(n,f,u,c){for(;u>=0;--u){const r=n[u],k=(r.y1-f)*c;k>1e-6&&(r.y0-=k,r.y1-=k),f=r.y0-m}}function E({sourceLinks:n,targetLinks:f}){if(l===void 0){for(const{source:{sourceLinks:u}}of f)u.sort(ht);for(const{target:{targetLinks:u}}of n)u.sort(ut)}}function A(n){if(l===void 0)for(const{sourceLinks:f,targetLinks:u}of n)f.sort(ht),u.sort(ut)}function z(n,f){let u=n.y0-(n.sourceLinks.length-1)*m/2;for(const{target:c,width:r}of n.sourceLinks){if(c===f)break;u+=r+m}for(const{source:c,width:r}of f.targetLinks){if(c===n)break;u-=r}return u}function I(n,f){let u=f.y0-(f.targetLinks.length-1)*m/2;for(const{source:c,width:r}of f.targetLinks){if(c===n)break;u+=r+m}for(const{target:c,width:r}of n.sourceLinks){if(c===f)break;u-=r}return u}return b}var st=Math.PI,rt=2*st,V=1e-6,Rt=rt-V;function ot(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function kt(){return new ot}ot.prototype=kt.prototype={constructor:ot,moveTo:function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},quadraticCurveTo:function(t,e,i,a){this._+="Q"+ +t+","+ +e+","+(this._x1=+i)+","+(this._y1=+a)},bezierCurveTo:function(t,e,i,a,h,d){this._+="C"+ +t+","+ +e+","+ +i+","+ +a+","+(this._x1=+h)+","+(this._y1=+d)},arcTo:function(t,e,i,a,h){t=+t,e=+e,i=+i,a=+a,h=+h;var d=this._x1,m=this._y1,_=i-t,s=a-e,o=d-t,l=m-e,x=o*o+l*l;if(h<0)throw new Error("negative radius: "+h);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(x>V)if(!(Math.abs(l*_-s*o)>V)||!h)this._+="L"+(this._x1=t)+","+(this._y1=e);else{var v=i-d,y=a-m,b=_*_+s*s,M=v*v+y*y,T=Math.sqrt(b),N=Math.sqrt(x),C=h*Math.tan((st-Math.acos((b+x-M)/(2*T*N)))/2),$=C/N,R=C/T;Math.abs($-1)>V&&(this._+="L"+(t+$*o)+","+(e+$*l)),this._+="A"+h+","+h+",0,0,"+ +(l*v>o*y)+","+(this._x1=t+R*_)+","+(this._y1=e+R*s)}},arc:function(t,e,i,a,h,d){t=+t,e=+e,i=+i,d=!!d;var m=i*Math.cos(a),_=i*Math.sin(a),s=t+m,o=e+_,l=1^d,x=d?a-h:h-a;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+s+","+o:(Math.abs(this._x1-s)>V||Math.abs(this._y1-o)>V)&&(this._+="L"+s+","+o),i&&(x<0&&(x=x%rt+rt),x>Rt?this._+="A"+i+","+i+",0,1,"+l+","+(t-m)+","+(e-_)+"A"+i+","+i+",0,1,"+l+","+(this._x1=s)+","+(this._y1=o):x>V&&(this._+="A"+i+","+i+",0,"+ +(x>=st)+","+l+","+(this._x1=t+i*Math.cos(h))+","+(this._y1=e+i*Math.sin(h))))},rect:function(t,e,i,a){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +i+"v"+ +a+"h"+-i+"Z"},toString:function(){return this._}};function dt(t){return function(){return t}}function Ft(t){return t[0]}function Vt(t){return t[1]}var Wt=Array.prototype.slice;function Ut(t){return t.source}function Gt(t){return t.target}function Yt(t){var e=Ut,i=Gt,a=Ft,h=Vt,d=null;function m(){var _,s=Wt.call(arguments),o=e.apply(this,s),l=i.apply(this,s);if(d||(d=_=kt()),t(d,+a.apply(this,(s[0]=o,s)),+h.apply(this,s),+a.apply(this,(s[0]=l,s)),+h.apply(this,s)),_)return d=null,_+""||null}return m.source=function(_){return arguments.length?(e=_,m):e},m.target=function(_){return arguments.length?(i=_,m):i},m.x=function(_){return arguments.length?(a=typeof _=="function"?_:dt(+_),m):a},m.y=function(_){return arguments.length?(h=typeof _=="function"?_:dt(+_),m):h},m.context=function(_){return arguments.length?(d=_??null,m):d},m}function qt(t,e,i,a,h){t.moveTo(e,i),t.bezierCurveTo(e=(e+a)/2,i,e,h,a,h)}function Ht(){return Yt(qt)}function Xt(t){return[t.source.x1,t.y0]}function Qt(t){return[t.target.x0,t.y1]}function Kt(){return Ht().source(Xt).target(Qt)}var at=function(){var t=p(function(_,s,o,l){for(o=o||{},l=_.length;l--;o[_[l]]=s);return o},"o"),e=[1,9],i=[1,10],a=[1,5,10,12],h={trace:p(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:p(function(s,o,l,x,v,y,b){var M=y.length-1;switch(v){case 7:const T=x.findOrCreateNode(y[M-4].trim().replaceAll('""','"')),N=x.findOrCreateNode(y[M-2].trim().replaceAll('""','"')),C=parseFloat(y[M].trim());x.addLink(T,N,C);break;case 8:case 9:case 11:this.$=y[M];break;case 10:this.$=y[M-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:i},{1:[2,6],7:11,10:[1,12]},t(i,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(a,[2,8]),t(a,[2,9]),{19:[1,16]},t(a,[2,11]),{1:[2,1]},{1:[2,5]},t(i,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:i},{15:18,16:7,17:8,18:e,20:i},{18:[1,19]},t(i,[2,3]),{12:[1,20]},t(a,[2,10]),{15:21,16:7,17:8,18:e,20:i},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:p(function(s,o){if(o.recoverable)this.trace(s);else{var l=new Error(s);throw l.hash=o,l}},"parseError"),parse:p(function(s){var o=this,l=[0],x=[],v=[null],y=[],b=this.table,M="",T=0,N=0,C=2,$=1,R=y.slice.call(arguments,1),S=Object.create(this.lexer),P={yy:{}};for(var B in this.yy)Object.prototype.hasOwnProperty.call(this.yy,B)&&(P.yy[B]=this.yy[B]);S.setInput(s,P.yy),P.yy.lexer=S,P.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var O=S.yylloc;y.push(O);var D=S.options&&S.options.ranges;typeof P.yy.parseError=="function"?this.parseError=P.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function g(L){l.length=l.length-2*L,v.length=v.length-L,y.length=y.length-L}p(g,"popStack");function E(){var L;return L=x.pop()||S.lex()||$,typeof L!="number"&&(L instanceof Array&&(x=L,L=x.pop()),L=o.symbols_[L]||L),L}p(E,"lex");for(var A,z,I,n,f={},u,c,r,k;;){if(z=l[l.length-1],this.defaultActions[z]?I=this.defaultActions[z]:((A===null||typeof A>"u")&&(A=E()),I=b[z]&&b[z][A]),typeof I>"u"||!I.length||!I[0]){var w="";k=[];for(u in b[z])this.terminals_[u]&&u>C&&k.push("'"+this.terminals_[u]+"'");S.showPosition?w="Parse error on line "+(T+1)+`:
|
|
1
|
+
import{_ as p,q as _t,t as xt,s as vt,g as bt,b as wt,a as St,c as lt,B as Lt,d as H,ac as Et,A as At,k as Tt}from"./DSOwr8Hs.js";import{o as Mt}from"./CmKTTxBW.js";import"./D7uoAo-G.js";import"./Gi6I4Gst.js";function Nt(t){for(var e=t.length/6|0,i=new Array(e),a=0;a<e;)i[a]="#"+t.slice(a*6,++a*6);return i}const It=Nt("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");function ct(t,e){let i;if(e===void 0)for(const a of t)a!=null&&(i<a||i===void 0&&a>=a)&&(i=a);else{let a=-1;for(let h of t)(h=e(h,++a,t))!=null&&(i<h||i===void 0&&h>=h)&&(i=h)}return i}function pt(t,e){let i;if(e===void 0)for(const a of t)a!=null&&(i>a||i===void 0&&a>=a)&&(i=a);else{let a=-1;for(let h of t)(h=e(h,++a,t))!=null&&(i>h||i===void 0&&h>=h)&&(i=h)}return i}function nt(t,e){let i=0;if(e===void 0)for(let a of t)(a=+a)&&(i+=a);else{let a=-1;for(let h of t)(h=+e(h,++a,t))&&(i+=h)}return i}function Pt(t){return t.target.depth}function Ct(t){return t.depth}function Ot(t,e){return e-1-t.height}function mt(t,e){return t.sourceLinks.length?t.depth:e-1}function Dt(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?pt(t.sourceLinks,Pt)-1:0}function X(t){return function(){return t}}function ut(t,e){return Q(t.source,e.source)||t.index-e.index}function ht(t,e){return Q(t.target,e.target)||t.index-e.index}function Q(t,e){return t.y0-e.y0}function it(t){return t.value}function $t(t){return t.index}function zt(t){return t.nodes}function jt(t){return t.links}function ft(t,e){const i=t.get(e);if(!i)throw new Error("missing: "+e);return i}function yt({nodes:t}){for(const e of t){let i=e.y0,a=i;for(const h of e.sourceLinks)h.y0=i+h.width/2,i+=h.width;for(const h of e.targetLinks)h.y1=a+h.width/2,a+=h.width}}function Bt(){let t=0,e=0,i=1,a=1,h=24,d=8,m,_=$t,s=mt,o,l,x=zt,v=jt,y=6;function b(){const n={nodes:x.apply(null,arguments),links:v.apply(null,arguments)};return M(n),T(n),N(n),C(n),S(n),yt(n),n}b.update=function(n){return yt(n),n},b.nodeId=function(n){return arguments.length?(_=typeof n=="function"?n:X(n),b):_},b.nodeAlign=function(n){return arguments.length?(s=typeof n=="function"?n:X(n),b):s},b.nodeSort=function(n){return arguments.length?(o=n,b):o},b.nodeWidth=function(n){return arguments.length?(h=+n,b):h},b.nodePadding=function(n){return arguments.length?(d=m=+n,b):d},b.nodes=function(n){return arguments.length?(x=typeof n=="function"?n:X(n),b):x},b.links=function(n){return arguments.length?(v=typeof n=="function"?n:X(n),b):v},b.linkSort=function(n){return arguments.length?(l=n,b):l},b.size=function(n){return arguments.length?(t=e=0,i=+n[0],a=+n[1],b):[i-t,a-e]},b.extent=function(n){return arguments.length?(t=+n[0][0],i=+n[1][0],e=+n[0][1],a=+n[1][1],b):[[t,e],[i,a]]},b.iterations=function(n){return arguments.length?(y=+n,b):y};function M({nodes:n,links:f}){for(const[c,r]of n.entries())r.index=c,r.sourceLinks=[],r.targetLinks=[];const u=new Map(n.map((c,r)=>[_(c,r,n),c]));for(const[c,r]of f.entries()){r.index=c;let{source:k,target:w}=r;typeof k!="object"&&(k=r.source=ft(u,k)),typeof w!="object"&&(w=r.target=ft(u,w)),k.sourceLinks.push(r),w.targetLinks.push(r)}if(l!=null)for(const{sourceLinks:c,targetLinks:r}of n)c.sort(l),r.sort(l)}function T({nodes:n}){for(const f of n)f.value=f.fixedValue===void 0?Math.max(nt(f.sourceLinks,it),nt(f.targetLinks,it)):f.fixedValue}function N({nodes:n}){const f=n.length;let u=new Set(n),c=new Set,r=0;for(;u.size;){for(const k of u){k.depth=r;for(const{target:w}of k.sourceLinks)c.add(w)}if(++r>f)throw new Error("circular link");u=c,c=new Set}}function C({nodes:n}){const f=n.length;let u=new Set(n),c=new Set,r=0;for(;u.size;){for(const k of u){k.height=r;for(const{source:w}of k.targetLinks)c.add(w)}if(++r>f)throw new Error("circular link");u=c,c=new Set}}function $({nodes:n}){const f=ct(n,r=>r.depth)+1,u=(i-t-h)/(f-1),c=new Array(f);for(const r of n){const k=Math.max(0,Math.min(f-1,Math.floor(s.call(null,r,f))));r.layer=k,r.x0=t+k*u,r.x1=r.x0+h,c[k]?c[k].push(r):c[k]=[r]}if(o)for(const r of c)r.sort(o);return c}function R(n){const f=pt(n,u=>(a-e-(u.length-1)*m)/nt(u,it));for(const u of n){let c=e;for(const r of u){r.y0=c,r.y1=c+r.value*f,c=r.y1+m;for(const k of r.sourceLinks)k.width=k.value*f}c=(a-c+m)/(u.length+1);for(let r=0;r<u.length;++r){const k=u[r];k.y0+=c*(r+1),k.y1+=c*(r+1)}A(u)}}function S(n){const f=$(n);m=Math.min(d,(a-e)/(ct(f,u=>u.length)-1)),R(f);for(let u=0;u<y;++u){const c=Math.pow(.99,u),r=Math.max(1-c,(u+1)/y);B(f,c,r),P(f,c,r)}}function P(n,f,u){for(let c=1,r=n.length;c<r;++c){const k=n[c];for(const w of k){let L=0,F=0;for(const{source:Y,value:et}of w.targetLinks){let q=et*(w.layer-Y.layer);L+=z(Y,w)*q,F+=q}if(!(F>0))continue;let G=(L/F-w.y0)*f;w.y0+=G,w.y1+=G,E(w)}o===void 0&&k.sort(Q),O(k,u)}}function B(n,f,u){for(let c=n.length,r=c-2;r>=0;--r){const k=n[r];for(const w of k){let L=0,F=0;for(const{target:Y,value:et}of w.sourceLinks){let q=et*(Y.layer-w.layer);L+=I(w,Y)*q,F+=q}if(!(F>0))continue;let G=(L/F-w.y0)*f;w.y0+=G,w.y1+=G,E(w)}o===void 0&&k.sort(Q),O(k,u)}}function O(n,f){const u=n.length>>1,c=n[u];g(n,c.y0-m,u-1,f),D(n,c.y1+m,u+1,f),g(n,a,n.length-1,f),D(n,e,0,f)}function D(n,f,u,c){for(;u<n.length;++u){const r=n[u],k=(f-r.y0)*c;k>1e-6&&(r.y0+=k,r.y1+=k),f=r.y1+m}}function g(n,f,u,c){for(;u>=0;--u){const r=n[u],k=(r.y1-f)*c;k>1e-6&&(r.y0-=k,r.y1-=k),f=r.y0-m}}function E({sourceLinks:n,targetLinks:f}){if(l===void 0){for(const{source:{sourceLinks:u}}of f)u.sort(ht);for(const{target:{targetLinks:u}}of n)u.sort(ut)}}function A(n){if(l===void 0)for(const{sourceLinks:f,targetLinks:u}of n)f.sort(ht),u.sort(ut)}function z(n,f){let u=n.y0-(n.sourceLinks.length-1)*m/2;for(const{target:c,width:r}of n.sourceLinks){if(c===f)break;u+=r+m}for(const{source:c,width:r}of f.targetLinks){if(c===n)break;u-=r}return u}function I(n,f){let u=f.y0-(f.targetLinks.length-1)*m/2;for(const{source:c,width:r}of f.targetLinks){if(c===n)break;u+=r+m}for(const{target:c,width:r}of n.sourceLinks){if(c===f)break;u-=r}return u}return b}var st=Math.PI,rt=2*st,V=1e-6,Rt=rt-V;function ot(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function kt(){return new ot}ot.prototype=kt.prototype={constructor:ot,moveTo:function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},quadraticCurveTo:function(t,e,i,a){this._+="Q"+ +t+","+ +e+","+(this._x1=+i)+","+(this._y1=+a)},bezierCurveTo:function(t,e,i,a,h,d){this._+="C"+ +t+","+ +e+","+ +i+","+ +a+","+(this._x1=+h)+","+(this._y1=+d)},arcTo:function(t,e,i,a,h){t=+t,e=+e,i=+i,a=+a,h=+h;var d=this._x1,m=this._y1,_=i-t,s=a-e,o=d-t,l=m-e,x=o*o+l*l;if(h<0)throw new Error("negative radius: "+h);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(x>V)if(!(Math.abs(l*_-s*o)>V)||!h)this._+="L"+(this._x1=t)+","+(this._y1=e);else{var v=i-d,y=a-m,b=_*_+s*s,M=v*v+y*y,T=Math.sqrt(b),N=Math.sqrt(x),C=h*Math.tan((st-Math.acos((b+x-M)/(2*T*N)))/2),$=C/N,R=C/T;Math.abs($-1)>V&&(this._+="L"+(t+$*o)+","+(e+$*l)),this._+="A"+h+","+h+",0,0,"+ +(l*v>o*y)+","+(this._x1=t+R*_)+","+(this._y1=e+R*s)}},arc:function(t,e,i,a,h,d){t=+t,e=+e,i=+i,d=!!d;var m=i*Math.cos(a),_=i*Math.sin(a),s=t+m,o=e+_,l=1^d,x=d?a-h:h-a;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+s+","+o:(Math.abs(this._x1-s)>V||Math.abs(this._y1-o)>V)&&(this._+="L"+s+","+o),i&&(x<0&&(x=x%rt+rt),x>Rt?this._+="A"+i+","+i+",0,1,"+l+","+(t-m)+","+(e-_)+"A"+i+","+i+",0,1,"+l+","+(this._x1=s)+","+(this._y1=o):x>V&&(this._+="A"+i+","+i+",0,"+ +(x>=st)+","+l+","+(this._x1=t+i*Math.cos(h))+","+(this._y1=e+i*Math.sin(h))))},rect:function(t,e,i,a){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +i+"v"+ +a+"h"+-i+"Z"},toString:function(){return this._}};function dt(t){return function(){return t}}function Ft(t){return t[0]}function Vt(t){return t[1]}var Wt=Array.prototype.slice;function Ut(t){return t.source}function Gt(t){return t.target}function Yt(t){var e=Ut,i=Gt,a=Ft,h=Vt,d=null;function m(){var _,s=Wt.call(arguments),o=e.apply(this,s),l=i.apply(this,s);if(d||(d=_=kt()),t(d,+a.apply(this,(s[0]=o,s)),+h.apply(this,s),+a.apply(this,(s[0]=l,s)),+h.apply(this,s)),_)return d=null,_+""||null}return m.source=function(_){return arguments.length?(e=_,m):e},m.target=function(_){return arguments.length?(i=_,m):i},m.x=function(_){return arguments.length?(a=typeof _=="function"?_:dt(+_),m):a},m.y=function(_){return arguments.length?(h=typeof _=="function"?_:dt(+_),m):h},m.context=function(_){return arguments.length?(d=_??null,m):d},m}function qt(t,e,i,a,h){t.moveTo(e,i),t.bezierCurveTo(e=(e+a)/2,i,e,h,a,h)}function Ht(){return Yt(qt)}function Xt(t){return[t.source.x1,t.y0]}function Qt(t){return[t.target.x0,t.y1]}function Kt(){return Ht().source(Xt).target(Qt)}var at=function(){var t=p(function(_,s,o,l){for(o=o||{},l=_.length;l--;o[_[l]]=s);return o},"o"),e=[1,9],i=[1,10],a=[1,5,10,12],h={trace:p(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:p(function(s,o,l,x,v,y,b){var M=y.length-1;switch(v){case 7:const T=x.findOrCreateNode(y[M-4].trim().replaceAll('""','"')),N=x.findOrCreateNode(y[M-2].trim().replaceAll('""','"')),C=parseFloat(y[M].trim());x.addLink(T,N,C);break;case 8:case 9:case 11:this.$=y[M];break;case 10:this.$=y[M-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:i},{1:[2,6],7:11,10:[1,12]},t(i,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(a,[2,8]),t(a,[2,9]),{19:[1,16]},t(a,[2,11]),{1:[2,1]},{1:[2,5]},t(i,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:i},{15:18,16:7,17:8,18:e,20:i},{18:[1,19]},t(i,[2,3]),{12:[1,20]},t(a,[2,10]),{15:21,16:7,17:8,18:e,20:i},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:p(function(s,o){if(o.recoverable)this.trace(s);else{var l=new Error(s);throw l.hash=o,l}},"parseError"),parse:p(function(s){var o=this,l=[0],x=[],v=[null],y=[],b=this.table,M="",T=0,N=0,C=2,$=1,R=y.slice.call(arguments,1),S=Object.create(this.lexer),P={yy:{}};for(var B in this.yy)Object.prototype.hasOwnProperty.call(this.yy,B)&&(P.yy[B]=this.yy[B]);S.setInput(s,P.yy),P.yy.lexer=S,P.yy.parser=this,typeof S.yylloc>"u"&&(S.yylloc={});var O=S.yylloc;y.push(O);var D=S.options&&S.options.ranges;typeof P.yy.parseError=="function"?this.parseError=P.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function g(L){l.length=l.length-2*L,v.length=v.length-L,y.length=y.length-L}p(g,"popStack");function E(){var L;return L=x.pop()||S.lex()||$,typeof L!="number"&&(L instanceof Array&&(x=L,L=x.pop()),L=o.symbols_[L]||L),L}p(E,"lex");for(var A,z,I,n,f={},u,c,r,k;;){if(z=l[l.length-1],this.defaultActions[z]?I=this.defaultActions[z]:((A===null||typeof A>"u")&&(A=E()),I=b[z]&&b[z][A]),typeof I>"u"||!I.length||!I[0]){var w="";k=[];for(u in b[z])this.terminals_[u]&&u>C&&k.push("'"+this.terminals_[u]+"'");S.showPosition?w="Parse error on line "+(T+1)+`:
|
|
2
2
|
`+S.showPosition()+`
|
|
3
3
|
Expecting `+k.join(", ")+", got '"+(this.terminals_[A]||A)+"'":w="Parse error on line "+(T+1)+": Unexpected "+(A==$?"end of input":"'"+(this.terminals_[A]||A)+"'"),this.parseError(w,{text:S.match,token:this.terminals_[A]||A,line:S.yylineno,loc:O,expected:k})}if(I[0]instanceof Array&&I.length>1)throw new Error("Parse Error: multiple actions possible at state: "+z+", token: "+A);switch(I[0]){case 1:l.push(A),v.push(S.yytext),y.push(S.yylloc),l.push(I[1]),A=null,N=S.yyleng,M=S.yytext,T=S.yylineno,O=S.yylloc;break;case 2:if(c=this.productions_[I[1]][1],f.$=v[v.length-c],f._$={first_line:y[y.length-(c||1)].first_line,last_line:y[y.length-1].last_line,first_column:y[y.length-(c||1)].first_column,last_column:y[y.length-1].last_column},D&&(f._$.range=[y[y.length-(c||1)].range[0],y[y.length-1].range[1]]),n=this.performAction.apply(f,[M,N,T,P.yy,I[1],v,y].concat(R)),typeof n<"u")return n;c&&(l=l.slice(0,-1*c*2),v=v.slice(0,-1*c),y=y.slice(0,-1*c)),l.push(this.productions_[I[1]][0]),v.push(f.$),y.push(f._$),r=b[l[l.length-2]][l[l.length-1]],l.push(r);break;case 3:return!0}}return!0},"parse")},d=function(){var _={EOF:1,parseError:p(function(o,l){if(this.yy.parser)this.yy.parser.parseError(o,l);else throw new Error(o)},"parseError"),setInput:p(function(s,o){return this.yy=o||this.yy||{},this._input=s,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:p(function(){var s=this._input[0];this.yytext+=s,this.yyleng++,this.offset++,this.match+=s,this.matched+=s;var o=s.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),s},"input"),unput:p(function(s){var o=s.length,l=s.split(/(?:\r\n?|\n)/g);this._input=s+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var x=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1&&(this.yylineno-=l.length-1);var v=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===x.length?this.yylloc.first_column:0)+x[x.length-l.length].length-l[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[v[0],v[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},"unput"),more:p(function(){return this._more=!0,this},"more"),reject:p(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:p(function(s){this.unput(this.match.slice(s))},"less"),pastInput:p(function(){var s=this.matched.substr(0,this.matched.length-this.match.length);return(s.length>20?"...":"")+s.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:p(function(){var s=this.match;return s.length<20&&(s+=this._input.substr(0,20-s.length)),(s.substr(0,20)+(s.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:p(function(){var s=this.pastInput(),o=new Array(s.length+1).join("-");return s+this.upcomingInput()+`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as d}from"./
|
|
1
|
+
import{_ as d}from"./Djh3G2Nf.js";import{_ as f}from"./C80Zs8U0.js";import{d as u,e as p,f as t,m as n,w as a,z as s,g as i,o as g,A as _}from"./D7uoAo-G.js";import{_ as r}from"./BNnChlxR.js";const x={class:"p-2 flex flex-col items-center justify-center h-full gap-2"},c={class:"text-muted-foreground mt-4"},v={class:"flex items-center pt-3 text-muted-foreground gap-0.5 text-sm"},b={class:"flex items-center pt-1 text-muted-foreground gap-0.5 text-sm"},B={class:"flex items-center pt-1 text-muted-foreground gap-0.5 text-sm"},C={class:"flex items-center pt-1 text-muted-foreground gap-0.5 text-sm"},V=u({__name:"index",setup(k){return(w,e)=>{const l=f,m=d,o=_;return g(),p("div",x,[t(m,{class:"rounded-2xl size-40"},{default:a(()=>[t(l,{src:"/logo.png",alt:"@unovue"})]),_:1}),n("div",c,[e[0]||(e[0]=s(" Click on a database table from the sidebar to begin ")),t(o,{name:"hugeicons:artificial-intelligence-08",class:"size-4 min-w-4"})]),n("div",v,[t(o,{name:"hugeicons:settings-01"}),e[2]||(e[2]=s(" Open setting ")),t(i(r),{class:"pl-2"},{default:a(()=>e[1]||(e[1]=[s("(⌘,)")])),_:1})]),n("div",b,[t(o,{name:"hugeicons:command"}),e[4]||(e[4]=s(" Command Palette ")),t(i(r),{class:"pl-2"},{default:a(()=>e[3]||(e[3]=[s("(⌘K or ⌘P)")])),_:1})]),n("div",B,[t(o,{name:"hugeicons:sidebar-left"}),e[6]||(e[6]=s(" Toggle left sidebar ")),t(i(r),{class:"pl-2"},{default:a(()=>e[5]||(e[5]=[s("(⌘B)")])),_:1})]),n("div",C,[t(o,{name:"hugeicons:sidebar-right"}),e[8]||(e[8]=s(" Toggle right sidebar ")),t(i(r),{class:"pl-2"},{default:a(()=>e[7]||(e[7]=[s("(⇧⌘B)")])),_:1})])])}}});export{V as default};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import{_ as qt}from"./BOVFFCPB.js";import{d as G,e as P,m as a,t as h,F as Q,s as X,o as d,k as B,w as i,z as k,bf as de,f as s,A as se,l as F,a4 as ae,n as me,r as I,an as Z,g as e,bg as ee,_ as Je,i as oe,h as He,bP as We,x as Qe,B as Ge,bc as zt,cD as Ke,bj as Xe,cE as At,c as g,bh as Ye,bL as Ot,bM as Vt,bN as Nt,bO as Mt,bE as jt,bQ as Ut,bR as Jt,a8 as Ht,cF as Wt,bp as Qt,G as ye,E as Ze,a0 as et,bw as Gt,O as Kt,aY as Xt,R as Yt,af as Zt,I as Le,aF as qe,bx as eo,by as to,bz as oo}from"./D7uoAo-G.js";import{_ as tt,a as ot}from"./CxZK-Vs6.js";import{_ as st,g as so,a as at}from"./BNyWhB4W.js";import{_ as ao}from"./DDQU7vSH.js";import{u as no}from"./Clm3Z8VL.js";const lo={class:"rounded-lg border bg-muted/20 p-4"},ro={class:"space-y-4"},io={class:"text-sm font-medium"},uo={class:"mt-1 text-xs text-muted-foreground"},co={class:"text-xs text-muted-foreground"},mo={class:"mt-2 flex flex-wrap gap-2"},po={class:"mt-1 text-sm text-muted-foreground"},fo={class:"mt-1 text-sm font-medium"},ze=G({__name:"BackupProfileCard",props:{title:{},description:{},formats:{},toolHint:{},targetName:{},formatsLabel:{default:"Supported Files"}},setup(p){return(l,t)=>{const o=de;return d(),P("div",lo,[a("div",ro,[a("div",null,[a("p",io,h(l.title),1),a("p",uo,h(l.description),1)]),a("div",null,[a("p",co,h(l.formatsLabel),1),a("div",mo,[(d(!0),P(Q,null,X(l.formats,u=>(d(),B(o,{key:u.format,variant:"outline",class:"font-normal"},{default:i(()=>[k(h(u.extension),1)]),_:2},1024))),128))])]),a("div",null,[t[0]||(t[0]=a("p",{class:"text-xs text-muted-foreground"},"Runtime Tools",-1)),a("p",po,h(l.toolHint),1)]),a("div",null,[t[1]||(t[1]=a("p",{class:"text-xs text-muted-foreground"},"Target",-1)),a("p",fo,h(l.targetName),1)])])])}}}),vo={class:"text-muted-foreground"},go={class:"space-y-2 text-xs"},_o={class:"mt-4 pt-2 border-t border-border/40 flex flex-wrap items-center gap-3"},bo=`brew install postgresql # macOS
|
|
2
|
+
apt-get install postgresql-client # Linux
|
|
3
|
+
# Windows: Download from https://www.postgresql.org/download/windows/`,ho=`brew install mysql # macOS
|
|
4
|
+
apt-get install mysql-client # Linux
|
|
5
|
+
# Windows: Download from https://dev.mysql.com/downloads/`,yo=`brew install sqlite # macOS
|
|
6
|
+
apt-get install sqlite3 # Linux
|
|
7
|
+
# Windows: Download from https://www.sqlite.org/download.html`,xo=G({__name:"BackupRestoreUnsupportedAlert",props:{supportMessage:{},connectionType:{},isLoading:{type:Boolean}},emits:["reload"],setup(p,{emit:l}){const t=l;return(o,u)=>{const m=se,y=st,b=ao,r=ae,f=ot,x=tt;return d(),B(x,null,{default:i(()=>[s(y,{class:"flex items-center font-medium gap-1"},{default:i(()=>[s(m,{name:"hugeicons:alert-circle",class:"size-4"}),u[1]||(u[1]=k(" Native Tools Required"))]),_:1}),s(f,{class:"space-y-3"},{default:i(()=>[a("p",vo,h(o.supportMessage),1),a("div",go,[u[2]||(u[2]=a("p",{class:"font-medium"},"Installation instructions:",-1)),o.connectionType==="postgres"?(d(),B(b,{key:0,code:bo,language:"bash"})):o.connectionType==="mysql"||o.connectionType==="mariadb"?(d(),B(b,{key:1,code:ho,language:"bash"})):o.connectionType==="sqlite3"?(d(),B(b,{key:2,code:yo,language:"bash"})):F("",!0)]),a("div",_o,[s(r,{size:"sm",variant:"outline",class:"cursor-pointer transition-all duration-300 hover:bg-accent hover:text-accent-foreground active:scale-95 group",disabled:o.isLoading,onClick:u[0]||(u[0]=_=>t("reload"))},{default:i(()=>[s(m,{name:"hugeicons:refresh",class:me(["size-4 mr-2 shrink-0",o.isLoading?"animate-spin":"transition-transform duration-500 group-hover:rotate-180"])},null,8,["class"]),k(" "+h(o.isLoading?"Checking...":"Check Again"),1)]),_:1},8,["disabled"]),u[3]||(u[3]=a("span",{class:"text-[11px] text-muted-foreground"}," Installed the tools? Click check again to re-detect capabilities and enable Backup & Restore. ",-1))])]),_:1})]),_:1})}}}),ko={class:"space-y-4"},wo={class:"space-y-2"},$o={class:"grid gap-2 sm:grid-cols-2"},Co=["onClick"],So={class:"flex items-center justify-between gap-2"},Po={class:"text-sm font-medium"},To={class:"mt-1 text-xs text-muted-foreground"},Do={class:"space-y-2"},Eo={key:0,class:"space-y-2"},Bo={key:0,class:"flex flex-wrap gap-2 max-h-32 overflow-y-auto p-2 border rounded-md"},Io={key:1,class:"text-xs text-destructive"},Fo={key:2,class:"text-xs text-muted-foreground"},Ro={key:3,class:"text-xs text-muted-foreground"},Ae="plain",Lo=G({__name:"ExportOptionsForm",props:{schemas:{},schemaLoading:{type:Boolean},schemaError:{},loading:{type:Boolean},disabled:{type:Boolean},formatOptions:{},defaultFormat:{},toolHint:{}},emits:["submit"],setup(p,{emit:l}){var f;const t=p,o=l,u=I("full"),m=I(t.defaultFormat||((f=t.formatOptions[0])==null?void 0:f.format)||Ae),y=I([]);Z([()=>t.formatOptions,()=>t.defaultFormat],([x,_])=>{var w;x.some(D=>D.format===m.value)||(m.value=((w=x[0])==null?void 0:w.format)||_||Ae)},{immediate:!0});const b=[{value:"full",label:"Full (schema + data)"},{value:"schema-only",label:"Schema only (no data)"},{value:"data-only",label:"Data only (no schema)"}],r=()=>{const x={format:m.value,scope:u.value};x.schemas=y.value.length>0?y.value:t.schemas,o("submit",x)};return(x,_)=>{const w=We,D=He,v=Ge,T=Qe,E=Je,R=se,q=ae;return d(),P("div",ko,[a("div",wo,[s(e(ee),null,{default:i(()=>_[1]||(_[1]=[k("Backup Format")])),_:1}),a("div",$o,[(d(!0),P(Q,null,X(x.formatOptions,C=>(d(),P("button",{key:C.format,type:"button",class:me(["rounded-lg border p-3 text-left transition-colors",e(m)===C.format?"border-primary bg-primary/5":"hover:border-primary/40 hover:bg-muted/20"]),onClick:J=>m.value=C.format},[a("div",So,[a("p",Po,h(C.label),1),s(e(de),{variant:"secondary",class:"font-normal"},{default:i(()=>[k(h(C.extension),1)]),_:2},1024)]),a("p",To," Runtime uses "+h(t.toolHint||"Native database tools")+". ",1)],10,Co))),128))])]),a("div",Do,[s(e(ee),null,{default:i(()=>_[2]||(_[2]=[k("Export Scope")])),_:1}),s(E,{modelValue:e(u),"onUpdate:modelValue":_[0]||(_[0]=C=>oe(u)?u.value=C:null),size:"xs"},{default:i(()=>[s(D,null,{default:i(()=>[s(w,{placeholder:"Select scope"})]),_:1}),s(T,null,{default:i(()=>[(d(),P(Q,null,X(b,C=>s(v,{key:C.value,value:C.value},{default:i(()=>[k(h(C.label),1)]),_:2},1032,["value"])),64))]),_:1})]),_:1},8,["modelValue"])]),x.schemaLoading||x.schemaError||x.schemas.length>0?(d(),P("div",Eo,[s(e(ee),null,{default:i(()=>_[3]||(_[3]=[k("Schemas (optional)")])),_:1}),x.schemas.length>0?(d(),P("div",Bo,[(d(!0),P(Q,null,X(x.schemas,C=>(d(),B(e(de),{key:C,variant:e(y).includes(C)?"default":"outline",class:"cursor-pointer",onClick:()=>e(y).includes(C)?y.value=e(y).filter(J=>J!==C):e(y).push(C)},{default:i(()=>[k(h(C),1)]),_:2},1032,["variant","onClick"]))),128))])):F("",!0),x.schemaError?(d(),P("p",Io,h(x.schemaError),1)):x.schemaLoading?(d(),P("p",Fo," Loading schemas... ")):(d(),P("p",Ro,h(e(y).length?`${e(y).length} selected`:"All visible schemas"),1))])):F("",!0),s(q,{class:"w-full",disabled:x.loading||x.disabled,onClick:r},{default:i(()=>[x.loading?(d(),B(R,{key:0,name:"hugeicons:loading-03",class:"size-4 mr-2 animate-spin"})):(d(),B(R,{key:1,name:"lucide:download",class:"size-4 mr-2"})),k(" "+h(x.loading?"Creating Backup...":"Create Backup"),1)]),_:1},8,["disabled"])])}}}),qo={class:"relative mt-2 cursor-pointer rounded-lg border-2 border-dashed p-6 text-center transition-colors hover:border-primary/50"},zo=["accept"],Ao={key:0,class:"text-muted-foreground pointer-events-none"},Oo={class:"text-xs mt-1"},Vo={key:1,class:"flex items-center justify-center gap-3"},No={class:"text-left"},Mo={class:"text-sm font-medium"},jo={class:"text-xs text-muted-foreground"},Uo=G({__name:"ImportFileDropzone",props:{selectedFile:{},accept:{},extensionSummary:{}},emits:["change","clear"],setup(p){const l=t=>t<1024?`${t} B`:t<1048576?`${(t/1024).toFixed(1)} KB`:`${(t/1048576).toFixed(1)} MB`;return(t,o)=>{const u=ee,m=se,y=ae;return d(),P("div",null,[s(u,{class:"text-sm font-medium"},{default:i(()=>o[2]||(o[2]=[k("Backup File")])),_:1}),a("div",qo,[a("input",{type:"file",accept:t.accept,class:"absolute inset-0 w-full h-full opacity-0 cursor-pointer",onChange:o[0]||(o[0]=b=>t.$emit("change",b))},null,40,zo),t.selectedFile?(d(),P("div",Vo,[s(m,{name:"hugeicons:file-01",class:"size-8 text-primary"}),a("div",No,[a("p",Mo,h(t.selectedFile.name),1),a("p",jo,h(l(t.selectedFile.size)),1)]),s(y,{variant:"ghost",size:"icon",class:"ml-2 relative z-10",type:"button",onClick:o[1]||(o[1]=zt(b=>t.$emit("clear"),["stop"]))},{default:i(()=>[s(m,{name:"hugeicons:x-close",class:"size-4"})]),_:1})])):(d(),P("div",Ao,[s(m,{name:"hugeicons:upload-cloud-01",class:"size-10 mx-auto mb-2 opacity-50"}),o[3]||(o[3]=a("p",{class:"text-sm font-medium"},"Click to select a file",-1)),a("p",Oo,"Supports "+h(t.extensionSummary)+" backups",1)]))])])}}}),Jo={class:"space-y-3"},Ho={class:"grid grid-cols-2 gap-4"},Wo=G({__name:"ImportOptionsForm",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(p){const l=Ke(p,"modelValue"),t=(u,m)=>{l.value[u]=m},o=[{key:"clean",label:"Drop Objects First",id:"import-clean"},{key:"dataOnly",label:"Data Only",id:"import-data-only"},{key:"schemaOnly",label:"Schema Only",id:"import-schema-only"},{key:"exitOnError",label:"Exit on Error",id:"import-exit-on-error"}];return(u,m)=>{const y=ee,b=Xe;return d(),P("div",Jo,[s(y,{class:"text-sm font-medium"},{default:i(()=>m[0]||(m[0]=[k("Options")])),_:1}),a("div",Ho,[(d(),P(Q,null,X(o,r=>a("div",{key:r.key,class:"flex items-center space-x-2"},[s(b,{id:r.id,"model-value":l.value[r.key],"onUpdate:modelValue":f=>t(r.key,f)},null,8,["id","model-value","onUpdate:modelValue"]),s(y,{for:r.id,class:"text-sm"},{default:i(()=>[k(h(r.label),1)]),_:2},1032,["for"])])),64))])])}}}),Qo={class:"space-y-3 rounded-lg border border-dashed p-3"},Go={class:"flex items-start justify-between gap-3"},Ko={class:"space-y-1"},Xo={key:0,class:"text-xs text-muted-foreground"},Yo={key:0,class:"space-y-2"},Zo={key:1,class:"flex items-start justify-between gap-3 rounded-md bg-muted/40 px-3 py-2"},es={key:2,class:"text-xs text-muted-foreground"},ts={key:3,class:"grid gap-3 md:grid-cols-[180px_minmax(0,1fr)]"},os={class:"space-y-1"},ss={class:"space-y-1"},Oe=G({__name:"NativeToolSelector",props:At({title:{},description:{},detectedPaths:{},toolChoices:{},disabled:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(p){const l=p,t=Ke(p,"modelValue"),o=g(()=>l.detectedPaths.length>0),u=g(()=>t.value.useCustomPath||!o.value),m=g(()=>l.detectedPaths.length===1?"1 executable found":`${l.detectedPaths.length} executables found`),y=g(()=>{switch(t.value.customTool||l.toolChoices[0]){case"pg_dump":return"/Applications/Postgres.app/.../bin/pg_dump";case"pg_restore":return"/Applications/Postgres.app/.../bin/pg_restore";case"psql":return"/Applications/Postgres.app/.../bin/psql";case"mysqldump":return"/opt/homebrew/Cellar/mysql/.../bin/mysqldump";case"mysqlpump":return"/opt/homebrew/Cellar/mysql/.../bin/mysqlpump";case"mysql":return"/opt/homebrew/Cellar/mysql/.../bin/mysql";case"sqlite3":return"/usr/local/bin/sqlite3";default:return"/usr/local/bin/native-tool"}}),b=_=>{t.value.selectedPath=_},r=_=>{t.value.customTool=_},f=_=>{t.value.useCustomPath=o.value?_:!0},x=_=>`${_.tool} • ${_.path}`;return(_,w)=>{const D=ee,v=de,T=We,E=He,R=Ge,q=Qe,C=Je,J=Xe,S=Ye;return d(),P("div",Qo,[a("div",Go,[a("div",Ko,[s(D,{class:"text-sm font-medium"},{default:i(()=>[k(h(_.title),1)]),_:1}),_.description?(d(),P("p",Xo,h(_.description),1)):F("",!0)]),e(o)?(d(),B(v,{key:0,variant:"secondary",class:"shrink-0"},{default:i(()=>[k(h(e(m)),1)]),_:1})):F("",!0)]),e(o)&&!t.value.useCustomPath?(d(),P("div",Yo,[s(D,{class:"text-xs font-medium text-muted-foreground"},{default:i(()=>w[4]||(w[4]=[k(" Detected Executable ")])),_:1}),s(C,{"model-value":t.value.selectedPath,disabled:_.disabled,size:"xs","onUpdate:modelValue":w[0]||(w[0]=$=>b(String($)))},{default:i(()=>[s(E,null,{default:i(()=>[s(T,{placeholder:"Choose a native tool"})]),_:1}),s(q,null,{default:i(()=>[(d(!0),P(Q,null,X(_.detectedPaths,$=>(d(),B(R,{key:$.path,value:$.path},{default:i(()=>[k(h(x($)),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1},8,["model-value","disabled"])])):F("",!0),e(o)?(d(),P("div",Zo,[w[5]||(w[5]=a("div",{class:"space-y-1"},[a("p",{class:"text-sm font-medium"},"Use custom executable path"),a("p",{class:"text-xs text-muted-foreground"}," Point HeraQ to a specific binary when you need a different version. ")],-1)),s(J,{"model-value":t.value.useCustomPath,disabled:_.disabled,"onUpdate:modelValue":w[1]||(w[1]=$=>f(!!$))},null,8,["model-value","disabled"])])):(d(),P("p",es," No executable was detected automatically. Enter the full path to the driver you want to run. ")),e(u)?(d(),P("div",ts,[a("div",os,[s(D,{class:"text-xs font-medium text-muted-foreground"},{default:i(()=>w[6]||(w[6]=[k(" Tool ")])),_:1}),s(C,{"model-value":t.value.customTool||_.toolChoices[0],disabled:_.disabled,size:"sm","onUpdate:modelValue":w[2]||(w[2]=$=>r(String($)))},{default:i(()=>[s(E,null,{default:i(()=>[s(T,{placeholder:"Choose a tool"})]),_:1}),s(q,null,{default:i(()=>[(d(!0),P(Q,null,X(_.toolChoices,$=>(d(),B(R,{key:$,value:$},{default:i(()=>[k(h($),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1},8,["model-value","disabled"])]),a("div",ss,[s(D,{class:"text-xs font-medium text-muted-foreground"},{default:i(()=>w[7]||(w[7]=[k(" Executable Path ")])),_:1}),s(S,{modelValue:t.value.customPath,"onUpdate:modelValue":w[3]||(w[3]=$=>t.value.customPath=$),disabled:_.disabled,placeholder:e(y),class:"h-8!",autocomplete:"off",spellcheck:"false"},null,8,["modelValue","disabled","placeholder"]),w[8]||(w[8]=a("p",{class:"text-xs text-muted-foreground"}," Enter the absolute path to the binary you want HeraQ to execute. ",-1))])])):F("",!0)])}}}),as={class:"space-y-3 py-1"},xe="restore backup",ns=G({__name:"RestoreConfirmDialog",props:{open:{type:Boolean}},emits:["confirm","cancel"],setup(p,{emit:l}){const t=p,o=l,u=I("");Z(()=>t.open,b=>{b&&(u.value="")});const m=g(()=>u.value===xe),y=()=>{m.value&&o("confirm")};return(b,r)=>{const f=se,x=Nt,_=Mt,w=Vt,D=ee,v=Ye,T=ae,E=Ut,R=Jt,q=Ot;return d(),B(q,{open:b.open,"onUpdate:open":r[2]||(r[2]=C=>!C&&b.$emit("cancel"))},{default:i(()=>[s(R,{class:"max-w-sm"},{default:i(()=>[s(w,null,{default:i(()=>[s(x,{class:"flex items-center gap-2 text-destructive"},{default:i(()=>[s(f,{name:"hugeicons:alert-02",class:"size-5"}),r[3]||(r[3]=k(" Confirm Restore "))]),_:1}),s(_,null,{default:i(()=>r[4]||(r[4]=[k(" This will overwrite existing data in the target database. This action cannot be undone. ")])),_:1})]),_:1}),a("div",as,[s(D,{for:"restore-confirm-input"},{default:i(()=>[r[5]||(r[5]=k(" Type ")),a("code",{class:"rounded bg-muted px-1 py-0.5 text-xs font-mono"},h(xe)),r[6]||(r[6]=k(" to continue: "))]),_:1}),s(v,{id:"restore-confirm-input",modelValue:e(u),"onUpdate:modelValue":r[0]||(r[0]=C=>oe(u)?u.value=C:null),placeholder:xe,autocomplete:"off",onKeydown:jt(y,["enter"])},null,8,["modelValue"])]),s(E,null,{default:i(()=>[s(T,{variant:"outline",onClick:r[1]||(r[1]=C=>b.$emit("cancel"))},{default:i(()=>r[7]||(r[7]=[k("Cancel")])),_:1}),s(T,{variant:"destructive",disabled:!e(m),onClick:y},{default:i(()=>r[8]||(r[8]=[k(" Restore ")])),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1},8,["open"])}}}),ls={class:"rounded-lg border bg-muted/30 p-4"},rs={class:"flex items-center justify-between gap-4"},is={class:"text-sm font-medium"},us={class:"text-xs text-muted-foreground"},cs={class:"flex shrink-0 items-center gap-2"},ds={class:"text-sm font-medium"},ms={class:"mt-3 h-2 overflow-hidden rounded-full bg-border/60"},Ve=G({__name:"TransferProgressCard",props:{tool:{},stage:{},statusMessage:{},progress:{},isRunning:{type:Boolean},progressClass:{default:"bg-primary"},actionLabel:{default:void 0},actionDisabled:{type:Boolean,default:!1}},emits:["action"],setup(p,{emit:l}){const t=l;return(o,u)=>{const m=se,y=ae;return d(),P("div",ls,[a("div",rs,[a("div",null,[a("p",is,h(o.tool)+" · "+h(o.stage),1),a("p",us,h(o.statusMessage||"Preparing job..."),1)]),a("div",cs,[o.actionLabel?(d(),B(y,{key:0,type:"button",variant:"outline",size:"sm",disabled:o.actionDisabled,onClick:u[0]||(u[0]=b=>t("action"))},{default:i(()=>[s(m,{name:"lucide:folder-open",class:"size-4 mr-2"}),k(" "+h(o.actionLabel),1)]),_:1},8,["disabled"])):F("",!0),a("span",ds,h(o.progress)+"%",1)])]),a("div",ms,[a("div",{class:me(["h-full rounded-full transition-all duration-300",o.progressClass]),style:Ht({width:`${Math.max(o.progress,o.isRunning?8:0)}%`})},null,6)])])}}});function Ne(p){return!!(p&&(p.status==="completed"||p.status==="error"))}const nt=()=>{const p=I(null),l=I(null),t=I(null),o=I(!1);let u=null,m=null;const y=v=>{u==null||u(v),u=null,m=null},b=v=>{m==null||m(v),u=null,m=null},r=async()=>{if(!t.value)throw new Error("Backup job status URL is missing.");if(o.value){if(p.value)return p.value;throw new Error("Backup job refresh is already in progress.")}o.value=!0;try{const v=await $fetch(t.value);return p.value=v,v.status==="error"&&(l.value=v.error||v.message),Ne(v)&&(f(),y(v)),v}catch(v){const T=v instanceof Error?v:new Error("Failed to refresh backup job status.");throw l.value=T.message,f(),b(T),T}finally{o.value=!1}},{pause:f,resume:x,isActive:_}=Wt(()=>{r()},1e3,{immediate:!1,immediateCallback:!1}),w=async v=>{t.value=v,l.value=null;const T=await r();return Ne(T)?T:(x(),await new Promise((E,R)=>{u=E,m=R}))},D=()=>{f(),t.value=null,p.value=null,l.value=null,o.value=!1,u=null,m=null};return Qt(()=>{f()}),{job:p,error:l,isRefreshing:o,isPolling:_,progress:g(()=>{var v;return((v=p.value)==null?void 0:v.progress)??0}),message:g(()=>{var v;return((v=p.value)==null?void 0:v.message)??null}),stage:g(()=>{var v;return((v=p.value)==null?void 0:v.stage)??"queued"}),status:g(()=>{var v;return((v=p.value)==null?void 0:v.status)??"queued"}),isRunning:g(()=>{var v,T;return((v=p.value)==null?void 0:v.status)==="queued"||((T=p.value)==null?void 0:T.status)==="running"}),monitorJob:w,refresh:r,reset:D}},ps=p=>(p||"database").trim().replace(/[\\/:*?"<>|]+/g,"-").replace(/\s+/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"")||"database",fs=()=>new Date().toISOString().replace(/[:.]/g,"-"),vs=(p,l)=>`${p.replace(/[\\/]$/,"")}/${l}`,Me=p=>!Number.isFinite(p)||p<=0?"0.0s":`${(p/1e3).toFixed(1)}s`,gs=(p,l)=>{const t=I(null),o=I(null),u=nt(),{downloadStream:m,isDownloading:y,downloadedBytes:b}=no(),r=g(()=>u.isRunning.value||y.value),f=g(()=>o.value||y.value?100:u.progress.value),x=g(()=>o.value?`Backup is ready. ${ye(o.value.size)} generated in ${Me(o.value.duration)}.`:y.value?`Saving backup artifact (${ye(b.value)})...`:u.message.value),_=g(()=>u.job.value),w=async(T,E)=>{var J,S,$,M,A,W;if(!p.value)return t.value="No database connection provided",!1;const{options:R,runtime:q,promptForSaveLocation:C}=E;if(l!=null&&l.value&&!l.value.exportAvailable&&!((J=q==null?void 0:q.executablePath)!=null&&J.trim()))return t.value=l.value.exportMessage,!1;t.value=null,o.value=null;try{let L=((S=E.saveDirectoryPath)==null?void 0:S.trim())||void 0,O=(($=E.saveFilePath)==null?void 0:$.trim())||void 0;const K=`${ps(T)}_backup_${fs()}${D((M=p.value)==null?void 0:M.type,R.format)}`;if(!L&&!O&&C&&((A=window.electronAPI)!=null&&A.window.pickDirectory)){const z=await window.electronAPI.window.pickDirectory();if(!z)return t.value="No save location was selected.",!1;L=z}!O&&L&&(O=vs(L,K));const H=await $fetch("/api/database-export/export-database",{method:"POST",body:{...Ze(p.value),databaseName:T,options:R,runtime:q}}),U=await u.monitorJob(H.statusUrl);if(U.status==="error")return t.value=U.error||U.message,!1;if(!U.downloadUrl||!U.downloadFileName)return t.value="Export finished but no download artifact was returned.",!1;const te=await m({url:U.downloadUrl,method:"GET",filename:O?K:U.downloadFileName||K,saveFilePath:O,openPath:L,successTitle:"Backup is ready",getSuccessDescription:z=>`${ye(z)} generated in ${Me(U.duration||0)}.`});return te.success?(o.value={fileName:O?K:U.downloadFileName,duration:U.duration||0,size:te.size||0,saveDirectoryPath:L,saveFilePath:O},!0):(t.value=((W=te.error)==null?void 0:W.message)||"Download failed.",!1)}catch(L){return t.value=L instanceof Error?L.message:"Export failed. Check the connection and backup configuration.",console.error("Export error:",L),!1}},D=(T,E)=>so(T,E);return{isExporting:r,progress:f,error:t,lastExport:o,currentJob:_,statusMessage:x,exportDatabase:w,reset:()=>{u.reset(),t.value=null,o.value=null}}},_s=(p,l)=>{const t=nt(),o=g(()=>t.isRunning.value),u=g(()=>t.progress.value),m=g(()=>t.message.value),y=g(()=>t.job.value),b=I(null),r=I(null),f=I(null),x=I(null),_=I({clean:!1,dataOnly:!1,schemaOnly:!1,exitOnError:!0}),w=g(()=>{var S;return(S=p.value)==null?void 0:S.type}),D=g(()=>{var S;return((S=l.value)==null?void 0:S.formatOptions)||[]}),v=g(()=>at(w.value)),T=g(()=>{var S;return((S=l.value)==null?void 0:S.acceptExtensions)||D.value.map($=>$.extension).join(" / ")||".sql"}),E=()=>{f.value=null,x.value&&(x.value.value="")};return{isImporting:o,progress:u,statusMessage:m,currentJob:y,error:b,success:r,selectedFile:f,fileInputRef:x,options:_,extensionSummary:T,clearSelectedFile:E,openFilePicker:()=>{var S;(S=x.value)==null||S.click()},onFileSelect:S=>{var W;const $=S.target;if(!((W=$.files)!=null&&W.length))return;const M=$.files[0];if(!D.value.some(L=>M.name.toLowerCase().endsWith(L.extension.toLowerCase()))){E(),b.value=`Unsupported file type. Use ${T.value} for ${v.value}.`,r.value=null;return}f.value=M,b.value=null,r.value=null},importDatabase:async S=>{var $,M;if(!(!f.value||!p.value)){if(l.value&&!l.value.importAvailable&&!(($=S==null?void 0:S.executablePath)!=null&&$.trim())){b.value=l.value.importMessage,r.value=null;return}b.value=null,r.value=null;try{const A=new FormData;A.append("file",f.value);const W=Ze(p.value);Object.entries(W).forEach(([K,H])=>{H!==void 0&&A.append(K,typeof H=="object"?JSON.stringify(H):String(H))}),A.append("options",JSON.stringify(_.value)),(M=S==null?void 0:S.executablePath)!=null&&M.trim()&&A.append("runtime",JSON.stringify(S));const L=await $fetch("/api/database-import/import-database",{method:"POST",body:A}),O=await t.monitorJob(L.statusUrl);if(O.status==="completed"){r.value=O.message||"Database imported successfully",E();return}b.value=O.error||O.message||"Import failed"}catch(A){b.value=A instanceof Error?A.message:"Import failed. Check the backup file and connection compatibility.",console.error("Import error:",A)}}},reset:()=>{t.reset(),b.value=null,r.value=null,E()}}},bs=p=>{const l=I(null),t=I(!1),o=I(null);let u=0;const m=async()=>{const y=p.value,b=++u;if(!y){l.value=null,o.value=null,t.value=!1;return}t.value=!0,o.value=null;try{const r=await $fetch("/api/database-backup/capability",{query:{type:y,discoverAll:et()}});if(b!==u)return;l.value=r}catch(r){if(b!==u)return;l.value=null,o.value=r instanceof Error?r.message:"Unable to detect native backup tools."}finally{b===u&&(t.value=!1)}};return Z(p,()=>{m()},{immediate:!0}),{capability:l,isLoading:t,error:o,refresh:m}};function je(){return{useCustomPath:!1,selectedPath:"",customPath:"",customTool:""}}const Ue=(p,l,t)=>{const o=I(je()),u=g(()=>{const r=new Set(l.value);return p.value.filter(f=>r.size===0||r.has(f.tool))}),m=g(()=>u.value.find(r=>r.path===o.value.selectedPath)||null);Z([u,l,t],([r,f,x])=>{var _;if(!x){o.value=je();return}if(f.includes(o.value.customTool)||(o.value.customTool=f[0]||""),r.some(w=>w.path===o.value.selectedPath)||(o.value.selectedPath=((_=r[0])==null?void 0:_.path)||""),!r.length){o.value.useCustomPath=!0;return}o.value.useCustomPath&&!o.value.customPath.trim()&&(o.value.useCustomPath=!1)},{immediate:!0});const y=g(()=>{if(t.value){if(o.value.useCustomPath){const r=o.value.customPath.trim(),f=o.value.customTool;return!r||!f?void 0:{tool:f,executablePath:r}}if(m.value)return{tool:m.value.tool,executablePath:m.value.path}}}),b=g(()=>!t.value||!!y.value);return{selection:o,filteredToolPaths:u,runtimeSelection:y,canSubmit:b}},hs={class:"flex flex-col h-full gap-3 overflow-hidden p-3"},ys={class:"font-medium text-foreground"},xs={class:"text-muted-foreground/60"},ks={class:"flex items-center justify-between gap-2"},ws={class:"text-xs text-muted-foreground"},$s={class:"relative flex-1 overflow-y-auto rounded-lg border bg-background p-4"},Cs={class:"space-y-4"},Ss={class:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between"},Ps={class:"mt-1 text-sm text-muted-foreground"},Ts={class:"grid gap-4 xl:grid-cols-[minmax(0,1fr)_280px]"},Ds={class:"rounded-lg border p-4 space-y-4"},Es={class:"space-y-4"},Bs={class:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between"},Is={class:"mt-1 text-sm text-muted-foreground"},Fs={class:"grid gap-4 xl:grid-cols-[minmax(0,1fr)_280px]"},Rs={class:"rounded-lg border p-4 space-y-4"},Ls={class:"text-muted-foreground text-xs inline-flex items-center gap-0.5"},qs={class:"text-destructive gap-0.5 items-center inline-flex"},Us=G({__name:"BackupRestoreContainer",props:{connectionId:{},initialTab:{}},setup(p){const l=p,{workspaceId:t}=Gt(),o=Kt(),u=Xt(),m=g(()=>{if(l.connectionId)return o.connections.find(n=>n.id===l.connectionId)}),y=g(()=>{var n;return(n=m.value)==null?void 0:n.type}),b=g(()=>{var n,c;return((n=m.value)==null?void 0:n.database)||((c=m.value)==null?void 0:c.name)||"database"}),r=g(()=>at(y.value)),{capability:f,isLoading:x,error:_,refresh:w}=bs(y),D=I(!1),v=g(()=>et()),T=async()=>{D.value=!0;try{await w()}finally{D.value=!1}},E=g(()=>{var n;return((n=f.value)==null?void 0:n.supported)??!1}),R=g(()=>{var n;return((n=f.value)==null?void 0:n.exportAvailable)??!1}),q=g(()=>{var n;return((n=f.value)==null?void 0:n.importAvailable)??!1}),C=g(()=>E.value&&(R.value||v.value)),J=g(()=>E.value&&(q.value||v.value)),S=g(()=>_.value?_.value:f.value?f.value.supportMessage:y.value?`Checking ${r.value} native tools...`:"Select a connection to open database tools."),$=g(()=>{var n;return((n=f.value)==null?void 0:n.toolHint)||"Native database tools"}),M=g(()=>{var n;return((n=f.value)==null?void 0:n.formatOptions)||[]}),A=g(()=>{var n;return((n=f.value)==null?void 0:n.acceptExtensions)||".sql"}),W=g(()=>M.value.map(n=>n.extension).join(" / ")||".sql"),L=g(()=>{var n,c;return x.value||!E.value||R.value&&q.value?null:[R.value?null:(n=f.value)==null?void 0:n.exportMessage,q.value?null:(c=f.value)==null?void 0:c.importMessage].filter(Boolean).join(" ")}),O=g(()=>{var c;if(!l.connectionId)return[];const n=t.value||((c=m.value)==null?void 0:c.workspaceId);return(u.schemas[l.connectionId]||[]).filter(j=>j.connectionId===l.connectionId&&(!n||j.workspaceId===n)).map(j=>j.name)}),K=g(()=>u.loading[l.connectionId]||!1),H=I(null),U=async()=>{const n=m.value,c=t.value||(n==null?void 0:n.workspaceId);if(!l.connectionId||!c||!n)return;if((u.schemas[l.connectionId]||[]).some(V=>V.connectionId===l.connectionId&&V.workspaceId===c)){H.value=null;return}try{H.value=null,await u.fetchSchemas({connectionId:l.connectionId,workspaceId:c,connection:n})}catch(V){H.value=V instanceof Error?V.message:"Failed to load schemas."}};Z([m,()=>t.value],()=>{U()},{immediate:!0});const te=[{id:"export",tabLabel:"Create Backup",subtitle:"Generate native backup artifacts for the current connection.",icon:"hugeicons:download-01"},{id:"import",tabLabel:"Restore Backup",subtitle:"Apply a native backup artifact back into this connection.",icon:"hugeicons:upload-01"}],z=I(l.initialTab),lt=g(()=>te.find(n=>n.id===z.value));Z(()=>l.initialTab,n=>{z.value=n}),Z([z,C,J],([n,c,j])=>{if(n==="export"&&!c&&j){z.value="import";return}n==="import"&&!j&&c&&(z.value="export")},{immediate:!0});const rt=n=>{z.value=n},{isExporting:ne,progress:it,error:ke,lastExport:we,currentJob:pe,statusMessage:ut,exportDatabase:ct,reset:dt}=gs(m,f),$e=(n=[],c=[])=>[...new Set([...n,...c])],Ce=g(()=>{var n,c;return $e(((n=f.value)==null?void 0:n.availableExportTools)||[],((c=f.value)==null?void 0:c.missingExportTools)||[])}),mt=g(()=>{var n;return((n=f.value)==null?void 0:n.availableExportToolPaths)||[]}),{selection:fe,filteredToolPaths:pt,runtimeSelection:ft,canSubmit:vt}=Ue(mt,Ce,v),gt=async()=>{var c,j;const n=(c=we.value)==null?void 0:c.saveDirectoryPath;!n||!((j=window.electronAPI)!=null&&j.window.openPath)||await window.electronAPI.window.openPath(n)},_t=async n=>{await ct(b.value,{options:n,runtime:ft.value,promptForSaveLocation:v.value,saveDirectoryPath:void 0})},{isImporting:Y,progress:bt,statusMessage:ht,currentJob:ve,error:Se,success:Pe,selectedFile:ue,options:ge,extensionSummary:yt,onFileSelect:xt,clearSelectedFile:kt,importDatabase:wt,reset:$t}=_s(m,f),Ct=g(()=>{var n,c;return $e(((n=f.value)==null?void 0:n.availableImportTools)||[],((c=f.value)==null?void 0:c.missingImportTools)||[])}),_e=g(()=>{var n;return y.value!==Yt.POSTGRES||!((n=ue.value)!=null&&n.name)?Ct.value:[ue.value.name.toLowerCase().endsWith(".dump")?"pg_restore":"psql"]}),St=g(()=>{var n;return(((n=f.value)==null?void 0:n.availableImportToolPaths)||[]).filter(c=>_e.value.includes(c.tool))}),{selection:be,filteredToolPaths:Pt,runtimeSelection:Tt,canSubmit:Dt}=Ue(St,_e,v),ce=I(!1),Et=()=>{ce.value=!0},Bt=async()=>{ce.value=!1,await wt(Tt.value)},It=()=>{ce.value=!1};return(n,c)=>{var Te,De,Ee,Be,Ie,Fe,Re;const j=qt,V=se,Ft=oo,Rt=to,Lt=eo,le=st,re=ot,ie=tt,he=ae;return d(),P("div",hs,[s(ns,{open:e(ce),onConfirm:Bt,onCancel:It},null,8,["open"]),s(j,{icon:"hugeicons:database-import",title:"Backup & Restore"},{context:i(()=>[a("span",ys,h(e(b)),1),a("span",xs,"· "+h(e(r)),1)]),_:1}),a("div",ks,[s(Lt,{modelValue:e(z),"onUpdate:modelValue":c[0]||(c[0]=N=>oe(z)?z.value=N:null),class:"min-w-0 flex-1 gap-0"},{default:i(()=>[s(Rt,{size:"sm",class:"max-w-full justify-start! overflow-x-auto"},{default:i(()=>[(d(),P(Q,null,X(te,N=>s(Ft,{size:"xs",key:N.id,value:N.id,class:"min-w-fit shrink-0 cursor-pointer rounded-sm",disabled:e(x)||(N.id==="export"?!e(C):!e(J)),onClick:zs=>rt(N.id)},{default:i(()=>[s(V,{name:N.icon,class:"shrink-0 size-3.5"},null,8,["name"]),k(" "+h(N.tabLabel),1)]),_:2},1032,["value","disabled","onClick"])),64))]),_:1})]),_:1},8,["modelValue"]),a("div",ws,h((Te=e(lt))==null?void 0:Te.subtitle),1)]),a("div",$s,[e(x)&&!e(D)?(d(),B(Zt,{key:0,visible:""})):F("",!0),(!e(x)||e(D))&&e(_)?(d(),B(ie,{key:1,variant:"destructive"},{default:i(()=>[s(V,{name:"hugeicons:alert-circle",class:"size-4"}),s(le,null,{default:i(()=>c[4]||(c[4]=[k("Capability Check Failed")])),_:1}),s(re,null,{default:i(()=>[k(h(e(S)),1)]),_:1})]),_:1})):(!e(x)||e(D))&&!e(E)?(d(),B(xo,{key:2,"support-message":e(S),"connection-type":e(y),"is-loading":e(D),onReload:T},null,8,["support-message","connection-type","is-loading"])):!e(x)&&!e(D)?(d(),P(Q,{key:3},[e(L)?(d(),B(ie,{key:0},{default:i(()=>[s(V,{name:"hugeicons:alert-circle",class:"size-4"}),s(le,null,{default:i(()=>c[5]||(c[5]=[k("Partial Native Tool Support")])),_:1}),s(re,null,{default:i(()=>[k(h(e(L)),1)]),_:1})]),_:1})):F("",!0),Le(a("div",Cs,[a("div",Ss,[a("div",null,[c[6]||(c[6]=a("h3",{class:"text-base font-medium"},"Create Backup",-1)),a("p",Ps," Export "+h(e(b))+" using "+h(e($))+". ",1)])]),e(ke)?(d(),B(ie,{key:0,variant:"destructive"},{default:i(()=>[s(V,{name:"hugeicons:alert-circle",class:"size-4"}),s(le,null,{default:i(()=>c[7]||(c[7]=[k("Backup Failed")])),_:1}),s(re,null,{default:i(()=>[k(h(e(ke)),1)]),_:1}),s(he,{size:"sm",variant:"outline",class:"mt-2",onClick:e(dt)},{default:i(()=>c[8]||(c[8]=[k(" Try Again ")])),_:1},8,["onClick"])]),_:1})):F("",!0),e(ne)||e(pe)?(d(),B(Ve,{key:1,tool:((De=e(pe))==null?void 0:De.tool)||e($),stage:((Ee=e(pe))==null?void 0:Ee.stage)||"queued","status-message":e(ut)||"",progress:e(it),"is-running":e(ne),"action-label":(Be=e(we))!=null&&Be.saveDirectoryPath&&!e(ne)?"Open":void 0,onAction:gt},null,8,["tool","stage","status-message","progress","is-running","action-label"])):F("",!0),a("div",Ts,[a("div",Ds,[e(v)?(d(),B(Oe,{key:0,modelValue:e(fe),"onUpdate:modelValue":c[1]||(c[1]=N=>oe(fe)?fe.value=N:null),title:"Backup Driver",description:"Choose the exact executable OrcaQ should run for this backup job.","detected-paths":e(pt),"tool-choices":e(Ce),disabled:e(ne)},null,8,["modelValue","detected-paths","tool-choices","disabled"])):F("",!0),s(Lo,{schemas:e(O),"schema-loading":e(K),"schema-error":e(H),loading:e(ne),disabled:e(v)&&!e(vt),"format-options":e(M),"default-format":(Ie=e(f))==null?void 0:Ie.defaultExportFormat,"tool-hint":e($),onSubmit:_t},null,8,["schemas","schema-loading","schema-error","loading","disabled","format-options","default-format","tool-hint"])]),s(ze,{title:"Backup Profile",description:"Exports run on the local runtime host and stream the artifact directly into a downloadable file.",formats:e(M),"tool-hint":e($),"target-name":e(b),"formats-label":"Supported Files"},null,8,["formats","tool-hint","target-name"])])],512),[[qe,e(z)==="export"]]),Le(a("div",Es,[a("div",Bs,[a("div",null,[c[9]||(c[9]=a("h3",{class:"text-base font-medium"},"Restore Backup",-1)),a("p",Is," Restore a "+h(e(W))+" backup into "+h(e(b))+". ",1)])]),e(Se)?(d(),B(ie,{key:0,variant:"destructive"},{default:i(()=>[s(V,{name:"hugeicons:alert-circle",class:"size-4"}),s(le,null,{default:i(()=>c[10]||(c[10]=[k("Import Failed")])),_:1}),s(re,null,{default:i(()=>[k(h(e(Se)),1)]),_:1}),s(he,{size:"sm",variant:"outline",class:"mt-2",onClick:e($t)},{default:i(()=>c[11]||(c[11]=[k(" Try Again ")])),_:1},8,["onClick"])]),_:1})):F("",!0),e(Pe)?(d(),B(ie,{key:1},{default:i(()=>[s(V,{name:"hugeicons:checkmark-circle-02",class:"size-4 text-green-500"}),s(le,null,{default:i(()=>c[12]||(c[12]=[k("Import Complete")])),_:1}),s(re,null,{default:i(()=>[k(h(e(Pe)),1)]),_:1})]),_:1})):F("",!0),e(Y)||e(ve)?(d(),B(Ve,{key:2,tool:((Fe=e(ve))==null?void 0:Fe.tool)||e($),stage:((Re=e(ve))==null?void 0:Re.stage)||"queued","status-message":e(ht)||"",progress:e(bt),"is-running":e(Y),"progress-class":"bg-emerald-500"},null,8,["tool","stage","status-message","progress","is-running"])):F("",!0),a("div",Fs,[a("div",Rs,[s(Uo,{"selected-file":e(ue),accept:e(A),"extension-summary":e(yt),onChange:e(xt),onClear:e(kt)},null,8,["selected-file","accept","extension-summary","onChange","onClear"]),e(v)?(d(),B(Oe,{key:0,modelValue:e(be),"onUpdate:modelValue":c[2]||(c[2]=N=>oe(be)?be.value=N:null),title:"Restore Driver",description:"Choose the executable HeraQ should use to restore this backup artifact.","detected-paths":e(Pt),"tool-choices":e(_e),disabled:e(Y)},null,8,["modelValue","detected-paths","tool-choices","disabled"])):F("",!0),s(Wo,{modelValue:e(ge),"onUpdate:modelValue":c[3]||(c[3]=N=>oe(ge)?ge.value=N:null)},null,8,["modelValue"]),s(he,{class:"w-full",disabled:!e(ue)||e(Y)||e(v)&&!e(Dt),onClick:Et},{default:i(()=>[s(V,{name:e(Y)?"hugeicons:loading-03":"hugeicons:upload-01",class:me(["size-4 mr-2",e(Y)&&"animate-spin"])},null,8,["name","class"]),k(" "+h(e(Y)?"Restoring...":"Restore Backup"),1)]),_:1},8,["disabled"]),a("p",Ls,[a("polyline",qs,[s(V,{name:"hugeicons:alert-circle",class:"size-4 text-destructive"}),c[13]||(c[13]=k(" Warning: "))]),c[14]||(c[14]=k(" Importing a database can overwrite existing data. Make sure you have a backup before proceeding. "))])]),s(ze,{title:"Restore Profile",description:"Use a backup file produced for the same database family and runtime toolchain.",formats:e(M),"tool-hint":e($),"target-name":e(b),"formats-label":"Accepted Files"},null,8,["formats","tool-hint","target-name"])])],512),[[qe,e(z)==="import"]])],64)):F("",!0)])])}}});export{Us as _};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var fv=Object.defineProperty;var dv=(t,e,n)=>e in t?fv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var Fn=(t,e,n)=>dv(t,typeof e!="symbol"?e+"":e,n);import{g1 as hv,ah as ir}from"./DgGwe7jd.js";function Ye(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function Pt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}function Un(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}function pv(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function cs(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}class Xm{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){var i;const n=this.types[e.container.$type];if(!n)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);const r=(i=n.properties[e.property])==null?void 0:i.referenceType;if(!r)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return r}getTypeMetaData(e){const n=this.types[e];return n||{name:e,properties:{},superTypes:[]}}isInstance(e,n){return Ye(e)&&this.isSubtype(e.$type,n)}isSubtype(e,n){if(e===n)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});const i=r[n];if(i!==void 0)return i;{const s=this.types[e],a=s?s.superTypes.some(o=>this.isSubtype(o,n)):!1;return r[n]=a,a}}getAllSubTypes(e){const n=this.allSubtypes[e];if(n)return n;{const r=this.getAllTypes(),i=[];for(const s of r)this.isSubtype(s,e)&&i.push(s);return this.allSubtypes[e]=i,i}}}function Ws(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function Jm(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function Zm(t){return Ws(t)&&typeof t.fullText=="string"}class We{constructor(e,n){this.startFn=e,this.nextFn=n}iterator(){const 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(){const e=this.iterator();let n=0,r=e.next();for(;!r.done;)n++,r=e.next();return n}toArray(){const e=[],n=this.iterator();let r;do r=n.next(),r.value!==void 0&&e.push(r.value);while(!r.done);return e}toSet(){return new Set(this)}toMap(e,n){const r=this.map(i=>[e?e(i):i,n?n(i):i]);return new Map(r)}toString(){return this.join()}concat(e){return new We(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),n=>{let r;if(!n.firstDone){do if(r=this.nextFn(n.first),!r.done)return r;while(!r.done);n.firstDone=!0}do if(r=n.iterator.next(),!r.done)return r;while(!r.done);return ht})}join(e=","){const n=this.iterator();let r="",i,s=!1;do i=n.next(),i.done||(s&&(r+=e),r+=mv(i.value)),s=!0;while(!i.done);return r}indexOf(e,n=0){const r=this.iterator();let i=0,s=r.next();for(;!s.done;){if(i>=n&&s.value===e)return i;s=r.next(),i++}return-1}every(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(!e(r.value))return!1;r=n.next()}return!0}some(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(e(r.value))return!0;r=n.next()}return!1}forEach(e){const n=this.iterator();let r=0,i=n.next();for(;!i.done;)e(i.value,r),i=n.next(),r++}map(e){return new We(this.startFn,n=>{const{done:r,value:i}=this.nextFn(n);return r?ht:{done:!1,value:e(i)}})}filter(e){return new We(this.startFn,n=>{let r;do if(r=this.nextFn(n),!r.done&&e(r.value))return r;while(!r.done);return ht})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,n){const r=this.iterator();let i=n,s=r.next();for(;!s.done;)i===void 0?i=s.value:i=e(i,s.value),s=r.next();return i}reduceRight(e,n){return this.recursiveReduce(this.iterator(),e,n)}recursiveReduce(e,n,r){const i=e.next();if(i.done)return r;const s=this.recursiveReduce(e,n,r);return s===void 0?i.value:n(s,i.value)}find(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(e(r.value))return r.value;r=n.next()}}findIndex(e){const n=this.iterator();let r=0,i=n.next();for(;!i.done;){if(e(i.value))return r;i=n.next(),r++}return-1}includes(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(r.value===e)return!0;r=n.next()}return!1}flatMap(e){return new We(()=>({this:this.startFn()}),n=>{do{if(n.iterator){const s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}const{done:r,value:i}=this.nextFn(n.this);if(!r){const s=e(i);if(Co(s))n.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}}while(n.iterator);return ht})}flat(e){if(e===void 0&&(e=1),e<=0)return this;const n=e>1?this.flat(e-1):this;return new We(()=>({this:n.startFn()}),r=>{do{if(r.iterator){const a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}const{done:i,value:s}=n.nextFn(r.this);if(!i)if(Co(s))r.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}while(r.iterator);return ht})}head(){const n=this.iterator().next();if(!n.done)return n.value}tail(e=1){return new We(()=>{const n=this.startFn();for(let r=0;r<e;r++)if(this.nextFn(n).done)return n;return n},this.nextFn)}limit(e){return new We(()=>({size:0,state:this.startFn()}),n=>(n.size++,n.size>e?ht:this.nextFn(n.state)))}distinct(e){return new We(()=>({set:new Set,internalState:this.startFn()}),n=>{let r;do if(r=this.nextFn(n.internalState),!r.done){const i=e?e(r.value):r.value;if(!n.set.has(i))return n.set.add(i),r}while(!r.done);return ht})}exclude(e,n){const r=new Set;for(const i of e){const s=n?n(i):i;r.add(s)}return this.filter(i=>{const s=n?n(i):i;return!r.has(s)})}}function mv(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function Co(t){return!!t&&typeof t[Symbol.iterator]=="function"}const Qm=new We(()=>{},()=>ht),ht=Object.freeze({done:!0,value:void 0});function Re(...t){if(t.length===1){const e=t[0];if(e instanceof We)return e;if(Co(e))return new We(()=>e[Symbol.iterator](),n=>n.next());if(typeof e.length=="number")return new We(()=>({index:0}),n=>n.index<e.length?{done:!1,value:e[n.index++]}:ht)}return t.length>1?new We(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){const n=e.iterator.next();if(!n.done)return n;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){const n=t[e.collIndex++];Co(n)?e.iterator=n[Symbol.iterator]():n&&typeof n.length=="number"&&(e.array=n)}}while(e.iterator||e.array||e.collIndex<t.length);return ht}):Qm}class wf extends We{constructor(e,n,r){super(()=>({iterators:r!=null&&r.includeRoot?[[e][Symbol.iterator]()]:[n(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){const a=i.iterators[i.iterators.length-1].next();if(a.done)i.iterators.pop();else return i.iterators.push(n(a.value)[Symbol.iterator]()),a}return ht})}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}var Pu;(function(t){function e(s){return s.reduce((a,o)=>a+o,0)}t.sum=e;function n(s){return s.reduce((a,o)=>a*o,0)}t.product=n;function r(s){return s.reduce((a,o)=>Math.min(a,o))}t.min=r;function i(s){return s.reduce((a,o)=>Math.max(a,o))}t.max=i})(Pu||(Pu={}));function Iu(t,e={}){for(const[n,r]of Object.entries(t))n.startsWith("$")||(Array.isArray(r)?r.forEach((i,s)=>{Ye(i)&&(i.$container=t,i.$containerProperty=n,i.$containerIndex=s,e.deep&&Iu(i,e))}):Ye(r)&&(r.$container=t,r.$containerProperty=n,e.deep&&Iu(r,e)))}function ic(t,e){let n=t;for(;n;){if(e(n))return n;n=n.$container}}function yn(t){const n=fo(t).$document;if(!n)throw new Error("AST node has no document.");return n}function fo(t){for(;t.$container;)t=t.$container;return t}function Pd(t){return Pt(t)?t.ref?[t.ref]:[]:Un(t)?t.items.map(e=>e.ref):[]}function Cf(t,e){if(!t)throw new Error("Node must be an AstNode.");const n=e==null?void 0:e.range;return new We(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),r=>{for(;r.keyIndex<r.keys.length;){const i=r.keys[r.keyIndex];if(!i.startsWith("$")){const s=t[i];if(Ye(s)){if(r.keyIndex++,Id(s,n))return{done:!1,value:s}}else if(Array.isArray(s)){for(;r.arrayIndex<s.length;){const a=r.arrayIndex++,o=s[a];if(Ye(o)&&Id(o,n))return{done:!1,value:o}}r.arrayIndex=0}}r.keyIndex++}return ht})}function da(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new wf(t,n=>Cf(n,e))}function Tn(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new wf(t,n=>Cf(n,e),{includeRoot:!0})}function Id(t,e){var r;if(!e)return!0;const n=(r=t.$cstNode)==null?void 0:r.range;return n?Fv(n,e):!1}function No(t){return new We(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){const n=e.keys[e.keyIndex];if(!n.startsWith("$")){const r=t[n];if(Pt(r)||Un(r))return e.keyIndex++,{done:!1,value:{reference:r,container:t,property:n}};if(Array.isArray(r)){for(;e.arrayIndex<r.length;){const i=e.arrayIndex++,s=r[i];if(Pt(s)||Un(r))return{done:!1,value:{reference:s,container:t,property:n,index:i}}}e.arrayIndex=0}}e.keyIndex++}return ht})}function gv(t,e){const n=t.getTypeMetaData(e.$type),r=e;for(const i of Object.values(n.properties))i.defaultValue!==void 0&&r[i.name]===void 0&&(r[i.name]=eg(i.defaultValue))}function eg(t){return Array.isArray(t)?[...t.map(eg)]:t}const dt={$type:"AbstractElement",cardinality:"cardinality"};function yv(t){return te.isInstance(t,dt.$type)}const ho={$type:"AbstractParserRule"};function ha(t){return te.isInstance(t,ho.$type)}const Ha={$type:"AbstractRule"},Ct={$type:"AbstractType"},yr={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function sc(t){return te.isInstance(t,yr.$type)}const po={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function tg(t){return te.isInstance(t,po.$type)}const kd={$type:"ArrayLiteral",elements:"elements"},Od={$type:"ArrayType",elementType:"elementType"},Tr={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function Sr(t){return te.isInstance(t,Tr.$type)}const ku={$type:"BooleanLiteral",true:"true"};function Tv(t){return te.isInstance(t,ku.$type)}const vr={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function vv(t){return te.isInstance(t,vr.$type)}const Vr={$type:"Condition"},mo={$type:"Conjunction",left:"left",right:"right"};function $v(t){return te.isInstance(t,mo.$type)}const $r={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function ac(t){return te.isInstance(t,$r.$type)}const go={$type:"Disjunction",left:"left",right:"right"};function Rv(t){return te.isInstance(t,go.$type)}const Ou={$type:"EndOfFile",cardinality:"cardinality"};function Ev(t){return te.isInstance(t,Ou.$type)}const sr={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"},Ld={$type:"GrammarImport",path:"path"},ei={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function Nf(t){return te.isInstance(t,ei.$type)}const Lu={$type:"InferredType",name:"name"};function ng(t){return te.isInstance(t,Lu.$type)}const un={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function Po(t){return te.isInstance(t,un.$type)}const Xc={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"},xd={$type:"InfixRuleOperators",precedences:"precedences"},ks={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function Av(t){return te.isInstance(t,ks.$type)}const Os={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function br(t){return te.isInstance(t,Os.$type)}const Va={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"},ti={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function _v(t){return te.isInstance(t,ti.$type)}const xu={$type:"Negation",value:"value"};function Sv(t){return te.isInstance(t,xu.$type)}const Md={$type:"NumberLiteral",value:"value"},Ya={$type:"Parameter",name:"name"},Mu={$type:"ParameterReference",parameter:"parameter"};function bv(t){return te.isInstance(t,Mu.$type)}const Gt={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function Sn(t){return te.isInstance(t,Gt.$type)}const Jc={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"},ni={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function wv(t){return te.isInstance(t,ni.$type)}const Du={$type:"ReturnType",name:"name"};function Cv(t){return te.isInstance(t,Du.$type)}const ri={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function wr(t){return te.isInstance(t,ri.$type)}const Ls={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function Nv(t){return te.isInstance(t,Ls.$type)}const Dd={$type:"StringLiteral",value:"value"},ii={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Pv(t){return te.isInstance(t,ii.$type)}const Tt={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"},si={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Iv(t){return te.isInstance(t,si.$type)}const Gn={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function bn(t){return te.isInstance(t,Gn.$type)}const ai={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function kv(t){return te.isInstance(t,ai.$type)}const yo={$type:"Type",name:"name",type:"type"};function Ov(t){return te.isInstance(t,yo.$type)}const us={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"},ls={$type:"TypeDefinition"},Fd={$type:"UnionType",types:"types"},To={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function rg(t){return te.isInstance(t,To.$type)}const oi={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Lv(t){return te.isInstance(t,oi.$type)}const fs={$type:"ValueLiteral"},xs={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function xv(t){return te.isInstance(t,xs.$type)}class ig extends Xm{constructor(){super(...arguments),this.types={AbstractElement:{name:dt.$type,properties:{cardinality:{name:dt.cardinality}},superTypes:[]},AbstractParserRule:{name:ho.$type,properties:{},superTypes:[Ha.$type,Ct.$type]},AbstractRule:{name:Ha.$type,properties:{},superTypes:[]},AbstractType:{name:Ct.$type,properties:{},superTypes:[]},Action:{name:yr.$type,properties:{cardinality:{name:yr.cardinality},feature:{name:yr.feature},inferredType:{name:yr.inferredType},operator:{name:yr.operator},type:{name:yr.type,referenceType:Ct.$type}},superTypes:[dt.$type]},Alternatives:{name:po.$type,properties:{cardinality:{name:po.cardinality},elements:{name:po.elements,defaultValue:[]}},superTypes:[dt.$type]},ArrayLiteral:{name:kd.$type,properties:{elements:{name:kd.elements,defaultValue:[]}},superTypes:[fs.$type]},ArrayType:{name:Od.$type,properties:{elementType:{name:Od.elementType}},superTypes:[ls.$type]},Assignment:{name:Tr.$type,properties:{cardinality:{name:Tr.cardinality},feature:{name:Tr.feature},operator:{name:Tr.operator},predicate:{name:Tr.predicate},terminal:{name:Tr.terminal}},superTypes:[dt.$type]},BooleanLiteral:{name:ku.$type,properties:{true:{name:ku.true,defaultValue:!1}},superTypes:[Vr.$type,fs.$type]},CharacterRange:{name:vr.$type,properties:{cardinality:{name:vr.cardinality},left:{name:vr.left},lookahead:{name:vr.lookahead},parenthesized:{name:vr.parenthesized,defaultValue:!1},right:{name:vr.right}},superTypes:[Tt.$type]},Condition:{name:Vr.$type,properties:{},superTypes:[]},Conjunction:{name:mo.$type,properties:{left:{name:mo.left},right:{name:mo.right}},superTypes:[Vr.$type]},CrossReference:{name:$r.$type,properties:{cardinality:{name:$r.cardinality},deprecatedSyntax:{name:$r.deprecatedSyntax,defaultValue:!1},isMulti:{name:$r.isMulti,defaultValue:!1},terminal:{name:$r.terminal},type:{name:$r.type,referenceType:Ct.$type}},superTypes:[dt.$type]},Disjunction:{name:go.$type,properties:{left:{name:go.left},right:{name:go.right}},superTypes:[Vr.$type]},EndOfFile:{name:Ou.$type,properties:{cardinality:{name:Ou.cardinality}},superTypes:[dt.$type]},Grammar:{name:sr.$type,properties:{imports:{name:sr.imports,defaultValue:[]},interfaces:{name:sr.interfaces,defaultValue:[]},isDeclared:{name:sr.isDeclared,defaultValue:!1},name:{name:sr.name},rules:{name:sr.rules,defaultValue:[]},types:{name:sr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:Ld.$type,properties:{path:{name:Ld.path}},superTypes:[]},Group:{name:ei.$type,properties:{cardinality:{name:ei.cardinality},elements:{name:ei.elements,defaultValue:[]},guardCondition:{name:ei.guardCondition},predicate:{name:ei.predicate}},superTypes:[dt.$type]},InferredType:{name:Lu.$type,properties:{name:{name:Lu.name}},superTypes:[Ct.$type]},InfixRule:{name:un.$type,properties:{call:{name:un.call},dataType:{name:un.dataType},inferredType:{name:un.inferredType},name:{name:un.name},operators:{name:un.operators},parameters:{name:un.parameters,defaultValue:[]},returnType:{name:un.returnType,referenceType:Ct.$type}},superTypes:[ho.$type]},InfixRuleOperatorList:{name:Xc.$type,properties:{associativity:{name:Xc.associativity},operators:{name:Xc.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:xd.$type,properties:{precedences:{name:xd.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:ks.$type,properties:{attributes:{name:ks.attributes,defaultValue:[]},name:{name:ks.name},superTypes:{name:ks.superTypes,defaultValue:[],referenceType:Ct.$type}},superTypes:[Ct.$type]},Keyword:{name:Os.$type,properties:{cardinality:{name:Os.cardinality},predicate:{name:Os.predicate},value:{name:Os.value}},superTypes:[dt.$type]},NamedArgument:{name:Va.$type,properties:{calledByName:{name:Va.calledByName,defaultValue:!1},parameter:{name:Va.parameter,referenceType:Ya.$type},value:{name:Va.value}},superTypes:[]},NegatedToken:{name:ti.$type,properties:{cardinality:{name:ti.cardinality},lookahead:{name:ti.lookahead},parenthesized:{name:ti.parenthesized,defaultValue:!1},terminal:{name:ti.terminal}},superTypes:[Tt.$type]},Negation:{name:xu.$type,properties:{value:{name:xu.value}},superTypes:[Vr.$type]},NumberLiteral:{name:Md.$type,properties:{value:{name:Md.value}},superTypes:[fs.$type]},Parameter:{name:Ya.$type,properties:{name:{name:Ya.name}},superTypes:[]},ParameterReference:{name:Mu.$type,properties:{parameter:{name:Mu.parameter,referenceType:Ya.$type}},superTypes:[Vr.$type]},ParserRule:{name:Gt.$type,properties:{dataType:{name:Gt.dataType},definition:{name:Gt.definition},entry:{name:Gt.entry,defaultValue:!1},fragment:{name:Gt.fragment,defaultValue:!1},inferredType:{name:Gt.inferredType},name:{name:Gt.name},parameters:{name:Gt.parameters,defaultValue:[]},returnType:{name:Gt.returnType,referenceType:Ct.$type}},superTypes:[ho.$type]},ReferenceType:{name:Jc.$type,properties:{isMulti:{name:Jc.isMulti,defaultValue:!1},referenceType:{name:Jc.referenceType}},superTypes:[ls.$type]},RegexToken:{name:ni.$type,properties:{cardinality:{name:ni.cardinality},lookahead:{name:ni.lookahead},parenthesized:{name:ni.parenthesized,defaultValue:!1},regex:{name:ni.regex}},superTypes:[Tt.$type]},ReturnType:{name:Du.$type,properties:{name:{name:Du.name}},superTypes:[]},RuleCall:{name:ri.$type,properties:{arguments:{name:ri.arguments,defaultValue:[]},cardinality:{name:ri.cardinality},predicate:{name:ri.predicate},rule:{name:ri.rule,referenceType:Ha.$type}},superTypes:[dt.$type]},SimpleType:{name:Ls.$type,properties:{primitiveType:{name:Ls.primitiveType},stringType:{name:Ls.stringType},typeRef:{name:Ls.typeRef,referenceType:Ct.$type}},superTypes:[ls.$type]},StringLiteral:{name:Dd.$type,properties:{value:{name:Dd.value}},superTypes:[fs.$type]},TerminalAlternatives:{name:ii.$type,properties:{cardinality:{name:ii.cardinality},elements:{name:ii.elements,defaultValue:[]},lookahead:{name:ii.lookahead},parenthesized:{name:ii.parenthesized,defaultValue:!1}},superTypes:[Tt.$type]},TerminalElement:{name:Tt.$type,properties:{cardinality:{name:Tt.cardinality},lookahead:{name:Tt.lookahead},parenthesized:{name:Tt.parenthesized,defaultValue:!1}},superTypes:[dt.$type]},TerminalGroup:{name:si.$type,properties:{cardinality:{name:si.cardinality},elements:{name:si.elements,defaultValue:[]},lookahead:{name:si.lookahead},parenthesized:{name:si.parenthesized,defaultValue:!1}},superTypes:[Tt.$type]},TerminalRule:{name:Gn.$type,properties:{definition:{name:Gn.definition},fragment:{name:Gn.fragment,defaultValue:!1},hidden:{name:Gn.hidden,defaultValue:!1},name:{name:Gn.name},type:{name:Gn.type}},superTypes:[Ha.$type]},TerminalRuleCall:{name:ai.$type,properties:{cardinality:{name:ai.cardinality},lookahead:{name:ai.lookahead},parenthesized:{name:ai.parenthesized,defaultValue:!1},rule:{name:ai.rule,referenceType:Gn.$type}},superTypes:[Tt.$type]},Type:{name:yo.$type,properties:{name:{name:yo.name},type:{name:yo.type}},superTypes:[Ct.$type]},TypeAttribute:{name:us.$type,properties:{defaultValue:{name:us.defaultValue},isOptional:{name:us.isOptional,defaultValue:!1},name:{name:us.name},type:{name:us.type}},superTypes:[]},TypeDefinition:{name:ls.$type,properties:{},superTypes:[]},UnionType:{name:Fd.$type,properties:{types:{name:Fd.types,defaultValue:[]}},superTypes:[ls.$type]},UnorderedGroup:{name:To.$type,properties:{cardinality:{name:To.cardinality},elements:{name:To.elements,defaultValue:[]}},superTypes:[dt.$type]},UntilToken:{name:oi.$type,properties:{cardinality:{name:oi.cardinality},lookahead:{name:oi.lookahead},parenthesized:{name:oi.parenthesized,defaultValue:!1},terminal:{name:oi.terminal}},superTypes:[Tt.$type]},ValueLiteral:{name:fs.$type,properties:{},superTypes:[]},Wildcard:{name:xs.$type,properties:{cardinality:{name:xs.cardinality},lookahead:{name:xs.lookahead},parenthesized:{name:xs.parenthesized,defaultValue:!1}},superTypes:[Tt.$type]}}}}const te=new ig;function Fu(t){return new wf(t,e=>Ws(e)?e.content:[],{includeRoot:!0})}function Mv(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function Gu(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Io(t){if(!t)return;const{offset:e,end:n,range:r}=t;return{range:r,offset:e,end:n,length:n-e}}var hn;(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"})(hn||(hn={}));function Dv(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return hn.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return hn.After;const n=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,r=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return n&&r?hn.Inside:n?hn.OverlapBack:r?hn.OverlapFront:hn.Outside}function Fv(t,e){return Dv(t,e)>hn.After}const Gv=/^[\w\p{L}]$/u;function jv(t,e){if(t){const n=Uv(t,!0);if(n&&Gd(n,e))return n;if(Zm(t)){const r=t.content.findIndex(i=>!i.hidden);for(let i=r-1;i>=0;i--){const s=t.content[i];if(Gd(s,e))return s}}}}function Gd(t,e){return Jm(t)&&e.includes(t.tokenType.name)}function Uv(t,e=!0){for(;t.container;){const n=t.container;let r=n.content.indexOf(t);for(;r>0;){r--;const i=n.content[r];if(e||!i.hidden)return i}t=n}}class sg extends Error{constructor(e,n){super(e?`${n} at ${e.range.start.line}:${e.range.start.character}`:n)}}function pa(t,e="Error: Got unexpected value."){throw new Error(e)}function W(t){return t.charCodeAt(0)}function Zc(t,e){Array.isArray(t)?t.forEach(function(n){e.push(n)}):e.push(t)}function ds(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}function Yr(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function zv(){throw Error("Internal Error - Should never get here!")}function jd(t){return t.type==="Character"}const ko=[];for(let t=W("0");t<=W("9");t++)ko.push(t);const Oo=[W("_")].concat(ko);for(let t=W("a");t<=W("z");t++)Oo.push(t);for(let t=W("A");t<=W("Z");t++)Oo.push(t);const Ud=[W(" "),W("\f"),W(`
|
|
1
|
+
var fv=Object.defineProperty;var dv=(t,e,n)=>e in t?fv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var Fn=(t,e,n)=>dv(t,typeof e!="symbol"?e+"":e,n);import{g1 as hv,ah as ir}from"./D7uoAo-G.js";function Ye(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function Pt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}function Un(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}function pv(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function cs(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}class Xm{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){var i;const n=this.types[e.container.$type];if(!n)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);const r=(i=n.properties[e.property])==null?void 0:i.referenceType;if(!r)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return r}getTypeMetaData(e){const n=this.types[e];return n||{name:e,properties:{},superTypes:[]}}isInstance(e,n){return Ye(e)&&this.isSubtype(e.$type,n)}isSubtype(e,n){if(e===n)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});const i=r[n];if(i!==void 0)return i;{const s=this.types[e],a=s?s.superTypes.some(o=>this.isSubtype(o,n)):!1;return r[n]=a,a}}getAllSubTypes(e){const n=this.allSubtypes[e];if(n)return n;{const r=this.getAllTypes(),i=[];for(const s of r)this.isSubtype(s,e)&&i.push(s);return this.allSubtypes[e]=i,i}}}function Ws(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function Jm(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function Zm(t){return Ws(t)&&typeof t.fullText=="string"}class We{constructor(e,n){this.startFn=e,this.nextFn=n}iterator(){const 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(){const e=this.iterator();let n=0,r=e.next();for(;!r.done;)n++,r=e.next();return n}toArray(){const e=[],n=this.iterator();let r;do r=n.next(),r.value!==void 0&&e.push(r.value);while(!r.done);return e}toSet(){return new Set(this)}toMap(e,n){const r=this.map(i=>[e?e(i):i,n?n(i):i]);return new Map(r)}toString(){return this.join()}concat(e){return new We(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),n=>{let r;if(!n.firstDone){do if(r=this.nextFn(n.first),!r.done)return r;while(!r.done);n.firstDone=!0}do if(r=n.iterator.next(),!r.done)return r;while(!r.done);return ht})}join(e=","){const n=this.iterator();let r="",i,s=!1;do i=n.next(),i.done||(s&&(r+=e),r+=mv(i.value)),s=!0;while(!i.done);return r}indexOf(e,n=0){const r=this.iterator();let i=0,s=r.next();for(;!s.done;){if(i>=n&&s.value===e)return i;s=r.next(),i++}return-1}every(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(!e(r.value))return!1;r=n.next()}return!0}some(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(e(r.value))return!0;r=n.next()}return!1}forEach(e){const n=this.iterator();let r=0,i=n.next();for(;!i.done;)e(i.value,r),i=n.next(),r++}map(e){return new We(this.startFn,n=>{const{done:r,value:i}=this.nextFn(n);return r?ht:{done:!1,value:e(i)}})}filter(e){return new We(this.startFn,n=>{let r;do if(r=this.nextFn(n),!r.done&&e(r.value))return r;while(!r.done);return ht})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,n){const r=this.iterator();let i=n,s=r.next();for(;!s.done;)i===void 0?i=s.value:i=e(i,s.value),s=r.next();return i}reduceRight(e,n){return this.recursiveReduce(this.iterator(),e,n)}recursiveReduce(e,n,r){const i=e.next();if(i.done)return r;const s=this.recursiveReduce(e,n,r);return s===void 0?i.value:n(s,i.value)}find(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(e(r.value))return r.value;r=n.next()}}findIndex(e){const n=this.iterator();let r=0,i=n.next();for(;!i.done;){if(e(i.value))return r;i=n.next(),r++}return-1}includes(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(r.value===e)return!0;r=n.next()}return!1}flatMap(e){return new We(()=>({this:this.startFn()}),n=>{do{if(n.iterator){const s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}const{done:r,value:i}=this.nextFn(n.this);if(!r){const s=e(i);if(Co(s))n.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}}while(n.iterator);return ht})}flat(e){if(e===void 0&&(e=1),e<=0)return this;const n=e>1?this.flat(e-1):this;return new We(()=>({this:n.startFn()}),r=>{do{if(r.iterator){const a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}const{done:i,value:s}=n.nextFn(r.this);if(!i)if(Co(s))r.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}while(r.iterator);return ht})}head(){const n=this.iterator().next();if(!n.done)return n.value}tail(e=1){return new We(()=>{const n=this.startFn();for(let r=0;r<e;r++)if(this.nextFn(n).done)return n;return n},this.nextFn)}limit(e){return new We(()=>({size:0,state:this.startFn()}),n=>(n.size++,n.size>e?ht:this.nextFn(n.state)))}distinct(e){return new We(()=>({set:new Set,internalState:this.startFn()}),n=>{let r;do if(r=this.nextFn(n.internalState),!r.done){const i=e?e(r.value):r.value;if(!n.set.has(i))return n.set.add(i),r}while(!r.done);return ht})}exclude(e,n){const r=new Set;for(const i of e){const s=n?n(i):i;r.add(s)}return this.filter(i=>{const s=n?n(i):i;return!r.has(s)})}}function mv(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function Co(t){return!!t&&typeof t[Symbol.iterator]=="function"}const Qm=new We(()=>{},()=>ht),ht=Object.freeze({done:!0,value:void 0});function Re(...t){if(t.length===1){const e=t[0];if(e instanceof We)return e;if(Co(e))return new We(()=>e[Symbol.iterator](),n=>n.next());if(typeof e.length=="number")return new We(()=>({index:0}),n=>n.index<e.length?{done:!1,value:e[n.index++]}:ht)}return t.length>1?new We(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){const n=e.iterator.next();if(!n.done)return n;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){const n=t[e.collIndex++];Co(n)?e.iterator=n[Symbol.iterator]():n&&typeof n.length=="number"&&(e.array=n)}}while(e.iterator||e.array||e.collIndex<t.length);return ht}):Qm}class wf extends We{constructor(e,n,r){super(()=>({iterators:r!=null&&r.includeRoot?[[e][Symbol.iterator]()]:[n(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){const a=i.iterators[i.iterators.length-1].next();if(a.done)i.iterators.pop();else return i.iterators.push(n(a.value)[Symbol.iterator]()),a}return ht})}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}var Pu;(function(t){function e(s){return s.reduce((a,o)=>a+o,0)}t.sum=e;function n(s){return s.reduce((a,o)=>a*o,0)}t.product=n;function r(s){return s.reduce((a,o)=>Math.min(a,o))}t.min=r;function i(s){return s.reduce((a,o)=>Math.max(a,o))}t.max=i})(Pu||(Pu={}));function Iu(t,e={}){for(const[n,r]of Object.entries(t))n.startsWith("$")||(Array.isArray(r)?r.forEach((i,s)=>{Ye(i)&&(i.$container=t,i.$containerProperty=n,i.$containerIndex=s,e.deep&&Iu(i,e))}):Ye(r)&&(r.$container=t,r.$containerProperty=n,e.deep&&Iu(r,e)))}function ic(t,e){let n=t;for(;n;){if(e(n))return n;n=n.$container}}function yn(t){const n=fo(t).$document;if(!n)throw new Error("AST node has no document.");return n}function fo(t){for(;t.$container;)t=t.$container;return t}function Pd(t){return Pt(t)?t.ref?[t.ref]:[]:Un(t)?t.items.map(e=>e.ref):[]}function Cf(t,e){if(!t)throw new Error("Node must be an AstNode.");const n=e==null?void 0:e.range;return new We(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),r=>{for(;r.keyIndex<r.keys.length;){const i=r.keys[r.keyIndex];if(!i.startsWith("$")){const s=t[i];if(Ye(s)){if(r.keyIndex++,Id(s,n))return{done:!1,value:s}}else if(Array.isArray(s)){for(;r.arrayIndex<s.length;){const a=r.arrayIndex++,o=s[a];if(Ye(o)&&Id(o,n))return{done:!1,value:o}}r.arrayIndex=0}}r.keyIndex++}return ht})}function da(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new wf(t,n=>Cf(n,e))}function Tn(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new wf(t,n=>Cf(n,e),{includeRoot:!0})}function Id(t,e){var r;if(!e)return!0;const n=(r=t.$cstNode)==null?void 0:r.range;return n?Fv(n,e):!1}function No(t){return new We(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){const n=e.keys[e.keyIndex];if(!n.startsWith("$")){const r=t[n];if(Pt(r)||Un(r))return e.keyIndex++,{done:!1,value:{reference:r,container:t,property:n}};if(Array.isArray(r)){for(;e.arrayIndex<r.length;){const i=e.arrayIndex++,s=r[i];if(Pt(s)||Un(r))return{done:!1,value:{reference:s,container:t,property:n,index:i}}}e.arrayIndex=0}}e.keyIndex++}return ht})}function gv(t,e){const n=t.getTypeMetaData(e.$type),r=e;for(const i of Object.values(n.properties))i.defaultValue!==void 0&&r[i.name]===void 0&&(r[i.name]=eg(i.defaultValue))}function eg(t){return Array.isArray(t)?[...t.map(eg)]:t}const dt={$type:"AbstractElement",cardinality:"cardinality"};function yv(t){return te.isInstance(t,dt.$type)}const ho={$type:"AbstractParserRule"};function ha(t){return te.isInstance(t,ho.$type)}const Ha={$type:"AbstractRule"},Ct={$type:"AbstractType"},yr={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function sc(t){return te.isInstance(t,yr.$type)}const po={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function tg(t){return te.isInstance(t,po.$type)}const kd={$type:"ArrayLiteral",elements:"elements"},Od={$type:"ArrayType",elementType:"elementType"},Tr={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function Sr(t){return te.isInstance(t,Tr.$type)}const ku={$type:"BooleanLiteral",true:"true"};function Tv(t){return te.isInstance(t,ku.$type)}const vr={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function vv(t){return te.isInstance(t,vr.$type)}const Vr={$type:"Condition"},mo={$type:"Conjunction",left:"left",right:"right"};function $v(t){return te.isInstance(t,mo.$type)}const $r={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function ac(t){return te.isInstance(t,$r.$type)}const go={$type:"Disjunction",left:"left",right:"right"};function Rv(t){return te.isInstance(t,go.$type)}const Ou={$type:"EndOfFile",cardinality:"cardinality"};function Ev(t){return te.isInstance(t,Ou.$type)}const sr={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"},Ld={$type:"GrammarImport",path:"path"},ei={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function Nf(t){return te.isInstance(t,ei.$type)}const Lu={$type:"InferredType",name:"name"};function ng(t){return te.isInstance(t,Lu.$type)}const un={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function Po(t){return te.isInstance(t,un.$type)}const Xc={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"},xd={$type:"InfixRuleOperators",precedences:"precedences"},ks={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function Av(t){return te.isInstance(t,ks.$type)}const Os={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function br(t){return te.isInstance(t,Os.$type)}const Va={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"},ti={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function _v(t){return te.isInstance(t,ti.$type)}const xu={$type:"Negation",value:"value"};function Sv(t){return te.isInstance(t,xu.$type)}const Md={$type:"NumberLiteral",value:"value"},Ya={$type:"Parameter",name:"name"},Mu={$type:"ParameterReference",parameter:"parameter"};function bv(t){return te.isInstance(t,Mu.$type)}const Gt={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function Sn(t){return te.isInstance(t,Gt.$type)}const Jc={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"},ni={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function wv(t){return te.isInstance(t,ni.$type)}const Du={$type:"ReturnType",name:"name"};function Cv(t){return te.isInstance(t,Du.$type)}const ri={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function wr(t){return te.isInstance(t,ri.$type)}const Ls={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function Nv(t){return te.isInstance(t,Ls.$type)}const Dd={$type:"StringLiteral",value:"value"},ii={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Pv(t){return te.isInstance(t,ii.$type)}const Tt={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"},si={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Iv(t){return te.isInstance(t,si.$type)}const Gn={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function bn(t){return te.isInstance(t,Gn.$type)}const ai={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function kv(t){return te.isInstance(t,ai.$type)}const yo={$type:"Type",name:"name",type:"type"};function Ov(t){return te.isInstance(t,yo.$type)}const us={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"},ls={$type:"TypeDefinition"},Fd={$type:"UnionType",types:"types"},To={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function rg(t){return te.isInstance(t,To.$type)}const oi={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Lv(t){return te.isInstance(t,oi.$type)}const fs={$type:"ValueLiteral"},xs={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function xv(t){return te.isInstance(t,xs.$type)}class ig extends Xm{constructor(){super(...arguments),this.types={AbstractElement:{name:dt.$type,properties:{cardinality:{name:dt.cardinality}},superTypes:[]},AbstractParserRule:{name:ho.$type,properties:{},superTypes:[Ha.$type,Ct.$type]},AbstractRule:{name:Ha.$type,properties:{},superTypes:[]},AbstractType:{name:Ct.$type,properties:{},superTypes:[]},Action:{name:yr.$type,properties:{cardinality:{name:yr.cardinality},feature:{name:yr.feature},inferredType:{name:yr.inferredType},operator:{name:yr.operator},type:{name:yr.type,referenceType:Ct.$type}},superTypes:[dt.$type]},Alternatives:{name:po.$type,properties:{cardinality:{name:po.cardinality},elements:{name:po.elements,defaultValue:[]}},superTypes:[dt.$type]},ArrayLiteral:{name:kd.$type,properties:{elements:{name:kd.elements,defaultValue:[]}},superTypes:[fs.$type]},ArrayType:{name:Od.$type,properties:{elementType:{name:Od.elementType}},superTypes:[ls.$type]},Assignment:{name:Tr.$type,properties:{cardinality:{name:Tr.cardinality},feature:{name:Tr.feature},operator:{name:Tr.operator},predicate:{name:Tr.predicate},terminal:{name:Tr.terminal}},superTypes:[dt.$type]},BooleanLiteral:{name:ku.$type,properties:{true:{name:ku.true,defaultValue:!1}},superTypes:[Vr.$type,fs.$type]},CharacterRange:{name:vr.$type,properties:{cardinality:{name:vr.cardinality},left:{name:vr.left},lookahead:{name:vr.lookahead},parenthesized:{name:vr.parenthesized,defaultValue:!1},right:{name:vr.right}},superTypes:[Tt.$type]},Condition:{name:Vr.$type,properties:{},superTypes:[]},Conjunction:{name:mo.$type,properties:{left:{name:mo.left},right:{name:mo.right}},superTypes:[Vr.$type]},CrossReference:{name:$r.$type,properties:{cardinality:{name:$r.cardinality},deprecatedSyntax:{name:$r.deprecatedSyntax,defaultValue:!1},isMulti:{name:$r.isMulti,defaultValue:!1},terminal:{name:$r.terminal},type:{name:$r.type,referenceType:Ct.$type}},superTypes:[dt.$type]},Disjunction:{name:go.$type,properties:{left:{name:go.left},right:{name:go.right}},superTypes:[Vr.$type]},EndOfFile:{name:Ou.$type,properties:{cardinality:{name:Ou.cardinality}},superTypes:[dt.$type]},Grammar:{name:sr.$type,properties:{imports:{name:sr.imports,defaultValue:[]},interfaces:{name:sr.interfaces,defaultValue:[]},isDeclared:{name:sr.isDeclared,defaultValue:!1},name:{name:sr.name},rules:{name:sr.rules,defaultValue:[]},types:{name:sr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:Ld.$type,properties:{path:{name:Ld.path}},superTypes:[]},Group:{name:ei.$type,properties:{cardinality:{name:ei.cardinality},elements:{name:ei.elements,defaultValue:[]},guardCondition:{name:ei.guardCondition},predicate:{name:ei.predicate}},superTypes:[dt.$type]},InferredType:{name:Lu.$type,properties:{name:{name:Lu.name}},superTypes:[Ct.$type]},InfixRule:{name:un.$type,properties:{call:{name:un.call},dataType:{name:un.dataType},inferredType:{name:un.inferredType},name:{name:un.name},operators:{name:un.operators},parameters:{name:un.parameters,defaultValue:[]},returnType:{name:un.returnType,referenceType:Ct.$type}},superTypes:[ho.$type]},InfixRuleOperatorList:{name:Xc.$type,properties:{associativity:{name:Xc.associativity},operators:{name:Xc.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:xd.$type,properties:{precedences:{name:xd.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:ks.$type,properties:{attributes:{name:ks.attributes,defaultValue:[]},name:{name:ks.name},superTypes:{name:ks.superTypes,defaultValue:[],referenceType:Ct.$type}},superTypes:[Ct.$type]},Keyword:{name:Os.$type,properties:{cardinality:{name:Os.cardinality},predicate:{name:Os.predicate},value:{name:Os.value}},superTypes:[dt.$type]},NamedArgument:{name:Va.$type,properties:{calledByName:{name:Va.calledByName,defaultValue:!1},parameter:{name:Va.parameter,referenceType:Ya.$type},value:{name:Va.value}},superTypes:[]},NegatedToken:{name:ti.$type,properties:{cardinality:{name:ti.cardinality},lookahead:{name:ti.lookahead},parenthesized:{name:ti.parenthesized,defaultValue:!1},terminal:{name:ti.terminal}},superTypes:[Tt.$type]},Negation:{name:xu.$type,properties:{value:{name:xu.value}},superTypes:[Vr.$type]},NumberLiteral:{name:Md.$type,properties:{value:{name:Md.value}},superTypes:[fs.$type]},Parameter:{name:Ya.$type,properties:{name:{name:Ya.name}},superTypes:[]},ParameterReference:{name:Mu.$type,properties:{parameter:{name:Mu.parameter,referenceType:Ya.$type}},superTypes:[Vr.$type]},ParserRule:{name:Gt.$type,properties:{dataType:{name:Gt.dataType},definition:{name:Gt.definition},entry:{name:Gt.entry,defaultValue:!1},fragment:{name:Gt.fragment,defaultValue:!1},inferredType:{name:Gt.inferredType},name:{name:Gt.name},parameters:{name:Gt.parameters,defaultValue:[]},returnType:{name:Gt.returnType,referenceType:Ct.$type}},superTypes:[ho.$type]},ReferenceType:{name:Jc.$type,properties:{isMulti:{name:Jc.isMulti,defaultValue:!1},referenceType:{name:Jc.referenceType}},superTypes:[ls.$type]},RegexToken:{name:ni.$type,properties:{cardinality:{name:ni.cardinality},lookahead:{name:ni.lookahead},parenthesized:{name:ni.parenthesized,defaultValue:!1},regex:{name:ni.regex}},superTypes:[Tt.$type]},ReturnType:{name:Du.$type,properties:{name:{name:Du.name}},superTypes:[]},RuleCall:{name:ri.$type,properties:{arguments:{name:ri.arguments,defaultValue:[]},cardinality:{name:ri.cardinality},predicate:{name:ri.predicate},rule:{name:ri.rule,referenceType:Ha.$type}},superTypes:[dt.$type]},SimpleType:{name:Ls.$type,properties:{primitiveType:{name:Ls.primitiveType},stringType:{name:Ls.stringType},typeRef:{name:Ls.typeRef,referenceType:Ct.$type}},superTypes:[ls.$type]},StringLiteral:{name:Dd.$type,properties:{value:{name:Dd.value}},superTypes:[fs.$type]},TerminalAlternatives:{name:ii.$type,properties:{cardinality:{name:ii.cardinality},elements:{name:ii.elements,defaultValue:[]},lookahead:{name:ii.lookahead},parenthesized:{name:ii.parenthesized,defaultValue:!1}},superTypes:[Tt.$type]},TerminalElement:{name:Tt.$type,properties:{cardinality:{name:Tt.cardinality},lookahead:{name:Tt.lookahead},parenthesized:{name:Tt.parenthesized,defaultValue:!1}},superTypes:[dt.$type]},TerminalGroup:{name:si.$type,properties:{cardinality:{name:si.cardinality},elements:{name:si.elements,defaultValue:[]},lookahead:{name:si.lookahead},parenthesized:{name:si.parenthesized,defaultValue:!1}},superTypes:[Tt.$type]},TerminalRule:{name:Gn.$type,properties:{definition:{name:Gn.definition},fragment:{name:Gn.fragment,defaultValue:!1},hidden:{name:Gn.hidden,defaultValue:!1},name:{name:Gn.name},type:{name:Gn.type}},superTypes:[Ha.$type]},TerminalRuleCall:{name:ai.$type,properties:{cardinality:{name:ai.cardinality},lookahead:{name:ai.lookahead},parenthesized:{name:ai.parenthesized,defaultValue:!1},rule:{name:ai.rule,referenceType:Gn.$type}},superTypes:[Tt.$type]},Type:{name:yo.$type,properties:{name:{name:yo.name},type:{name:yo.type}},superTypes:[Ct.$type]},TypeAttribute:{name:us.$type,properties:{defaultValue:{name:us.defaultValue},isOptional:{name:us.isOptional,defaultValue:!1},name:{name:us.name},type:{name:us.type}},superTypes:[]},TypeDefinition:{name:ls.$type,properties:{},superTypes:[]},UnionType:{name:Fd.$type,properties:{types:{name:Fd.types,defaultValue:[]}},superTypes:[ls.$type]},UnorderedGroup:{name:To.$type,properties:{cardinality:{name:To.cardinality},elements:{name:To.elements,defaultValue:[]}},superTypes:[dt.$type]},UntilToken:{name:oi.$type,properties:{cardinality:{name:oi.cardinality},lookahead:{name:oi.lookahead},parenthesized:{name:oi.parenthesized,defaultValue:!1},terminal:{name:oi.terminal}},superTypes:[Tt.$type]},ValueLiteral:{name:fs.$type,properties:{},superTypes:[]},Wildcard:{name:xs.$type,properties:{cardinality:{name:xs.cardinality},lookahead:{name:xs.lookahead},parenthesized:{name:xs.parenthesized,defaultValue:!1}},superTypes:[Tt.$type]}}}}const te=new ig;function Fu(t){return new wf(t,e=>Ws(e)?e.content:[],{includeRoot:!0})}function Mv(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function Gu(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Io(t){if(!t)return;const{offset:e,end:n,range:r}=t;return{range:r,offset:e,end:n,length:n-e}}var hn;(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"})(hn||(hn={}));function Dv(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return hn.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return hn.After;const n=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,r=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return n&&r?hn.Inside:n?hn.OverlapBack:r?hn.OverlapFront:hn.Outside}function Fv(t,e){return Dv(t,e)>hn.After}const Gv=/^[\w\p{L}]$/u;function jv(t,e){if(t){const n=Uv(t,!0);if(n&&Gd(n,e))return n;if(Zm(t)){const r=t.content.findIndex(i=>!i.hidden);for(let i=r-1;i>=0;i--){const s=t.content[i];if(Gd(s,e))return s}}}}function Gd(t,e){return Jm(t)&&e.includes(t.tokenType.name)}function Uv(t,e=!0){for(;t.container;){const n=t.container;let r=n.content.indexOf(t);for(;r>0;){r--;const i=n.content[r];if(e||!i.hidden)return i}t=n}}class sg extends Error{constructor(e,n){super(e?`${n} at ${e.range.start.line}:${e.range.start.character}`:n)}}function pa(t,e="Error: Got unexpected value."){throw new Error(e)}function W(t){return t.charCodeAt(0)}function Zc(t,e){Array.isArray(t)?t.forEach(function(n){e.push(n)}):e.push(t)}function ds(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}function Yr(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function zv(){throw Error("Internal Error - Should never get here!")}function jd(t){return t.type==="Character"}const ko=[];for(let t=W("0");t<=W("9");t++)ko.push(t);const Oo=[W("_")].concat(ko);for(let t=W("a");t<=W("z");t++)Oo.push(t);for(let t=W("A");t<=W("Z");t++)Oo.push(t);const Ud=[W(" "),W("\f"),W(`
|
|
2
2
|
`),W("\r"),W(" "),W("\v"),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W("\u2028"),W("\u2029"),W(" "),W(" "),W(" "),W("\uFEFF")],qv=/[0-9a-fA-F]/,Xa=/[0-9]/,Bv=/[1-9]/;class ag{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("/");const n=this.disjunction();this.consumeChar("/");const r={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":ds(r,"global");break;case"i":ds(r,"ignoreCase");break;case"m":ds(r,"multiLine");break;case"u":ds(r,"unicode");break;case"y":ds(r,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:r,value:n,loc:this.loc(0)}}disjunction(){const e=[],n=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(n)}}alternative(){const e=[],n=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(n)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const 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 n;switch(this.popChar()){case"=":n="Lookahead";break;case"!":n="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":n="Lookbehind";break;case"!":n="NegativeLookbehind"}break}}Yr(n);const r=this.disjunction();return this.consumeChar(")"),{type:n,value:r,loc:this.loc(e)}}return zv()}quantifier(e=!1){let n;const r=this.idx;switch(this.popChar()){case"*":n={atLeast:0,atMost:1/0};break;case"+":n={atLeast:1,atMost:1/0};break;case"?":n={atLeast:0,atMost:1};break;case"{":const i=this.integerIncludingZero();switch(this.popChar()){case"}":n={atLeast:i,atMost:i};break;case",":let s;this.isDigit()?(s=this.integerIncludingZero(),n={atLeast:i,atMost:s}):n={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&n===void 0)return;Yr(n);break}if(!(e===!0&&n===void 0)&&Yr(n))return this.peekChar(0)==="?"?(this.consumeChar("?"),n.greedy=!1):n.greedy=!0,n.type="Quantifier",n.loc=this.loc(r),n}atom(){let e;const n=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}if(e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),Yr(e))return e.loc=this.loc(n),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[W(`
|
|
3
3
|
`),W("\r"),W("\u2028"),W("\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,n=!1;switch(this.popChar()){case"d":e=ko;break;case"D":e=ko,n=!0;break;case"s":e=Ud;break;case"S":e=Ud,n=!0;break;case"w":e=Oo;break;case"W":e=Oo,n=!0;break}if(Yr(e))return{type:"Set",value:e,complement:n}}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=W("\f");break;case"n":e=W(`
|
|
4
4
|
`);break;case"r":e=W("\r");break;case"t":e=W(" ");break;case"v":e=W("\v");break}if(Yr(e))return{type:"Character",value:e}}controlLetterEscapeAtom(){this.consumeChar("c");const e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:W("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){const e=this.popChar();return{type:"Character",value:W(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as R,a as W,S as N}from"./DLA-ioQ4.js";import{_ as f,c as t,d as H,l as S,e as P,k as z,a9 as _,aa as U,a6 as C,u as F}from"./DYqShb5v.js";import{G as O}from"./qsFoMdT2.js";import{l as J}from"./CQb_mUBo.js";import"./CROH8wgk.js";import"./3jfBYqJb.js";import"./DgGwe7jd.js";var X=f(e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),"drawStartState"),D=f(e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),Y=f((e,i)=>{const d=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),c=d.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c.width+2*t().state.padding).attr("height",c.height+2*t().state.padding).attr("rx",t().state.radius),d},"drawSimpleState"),I=f((e,i)=>{const d=f(function(g,B,m){const E=g.append("tspan").attr("x",2*t().state.padding).text(B);m||E.attr("dy",t().state.textHeight)},"addTspan"),n=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),l=n.height,x=e.append("text").attr("x",t().state.padding).attr("y",l+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description");let a=!0,s=!0;i.descriptions.forEach(function(g){a||(d(x,g,s),s=!1),a=!1});const w=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+l+t().state.dividerMargin/2).attr("y2",t().state.padding+l+t().state.dividerMargin/2).attr("class","descr-divider"),p=x.node().getBBox(),o=Math.max(p.width,n.width);return w.attr("x2",o+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",o+2*t().state.padding).attr("height",p.height+l+2*t().state.padding).attr("rx",t().state.radius),e},"drawDescrState"),$=f((e,i,d)=>{const c=t().state.padding,n=2*t().state.padding,l=e.node().getBBox(),x=l.width,a=l.x,s=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),p=s.node().getBBox().width+n;let o=Math.max(p,x);o===x&&(o=o+n);let g;const B=e.node().getBBox();i.doc,g=a-c,p>x&&(g=(x-o)/2+c),Math.abs(a-B.x)<c&&p>x&&(g=a-(p-x)/2);const m=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",g).attr("y",m).attr("class",d?"alt-composit":"composit").attr("width",o).attr("height",B.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),s.attr("x",g+c),p<=x&&s.attr("x",a+(o-n)/2-p/2+c),e.insert("rect",":first-child").attr("x",g).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",g).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",B.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},"addTitleAndBox"),q=f(e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),"drawEndState"),Z=f((e,i)=>{let d=t().state.forkWidth,c=t().state.forkHeight;if(i.parentId){let n=d;d=c,c=n}return e.append("rect").style("stroke","black").style("fill","black").attr("width",d).attr("height",c).attr("x",t().state.padding).attr("y",t().state.padding)},"drawForkJoinState"),j=f((e,i,d,c)=>{let n=0;const l=c.append("text");l.style("text-anchor","start"),l.attr("class","noteText");let x=e.replace(/\r\n/g,"<br/>");x=x.replace(/\n/g,"<br/>");const a=x.split(z.lineBreakRegex);let s=1.25*t().state.noteMargin;for(const w of a){const p=w.trim();if(p.length>0){const o=l.append("tspan");if(o.text(p),s===0){const g=o.node().getBBox();s+=g.height}n+=s,o.attr("x",i+t().state.noteMargin),o.attr("y",d+n+1.25*t().state.noteMargin)}}return{textWidth:l.node().getBBox().width,textHeight:n}},"_drawLongText"),K=f((e,i)=>{i.attr("class","state-note");const d=i.append("rect").attr("x",0).attr("y",t().state.padding),c=i.append("g"),{textWidth:n,textHeight:l}=j(e,0,0,c);return d.attr("height",l+2*t().state.noteMargin),d.attr("width",n+t().state.noteMargin*2),d},"drawNote"),L=f(function(e,i){const d=i.id,c={id:d,label:i.id,width:0,height:0},n=e.append("g").attr("id",d).attr("class","stateGroup");i.type==="start"&&X(n),i.type==="end"&&q(n),(i.type==="fork"||i.type==="join")&&Z(n,i),i.type==="note"&&K(i.note.text,n),i.type==="divider"&&D(n),i.type==="default"&&i.descriptions.length===0&&Y(n,i),i.type==="default"&&i.descriptions.length>0&&I(n,i);const l=n.node().getBBox();return c.width=l.width+2*t().state.padding,c.height=l.height+2*t().state.padding,c},"drawState"),A=0,Q=f(function(e,i,d){const c=f(function(s){switch(s){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}},"getRelationType");i.points=i.points.filter(s=>!Number.isNaN(s.y));const n=i.points,l=_().x(function(s){return s.x}).y(function(s){return s.y}).curve(U),x=e.append("path").attr("d",l(n)).attr("id","edge"+A).attr("class","transition");let a="";if(t().state.arrowMarkerAbsolute&&(a=C(!0)),x.attr("marker-end","url("+a+"#"+c(N.relationType.DEPENDENCY)+"End)"),d.title!==void 0){const s=e.append("g").attr("class","stateLabel"),{x:w,y:p}=F.calcLabelPosition(i.points),o=z.getRows(d.title);let g=0;const B=[];let m=0,E=0;for(let u=0;u<=o.length;u++){const h=s.append("text").attr("text-anchor","middle").text(o[u]).attr("x",w).attr("y",p+g),y=h.node().getBBox();m=Math.max(m,y.width),E=Math.min(E,y.x),S.info(y.x,w,p+g),g===0&&(g=h.node().getBBox().height,S.info("Title height",g,p)),B.push(h)}let k=g*o.length;if(o.length>1){const u=(o.length-1)*g*.5;B.forEach((h,y)=>h.attr("y",p+y*g-u)),k=g*o.length}const r=s.node().getBBox();s.insert("rect",":first-child").attr("class","box").attr("x",w-m/2-t().state.padding/2).attr("y",p-k/2-t().state.padding/2-3.5).attr("width",m+t().state.padding).attr("height",k+t().state.padding),S.info(r)}A++},"drawEdge"),b,T={},V=f(function(){},"setConf"),tt=f(function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),et=f(function(e,i,d,c){b=t().state;const n=t().securityLevel;let l;n==="sandbox"&&(l=H("#i"+i));const x=n==="sandbox"?H(l.nodes()[0].contentDocument.body):H("body"),a=n==="sandbox"?l.nodes()[0].contentDocument:document;S.debug("Rendering diagram "+e);const s=x.select(`[id='${i}']`);tt(s);const w=c.db.getRootDoc();G(w,s,void 0,!1,x,a,c);const p=b.padding,o=s.node().getBBox(),g=o.width+p*2,B=o.height+p*2,m=g*1.75;P(s,B,m,b.useMaxWidth),s.attr("viewBox",`${o.x-b.padding} ${o.y-b.padding} `+g+" "+B)},"draw"),at=f(e=>e?e.length*b.fontSizeFactor:1,"getLabelWidth"),G=f((e,i,d,c,n,l,x)=>{const a=new O({compound:!0,multigraph:!0});let s,w=!0;for(s=0;s<e.length;s++)if(e[s].stmt==="relation"){w=!1;break}d?a.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:w?1:b.edgeLengthFactor,nodeSep:w?1:50,isMultiGraph:!0}):a.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:w?1:b.edgeLengthFactor,nodeSep:w?1:50,ranker:"tight-tree",isMultiGraph:!0}),a.setDefaultEdgeLabel(function(){return{}});const p=x.db.getStates(),o=x.db.getRelations(),g=Object.keys(p);for(const r of g){const u=p[r];d&&(u.parentId=d);let h;if(u.doc){let y=i.append("g").attr("id",u.id).attr("class","stateGroup");h=G(u.doc,y,u.id,!c,n,l,x);{y=$(y,u,c);let v=y.node().getBBox();h.width=v.width,h.height=v.height+b.padding/2,T[u.id]={y:b.compositTitleSize}}}else h=L(i,u,a);if(u.note){const y={descriptions:[],id:u.id+"-note",note:u.note,type:"note"},v=L(i,y,a);u.note.position==="left of"?(a.setNode(h.id+"-note",v),a.setNode(h.id,h)):(a.setNode(h.id,h),a.setNode(h.id+"-note",v)),a.setParent(h.id,h.id+"-group"),a.setParent(h.id+"-note",h.id+"-group")}else a.setNode(h.id,h)}S.debug("Count=",a.nodeCount(),a);let B=0;o.forEach(function(r){B++,S.debug("Setting edge",r),a.setEdge(r.id1,r.id2,{relation:r,width:at(r.title),height:b.labelHeight*z.getRows(r.title).length,labelpos:"c"},"id"+B)}),J(a),S.debug("Graph after layout",a.nodes());const m=i.node();a.nodes().forEach(function(r){r!==void 0&&a.node(r)!==void 0?(S.warn("Node "+r+": "+JSON.stringify(a.node(r))),n.select("#"+m.id+" #"+r).attr("transform","translate("+(a.node(r).x-a.node(r).width/2)+","+(a.node(r).y+(T[r]?T[r].y:0)-a.node(r).height/2)+" )"),n.select("#"+m.id+" #"+r).attr("data-x-shift",a.node(r).x-a.node(r).width/2),l.querySelectorAll("#"+m.id+" #"+r+" .divider").forEach(h=>{const y=h.parentElement;let v=0,M=0;y&&(y.parentElement&&(v=y.parentElement.getBBox().width),M=parseInt(y.getAttribute("data-x-shift"),10),Number.isNaN(M)&&(M=0)),h.setAttribute("x1",0-M+8),h.setAttribute("x2",v-M-8)})):S.debug("No Node "+r+": "+JSON.stringify(a.node(r)))});let E=m.getBBox();a.edges().forEach(function(r){r!==void 0&&a.edge(r)!==void 0&&(S.debug("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(a.edge(r))),Q(i,a.edge(r),a.edge(r).relation))}),E=m.getBBox();const k={id:d||"root",label:d||"root",width:0,height:0};return k.width=E.width+2*b.padding,k.height=E.height+2*b.padding,S.debug("Doc rendered",k,a),k},"renderDoc"),it={setConf:V,draw:et},lt={parser:W,get db(){return new N(1)},renderer:it,styles:R,init:f(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{lt as diagram};
|
|
1
|
+
import{s as R,a as W,S as N}from"./Cym7bWgs.js";import{_ as f,c as t,d as H,l as S,e as P,k as z,a9 as _,aa as U,a6 as C,u as F}from"./DSOwr8Hs.js";import{G as O}from"./qsFoMdT2.js";import{l as J}from"./CQb_mUBo.js";import"./RTN5rY4m.js";import"./DuKway_J.js";import"./D7uoAo-G.js";var X=f(e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),"drawStartState"),D=f(e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),Y=f((e,i)=>{const d=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),c=d.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c.width+2*t().state.padding).attr("height",c.height+2*t().state.padding).attr("rx",t().state.radius),d},"drawSimpleState"),I=f((e,i)=>{const d=f(function(g,B,m){const E=g.append("tspan").attr("x",2*t().state.padding).text(B);m||E.attr("dy",t().state.textHeight)},"addTspan"),n=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),l=n.height,x=e.append("text").attr("x",t().state.padding).attr("y",l+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description");let a=!0,s=!0;i.descriptions.forEach(function(g){a||(d(x,g,s),s=!1),a=!1});const w=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+l+t().state.dividerMargin/2).attr("y2",t().state.padding+l+t().state.dividerMargin/2).attr("class","descr-divider"),p=x.node().getBBox(),o=Math.max(p.width,n.width);return w.attr("x2",o+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",o+2*t().state.padding).attr("height",p.height+l+2*t().state.padding).attr("rx",t().state.radius),e},"drawDescrState"),$=f((e,i,d)=>{const c=t().state.padding,n=2*t().state.padding,l=e.node().getBBox(),x=l.width,a=l.x,s=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),p=s.node().getBBox().width+n;let o=Math.max(p,x);o===x&&(o=o+n);let g;const B=e.node().getBBox();i.doc,g=a-c,p>x&&(g=(x-o)/2+c),Math.abs(a-B.x)<c&&p>x&&(g=a-(p-x)/2);const m=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",g).attr("y",m).attr("class",d?"alt-composit":"composit").attr("width",o).attr("height",B.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),s.attr("x",g+c),p<=x&&s.attr("x",a+(o-n)/2-p/2+c),e.insert("rect",":first-child").attr("x",g).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",g).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",B.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},"addTitleAndBox"),q=f(e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),"drawEndState"),Z=f((e,i)=>{let d=t().state.forkWidth,c=t().state.forkHeight;if(i.parentId){let n=d;d=c,c=n}return e.append("rect").style("stroke","black").style("fill","black").attr("width",d).attr("height",c).attr("x",t().state.padding).attr("y",t().state.padding)},"drawForkJoinState"),j=f((e,i,d,c)=>{let n=0;const l=c.append("text");l.style("text-anchor","start"),l.attr("class","noteText");let x=e.replace(/\r\n/g,"<br/>");x=x.replace(/\n/g,"<br/>");const a=x.split(z.lineBreakRegex);let s=1.25*t().state.noteMargin;for(const w of a){const p=w.trim();if(p.length>0){const o=l.append("tspan");if(o.text(p),s===0){const g=o.node().getBBox();s+=g.height}n+=s,o.attr("x",i+t().state.noteMargin),o.attr("y",d+n+1.25*t().state.noteMargin)}}return{textWidth:l.node().getBBox().width,textHeight:n}},"_drawLongText"),K=f((e,i)=>{i.attr("class","state-note");const d=i.append("rect").attr("x",0).attr("y",t().state.padding),c=i.append("g"),{textWidth:n,textHeight:l}=j(e,0,0,c);return d.attr("height",l+2*t().state.noteMargin),d.attr("width",n+t().state.noteMargin*2),d},"drawNote"),L=f(function(e,i){const d=i.id,c={id:d,label:i.id,width:0,height:0},n=e.append("g").attr("id",d).attr("class","stateGroup");i.type==="start"&&X(n),i.type==="end"&&q(n),(i.type==="fork"||i.type==="join")&&Z(n,i),i.type==="note"&&K(i.note.text,n),i.type==="divider"&&D(n),i.type==="default"&&i.descriptions.length===0&&Y(n,i),i.type==="default"&&i.descriptions.length>0&&I(n,i);const l=n.node().getBBox();return c.width=l.width+2*t().state.padding,c.height=l.height+2*t().state.padding,c},"drawState"),A=0,Q=f(function(e,i,d){const c=f(function(s){switch(s){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}},"getRelationType");i.points=i.points.filter(s=>!Number.isNaN(s.y));const n=i.points,l=_().x(function(s){return s.x}).y(function(s){return s.y}).curve(U),x=e.append("path").attr("d",l(n)).attr("id","edge"+A).attr("class","transition");let a="";if(t().state.arrowMarkerAbsolute&&(a=C(!0)),x.attr("marker-end","url("+a+"#"+c(N.relationType.DEPENDENCY)+"End)"),d.title!==void 0){const s=e.append("g").attr("class","stateLabel"),{x:w,y:p}=F.calcLabelPosition(i.points),o=z.getRows(d.title);let g=0;const B=[];let m=0,E=0;for(let u=0;u<=o.length;u++){const h=s.append("text").attr("text-anchor","middle").text(o[u]).attr("x",w).attr("y",p+g),y=h.node().getBBox();m=Math.max(m,y.width),E=Math.min(E,y.x),S.info(y.x,w,p+g),g===0&&(g=h.node().getBBox().height,S.info("Title height",g,p)),B.push(h)}let k=g*o.length;if(o.length>1){const u=(o.length-1)*g*.5;B.forEach((h,y)=>h.attr("y",p+y*g-u)),k=g*o.length}const r=s.node().getBBox();s.insert("rect",":first-child").attr("class","box").attr("x",w-m/2-t().state.padding/2).attr("y",p-k/2-t().state.padding/2-3.5).attr("width",m+t().state.padding).attr("height",k+t().state.padding),S.info(r)}A++},"drawEdge"),b,T={},V=f(function(){},"setConf"),tt=f(function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),et=f(function(e,i,d,c){b=t().state;const n=t().securityLevel;let l;n==="sandbox"&&(l=H("#i"+i));const x=n==="sandbox"?H(l.nodes()[0].contentDocument.body):H("body"),a=n==="sandbox"?l.nodes()[0].contentDocument:document;S.debug("Rendering diagram "+e);const s=x.select(`[id='${i}']`);tt(s);const w=c.db.getRootDoc();G(w,s,void 0,!1,x,a,c);const p=b.padding,o=s.node().getBBox(),g=o.width+p*2,B=o.height+p*2,m=g*1.75;P(s,B,m,b.useMaxWidth),s.attr("viewBox",`${o.x-b.padding} ${o.y-b.padding} `+g+" "+B)},"draw"),at=f(e=>e?e.length*b.fontSizeFactor:1,"getLabelWidth"),G=f((e,i,d,c,n,l,x)=>{const a=new O({compound:!0,multigraph:!0});let s,w=!0;for(s=0;s<e.length;s++)if(e[s].stmt==="relation"){w=!1;break}d?a.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:w?1:b.edgeLengthFactor,nodeSep:w?1:50,isMultiGraph:!0}):a.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:w?1:b.edgeLengthFactor,nodeSep:w?1:50,ranker:"tight-tree",isMultiGraph:!0}),a.setDefaultEdgeLabel(function(){return{}});const p=x.db.getStates(),o=x.db.getRelations(),g=Object.keys(p);for(const r of g){const u=p[r];d&&(u.parentId=d);let h;if(u.doc){let y=i.append("g").attr("id",u.id).attr("class","stateGroup");h=G(u.doc,y,u.id,!c,n,l,x);{y=$(y,u,c);let v=y.node().getBBox();h.width=v.width,h.height=v.height+b.padding/2,T[u.id]={y:b.compositTitleSize}}}else h=L(i,u,a);if(u.note){const y={descriptions:[],id:u.id+"-note",note:u.note,type:"note"},v=L(i,y,a);u.note.position==="left of"?(a.setNode(h.id+"-note",v),a.setNode(h.id,h)):(a.setNode(h.id,h),a.setNode(h.id+"-note",v)),a.setParent(h.id,h.id+"-group"),a.setParent(h.id+"-note",h.id+"-group")}else a.setNode(h.id,h)}S.debug("Count=",a.nodeCount(),a);let B=0;o.forEach(function(r){B++,S.debug("Setting edge",r),a.setEdge(r.id1,r.id2,{relation:r,width:at(r.title),height:b.labelHeight*z.getRows(r.title).length,labelpos:"c"},"id"+B)}),J(a),S.debug("Graph after layout",a.nodes());const m=i.node();a.nodes().forEach(function(r){r!==void 0&&a.node(r)!==void 0?(S.warn("Node "+r+": "+JSON.stringify(a.node(r))),n.select("#"+m.id+" #"+r).attr("transform","translate("+(a.node(r).x-a.node(r).width/2)+","+(a.node(r).y+(T[r]?T[r].y:0)-a.node(r).height/2)+" )"),n.select("#"+m.id+" #"+r).attr("data-x-shift",a.node(r).x-a.node(r).width/2),l.querySelectorAll("#"+m.id+" #"+r+" .divider").forEach(h=>{const y=h.parentElement;let v=0,M=0;y&&(y.parentElement&&(v=y.parentElement.getBBox().width),M=parseInt(y.getAttribute("data-x-shift"),10),Number.isNaN(M)&&(M=0)),h.setAttribute("x1",0-M+8),h.setAttribute("x2",v-M-8)})):S.debug("No Node "+r+": "+JSON.stringify(a.node(r)))});let E=m.getBBox();a.edges().forEach(function(r){r!==void 0&&a.edge(r)!==void 0&&(S.debug("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(a.edge(r))),Q(i,a.edge(r),a.edge(r).relation))}),E=m.getBBox();const k={id:d||"root",label:d||"root",width:0,height:0};return k.width=E.width+2*b.padding,k.height=E.height+2*b.padding,S.debug("Doc rendered",k,a),k},"renderDoc"),it={setConf:V,draw:et},lt={parser:W,get db(){return new N(1)},renderer:it,styles:R,init:f(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{lt as diagram};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var U=Object.defineProperty;var j=(n,a,e)=>a in n?U(n,a,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[a]=e;var p=(n,a,e)=>j(n,typeof a!="symbol"?a+"":a,e);import{bl as q,bm as T,bn as C,r as M,aI as F,au as H,aK as V,bo as I,aE as K,an as L,bp as S,bq as N,br as $,bs as k,g as G,c as A,aG as b,av as J,bt as Q}from"./
|
|
1
|
+
var U=Object.defineProperty;var j=(n,a,e)=>a in n?U(n,a,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[a]=e;var p=(n,a,e)=>j(n,typeof a!="symbol"?a+"":a,e);import{bl as q,bm as T,bn as C,r as M,aI as F,au as H,aK as V,bo as I,aE as K,an as L,bp as S,bq as N,br as $,bs as k,g as G,c as A,aG as b,av as J,bt as Q}from"./D7uoAo-G.js";const W=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],X=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998],Y="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",v=[];class Z{constructor(){p(this,"_data",new O);p(this,"_hash",new O([...W]));p(this,"_nDataBytes",0);p(this,"_minBufferSize",0)}finalize(a){a&&this._append(a);const e=this._nDataBytes*8,s=this._data.sigBytes*8;return this._data.words[s>>>5]|=128<<24-s%32,this._data.words[(s+64>>>9<<4)+14]=Math.floor(e/4294967296),this._data.words[(s+64>>>9<<4)+15]=e,this._data.sigBytes=this._data.words.length*4,this._process(),this._hash}_doProcessBlock(a,e){const s=this._hash.words;let t=s[0],r=s[1],c=s[2],y=s[3],f=s[4],m=s[5],g=s[6],i=s[7];for(let u=0;u<64;u++){if(u<16)v[u]=a[e+u]|0;else{const o=v[u-15],D=(o<<25|o>>>7)^(o<<14|o>>>18)^o>>>3,h=v[u-2],R=(h<<15|h>>>17)^(h<<13|h>>>19)^h>>>10;v[u]=D+v[u-7]+R+v[u-16]}const w=f&m^~f&g,B=t&r^t&c^r&c,P=(t<<30|t>>>2)^(t<<19|t>>>13)^(t<<10|t>>>22),l=(f<<26|f>>>6)^(f<<21|f>>>11)^(f<<7|f>>>25),_=i+l+w+X[u]+v[u],d=P+B;i=g,g=m,m=f,f=y+_|0,y=c,c=r,r=t,t=_+d|0}s[0]=s[0]+t|0,s[1]=s[1]+r|0,s[2]=s[2]+c|0,s[3]=s[3]+y|0,s[4]=s[4]+f|0,s[5]=s[5]+m|0,s[6]=s[6]+g|0,s[7]=s[7]+i|0}_append(a){typeof a=="string"&&(a=O.fromUtf8(a)),this._data.concat(a),this._nDataBytes+=a.sigBytes}_process(a){let e,s=this._data.sigBytes/64;a?s=Math.ceil(s):s=Math.max((s|0)-this._minBufferSize,0);const t=s*16,r=Math.min(t*4,this._data.sigBytes);if(t){for(let c=0;c<t;c+=16)this._doProcessBlock(this._data.words,c);e=this._data.words.splice(0,t),this._data.sigBytes-=r}return new O(e,r)}}class O{constructor(a,e){p(this,"words");p(this,"sigBytes");a=this.words=a||[],this.sigBytes=e===void 0?a.length*4:e}static fromUtf8(a){const e=unescape(encodeURIComponent(a)),s=e.length,t=[];for(let r=0;r<s;r++)t[r>>>2]|=(e.charCodeAt(r)&255)<<24-r%4*8;return new O(t,s)}toBase64(){const a=[];for(let e=0;e<this.sigBytes;e+=3){const s=this.words[e>>>2]>>>24-e%4*8&255,t=this.words[e+1>>>2]>>>24-(e+1)%4*8&255,r=this.words[e+2>>>2]>>>24-(e+2)%4*8&255,c=s<<16|t<<8|r;for(let y=0;y<4&&e*8+y*6<this.sigBytes*8;y++)a.push(Y.charAt(c>>>6*(3-y)&63))}return a.join("")}concat(a){if(this.words[this.sigBytes>>>2]&=4294967295<<32-this.sigBytes%4*8,this.words.length=Math.ceil(this.sigBytes/4),this.sigBytes%4)for(let e=0;e<a.sigBytes;e++){const s=a.words[e>>>2]>>>24-e%4*8&255;this.words[this.sigBytes+e>>>2]|=s<<24-(this.sigBytes+e)%4*8}else for(let e=0;e<a.sigBytes;e+=4)this.words[this.sigBytes+e>>>2]=a.words[e>>>2];this.sigBytes+=a.sigBytes}}function ee(n){return new Z().finalize(n).toBase64()}function te(n){return ee(q(n))}function ae(n){return Array.isArray(n)?n:[n]}const se=n=>n==="defer"||n===!1;function re(...n){var P;const a=typeof n[n.length-1]=="string"?n.pop():void 0;typeof n[0]!="string"&&n.unshift(a);let[e,s,t={}]=n;if(typeof e!="string")throw new TypeError("[nuxt] [asyncData] key must be a string.");if(typeof s!="function")throw new TypeError("[nuxt] [asyncData] handler must be a function.");const r=T(),c=s,y=()=>C.value,f=()=>r.isHydrating?r.payload.data[e]:r.static.data[e];t.server??(t.server=!0),t.default??(t.default=y),t.getCachedData??(t.getCachedData=f),t.lazy??(t.lazy=!1),t.immediate??(t.immediate=!0),t.deep??(t.deep=C.deep),t.dedupe??(t.dedupe="cancel");const m=t.getCachedData(e,r),g=m!=null;if(!r._asyncData[e]||!t.immediate){(P=r.payload._errors)[e]??(P[e]=C.errorValue);const l=t.deep?M:F;r._asyncData[e]={data:l(g?m:t.default()),pending:M(!g),error:H(r.payload._errors,e),status:M("idle"),_default:t.default}}const i={...r._asyncData[e]};delete i._default,i.refresh=i.execute=(l={})=>{if(r._asyncDataPromises[e]){if(se(l.dedupe??t.dedupe))return r._asyncDataPromises[e];r._asyncDataPromises[e].cancelled=!0}if(l._initial||r.isHydrating&&l._initial!==!1){const d=l._initial?m:t.getCachedData(e,r);if(d!=null)return Promise.resolve(d)}i.pending.value=!0,i.status.value="pending";const _=new Promise((d,o)=>{try{d(c(r))}catch(D){o(D)}}).then(async d=>{if(_.cancelled)return r._asyncDataPromises[e];let o=d;t.transform&&(o=await t.transform(d)),t.pick&&(o=ie(o,t.pick)),r.payload.data[e]=o,i.data.value=o,i.error.value=C.errorValue,i.status.value="success"}).catch(d=>{if(_.cancelled)return r._asyncDataPromises[e];i.error.value=k(d),i.data.value=G(t.default()),i.status.value="error"}).finally(()=>{_.cancelled||(i.pending.value=!1,delete r._asyncDataPromises[e])});return r._asyncDataPromises[e]=_,r._asyncDataPromises[e]},i.clear=()=>ne(r,e);const u=()=>i.refresh({_initial:!0}),w=t.server!==!1&&r.payload.serverRendered;{const l=V();if(l&&w&&t.immediate&&!l.sp&&(l.sp=[]),l&&!l._nuxtOnBeforeMountCbs){l._nuxtOnBeforeMountCbs=[];const o=l._nuxtOnBeforeMountCbs;I(()=>{o.forEach(D=>{D()}),o.splice(0,o.length)}),K(()=>o.splice(0,o.length))}w&&r.isHydrating&&(i.error.value||m!=null)?(i.pending.value=!1,i.status.value=i.error.value?"error":"success"):l&&(r.payload.serverRendered&&r.isHydrating||t.lazy)&&t.immediate?l._nuxtOnBeforeMountCbs.push(u):t.immediate&&u();const _=$();if(t.watch){const o=L(t.watch,()=>i.refresh());_&&S(o)}const d=r.hook("app:data:refresh",async o=>{(!o||o.includes(e))&&await i.refresh()});_&&S(d)}const B=Promise.resolve(r._asyncDataPromises[e]).then(()=>i);return Object.assign(B,i),B}async function fe(n){await new Promise(e=>N(e));const a=n?ae(n):void 0;await T().hooks.callHookParallel("app:data:refresh",a)}function ne(n,a){a in n.payload.data&&(n.payload.data[a]=void 0),a in n.payload._errors&&(n.payload._errors[a]=C.errorValue),n._asyncData[a]&&(n._asyncData[a].data.value=void 0,n._asyncData[a].error.value=C.errorValue,n._asyncData[a].pending.value=!1,n._asyncData[a].status.value="idle"),a in n._asyncDataPromises&&(n._asyncDataPromises[a]&&(n._asyncDataPromises[a].cancelled=!0),n._asyncDataPromises[a]=void 0)}function ie(n,a){const e={};for(const s of a)e[s]=n[s];return e}function de(n,a,e){const[s={},t]=typeof a=="string"?[{},a]:[a,e],r=A(()=>b(n)),c=s.key||te([t,typeof r.value=="string"?r.value:"",...oe(s)]);if(!c||typeof c!="string")throw new TypeError("[nuxt] [useFetch] key must be a string: "+c);if(!n)throw new Error("[nuxt] [useFetch] request is missing.");const y=c===t?"$f"+c:c;if(!s.baseURL&&typeof r.value=="string"&&r.value[0]==="/"&&r.value[1]==="/")throw new Error('[nuxt] [useFetch] the request URL must not start with "//".');const{server:f,lazy:m,default:g,transform:i,pick:u,watch:w,immediate:B,getCachedData:P,deep:l,dedupe:_,...d}=s,o=J({...Q,...d,cache:typeof s.cache=="boolean"?void 0:s.cache}),D={server:f,lazy:m,default:g,transform:i,pick:u,immediate:B,getCachedData:P,deep:l,dedupe:_,watch:w===!1?[]:[o,r,...w||[]]};let h;return re(y,()=>{var x;(x=h==null?void 0:h.abort)==null||x.call(h,new DOMException("Request aborted as another request to the same endpoint was initiated.","AbortError")),h=typeof AbortController<"u"?new AbortController:{};const z=b(s.timeout);let E;return z&&(E=setTimeout(()=>h.abort(new DOMException("Request aborted due to timeout.","AbortError")),z),h.signal.onabort=()=>clearTimeout(E)),(s.$fetch||globalThis.$fetch)(r.value,{signal:h.signal,...o}).finally(()=>{clearTimeout(E)})},D)}function oe(n){var e;const a=[((e=b(n.method))==null?void 0:e.toUpperCase())||"GET",b(n.baseURL)];for(const s of[n.params||n.query]){const t=b(s);if(!t)continue;const r={};for(const[c,y]of Object.entries(t))r[b(c)]=b(y);a.push(r)}return a}export{fe as r,de as u};
|