@lunora/studio 1.0.0-alpha.186 → 1.0.0-alpha.187
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/dist/index.mjs +1 -1
- package/dist/packem_chunks/FileBrowser.mjs +1 -1
- package/dist/packem_chunks/SqlEditorPanel.mjs +1 -1
- package/dist/packem_chunks/TableEditor.mjs +1 -1
- package/dist/packem_shared/{DataBrowser-BUFMFvNX.mjs → DataBrowser-zqK4s0IE.mjs} +2 -2
- package/dist/packem_shared/grid-features-Dm80ngyR.mjs +6 -0
- package/dist/standalone/{chunk-7SBL2ENI.js → chunk-7VNHUUK4.js} +1 -1
- package/dist/standalone/{chunk-PJSZTRRT.js → chunk-7VNOCXWO.js} +1 -1
- package/dist/standalone/chunk-BDO4YYBB.js +6 -0
- package/dist/standalone/{chunk-STS6SGNB.js → chunk-HBWT2BXO.js} +3 -3
- package/dist/standalone/{chunk-J53LW4GK.js → chunk-MKE333RB.js} +1 -1
- package/dist/standalone/{chunk-WJPA7RPR.js → chunk-QOSKGDBH.js} +1 -1
- package/dist/standalone/studio.js +1 -1
- package/package.json +4 -4
- package/dist/packem_shared/grid-features-CE8kcqsK.mjs +0 -6
- package/dist/standalone/chunk-M4POCI2J.js +0 -6
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{StudioApp as r}from"./packem_shared/StudioApp-fYFz6zZQ.mjs";import{CommandPalette as a,openCommandPalette as f}from"./packem_shared/CommandPalette-CSdz9zax.mjs";import{S as m}from"./packem_shared/studio-OqNyRY1N.mjs";import{ConfirmButton as l}from"./packem_shared/ConfirmButton-DU4p72Er.mjs";import{default as s}from"./packem_shared/ConnectionBadge-B_8fcft2.mjs";import{ErrorBoundary as d}from"./packem_shared/ErrorBoundary-BWNF98VF.mjs";import{ShardInput as P}from"./packem_shared/ShardInput-C6mjgAh4.mjs";import{default as A}from"./packem_chunks/AdvisorHealthPanel.mjs";import{DEFAULT_INSIGHT_THRESHOLDS as I,deriveInsights as T}from"./packem_shared/DEFAULT_INSIGHT_THRESHOLDS-D5YMT0gM.mjs";import{InsightsPanel as g}from"./packem_chunks/InsightsPanel.mjs";import{default as F}from"./packem_chunks/SecurityAdvisorPanel.mjs";import{default as h}from"./packem_shared/ApiDocsPanel-BImfQhyJ.mjs";import{default as C}from"./packem_shared/ApiReferencePanel-CigvHhCa.mjs";import{default as O}from"./packem_chunks/ApiTab.mjs";import{default as N}from"./packem_shared/OpenRpcReferencePanel-C6CM791D.mjs";import{DataBrowser as U}from"./packem_shared/DataBrowser-
|
|
1
|
+
import{StudioApp as r}from"./packem_shared/StudioApp-fYFz6zZQ.mjs";import{CommandPalette as a,openCommandPalette as f}from"./packem_shared/CommandPalette-CSdz9zax.mjs";import{S as m}from"./packem_shared/studio-OqNyRY1N.mjs";import{ConfirmButton as l}from"./packem_shared/ConfirmButton-DU4p72Er.mjs";import{default as s}from"./packem_shared/ConnectionBadge-B_8fcft2.mjs";import{ErrorBoundary as d}from"./packem_shared/ErrorBoundary-BWNF98VF.mjs";import{ShardInput as P}from"./packem_shared/ShardInput-C6mjgAh4.mjs";import{default as A}from"./packem_chunks/AdvisorHealthPanel.mjs";import{DEFAULT_INSIGHT_THRESHOLDS as I,deriveInsights as T}from"./packem_shared/DEFAULT_INSIGHT_THRESHOLDS-D5YMT0gM.mjs";import{InsightsPanel as g}from"./packem_chunks/InsightsPanel.mjs";import{default as F}from"./packem_chunks/SecurityAdvisorPanel.mjs";import{default as h}from"./packem_shared/ApiDocsPanel-BImfQhyJ.mjs";import{default as C}from"./packem_shared/ApiReferencePanel-CigvHhCa.mjs";import{default as O}from"./packem_chunks/ApiTab.mjs";import{default as N}from"./packem_shared/OpenRpcReferencePanel-C6CM791D.mjs";import{DataBrowser as U}from"./packem_shared/DataBrowser-zqK4s0IE.mjs";import{DataFilters as b,toFilterClauses as v}from"./packem_shared/DataFilters-Cocu-WWE.mjs";import{GlobalDataBrowser as y}from"./packem_shared/GlobalDataBrowser-BTbqR6Wc.mjs";import{TableEditor as q}from"./packem_chunks/TableEditor.mjs";import{ExportImportPanel as V}from"./packem_chunks/ExportImportPanel.mjs";import{MigrationsPanel as j}from"./packem_shared/MigrationsPanel-BPWzFdxC.mjs";import{PitrPanel as z}from"./packem_chunks/PitrPanel.mjs";import{FunctionRunner as Q}from"./packem_chunks/FunctionRunner.mjs";import{FunctionStatsPanel as Y}from"./packem_chunks/FunctionStatsPanel.mjs";import{DeploymentHealthPanel as $}from"./packem_chunks/DeploymentHealthPanel.mjs";import{H as oe}from"./packem_shared/home-panel-DCUKd8Uk.mjs";import{AuditPanel as te}from"./packem_chunks/AuditPanel.mjs";import{LogsPanel as fe}from"./packem_chunks/LogsPanel.mjs";import{MailPanel as me}from"./packem_chunks/MailPanel.mjs";import{ScheduledJobs as le}from"./packem_shared/ScheduledJobs-B4DPADwk.mjs";import{default as se}from"./packem_chunks/NotificationsPanel.mjs";import{HealthPanel as de}from"./packem_chunks/HealthPanel.mjs";import{aggregateMetrics as Pe,shardsToAggregate as Se}from"./packem_shared/aggregateMetrics-CY05xrYU.mjs";import{MetricsPanel as ce}from"./packem_chunks/MetricsPanel.mjs";import{SchemaViewer as Te}from"./packem_chunks/SchemaViewer.mjs";import{SettingsPanel as ge}from"./packem_chunks/SettingsPanel.mjs";import{SqlEditorPanel as Fe}from"./packem_chunks/SqlEditorPanel.mjs";import{FileBrowser as he}from"./packem_chunks/FileBrowser.mjs";import{DEFAULT_AUTO_REFRESH_MS as Ce,useAutoRefresh as He}from"./packem_shared/DEFAULT_AUTO_REFRESH_MS-DuULO4XM.mjs";import{default as Le}from"./packem_shared/useDebounced-DVeQ5-oW.mjs";import{DEFAULT_LOCALE as Me,createStudioI18n as Ue,studioI18n as Be,useT as be}from"./packem_shared/DEFAULT_LOCALE-A1Yg5ORA.mjs";import{StudioI18nProvider as we}from"./packem_shared/StudioI18nProvider-fVsCSs5L.mjs";import{ADMIN_FUNCTIONS as Ge,ADMIN_FUNCTION_PREFIX as qe}from"./packem_shared/ADMIN_FUNCTIONS-B8yyk5BX.mjs";import{default as Ve}from"./packem_shared/STUDIO_ROOT_CLASS-C6MccdVk.mjs";export{Ge as ADMIN_FUNCTIONS,qe as ADMIN_FUNCTION_PREFIX,A as AdvisorHealthPanel,h as ApiDocsPanel,C as ApiReferencePanel,O as ApiTab,te as AuditPanel,a as CommandPalette,l as ConfirmButton,s as ConnectionBadge,Ce as DEFAULT_AUTO_REFRESH_MS,I as DEFAULT_INSIGHT_THRESHOLDS,Me as DEFAULT_LOCALE,U as DataBrowser,b as DataFilters,$ as DeploymentHealthPanel,d as ErrorBoundary,V as ExportImportPanel,he as FileBrowser,Q as FunctionRunner,Y as FunctionStatsPanel,y as GlobalDataBrowser,de as HealthPanel,oe as HomePanel,g as InsightsPanel,fe as LogsPanel,me as MailPanel,ce as MetricsPanel,j as MigrationsPanel,se as NotificationsPanel,N as OpenRpcReferencePanel,z as PitrPanel,Ve as STUDIO_ROOT_CLASS,le as ScheduledJobs,Te as SchemaViewer,F as SecurityAdvisorPanel,ge as SettingsPanel,P as ShardInput,Fe as SqlEditorPanel,m as Studio,r as StudioApp,we as StudioI18nProvider,q as TableEditor,Pe as aggregateMetrics,Ue as createStudioI18n,T as deriveInsights,f as openCommandPalette,Se as shardsToAggregate,Be as studioI18n,v as toFilterClauses,He as useAutoRefresh,Le as useDebounced,be as useT};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as U}from"react/compiler-runtime";import{useState as L,useEffect as ne,useRef as he,useMemo as ue,useCallback as st}from"react";import{ShardInput as lt}from"../packem_shared/ShardInput-C6mjgAh4.mjs";import{B as oe}from"../packem_shared/button-q0UYSmrn.mjs";import{E as we}from"../packem_shared/empty-state-D7jEML_T.mjs";import{useT as nt}from"../packem_shared/DEFAULT_LOCALE-A1Yg5ORA.mjs";import{S as ot}from"../packem_shared/grid-features-
|
|
1
|
+
import{c as U}from"react/compiler-runtime";import{useState as L,useEffect as ne,useRef as he,useMemo as ue,useCallback as st}from"react";import{ShardInput as lt}from"../packem_shared/ShardInput-C6mjgAh4.mjs";import{B as oe}from"../packem_shared/button-q0UYSmrn.mjs";import{E as we}from"../packem_shared/empty-state-D7jEML_T.mjs";import{useT as nt}from"../packem_shared/DEFAULT_LOCALE-A1Yg5ORA.mjs";import{S as ot}from"../packem_shared/grid-features-Dm80ngyR.mjs";import{C as rt,a as it}from"../packem_shared/card--2hKx4L2.mjs";import{C as Ce}from"../packem_shared/checkbox-CnS9cyCz.mjs";import{c as le,a as at,b as me,d as ct,T as dt,e as ee}from"../packem_shared/table-D0SBiDu-.mjs";import{l as Ne,f as P,b as Q,d as xe,c as Te,g as ft}from"../packem_shared/internal-B6haJbiP.mjs";import{ConfirmButton as ut}from"../packem_shared/ConfirmButton-DU4p72Er.mjs";import{B as ce}from"../packem_shared/badge-r_5B4LHP.mjs";import{jsx as r,jsxs as R,Fragment as ht}from"react/jsx-runtime";import{I as mt}from"../packem_shared/input-CXhxesPC.mjs";import{d as gt}from"../packem_shared/cf-links-CBJ5SywP.mjs";import{useLunora as pt}from"@lunora/react";import{useAutoRefresh as bt}from"../packem_shared/DEFAULT_AUTO_REFRESH_MS-DuULO4XM.mjs";import{ADMIN_FUNCTIONS as _e}from"../packem_shared/ADMIN_FUNCTIONS-B8yyk5BX.mjs";const Ee=(d,e,t)=>{const{onCopy:s,onDelete:n,onDownload:l,onToggleSelect:a}=t,c=()=>{s(d.key)},o=()=>{l(d.key)},f=()=>{n(d.key)},h=()=>{a(d.key)};return{copy:c,download:o,name:d.key.slice(e.length),remove:f,toggle:h}},$e=d=>{const e=U(31),{busy:t,buttonClassName:s,copied:n,objectKey:l,onCopy:a,onDelete:c,onDownload:o,t:f}=d,h=`storage-copy-${l}`;let u;e[0]!==n||e[1]!==f?(u=f(n?"Copied":"Copy URL"),e[0]=n,e[1]=f,e[2]=u):u=e[2];let m;e[3]!==t||e[4]!==s||e[5]!==a||e[6]!==h||e[7]!==u?(m=r(oe,{className:s,"data-testid":h,disabled:t,onClick:a,size:"sm",type:"button",variant:"ghost",children:u}),e[3]=t,e[4]=s,e[5]=a,e[6]=h,e[7]=u,e[8]=m):m=e[8];const k=`storage-download-${l}`;let i;e[9]!==f?(i=f("Download"),e[9]=f,e[10]=i):i=e[10];let v;e[11]!==t||e[12]!==s||e[13]!==o||e[14]!==k||e[15]!==i?(v=r(oe,{className:s,"data-testid":k,disabled:t,onClick:o,size:"sm",type:"button",variant:"ghost",children:i}),e[11]=t,e[12]=s,e[13]=o,e[14]=k,e[15]=i,e[16]=v):v=e[16];let w;e[17]!==f?(w=f("Delete object?"),e[17]=f,e[18]=w):w=e[18];const x=`storage-delete-${l}`;let p;e[19]!==f?(p=f("Delete"),e[19]=f,e[20]=p):p=e[20];let b;e[21]!==t||e[22]!==c||e[23]!==w||e[24]!==x||e[25]!==p?(b=r(ut,{confirmLabel:w,disabled:t,onConfirm:c,testId:x,children:p}),e[21]=t,e[22]=c,e[23]=w,e[24]=x,e[25]=p,e[26]=b):b=e[26];let y;return e[27]!==b||e[28]!==m||e[29]!==v?(y=R(ht,{children:[m,v,b]}),e[27]=b,e[28]=m,e[29]=v,e[30]=y):y=e[30],y},Fe=d=>{const e=U(14),{objectKey:t,references:s,t:n}=d;if(s===void 0)return null;if(s.length===0){const h=`storage-orphan-${t}`;let u;e[0]!==n?(u=n("Orphan"),e[0]=n,e[1]=u):u=e[1];let m;return e[2]!==h||e[3]!==u?(m=r(ce,{"data-testid":h,variant:"warning",children:u}),e[2]=h,e[3]=u,e[4]=m):m=e[4],m}let l;e[5]!==s?(l=s.map(yt).join(`
|
|
2
2
|
`),e[5]=s,e[6]=l):l=e[6];const a=l,c=`storage-refs-${t}`;let o;e[7]!==s.length||e[8]!==n?(o=s.length===1?n("1 record"):n("{count} records",{count:s.length}),e[7]=s.length,e[8]=n,e[9]=o):o=e[9];let f;return e[10]!==a||e[11]!==c||e[12]!==o?(f=r(ce,{"data-testid":c,title:a,variant:"secondary",children:o}),e[10]=a,e[11]=c,e[12]=o,e[13]=f):f=e[13],f},Re=d=>{const e=U(7),{objectKey:t,onToggle:s,selected:n,t:l}=d;let a;e[0]!==l?(a=l("Select row"),e[0]=l,e[1]=a):a=e[1];const c=`storage-select-${t}`;let o;return e[2]!==s||e[3]!==n||e[4]!==a||e[5]!==c?(o=r(Ce,{"aria-label":a,checked:n,"data-testid":c,onCheckedChange:s}),e[2]=s,e[3]=n,e[4]=a,e[5]=c,e[6]=o):o=e[6],o};function yt(d){return`${d.table}·${d.id}`}const xt=d=>{const e=U(10),{colSpan:t,name:s,onEnter:n}=d;let l;e[0]!==s||e[1]!==n?(l=()=>{n(s)},e[0]=s,e[1]=n,e[2]=l):l=e[2];const a=l;let c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=r("svg",{"aria-hidden":"true",className:"size-4 text-muted-foreground",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:r("path",{d:"M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7Z"})}),e[3]=c):c=e[3];let o;e[4]!==a||e[5]!==s?(o=R("button",{className:"inline-flex items-center gap-2 font-mono text-xs outline-none hover:text-foreground focus-visible:text-foreground","data-testid":"fb-folder",onClick:a,type:"button",children:[c,s]}),e[4]=a,e[5]=s,e[6]=o):o=e[6];let f;return e[7]!==t||e[8]!==o?(f=r(me,{children:r(ee,{colSpan:t,children:o})}),e[7]=t,e[8]=o,e[9]=f):f=e[9],f},vt=d=>{const e=U(37),{busy:t,copiedKey:s,handlers:n,object:l,prefix:a,references:c,selected:o,showReferences:f,t:h}=d;let u;e[0]!==n||e[1]!==l||e[2]!==a?(u=Ee(l,a,n),e[0]=n,e[1]=l,e[2]=a,e[3]=u):u=e[3];const{copy:m,download:k,name:i,remove:v,toggle:w}=u;let x;e[4]!==l.key||e[5]!==o||e[6]!==h||e[7]!==w?(x=r(ee,{className:"w-8",children:r(Re,{objectKey:l.key,onToggle:w,selected:o,t:h})}),e[4]=l.key,e[5]=o,e[6]=h,e[7]=w,e[8]=x):x=e[8];let p;e[9]!==i?(p=r(ee,{className:"font-mono text-xs",children:i}),e[9]=i,e[10]=p):p=e[10];let b;e[11]!==l.size?(b=Ne(l.size),e[11]=l.size,e[12]=b):b=e[12];let y;e[13]!==b?(y=r(ee,{className:"tabular-nums text-muted-foreground",children:b}),e[13]=b,e[14]=y):y=e[14];const N=l.httpMetadata?.contentType??"";let S;e[15]!==N?(S=r(ee,{children:N}),e[15]=N,e[16]=S):S=e[16];let C;e[17]!==l.key||e[18]!==c||e[19]!==f||e[20]!==h?(C=f&&r(ee,{children:r(Fe,{objectKey:l.key,references:c,t:h})}),e[17]=l.key,e[18]=c,e[19]=f,e[20]=h,e[21]=C):C=e[21];const _=s===l.key;let T;e[22]!==t||e[23]!==m||e[24]!==k||e[25]!==l.key||e[26]!==v||e[27]!==h||e[28]!==_?(T=r(ee,{className:"text-right",children:r("span",{className:"inline-flex items-center gap-1",children:r($e,{busy:t,copied:_,objectKey:l.key,onCopy:m,onDelete:v,onDownload:k,t:h})})}),e[22]=t,e[23]=m,e[24]=k,e[25]=l.key,e[26]=v,e[27]=h,e[28]=_,e[29]=T):T=e[29];let F;return e[30]!==T||e[31]!==x||e[32]!==p||e[33]!==y||e[34]!==S||e[35]!==C?(F=R(me,{"data-testid":"fb-row",children:[x,p,y,S,C,T]}),e[30]=T,e[31]=x,e[32]=p,e[33]=y,e[34]=S,e[35]=C,e[36]=F):F=e[36],F},kt=d=>{const e=U(65),{allSelected:t,busy:s,copiedKey:n,files:l,folders:a,handlers:c,onEnterFolder:o,prefix:f,references:h,selected:u,showReferences:m,someSelected:k,t:i,toggleSelectAll:v}=d;let w;e[0]!==i?(w=i("Select all rows"),e[0]=i,e[1]=w):w=e[1];let x;e[2]!==t||e[3]!==k||e[4]!==w||e[5]!==v?(x=r(le,{className:"w-8",children:r(Ce,{"aria-label":w,checked:t,"data-testid":"storage-select-all",indeterminate:k,onCheckedChange:v})}),e[2]=t,e[3]=k,e[4]=w,e[5]=v,e[6]=x):x=e[6];let p;e[7]!==i?(p=i("key"),e[7]=i,e[8]=p):p=e[8];let b;e[9]!==p?(b=r(le,{children:p}),e[9]=p,e[10]=b):b=e[10];let y;e[11]!==i?(y=i("size"),e[11]=i,e[12]=y):y=e[12];let N;e[13]!==y?(N=r(le,{children:y}),e[13]=y,e[14]=N):N=e[14];let S;e[15]!==i?(S=i("content-type"),e[15]=i,e[16]=S):S=e[16];let C;e[17]!==S?(C=r(le,{children:S}),e[17]=S,e[18]=C):C=e[18];let _;e[19]!==m||e[20]!==i?(_=m&&r(le,{children:i("used by")}),e[19]=m,e[20]=i,e[21]=_):_=e[21];let T;e[22]!==i?(T=i("Actions"),e[22]=i,e[23]=T):T=e[23];let F;e[24]!==T?(F=r(le,{"aria-label":T}),e[24]=T,e[25]=F):F=e[25];let E;e[26]!==F||e[27]!==x||e[28]!==b||e[29]!==N||e[30]!==C||e[31]!==_?(E=r(at,{children:R(me,{children:[x,b,N,C,_,F]})}),e[26]=F,e[27]=x,e[28]=b,e[29]=N,e[30]=C,e[31]=_,e[32]=E):E=e[32];let z;if(e[33]!==a||e[34]!==o||e[35]!==m){let D;e[37]!==o||e[38]!==m?(D=K=>r(xt,{colSpan:m?6:5,name:K,onEnter:o},K),e[37]=o,e[38]=m,e[39]=D):D=e[39],z=a.map(D),e[33]=a,e[34]=o,e[35]=m,e[36]=z}else z=e[36];let B;if(e[40]!==s||e[41]!==n||e[42]!==l||e[43]!==c||e[44]!==f||e[45]!==h||e[46]!==u||e[47]!==m||e[48]!==i){let D;e[50]!==s||e[51]!==n||e[52]!==c||e[53]!==f||e[54]!==h||e[55]!==u||e[56]!==m||e[57]!==i?(D=K=>r(vt,{busy:s,copiedKey:n,handlers:c,object:K,prefix:f,references:h[K.key],selected:u.has(K.key),showReferences:m,t:i},K.key),e[50]=s,e[51]=n,e[52]=c,e[53]=f,e[54]=h,e[55]=u,e[56]=m,e[57]=i,e[58]=D):D=e[58],B=l.map(D),e[40]=s,e[41]=n,e[42]=l,e[43]=c,e[44]=f,e[45]=h,e[46]=u,e[47]=m,e[48]=i,e[49]=B}else B=e[49];let j;e[59]!==z||e[60]!==B?(j=R(ct,{children:[z,B]}),e[59]=z,e[60]=B,e[61]=j):j=e[61];let I;return e[62]!==E||e[63]!==j?(I=r(rt,{className:"overflow-hidden py-0",children:r(it,{className:"px-0",children:R(dt,{"data-testid":"fb-table",children:[E,j]})})}),e[62]=E,e[63]=j,e[64]=I):I=e[64],I},St=[{label:"15m",seconds:900},{label:"1h",seconds:3600},{label:"24h",seconds:86400},{label:"7d",seconds:604800}],wt=3600,ve=(d,e)=>{if(e==="size")return d.size;if(e==="type")return d.httpMetadata?.contentType??"";if(e==="date"){if(d.uploaded===void 0)return 0;const t=new Date(d.uploaded).getTime();return Number.isNaN(t)?0:t}return e.startsWith("tag:")?d.customMetadata?.[e.slice(4)]??"":d.key},Ct=(d,e,t)=>{const s=t==="desc"?-1:1;return d.toSorted((n,l)=>{const a=ve(n,e),c=ve(l,e);return(typeof a=="number"&&typeof c=="number"?a-c:String(a).localeCompare(String(c)))*s})},Nt=(d,e)=>{const t=new Set,s=[];for(const n of d){const l=n.key.slice(e.length),a=l.indexOf("/");a===-1?s.push(n):t.add(l.slice(0,a+1))}return{files:s,folders:[...t].toSorted((n,l)=>n.localeCompare(l))}},Tt=d=>{const e=U(59),{bucket:t,buckets:s,busy:n,draftPrefix:l,expiry:a,fileInputRef:c,onBucketChange:o,onExpiryChange:f,onFileChange:h,onList:u,onPrefixChange:m,onUploadClick:k,t:i}=d;let v;e[0]!==m?(v=G=>{m(G.target.value)},e[0]=m,e[1]=v):v=e[1];const w=v;let x;e[2]!==o?(x=G=>{o(G.target.value)},e[2]=o,e[3]=x):x=e[3];const p=x;let b;e[4]!==f?(b=G=>{f(Number.parseInt(G.target.value,10))},e[4]=f,e[5]=b):b=e[5];const y=b;let N;e[6]!==t||e[7]!==s||e[8]!==p||e[9]!==i?(N=s.length>0&&r("select",{"aria-label":i("Bucket"),className:"h-8 rounded-md border border-border bg-background px-1 outline-none focus-visible:border-ring","data-testid":"fb-bucket",onChange:p,value:t,children:s.map(Et)}),e[6]=t,e[7]=s,e[8]=p,e[9]=i,e[10]=N):N=e[10];let S;e[11]!==i?(S=i("Key prefix"),e[11]=i,e[12]=S):S=e[12];let C;e[13]!==i?(C=i("key prefix (optional)"),e[13]=i,e[14]=C):C=e[14];let _;e[15]!==l||e[16]!==w||e[17]!==S||e[18]!==C?(_=r(mt,{"aria-label":S,className:"h-8 w-64 max-w-full","data-testid":"fb-prefix-input",onChange:w,placeholder:C,value:l}),e[15]=l,e[16]=w,e[17]=S,e[18]=C,e[19]=_):_=e[19];let T;e[20]!==i?(T=i("List"),e[20]=i,e[21]=T):T=e[21];let F;e[22]!==n||e[23]!==u||e[24]!==T?(F=r(oe,{"data-testid":"fb-list",disabled:n,onClick:u,size:"sm",type:"button",children:T}),e[22]=n,e[23]=u,e[24]=T,e[25]=F):F=e[25];let E;e[26]!==n||e[27]!==i?(E=i(n?"Uploading…":"Upload"),e[26]=n,e[27]=i,e[28]=E):E=e[28];let z;e[29]!==n||e[30]!==k||e[31]!==E?(z=r(oe,{"data-testid":"storage-upload",disabled:n,onClick:k,size:"sm",type:"button",variant:"outline",children:E}),e[29]=n,e[30]=k,e[31]=E,e[32]=z):z=e[32];let B;e[33]!==c||e[34]!==h?(B=r("input",{className:"hidden","data-testid":"storage-file-input",onChange:h,ref:c,type:"file"}),e[33]=c,e[34]=h,e[35]=B):B=e[35];let j;e[36]!==i?(j=i("Link expiry"),e[36]=i,e[37]=j):j=e[37];let I;e[38]!==i?(I=St.map(G=>r("option",{value:G.seconds,children:i(G.label)},G.seconds)),e[38]=i,e[39]=I):I=e[39];let D;e[40]!==a||e[41]!==y||e[42]!==I?(D=r("select",{className:"h-8 rounded-md border border-border bg-background px-1 tabular-nums outline-none focus-visible:border-ring","data-testid":"storage-expiry",id:"storage-expiry",onChange:y,value:a,children:I}),e[40]=a,e[41]=y,e[42]=I,e[43]=D):D=e[43];let K;e[44]!==j||e[45]!==D?(K=R("label",{className:"ml-auto flex items-center gap-1.5 text-xs text-muted-foreground",htmlFor:"storage-expiry",children:[j,D]}),e[44]=j,e[45]=D,e[46]=K):K=e[46];let A;e[47]!==i?(A=i("Open in Cloudflare"),e[47]=i,e[48]=A):A=e[48];let M;e[49]!==A?(M=r("a",{className:"text-sm text-primary underline-offset-4 hover:underline","data-testid":"fb-cf-link",href:gt,rel:"noreferrer",target:"_blank",children:A}),e[49]=A,e[50]=M):M=e[50];let H;return e[51]!==z||e[52]!==B||e[53]!==K||e[54]!==M||e[55]!==N||e[56]!==_||e[57]!==F?(H=R("div",{className:"flex flex-wrap items-center gap-2",children:[N,_,F,z,B,K,M]}),e[51]=z,e[52]=B,e[53]=K,e[54]=M,e[55]=N,e[56]=_,e[57]=F,e[58]=H):H=e[58],H},_t=d=>{const e=U(66),{onSortKeyChange:t,onThumbSizeChange:s,showGrid:n,showList:l,sortDirection:a,sortKey:c,t:o,tagKeys:f,thumbSize:h,toggleSortDirection:u,view:m}=d;let k;e[0]!==t?(k=V=>{t(V.target.value)},e[0]=t,e[1]=k):k=e[1];const i=k;let v;e[2]!==s?(v=V=>{s(Number.parseInt(V.target.value,10))},e[2]=s,e[3]=v):v=e[3];const w=v,x=m==="list";let p;e[4]!==o?(p=o("List"),e[4]=o,e[5]=p):p=e[5];let b;e[6]!==l||e[7]!==x||e[8]!==p?(b=r("button",{"aria-pressed":x,className:"px-2 py-1 outline-none transition-colors hover:bg-accent aria-pressed:bg-accent aria-pressed:text-accent-foreground","data-testid":"fb-view-list",onClick:l,type:"button",children:p}),e[6]=l,e[7]=x,e[8]=p,e[9]=b):b=e[9];const y=m==="grid";let N;e[10]!==o?(N=o("Grid"),e[10]=o,e[11]=N):N=e[11];let S;e[12]!==n||e[13]!==y||e[14]!==N?(S=r("button",{"aria-pressed":y,className:"border-s border-border px-2 py-1 outline-none transition-colors hover:bg-accent aria-pressed:bg-accent aria-pressed:text-accent-foreground","data-testid":"fb-view-grid",onClick:n,type:"button",children:N}),e[12]=n,e[13]=y,e[14]=N,e[15]=S):S=e[15];let C;e[16]!==b||e[17]!==S?(C=R("div",{className:"inline-flex overflow-hidden rounded-md border border-border",children:[b,S]}),e[16]=b,e[17]=S,e[18]=C):C=e[18];let _;e[19]!==o?(_=o("Sort"),e[19]=o,e[20]=_):_=e[20];let T;e[21]!==o?(T=o("Name"),e[21]=o,e[22]=T):T=e[22];let F;e[23]!==T?(F=r("option",{value:"name",children:T}),e[23]=T,e[24]=F):F=e[24];let E;e[25]!==o?(E=o("size"),e[25]=o,e[26]=E):E=e[26];let z;e[27]!==E?(z=r("option",{value:"size",children:E}),e[27]=E,e[28]=z):z=e[28];let B;e[29]!==o?(B=o("Type"),e[29]=o,e[30]=B):B=e[30];let j;e[31]!==B?(j=r("option",{value:"type",children:B}),e[31]=B,e[32]=j):j=e[32];let I;e[33]!==o?(I=o("Modified"),e[33]=o,e[34]=I):I=e[34];let D;e[35]!==I?(D=r("option",{value:"date",children:I}),e[35]=I,e[36]=D):D=e[36];let K;e[37]!==f?(K=f.map($t),e[37]=f,e[38]=K):K=e[38];let A;e[39]!==i||e[40]!==c||e[41]!==F||e[42]!==z||e[43]!==j||e[44]!==D||e[45]!==K?(A=R("select",{className:"h-8 rounded-md border border-border bg-background px-1 outline-none focus-visible:border-ring","data-testid":"fb-sort",id:"fb-sort",onChange:i,value:c,children:[F,z,j,D,K]}),e[39]=i,e[40]=c,e[41]=F,e[42]=z,e[43]=j,e[44]=D,e[45]=K,e[46]=A):A=e[46];let M;e[47]!==_||e[48]!==A?(M=R("label",{className:"flex items-center gap-1.5 text-muted-foreground",htmlFor:"fb-sort",children:[_,A]}),e[47]=_,e[48]=A,e[49]=M):M=e[49];let H;e[50]!==o?(H=o("Toggle sort direction"),e[50]=o,e[51]=H):H=e[51];const G=a==="asc"?"↑":"↓";let q;e[52]!==H||e[53]!==G||e[54]!==u?(q=r("button",{"aria-label":H,className:"flex size-8 items-center justify-center rounded-md border border-border tabular-nums outline-none transition-colors hover:bg-accent focus-visible:bg-accent","data-testid":"fb-sort-dir",onClick:u,type:"button",children:G}),e[52]=H,e[53]=G,e[54]=u,e[55]=q):q=e[55];let Y;e[56]!==w||e[57]!==o||e[58]!==h||e[59]!==m?(Y=m==="grid"&&R("label",{className:"ml-auto flex items-center gap-1.5 text-muted-foreground",htmlFor:"fb-thumb-size",children:[o("Thumbnail size"),r("input",{className:"accent-primary","data-testid":"fb-thumb-size",id:"fb-thumb-size",max:240,min:80,onChange:w,step:8,type:"range",value:h})]}),e[56]=w,e[57]=o,e[58]=h,e[59]=m,e[60]=Y):Y=e[60];let te;return e[61]!==M||e[62]!==q||e[63]!==Y||e[64]!==C?(te=R("div",{className:"flex flex-wrap items-center gap-2 text-xs","data-testid":"fb-controls",children:[C,M,q,Y]}),e[61]=M,e[62]=q,e[63]=Y,e[64]=C,e[65]=te):te=e[65],te};function Et(d){return r("option",{value:d,children:d},d)}function $t(d){return r("option",{value:`tag:${d}`,children:d},d)}const Ft=/\.(?:avif|bmp|gif|ico|jpe?g|png|svg|webp)$/iu,Rt=d=>(d.httpMetadata?.contentType??"").startsWith("image/")||Ft.test(d.key),zt=()=>{const d=U(1);let e;return d[0]===Symbol.for("react.memo_cache_sentinel")?(e=r("svg",{"aria-hidden":"true",className:"size-8 text-muted-foreground/60",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.4,viewBox:"0 0 24 24",children:r("path",{d:"M7 3h7l5 5v13a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Zm7 0v5h5"})}),d[0]=e):e=d[0],e},Dt=d=>{const e=U(13),{object:t,resolveUrl:s}=d,[n,l]=L(null),[a,c]=L(!1);let o;e[0]!==t?(o=Rt(t),e[0]=t,e[1]=o):o=e[1];const f=o;let h,u;e[2]!==f||e[3]!==t.key||e[4]!==s?(h=()=>{if(!f)return;const v={cancelled:!1};return P((async()=>{try{const w=await s(t.key);v.cancelled||l(w)}catch{v.cancelled||c(!0)}})()),()=>{v.cancelled=!0}},u=[f,t.key,s],e[2]=f,e[3]=t.key,e[4]=s,e[5]=h,e[6]=u):(h=e[5],u=e[6]),ne(h,u);let m;e[7]===Symbol.for("react.memo_cache_sentinel")?(m=()=>{c(!0)},e[7]=m):m=e[7];const k=m;let i;return e[8]!==a||e[9]!==f||e[10]!==t.key||e[11]!==n?(i=r("div",{className:"flex aspect-square w-full items-center justify-center overflow-hidden rounded-md border border-border bg-muted/30",children:f&&n!==null&&!a?r("img",{alt:t.key,className:"size-full object-cover",loading:"lazy",onError:k,src:n}):r(zt,{})}),e[8]=a,e[9]=f,e[10]=t.key,e[11]=n,e[12]=i):i=e[12],i},jt=d=>{const e=U(42),{busy:t,copiedKey:s,handlers:n,object:l,prefix:a,references:c,resolveUrl:o,selected:f,showReferences:h,t:u}=d;let m;e[0]!==n||e[1]!==l||e[2]!==a?(m=Ee(l,a,n),e[0]=n,e[1]=l,e[2]=a,e[3]=m):m=e[3];const{copy:k,download:i,name:v,remove:w,toggle:x}=m;let p;e[4]!==l||e[5]!==o?(p=r(Dt,{object:l,resolveUrl:o}),e[4]=l,e[5]=o,e[6]=p):p=e[6];let b;e[7]!==l.key||e[8]!==f||e[9]!==u||e[10]!==x?(b=r("span",{className:"absolute left-1.5 top-1.5 rounded bg-background/80 p-0.5",children:r(Re,{objectKey:l.key,onToggle:x,selected:f,t:u})}),e[7]=l.key,e[8]=f,e[9]=u,e[10]=x,e[11]=b):b=e[11];let y;e[12]!==p||e[13]!==b?(y=R("div",{className:"relative",children:[p,b]}),e[12]=p,e[13]=b,e[14]=y):y=e[14];let N;e[15]!==v?(N=r("p",{className:"truncate font-mono text-xs",title:v,children:v}),e[15]=v,e[16]=N):N=e[16];let S;e[17]!==l.size?(S=Ne(l.size),e[17]=l.size,e[18]=S):S=e[18];let C;e[19]!==S?(C=r("p",{className:"text-[11px] tabular-nums text-muted-foreground",children:S}),e[19]=S,e[20]=C):C=e[20];let _;e[21]!==l.key||e[22]!==c||e[23]!==h||e[24]!==u?(_=h&&r("div",{className:"mt-1",children:r(Fe,{objectKey:l.key,references:c,t:u})}),e[21]=l.key,e[22]=c,e[23]=h,e[24]=u,e[25]=_):_=e[25];let T;e[26]!==N||e[27]!==C||e[28]!==_?(T=R("div",{className:"min-w-0",children:[N,C,_]}),e[26]=N,e[27]=C,e[28]=_,e[29]=T):T=e[29];const F=s===l.key;let E;e[30]!==t||e[31]!==k||e[32]!==i||e[33]!==l.key||e[34]!==w||e[35]!==u||e[36]!==F?(E=r("div",{className:"flex items-center gap-1",children:r($e,{busy:t,buttonClassName:"h-7 px-2 text-xs",copied:F,objectKey:l.key,onCopy:k,onDelete:w,onDownload:i,t:u})}),e[30]=t,e[31]=k,e[32]=i,e[33]=l.key,e[34]=w,e[35]=u,e[36]=F,e[37]=E):E=e[37];let z;return e[38]!==E||e[39]!==y||e[40]!==T?(z=R("div",{className:"flex flex-col gap-1.5","data-testid":"fb-tile",children:[y,T,E]}),e[38]=E,e[39]=y,e[40]=T,e[41]=z):z=e[41],z},Kt=d=>{const e=U(9),{name:t,onEnter:s}=d;let n;e[0]!==t||e[1]!==s?(n=()=>{s(t)},e[0]=t,e[1]=s,e[2]=n):n=e[2];const l=n;let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=r("span",{className:"flex aspect-square w-full items-center justify-center rounded-md border border-border bg-muted/30 transition-colors hover:bg-accent",children:r("svg",{"aria-hidden":"true",className:"size-10 text-muted-foreground",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.4,viewBox:"0 0 24 24",children:r("path",{d:"M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7Z"})})}),e[3]=a):a=e[3];let c;e[4]!==t?(c=r("span",{className:"truncate font-mono text-xs",title:t,children:t}),e[4]=t,e[5]=c):c=e[5];let o;return e[6]!==l||e[7]!==c?(o=R("button",{className:"flex flex-col gap-1.5 text-left outline-none","data-testid":"fb-folder",onClick:l,type:"button",children:[a,c]}),e[6]=l,e[7]=c,e[8]=o):o=e[8],o},Lt=d=>{const e=U(34),{busy:t,copiedKey:s,files:n,folders:l,handlers:a,onEnterFolder:c,prefix:o,references:f,resolveUrl:h,selected:u,showReferences:m,size:k,t:i}=d;let v;e[0]!==k?(v=k.toString(),e[0]=k,e[1]=v):v=e[1];const w=`repeat(auto-fill, minmax(${v}px, 1fr))`;let x;e[2]!==w?(x={gridTemplateColumns:w},e[2]=w,e[3]=x):x=e[3];const p=x;let b;if(e[4]!==l||e[5]!==c){let S;e[7]!==c?(S=C=>r(Kt,{name:C,onEnter:c},C),e[7]=c,e[8]=S):S=e[8],b=l.map(S),e[4]=l,e[5]=c,e[6]=b}else b=e[6];let y;if(e[9]!==t||e[10]!==s||e[11]!==n||e[12]!==a||e[13]!==o||e[14]!==f||e[15]!==h||e[16]!==u||e[17]!==m||e[18]!==i){let S;e[20]!==t||e[21]!==s||e[22]!==a||e[23]!==o||e[24]!==f||e[25]!==h||e[26]!==u||e[27]!==m||e[28]!==i?(S=C=>r(jt,{busy:t,copiedKey:s,handlers:a,object:C,prefix:o,references:f[C.key],resolveUrl:h,selected:u.has(C.key),showReferences:m,t:i},C.key),e[20]=t,e[21]=s,e[22]=a,e[23]=o,e[24]=f,e[25]=h,e[26]=u,e[27]=m,e[28]=i,e[29]=S):S=e[29],y=n.map(S),e[9]=t,e[10]=s,e[11]=n,e[12]=a,e[13]=o,e[14]=f,e[15]=h,e[16]=u,e[17]=m,e[18]=i,e[19]=y}else y=e[19];let N;return e[30]!==p||e[31]!==b||e[32]!==y?(N=R("div",{className:"grid gap-4","data-testid":"fb-gallery",style:p,children:[b,y]}),e[30]=p,e[31]=b,e[32]=y,e[33]=N):N=e[33],N},Bt=d=>{const e=U(23),{reference:t,t:s}=d,n=`fb-dangling-${t.table}-${t.id}-${t.column}`,l=`${t.table}·${t.id}`;let a;e[0]!==l?(a=r(ce,{variant:"secondary",children:l}),e[0]=l,e[1]=a):a=e[1];let c;e[2]!==t.column?(c=r("span",{className:"text-muted-foreground",children:t.column}),e[2]=t.column,e[3]=c):c=e[3];let o;e[4]!==s?(o=s("→"),e[4]=s,e[5]=o):o=e[5];let f;e[6]!==o?(f=r("span",{className:"text-muted-foreground/60",children:o}),e[6]=o,e[7]=f):f=e[7];let h;e[8]!==t.key?(h=r("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-foreground",children:t.key}),e[8]=t.key,e[9]=h):h=e[9];let u;e[10]!==a||e[11]!==c||e[12]!==f||e[13]!==h?(u=R("span",{className:"flex flex-wrap items-center gap-1.5",children:[a,c,f,h]}),e[10]=a,e[11]=c,e[12]=f,e[13]=h,e[14]=u):u=e[14];let m;e[15]!==s?(m=s("Missing object"),e[15]=s,e[16]=m):m=e[16];let k;e[17]!==m?(k=r(ce,{className:"border-destructive/40 text-destructive",variant:"outline",children:m}),e[17]=m,e[18]=k):k=e[18];let i;return e[19]!==n||e[20]!==k||e[21]!==u?(i=R("li",{className:"flex flex-wrap items-center justify-between gap-2 rounded-md border border-border/60 px-3 py-2 text-xs","data-testid":n,children:[u,k]}),e[19]=n,e[20]=k,e[21]=u,e[22]=i):i=e[22],i},It=d=>{const e=U(42),{busy:t,onCheck:s,references:n,t:l,truncated:a}=d;let c;e[0]!==l?(c=l("Integrity"),e[0]=l,e[1]=c):c=e[1];let o;e[2]!==c?(o=r("span",{className:"font-mono text-[11px] uppercase tracking-wide text-muted-foreground",children:c}),e[2]=c,e[3]=o):o=e[3];let f;e[4]!==l?(f=l("Orphaned objects"),e[4]=l,e[5]=f):f=e[5];let h;e[6]!==f?(h=r("span",{className:"text-sm font-medium text-foreground",children:f}),e[6]=f,e[7]=h):h=e[7];let u;e[8]!==l?(u=l("Find records whose file reference points at an object the bucket no longer has."),e[8]=l,e[9]=u):u=e[9];let m;e[10]!==u?(m=r("span",{className:"text-xs text-muted-foreground",children:u}),e[10]=u,e[11]=m):m=e[11];let k;e[12]!==o||e[13]!==h||e[14]!==m?(k=R("div",{className:"flex flex-col gap-1",children:[o,h,m]}),e[12]=o,e[13]=h,e[14]=m,e[15]=k):k=e[15];let i;e[16]!==t||e[17]!==l?(i=l(t?"Checking…":"Check for orphans"),e[16]=t,e[17]=l,e[18]=i):i=e[18];let v;e[19]!==t||e[20]!==s||e[21]!==i?(v=r(oe,{"data-testid":"fb-orphans-check",disabled:t,onClick:s,size:"sm",type:"button",variant:"outline",children:i}),e[19]=t,e[20]=s,e[21]=i,e[22]=v):v=e[22];let w;e[23]!==k||e[24]!==v?(w=R("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[k,v]}),e[23]=k,e[24]=v,e[25]=w):w=e[25];let x;e[26]!==n||e[27]!==l||e[28]!==a?(x=a&&r("p",{className:"text-xs text-warning","data-testid":"fb-orphans-truncated",children:n===void 0||n.length===0?l("The bucket is larger than the scan's key limit, so dangling references could not be checked."):l("Showing the first {count} dangling references — the scan was truncated.",{count:n.length})}),e[26]=n,e[27]=l,e[28]=a,e[29]=x):x=e[29];let p;e[30]!==n?.length||e[31]!==l||e[32]!==a?(p=n?.length===0&&!a&&r(we,{description:l("Every record's file reference points at an object that exists in the bucket."),testId:"fb-orphans-empty",title:l("No dangling references.")}),e[30]=n?.length,e[31]=l,e[32]=a,e[33]=p):p=e[33];let b;e[34]!==n||e[35]!==l?(b=n!==void 0&&n.length>0&&r("ul",{className:"flex flex-col gap-1.5","data-testid":"fb-orphans-list",children:n.map(N=>r(Bt,{reference:N,t:l},`${N.table}·${N.id}·${N.column}`))}),e[34]=n,e[35]=l,e[36]=b):b=e[36];let y;return e[37]!==w||e[38]!==x||e[39]!==p||e[40]!==b?(y=R("section",{className:"flex flex-col gap-2 rounded-lg border border-border/60 p-3","data-testid":"fb-orphans",children:[w,x,p,b]}),e[37]=w,e[38]=x,e[39]=p,e[40]=b,e[41]=y):y=e[41],y},Ot=function(d,e){const t=U(18);let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=new Set,t[0]=s):s=t[0];const[n,l]=L(s);let a;t[1]===Symbol.for("react.memo_cache_sentinel")?(a=x=>{l(p=>{const b=new Set(p);return b.has(x)?b.delete(x):b.add(x),b})},t[1]=a):a=t[1];const c=a;let o;t[2]===Symbol.for("react.memo_cache_sentinel")?(o=()=>{l(new Set)},t[2]=o):o=t[2];const f=o;let h,u,m;if(t[3]!==d||t[4]!==e||t[5]!==n){let x;t[9]!==e?(x=p=>e(p),t[9]=e,t[10]=x):x=t[10],u=d.map(x),h=u.length>0&&u.every(p=>n.has(p)),m=!h&&u.some(p=>n.has(p)),t[3]=d,t[4]=e,t[5]=n,t[6]=h,t[7]=u,t[8]=m}else h=t[6],u=t[7],m=t[8];const k=m;let i;t[11]!==u?(i=()=>{l(x=>u.every(p=>x.has(p))?new Set:new Set(u))},t[11]=u,t[12]=i):i=t[12];const v=i;let w;return t[13]!==h||t[14]!==n||t[15]!==k||t[16]!==v?(w={allSelected:h,clear:f,selected:n,someSelected:k,toggle:c,toggleAll:v},t[13]=h,t[14]=n,t[15]=k,t[16]=v,t[17]=w):w=t[17],w},At=Te(_e.storageReferences),Ut=Te(_e.storageOrphans),ke=1e4,Mt=1e3,Gt=async d=>{const e=[];let t,s=!0,n=!1;for(;s&&e.length<ke;){const l=await d.list({cursor:t,limit:Mt}),a=ke-e.length;for(const c of l.objects.slice(0,a))e.push(c.key);n||=l.objects.length>a,t=l.cursor,s=t!==void 0}return{liveKeys:e,truncated:n||s}},Ht=3600,Pt=(d,e)=>{if(!("document"in globalThis))return;const t=globalThis.document.createElement("a");t.href=d,t.download=e,t.rel="noopener",globalThis.document.body.append(t),t.click(),t.remove()},qt=d=>d.key,Vt=({initialPrefix:d,pageSize:e})=>{const t=pt(),[s,n]=L(d??""),[l,a]=L(d??""),[c,o]=L(wt),[f,h]=L("list"),[u,m]=L(128),[k,i]=L("name"),[v,w]=L("asc"),[x,p]=L(void 0),[b,y]=L(void 0),[N,S]=L(!1),[C,_]=L(void 0),[T,F]=L(void 0),[E,z]=L(""),[B,j]=L({}),[I,D]=L(!1),[K,A]=L(void 0),[M,H]=L(!1),[G,q]=L(!1),[Y,te]=L([]),[V,ge]=L(""),se=he(0),J=he(0);ne(()=>{const g={cancelled:!1};return P((async()=>{try{const $=await t.listStorageBuckets();if(!g.cancelled){te($);const[O]=$;O!==void 0&&ge(X=>X===""?O:X)}}catch{}})()),()=>{g.cancelled=!0}},[t]);const W=ue(()=>({list:g=>t.listStorageObjects({...g,bucket:V}),remove:g=>t.deleteStorageObject(g,{bucket:V}),signedUrl:(g,$)=>t.signedStorageUrl(g,{...$,bucket:V}),upload:g=>t.uploadStorageObject({...g,bucket:V})}),[V,t]),Z=st(async(g,$,O)=>{se.current+=1;const X=se.current;y(void 0),S(!0);try{const ie=await W.list({cursor:$,limit:e,prefix:g});if(X!==se.current)return;p(ye=>O&&ye!==void 0?[...ye,...ie.objects]:ie.objects),F(ie.cursor)}catch(ie){if(X!==se.current)return;O||p(void 0),y(Q(ie))}finally{X===se.current&&S(!1)}},[e,W]);ne(()=>{P(Z(d??"",void 0,!1))},[Z,d]);const ze=(x?.length??0)<=e;bt(()=>{P(Z(s,void 0,!1))},ze);const{files:de,folders:De}=Nt(x??[],s),je=ue(()=>{const g=new Set;for(const $ of de)for(const O of Object.keys($.customMetadata??{}))g.add(O);return[...g].toSorted(($,O)=>$.localeCompare(O))},[de]),ae=Ct(de,k,v),fe=ue(()=>[...new Set(ae.map(g=>g.key))].toSorted((g,$)=>g.localeCompare($)).join(`
|
|
3
3
|
`),[ae]);ne(()=>{const g=fe===""?[]:fe.split(`
|
|
4
4
|
`);if(g.length===0){j({});return}const $={current:!0};return P((async()=>{try{const O=await t.query(At,{keys:g},xe(E));$.current&&(j(O.references??{}),D(Object.keys(O.storageColumns??{}).length>0))}catch{$.current&&(j({}),D(!1))}})()),()=>{$.current=!1}},[t,fe,E]);const{allSelected:Ke,clear:re,selected:pe,someSelected:Le,toggle:Be,toggleAll:Ie}=Ot(ae,qt),Oe=()=>{n(l),re(),P(Z(l,void 0,!1))},Ae=()=>{P(Z(s,T,!0))},be=g=>{n(g),a(g),re(),P(Z(g,void 0,!1))},Ue=g=>{be(`${s}${g}`)},Me=g=>W.signedUrl(g,{expiresInSeconds:Ht}),Ge=()=>{h("list")},He=()=>{h("grid")},Pe=g=>{i(g)},qe=()=>{w(g=>g==="asc"?"desc":"asc")},Ve=g=>{m(g)},We=g=>{o(g)},Ze=()=>{y(void 0),S(!0),P((async()=>{try{for(const g of pe)await W.remove(g);await Z(s,void 0,!1),re()}catch(g){y(Q(g))}S(!1)})())},Xe=g=>{y(void 0),P((async()=>{try{const $=await W.signedUrl(g,{expiresInSeconds:c});ft($)&&_(g)}catch($){y(Q($))}})())},Ye=g=>{y(void 0),P((async()=>{try{const $=await W.signedUrl(g,{expiresInSeconds:c}),O=g.slice(g.lastIndexOf("/")+1)||g;Pt($,O)}catch($){y(Q($))}})())};ne(()=>{if(C===void 0)return;const g=globalThis.setTimeout(()=>{_(void 0)},2e3);return()=>{globalThis.clearTimeout(g)}},[C]);const Je=g=>{y(void 0),S(!0),P((async()=>{try{await W.remove(g),await Z(s,void 0,!1)}catch($){y(Q($))}S(!1)})())},Qe=g=>{const $=`${s}${g.name}`;y(void 0),S(!0),P((async()=>{try{const O=await g.arrayBuffer();await W.upload({body:O,contentType:g.type===""?void 0:g.type,key:$}),await Z(s,void 0,!1)}catch(O){y(Q(O))}S(!1)})())};ne(()=>{J.current+=1,A(void 0),q(!1)},[E]);const et=()=>{J.current+=1;const g=J.current;y(void 0),H(!0),P((async()=>{try{const{liveKeys:$,truncated:O}=await Gt(W);if(O)g===J.current&&(A(void 0),q(!0));else{const X=await t.query(Ut,{liveKeys:$},xe(E));g===J.current&&(A(X.references??[]),q(X.truncated===!0))}}catch($){g===J.current&&(A(void 0),q(!1),y(Q($)))}g===J.current&&H(!1)})())},tt=g=>{se.current+=1,J.current+=1,ge(g),n(d??""),a(d??""),p(void 0),A(void 0),q(!1),re()};return{allSelected:Ke,bucket:V,buckets:Y,bulkDelete:Ze,busy:N,checkOrphans:et,clearSelection:re,copiedKey:C,danglingBusy:M,danglingReferences:K,danglingTruncated:G,draftPrefix:l,enterFolder:Ue,error:b,expiry:c,files:ae,folders:De,hasObjects:x!==void 0&&x.length>0,hasStorageColumns:I,listFirst:Oe,loaded:x!==void 0,loadMore:Ae,navigate:be,nextCursor:T,onCopy:Xe,onDelete:Je,onDownload:Ye,onExpiryChange:We,onFile:Qe,onSortKeyChange:Pe,onThumbSizeChange:Ve,prefix:s,referenceShard:E,references:B,resolveUrl:Me,selectBucket:tt,selected:pe,setDraftPrefix:a,setReferenceShard:z,showGrid:He,showList:Ge,someSelected:Le,sortDirection:v,sortKey:k,tagKeys:je,thumbSize:u,toggleSelect:Be,toggleSelectAll:Ie,toggleSortDirection:qe,view:f}},Wt=100,Se=d=>{const e=U(6),{label:t,onNavigate:s,target:n}=d;let l;e[0]!==s||e[1]!==n?(l=()=>{s(n)},e[0]=s,e[1]=n,e[2]=l):l=e[2];const a=l;let c;return e[3]!==a||e[4]!==t?(c=r("button",{className:"rounded px-1 text-muted-foreground outline-none hover:text-foreground focus-visible:text-foreground",onClick:a,type:"button",children:t}),e[3]=a,e[4]=t,e[5]=c):c=e[5],c},Zt=d=>{const e=U(11),{onNavigate:t,prefix:s,t:n}=d;let l;if(e[0]!==t||e[1]!==s||e[2]!==n){const a=s.split("/").filter(Xt);let c;e[4]!==n?(c=n("Folder path"),e[4]=n,e[5]=c):c=e[5];let o;e[6]!==n?(o=n("root"),e[6]=n,e[7]=o):o=e[7];let f;e[8]!==t||e[9]!==o?(f=r(Se,{label:o,onNavigate:t,target:""}),e[8]=t,e[9]=o,e[10]=f):f=e[10],l=R("nav",{"aria-label":c,className:"flex flex-wrap items-center gap-0.5 text-xs","data-testid":"fb-breadcrumbs",children:[f,a.map((h,u)=>R("span",{className:"flex items-center gap-0.5",children:[r("span",{className:"text-muted-foreground/50",children:"/"}),r(Se,{label:h,onNavigate:t,target:`${a.slice(0,u+1).join("/")}/`})]},`${h}-${u.toString()}`))]}),e[0]=t,e[1]=s,e[2]=n,e[3]=l}else l=e[3];return l},ps=({initialPrefix:d,pageSize:e=Wt})=>{const t=nt(),s=Vt({initialPrefix:d,pageSize:e}),n=he(null),{onCopy:l,onDelete:a,onDownload:c,onFile:o,toggleSelect:f}=s,h={onCopy:l,onDelete:a,onDownload:c,onToggleSelect:f},u=()=>{n.current?.click()},m=i=>{const v=i.target,w=v.files?.[0];v.value="",w&&o(w)},k=s.loaded&&!s.hasObjects;return R("div",{className:"flex flex-col gap-3","data-testid":"lunora-file-browser",children:[r(Tt,{bucket:s.bucket,buckets:s.buckets,busy:s.busy,draftPrefix:s.draftPrefix,expiry:s.expiry,fileInputRef:n,onBucketChange:s.selectBucket,onExpiryChange:s.onExpiryChange,onFileChange:m,onList:s.listFirst,onPrefixChange:s.setDraftPrefix,onUploadClick:u,t}),s.loaded&&r(Zt,{onNavigate:s.navigate,prefix:s.prefix,t}),s.hasObjects&&r(_t,{onSortKeyChange:s.onSortKeyChange,onThumbSizeChange:s.onThumbSizeChange,showGrid:s.showGrid,showList:s.showList,sortDirection:s.sortDirection,sortKey:s.sortKey,t,tagKeys:s.tagKeys,thumbSize:s.thumbSize,toggleSortDirection:s.toggleSortDirection,view:s.view}),s.hasStorageColumns&&R("div",{className:"flex flex-wrap items-center gap-2","data-testid":"fb-references-shard",children:[r("label",{className:"text-xs text-muted-foreground",htmlFor:"fb-reference-shard-input",children:t("References shard")}),r(lt,{id:"fb-reference-shard-input",onChange:s.setReferenceShard,testId:"fb-reference-shard-input",value:s.referenceShard}),r("span",{className:"text-xs text-muted-foreground",children:t("Which shard's records are checked for references to these files. Empty = root shard.")})]}),s.hasStorageColumns&&r(It,{busy:s.danglingBusy,onCheck:s.checkOrphans,references:s.danglingReferences,t,truncated:s.danglingTruncated}),s.selected.size>0&&r(ot,{count:s.selected.size,editable:!0,onClear:s.clearSelection,onDelete:s.bulkDelete}),s.error!==void 0&&r("p",{className:"text-sm text-destructive","data-testid":"storage-error",role:"alert",children:s.error}),k&&r(we,{description:t("Objects you upload to your R2 buckets will appear here."),icon:R("svg",{"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.6,viewBox:"0 0 24 24",children:[r("path",{d:"M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7Z"}),r("path",{d:"M12 11v5m-2.5-2.5h5"})]}),testId:"fb-empty",title:t("No objects.")}),s.hasObjects&&s.view==="list"&&r(kt,{allSelected:s.allSelected,busy:s.busy,copiedKey:s.copiedKey,files:s.files,folders:s.folders,handlers:h,onEnterFolder:s.enterFolder,prefix:s.prefix,references:s.references,selected:s.selected,showReferences:s.hasStorageColumns,someSelected:s.someSelected,t,toggleSelectAll:s.toggleSelectAll}),s.hasObjects&&s.view==="grid"&&r(Lt,{busy:s.busy,copiedKey:s.copiedKey,files:s.files,folders:s.folders,handlers:h,onEnterFolder:s.enterFolder,prefix:s.prefix,references:s.references,resolveUrl:s.resolveUrl,selected:s.selected,showReferences:s.hasStorageColumns,size:s.thumbSize,t}),s.nextCursor!==void 0&&r("div",{children:r(oe,{"data-testid":"fb-next",disabled:s.busy,onClick:s.loadMore,size:"sm",type:"button",variant:"outline",children:t("Load more")})})]})};function Xt(d){return d!==""}export{ps as FileBrowser};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c as Y}from"react/compiler-runtime";import{useLunora as Qe}from"@lunora/react";import{useState as ie,useMemo as Ke,useCallback as ht,useEffect as Ne,useRef as Ce,useId as pt}from"react";import{ADMIN_FUNCTIONS as qe}from"../packem_shared/ADMIN_FUNCTIONS-B8yyk5BX.mjs";import{u as Fe,n as et,b as ze,r as Re,s as bt}from"../packem_shared/browser-storage-BH1MxLZs.mjs";import{d as _e,f as ue,c as Oe,b as gt}from"../packem_shared/internal-B6haJbiP.mjs";import{r as xt}from"../packem_shared/shard-history-CaO3C4KQ.mjs";import{u as vt}from"../packem_shared/use-sql-assistant-BhIMDQHV.mjs";import yt from"../packem_shared/useDebounced-DVeQ5-oW.mjs";import{useT as de}from"../packem_shared/DEFAULT_LOCALE-A1Yg5ORA.mjs";import{c as fe}from"../packem_shared/utils-bhneXptQ.mjs";import{jsxs as W,jsx as b,Fragment as He}from"react/jsx-runtime";import{I as St}from"../packem_shared/input-CXhxesPC.mjs";import{S as wt,a as Ct}from"../packem_shared/sql-result-table-C5y0jwaK.mjs";import{ShardInput as Nt}from"../packem_shared/ShardInput-C6mjgAh4.mjs";import{A as kt}from"../packem_shared/alert-PB5W11MM.mjs";import{E as Et}from"../packem_shared/grid-features-
|
|
1
|
+
import{c as Y}from"react/compiler-runtime";import{useLunora as Qe}from"@lunora/react";import{useState as ie,useMemo as Ke,useCallback as ht,useEffect as Ne,useRef as Ce,useId as pt}from"react";import{ADMIN_FUNCTIONS as qe}from"../packem_shared/ADMIN_FUNCTIONS-B8yyk5BX.mjs";import{u as Fe,n as et,b as ze,r as Re,s as bt}from"../packem_shared/browser-storage-BH1MxLZs.mjs";import{d as _e,f as ue,c as Oe,b as gt}from"../packem_shared/internal-B6haJbiP.mjs";import{r as xt}from"../packem_shared/shard-history-CaO3C4KQ.mjs";import{u as vt}from"../packem_shared/use-sql-assistant-BhIMDQHV.mjs";import yt from"../packem_shared/useDebounced-DVeQ5-oW.mjs";import{useT as de}from"../packem_shared/DEFAULT_LOCALE-A1Yg5ORA.mjs";import{c as fe}from"../packem_shared/utils-bhneXptQ.mjs";import{jsxs as W,jsx as b,Fragment as He}from"react/jsx-runtime";import{I as St}from"../packem_shared/input-CXhxesPC.mjs";import{S as wt,a as Ct}from"../packem_shared/sql-result-table-C5y0jwaK.mjs";import{ShardInput as Nt}from"../packem_shared/ShardInput-C6mjgAh4.mjs";import{A as kt}from"../packem_shared/alert-PB5W11MM.mjs";import{E as Et}from"../packem_shared/grid-features-Dm80ngyR.mjs";const Tt="x",Ge=" ",Rt={'"':'"',"'":"'","[":"]","`":"`"},tt=(l,e)=>{let n=e+2;for(;n<l.length&&l[n]!==`
|
|
2
2
|
`;)n+=1;return n},nt=(l,e)=>{const n=l.indexOf("*/",e+2);return n===-1?-1:n+2},st=l=>{const e=l.split("");let n=0;for(;n<l.length;){const t=l[n]??"",o=Rt[t];if(t==="-"&&l[n+1]==="-"){const s=tt(l,n);e.fill(Ge,n,s),n=s}else if(t==="/"&&l[n+1]==="*"){const s=nt(l,n);if(s===-1)return;e.fill(Ge,n,s),n=s}else if(o!==void 0){let s=n+1;for(;s<l.length;)if(l[s]!==o)s+=1;else if(o!=="]"&&l[s+1]===o)s+=2;else break;if(s>=l.length)return;e.fill(Tt,n,s+1),n=s+1}else n+=1}for(let t=0;t<l.length;t+=1)l[t]===`
|
|
3
3
|
`&&(e[t]=`
|
|
4
4
|
`);return e.join("")},Lt=/^(?:explain\s+(?:query\s+plan\s+)?)?(?:select|with)\b/iu,It=/\b(?:alter|attach|create|delete|detach|drop|insert|pragma|reindex|truncate|update|vacuum)\b|\breplace\b(?!\s*\()/iu,_t=/^\w+/u,At=/;\s*$/u,qt=/\s/u,ot=l=>{let e=0;for(;e<l.length;){const n=l[e];if(n!==void 0&&qt.test(n))e+=1;else if(n==="-"&&l[e+1]==="-")e=tt(l,e);else if(n==="/"&&l[e+1]==="*"){const t=nt(l,e);if(t===-1)break;e=t}else break}return e},Ot=l=>{const e=ot(l),n=l.slice(e).trimEnd();if(n==="")return{code:"SQL_EMPTY",message:"the query is empty"};const o=(st(n)??n).replace(At,""),s=n.slice(0,o.length),r=o.indexOf(";");if(r!==-1)return{code:"SQL_MULTIPLE_STATEMENTS",length:1,message:"only a single statement may be run",offset:e+r};const c="the SQL editor is read-only — only SELECT / WITH / EXPLAIN queries are allowed";if(!Lt.test(s))return{code:"SQL_NOT_READONLY",length:_t.exec(s)?.[0].length??1,message:c,offset:e};const a=It.exec(s);if(a!==null)return{code:"SQL_NOT_READONLY",length:a[0].length,message:`${c} (\`${a[0].toUpperCase()}\` is not allowed)`,offset:e+a.index}},Dt=/^explain\b/iu,Mt=l=>Dt.test(l.slice(ot(l)))?l:`EXPLAIN QUERY PLAN ${l}`,We=(l,e)=>{const n=l.trim();if(n==="")return[];const t=e+l.indexOf(n),o=Ot(n);return o?.code==="SQL_EMPTY"?[]:[o===void 0?{offset:t,sql:n}:{offset:t,rejection:o,sql:n}]},lt=l=>{const e=st(l);if(e===void 0)return We(l,0);const n=[];let t=0;for(let o=0;o<=e.length;o+=1)o!==e.length&&e[o]!==";"||(n.push(...We(l.slice(t,o),t)),t=o+1);return n},$t=["ORDER BY","GROUP BY","LEFT JOIN","RIGHT JOIN","INNER JOIN","OUTER JOIN","CROSS JOIN","EXPLAIN QUERY PLAN","SELECT","DISTINCT","FROM","WHERE","HAVING","LIMIT","OFFSET","JOIN","ON","AND","OR","AS","ASC","DESC","WITH","UNION","EXPLAIN"],Bt=["FROM","WHERE","ORDER BY","GROUP BY","HAVING","LIMIT","OFFSET","UNION","JOIN","LEFT JOIN","RIGHT JOIN","INNER JOIN","OUTER JOIN","CROSS JOIN"],Ae=String.fromCodePoint(0),Ht=new RegExp(`${Ae}${String.raw`(\d+)`}${Ae}`,"gu"),Pt=$t.map(l=>({pattern:new RegExp(String.raw`\b${l.replaceAll(" ",String.raw`\s+`)}\b`,"giu"),replacement:l})),Ft=Bt.map(l=>({pattern:new RegExp(String.raw`\s+${l.replaceAll(" ",String.raw`\s+`)}\b`,"gu"),replacement:`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as V}from"react/compiler-runtime";import{useLunora as k}from"@lunora/react";import{useNavigate as F,useRouter as L,useSearch as M}from"@tanstack/react-router";import{useState as Q,useEffect as A}from"react";import{T as w}from"../packem_shared/storage-tier-C2mKwYRj.mjs";import{u as P}from"../packem_shared/table-list-sidebar-DHG1UJC4.mjs";import{useT as q}from"../packem_shared/DEFAULT_LOCALE-A1Yg5ORA.mjs";import{s as J,d as D}from"../packem_shared/data-view-params-qoSTqjAj.mjs";import{f}from"../packem_shared/internal-B6haJbiP.mjs";import{l as K,s as O}from"../packem_shared/browser-storage-BH1MxLZs.mjs";import{DataBrowser as I}from"../packem_shared/DataBrowser-
|
|
1
|
+
import{c as V}from"react/compiler-runtime";import{useLunora as k}from"@lunora/react";import{useNavigate as F,useRouter as L,useSearch as M}from"@tanstack/react-router";import{useState as Q,useEffect as A}from"react";import{T as w}from"../packem_shared/storage-tier-C2mKwYRj.mjs";import{u as P}from"../packem_shared/table-list-sidebar-DHG1UJC4.mjs";import{useT as q}from"../packem_shared/DEFAULT_LOCALE-A1Yg5ORA.mjs";import{s as J,d as D}from"../packem_shared/data-view-params-qoSTqjAj.mjs";import{f}from"../packem_shared/internal-B6haJbiP.mjs";import{l as K,s as O}from"../packem_shared/browser-storage-BH1MxLZs.mjs";import{DataBrowser as I}from"../packem_shared/DataBrowser-zqK4s0IE.mjs";import{GlobalDataBrowser as X}from"../packem_shared/GlobalDataBrowser-BTbqR6Wc.mjs";import{jsx as v,jsxs as E}from"react/jsx-runtime";const N="lunora-studio-saved-queries",Y=50,$=r=>r!==null&&typeof r=="object"&&typeof r.name=="string"&&typeof r.view=="object"&&r.view!==null,S=()=>K(N).filter($),B=r=>{O(N,r)},z=(r,e)=>{const s=r.trim();if(s==="")return S();const o=[{name:s,view:e},...S().filter(b=>b.name!==s)].slice(0,Y);return B(o),o},H=r=>{const e=S().filter(s=>s.name!==r);return B(e),e},U=r=>{const e=V(15),{onChange:s,tier:o}=r,b=q();let d;e[0]!==s?(d=y=>{s(y.target.value)},e[0]=s,e[1]=d):d=e[1];const l=d;let h;e[2]!==b?(h=b("Storage tier"),e[2]=b,e[3]=h):h=e[3];let i;e[4]!==h?(i=v("span",{className:"font-mono text-[11px] tracking-wide uppercase text-muted-foreground",children:h}),e[4]=h,e[5]=i):i=e[5];const m=w[o];let n,g;e[6]===Symbol.for("react.memo_cache_sentinel")?(n=v("option",{value:"shard",children:w.shard.label}),g=v("option",{value:"global",children:w.global.label}),e[6]=n,e[7]=g):(n=e[6],g=e[7]);let c;e[8]!==l||e[9]!==m.title||e[10]!==o?(c=E("select",{className:"h-8 w-full rounded-md border border-border bg-background px-2 text-sm outline-none focus-visible:border-ring","data-testid":"table-editor-schema",id:"table-editor-schema",onChange:l,title:m.title,value:o,children:[n,g]}),e[8]=l,e[9]=m.title,e[10]=o,e[11]=c):c=e[11];let u;return e[12]!==i||e[13]!==c?(u=E("label",{className:"flex w-full flex-col gap-1",htmlFor:"table-editor-schema",children:[i,c]}),e[12]=i,e[13]=c,e[14]=u):u=e[14],u},W=()=>{try{f(globalThis.navigator.clipboard.writeText(globalThis.location.href))}catch{}},pe=({editable:r=!1,initialShardKey:e})=>{const s=k(),o=F(),b=L(),d=M({strict:!1}),l=J(d),h=P(d),i=()=>b.state.location.pathname.split("/").findLast(Boolean)==="data",m=l.tier??"shard",n=l.table,[g,c]=Q(()=>S()),[u,y]=Q(()=>new Set);A(()=>{f((async()=>{try{const a=await s.listGlobalTables();y(new Set(a.map(t=>t.name)))}catch{}})())},[s]),A(()=>{m==="shard"&&n!==void 0&&u.has(n)&&f(o({replace:!0,search:a=>({...a,schema:"global"}),to:"/data"}))},[u,o,n,m]);const R=a=>{f(o({search:t=>({...t,schema:a==="global"?"global":void 0,table:void 0}),to:"/data"}))},T=(a,t)=>{i()&&f(o({search:p=>({schema:p.schema,search:t?.search,shard:p.shard,table:a}),to:"/data"}))},C=a=>{f(o({search:t=>({...t,schema:"global",table:a}),to:"/data"}))},G=a=>{const t=D(a),{current:p}=h;(p.filters??void 0)===t.filters&&(p.order??void 0)===t.order&&(p.search??void 0)===t.search&&(p.shard??void 0)===t.shard||!i()||f(o({replace:!0,search:j=>({...j,filters:t.filters,order:t.order,search:t.search,shard:t.shard}),to:"/data"}))},_={onApplyQuery:a=>{const t=D(a.view);f(o({search:()=>({filters:t.filters,order:t.order,schema:t.schema,search:t.search,shard:t.shard,table:t.table}),to:"/data"}))},onCopyLink:W,onDeleteQuery:a=>{c(H(a))},onSaveQuery:(a,t)=>{c(z(a,t))},saved:g},x=v(U,{onChange:R,tier:m});return m==="global"?v(X,{initialTable:n,onSelectTable:T,schemaSwitch:x}):v(I,{editable:r,globalTableNames:u,initialFilters:l.filters,initialOrderBy:l.orderBy,initialPins:d.pins,initialSearch:l.search,initialShardKey:l.shard??e,onNavigateToGlobal:C,onSelectTable:T,onViewChange:G,queryBar:_,schemaSwitch:x,tableParam:n})};export{pe as TableEditor};
|