mongoku 2.9.0-compat → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/client/_app/immutable/chunks/{CS2LukIO.js → -jLNyJzC.js} +1 -1
- package/build/client/_app/immutable/chunks/-jLNyJzC.js.br +0 -0
- package/build/client/_app/immutable/chunks/-jLNyJzC.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{Dchfcdh4.js → B-0CauNF.js} +1 -1
- package/build/client/_app/immutable/chunks/B-0CauNF.js.br +0 -0
- package/build/client/_app/immutable/chunks/B-0CauNF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{AXErlVVG.js → BfsQcfVI.js} +1 -1
- package/build/client/_app/immutable/chunks/BfsQcfVI.js.br +0 -0
- package/build/client/_app/immutable/chunks/BfsQcfVI.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DeOonNGy.js → CWVg1wU_.js} +1 -1
- package/build/client/_app/immutable/chunks/CWVg1wU_.js.br +0 -0
- package/build/client/_app/immutable/chunks/{DeOonNGy.js.gz → CWVg1wU_.js.gz} +0 -0
- package/build/client/_app/immutable/chunks/{BwoNhxjg.js → CzuLYUff.js} +1 -1
- package/build/client/_app/immutable/chunks/CzuLYUff.js.br +0 -0
- package/build/client/_app/immutable/chunks/CzuLYUff.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{ChBg3kNp.js → DaDQ7m8i.js} +1 -1
- package/build/client/_app/immutable/chunks/DaDQ7m8i.js.br +0 -0
- package/build/client/_app/immutable/chunks/DaDQ7m8i.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DkIGOVHS.js +4 -0
- package/build/client/_app/immutable/chunks/DkIGOVHS.js.br +0 -0
- package/build/client/_app/immutable/chunks/DkIGOVHS.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.Cnr92HsX.js → app.DKM881FC.js} +2 -2
- package/build/client/_app/immutable/entry/app.DKM881FC.js.br +0 -0
- package/build/client/_app/immutable/entry/app.DKM881FC.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BMV36X_I.js +1 -0
- package/build/client/_app/immutable/entry/start.BMV36X_I.js.br +0 -0
- package/build/client/_app/immutable/entry/start.BMV36X_I.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.D--SH7lr.js → 0.xAEfnyVv.js} +1 -1
- package/build/client/_app/immutable/nodes/0.xAEfnyVv.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.xAEfnyVv.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.CfS20bBk.js → 1.DJI4SFHI.js} +1 -1
- package/build/client/_app/immutable/nodes/1.DJI4SFHI.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.DJI4SFHI.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{10.XNPeqIPf.js → 10.B9mmyl9C.js} +1 -1
- package/build/client/_app/immutable/nodes/10.B9mmyl9C.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.B9mmyl9C.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{11.CGK1EcDL.js → 11.BJVYZRNF.js} +1 -1
- package/build/client/_app/immutable/nodes/11.BJVYZRNF.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.BJVYZRNF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{12.CxTR_73N.js → 12.BIVbh2K8.js} +1 -1
- package/build/client/_app/immutable/nodes/12.BIVbh2K8.js.br +0 -0
- package/build/client/_app/immutable/nodes/12.BIVbh2K8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{13.DxFblnDq.js → 13.CuqM9sa_.js} +1 -1
- package/build/client/_app/immutable/nodes/13.CuqM9sa_.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.CuqM9sa_.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{14.Damf9Bij.js → 14.Cku4UiID.js} +1 -1
- package/build/client/_app/immutable/nodes/14.Cku4UiID.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.Cku4UiID.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{15.DKVveqyb.js → 15.CFozZIMA.js} +1 -1
- package/build/client/_app/immutable/nodes/15.CFozZIMA.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.CFozZIMA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.BrMDvseF.js → 7.B2HL850y.js} +1 -1
- package/build/client/_app/immutable/nodes/7.B2HL850y.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.B2HL850y.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.BxYzhvU1.js → 8.R4oSBMsW.js} +1 -1
- package/build/client/_app/immutable/nodes/8.R4oSBMsW.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.R4oSBMsW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{9.oHz2JV_1.js → 9.gCKAeDLD.js} +1 -1
- package/build/client/_app/immutable/nodes/9.gCKAeDLD.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.gCKAeDLD.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{0-xp6k7WWM.js → 0-DHpbgO4k.js} +2 -2
- package/build/server/chunks/{0-xp6k7WWM.js.map → 0-DHpbgO4k.js.map} +1 -1
- package/build/server/chunks/{1-zOPta5ak.js → 1-qCdcNckL.js} +2 -2
- package/build/server/chunks/{1-zOPta5ak.js.map → 1-qCdcNckL.js.map} +1 -1
- package/build/server/chunks/{10-Dhe07FYG.js → 10-DADbl5RU.js} +2 -2
- package/build/server/chunks/{10-Dhe07FYG.js.map → 10-DADbl5RU.js.map} +1 -1
- package/build/server/chunks/{11-DDHEOURT.js → 11-B5XzpQJ2.js} +2 -2
- package/build/server/chunks/{11-DDHEOURT.js.map → 11-B5XzpQJ2.js.map} +1 -1
- package/build/server/chunks/{12-Db_xDDjW.js → 12-DvEgVREo.js} +2 -2
- package/build/server/chunks/{12-Db_xDDjW.js.map → 12-DvEgVREo.js.map} +1 -1
- package/build/server/chunks/{13-CzMKjEv9.js → 13-BhmqzR8h.js} +2 -2
- package/build/server/chunks/{13-CzMKjEv9.js.map → 13-BhmqzR8h.js.map} +1 -1
- package/build/server/chunks/{14-BayJ52pt.js → 14-BfgW3WwW.js} +2 -2
- package/build/server/chunks/{14-BayJ52pt.js.map → 14-BfgW3WwW.js.map} +1 -1
- package/build/server/chunks/{15-0Uv1hrI_.js → 15-EvY9zrFS.js} +2 -2
- package/build/server/chunks/{15-0Uv1hrI_.js.map → 15-EvY9zrFS.js.map} +1 -1
- package/build/server/chunks/{7-CRPZ9GW3.js → 7-DVs6miRk.js} +2 -2
- package/build/server/chunks/{7-CRPZ9GW3.js.map → 7-DVs6miRk.js.map} +1 -1
- package/build/server/chunks/{8-CkktJU5D.js → 8-DsmWMnBl.js} +2 -2
- package/build/server/chunks/{8-CkktJU5D.js.map → 8-DsmWMnBl.js.map} +1 -1
- package/build/server/chunks/{9-BcC34Wws.js → 9-DOuKepr0.js} +2 -2
- package/build/server/chunks/{9-BcC34Wws.js.map → 9-DOuKepr0.js.map} +1 -1
- package/build/server/index.js +1 -1
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +12 -12
- package/build/server/manifest.js.map +1 -1
- package/package.json +1 -1
- package/build/client/_app/immutable/chunks/AXErlVVG.js.br +0 -0
- package/build/client/_app/immutable/chunks/AXErlVVG.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BwoNhxjg.js.br +0 -0
- package/build/client/_app/immutable/chunks/BwoNhxjg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CS2LukIO.js.br +0 -0
- package/build/client/_app/immutable/chunks/CS2LukIO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ChBg3kNp.js.br +0 -0
- package/build/client/_app/immutable/chunks/ChBg3kNp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DR3Cu5oT.js +0 -4
- package/build/client/_app/immutable/chunks/DR3Cu5oT.js.br +0 -0
- package/build/client/_app/immutable/chunks/DR3Cu5oT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dchfcdh4.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dchfcdh4.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DeOonNGy.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Cnr92HsX.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Cnr92HsX.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CUm_Zoui.js +0 -1
- package/build/client/_app/immutable/entry/start.CUm_Zoui.js.br +0 -0
- package/build/client/_app/immutable/entry/start.CUm_Zoui.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.D--SH7lr.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.D--SH7lr.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.CfS20bBk.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.CfS20bBk.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.XNPeqIPf.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.XNPeqIPf.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.CGK1EcDL.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.CGK1EcDL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/12.CxTR_73N.js.br +0 -0
- package/build/client/_app/immutable/nodes/12.CxTR_73N.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.DxFblnDq.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.DxFblnDq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.Damf9Bij.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.Damf9Bij.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.DKVveqyb.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.DKVveqyb.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.BrMDvseF.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.BrMDvseF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.BxYzhvU1.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.BxYzhvU1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.oHz2JV_1.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.oHz2JV_1.js.gz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as v,a as i,c as kt,t as Tt}from"../chunks/DjUt71lH.js";import{p as Jt,a8 as se,s as d,c as a,r as t,a as Kt,g as e,u as M,t as j,b as x,M as Ae,d as l,f as ae,o as At,n as Ne,aA as Bt,bb as Ma}from"../chunks/ogOVEqzG.js";import{d as Vt,s as P,a as Y}from"../chunks/wZ9dd4xr.js";import{a as Oa,f as Ia}from"../chunks/B-TH2U-E.js";import{p as lt,i as k}from"../chunks/DIjqwnsi.js";import{e as it,n as F,s as Rt,i as $t}from"../chunks/BaCQ7DA8.js";import{a as qt}from"../chunks/Hg2DaShQ.js";import{a as ge,s as ve}from"../chunks/Dchfcdh4.js";import{s as Ea}from"../chunks/Cl89kjea.js";import{a as Re,b as ot}from"../chunks/CynGo-ch.js";import{h as Ca,j as Fa,k as Da,l as La,m as Ua,P as Be,n as Ta,o as Aa}from"../chunks/AXErlVVG.js";import{r as Ba,f as Ra,h as $a}from"../chunks/DR3Cu5oT.js";import{p as je}from"../chunks/BwoNhxjg.js";import{j as Wt,J as qa}from"../chunks/DeOonNGy.js";import{M as zt}from"../chunks/BnRtSpxa.js";const Wa=async n=>({...n.data,categories:[{key:"documents",label:"Documents"},{key:"indexes",label:"Indexes"},{key:"mappings",label:"Mappings"},{key:"schema",label:"Schema"}]}),ar=Object.freeze(Object.defineProperty({__proto__:null,load:Wa},Symbol.toStringTag,{value:"Module"}));function za(n,o){if(n.length<o.length&&o.endsWith(n))return n;if(o.length<n.length&&n.endsWith(o))return o;let c="",s=n.length-1,g=o.length-1;for(;s>=0&&g>=0&&n[s]===o[g];)c=n.slice(s),s--,g--;return c}function Ha(n,o){if(!n||o.length===0)return null;let c=null,s=0;for(const g of o){const C=za(n,g);C.length>s?(s=C.length,c=g):C.length===s&&(c=null)}return c}var Ja=v('<div class="loading-message svelte-14baj27">Loading nodes...</div>'),Ka=v('<div class="no-nodes-message svelte-14baj27">No nodes found. Click "Fetch Usage" to load nodes.</div>'),Va=v('<span class="primary-badge svelte-14baj27">PRIMARY</span>'),Ya=v('<label class="checkbox-label svelte-14baj27"><input type="checkbox" class="svelte-14baj27"/> <span class="node-name svelte-14baj27"> <!></span></label>'),Ga=v('<div class="selector-options svelte-14baj27"></div>'),Qa=v('<div class="replica-set-selector svelte-14baj27"><div class="selector-header svelte-14baj27"><span class="selector-title svelte-14baj27">Replica Set Nodes</span> <span class="selector-subtitle svelte-14baj27">Select specific nodes to fetch index stats from</span></div> <!></div>');function Xa(n,o){Jt(o,!0);let c=lt(o,"availableNodes",27,()=>se([])),s=lt(o,"selectedNodes",31,()=>se([])),g=lt(o,"loading",3,!1),C=lt(o,"primaryNode",3,null),$=M(()=>Object.fromEntries(c().map(O=>[O,s().includes(O)])));const Pe=M(()=>!C()||c().length===0?null:Ha(C(),c()));function re(){s(Object.keys(e($)).filter(O=>e($)[O]))}var D=Qa(),A=d(a(D),2);{var he=O=>{var J=Ja();i(O,J)},$e=O=>{var J=Ka();i(O,J)},G=O=>{var J=Ga();it(J,20,c,le=>le,(le,q)=>{var K=Ya(),oe=a(K);ge(oe);var fe=d(oe,2),Me=a(fe),dt=d(Me);{var qe=B=>{var ct=Va();i(B,ct)};k(dt,B=>{q===e(Pe)&&B(qe)})}t(fe),t(K),j(()=>{ve(fe,"title",q),P(Me,`${q??""} `)}),Y("change",oe,re),Re(oe,()=>e($)[q],B=>e($)[q]=B),i(le,K)}),t(J),i(O,J)};k(A,O=>{g()?O(he):c().length===0?O($e,1):O(G,-1)})}t(D),i(n,D),Kt()}Vt(["change"]);function nt(n,o=3){if(n===0)return"0";const c=Math.abs(n),s=n<0?"-":"";if(c>=1e9){const g=c/1e9;return`${s}${g.toPrecision(o)}B`}else if(c>=1e6){const g=c/1e6;return`${s}${g.toPrecision(o)}M`}else if(c>=1e3){const g=c/1e3;return`${s}${g.toPrecision(o)}k`}else return`${s}${c.toPrecision(Math.min(o,Math.ceil(Math.log10(c+1))))}`}function Za(n){if(!n)return"";const c=new Date().getTime()-n.getTime(),s=Math.floor(c/1e3),g=Math.floor(s/60),C=Math.floor(g/60);return C>0?`${C}h ${g%60}m ago`:g>0?`${g}m ${s%60}s ago`:`${s}s ago`}function Yt(n){if(n.length===0||n.length===1)return"";let o=n[0];for(let c=1;c<n.length;c++)for(;n[c].indexOf(o)!==0;)if(o=o.substring(0,o.length-1),o==="")return"";return o}function es(n){if(n.length===0||n.length===1)return"";const o=n.map(s=>s.split("").reverse().join(""));return Yt(o).split("").reverse().join("")}function ts(n,o,c){if(!o&&!c)return n;let s=n;if(o&&s.startsWith(o)&&(s=s.slice(o.length)),c&&s.endsWith(c)&&(s=s.slice(0,-c.length)),s.length===0)return n;const g=o.length>0,C=c.length>0;return g&&C?`…${s}…`:g?`…${s}`:C?`${s}…`:s}function as(n){if(n.length<=1)return Object.fromEntries(n.map(s=>[s,s]));const o=Yt(n),c=es(n);return Object.fromEntries(n.map(s=>[s,ts(s,o,c)]))}function ss(n,o){return Object.fromEntries(Object.entries(n).filter(([c])=>!o.includes(c)))}function Ht(n){let o=0;for(const c of n)o+=c;return o}var rs=v('<div class="p-4 svelte-l3ef1w"><p class="error svelte-l3ef1w"> </p></div>'),ls=v('<button class="btn btn-success btn-sm flex items-center svelte-l3ef1w" type="button"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="w-4 h-4 inline mr-1 svelte-l3ef1w"><path d="M12 5v14M5 12h14" class="svelte-l3ef1w"></path></svg> Create Index</button>'),os=v('<div class="text-center p-4 svelte-l3ef1w" style="color: var(--text-darker)">No indexes found</div>'),ns=v('<label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Aggregate usage</span></label>'),is=v('<div class="mb-4 svelte-l3ef1w"><!> <div class="mt-3 flex gap-3 items-center flex-wrap svelte-l3ef1w"><button><!></button> <!></div></div>'),ds=v('<th style="width: 150px" class="svelte-l3ef1w">Actions</th>'),cs=v('<span class="index-key svelte-l3ef1w"> </span>'),vs=v('<div class="flex flex-wrap gap-2 svelte-l3ef1w"></div>'),fs=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),us=v('<span class="badge badge-building svelte-l3ef1w">building</span>'),ps=v('<span class="badge badge-hidden svelte-l3ef1w">hidden</span>'),bs=v('<span class="badge badge-unique svelte-l3ef1w">unique</span>'),ms=v('<span class="badge badge-sparse svelte-l3ef1w">sparse</span>'),gs=v('<span class="badge badge-partial svelte-l3ef1w">partial</span>'),hs=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),_s=v('<span class="text-sm whitespace-nowrap svelte-l3ef1w"> </span>'),ws=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),xs=v('<span class="increment-badge svelte-l3ef1w"> </span>'),ys=v('<div class="svelte-l3ef1w"> <!> <span class="text-xs svelte-l3ef1w" style="color: var(--text-darker)"> </span></div>'),ks=v('<span class="increment-badge svelte-l3ef1w"> </span>'),Ss=v('<div class="separate-stat svelte-l3ef1w"><span class="stat-host svelte-l3ef1w"> </span> <span class="stat-value svelte-l3ef1w"> <!></span></div>'),Ns=v('<div class="svelte-l3ef1w"> </div>'),js=v('<div class="text-sm mt-1 svelte-l3ef1w"><!></div>'),Ps=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),Ms=v('<div class="flex gap-2 hidden group-hover:flex -my-2 svelte-l3ef1w"><button class="btn btn-outline-light btn-sm svelte-l3ef1w"> </button> <button class="btn btn-outline-danger btn-sm svelte-l3ef1w">Drop</button></div>'),Os=v('<td class="svelte-l3ef1w"><!></td>'),Is=v('<tr><td class="name-cell svelte-l3ef1w"><span class="font-mono text-sm index-name svelte-l3ef1w"> </span></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><div class="flex flex-wrap gap-2 svelte-l3ef1w"><!> <!> <!> <!> <!> <!></div></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><details class="cursor-pointer svelte-l3ef1w"><summary class="details-link svelte-l3ef1w">View full</summary> <div class="details-content svelte-l3ef1w"><!></div></details></td><!></tr>'),Es=v('<div class="table-wrapper svelte-l3ef1w"><table class="table svelte-l3ef1w"><thead class="svelte-l3ef1w"><tr class="svelte-l3ef1w"><th class="name-column svelte-l3ef1w">Name</th><th class="svelte-l3ef1w">Keys</th><th class="svelte-l3ef1w">Properties</th><th class="shrink-column svelte-l3ef1w">Size</th><th class="shrink-column svelte-l3ef1w">Usage</th><th style="min-width: 300px" class="svelte-l3ef1w">Details</th><!></tr></thead><tbody class="svelte-l3ef1w"></tbody></table></div>'),Cs=v("<!> <!>",1),Fs=v('<div class="mb-4 flex gap-3 svelte-l3ef1w"><!> <button class="btn btn-primary btn-sm svelte-l3ef1w"> </button></div> <!>',1),Ds=v('<div class="p-4 svelte-l3ef1w"><p class="error svelte-l3ef1w"> </p></div>'),Ls=v('<div class="loading svelte-l3ef1w">Loading indexes...</div>'),Us=v('<button class="btn btn-default btn-sm svelte-l3ef1w">Cancel</button> <button class="btn btn-danger btn-sm svelte-l3ef1w">Drop Index</button>',1),Ts=v('<p class="svelte-l3ef1w">Are you sure you want to drop the index <strong class="svelte-l3ef1w"> </strong>?</p> <p class="text-sm mt-2 svelte-l3ef1w" style="color: var(--text-darker)">This action cannot be undone. The index will need to be recreated if needed again.</p>',1),As=v('<button class="btn btn-default btn-sm svelte-l3ef1w">Cancel</button> <button class="btn btn-success btn-sm svelte-l3ef1w"> </button>',1),Bs=v('<div class="space-y-4 svelte-l3ef1w"><div class="svelte-l3ef1w"><label for="index-keys" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Index Keys (JSON) <span style="color: var(--error);" class="svelte-l3ef1w">*</span></label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Define the fields to index. Use 1 for ascending, -1 for descending. Example: <code class="svelte-l3ef1w"></code></p> <textarea id="index-keys" rows="3" class="w-full p-3 rounded border border-[var(--border-color)] bg-[var(--color-1)] font-mono text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"></textarea></div> <div class="svelte-l3ef1w"><label for="index-name" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Index Name (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Leave empty to auto-generate based on fields</p> <input id="index-name" type="text" placeholder="e.g., user_email_idx" class="w-full p-2 rounded border border-[var(--border-color)] bg-[var(--color-1)] text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"/></div> <div class="grid grid-cols-2 gap-3 svelte-l3ef1w"><label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Unique</span></label> <label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Sparse</span></label> <label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Background</span></label></div> <div class="svelte-l3ef1w"><label for="index-partial" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Partial Filter Expression (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Only index documents that match this filter. Example: <code class="svelte-l3ef1w"></code></p> <textarea id="index-partial" rows="2" class="w-full p-3 rounded border border-[var(--border-color)] bg-[var(--color-1)] font-mono text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"></textarea></div> <div class="svelte-l3ef1w"><label for="index-ttl" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">TTL - Expire After Seconds (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Automatically delete documents after specified seconds (for TTL indexes)</p> <input id="index-ttl" type="number" placeholder="e.g., 3600" min="0" class="w-full p-2 rounded border border-[var(--border-color)] bg-[var(--color-1)] text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"/></div></div>'),Rs=v("<!> <!> <!>",1);function sr(n,o){Jt(o,!0);const c=M(()=>o.data.readOnly);let s=x(null),g=x(se(new Set)),C=x(!1),$=x(null),Pe=x(!1),re=x(!1),D=x(se([])),A=x(se([])),he=x(!1),$e=x(null),G=x(se({})),O=x(se({})),J=x(null),le=x(!1),q=x(!1),K=x(!1),oe=x(!1),fe=x(se([])),Me=x(se(new Date));const dt=M(()=>{const f=[...new Set(Object.values(e(G)).map(p=>p.host))];return as(f)}),qe=M(()=>e(A).length!==e(fe).length||!e(A).every(f=>e(fe).includes(f))),B=M(()=>Object.keys(e(O)).length>0&&!e(qe)),ct=M(()=>(e(Me),Za(e(J))));Ae(()=>{const f=setInterval(()=>{l(Me,new Date,!0)},1e3);return()=>clearInterval(f)});let We=x('{ "fieldName": 1 }'),ze=x(""),He=x(!1),Je=x(!1),Ke=x(""),Ve=x(void 0),Ye=x(!1);Ae(()=>{o.data.indexes.then(f=>{e(s)||l(s,f,!0)})});const Gt=M(()=>e(s)||o.data.indexes);async function Qt(f,p){const{server:_,database:u,collection:h}=je.params;if(!(!_||!u||!h)){e(g).add(f),l(g,e(g),!0);try{const w={server:_,database:u,collection:h,index:f};if(p?await Ta(w):await Aa(w),e(s)&&e(s).data){const I=e(s).data.map(S=>S.name===f?{...S,hidden:!p}:S);l(s,{...e(s),data:I},!0)}F.notifySuccess(`Index ${p?"unhidden":"hidden"} successfully`)}catch(w){F.notifyError(w,`Failed to ${p?"unhide":"hide"} index`)}finally{e(g).delete(f),l(g,e(g),!0)}}}function Xt(){l(We,'{ "fieldName": 1 }'),l(ze,""),l(He,!1),l(Je,!1),l(Ke,""),l(Ve,void 0),l(Ye,!1),l(Pe,!0)}function vt(){l(Pe,!1)}async function Zt(){const{server:f,database:p,collection:_}=je.params;if(!(!f||!p||!_)){l(q,!0);try{await Ua({server:f,database:p,collection:_,keys:e(We),name:e(ze)||void 0,unique:e(He)||void 0,sparse:e(Je)||void 0,partialFilterExpression:e(Ke)||void 0,expireAfterSeconds:e(Ve),background:e(Ye)||void 0}),F.notifySuccess("Index created successfully"),vt(),await $a("app:indexes")}catch(u){F.notifyError(u,"Failed to create index")}finally{l(q,!1)}}}function ea(f){l($,f,!0),l(C,!0)}function ft(){l(C,!1),l($,null)}async function ta(){if(!e($))return;const{server:f,database:p,collection:_}=je.params;if(!f||!p||!_)return;e(g).add(e($)),l(g,e(g),!0);const u=e($);try{if(await La({server:f,database:p,collection:_,index:u}),e(s)&&e(s).data){const h=e(s).data.filter(w=>w.name!==u);l(s,{...e(s),data:h},!0)}F.notifySuccess(`Index "${u}" dropped successfully`),ft()}catch(h){F.notifyError(h,"Failed to drop index")}finally{e(g).delete(u),l(g,e(g),!0)}}async function St(){const{server:f,database:p,collection:_}=je.params;if(!(!f||!p||!_)){l(he,!0);try{const u=await Ca({server:f});if(u.error)F.notifyError(u.error,"Failed to load nodes"),l(D,[],!0);else if(l(D,u.data,!0),e(D).length>0){F.notifySuccess(`Found ${e(D).length} node(s)`);const h=await Fa({server:f,database:p,collection:_});!h.error&&h.data&&l($e,h.data,!0)}}catch(u){F.notifyError(u,"Failed to load nodes"),l(D,[],!0)}finally{l(he,!1)}}}async function Nt(f=!0){const{server:p,database:_,collection:u}=je.params;if(!p||!_||!u)return;if(e(A).length===0){F.notifyError("No nodes selected","Please select at least one node");return}l(le,!0);const h=e(qe)||!e(B);try{const w=await Da({server:p,database:_,collection:u,nodes:e(A)});w.error&&F.notifyError(w.error,"Failed to fetch stats from some nodes"),l(G,w.data,!0),l(fe,[...e(A)],!0),h&&(l(O,{...e(G)},!0),l(J,new Date,!0));const I=Object.keys(e(G)).length;if(I===0)F.notifyError("No stats found","No index stats found for selected nodes");else{const S=h?`Fetched stats from ${I} index/host combination(s)`:`Updated stats from ${I} index/host combination(s)`;F.notifySuccess(S)}if(f){const S=new URL(window.location.href);S.searchParams.set("nodes",e(A).join(",")),e(K)&&S.searchParams.set("aggregate","true"),Ra(S.toString(),{})}}catch(w){F.notifyError(w,"Failed to fetch multi-node usage")}finally{l(le,!1)}}Ae(()=>{e(re)&&e(D).length===0&&!e(he)&&St()}),Ae(()=>{if(!e(oe)){const f=new URL(je.url),p=f.searchParams.get("nodes"),_=f.searchParams.get("aggregate");if(p){const u=p.split(",").filter(h=>h.length>0);u.length>0&&(l(re,!0),l(A,u,!0),e(D).length===0&&St().then(()=>{u.length>0&&Nt(!1)}))}_!==null&&l(K,_==="true"),l(oe,!0)}}),Ae(()=>{if(e(oe)&&Object.keys(e(G)).length>0){const f=new URL(window.location.href);e(K)?f.searchParams.set("aggregate","true"):f.searchParams.delete("aggregate"),Ba(f.toString(),{})}});var jt=Rs(),Pt=ae(jt);Oa(Pt,()=>e(Gt),f=>{Be(f,{title:"Indexes",children:(p,_)=>{var u=Ls();i(p,u)},$$slots:{default:!0}})},(f,p)=>{var _=kt(),u=ae(_);{var h=I=>{Be(I,{title:"Indexes",children:(S,ne)=>{var Q=rs(),ie=a(Q),X=a(ie,!0);t(ie),t(Q),j(()=>P(X,e(p).error)),i(S,Q)},$$slots:{default:!0}})},w=I=>{var S=Fs(),ne=ae(S),Q=a(ne);{var ie=L=>{var W=ls();Y("click",W,Xt),i(L,W)};k(Q,L=>{e(c)||L(ie)})}var X=d(Q,2),Ge=a(X);t(X),t(ne);var Oe=d(ne,2);{var Qe=L=>{Be(L,{title:"Indexes",children:(W,ue)=>{var Ie=os();i(W,Ie)},$$slots:{default:!0}})},Xe=L=>{var W=Cs(),ue=ae(W);{var Ie=de=>{var pe=is(),y=a(pe);Xa(y,{get loading(){return e(he)},get primaryNode(){return e($e)},get availableNodes(){return e(D)},set availableNodes(N){l(D,N,!0)},get selectedNodes(){return e(A)},set selectedNodes(N){l(A,N,!0)}});var Ee=d(y,2),z=a(Ee);let Ce;var ut=a(z);{var pt=N=>{var R=Tt();j(()=>P(R,e(B)?"Checking Δ...":"Fetching...")),i(N,R)},Ze=N=>{var R=Tt();j(()=>P(R,e(B)?"Δ Usage":"Fetch Usage")),i(N,R)};k(ut,N=>{e(le)?N(pt):N(Ze,-1)})}t(z);var Z=d(z,2);{var b=N=>{var R=ns(),we=a(R);ge(we),Ne(2),t(R),Re(we,()=>e(K),De=>l(K,De)),i(N,R)},Fe=M(()=>Object.keys(e(G)).length>0);k(Z,N=>{e(Fe)&&N(b)})}t(Ee),t(pe),j(()=>{Ce=Rt(z,1,"btn btn-sm svelte-l3ef1w",null,Ce,{"btn-primary":!e(B),"btn-outline-primary":e(B)}),z.disabled=e(le)||e(A).length===0,ve(z,"title",e(B)?`Baseline from ${e(ct)}`:"Fetch index usage statistics")}),Y("click",z,()=>Nt()),i(de,pe)};k(ue,de=>{e(re)&&de(Ie)})}var _e=d(ue,2);Be(_e,{title:"Indexes",children:(de,pe)=>{var y=Es(),Ee=a(y),z=a(Ee),Ce=a(z),ut=d(a(Ce),6);{var pt=Z=>{var b=ds();i(Z,b)};k(ut,Z=>{e(c)||Z(pt)})}t(Ce),t(z);var Ze=d(z);it(Ze,21,()=>e(p).data,Z=>Z.name,(Z,b)=>{const Fe=M(()=>e(g).has(e(b).name));var N=Is();let R;var we=a(N),De=a(we),sa=a(De,!0);t(De),t(we);var bt=d(we),ra=a(bt);{var la=r=>{var m=vs();it(m,21,()=>Object.entries(e(b).key),$t,(V,ee)=>{var ce=M(()=>Ma(e(ee),2));let be=()=>e(ce)[0],H=()=>e(ce)[1];var E=cs(),U=a(E);t(E),j(()=>P(U,`${be()??""}: ${(H()===1?"↑":H()===-1?"↓":H())??""}`)),i(V,E)}),t(m),i(r,m)},oa=r=>{var m=fs();i(r,m)};k(ra,r=>{e(b).key?r(la):r(oa,-1)})}t(bt);var mt=d(bt),Ot=a(mt),It=a(Ot);{var na=r=>{var m=us();j(V=>{ve(m,"title",V),Ea(m,e(b).building.pct>0?`background: linear-gradient(to right, hsl(45, 100%, 45%) ${e(b).building.pct}%, hsl(45, 100%, 75%) ${e(b).building.pct}%)`:"")},[()=>e(b).building.pct>0?`${e(b).building.pct}% (${e(b).building.done.toLocaleString()} / ${e(b).building.total.toLocaleString()})`:"Building…"]),i(r,m)};k(It,r=>{e(b).building&&r(na)})}var Et=d(It,2);{var ia=r=>{var m=ps();i(r,m)};k(Et,r=>{e(b).hidden&&r(ia)})}var Ct=d(Et,2);{var da=r=>{var m=bs();i(r,m)};k(Ct,r=>{e(b).unique&&r(da)})}var Ft=d(Ct,2);{var ca=r=>{var m=ms();i(r,m)};k(Ft,r=>{e(b).sparse&&r(ca)})}var Dt=d(Ft,2);{var va=r=>{var m=gs();i(r,m)};k(Dt,r=>{e(b).partialFilterExpression&&r(va)})}var fa=d(Dt,2);{var ua=r=>{var m=hs();i(r,m)};k(fa,r=>{!e(b).building&&!e(b).hidden&&!e(b).unique&&!e(b).sparse&&!e(b).partialFilterExpression&&r(ua)})}t(Ot),t(mt);var gt=d(mt),pa=a(gt);{var ba=r=>{var m=_s(),V=a(m,!0);t(m),j(ee=>P(V,ee),[()=>Ia(e(b).size)]),i(r,m)},ma=r=>{var m=ws();i(r,m)};k(pa,r=>{e(b).size?r(ba):r(ma,-1)})}t(gt);var ht=d(gt),ga=a(ht);{var ha=r=>{const m=M(()=>Object.entries(e(G)).filter(([E])=>E.startsWith(`${e(b).name}::`)).map(([E,U])=>({key:E,stats:U}))),V=M(()=>Object.fromEntries(Object.entries(e(O)).filter(([E])=>E.startsWith(`${e(b).name}::`))));var ee=js(),ce=a(ee);{var be=E=>{var U=kt(),wt=ae(U);{var xt=xe=>{const ye=M(()=>Ht(e(m).map(T=>T.stats.ops))),et=M(()=>Ht(Object.values(e(V)).map(T=>T.ops))),Le=M(()=>e(et)>0?e(ye)-e(et):0);var me=ys(),tt=a(me),te=d(tt);{var at=T=>{var Ue=xs(),st=a(Ue);t(Ue),j(rt=>P(st,`+${rt??""}`),[()=>nt(e(Le))]),i(T,Ue)};k(te,T=>{e(Le)>0&&T(at)})}var ke=d(te,2),Se=a(ke);t(ke),t(me),j(T=>{ve(me,"title",`Aggregated across ${e(m).length??""} node(s)`),P(tt,`${T??""} `),P(Se,`(${e(m).length??""} node${e(m).length>1?"s":""})`)},[()=>e(Le)>0?nt(e(ye)):e(ye).toLocaleString()]),i(xe,me)},ka=xe=>{var ye=kt(),et=ae(ye);it(et,17,()=>e(m),$t,(Le,me)=>{let tt=()=>e(me).key,te=()=>e(me).stats;const at=M(()=>e(V)[tt()]?.ops||0),ke=M(()=>e(at)>0?te().ops-e(at):0);var Se=Ss(),T=a(Se),Ue=a(T);t(T);var st=d(T,2),rt=a(st),Sa=d(rt);{var Na=Te=>{var yt=ks(),ja=a(yt);t(yt),j(Pa=>P(ja,`+${Pa??""}`),[()=>nt(e(ke))]),i(Te,yt)};k(Sa,Te=>{e(ke)>0&&Te(Na)})}t(st),t(Se),j(Te=>{ve(Se,"title",te().host),P(Ue,`${(e(dt)[te().host]||te().host)??""}:`),P(rt,`${Te??""} `)},[()=>e(ke)>0?nt(te().ops):te().ops.toLocaleString()]),i(Le,Se)}),i(xe,ye)};k(wt,xe=>{e(K)?xe(xt):xe(ka,-1)})}i(E,U)},H=E=>{var U=Ns(),wt=a(U,!0);t(U),j(xt=>P(wt,xt),[()=>e(b).stats.ops.toLocaleString()]),i(E,U)};k(ce,E=>{e(m).length>0?E(be):E(H,-1)})}t(ee),i(r,ee)},_a=r=>{var m=Ps();i(r,m)};k(ga,r=>{e(b).stats?r(ha):r(_a,-1)})}t(ht);var _t=d(ht),Lt=a(_t),Ut=d(a(Lt),2),wa=a(Ut);{let r=M(()=>ss(e(b),["stats"]));qa(wa,{get value(){return e(r)},collapsed:!1})}t(Ut),t(Lt),t(_t);var xa=d(_t);{var ya=r=>{var m=Os(),V=a(m);{var ee=ce=>{var be=Ms(),H=a(be),E=a(H,!0);t(H);var U=d(H,2);t(be),j(()=>{H.disabled=e(Fe),P(E,e(b).hidden?"Unhide":"Hide"),U.disabled=e(Fe)}),Y("click",H,()=>Qt(e(b).name,e(b).hidden)),Y("click",U,()=>ea(e(b).name)),i(ce,be)};k(V,ce=>{e(b).name!=="_id_"&&ce(ee)})}t(m),i(r,m)};k(xa,r=>{e(c)||r(ya)})}t(N),j(()=>{R=Rt(N,1,"group svelte-l3ef1w",null,R,{"opacity-50":e(Fe)}),ve(De,"title",e(b).name),P(sa,e(b).name)}),i(Z,N)}),t(Ze),t(Ee),t(y),i(de,y)},$$slots:{default:!0}}),i(L,W)};k(Oe,L=>{e(p).data.length===0?L(Qe):L(Xe,-1)})}j(()=>P(Ge,`${e(re)?"Hide":"Show"} Multi-Node Usage`)),Y("click",X,()=>l(re,!e(re))),i(I,S)};k(u,I=>{e(p).error?I(h):I(w,-1)})}i(f,_)},(f,p)=>{Be(f,{title:"Indexes",children:(_,u)=>{var h=Ds(),w=a(h),I=a(w);t(w),t(h),j(()=>P(I,`Error loading indexes: ${e(p)??""}`)),i(_,h)},$$slots:{default:!0}})});var Mt=d(Pt,2);zt(Mt,{get show(){return e(C)},onclose:ft,footer:p=>{var _=Us(),u=ae(_),h=d(u,2);Y("click",u,ft),Y("click",h,ta),i(p,_)},children:(p,_)=>{var u=Ts(),h=ae(u),w=d(a(h)),I=a(w,!0);t(w),Ne(),t(h),Ne(2),j(()=>P(I,e($))),i(p,u)},$$slots:{footer:!0,default:!0}});var aa=d(Mt,2);zt(aa,{get show(){return e(Pe)},onclose:vt,title:"Create Index",footer:p=>{var _=As(),u=ae(_),h=d(u,2),w=a(h,!0);t(h),j(()=>{u.disabled=e(q),h.disabled=e(q),P(w,e(q)?"Creating...":"Create Index")}),Y("click",u,vt),Y("click",h,Zt),i(p,_)},children:(p,_)=>{var u=Bs(),h=a(u),w=d(a(h),2),I=d(a(w));I.textContent='{ "fieldName": 1 }',t(w);var S=d(w,2);Bt(S),ve(S,"placeholder",'{"fieldName": 1}'),At(()=>ot(S,()=>e(We),y=>l(We,y))),qt(S,y=>Wt?.(y)),t(h);var ne=d(h,2),Q=d(a(ne),4);ge(Q),t(ne);var ie=d(ne,2),X=a(ie),Ge=a(X);ge(Ge),Ne(2),t(X);var Oe=d(X,2),Qe=a(Oe);ge(Qe),Ne(2),t(Oe);var Xe=d(Oe,2),L=a(Xe);ge(L),Ne(2),t(Xe),t(ie);var W=d(ie,2),ue=d(a(W),2),Ie=d(a(ue));Ie.textContent='{ "status": "active" }',t(ue);var _e=d(ue,2);Bt(_e),ve(_e,"placeholder",'{"status": "active"}'),At(()=>ot(_e,()=>e(Ke),y=>l(Ke,y))),qt(_e,y=>Wt?.(y)),t(W);var de=d(W,2),pe=d(a(de),4);ge(pe),t(de),t(u),ot(Q,()=>e(ze),y=>l(ze,y)),Re(Ge,()=>e(He),y=>l(He,y)),Re(Qe,()=>e(Je),y=>l(Je,y)),Re(L,()=>e(Ye),y=>l(Ye,y)),ot(pe,()=>e(Ve),y=>l(Ve,y)),i(p,u)},$$slots:{footer:!0,default:!0}}),i(n,jt),Kt()}Vt(["click"]);export{sr as component,ar as universal};
|
|
1
|
+
import{f as v,a as i,c as kt,t as Tt}from"../chunks/DjUt71lH.js";import{p as Jt,a8 as se,s as d,c as a,r as t,a as Kt,g as e,u as M,t as j,b as x,M as Ae,d as l,f as ae,o as At,n as Ne,aA as Bt,bb as Ma}from"../chunks/ogOVEqzG.js";import{d as Vt,s as P,a as Y}from"../chunks/wZ9dd4xr.js";import{a as Oa,f as Ia}from"../chunks/B-TH2U-E.js";import{p as lt,i as k}from"../chunks/DIjqwnsi.js";import{e as it,n as F,s as Rt,i as $t}from"../chunks/BaCQ7DA8.js";import{a as qt}from"../chunks/Hg2DaShQ.js";import{a as ge,s as ve}from"../chunks/B-0CauNF.js";import{s as Ea}from"../chunks/Cl89kjea.js";import{a as Re,b as ot}from"../chunks/CynGo-ch.js";import{h as Ca,j as Fa,k as Da,l as La,m as Ua,P as Be,n as Ta,o as Aa}from"../chunks/BfsQcfVI.js";import{r as Ba,f as Ra,h as $a}from"../chunks/DkIGOVHS.js";import{p as je}from"../chunks/CzuLYUff.js";import{j as Wt,J as qa}from"../chunks/CWVg1wU_.js";import{M as zt}from"../chunks/BnRtSpxa.js";const Wa=async n=>({...n.data,categories:[{key:"documents",label:"Documents"},{key:"indexes",label:"Indexes"},{key:"mappings",label:"Mappings"},{key:"schema",label:"Schema"}]}),ar=Object.freeze(Object.defineProperty({__proto__:null,load:Wa},Symbol.toStringTag,{value:"Module"}));function za(n,o){if(n.length<o.length&&o.endsWith(n))return n;if(o.length<n.length&&n.endsWith(o))return o;let c="",s=n.length-1,g=o.length-1;for(;s>=0&&g>=0&&n[s]===o[g];)c=n.slice(s),s--,g--;return c}function Ha(n,o){if(!n||o.length===0)return null;let c=null,s=0;for(const g of o){const C=za(n,g);C.length>s?(s=C.length,c=g):C.length===s&&(c=null)}return c}var Ja=v('<div class="loading-message svelte-14baj27">Loading nodes...</div>'),Ka=v('<div class="no-nodes-message svelte-14baj27">No nodes found. Click "Fetch Usage" to load nodes.</div>'),Va=v('<span class="primary-badge svelte-14baj27">PRIMARY</span>'),Ya=v('<label class="checkbox-label svelte-14baj27"><input type="checkbox" class="svelte-14baj27"/> <span class="node-name svelte-14baj27"> <!></span></label>'),Ga=v('<div class="selector-options svelte-14baj27"></div>'),Qa=v('<div class="replica-set-selector svelte-14baj27"><div class="selector-header svelte-14baj27"><span class="selector-title svelte-14baj27">Replica Set Nodes</span> <span class="selector-subtitle svelte-14baj27">Select specific nodes to fetch index stats from</span></div> <!></div>');function Xa(n,o){Jt(o,!0);let c=lt(o,"availableNodes",27,()=>se([])),s=lt(o,"selectedNodes",31,()=>se([])),g=lt(o,"loading",3,!1),C=lt(o,"primaryNode",3,null),$=M(()=>Object.fromEntries(c().map(O=>[O,s().includes(O)])));const Pe=M(()=>!C()||c().length===0?null:Ha(C(),c()));function re(){s(Object.keys(e($)).filter(O=>e($)[O]))}var D=Qa(),A=d(a(D),2);{var he=O=>{var J=Ja();i(O,J)},$e=O=>{var J=Ka();i(O,J)},G=O=>{var J=Ga();it(J,20,c,le=>le,(le,q)=>{var K=Ya(),oe=a(K);ge(oe);var fe=d(oe,2),Me=a(fe),dt=d(Me);{var qe=B=>{var ct=Va();i(B,ct)};k(dt,B=>{q===e(Pe)&&B(qe)})}t(fe),t(K),j(()=>{ve(fe,"title",q),P(Me,`${q??""} `)}),Y("change",oe,re),Re(oe,()=>e($)[q],B=>e($)[q]=B),i(le,K)}),t(J),i(O,J)};k(A,O=>{g()?O(he):c().length===0?O($e,1):O(G,-1)})}t(D),i(n,D),Kt()}Vt(["change"]);function nt(n,o=3){if(n===0)return"0";const c=Math.abs(n),s=n<0?"-":"";if(c>=1e9){const g=c/1e9;return`${s}${g.toPrecision(o)}B`}else if(c>=1e6){const g=c/1e6;return`${s}${g.toPrecision(o)}M`}else if(c>=1e3){const g=c/1e3;return`${s}${g.toPrecision(o)}k`}else return`${s}${c.toPrecision(Math.min(o,Math.ceil(Math.log10(c+1))))}`}function Za(n){if(!n)return"";const c=new Date().getTime()-n.getTime(),s=Math.floor(c/1e3),g=Math.floor(s/60),C=Math.floor(g/60);return C>0?`${C}h ${g%60}m ago`:g>0?`${g}m ${s%60}s ago`:`${s}s ago`}function Yt(n){if(n.length===0||n.length===1)return"";let o=n[0];for(let c=1;c<n.length;c++)for(;n[c].indexOf(o)!==0;)if(o=o.substring(0,o.length-1),o==="")return"";return o}function es(n){if(n.length===0||n.length===1)return"";const o=n.map(s=>s.split("").reverse().join(""));return Yt(o).split("").reverse().join("")}function ts(n,o,c){if(!o&&!c)return n;let s=n;if(o&&s.startsWith(o)&&(s=s.slice(o.length)),c&&s.endsWith(c)&&(s=s.slice(0,-c.length)),s.length===0)return n;const g=o.length>0,C=c.length>0;return g&&C?`…${s}…`:g?`…${s}`:C?`${s}…`:s}function as(n){if(n.length<=1)return Object.fromEntries(n.map(s=>[s,s]));const o=Yt(n),c=es(n);return Object.fromEntries(n.map(s=>[s,ts(s,o,c)]))}function ss(n,o){return Object.fromEntries(Object.entries(n).filter(([c])=>!o.includes(c)))}function Ht(n){let o=0;for(const c of n)o+=c;return o}var rs=v('<div class="p-4 svelte-l3ef1w"><p class="error svelte-l3ef1w"> </p></div>'),ls=v('<button class="btn btn-success btn-sm flex items-center svelte-l3ef1w" type="button"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="w-4 h-4 inline mr-1 svelte-l3ef1w"><path d="M12 5v14M5 12h14" class="svelte-l3ef1w"></path></svg> Create Index</button>'),os=v('<div class="text-center p-4 svelte-l3ef1w" style="color: var(--text-darker)">No indexes found</div>'),ns=v('<label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Aggregate usage</span></label>'),is=v('<div class="mb-4 svelte-l3ef1w"><!> <div class="mt-3 flex gap-3 items-center flex-wrap svelte-l3ef1w"><button><!></button> <!></div></div>'),ds=v('<th style="width: 150px" class="svelte-l3ef1w">Actions</th>'),cs=v('<span class="index-key svelte-l3ef1w"> </span>'),vs=v('<div class="flex flex-wrap gap-2 svelte-l3ef1w"></div>'),fs=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),us=v('<span class="badge badge-building svelte-l3ef1w">building</span>'),ps=v('<span class="badge badge-hidden svelte-l3ef1w">hidden</span>'),bs=v('<span class="badge badge-unique svelte-l3ef1w">unique</span>'),ms=v('<span class="badge badge-sparse svelte-l3ef1w">sparse</span>'),gs=v('<span class="badge badge-partial svelte-l3ef1w">partial</span>'),hs=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),_s=v('<span class="text-sm whitespace-nowrap svelte-l3ef1w"> </span>'),ws=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),xs=v('<span class="increment-badge svelte-l3ef1w"> </span>'),ys=v('<div class="svelte-l3ef1w"> <!> <span class="text-xs svelte-l3ef1w" style="color: var(--text-darker)"> </span></div>'),ks=v('<span class="increment-badge svelte-l3ef1w"> </span>'),Ss=v('<div class="separate-stat svelte-l3ef1w"><span class="stat-host svelte-l3ef1w"> </span> <span class="stat-value svelte-l3ef1w"> <!></span></div>'),Ns=v('<div class="svelte-l3ef1w"> </div>'),js=v('<div class="text-sm mt-1 svelte-l3ef1w"><!></div>'),Ps=v('<span style="color: var(--text-darker)" class="svelte-l3ef1w">-</span>'),Ms=v('<div class="flex gap-2 hidden group-hover:flex -my-2 svelte-l3ef1w"><button class="btn btn-outline-light btn-sm svelte-l3ef1w"> </button> <button class="btn btn-outline-danger btn-sm svelte-l3ef1w">Drop</button></div>'),Os=v('<td class="svelte-l3ef1w"><!></td>'),Is=v('<tr><td class="name-cell svelte-l3ef1w"><span class="font-mono text-sm index-name svelte-l3ef1w"> </span></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><div class="flex flex-wrap gap-2 svelte-l3ef1w"><!> <!> <!> <!> <!> <!></div></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><!></td><td class="svelte-l3ef1w"><details class="cursor-pointer svelte-l3ef1w"><summary class="details-link svelte-l3ef1w">View full</summary> <div class="details-content svelte-l3ef1w"><!></div></details></td><!></tr>'),Es=v('<div class="table-wrapper svelte-l3ef1w"><table class="table svelte-l3ef1w"><thead class="svelte-l3ef1w"><tr class="svelte-l3ef1w"><th class="name-column svelte-l3ef1w">Name</th><th class="svelte-l3ef1w">Keys</th><th class="svelte-l3ef1w">Properties</th><th class="shrink-column svelte-l3ef1w">Size</th><th class="shrink-column svelte-l3ef1w">Usage</th><th style="min-width: 300px" class="svelte-l3ef1w">Details</th><!></tr></thead><tbody class="svelte-l3ef1w"></tbody></table></div>'),Cs=v("<!> <!>",1),Fs=v('<div class="mb-4 flex gap-3 svelte-l3ef1w"><!> <button class="btn btn-primary btn-sm svelte-l3ef1w"> </button></div> <!>',1),Ds=v('<div class="p-4 svelte-l3ef1w"><p class="error svelte-l3ef1w"> </p></div>'),Ls=v('<div class="loading svelte-l3ef1w">Loading indexes...</div>'),Us=v('<button class="btn btn-default btn-sm svelte-l3ef1w">Cancel</button> <button class="btn btn-danger btn-sm svelte-l3ef1w">Drop Index</button>',1),Ts=v('<p class="svelte-l3ef1w">Are you sure you want to drop the index <strong class="svelte-l3ef1w"> </strong>?</p> <p class="text-sm mt-2 svelte-l3ef1w" style="color: var(--text-darker)">This action cannot be undone. The index will need to be recreated if needed again.</p>',1),As=v('<button class="btn btn-default btn-sm svelte-l3ef1w">Cancel</button> <button class="btn btn-success btn-sm svelte-l3ef1w"> </button>',1),Bs=v('<div class="space-y-4 svelte-l3ef1w"><div class="svelte-l3ef1w"><label for="index-keys" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Index Keys (JSON) <span style="color: var(--error);" class="svelte-l3ef1w">*</span></label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Define the fields to index. Use 1 for ascending, -1 for descending. Example: <code class="svelte-l3ef1w"></code></p> <textarea id="index-keys" rows="3" class="w-full p-3 rounded border border-[var(--border-color)] bg-[var(--color-1)] font-mono text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"></textarea></div> <div class="svelte-l3ef1w"><label for="index-name" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Index Name (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Leave empty to auto-generate based on fields</p> <input id="index-name" type="text" placeholder="e.g., user_email_idx" class="w-full p-2 rounded border border-[var(--border-color)] bg-[var(--color-1)] text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"/></div> <div class="grid grid-cols-2 gap-3 svelte-l3ef1w"><label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Unique</span></label> <label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Sparse</span></label> <label class="flex items-center gap-2 cursor-pointer svelte-l3ef1w"><input type="checkbox" class="cursor-pointer svelte-l3ef1w"/> <span class="text-sm svelte-l3ef1w" style="color: var(--text);">Background</span></label></div> <div class="svelte-l3ef1w"><label for="index-partial" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">Partial Filter Expression (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Only index documents that match this filter. Example: <code class="svelte-l3ef1w"></code></p> <textarea id="index-partial" rows="2" class="w-full p-3 rounded border border-[var(--border-color)] bg-[var(--color-1)] font-mono text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"></textarea></div> <div class="svelte-l3ef1w"><label for="index-ttl" class="block text-sm font-semibold mb-2 svelte-l3ef1w" style="color: var(--text);">TTL - Expire After Seconds (Optional)</label> <p class="text-xs mb-2 svelte-l3ef1w" style="color: var(--text-darker);">Automatically delete documents after specified seconds (for TTL indexes)</p> <input id="index-ttl" type="number" placeholder="e.g., 3600" min="0" class="w-full p-2 rounded border border-[var(--border-color)] bg-[var(--color-1)] text-sm focus:outline-none focus:ring-2 svelte-l3ef1w" style="color: var(--text); --tw-ring-color: var(--link);"/></div></div>'),Rs=v("<!> <!> <!>",1);function sr(n,o){Jt(o,!0);const c=M(()=>o.data.readOnly);let s=x(null),g=x(se(new Set)),C=x(!1),$=x(null),Pe=x(!1),re=x(!1),D=x(se([])),A=x(se([])),he=x(!1),$e=x(null),G=x(se({})),O=x(se({})),J=x(null),le=x(!1),q=x(!1),K=x(!1),oe=x(!1),fe=x(se([])),Me=x(se(new Date));const dt=M(()=>{const f=[...new Set(Object.values(e(G)).map(p=>p.host))];return as(f)}),qe=M(()=>e(A).length!==e(fe).length||!e(A).every(f=>e(fe).includes(f))),B=M(()=>Object.keys(e(O)).length>0&&!e(qe)),ct=M(()=>(e(Me),Za(e(J))));Ae(()=>{const f=setInterval(()=>{l(Me,new Date,!0)},1e3);return()=>clearInterval(f)});let We=x('{ "fieldName": 1 }'),ze=x(""),He=x(!1),Je=x(!1),Ke=x(""),Ve=x(void 0),Ye=x(!1);Ae(()=>{o.data.indexes.then(f=>{e(s)||l(s,f,!0)})});const Gt=M(()=>e(s)||o.data.indexes);async function Qt(f,p){const{server:_,database:u,collection:h}=je.params;if(!(!_||!u||!h)){e(g).add(f),l(g,e(g),!0);try{const w={server:_,database:u,collection:h,index:f};if(p?await Ta(w):await Aa(w),e(s)&&e(s).data){const I=e(s).data.map(S=>S.name===f?{...S,hidden:!p}:S);l(s,{...e(s),data:I},!0)}F.notifySuccess(`Index ${p?"unhidden":"hidden"} successfully`)}catch(w){F.notifyError(w,`Failed to ${p?"unhide":"hide"} index`)}finally{e(g).delete(f),l(g,e(g),!0)}}}function Xt(){l(We,'{ "fieldName": 1 }'),l(ze,""),l(He,!1),l(Je,!1),l(Ke,""),l(Ve,void 0),l(Ye,!1),l(Pe,!0)}function vt(){l(Pe,!1)}async function Zt(){const{server:f,database:p,collection:_}=je.params;if(!(!f||!p||!_)){l(q,!0);try{await Ua({server:f,database:p,collection:_,keys:e(We),name:e(ze)||void 0,unique:e(He)||void 0,sparse:e(Je)||void 0,partialFilterExpression:e(Ke)||void 0,expireAfterSeconds:e(Ve),background:e(Ye)||void 0}),F.notifySuccess("Index created successfully"),vt(),await $a("app:indexes")}catch(u){F.notifyError(u,"Failed to create index")}finally{l(q,!1)}}}function ea(f){l($,f,!0),l(C,!0)}function ft(){l(C,!1),l($,null)}async function ta(){if(!e($))return;const{server:f,database:p,collection:_}=je.params;if(!f||!p||!_)return;e(g).add(e($)),l(g,e(g),!0);const u=e($);try{if(await La({server:f,database:p,collection:_,index:u}),e(s)&&e(s).data){const h=e(s).data.filter(w=>w.name!==u);l(s,{...e(s),data:h},!0)}F.notifySuccess(`Index "${u}" dropped successfully`),ft()}catch(h){F.notifyError(h,"Failed to drop index")}finally{e(g).delete(u),l(g,e(g),!0)}}async function St(){const{server:f,database:p,collection:_}=je.params;if(!(!f||!p||!_)){l(he,!0);try{const u=await Ca({server:f});if(u.error)F.notifyError(u.error,"Failed to load nodes"),l(D,[],!0);else if(l(D,u.data,!0),e(D).length>0){F.notifySuccess(`Found ${e(D).length} node(s)`);const h=await Fa({server:f,database:p,collection:_});!h.error&&h.data&&l($e,h.data,!0)}}catch(u){F.notifyError(u,"Failed to load nodes"),l(D,[],!0)}finally{l(he,!1)}}}async function Nt(f=!0){const{server:p,database:_,collection:u}=je.params;if(!p||!_||!u)return;if(e(A).length===0){F.notifyError("No nodes selected","Please select at least one node");return}l(le,!0);const h=e(qe)||!e(B);try{const w=await Da({server:p,database:_,collection:u,nodes:e(A)});w.error&&F.notifyError(w.error,"Failed to fetch stats from some nodes"),l(G,w.data,!0),l(fe,[...e(A)],!0),h&&(l(O,{...e(G)},!0),l(J,new Date,!0));const I=Object.keys(e(G)).length;if(I===0)F.notifyError("No stats found","No index stats found for selected nodes");else{const S=h?`Fetched stats from ${I} index/host combination(s)`:`Updated stats from ${I} index/host combination(s)`;F.notifySuccess(S)}if(f){const S=new URL(window.location.href);S.searchParams.set("nodes",e(A).join(",")),e(K)&&S.searchParams.set("aggregate","true"),Ra(S.toString(),{})}}catch(w){F.notifyError(w,"Failed to fetch multi-node usage")}finally{l(le,!1)}}Ae(()=>{e(re)&&e(D).length===0&&!e(he)&&St()}),Ae(()=>{if(!e(oe)){const f=new URL(je.url),p=f.searchParams.get("nodes"),_=f.searchParams.get("aggregate");if(p){const u=p.split(",").filter(h=>h.length>0);u.length>0&&(l(re,!0),l(A,u,!0),e(D).length===0&&St().then(()=>{u.length>0&&Nt(!1)}))}_!==null&&l(K,_==="true"),l(oe,!0)}}),Ae(()=>{if(e(oe)&&Object.keys(e(G)).length>0){const f=new URL(window.location.href);e(K)?f.searchParams.set("aggregate","true"):f.searchParams.delete("aggregate"),Ba(f.toString(),{})}});var jt=Rs(),Pt=ae(jt);Oa(Pt,()=>e(Gt),f=>{Be(f,{title:"Indexes",children:(p,_)=>{var u=Ls();i(p,u)},$$slots:{default:!0}})},(f,p)=>{var _=kt(),u=ae(_);{var h=I=>{Be(I,{title:"Indexes",children:(S,ne)=>{var Q=rs(),ie=a(Q),X=a(ie,!0);t(ie),t(Q),j(()=>P(X,e(p).error)),i(S,Q)},$$slots:{default:!0}})},w=I=>{var S=Fs(),ne=ae(S),Q=a(ne);{var ie=L=>{var W=ls();Y("click",W,Xt),i(L,W)};k(Q,L=>{e(c)||L(ie)})}var X=d(Q,2),Ge=a(X);t(X),t(ne);var Oe=d(ne,2);{var Qe=L=>{Be(L,{title:"Indexes",children:(W,ue)=>{var Ie=os();i(W,Ie)},$$slots:{default:!0}})},Xe=L=>{var W=Cs(),ue=ae(W);{var Ie=de=>{var pe=is(),y=a(pe);Xa(y,{get loading(){return e(he)},get primaryNode(){return e($e)},get availableNodes(){return e(D)},set availableNodes(N){l(D,N,!0)},get selectedNodes(){return e(A)},set selectedNodes(N){l(A,N,!0)}});var Ee=d(y,2),z=a(Ee);let Ce;var ut=a(z);{var pt=N=>{var R=Tt();j(()=>P(R,e(B)?"Checking Δ...":"Fetching...")),i(N,R)},Ze=N=>{var R=Tt();j(()=>P(R,e(B)?"Δ Usage":"Fetch Usage")),i(N,R)};k(ut,N=>{e(le)?N(pt):N(Ze,-1)})}t(z);var Z=d(z,2);{var b=N=>{var R=ns(),we=a(R);ge(we),Ne(2),t(R),Re(we,()=>e(K),De=>l(K,De)),i(N,R)},Fe=M(()=>Object.keys(e(G)).length>0);k(Z,N=>{e(Fe)&&N(b)})}t(Ee),t(pe),j(()=>{Ce=Rt(z,1,"btn btn-sm svelte-l3ef1w",null,Ce,{"btn-primary":!e(B),"btn-outline-primary":e(B)}),z.disabled=e(le)||e(A).length===0,ve(z,"title",e(B)?`Baseline from ${e(ct)}`:"Fetch index usage statistics")}),Y("click",z,()=>Nt()),i(de,pe)};k(ue,de=>{e(re)&&de(Ie)})}var _e=d(ue,2);Be(_e,{title:"Indexes",children:(de,pe)=>{var y=Es(),Ee=a(y),z=a(Ee),Ce=a(z),ut=d(a(Ce),6);{var pt=Z=>{var b=ds();i(Z,b)};k(ut,Z=>{e(c)||Z(pt)})}t(Ce),t(z);var Ze=d(z);it(Ze,21,()=>e(p).data,Z=>Z.name,(Z,b)=>{const Fe=M(()=>e(g).has(e(b).name));var N=Is();let R;var we=a(N),De=a(we),sa=a(De,!0);t(De),t(we);var bt=d(we),ra=a(bt);{var la=r=>{var m=vs();it(m,21,()=>Object.entries(e(b).key),$t,(V,ee)=>{var ce=M(()=>Ma(e(ee),2));let be=()=>e(ce)[0],H=()=>e(ce)[1];var E=cs(),U=a(E);t(E),j(()=>P(U,`${be()??""}: ${(H()===1?"↑":H()===-1?"↓":H())??""}`)),i(V,E)}),t(m),i(r,m)},oa=r=>{var m=fs();i(r,m)};k(ra,r=>{e(b).key?r(la):r(oa,-1)})}t(bt);var mt=d(bt),Ot=a(mt),It=a(Ot);{var na=r=>{var m=us();j(V=>{ve(m,"title",V),Ea(m,e(b).building.pct>0?`background: linear-gradient(to right, hsl(45, 100%, 45%) ${e(b).building.pct}%, hsl(45, 100%, 75%) ${e(b).building.pct}%)`:"")},[()=>e(b).building.pct>0?`${e(b).building.pct}% (${e(b).building.done.toLocaleString()} / ${e(b).building.total.toLocaleString()})`:"Building…"]),i(r,m)};k(It,r=>{e(b).building&&r(na)})}var Et=d(It,2);{var ia=r=>{var m=ps();i(r,m)};k(Et,r=>{e(b).hidden&&r(ia)})}var Ct=d(Et,2);{var da=r=>{var m=bs();i(r,m)};k(Ct,r=>{e(b).unique&&r(da)})}var Ft=d(Ct,2);{var ca=r=>{var m=ms();i(r,m)};k(Ft,r=>{e(b).sparse&&r(ca)})}var Dt=d(Ft,2);{var va=r=>{var m=gs();i(r,m)};k(Dt,r=>{e(b).partialFilterExpression&&r(va)})}var fa=d(Dt,2);{var ua=r=>{var m=hs();i(r,m)};k(fa,r=>{!e(b).building&&!e(b).hidden&&!e(b).unique&&!e(b).sparse&&!e(b).partialFilterExpression&&r(ua)})}t(Ot),t(mt);var gt=d(mt),pa=a(gt);{var ba=r=>{var m=_s(),V=a(m,!0);t(m),j(ee=>P(V,ee),[()=>Ia(e(b).size)]),i(r,m)},ma=r=>{var m=ws();i(r,m)};k(pa,r=>{e(b).size?r(ba):r(ma,-1)})}t(gt);var ht=d(gt),ga=a(ht);{var ha=r=>{const m=M(()=>Object.entries(e(G)).filter(([E])=>E.startsWith(`${e(b).name}::`)).map(([E,U])=>({key:E,stats:U}))),V=M(()=>Object.fromEntries(Object.entries(e(O)).filter(([E])=>E.startsWith(`${e(b).name}::`))));var ee=js(),ce=a(ee);{var be=E=>{var U=kt(),wt=ae(U);{var xt=xe=>{const ye=M(()=>Ht(e(m).map(T=>T.stats.ops))),et=M(()=>Ht(Object.values(e(V)).map(T=>T.ops))),Le=M(()=>e(et)>0?e(ye)-e(et):0);var me=ys(),tt=a(me),te=d(tt);{var at=T=>{var Ue=xs(),st=a(Ue);t(Ue),j(rt=>P(st,`+${rt??""}`),[()=>nt(e(Le))]),i(T,Ue)};k(te,T=>{e(Le)>0&&T(at)})}var ke=d(te,2),Se=a(ke);t(ke),t(me),j(T=>{ve(me,"title",`Aggregated across ${e(m).length??""} node(s)`),P(tt,`${T??""} `),P(Se,`(${e(m).length??""} node${e(m).length>1?"s":""})`)},[()=>e(Le)>0?nt(e(ye)):e(ye).toLocaleString()]),i(xe,me)},ka=xe=>{var ye=kt(),et=ae(ye);it(et,17,()=>e(m),$t,(Le,me)=>{let tt=()=>e(me).key,te=()=>e(me).stats;const at=M(()=>e(V)[tt()]?.ops||0),ke=M(()=>e(at)>0?te().ops-e(at):0);var Se=Ss(),T=a(Se),Ue=a(T);t(T);var st=d(T,2),rt=a(st),Sa=d(rt);{var Na=Te=>{var yt=ks(),ja=a(yt);t(yt),j(Pa=>P(ja,`+${Pa??""}`),[()=>nt(e(ke))]),i(Te,yt)};k(Sa,Te=>{e(ke)>0&&Te(Na)})}t(st),t(Se),j(Te=>{ve(Se,"title",te().host),P(Ue,`${(e(dt)[te().host]||te().host)??""}:`),P(rt,`${Te??""} `)},[()=>e(ke)>0?nt(te().ops):te().ops.toLocaleString()]),i(Le,Se)}),i(xe,ye)};k(wt,xe=>{e(K)?xe(xt):xe(ka,-1)})}i(E,U)},H=E=>{var U=Ns(),wt=a(U,!0);t(U),j(xt=>P(wt,xt),[()=>e(b).stats.ops.toLocaleString()]),i(E,U)};k(ce,E=>{e(m).length>0?E(be):E(H,-1)})}t(ee),i(r,ee)},_a=r=>{var m=Ps();i(r,m)};k(ga,r=>{e(b).stats?r(ha):r(_a,-1)})}t(ht);var _t=d(ht),Lt=a(_t),Ut=d(a(Lt),2),wa=a(Ut);{let r=M(()=>ss(e(b),["stats"]));qa(wa,{get value(){return e(r)},collapsed:!1})}t(Ut),t(Lt),t(_t);var xa=d(_t);{var ya=r=>{var m=Os(),V=a(m);{var ee=ce=>{var be=Ms(),H=a(be),E=a(H,!0);t(H);var U=d(H,2);t(be),j(()=>{H.disabled=e(Fe),P(E,e(b).hidden?"Unhide":"Hide"),U.disabled=e(Fe)}),Y("click",H,()=>Qt(e(b).name,e(b).hidden)),Y("click",U,()=>ea(e(b).name)),i(ce,be)};k(V,ce=>{e(b).name!=="_id_"&&ce(ee)})}t(m),i(r,m)};k(xa,r=>{e(c)||r(ya)})}t(N),j(()=>{R=Rt(N,1,"group svelte-l3ef1w",null,R,{"opacity-50":e(Fe)}),ve(De,"title",e(b).name),P(sa,e(b).name)}),i(Z,N)}),t(Ze),t(Ee),t(y),i(de,y)},$$slots:{default:!0}}),i(L,W)};k(Oe,L=>{e(p).data.length===0?L(Qe):L(Xe,-1)})}j(()=>P(Ge,`${e(re)?"Hide":"Show"} Multi-Node Usage`)),Y("click",X,()=>l(re,!e(re))),i(I,S)};k(u,I=>{e(p).error?I(h):I(w,-1)})}i(f,_)},(f,p)=>{Be(f,{title:"Indexes",children:(_,u)=>{var h=Ds(),w=a(h),I=a(w);t(w),t(h),j(()=>P(I,`Error loading indexes: ${e(p)??""}`)),i(_,h)},$$slots:{default:!0}})});var Mt=d(Pt,2);zt(Mt,{get show(){return e(C)},onclose:ft,footer:p=>{var _=Us(),u=ae(_),h=d(u,2);Y("click",u,ft),Y("click",h,ta),i(p,_)},children:(p,_)=>{var u=Ts(),h=ae(u),w=d(a(h)),I=a(w,!0);t(w),Ne(),t(h),Ne(2),j(()=>P(I,e($))),i(p,u)},$$slots:{footer:!0,default:!0}});var aa=d(Mt,2);zt(aa,{get show(){return e(Pe)},onclose:vt,title:"Create Index",footer:p=>{var _=As(),u=ae(_),h=d(u,2),w=a(h,!0);t(h),j(()=>{u.disabled=e(q),h.disabled=e(q),P(w,e(q)?"Creating...":"Create Index")}),Y("click",u,vt),Y("click",h,Zt),i(p,_)},children:(p,_)=>{var u=Bs(),h=a(u),w=d(a(h),2),I=d(a(w));I.textContent='{ "fieldName": 1 }',t(w);var S=d(w,2);Bt(S),ve(S,"placeholder",'{"fieldName": 1}'),At(()=>ot(S,()=>e(We),y=>l(We,y))),qt(S,y=>Wt?.(y)),t(h);var ne=d(h,2),Q=d(a(ne),4);ge(Q),t(ne);var ie=d(ne,2),X=a(ie),Ge=a(X);ge(Ge),Ne(2),t(X);var Oe=d(X,2),Qe=a(Oe);ge(Qe),Ne(2),t(Oe);var Xe=d(Oe,2),L=a(Xe);ge(L),Ne(2),t(Xe),t(ie);var W=d(ie,2),ue=d(a(W),2),Ie=d(a(ue));Ie.textContent='{ "status": "active" }',t(ue);var _e=d(ue,2);Bt(_e),ve(_e,"placeholder",'{"status": "active"}'),At(()=>ot(_e,()=>e(Ke),y=>l(Ke,y))),qt(_e,y=>Wt?.(y)),t(W);var de=d(W,2),pe=d(a(de),4);ge(pe),t(de),t(u),ot(Q,()=>e(ze),y=>l(ze,y)),Re(Ge,()=>e(He),y=>l(He,y)),Re(Qe,()=>e(Je),y=>l(Je,y)),Re(L,()=>e(Ye),y=>l(Ye,y)),ot(pe,()=>e(Ve),y=>l(Ve,y)),i(p,u)},$$slots:{footer:!0,default:!0}}),i(n,jt),Kt()}Vt(["click"]);export{sr as component,ar as universal};
|
|
Binary file
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{f as d,a as s}from"../chunks/DjUt71lH.js";import{p as Xe,a8 as Ye,f as ve,a as Ze,t as F,c as a,s as o,d as i,b as N,r as e,n as Pe,g as t,u as _e}from"../chunks/ogOVEqzG.js";import{d as $e,s as he,a as v}from"../chunks/wZ9dd4xr.js";import{i as C}from"../chunks/DIjqwnsi.js";import{e as ye,i as Re,n as z}from"../chunks/BaCQ7DA8.js";import{r as et,s as tt,a as ee}from"../chunks/
|
|
1
|
+
import{f as d,a as s}from"../chunks/DjUt71lH.js";import{p as Xe,a8 as Ye,f as ve,a as Ze,t as F,c as a,s as o,d as i,b as N,r as e,n as Pe,g as t,u as _e}from"../chunks/ogOVEqzG.js";import{d as $e,s as he,a as v}from"../chunks/wZ9dd4xr.js";import{i as C}from"../chunks/DIjqwnsi.js";import{e as ye,i as Re,n as z}from"../chunks/BaCQ7DA8.js";import{r as et,s as tt,a as ee}from"../chunks/B-0CauNF.js";import{b as te}from"../chunks/CynGo-ch.js";import{i as at,s as ot,b as Ae}from"../chunks/TxmsiDxf.js";import{P as lt,u as rt}from"../chunks/BfsQcfVI.js";const it=async xe=>({...xe.data,categories:[{key:"documents",label:"Documents"},{key:"indexes",label:"Indexes"},{key:"mappings",label:"Mappings"},{key:"schema",label:"Schema"}]}),Rt=Object.freeze(Object.defineProperty({__proto__:null,load:it},Symbol.toStringTag,{value:"Module"}));var nt=d('<button class="btn btn-success btn-sm -my-2">Save</button>'),st=d('<button class="btn btn-outline-light btn-sm -my-2 hover:bg-[var(--color-3)]">🤖 AI Helper</button> <!>',1),dt=d('<button class="btn btn-outline-danger btn-sm mt-6 hover:bg-[rgba(255,59,48,0.1)]">Remove Mapping</button>'),ct=d("<option> </option>"),vt=d('<div class="flex-1"><label class="block text-xs mb-1">Target Collection <select class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm mt-1"><option>Select collection...</option><!></select></label></div> <div class="flex-1"><label class="block text-xs mb-1">Target Field <input type="text" placeholder="_id" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm mt-1"/></label></div>',1),ut=d('<div class="flex-[2]"><label class="block text-xs mb-1">URL Template (use {value} for interpolation) <input type="text" placeholder="https://example.com/{value}" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm mt-1"/></label></div>'),bt=d('<button class="btn btn-outline-danger btn-sm mt-5 hover:bg-[rgba(255,59,48,0.1)]">×</button>'),pt=d('<div class="flex items-start gap-2 pl-4 border-l-2 border-[var(--color-3)]"><div class="flex-1"><label class="block text-xs mb-1">Type <select class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm mt-1"><option>Document</option><option>URL</option></select></label></div> <!> <!></div>'),mt=d('<div class="flex gap-2 mt-2 ml-4"><button class="btn btn-outline-light btn-sm hover:bg-[var(--color-3)]">+ Add Document Target</button> <button class="btn btn-outline-light btn-sm hover:bg-[var(--color-3)]">+ Add URL Target</button></div>'),gt=d('<div class="border border-[var(--border-color)] rounded p-4"><div class="flex items-start gap-4 mb-3"><div class="flex-1"><label class="block text-sm font-medium mb-1">Field Path <input type="text" placeholder="e.g., authorId or comments.authorId" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm mt-1"/></label></div> <!></div> <div class="space-y-2"></div> <!></div>'),ft=d('<div class="space-y-4"></div>'),_t=d('<div class="text-center py-8" style="color: var(--text-secondary);">No mappings defined yet.</div>'),ht=d('<button class="btn btn-success">+ Add New Mapping</button>'),yt=d("<option> </option>"),xt=d('<label class="block text-sm font-medium mb-1">Target Collection <select class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded mt-1"><option>Select collection...</option><!></select></label> <label class="block text-sm font-medium mb-1">Target Field <input type="text" placeholder="_id" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded mt-1"/></label>',1),kt=d(`<label class="block text-sm font-medium mb-1">URL Template <input type="text" placeholder="https://hf.co/datasets/{value}" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded mt-1"/></label> <p class="text-xs" style="color: var(--text-secondary);">Use <code class="px-1 bg-[var(--color-2)] rounded">{value}</code> as a placeholder for the field
|
|
2
2
|
value. Example: if the field is "abc/glue", and template is "https://hf.co/datasets/{value}",
|
|
3
3
|
the result will be "https://hf.co/datasets/abc/glue"</p>`,1),wt=d('<div class="border border-[var(--border-color)] rounded p-4 bg-[var(--light-background)]"><h3 class="text-lg font-medium mb-3">New Mapping</h3> <div class="space-y-3"><label class="block text-sm font-medium mb-1">Field Path <input type="text" placeholder="e.g., authorId or comments.authorId" class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded mt-1"/></label> <label class="block text-sm font-medium mb-1">Mapping Type <select class="w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded mt-1"><option>Document</option><option>URL</option></select></label> <!> <div class="flex gap-2"><button class="btn btn-success">Add</button> <button class="btn btn-default hover:bg-[var(--color-3)]">Cancel</button></div></div></div>'),Tt=d('<div class="mt-4"><!></div>'),Ct=d(`<div class="p-4"><div class="mb-4"><p class="mb-3">Define relationships between collections or external URLs to enable hover tooltips, navigation on foreign key
|
|
4
4
|
fields, and clickable external links. This will be stored in the <code class="px-1 bg-[var(--light-background)] rounded">mongoku.mappings</code> collection as a document with <a class="text-blue-500"> </a>.</p> <details class="mb-2" style="color: var(--text-secondary);"><summary class="cursor-pointer font-medium mb-2">Examples</summary> <div class="mt-2 space-y-3"><div><div class="font-medium mb-1">Document Mapping Example:</div> <div class="mb-1">Document in collection <code class="px-1 bg-[var(--light-background)] rounded">posts</code>:</div> <code class="block px-2 py-1 bg-[var(--light-background)] rounded text-xs mb-2">{ _id: "post1", title: "Hello", authorId: "user123", comments: [{authorId: "user456", text:
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as v,a as s,c as sr,t as te,b as lr}from"../chunks/DjUt71lH.js";import{p as dr,a as ir,f as Ce,g as t,u as Ae,c as r,s as a,r as e,t as A,b as ae,d as j,n as ve}from"../chunks/ogOVEqzG.js";import{d as nr,s as m,a as vr}from"../chunks/wZ9dd4xr.js";import{i as x}from"../chunks/DIjqwnsi.js";import{e as je,n as oe}from"../chunks/BaCQ7DA8.js";import{a as cr,s as Ee}from"../chunks/Dchfcdh4.js";import{s as Me}from"../chunks/Cl89kjea.js";import{b as ur}from"../chunks/CynGo-ch.js";import{b as mr}from"../chunks/TxmsiDxf.js";import{P as pr,c as br}from"../chunks/AXErlVVG.js";import{P as ze}from"../chunks/ChBg3kNp.js";const fr=async ce=>({...ce.data,categories:[{key:"documents",label:"Documents"},{key:"indexes",label:"Indexes"},{key:"mappings",label:"Mappings"},{key:"schema",label:"Schema"}]}),qr=Object.freeze(Object.defineProperty({__proto__:null,load:fr},Symbol.toStringTag,{value:"Module"}));var xr=lr('<svg class="animate-spin w-4 h-4 inline mr-1" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg>'),gr=v('<button class="btn btn-primary btn-sm -my-2"><!> </button>'),_r=v('<div class="overflow-hidden rounded-lg border border-[var(--border-color)] bg-[var(--color-1)]"><table class="table mb-0"><tbody><tr><td class="font-medium whitespace-nowrap px-4 py-3 text-sm w-40">Status</td><td class="px-4 py-3"><span class="badge badge-success">Active</span></td></tr><tr><td class="font-medium whitespace-nowrap px-4 py-3 text-sm w-40">Validation Level</td><td class="px-4 py-3"><span class="font-mono text-sm" style="color: var(--text);"> </span> <span class="text-xs ml-2" style="color: var(--text-darker);"><!></span></td></tr><tr><td class="font-medium whitespace-nowrap px-4 py-3 text-sm w-40">Validation Action</td><td class="px-4 py-3"><span class="font-mono text-sm" style="color: var(--text);"> </span> <span class="text-xs ml-2" style="color: var(--text-darker);"><!></span></td></tr></tbody></table></div> <div class="mt-4"><h4 class="text-xs font-semibold mb-2 uppercase tracking-wide" style="color: var(--text-secondary);">JSON Schema</h4> <div class="rounded-lg border border-[var(--border-color)] overflow-hidden"><!></div></div>',1),yr=v(`<div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-8 text-center"><div class="text-4xl mb-3 opacity-30">📋</div> <p class="text-sm font-medium" style="color: var(--text-secondary);">No JSON Schema validator configured.</p> <p class="text-xs mt-1" style="color: var(--text-darker);">Use MongoDB's <a href="https://www.mongodb.com/docs/manual/core/schema-validation/" target="_blank" rel="noopener" class="underline" style="color: var(--link);">schema validation</a> to enforce document structure.</p></div>`),hr=v('<div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-8 text-center"><svg class="animate-spin w-6 h-6 mx-auto mb-3" style="color: var(--link);" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg> <p class="text-sm" style="color: var(--text-secondary);">Running validation...</p></div>'),wr=v('<div class="rounded-lg border border-red-500/30 bg-red-500/10 p-4"><p class="text-sm text-red-600 font-medium">Audit failed</p> <p class="text-xs mt-1 text-red-500"> </p></div>'),kr=v('<a class="text-xs font-mono underline hover:no-underline" style="color: var(--link);"> </a>'),Sr=v('<span class="text-xs font-mono" style="color: var(--text);"> </span>'),Pr=v('<div class="flex items-center gap-2"><span class="text-xs font-medium" style="color: var(--text-secondary);">Document:</span> <!></div>'),Cr=v('<div class="flex items-start gap-2"><span class="text-red-400 mt-0.5">•</span> <pre class="text-xs whitespace-pre-wrap font-mono flex-1" style="color: var(--error);"> </pre></div>'),Ar=v('<div class="px-4 pb-4"><details class="rounded border border-[var(--border-color)] overflow-hidden"><summary class="cursor-pointer px-3 py-2 text-xs font-medium bg-[var(--color-1)] hover:bg-[var(--color-2)] transition-colors" style="color: var(--text-secondary);">View full document</summary> <div class="p-3 border-t border-[var(--border-color)] bg-[var(--color-1)]"><!></div></details></div>'),jr=v('<div class="rounded-lg border border-red-500/20 bg-red-500/5 overflow-hidden"><div class="px-4 py-3 border-b border-red-500/10"><!></div> <div class="p-4"><div class="space-y-2"></div></div> <!></div>'),Mr=v('<div class="mt-4"><h4 class="text-sm font-semibold mb-3" style="color: var(--error);"> </h4> <div class="space-y-3 max-h-96 overflow-auto pr-2"></div></div>'),Rr=v('<pre class="p-3 text-xs whitespace-pre-wrap font-mono" style="color: var(--text);"> </pre>'),Vr=v('<div class="mt-4"><h4 class="text-sm font-semibold mb-2" style="color: hsl(38, 92%, 50%);">Warnings</h4> <div class="rounded-lg border border-yellow-500/20 bg-yellow-500/5 divide-y divide-yellow-500/10 max-h-48 overflow-auto"></div></div>'),Dr=v('<div class="mb-4"><div class="flex justify-between items-center mb-2"><span class="text-sm font-medium" style="color: var(--text);">Compliance</span> <span class="text-sm font-bold"> </span></div> <div class="w-full h-3 rounded-full bg-[var(--color-3)] overflow-hidden"><div class="h-full rounded-full transition-all duration-500"></div></div></div> <div class="grid grid-cols-2 sm:grid-cols-4 gap-3 mb-4"><div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-3 text-center"><div class="text-lg font-bold" style="color: var(--text);"> </div> <div class="text-xs" style="color: var(--text-darker);">Scanned</div></div> <div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-3 text-center"><div class="text-lg font-bold" style="color: var(--button-success);"> </div> <div class="text-xs" style="color: var(--text-darker);">Valid</div></div> <div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-3 text-center"><div class="text-lg font-bold"> </div> <div class="text-xs" style="color: var(--text-darker);">Invalid</div></div> <div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-3 text-center"><div class="text-lg font-bold" style="color: var(--text);"> </div> <div class="text-xs" style="color: var(--text-darker);">Duration</div></div></div> <!> <!>',1),Ir=v('<div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-6 text-center"><p class="text-sm" style="color: var(--text-secondary);">Click "Run Audit" to check document compliance.</p></div>'),Lr=v('<div><h3 class="text-sm font-semibold mb-3 uppercase tracking-wide" style="color: var(--text-secondary);">Compliance Audit</h3> <details class="mb-4"><summary class="cursor-pointer text-sm font-medium" style="color: var(--text-secondary);">Read Preference (optional)</summary> <div class="mt-3 grid grid-cols-1 sm:grid-cols-2 gap-3 p-3 rounded-lg bg-[var(--color-3)]/50"><label class="block"><span class="text-xs font-medium" style="color: var(--text-secondary);">Mode</span> <select class="mt-1 w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm" style="color: var(--text);"><option>Default</option><option>secondaryPreferred</option><option>secondary</option><option>nearest</option></select></label> <label class="block"><span class="text-xs font-medium" style="color: var(--text-secondary);">Tags (JSON)</span> <input type="text" class="mt-1 w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm font-mono" style="color: var(--text);"/></label></div></details> <!></div>'),Nr=v('<div class="p-4 space-y-6"><div><h3 class="text-sm font-semibold mb-3 uppercase tracking-wide" style="color: var(--text-secondary);">Configuration</h3> <!></div> <!></div>');function Gr(ce,c){dr(c,!0);let i=ae(null),U=ae(!1),Y=ae(null),ue=ae(""),me=ae(""),w=Ae(()=>c.data.schemaInfo);function Je(o){if(o==null)return{display:"",navigable:null};if(typeof o=="string"||typeof o=="number")return{display:String(o),navigable:String(o)};if(typeof o=="object"){const l=o,q="$value"in l&&(typeof l.$value=="string"||typeof l.$value=="number"),L=l.$type===void 0||l.$type==="ObjectId";if(q&&L){const g=String(l.$value);return{display:g,navigable:g}}const M=Object.entries(l).filter(([g])=>g!=="$type");if(M.length>0)return{display:M.map(([k,R])=>`${k}: ${typeof R=="object"?JSON.stringify(R):R}`).join(" · "),navigable:null}}return{display:String(o),navigable:null}}function Re(o){if(!Number.isFinite(o))return String(o);if(o>=100)return"100";if(o<=0)return"0";const l=Math.floor(o*100)/100;return Number.isInteger(l)?l.toFixed(0):l.toString()}let Ve=Ae(()=>t(i)?t(i).compliancePct===100?"var(--button-success)":t(i).compliancePct>=90?"hsl(38, 92%, 50%)":"var(--error)":"var(--text)");async function Ue(){j(U,!0),j(Y,null),j(i,null);try{const o=await br({server:c.data.server,database:c.data.database,collection:c.data.collection,readPreferenceMode:t(ue)||void 0,readPreferenceTags:t(me)||void 0});if(o.error)j(Y,o.error,!0),oe.notifyError(o.error);else if(j(i,o.data,!0),o.data?.hasSchema){const l=`Audit complete: ${Re(o.data.compliancePct)}% of ${o.data.nrecords.toLocaleString()} documents match the schema`;o.data.compliancePct===100?oe.notifySuccess(l):o.data.compliancePct>=90?oe.notify(l,"info"):oe.notifyError(l)}}catch(o){const l=o instanceof Error?o.message:String(o);j(Y,l,!0),oe.notifyError(l)}finally{j(U,!1)}}pr(ce,{title:"Schema Validation",titleClass:"py-2",actions:l=>{var q=sr(),L=Ce(q);{var M=g=>{var k=gr(),R=r(k);{var pe=u=>{var _=xr();s(u,_)};x(R,u=>{t(U)&&u(pe)})}var be=a(R);e(k),A(()=>{k.disabled=t(U),m(be,` ${t(U)?"Auditing...":"Run Audit"}`)}),vr("click",k,Ue),s(g,k)};x(L,g=>{t(w).hasSchema&&g(M)})}s(l,q)},children:(l,q)=>{var L=Nr(),M=r(L),g=a(r(M),2);{var k=u=>{var _=_r(),N=Ce(_),G=r(N),B=r(G),O=a(r(B)),F=a(r(O)),T=r(F),K=r(T,!0);e(T);var Q=a(T,2),se=r(Q);{var X=d=>{var b=te("— all inserts & updates validated");s(d,b)},fe=d=>{var b=te("— only existing valid docs re-checked");s(d,b)},xe=d=>{var b=te("— no validation");s(d,b)};x(se,d=>{t(w).validationLevel==="strict"?d(X):t(w).validationLevel==="moderate"?d(fe,1):d(xe,-1)})}e(Q),e(F),e(O);var le=a(O),de=a(r(le)),Z=r(de),n=r(Z,!0);e(Z);var p=a(Z,2),V=r(p);{var E=d=>{var b=te("— invalid docs accepted with warning");s(d,b)},$=d=>{var b=te("— invalid docs rejected");s(d,b)};x(V,d=>{t(w).validationAction==="warn"?d(E):d($,-1)})}e(p),e(de),e(le),e(B),e(G),e(N);var ie=a(N,2),ee=a(r(ie),2),ge=r(ee);ze(ge,{get json(){return t(w).validator},autoCollapse:!1,get server(){return c.data.server},get database(){return c.data.database},get collection(){return c.data.collection}}),e(ee),e(ie),A(()=>{m(K,t(w).validationLevel??"strict"),m(n,t(w).validationAction??"error")}),s(u,_)},R=u=>{var _=yr();s(u,_)};x(g,u=>{t(w).hasSchema?u(k):u(R,-1)})}e(M);var pe=a(M,2);{var be=u=>{var _=Lr(),N=a(r(_),2),G=a(r(N),2),B=r(G),O=a(r(B),2),F=r(O);F.value=F.__value="";var T=a(F);T.value=T.__value="secondaryPreferred";var K=a(T);K.value=K.__value="secondary";var Q=a(K);Q.value=Q.__value="nearest",e(O),e(B);var se=a(B,2),X=a(r(se),2);cr(X),Ee(X,"placeholder",'[{"nodeType":"ANALYTICS"}]'),e(se),e(G),e(N);var fe=a(N,2);{var xe=n=>{var p=hr();s(n,p)},le=n=>{var p=wr(),V=a(r(p),2),E=r(V,!0);e(V),e(p),A(()=>m(E,t(Y))),s(n,p)},de=n=>{var p=Dr(),V=Ce(p),E=r(V),$=a(r(E),2),ie=r($);e($),e(E);var ee=a(E,2),ge=r(ee);e(ee),e(V);var d=a(V,2),b=r(d),De=r(b),Be=r(De,!0);e(De),ve(2),e(b);var _e=a(b,2),Ie=r(_e),Fe=r(Ie,!0);e(Ie),ve(2),e(_e);var ye=a(_e,2),he=r(ye),He=r(he,!0);e(he),ve(2),e(ye);var Le=a(ye,2),Ne=r(Le),We=r(Ne);e(Ne),ve(2),e(Le),e(d);var Oe=a(d,2);{var Ye=S=>{var P=Mr(),D=r(P),z=r(D);e(D);var ne=a(D,2);je(ne,23,()=>t(i).errors,(H,C)=>`err-${C}`,(H,C,Ke)=>{var we=jr(),ke=r(we),Qe=r(ke);{var Xe=y=>{const f=Ae(()=>Je(t(C).docId));var h=Pr(),J=a(r(h),2);{var re=W=>{var I=kr(),Pe=r(I,!0);e(I),A((rr,tr,ar,or)=>{Ee(I,"href",`/servers/${rr??""}/databases/${tr??""}/collections/${ar??""}/documents/${or??""}`),m(Pe,t(f).display)},[()=>encodeURIComponent(c.data.server),()=>encodeURIComponent(c.data.database),()=>encodeURIComponent(c.data.collection),()=>encodeURIComponent(t(f).navigable)]),s(W,I)},er=W=>{var I=Sr(),Pe=r(I,!0);e(I),A(()=>m(Pe,t(f).display)),s(W,I)};x(J,W=>{t(f).navigable!==null?W(re):W(er,-1)})}e(h),s(y,h)};x(Qe,y=>{t(C).docId&&y(Xe)})}e(ke);var Se=a(ke,2),Te=r(Se);je(Te,23,()=>t(C).message.split("; "),(y,f)=>`${t(Ke)}-${f}`,(y,f)=>{var h=Cr(),J=a(r(h),2),re=r(J,!0);e(J),e(h),A(()=>m(re,t(f))),s(y,h)}),e(Te),e(Se);var Ze=a(Se,2);{var $e=y=>{var f=Ar(),h=r(f),J=a(r(h),2),re=r(J);ze(re,{get json(){return t(C).document},autoCollapse:!0,get server(){return c.data.server},get database(){return c.data.database},get collection(){return c.data.collection}}),e(J),e(h),e(f),s(y,f)};x(Ze,y=>{t(C).document&&y($e)})}e(we),s(H,we)}),e(ne),e(P),A(()=>m(z,`Validation Errors (${t(i).errors.length??""} sampled)`)),s(S,P)};x(Oe,S=>{t(i).errors.length>0&&S(Ye)})}var qe=a(Oe,2);{var Ge=S=>{var P=Vr(),D=a(r(P),2);je(D,20,()=>t(i).warnings,z=>z,(z,ne)=>{var H=Rr(),C=r(H,!0);e(H),A(()=>m(C,ne)),s(z,H)}),e(D),e(P),s(S,P)};x(qe,S=>{t(i).warnings.length>0&&S(Ge)})}A((S,P,D,z)=>{Me($,`color: ${t(Ve)??""};`),m(ie,`${S??""}%`),Me(ge,`width: ${t(i).compliancePct??""}%; background: ${t(Ve)??""};`),m(Be,P),m(Fe,D),Me(he,`color: ${t(i).nInvalidDocuments>0?"var(--error)":"var(--text)"};`),m(He,z),m(We,`${t(i).tookMs??""}ms`)},[()=>Re(t(i).compliancePct),()=>t(i).nrecords.toLocaleString(),()=>t(i).nValidDocuments.toLocaleString(),()=>t(i).nInvalidDocuments.toLocaleString()]),s(n,p)},Z=n=>{var p=Ir();s(n,p)};x(fe,n=>{t(U)?n(xe):t(Y)?n(le,1):t(i)?n(de,2):n(Z,-1)})}e(_),mr(O,()=>t(ue),n=>j(ue,n)),ur(X,()=>t(me),n=>j(me,n)),s(u,_)};x(pe,u=>{t(w).hasSchema&&u(be)})}e(L),s(l,L)},$$slots:{actions:!0,default:!0}}),ir()}nr(["click"]);export{Gr as component,qr as universal};
|
|
1
|
+
import{f as v,a as s,c as sr,t as te,b as lr}from"../chunks/DjUt71lH.js";import{p as dr,a as ir,f as Ce,g as t,u as Ae,c as r,s as a,r as e,t as A,b as ae,d as j,n as ve}from"../chunks/ogOVEqzG.js";import{d as nr,s as m,a as vr}from"../chunks/wZ9dd4xr.js";import{i as x}from"../chunks/DIjqwnsi.js";import{e as je,n as oe}from"../chunks/BaCQ7DA8.js";import{a as cr,s as Ee}from"../chunks/B-0CauNF.js";import{s as Me}from"../chunks/Cl89kjea.js";import{b as ur}from"../chunks/CynGo-ch.js";import{b as mr}from"../chunks/TxmsiDxf.js";import{P as pr,c as br}from"../chunks/BfsQcfVI.js";import{P as ze}from"../chunks/DaDQ7m8i.js";const fr=async ce=>({...ce.data,categories:[{key:"documents",label:"Documents"},{key:"indexes",label:"Indexes"},{key:"mappings",label:"Mappings"},{key:"schema",label:"Schema"}]}),qr=Object.freeze(Object.defineProperty({__proto__:null,load:fr},Symbol.toStringTag,{value:"Module"}));var xr=lr('<svg class="animate-spin w-4 h-4 inline mr-1" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg>'),gr=v('<button class="btn btn-primary btn-sm -my-2"><!> </button>'),_r=v('<div class="overflow-hidden rounded-lg border border-[var(--border-color)] bg-[var(--color-1)]"><table class="table mb-0"><tbody><tr><td class="font-medium whitespace-nowrap px-4 py-3 text-sm w-40">Status</td><td class="px-4 py-3"><span class="badge badge-success">Active</span></td></tr><tr><td class="font-medium whitespace-nowrap px-4 py-3 text-sm w-40">Validation Level</td><td class="px-4 py-3"><span class="font-mono text-sm" style="color: var(--text);"> </span> <span class="text-xs ml-2" style="color: var(--text-darker);"><!></span></td></tr><tr><td class="font-medium whitespace-nowrap px-4 py-3 text-sm w-40">Validation Action</td><td class="px-4 py-3"><span class="font-mono text-sm" style="color: var(--text);"> </span> <span class="text-xs ml-2" style="color: var(--text-darker);"><!></span></td></tr></tbody></table></div> <div class="mt-4"><h4 class="text-xs font-semibold mb-2 uppercase tracking-wide" style="color: var(--text-secondary);">JSON Schema</h4> <div class="rounded-lg border border-[var(--border-color)] overflow-hidden"><!></div></div>',1),yr=v(`<div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-8 text-center"><div class="text-4xl mb-3 opacity-30">📋</div> <p class="text-sm font-medium" style="color: var(--text-secondary);">No JSON Schema validator configured.</p> <p class="text-xs mt-1" style="color: var(--text-darker);">Use MongoDB's <a href="https://www.mongodb.com/docs/manual/core/schema-validation/" target="_blank" rel="noopener" class="underline" style="color: var(--link);">schema validation</a> to enforce document structure.</p></div>`),hr=v('<div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-8 text-center"><svg class="animate-spin w-6 h-6 mx-auto mb-3" style="color: var(--link);" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg> <p class="text-sm" style="color: var(--text-secondary);">Running validation...</p></div>'),wr=v('<div class="rounded-lg border border-red-500/30 bg-red-500/10 p-4"><p class="text-sm text-red-600 font-medium">Audit failed</p> <p class="text-xs mt-1 text-red-500"> </p></div>'),kr=v('<a class="text-xs font-mono underline hover:no-underline" style="color: var(--link);"> </a>'),Sr=v('<span class="text-xs font-mono" style="color: var(--text);"> </span>'),Pr=v('<div class="flex items-center gap-2"><span class="text-xs font-medium" style="color: var(--text-secondary);">Document:</span> <!></div>'),Cr=v('<div class="flex items-start gap-2"><span class="text-red-400 mt-0.5">•</span> <pre class="text-xs whitespace-pre-wrap font-mono flex-1" style="color: var(--error);"> </pre></div>'),Ar=v('<div class="px-4 pb-4"><details class="rounded border border-[var(--border-color)] overflow-hidden"><summary class="cursor-pointer px-3 py-2 text-xs font-medium bg-[var(--color-1)] hover:bg-[var(--color-2)] transition-colors" style="color: var(--text-secondary);">View full document</summary> <div class="p-3 border-t border-[var(--border-color)] bg-[var(--color-1)]"><!></div></details></div>'),jr=v('<div class="rounded-lg border border-red-500/20 bg-red-500/5 overflow-hidden"><div class="px-4 py-3 border-b border-red-500/10"><!></div> <div class="p-4"><div class="space-y-2"></div></div> <!></div>'),Mr=v('<div class="mt-4"><h4 class="text-sm font-semibold mb-3" style="color: var(--error);"> </h4> <div class="space-y-3 max-h-96 overflow-auto pr-2"></div></div>'),Rr=v('<pre class="p-3 text-xs whitespace-pre-wrap font-mono" style="color: var(--text);"> </pre>'),Vr=v('<div class="mt-4"><h4 class="text-sm font-semibold mb-2" style="color: hsl(38, 92%, 50%);">Warnings</h4> <div class="rounded-lg border border-yellow-500/20 bg-yellow-500/5 divide-y divide-yellow-500/10 max-h-48 overflow-auto"></div></div>'),Dr=v('<div class="mb-4"><div class="flex justify-between items-center mb-2"><span class="text-sm font-medium" style="color: var(--text);">Compliance</span> <span class="text-sm font-bold"> </span></div> <div class="w-full h-3 rounded-full bg-[var(--color-3)] overflow-hidden"><div class="h-full rounded-full transition-all duration-500"></div></div></div> <div class="grid grid-cols-2 sm:grid-cols-4 gap-3 mb-4"><div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-3 text-center"><div class="text-lg font-bold" style="color: var(--text);"> </div> <div class="text-xs" style="color: var(--text-darker);">Scanned</div></div> <div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-3 text-center"><div class="text-lg font-bold" style="color: var(--button-success);"> </div> <div class="text-xs" style="color: var(--text-darker);">Valid</div></div> <div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-3 text-center"><div class="text-lg font-bold"> </div> <div class="text-xs" style="color: var(--text-darker);">Invalid</div></div> <div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-3 text-center"><div class="text-lg font-bold" style="color: var(--text);"> </div> <div class="text-xs" style="color: var(--text-darker);">Duration</div></div></div> <!> <!>',1),Ir=v('<div class="rounded-lg border border-[var(--border-color)] bg-[var(--color-1)] p-6 text-center"><p class="text-sm" style="color: var(--text-secondary);">Click "Run Audit" to check document compliance.</p></div>'),Lr=v('<div><h3 class="text-sm font-semibold mb-3 uppercase tracking-wide" style="color: var(--text-secondary);">Compliance Audit</h3> <details class="mb-4"><summary class="cursor-pointer text-sm font-medium" style="color: var(--text-secondary);">Read Preference (optional)</summary> <div class="mt-3 grid grid-cols-1 sm:grid-cols-2 gap-3 p-3 rounded-lg bg-[var(--color-3)]/50"><label class="block"><span class="text-xs font-medium" style="color: var(--text-secondary);">Mode</span> <select class="mt-1 w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm" style="color: var(--text);"><option>Default</option><option>secondaryPreferred</option><option>secondary</option><option>nearest</option></select></label> <label class="block"><span class="text-xs font-medium" style="color: var(--text-secondary);">Tags (JSON)</span> <input type="text" class="mt-1 w-full px-3 py-2 bg-[var(--color-1)] border border-[var(--border-color)] rounded text-sm font-mono" style="color: var(--text);"/></label></div></details> <!></div>'),Nr=v('<div class="p-4 space-y-6"><div><h3 class="text-sm font-semibold mb-3 uppercase tracking-wide" style="color: var(--text-secondary);">Configuration</h3> <!></div> <!></div>');function Gr(ce,c){dr(c,!0);let i=ae(null),U=ae(!1),Y=ae(null),ue=ae(""),me=ae(""),w=Ae(()=>c.data.schemaInfo);function Je(o){if(o==null)return{display:"",navigable:null};if(typeof o=="string"||typeof o=="number")return{display:String(o),navigable:String(o)};if(typeof o=="object"){const l=o,q="$value"in l&&(typeof l.$value=="string"||typeof l.$value=="number"),L=l.$type===void 0||l.$type==="ObjectId";if(q&&L){const g=String(l.$value);return{display:g,navigable:g}}const M=Object.entries(l).filter(([g])=>g!=="$type");if(M.length>0)return{display:M.map(([k,R])=>`${k}: ${typeof R=="object"?JSON.stringify(R):R}`).join(" · "),navigable:null}}return{display:String(o),navigable:null}}function Re(o){if(!Number.isFinite(o))return String(o);if(o>=100)return"100";if(o<=0)return"0";const l=Math.floor(o*100)/100;return Number.isInteger(l)?l.toFixed(0):l.toString()}let Ve=Ae(()=>t(i)?t(i).compliancePct===100?"var(--button-success)":t(i).compliancePct>=90?"hsl(38, 92%, 50%)":"var(--error)":"var(--text)");async function Ue(){j(U,!0),j(Y,null),j(i,null);try{const o=await br({server:c.data.server,database:c.data.database,collection:c.data.collection,readPreferenceMode:t(ue)||void 0,readPreferenceTags:t(me)||void 0});if(o.error)j(Y,o.error,!0),oe.notifyError(o.error);else if(j(i,o.data,!0),o.data?.hasSchema){const l=`Audit complete: ${Re(o.data.compliancePct)}% of ${o.data.nrecords.toLocaleString()} documents match the schema`;o.data.compliancePct===100?oe.notifySuccess(l):o.data.compliancePct>=90?oe.notify(l,"info"):oe.notifyError(l)}}catch(o){const l=o instanceof Error?o.message:String(o);j(Y,l,!0),oe.notifyError(l)}finally{j(U,!1)}}pr(ce,{title:"Schema Validation",titleClass:"py-2",actions:l=>{var q=sr(),L=Ce(q);{var M=g=>{var k=gr(),R=r(k);{var pe=u=>{var _=xr();s(u,_)};x(R,u=>{t(U)&&u(pe)})}var be=a(R);e(k),A(()=>{k.disabled=t(U),m(be,` ${t(U)?"Auditing...":"Run Audit"}`)}),vr("click",k,Ue),s(g,k)};x(L,g=>{t(w).hasSchema&&g(M)})}s(l,q)},children:(l,q)=>{var L=Nr(),M=r(L),g=a(r(M),2);{var k=u=>{var _=_r(),N=Ce(_),G=r(N),B=r(G),O=a(r(B)),F=a(r(O)),T=r(F),K=r(T,!0);e(T);var Q=a(T,2),se=r(Q);{var X=d=>{var b=te("— all inserts & updates validated");s(d,b)},fe=d=>{var b=te("— only existing valid docs re-checked");s(d,b)},xe=d=>{var b=te("— no validation");s(d,b)};x(se,d=>{t(w).validationLevel==="strict"?d(X):t(w).validationLevel==="moderate"?d(fe,1):d(xe,-1)})}e(Q),e(F),e(O);var le=a(O),de=a(r(le)),Z=r(de),n=r(Z,!0);e(Z);var p=a(Z,2),V=r(p);{var E=d=>{var b=te("— invalid docs accepted with warning");s(d,b)},$=d=>{var b=te("— invalid docs rejected");s(d,b)};x(V,d=>{t(w).validationAction==="warn"?d(E):d($,-1)})}e(p),e(de),e(le),e(B),e(G),e(N);var ie=a(N,2),ee=a(r(ie),2),ge=r(ee);ze(ge,{get json(){return t(w).validator},autoCollapse:!1,get server(){return c.data.server},get database(){return c.data.database},get collection(){return c.data.collection}}),e(ee),e(ie),A(()=>{m(K,t(w).validationLevel??"strict"),m(n,t(w).validationAction??"error")}),s(u,_)},R=u=>{var _=yr();s(u,_)};x(g,u=>{t(w).hasSchema?u(k):u(R,-1)})}e(M);var pe=a(M,2);{var be=u=>{var _=Lr(),N=a(r(_),2),G=a(r(N),2),B=r(G),O=a(r(B),2),F=r(O);F.value=F.__value="";var T=a(F);T.value=T.__value="secondaryPreferred";var K=a(T);K.value=K.__value="secondary";var Q=a(K);Q.value=Q.__value="nearest",e(O),e(B);var se=a(B,2),X=a(r(se),2);cr(X),Ee(X,"placeholder",'[{"nodeType":"ANALYTICS"}]'),e(se),e(G),e(N);var fe=a(N,2);{var xe=n=>{var p=hr();s(n,p)},le=n=>{var p=wr(),V=a(r(p),2),E=r(V,!0);e(V),e(p),A(()=>m(E,t(Y))),s(n,p)},de=n=>{var p=Dr(),V=Ce(p),E=r(V),$=a(r(E),2),ie=r($);e($),e(E);var ee=a(E,2),ge=r(ee);e(ee),e(V);var d=a(V,2),b=r(d),De=r(b),Be=r(De,!0);e(De),ve(2),e(b);var _e=a(b,2),Ie=r(_e),Fe=r(Ie,!0);e(Ie),ve(2),e(_e);var ye=a(_e,2),he=r(ye),He=r(he,!0);e(he),ve(2),e(ye);var Le=a(ye,2),Ne=r(Le),We=r(Ne);e(Ne),ve(2),e(Le),e(d);var Oe=a(d,2);{var Ye=S=>{var P=Mr(),D=r(P),z=r(D);e(D);var ne=a(D,2);je(ne,23,()=>t(i).errors,(H,C)=>`err-${C}`,(H,C,Ke)=>{var we=jr(),ke=r(we),Qe=r(ke);{var Xe=y=>{const f=Ae(()=>Je(t(C).docId));var h=Pr(),J=a(r(h),2);{var re=W=>{var I=kr(),Pe=r(I,!0);e(I),A((rr,tr,ar,or)=>{Ee(I,"href",`/servers/${rr??""}/databases/${tr??""}/collections/${ar??""}/documents/${or??""}`),m(Pe,t(f).display)},[()=>encodeURIComponent(c.data.server),()=>encodeURIComponent(c.data.database),()=>encodeURIComponent(c.data.collection),()=>encodeURIComponent(t(f).navigable)]),s(W,I)},er=W=>{var I=Sr(),Pe=r(I,!0);e(I),A(()=>m(Pe,t(f).display)),s(W,I)};x(J,W=>{t(f).navigable!==null?W(re):W(er,-1)})}e(h),s(y,h)};x(Qe,y=>{t(C).docId&&y(Xe)})}e(ke);var Se=a(ke,2),Te=r(Se);je(Te,23,()=>t(C).message.split("; "),(y,f)=>`${t(Ke)}-${f}`,(y,f)=>{var h=Cr(),J=a(r(h),2),re=r(J,!0);e(J),e(h),A(()=>m(re,t(f))),s(y,h)}),e(Te),e(Se);var Ze=a(Se,2);{var $e=y=>{var f=Ar(),h=r(f),J=a(r(h),2),re=r(J);ze(re,{get json(){return t(C).document},autoCollapse:!0,get server(){return c.data.server},get database(){return c.data.database},get collection(){return c.data.collection}}),e(J),e(h),e(f),s(y,f)};x(Ze,y=>{t(C).document&&y($e)})}e(we),s(H,we)}),e(ne),e(P),A(()=>m(z,`Validation Errors (${t(i).errors.length??""} sampled)`)),s(S,P)};x(Oe,S=>{t(i).errors.length>0&&S(Ye)})}var qe=a(Oe,2);{var Ge=S=>{var P=Vr(),D=a(r(P),2);je(D,20,()=>t(i).warnings,z=>z,(z,ne)=>{var H=Rr(),C=r(H,!0);e(H),A(()=>m(C,ne)),s(z,H)}),e(D),e(P),s(S,P)};x(qe,S=>{t(i).warnings.length>0&&S(Ge)})}A((S,P,D,z)=>{Me($,`color: ${t(Ve)??""};`),m(ie,`${S??""}%`),Me(ge,`width: ${t(i).compliancePct??""}%; background: ${t(Ve)??""};`),m(Be,P),m(Fe,D),Me(he,`color: ${t(i).nInvalidDocuments>0?"var(--error)":"var(--text)"};`),m(He,z),m(We,`${t(i).tookMs??""}ms`)},[()=>Re(t(i).compliancePct),()=>t(i).nrecords.toLocaleString(),()=>t(i).nValidDocuments.toLocaleString(),()=>t(i).nInvalidDocuments.toLocaleString()]),s(n,p)},Z=n=>{var p=Ir();s(n,p)};x(fe,n=>{t(U)?n(xe):t(Y)?n(le,1):t(i)?n(de,2):n(Z,-1)})}e(_),mr(O,()=>t(ue),n=>j(ue,n)),ur(X,()=>t(me),n=>j(me,n)),s(u,_)};x(pe,u=>{t(w).hasSchema&&u(be)})}e(L),s(l,L)},$$slots:{actions:!0,default:!0}}),ir()}nr(["click"]);export{Gr as component,qr as universal};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as r,a as i}from"../chunks/DjUt71lH.js";import{i as n}from"../chunks/TfiCUZYY.js";import{p as l,t as m,a as p,s as f,c,r as d}from"../chunks/ogOVEqzG.js";import{r as u,s as b}from"../chunks/
|
|
1
|
+
import{f as r,a as i}from"../chunks/DjUt71lH.js";import{i as n}from"../chunks/TfiCUZYY.js";import{p as l,t as m,a as p,s as f,c,r as d}from"../chunks/ogOVEqzG.js";import{r as u,s as b}from"../chunks/B-0CauNF.js";var v=r(`<div class="flex flex-col items-center justify-center py-24 gap-4"><h1 class="text-xl font-semibold">You've been logged out</h1> <p class="text-sm text-[var(--text-muted)]">Your session has been ended.</p> <a class="btn btn-default btn-sm mt-2">Log back in</a></div>`);function y(e,s){l(s,!1),n();var t=v(),a=f(c(t),4);d(t),m(o=>b(a,"href",o),[()=>u("/auth/login")]),i(e,t),p()}export{y as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{f as _,a,c as K,t as it}from"../chunks/DjUt71lH.js";import{b as P,ak as dt,a0 as zt,g as t,d as u,al as tt,p as Rt,f as C,a as Ct,$ as Et,s as g,c as s,r as o,t as S,n as lt,u as Dt}from"../chunks/ogOVEqzG.js";import{d as Pt,e as Tt,s as E,a as D}from"../chunks/wZ9dd4xr.js";import{a as H,s as J,f as vt}from"../chunks/B-TH2U-E.js";import{i as N}from"../chunks/DIjqwnsi.js";import{e as At,n as O}from"../chunks/BaCQ7DA8.js";import{s as ct,r as Ft,a as Mt}from"../chunks/
|
|
1
|
+
import{f as _,a,c as K,t as it}from"../chunks/DjUt71lH.js";import{b as P,ak as dt,a0 as zt,g as t,d as u,al as tt,p as Rt,f as C,a as Ct,$ as Et,s as g,c as s,r as o,t as S,n as lt,u as Dt}from"../chunks/ogOVEqzG.js";import{d as Pt,e as Tt,s as E,a as D}from"../chunks/wZ9dd4xr.js";import{a as H,s as J,f as vt}from"../chunks/B-TH2U-E.js";import{i as N}from"../chunks/DIjqwnsi.js";import{e as At,n as O}from"../chunks/BaCQ7DA8.js";import{s as ct,r as Ft,a as Mt}from"../chunks/B-0CauNF.js";import{b as Nt}from"../chunks/CynGo-ch.js";import{P as $t,r as jt,e as Ot,f as Yt}from"../chunks/BfsQcfVI.js";import{i as et}from"../chunks/DkIGOVHS.js";import{T as qt}from"../chunks/NycVVWZD.js";var Bt=["forEach","isDisjointFrom","isSubsetOf","isSupersetOf"],It=["difference","intersection","symmetricDifference","union"],ut=!1;class L extends Set{#r=new Map;#t=P(0);#e=P(0);#a=dt||-1;constructor(e){if(super(),e){for(var n of e)super.add(n);this.#e.v=super.size}ut||this.#o()}#s(e){return dt===this.#a?P(e):zt(e)}#o(){ut=!0;var e=L.prototype,n=Set.prototype;for(const i of Bt)e[i]=function(...v){return t(this.#t),n[i].apply(this,v)};for(const i of It)e[i]=function(...v){t(this.#t);var Y=n[i].apply(this,v);return new L(Y)}}has(e){var n=super.has(e),i=this.#r,v=i.get(e);if(v===void 0){if(!n)return t(this.#t),!1;v=this.#s(!0),i.set(e,v)}return t(v),n}add(e){return super.has(e)||(super.add(e),u(this.#e,super.size),tt(this.#t)),this}delete(e){var n=super.delete(e),i=this.#r,v=i.get(e);return v!==void 0&&(i.delete(e),u(v,!1)),n&&(u(this.#e,super.size),tt(this.#t)),n}clear(){if(super.size!==0){super.clear();var e=this.#r;for(var n of e.values())u(n,!1);e.clear(),u(this.#e,0),tt(this.#t)}}keys(){return this.values()}values(){return t(this.#t),super.values()}entries(){return t(this.#t),super.entries()}[Symbol.iterator](){return this.keys()}get size(){return t(this.#e)}}var Kt=_('<input type="text" placeholder="mongodb://user:password@hostname:port?directConnection=true" class="form-input svelte-gqreh7"/> <button class="btn btn-outline-success btn-sm">Add</button>',1),Ut=_('<button class="btn btn-default btn-sm"> </button> <!>',1),Gt=_('<span class="error"><span class="badge badge-danger">Error</span> </span>'),Ht=_("<a> </a>"),Jt=_("<span> </span>"),Lt=_('<span style="color: var(--text-secondary);">...</span>'),Qt=_('<span style="color: var(--text-secondary);">...</span>'),Vt=_('<button class="btn btn-default btn-sm -my-2 hidden group-hover:inline"> </button>'),Wt=_('<tr class="group"><td><!></td><td><!></td><td><!></td><td style="width: 250px"><div class="flex gap-2 justify-end"><!> <button class="btn btn-outline-danger btn-sm -my-2 hidden group-hover:inline">Remove from list</button></div></td></tr>'),Xt=_('<tr><td colspan="4"><div class="text-center">No servers...</div></td></tr>'),Zt=_('<table class="table"><thead><tr><th>Name</th><th>Databases</th><th>Size</th><th></th></tr></thead><tbody><!></tbody></table>'),te=_(`<div class="modal-overlay"><div class="modal"><div class="modal-body"><p>Are you sure you want to remove <strong> </strong>? This will only remove it from this
|
|
2
2
|
list. You can add it back.</p></div> <div class="modal-footer"><button class="btn btn-default btn-sm">No</button> <button class="btn btn-outline-danger btn-sm">Yes</button></div></div></div>`),ee=_("<!> <!>",1);function fe(ft,e){Rt(e,!0);let n=P(!1),i=P(""),v=P(!1),Y=P(!1),q=P(null);const U=new L;async function mt(){if(t(i)){u(v,!0);try{await Ot({url:t(i)}),u(i,""),u(n,!1),O.notifySuccess("Server added successfully"),await et()}catch(c){O.notifyError(c,"Failed to add server")}finally{u(v,!1)}}}function pt(c){u(q,c,!0),u(Y,!0)}function G(){u(Y,!1),u(q,null)}async function _t(){if(t(q))try{await Yt(t(q).name),O.notifySuccess("Server removed successfully"),G(),await et()}catch(c){O.notifyError(c,"Failed to remove server")}}function ht(c){c.key==="Escape"&&G()}async function bt(c){U.add(c._id);try{await jt(c._id),O.notifySuccess("Connection restored successfully"),await et()}catch(w){O.notifyError(w,"Failed to retry connection")}finally{U.delete(c._id)}}var rt=ee();Tt("keydown",Et,ht);var at=C(rt);$t(at,{title:"Servers",actions:w=>{var T=Ut(),h=C(T),A=s(h,!0);o(h);var $=g(h,2);{var B=z=>{var b=Kt(),k=C(b);Mt(k);var j=g(k,2);S(()=>{k.disabled=t(v),j.disabled=!t(i).length||t(v)}),Nt(k,()=>t(i),I=>u(i,I)),D("click",j,mt),a(z,b)};N($,z=>{t(n)&&z(B)})}S(()=>E(A,t(n)?"Cancel":"Add Server")),D("click",h,()=>u(n,!t(n))),a(w,T)},children:(w,T)=>{var h=Zt(),A=g(s(h)),$=s(A);{var B=b=>{var k=K(),j=C(k);At(j,17,()=>e.data.servers,I=>I._id,(I,y)=>{var Q=Wt(),V=s(Q),kt=s(V);H(kt,()=>t(y).details,f=>{var r=Jt(),m=s(r,!0);o(r),S(x=>E(m,x),[()=>J(t(y).name)]),a(f,r)},(f,r)=>{var m=K(),x=C(m);{var F=l=>{var d=Gt(),M=s(d),R=g(M);o(d),S(Z=>{ct(M,"title",t(r).error.message),E(R,` ${Z??""}`)},[()=>J(t(y).name)]),a(l,d)},p=l=>{var d=Ht(),M=s(d,!0);o(d),S((R,Z)=>{ct(d,"href",R),E(M,Z)},[()=>Ft(`/servers/${encodeURIComponent(J(t(y).name))}/databases`),()=>J(t(y).name)]),a(l,d)};N(x,l=>{"error"in t(r)&&t(r).error?l(F):l(p,-1)})}a(f,m)}),o(V);var W=g(V),wt=s(W);H(wt,()=>t(y).details,f=>{var r=Lt();a(f,r)},(f,r)=>{var m=K(),x=C(m);{var F=p=>{{let l=Dt(()=>t(r).databases.map(d=>({name:d.name,collections:d.collections,size:vt(d.size)})));qt(p,{columns:[{header:"Database",key:"name"},{header:"Collections",key:"collections"},{header:"Size",key:"size"}],get rows(){return t(l)},children:(d,M)=>{lt();var R=it();S(()=>E(R,t(r).databases.length)),a(d,R)},$$slots:{default:!0}})}};N(x,p=>{"databases"in t(r)&&t(r).databases&&p(F)})}a(f,m)}),o(W);var X=g(W),xt=s(X);H(xt,()=>t(y).details,f=>{var r=Qt();a(f,r)},(f,r)=>{var m=K(),x=C(m);{var F=p=>{var l=it();S(d=>E(l,d),[()=>vt(t(r).size)]),a(p,l)};N(x,p=>{"size"in t(r)&&t(r).size!==void 0&&p(F)})}a(f,m)}),o(X);var st=g(X),ot=s(st),nt=s(ot);H(nt,()=>t(y).details,null,(f,r)=>{var m=K(),x=C(m);{var F=p=>{var l=Vt(),d=s(l,!0);o(l),S((M,R)=>{l.disabled=M,E(d,R)},[()=>U.has(t(y)._id),()=>U.has(t(y)._id)?"Retrying...":"Retry"]),D("click",l,()=>bt(t(y))),a(p,l)};N(x,p=>{"error"in t(r)&&t(r).error&&p(F)})}a(f,m)});var St=g(nt,2);o(ot),o(st),o(Q),D("click",St,()=>pt(t(y))),a(I,Q)}),a(b,k)},z=b=>{var k=Xt();a(b,k)};N($,b=>{e.data.servers&&e.data.servers.length>0?b(B):b(z,-1)})}o(A),o(h),a(w,h)},$$slots:{actions:!0,default:!0}});var yt=g(at,2);{var gt=c=>{var w=te(),T=s(w),h=s(T),A=s(h),$=g(s(A)),B=s($,!0);o($),lt(),o(A),o(h);var z=g(h,2),b=s(z),k=g(b,2);o(z),o(T),o(w),S(()=>E(B,t(q)?.name)),D("click",w,G),D("click",T,j=>j.stopPropagation()),D("click",b,G),D("click",k,_t),a(c,w)};N(yt,c=>{t(Y)&&c(gt)})}a(ft,rt),Ct()}Pt(["click"]);export{fe as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as h,a as r,c as lt,t as S}from"../chunks/DjUt71lH.js";import{p as it,f as U,a as dt,s as p,c as o,r as s,n as B,t as y,g as t,u as K,b as F,d as b}from"../chunks/ogOVEqzG.js";import{d as vt,s as k,a as H}from"../chunks/wZ9dd4xr.js";import{a as ct,f as V}from"../chunks/B-TH2U-E.js";import{i as M}from"../chunks/DIjqwnsi.js";import{e as ut,n as L}from"../chunks/BaCQ7DA8.js";import{r as mt,s as ft}from"../chunks/
|
|
1
|
+
import{f as h,a as r,c as lt,t as S}from"../chunks/DjUt71lH.js";import{p as it,f as U,a as dt,s as p,c as o,r as s,n as B,t as y,g as t,u as K,b as F,d as b}from"../chunks/ogOVEqzG.js";import{d as vt,s as k,a as H}from"../chunks/wZ9dd4xr.js";import{a as ct,f as V}from"../chunks/B-TH2U-E.js";import{i as M}from"../chunks/DIjqwnsi.js";import{e as ut,n as L}from"../chunks/BaCQ7DA8.js";import{r as mt,s as ft}from"../chunks/B-0CauNF.js";import{P as pt,d as bt}from"../chunks/BfsQcfVI.js";import{i as ht}from"../chunks/DkIGOVHS.js";import{M as _t}from"../chunks/BnRtSpxa.js";import{T as Q}from"../chunks/NycVVWZD.js";var gt=h('<button class="btn btn-outline-danger btn-sm -my-2 hidden group-hover:inline">Drop</button>'),yt=h('<tr class="group"><td><a> </a></td><td><!></td><td><!></td><td style="width: 100px"><div class="flex justify-end"><!></div></td></tr>'),zt=h('<tr><td colspan="4"><div class="text-center">No databases...</div></td></tr>'),xt=h('<table class="table"><thead><tr><th>Name</th><th>Collections</th><th>Size</th><th></th></tr></thead><tbody><!></tbody></table>'),Dt=h('<button class="btn btn-default btn-sm">Cancel</button> <button class="btn btn-outline-danger btn-sm"><!></button>',1),St=h("<p>Are you sure you want to drop the database <strong> </strong>? This action cannot be undone.</p>"),kt=h("<!> <!>",1);function Et(W,v){it(v,!0);let P=F(!1),_=F(null),m=F(!1);function X(g){b(_,g,!0),b(P,!0)}function T(){b(P,!1),b(_,null),b(m,!1)}async function Z(){if(!(!t(_)||t(m))){b(m,!0);try{await bt({server:v.data.server,database:t(_).name}),L.notifySuccess(`Database "${t(_).name}" dropped successfully`),T(),await ht()}catch(g){L.notifyError(g,"Failed to drop database"),b(m,!1)}}}var Y=kt(),q=U(Y);pt(q,{get title(){return`Databases on ${v.data.server??""}`},children:(g,C)=>{var f=xt(),l=p(o(f)),i=o(l);{var z=c=>{var n=lt(),x=U(n);ut(x,17,()=>v.data.databases,I=>I.name,(I,e)=>{var j=yt(),A=o(j),N=o(A),et=o(N,!0);s(N),s(A);var O=p(A),at=o(O);ct(at,()=>t(e).collections,a=>{var d=S();y(()=>k(d,t(e).nCollections)),r(a,d)},(a,d)=>{{let u=K(()=>t(d).map(D=>({name:D.name,size:V(D.size)})));Q(a,{columns:[{header:"Collection",key:"name",align:"left"},{header:"Size",key:"size",align:"right"}],get rows(){return t(u)},children:(D,R)=>{B();var w=S();y(()=>k(w,t(e).nCollections)),r(D,w)},$$slots:{default:!0}})}}),s(O);var E=p(O),rt=o(E);{var ot=a=>{{let d=K(()=>[{metric:"Total Size",value:t(e).size},{metric:"Data Size",value:t(e).dataSize},{metric:"Storage Size",value:t(e).storageSize},{metric:"Index Size",value:t(e).totalIndexSize},{metric:"Avg Object Size",value:t(e).avgObjSize},{metric:"Empty",value:t(e).empty?"Yes":"No"}].map(u=>({...u,value:typeof u.value=="number"?V(u.value):u.value})));Q(a,{hideHeader:!0,columns:[{header:"Metric",key:"metric",align:"left"},{header:"Value",key:"value",align:"right"}],get rows(){return t(d)},children:(u,D)=>{B();var R=S();y(w=>k(R,w),[()=>V(t(e).size)]),r(u,R)},$$slots:{default:!0}})}};M(rt,a=>{t(e).size!==void 0&&a(ot)})}s(E);var G=p(E),J=o(G),st=o(J);{var nt=a=>{var d=gt();H("click",d,()=>X(t(e))),r(a,d)};M(st,a=>{v.data.readOnly||a(nt)})}s(J),s(G),s(j),y(a=>{ft(N,"href",a),k(et,t(e).name)},[()=>mt(`/servers/${encodeURIComponent(v.data.server)}/databases/${encodeURIComponent(t(e).name)}/collections`)]),r(I,j)}),r(c,n)},$=c=>{var n=zt();r(c,n)};M(i,c=>{v.data.databases&&v.data.databases.length>0?c(z):c($,-1)})}s(l),s(f),r(g,f)},$$slots:{default:!0}});var tt=p(q,2);_t(tt,{get show(){return t(P)},onclose:T,title:"Drop Database",footer:C=>{var f=Dt(),l=U(f),i=p(l,2),z=o(i);{var $=n=>{var x=S("Dropping...");r(n,x)},c=n=>{var x=S("Drop Database");r(n,x)};M(z,n=>{t(m)?n($):n(c,-1)})}s(i),y(()=>{l.disabled=t(m),i.disabled=t(m)}),H("click",l,T),H("click",i,Z),r(C,f)},children:(C,f)=>{var l=St(),i=p(o(l)),z=o(i,!0);s(i),B(),s(l),y(()=>k(z,t(_)?.name)),r(C,l)},$$slots:{footer:!0,default:!0}}),r(W,Y),dt()}vt(["click"]);export{Et as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"
|
|
1
|
+
{"version":"1780007139138"}
|
|
Binary file
|
|
Binary file
|
|
@@ -23,9 +23,9 @@ const index = 0;
|
|
|
23
23
|
let component_cache;
|
|
24
24
|
const component = async () => component_cache ??= (await import('./_layout.svelte-CLPxHDiP.js')).default;
|
|
25
25
|
const server_id = "src/routes/+layout.server.ts";
|
|
26
|
-
const imports = ["_app/immutable/nodes/0.
|
|
26
|
+
const imports = ["_app/immutable/nodes/0.xAEfnyVv.js","_app/immutable/chunks/DjUt71lH.js","_app/immutable/chunks/ogOVEqzG.js","_app/immutable/chunks/wZ9dd4xr.js","_app/immutable/chunks/D899Ie42.js","_app/immutable/chunks/KvnnxfV5.js","_app/immutable/chunks/DIjqwnsi.js","_app/immutable/chunks/Hg2DaShQ.js","_app/immutable/chunks/B-0CauNF.js","_app/immutable/chunks/-jLNyJzC.js","_app/immutable/chunks/D1_vCvEb.js","_app/immutable/chunks/TfiCUZYY.js","_app/immutable/chunks/BaCQ7DA8.js","_app/immutable/chunks/CzuLYUff.js","_app/immutable/chunks/DkIGOVHS.js"];
|
|
27
27
|
const stylesheets = ["_app/immutable/assets/0.DTh4C4pw.css"];
|
|
28
28
|
const fonts = [];
|
|
29
29
|
|
|
30
30
|
export { component, fonts, imports, index, _layout_server_ts as server, server_id, stylesheets };
|
|
31
|
-
//# sourceMappingURL=0-
|
|
31
|
+
//# sourceMappingURL=0-DHpbgO4k.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"0-
|
|
1
|
+
{"version":3,"file":"0-DHpbgO4k.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.server.ts.js","../../../.svelte-kit/adapter-node/nodes/0.js"],"sourcesContent":["import { b as private_env } from \"../../chunks/shared-server.js\";\nimport { g as getOAuthConfig } from \"../../chunks/oauth.js\";\nconst load = async (event) => {\n return {\n readOnly: private_env.MONGOKU_READ_ONLY_MODE === \"true\",\n serverOrigin: event.url.origin,\n oauthEnabled: !!await getOAuthConfig(),\n user: event.locals.user\n };\n};\nexport {\n load\n};\n","import * as server from '../entries/pages/_layout.server.ts.js';\n\nexport const index = 0;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/_layout.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/+layout.server.ts\";\nexport const imports = [\"_app/immutable/nodes/0.xAEfnyVv.js\",\"_app/immutable/chunks/DjUt71lH.js\",\"_app/immutable/chunks/ogOVEqzG.js\",\"_app/immutable/chunks/wZ9dd4xr.js\",\"_app/immutable/chunks/D899Ie42.js\",\"_app/immutable/chunks/KvnnxfV5.js\",\"_app/immutable/chunks/DIjqwnsi.js\",\"_app/immutable/chunks/Hg2DaShQ.js\",\"_app/immutable/chunks/B-0CauNF.js\",\"_app/immutable/chunks/-jLNyJzC.js\",\"_app/immutable/chunks/D1_vCvEb.js\",\"_app/immutable/chunks/TfiCUZYY.js\",\"_app/immutable/chunks/BaCQ7DA8.js\",\"_app/immutable/chunks/CzuLYUff.js\",\"_app/immutable/chunks/DkIGOVHS.js\"];\nexport const stylesheets = [\"_app/immutable/assets/0.DTh4C4pw.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;;;;AAEA,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK;AAC9B,EAAE,OAAO;AACT,IAAI,QAAQ,EAAE,WAAW,CAAC,sBAAsB,KAAK,MAAM;AAC3D,IAAI,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM;AAClC,IAAI,YAAY,EAAE,CAAC,CAAC,MAAM,cAAc,EAAE;AAC1C,IAAI,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;AACvB,GAAG;AACH,CAAC;;;;;;;ACPW,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,8BAAoC,CAAC,EAAE;AAElG,MAAC,SAAS,GAAG;AACb,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACxiB,MAAC,WAAW,GAAG,CAAC,sCAAsC;AACtD,MAAC,KAAK,GAAG;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
const index = 1;
|
|
2
2
|
let component_cache;
|
|
3
3
|
const component = async () => component_cache ??= (await import('./error.svelte-DUZ2SYyF.js')).default;
|
|
4
|
-
const imports = ["_app/immutable/nodes/1.
|
|
4
|
+
const imports = ["_app/immutable/nodes/1.DJI4SFHI.js","_app/immutable/chunks/DjUt71lH.js","_app/immutable/chunks/ogOVEqzG.js","_app/immutable/chunks/wZ9dd4xr.js","_app/immutable/chunks/CzuLYUff.js","_app/immutable/chunks/-jLNyJzC.js","_app/immutable/chunks/D1_vCvEb.js","_app/immutable/chunks/DkIGOVHS.js"];
|
|
5
5
|
const stylesheets = [];
|
|
6
6
|
const fonts = [];
|
|
7
7
|
|
|
8
8
|
export { component, fonts, imports, index, stylesheets };
|
|
9
|
-
//# sourceMappingURL=1-
|
|
9
|
+
//# sourceMappingURL=1-qCdcNckL.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"1-
|
|
1
|
+
{"version":3,"file":"1-qCdcNckL.js","sources":["../../../.svelte-kit/adapter-node/nodes/1.js"],"sourcesContent":["\n\nexport const index = 1;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/fallbacks/error.svelte.js')).default;\nexport const imports = [\"_app/immutable/nodes/1.DJI4SFHI.js\",\"_app/immutable/chunks/DjUt71lH.js\",\"_app/immutable/chunks/ogOVEqzG.js\",\"_app/immutable/chunks/wZ9dd4xr.js\",\"_app/immutable/chunks/CzuLYUff.js\",\"_app/immutable/chunks/-jLNyJzC.js\",\"_app/immutable/chunks/D1_vCvEb.js\",\"_app/immutable/chunks/DkIGOVHS.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"AAEY,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAsC,CAAC,EAAE;AACpG,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAC5S,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
|
|
@@ -34,9 +34,9 @@ const index = 10;
|
|
|
34
34
|
let component_cache;
|
|
35
35
|
const component = async () => component_cache ??= (await import('./_page.svelte-BS4_Zesn.js')).default;
|
|
36
36
|
const server_id = "src/routes/servers/[server]/databases/[database]/collections/+page.server.ts";
|
|
37
|
-
const imports = ["_app/immutable/nodes/10.
|
|
37
|
+
const imports = ["_app/immutable/nodes/10.B9mmyl9C.js","_app/immutable/chunks/DjUt71lH.js","_app/immutable/chunks/ogOVEqzG.js","_app/immutable/chunks/wZ9dd4xr.js","_app/immutable/chunks/B-TH2U-E.js","_app/immutable/chunks/KvnnxfV5.js","_app/immutable/chunks/DIjqwnsi.js","_app/immutable/chunks/BaCQ7DA8.js","_app/immutable/chunks/B-0CauNF.js","_app/immutable/chunks/-jLNyJzC.js","_app/immutable/chunks/D1_vCvEb.js","_app/immutable/chunks/BfsQcfVI.js","_app/immutable/chunks/DkIGOVHS.js","_app/immutable/chunks/D899Ie42.js","_app/immutable/chunks/tqAjkrD5.js","_app/immutable/chunks/BnRtSpxa.js","_app/immutable/chunks/NycVVWZD.js","_app/immutable/chunks/Cl89kjea.js","_app/immutable/chunks/Hg2DaShQ.js"];
|
|
38
38
|
const stylesheets = ["_app/immutable/assets/Modal.CZgFKXkP.css"];
|
|
39
39
|
const fonts = [];
|
|
40
40
|
|
|
41
41
|
export { component, fonts, imports, index, _page_server_ts as server, server_id, stylesheets };
|
|
42
|
-
//# sourceMappingURL=10-
|
|
42
|
+
//# sourceMappingURL=10-DADbl5RU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"10-
|
|
1
|
+
{"version":3,"file":"10-DADbl5RU.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/servers/_server_/databases/_database_/collections/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/10.js"],"sourcesContent":["import { g as getMongo, a as getCollectionJson } from \"../../../../../../../chunks/mongo.js\";\nconst load = async ({ params }) => {\n const mongo = await getMongo();\n const client = mongo.getClient(params.server);\n const db = client.db(params.database);\n const collections = (await db.listCollections().toArray()).sort((a, b) => a.name.localeCompare(b.name));\n const collectionsWithDetails = collections.map((c) => ({\n name: c.name,\n type: c.type,\n details: getCollectionJson(db.collection(c.name), c.type).catch(() => null)\n }));\n return {\n collections: collectionsWithDetails\n };\n};\nexport {\n load\n};\n","import * as server from '../entries/pages/servers/_server_/databases/_database_/collections/_page.server.ts.js';\n\nexport const index = 10;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/servers/_server_/databases/_database_/collections/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/servers/[server]/databases/[database]/collections/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/10.B9mmyl9C.js\",\"_app/immutable/chunks/DjUt71lH.js\",\"_app/immutable/chunks/ogOVEqzG.js\",\"_app/immutable/chunks/wZ9dd4xr.js\",\"_app/immutable/chunks/B-TH2U-E.js\",\"_app/immutable/chunks/KvnnxfV5.js\",\"_app/immutable/chunks/DIjqwnsi.js\",\"_app/immutable/chunks/BaCQ7DA8.js\",\"_app/immutable/chunks/B-0CauNF.js\",\"_app/immutable/chunks/-jLNyJzC.js\",\"_app/immutable/chunks/D1_vCvEb.js\",\"_app/immutable/chunks/BfsQcfVI.js\",\"_app/immutable/chunks/DkIGOVHS.js\",\"_app/immutable/chunks/D899Ie42.js\",\"_app/immutable/chunks/tqAjkrD5.js\",\"_app/immutable/chunks/BnRtSpxa.js\",\"_app/immutable/chunks/NycVVWZD.js\",\"_app/immutable/chunks/Cl89kjea.js\",\"_app/immutable/chunks/Hg2DaShQ.js\"];\nexport const stylesheets = [\"_app/immutable/assets/Modal.CZgFKXkP.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;;;;;;;;;AACA,MAAM,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK;AACnC,EAAE,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE;AAChC,EAAE,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;AAC/C,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;AACvC,EAAE,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACzG,EAAE,MAAM,sBAAsB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;AACzD,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI;AAChB,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI;AAChB,IAAI,OAAO,EAAE,iBAAiB,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI;AAC9E,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,WAAW,EAAE;AACjB,GAAG;AACH,CAAC;;;;;;;ACZW,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAAoF,CAAC,EAAE;AAElJ,MAAC,SAAS,GAAG;AACb,MAAC,OAAO,GAAG,CAAC,qCAAqC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AACzrB,MAAC,WAAW,GAAG,CAAC,0CAA0C;AAC1D,MAAC,KAAK,GAAG;;;;"}
|
|
@@ -232,9 +232,9 @@ let component_cache;
|
|
|
232
232
|
const component = async () => component_cache ??= (await import('./_page.svelte-Cai_1P5J.js')).default;
|
|
233
233
|
const universal_id = "src/routes/servers/[server]/databases/[database]/collections/[collection]/documents/+page.ts";
|
|
234
234
|
const server_id = "src/routes/servers/[server]/databases/[database]/collections/[collection]/documents/+page.server.ts";
|
|
235
|
-
const imports = ["_app/immutable/nodes/11.
|
|
235
|
+
const imports = ["_app/immutable/nodes/11.BJVYZRNF.js","_app/immutable/chunks/DjUt71lH.js","_app/immutable/chunks/ogOVEqzG.js","_app/immutable/chunks/wZ9dd4xr.js","_app/immutable/chunks/B-TH2U-E.js","_app/immutable/chunks/KvnnxfV5.js","_app/immutable/chunks/DIjqwnsi.js","_app/immutable/chunks/BaCQ7DA8.js","_app/immutable/chunks/Hg2DaShQ.js","_app/immutable/chunks/B-0CauNF.js","_app/immutable/chunks/-jLNyJzC.js","_app/immutable/chunks/D1_vCvEb.js","_app/immutable/chunks/CynGo-ch.js","_app/immutable/chunks/BfsQcfVI.js","_app/immutable/chunks/DkIGOVHS.js","_app/immutable/chunks/D899Ie42.js","_app/immutable/chunks/tqAjkrD5.js","_app/immutable/chunks/CWVg1wU_.js","_app/immutable/chunks/Cl89kjea.js","_app/immutable/chunks/BnRtSpxa.js","_app/immutable/chunks/DaDQ7m8i.js","_app/immutable/chunks/CzuLYUff.js"];
|
|
236
236
|
const stylesheets = ["_app/immutable/assets/JsonValue.D87iuwcT.css","_app/immutable/assets/Modal.CZgFKXkP.css","_app/immutable/assets/11.Wc4MTSzM.css"];
|
|
237
237
|
const fonts = [];
|
|
238
238
|
|
|
239
239
|
export { component, fonts, imports, index, _page_server_ts as server, server_id, stylesheets, _page_ts as universal, universal_id };
|
|
240
|
-
//# sourceMappingURL=11-
|
|
240
|
+
//# sourceMappingURL=11-B5XzpQJ2.js.map
|