@prisma/studio-core 0.0.0-dev.202505070938 → 0.0.0-dev.202505071112
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/ui/index.cjs +1 -1
- package/dist/ui/index.js +1 -1
- package/package.json +1 -1
package/dist/ui/index.cjs
CHANGED
|
@@ -1216,7 +1216,7 @@
|
|
|
1216
1216
|
border-radius: .5em;
|
|
1217
1217
|
border: 3px solid ${Qt.backgroundAlt};
|
|
1218
1218
|
}
|
|
1219
|
-
`}}),_.default.createElement("div",{style:{flex:"1 1 500px",minHeight:"40%",maxHeight:"100%",overflow:"auto",borderRight:`1px solid ${Qt.grayAlt}`,display:"flex",flexDirection:"column"}},_.default.createElement("div",{style:{padding:".5em",background:Qt.backgroundAlt,display:"flex",justifyContent:"space-between",alignItems:"center"}},_.default.createElement(hp,{"aria-hidden":!0,style:{marginRight:".5em"},onClick:()=>n(!1)}),_.default.createElement("div",{style:{marginRight:"auto",fontSize:"clamp(.8rem, 2vw, 1.3rem)",fontWeight:"bold"}},"React Table"," ",_.default.createElement("span",{style:{fontWeight:100}},"Devtools")),_.default.createElement("div",{style:{display:"flex",flexDirection:"column"}},r?_.default.createElement(ob,{type:"button","aria-label":"Close React Table Devtools",onClick:()=>{n(!1)}},"Close"):null)),_.default.createElement("div",{style:{display:"flex",flexWrap:"wrap",overflowY:"auto",flex:"1"}},_.default.createElement("div",{style:{flex:"1 1 auto",padding:".5em"}},_.default.createElement(jt,{label:"Instance",value:o,defaultExpanded:!1}),_.default.createElement("div",{style:{height:".5rem"}}),_.default.createElement(jt,{label:"State",value:o.getState(),defaultExpanded:!1}),_.default.createElement("div",{style:{height:".5rem"}}),_.default.createElement(jt,{label:"Columns",value:o.getAllColumns(),defaultExpanded:!1})),_.default.createElement("div",{style:{flex:"1 1 auto",padding:".5em"}},_.default.createElement(jt,{label:"Core Model",value:o.getCoreRowModel(),defaultExpanded:!1}),_.default.createElement(jt,{label:"Filtered Model",value:o.getFilteredRowModel(),defaultExpanded:!1}),_.default.createElement(jt,{label:"Sorted Model",value:o.getSortedRowModel(),defaultExpanded:!1}),_.default.createElement(jt,{label:"Grouped Model",value:o.getGroupedRowModel(),defaultExpanded:!1}),_.default.createElement(jt,{label:"Expanded Model",value:o.getExpandedRowModel(),defaultExpanded:!1}))))))});var Ha=require("react");C();var bp=require("@tanstack/react-table");var Wr=require("motion/react");C();var ie=Ce(require("@radix-ui/react-dropdown-menu"),1);var ba=Ce(require("react"),1);var ze=require("react/jsx-runtime"),yp=ie.Root,vp=ie.Trigger;var ib=ba.forwardRef(({className:e,inset:t,children:a,...o},r)=>(0,ze.jsxs)(ie.SubTrigger,{ref:r,className:K("ps-flex ps-cursor-default ps-select-none ps-items-center ps-gap-2 ps-rounded-sm ps-px-2 ps-py-1.5 ps-text-sm ps-outline-none focus:ps-bg-accent data-[state=open]:ps-bg-accent [&_svg]:ps-pointer-events-none [&_svg]:ps-size-4 [&_svg]:ps-shrink-0",t&&"ps-pl-8",e),...o,children:[a,(0,ze.jsx)(sa,{className:"ps-ml-auto"})]}));ib.displayName=ie.SubTrigger.displayName;var ub=ba.forwardRef(({className:e,...t},a)=>(0,ze.jsx)(ie.SubContent,{ref:a,className:K("ps-z-50 ps-min-w-[8rem] ps-overflow-hidden ps-rounded-md ps-border ps-bg-popover ps-p-1 ps-text-popover-foreground ps-shadow-lg data-[state=open]:ps-animate-in data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=open]:ps-fade-in-0 data-[state=closed]:ps-zoom-out-95 data-[state=open]:ps-zoom-in-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-dropdown-menu-content-transform-origin]",e),...t}));ub.displayName=ie.SubContent.displayName;var Yl=ba.forwardRef(({className:e,sideOffset:t=4,...a},o)=>(0,ze.jsx)(ie.Portal,{children:(0,ze.jsx)(ie.Content,{ref:o,sideOffset:t,className:K("ps-z-50 ps-max-h-[var(--radix-dropdown-menu-content-available-height)] ps-min-w-[8rem] ps-overflow-y-auto ps-overflow-x-hidden ps-rounded-md ps-border ps-bg-popover ps-p-1 ps-text-popover-foreground ps-shadow-md","data-[state=open]:ps-animate-in data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=open]:ps-fade-in-0 data-[state=closed]:ps-zoom-out-95 data-[state=open]:ps-zoom-in-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-dropdown-menu-content-transform-origin]",e),...a})}));Yl.displayName=ie.Content.displayName;var hs=ba.forwardRef(({className:e,inset:t,...a},o)=>(0,ze.jsx)(ie.Item,{ref:o,className:K("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-gap-2 ps-rounded-sm ps-px-2 ps-py-1.5 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50 [&>svg]:ps-size-4 [&>svg]:ps-shrink-0",t&&"ps-pl-8",e),...a}));hs.displayName=ie.Item.displayName;var db=ba.forwardRef(({className:e,children:t,checked:a,...o},r)=>(0,ze.jsxs)(ie.CheckboxItem,{ref:r,className:K("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-rounded-sm ps-py-1.5 ps-pl-8 ps-pr-2 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50",e),checked:a,...o,children:[(0,ze.jsx)("span",{className:"ps-absolute ps-left-2 ps-flex ps-h-3.5 ps-w-3.5 ps-items-center ps-justify-center",children:(0,ze.jsx)(ie.ItemIndicator,{children:(0,ze.jsx)(na,{className:"ps-h-4 ps-w-4"})})}),t]}));db.displayName=ie.CheckboxItem.displayName;var cb=ba.forwardRef(({className:e,children:t,...a},o)=>(0,ze.jsxs)(ie.RadioItem,{ref:o,className:K("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-rounded-sm ps-py-1.5 ps-pl-8 ps-pr-2 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50",e),...a,children:[(0,ze.jsx)("span",{className:"ps-absolute ps-left-2 ps-flex ps-h-3.5 ps-w-3.5 ps-items-center ps-justify-center",children:(0,ze.jsx)(ie.ItemIndicator,{children:(0,ze.jsx)(Ya,{className:"ps-h-2 ps-w-2 ps-fill-current"})})}),t]}));cb.displayName=ie.RadioItem.displayName;var fb=ba.forwardRef(({className:e,inset:t,...a},o)=>(0,ze.jsx)(ie.Label,{ref:o,className:K("ps-px-2 ps-py-1.5 ps-text-sm ps-font-semibold",t&&"ps-pl-8",e),...a}));fb.displayName=ie.Label.displayName;var pb=ba.forwardRef(({className:e,...t},a)=>(0,ze.jsx)(ie.Separator,{ref:a,className:K("ps--mx-1 ps-my-1 ps-h-px ps-bg-muted",e),...t}));pb.displayName=ie.Separator.displayName;var mb=({className:e,...t})=>(0,ze.jsx)("span",{className:K("ps-ml-auto ps-text-xs ps-tracking-widest ps-opacity-60",e),...t});mb.displayName="DropdownMenuShortcut";var se=require("react/jsx-runtime");function Cp(e){let{header:t,className:a}=e;return(0,se.jsxs)("div",{className:K("ps-flex ps-items-center ps-justify-between ps-w-full ps-h-full ps-flex-0",a),children:[(0,se.jsxs)("div",{className:"ps-flex ps-items-center ps-justify-between ps-w-full",children:[(0,se.jsx)("div",{className:"ps-flex ps-items-center ps-gap-2 ps-overflow-hidden ps-text-ellipsis ps-font-mono ps-text-xs",children:t.isPlaceholder?null:(0,se.jsx)("span",{className:"ps-flex ps-min-w-0",children:(0,se.jsx)("span",{className:"ps-min-w-0 ps-overflow-hidden ps-text-ellipsis ps-text-foreground/90",children:(0,bp.flexRender)(t.column.columnDef.header,t.getContext())})})}),(0,se.jsxs)("span",{className:"ps-relative ps-flex ps-shrink-0 ps-gap-1",children:[(0,se.jsx)("span",{className:"ps-flex ps-items-center ps-ml-1",children:(0,se.jsx)(Wr.AnimatePresence,{mode:"wait",children:t.column.getIsSorted()==="desc"?(0,se.jsx)(Wr.motion.div,{initial:{opacity:0,y:-4},animate:{opacity:1,y:0},exit:{opacity:0,y:-4},transition:{duration:.2},children:(0,se.jsx)(sr,{size:14,className:"ps-text-muted-foreground"})},"desc"):t.column.getIsSorted()==="asc"?(0,se.jsx)(Wr.motion.div,{initial:{opacity:0,y:4},animate:{opacity:1,y:0},exit:{opacity:0,y:4},transition:{duration:.2},children:(0,se.jsx)(lr,{size:14,className:"ps-text-muted-foreground"})},"asc"):null})}),t.column.getCanPin()&&t.column.id!=="select"&&(0,se.jsxs)(yp,{children:[(0,se.jsx)(vp,{asChild:!0,children:(0,se.jsx)(Xe,{variant:"ghost",size:"sm",className:"ps-px-0 ps-h-6 ps-w-6",children:(0,se.jsx)(Zo,{size:12})})}),(0,se.jsxs)(Yl,{children:[t.column.getCanSort()&&(0,se.jsx)(hs,{onClick:()=>t.column.toggleSorting(),children:(0,se.jsx)("span",{className:"ps-flex ps-items-center ps-gap-2",children:t.column.getNextSortingOrder()==="desc"?(0,se.jsxs)(se.Fragment,{children:[(0,se.jsx)(Ra,{size:16}),"Sort descending"]}):t.column.getNextSortingOrder()==="asc"?(0,se.jsxs)(se.Fragment,{children:[(0,se.jsx)(Xo,{size:16}),"Sort ascending"]}):(0,se.jsxs)(se.Fragment,{children:[(0,se.jsx)(dr,{size:16}),"Cancel sorting"]})})}),(0,se.jsx)(hs,{onClick:()=>t.column.pin(t.column.getIsPinned()?!1:"left"),children:t.column.getIsPinned()?(0,se.jsxs)("span",{className:"ps-flex ps-items-center ps-gap-2",children:[(0,se.jsx)(ir,{size:16}),"Unpin column"]}):(0,se.jsxs)("span",{className:"ps-flex ps-items-center ps-gap-2",children:[(0,se.jsx)(ur,{size:16}),"Pin column"]})})]})]})]})]}),t.column.getCanResize()&&(0,se.jsx)("button",{type:"button",tabIndex:0,onMouseDown:o=>{o.stopPropagation(),t.getResizeHandler()(o)},onTouchStart:o=>{o.stopPropagation(),t.getResizeHandler()(o)},onClick:o=>o.stopPropagation(),onKeyDown:o=>{(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),o.stopPropagation(),t.getResizeHandler()(o))},className:K("ps-absolute ps-right-0 ps-top-0 ps-h-full ps-w-px ps-cursor-col-resize ps-border ps-border-transparent hover:ps-border-table-border"),"aria-label":"Resize column"})]})}C();var ei=require("react/jsx-runtime");function wp({className:e}){return(0,ei.jsx)("div",{"data-loading-bar":!0,className:K("ps-h-[2px] ps-w-full ps-overflow-hidden ps-bg-gray-200 ps-z-50",e),children:(0,ei.jsx)("div",{className:"ps-animate-indeterminate-bar ps-h-full ps-w-1/3 ps-rounded-r-full ps-bg-purple-600"})})}C();C();var Lp=Ce(require("react"),1);var Ip=require("react/jsx-runtime"),Ca=Lp.forwardRef(({className:e,type:t,...a},o)=>(0,Ip.jsx)("input",{type:t,className:K("ps-flex ps-h-9 ps-w-full ps-rounded-md ps-border ps-border-input ps-bg-transparent ps-px-3 ps-py-1 ps-shadow-sm ps-transition-colors file:ps-border-0 file:ps-bg-transparent file:ps-text-sm file:ps-font-medium file:ps-text-foreground placeholder:ps-text-muted-foreground focus-visible:ps-outline-none focus-visible:ps-ring-1 focus-visible:ps-ring-ring disabled:ps-cursor-not-allowed disabled:ps-opacity-50",e),ref:o,...a}));Ca.displayName="Input";var qe=require("react/jsx-runtime");function Sp(e){let{table:t,variant:a="basic"}=e,{pageIndex:o}=t.getState().pagination,r=t.getPageCount();return(0,qe.jsx)("div",{className:"ps-rounded-b-lg ps-overflow-clip ps-sticky ps-bottom-0 ps-left-0 ps-border-t-0 w-full ps-z-20 ps-p-0",children:(0,qe.jsx)("div",{className:"ps-flex ps-items-center ps-justify-between ps-space-x-2 ps-py-2 ps-px-2 ps-border-t ps-border-table-border ps-backdrop-blur-sm ps-bg-table-head/90",children:a==="basic"?(0,qe.jsxs)("div",{className:"ps-flex ps-items-center ps-space-x-2",children:[(0,qe.jsx)(Xe,{variant:"outline",size:"sm",className:"ps-h-9",onClick:()=>t.previousPage(),disabled:!t.getCanPreviousPage(),children:"Previous"}),(0,qe.jsx)(Xe,{variant:"outline",size:"sm",className:"ps-h-9",onClick:()=>t.nextPage(),disabled:!t.getCanNextPage(),children:"Next"})]}):(0,qe.jsx)("div",{className:"ps-flex ps-items-center ps-space-x-2",children:(0,qe.jsxs)("div",{className:"ps-flex ps-items-center ps-space-x-2",children:[(0,qe.jsx)(Xe,{variant:"outline",onClick:()=>t.setPageIndex(0),disabled:!t.getCanPreviousPage(),children:(0,qe.jsx)(Yo,{className:"ps-w-4 ps-h-4"})}),(0,qe.jsx)(Xe,{variant:"outline",onClick:()=>t.previousPage(),disabled:!t.getCanPreviousPage(),children:(0,qe.jsx)(Jo,{className:"ps-w-4 ps-h-4"})}),(0,qe.jsxs)("div",{className:"ps-flex ps-items-center ps-gap-1 ps-text-xs ps-font-medium",children:["Page",(0,qe.jsx)(Ca,{type:"number",min:1,max:r,value:o+1,className:"ps-w-16",onChange:n=>{let s=n.target.value?Number(n.target.value)-1:0;t.setPageIndex(s)}}),(0,qe.jsxs)("span",{className:"ps-shrink-0 ps-w-max",children:["of ",r]})]}),(0,qe.jsx)(Xe,{variant:"outline",onClick:()=>t.nextPage(),disabled:!t.getCanNextPage(),children:(0,qe.jsx)(sa,{className:"ps-w-4 ps-h-4"})}),(0,qe.jsx)(Xe,{variant:"outline",onClick:()=>t.setPageIndex(r-1),disabled:!t.getCanNextPage(),children:(0,qe.jsx)(er,{className:"ps-w-4 ps-h-4"})})]})})})})}C();function wa(e){let t=e.getIsPinned(),a=t==="right"&&e.getIsFirstColumn("right");return{className:K("ps-group ps-border-r ps-border-b ps-border-table-border last:ps-border-r-0","ps-overflow-hidden ps-whitespace-nowrap ps-text-ellipsis",t&&["ps-sticky ps-bg-background ps-z-20",t==="left"?"ps-left-0":"ps-right-0"],!t&&"ps-relative ps-z-10",t&&a&&"ps-shadow-[-1px_0_0_0_hsl(var(--border))]"),style:{width:e.getSize(),left:t==="left"?`${e.getStart("left")}px`:void 0,right:t==="right"?`${e.getAfter("right")}px`:void 0}}}var xe=require("react/jsx-runtime"),gb=e=>{let{children:t,className:a,header:o,style:r}=e,{attributes:n,listeners:s,transform:i,transition:l,setNodeRef:u,isDragging:d}=(0,Va.useSortable)({id:o.id});return(0,xe.jsx)(ds,{ref:u,...n,...s,style:{cursor:"grab",touchAction:"none",transform:Pp.CSS.Transform.toString(i),transition:l,...r,"--dragging-width":`${o.getSize()}px`},className:K(a,"ps-select-none ps-touch-none ps-sticky ps-top-0 ps-z-20 ps-bg-table-head",o.column.getIsPinned()&&"ps-sticky ps-z-30",d&&"!ps-z-50 ps-w-[var(--dragging-width)] ps-border-2 ps-border-violet-500"),children:(0,xe.jsx)("div",{className:"ps-w-full",children:t})})};function Mp(e){let{columnDefs:t,getBeforeRows:a,isLoading:o,isProcessing:r,onPaginationChange:n,onRowSelectionChange:s,onSortingChange:i,pageCount:l,paginationState:u,rows:d,rowSelectionState:c,sortingState:p}=e,[f,m]=(0,Ha.useState)([]),[g,h]=(0,Ha.useState)({left:["__ps_select"],right:[]}),[x,y]=(0,Ha.useState)({}),b=(0,Ha.useMemo)(()=>kp(p),[p]),w=o||r;(0,Ha.useEffect)(()=>m(t.map(({accessorKey:L})=>L)),[]);function I({active:L,over:S}){S&&L.id!==S.id&&m(H=>{let R=H.indexOf(L.id),G=H.indexOf(S.id);return(0,Va.arrayMove)(H,R,G)})}let O=(0,_a.useSensor)(_a.MouseSensor,{activationConstraint:{distance:10}}),D=(0,_a.useSensors)(O),T=(0,No.useReactTable)({columnResizeMode:"onChange",columns:t,data:d,defaultColumn:{size:200,minSize:50,maxSize:500},enableColumnPinning:!0,enableColumnResizing:!0,enableRowSelection:!0,enableSorting:!!(i&&p),getCoreRowModel:(0,No.getCoreRowModel)(),getRowId:({__ps_rowid:L})=>L,manualPagination:!0,manualSorting:!0,onColumnOrderChange:m,onColumnPinningChange:h,onColumnSizingChange:y,onPaginationChange:n,onRowSelectionChange:s,onSortingChange:L=>i?.(S=>(typeof L=="function"&&(L=L(kp(S))),hb(L))),pageCount:l,state:{columnOrder:f,columnPinning:g,columnSizing:x,pagination:u,rowSelection:c,sorting:b}});return(0,xe.jsxs)(xe.Fragment,{children:[process.env.NODE_ENV==="production"?null:(0,xe.jsx)(xp,{table:T}),(0,xe.jsxs)("div",{"data-studio":"content",className:"ps-flex-1 ps-w-0 ps-h-0 ps-min-w-full ps-flex ps-flex-col ps-relative ps-bg-slate-100",children:[(0,xe.jsx)("div",{children:w&&(0,xe.jsx)(wp,{className:"ps-absolute -ps-top-[1px] ps-left-0 ps-right-0"})}),(0,xe.jsx)(_a.DndContext,{sensors:D,onDragEnd:I,children:(0,xe.jsxs)(Rl,{className:"ps-table-fixed ps-border-separate ps-border-spacing-0 ps-box-border",children:[(0,xe.jsx)("colgroup",{children:(0,xe.jsx)("col",{style:{width:"40px",minWidth:0,maxWidth:"40px"}})}),(0,xe.jsx)(Dl,{children:T.getHeaderGroups().map(L=>(0,xe.jsx)(po,{children:(0,xe.jsx)(Va.SortableContext,{items:L.headers.filter(S=>S.id!=="__ps_select").map(S=>S.id),strategy:Va.horizontalListSortingStrategy,children:L.headers.map(S=>S.id==="__ps_select"?(0,xe.jsx)(ds,{style:wa(S.column).style,className:K(wa(S.column).className,"ps-select-none ps-sticky ps-top-0 ps-z-20 ps-bg-table-head ps-p-0 ps-table-cell-select",S.column.getIsPinned()&&"ps-sticky ps-z-30"),children:(0,xe.jsx)("div",{className:"ps-flex ps-items-center ps-justify-center ps-h-full",children:(0,No.flexRender)(S.column.columnDef.header,S.getContext())})},S.id):(0,xe.jsx)(gb,{header:S,table:T,...wa(S.column),children:(0,xe.jsx)(Cp,{header:S})},S.id))})},L.id))}),(0,xe.jsxs)(El,{children:[a?.(T),T.getRowModel().rows?.length?T.getRowModel().rows.map(L=>(0,xe.jsx)(po,{className:K("ps-bg-table-row ps-odd:bg-table-row-odd ps-group [&:last-of-type_td]:ps-border-b-0"),children:L.getVisibleCells().map((S,H)=>{if(S.column.id==="__ps_select")return(0,xe.jsx)($o,{style:wa(S.column).style,className:K(wa(S.column).className,"ps-table-cell-select"),children:typeof S.column.columnDef.cell=="function"&&(R=>{let G=S.column.columnDef.cell(S.getContext());return(0,xe.jsx)(G,{className:"ps-w-full ps-h-full"})})({className:""})},S.id);if(typeof S.column.columnDef.cell=="function"){let R=S.column.columnDef.cell(S.getContext());return(0,xe.jsx)(R,{...wa(S.column)},H)}return null})},L.id)):(0,xe.jsx)(po,{children:(0,xe.jsx)($o,{colSpan:t.length,className:"ps-h-24 ps-text-center",children:o?"Loading...":"No results."})})]})]})}),!l||l<2?null:(0,xe.jsx)(Sp,{table:T,variant:"numeric"})]})]})}function kp(e){return e?.map(t=>({id:t.column,desc:t.direction==="desc"}))||[]}function hb(e){return e.map(t=>({column:t.id,direction:t.desc?"desc":"asc"}))}C();C();var $t=Ce(require("@radix-ui/react-tooltip"),1),Ap=Ce(require("react"),1);var ti=require("react/jsx-runtime"),Tp=$t.Provider,Rp=$t.Root,Dp=$t.Trigger,ai=Ap.forwardRef(({className:e,sideOffset:t=4,...a},o)=>(0,ti.jsx)($t.Portal,{children:(0,ti.jsx)($t.Content,{ref:o,sideOffset:t,className:K("ps-z-50 ps-overflow-hidden ps-rounded-md ps-bg-primary ps-px-3 ps-py-1.5 ps-text-xs ps-text-primary-foreground ps-animate-in ps-fade-in-0 ps-zoom-in-95 data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=closed]:ps-zoom-out-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-tooltip-content-transform-origin]",e),...a})}));ai.displayName=$t.Content.displayName;var kt=require("react/jsx-runtime");function Ep({column:e}){return e.isInPrimaryKey?(0,kt.jsxs)("span",{className:"ps-flex ps-flex-row ps-font-medium ps-items-center ps-gap-1",children:[(0,kt.jsx)(Tp,{delayDuration:300,children:(0,kt.jsxs)(Rp,{children:[(0,kt.jsx)(Dp,{asChild:!0,children:(0,kt.jsx)(or,{size:12})}),(0,kt.jsx)(ai,{children:(0,kt.jsx)("p",{children:"Primary Key"})})]})}),e.name]}):(0,kt.jsxs)("div",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center",children:[(0,kt.jsx)("span",{className:"ps-font-medium ps-truncate",children:e.name}),(0,kt.jsx)("span",{className:"ps-overflow-hidden ps-text-ellipsis ps-text-muted-foreground/70 ps-lowercase ps-truncate",children:e.datatype.name})]})}C();var Zp=require("remeda");C();var ni=require("motion/react"),Zr=Ce(require("react"),1);C();var oi=Ce(require("@radix-ui/react-label"),1),Fp=require("class-variance-authority"),Op=Ce(require("react"),1);var Bp=require("react/jsx-runtime"),xb=(0,Fp.cva)("ps-text-sm ps-font-medium ps-leading-none peer-disabled:ps-cursor-not-allowed peer-disabled:ps-opacity-70"),Qr=Op.forwardRef(({className:e,...t},a)=>(0,Bp.jsx)(oi.Root,{ref:a,className:K(xb(),e),...t}));Qr.displayName=oi.Root.displayName;C();var jr=Ce(require("@radix-ui/react-switch"),1),$p=Ce(require("react"),1);var ri=require("react/jsx-runtime"),Xr=$p.forwardRef(({className:e,...t},a)=>(0,ri.jsx)(jr.Root,{className:K("ps-peer ps-inline-flex ps-h-5 ps-w-9 ps-shrink-0 ps-cursor-pointer ps-items-center ps-rounded-full ps-border-2 ps-border-transparent ps-shadow-sm ps-transition-colors focus-visible:ps-outline-none focus-visible:ps-ring-2 focus-visible:ps-ring-ring focus-visible:ps-ring-offset-2 focus-visible:ps-ring-offset-background disabled:ps-cursor-not-allowed disabled:ps-opacity-50 data-[state=checked]:ps-bg-primary data-[state=unchecked]:ps-bg-input",e),...t,ref:a,children:(0,ri.jsx)(jr.Thumb,{className:K("ps-pointer-events-none ps-block ps-h-4 ps-w-4 ps-rounded-full ps-bg-background ps-shadow-lg ps-ring-0 ps-transition-transform data-[state=checked]:ps-translate-x-4 data-[state=unchecked]:ps-translate-x-0")})}));Xr.displayName=jr.Root.displayName;C();var at=require("react/jsx-runtime"),ut=({onSave:e,onCancel:t,onClose:a,onNullChange:o,isNull:r=!1,readonly:n})=>(0,at.jsx)("div",{className:"ps-flex ps-flex-row ps-gap-1 ps-border-t ps-border-table-border ps-text-xs ps-",children:!n&&(0,at.jsxs)(at.Fragment,{children:[(0,at.jsxs)("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-mr-auto",children:[(0,at.jsxs)("button",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center ps-cursor-pointer",onClick:()=>{e&&e(),a&&a()},children:[(0,at.jsx)("kbd",{className:"ps-inline-flex ps-justify-center ps-items-center ps-h-6 ps-w-6 ps-rounded-md ps-bg-muted ps-text-muted-foreground",children:(0,at.jsx)(ar,{size:12,strokeWidth:2})})," ","Save changes"]}),(0,at.jsxs)("button",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center ps-cursor-pointer",onClick:()=>{t&&t(),a&&a()},children:[(0,at.jsx)("kbd",{className:"ps-inline-flex ps-justify-center ps-items-center ps-h-6 ps-w-6 ps-rounded-md ps-bg-muted ps-text-muted-foreground ps-text-[8px] ps-leading-none ps-font-semibold",children:"Esc"})," ","Cancel changes"]})]}),o&&(0,at.jsx)("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2",children:(0,at.jsxs)("label",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center",htmlFor:"set-nullable",children:[(0,at.jsx)(Xr,{id:"set-nullable",checked:r,onCheckedChange:u=>{o&&o(u)}}),(0,at.jsx)("span",{children:"Set to NULL"})]})})]})});var qt=require("react/jsx-runtime");function qp(e){let{value:t,onSubmit:a,column:o,readonly:r}=e,n=o.nullable===!0,[s,i]=(0,Zr.useState)(t===null?!1:t),[l,u]=(0,Zr.useState)(t===null),d=t===null?!1:t,c=x=>{i(x)},p=x=>{u(x)},f=Zr.default.useCallback(()=>{let x=l?null:s;return x!==t?(a(x),!0):!1},[s,t,a,l]),m=()=>{i(d),u(t===null)},{handleSave:g,handleCancel:h}=it({onSave:f,onCancel:m,readonly:r});return(0,qt.jsxs)(qt.Fragment,{children:[(0,qt.jsxs)("div",{className:"ps-flex ps-flex-row ps-items-center ps-h-[var(--studio-cell-height)] ps-gap-4 ps-py-0 ps-px-2",children:[(0,qt.jsx)(Qr,{htmlFor:"boolean-input",className:"ps-sr-only",children:"Boolean"}),(0,qt.jsx)(ni.motion.div,{className:"ps-flex ps-items-center",initial:{opacity:0},animate:{opacity:1},transition:{duration:.24},children:(0,qt.jsx)(Xr,{id:"boolean-input",checked:s,onCheckedChange:c,disabled:l||r})}),(0,qt.jsx)(ni.motion.div,{"data-value":!0,className:"ps-inline-flex ps-items-center ps-text-xs ps-text-muted-foreground ps-font-mono",initial:{x:-40,opacity:1},animate:{x:0,opacity:1},transition:{duration:.12,delay:0},children:l?"NULL":String(s)})]}),(0,qt.jsx)(ut,{onSave:g,onCancel:h,onNullChange:n?p:void 0,isNull:l,readonly:r})]})}C();var si=Ce(require("dayjs"),1),zp=Ce(require("dayjs/plugin/localizedFormat"),1),xs=require("react");C();var Np=require("react");function zo(e){let{initialValue:t}=e,[a,o]=(0,Np.useState)(t??"");return{handleOnChange:n=>{o(n.target.value)},value:a}}var Pt=require("react/jsx-runtime");si.default.extend(zp.default);function Up(e){let{onSubmit:t,value:a,readonly:o}=e,r=String(a),{handleOnChange:n,value:s}=zo({initialValue:r}),i=(0,xs.useMemo)(()=>{try{let f=(0,si.default)(s);return f.isValid()?s.includes(":")?f.format("LL LTS"):f.format("LL"):s}catch{return s}},[s]);function l(f){f.preventDefault(),s!==r&&t(s)}let u=(0,xs.useCallback)(()=>s!==r?(t(s),!0):!1,[s,r,t]),d=()=>{},{handleSave:c,handleCancel:p}=it({onSave:u,onCancel:d,readonly:o});return(0,Pt.jsxs)(Pt.Fragment,{children:[(0,Pt.jsxs)("form",{onSubmit:l,children:[(0,Pt.jsx)(Ca,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:n,type:"text",value:s}),(0,Pt.jsx)("input",{type:"submit",className:"ps-sr-only"})]}),(0,Pt.jsxs)("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-border-t ps-border-table-border",children:[(0,Pt.jsx)("div",{className:"ps-text-xs ps-text-muted-foreground",children:"Formatted value"}),(0,Pt.jsx)("div",{className:"ps-text-xs ps-font-mono ps-text-foreground",children:i})]}),(0,Pt.jsx)(ut,{onSave:c,onCancel:p,readonly:o})]})}C();var Jr=require("react");C();var Hp=require("class-variance-authority");var yb=require("react/jsx-runtime"),_p=(0,Hp.cva)("ps-inline-flex ps-items-center ps-rounded-md ps-border ps-px-2.5 ps-py-0.5 ps-text-xs ps-font-semibold ps-transition-colors focus:ps-outline-none focus:ps-ring-2 focus:ps-ring-ring focus:ps-ring-offset-2",{variants:{variant:{default:"ps-border-transparent ps-bg-primary ps-text-primary-foreground ps-shadow hover:ps-bg-primary/80",secondary:"ps-border-transparent ps-bg-secondary ps-text-secondary-foreground hover:ps-bg-secondary/80",destructive:"ps-border-transparent ps-bg-destructive ps-text-destructive-foreground ps-shadow hover:ps-bg-destructive/80",outline:"ps-text-foreground"}},defaultVariants:{variant:"default"}});var La=require("react/jsx-runtime");function Vp(e){let{onSubmit:t,column:a,value:o,options:r=[],readonly:n}=e,s=a.nullable===!0,i=String(o),[l,u]=(0,Jr.useState)(i),[d,c]=(0,Jr.useState)(o===null),p=y=>{u(y)},f=y=>{c(y)},m=(0,Jr.useCallback)(()=>d?o!==null?(t(null),!0):!1:l!==i?(t(l),!0):!1,[l,i,t,d,o]),g=()=>{u(i),c(o===null)},{handleSave:h,handleCancel:x}=it({onSave:m,onCancel:g,readonly:n});return(0,La.jsxs)(La.Fragment,{children:[(0,La.jsx)("div",{className:"ps-flex ps-items-center ps-gap-2 ps-font-mono ps-h-[var(--studio-cell-height)] ps-px-2 ps-py-0 ps-w-full ps-text-xs ps-text-muted-foreground",children:l}),(0,La.jsx)("div",{className:"ps-flex ps-flex-row ps-flex-wrap ps-gap-2 ps-p-2 ps-min-w-[var(--radix-popover-trigger-width)] ps-max-w-min ps-border-t ps-border-table-border ps-overflow-y-scroll ps-max-h-32",children:r.map(y=>(0,La.jsx)("button",{onClick:()=>p(y),className:_p({variant:y===l?"default":"outline"}),disabled:d||n,children:y},y))}),(0,La.jsx)(ut,{onSave:h,onCancel:x,onNullChange:s?f:void 0,isNull:d,readonly:n})]})}C();var Yr=Ce(require("react"),1);var Ka=require("react/jsx-runtime");function Kp(e){let{value:t,onSubmit:a,column:o,readonly:r}=e,n=o.nullable===!0,s=t===null?"":JSON.stringify(t,null,2),[i,l]=(0,Yr.useState)(s),[u,d]=(0,Yr.useState)(t===null),c=x=>{l(x.target.value)},p=x=>{d(x)},f=Yr.default.useCallback(()=>{if(u)return t!==null?(a(null),!0):!1;let x=i===""?null:JSON.parse(i);return x!==t?(a(x),!0):!1},[i,t,a,u]),m=()=>{l(s),d(t===null)},{handleSave:g,handleCancel:h}=it({onSave:f,onCancel:m,readonly:r});return(0,Ka.jsxs)(Ka.Fragment,{children:[(0,Ka.jsx)("div",{className:"ps-flex ps-flex-row ps-items-center ps-gap-4 ps-py-0",children:(0,Ka.jsx)("textarea",{rows:5,value:i,onChange:c,disabled:u||r,className:"ps-cell-input-base ps-appearance-none ps-w-full ps-font-mono ps-border-none ps-outline-none ps-shadow-none ps-bg-transparent focus-visible:ps-ring-0 ps-resize ps-px-[var(--studio-cell-spacing)]",lang:"en_EN"})}),(0,Ka.jsx)(ut,{onSave:g,onCancel:h,onNullChange:n?p:void 0,isNull:u,readonly:r})]})}C();var en=Ce(require("react"),1);var Ia=require("react/jsx-runtime");function Gp(e){let{value:t,onSubmit:a,column:o,readonly:r}=e,n=o.nullable===!0,[s,i]=(0,en.useState)(t===null?"":String(t)),[l,u]=(0,en.useState)(t===null),d=t===null?"":String(t),c=x=>{i(x.target.value)},p=x=>{u(x)},f=en.default.useCallback(()=>{if(l)return t!==null?(a(null),!0):!1;let x=s===""?null:Number(s);return s!==t?(a(x),!0):!1},[s,t,a,l]),m=()=>{i(d),u(t===null)},{handleSave:g,handleCancel:h}=it({onSave:f,onCancel:m,readonly:r});return(0,Ia.jsxs)(Ia.Fragment,{children:[(0,Ia.jsxs)("div",{className:"ps-flex ps-flex-row ps-items-center ps-h-[var(--studio-cell-height)] ps-gap-4 ps-py-0",children:[(0,Ia.jsx)(Qr,{htmlFor:"numeric-input",className:"ps-sr-only",children:"Numeric"}),(0,Ia.jsx)("input",{type:"text",inputMode:"numeric",pattern:"\\d*",value:s,onChange:c,disabled:l||r,className:"ps-cell-input-leading ps-appearance-none ps-w-full ps-font-mono ps-border-none ps-outline-none ps-shadow-none ps-bg-transparent focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",step:"any",lang:"en_EN"})]}),(0,Ia.jsx)(ut,{onSave:g,onCancel:h,onNullChange:n?p:void 0,isNull:l,readonly:r})]})}C();var Wp=Ce(require("react"),1);var Sa=require("react/jsx-runtime");function Qp(e){let{onSubmit:t,value:a,readonly:o}=e,r=String(a),{handleOnChange:n,value:s}=zo({initialValue:r});function i(p){p.preventDefault(),s!==r&&t(s)}let l=Wp.default.useCallback(()=>s!==r?(t(s),!0):!1,[s,r,t]),u=()=>{},{handleSave:d,handleCancel:c}=it({onSave:l,onCancel:u,readonly:o});return(0,Sa.jsxs)(Sa.Fragment,{children:[(0,Sa.jsxs)("form",{onSubmit:i,children:[(0,Sa.jsx)(Ca,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:n,type:"text",value:s,disabled:o}),(0,Sa.jsx)("input",{type:"submit",className:"ps-sr-only"})]}),(0,Sa.jsx)(ut,{onSave:d,onCancel:c,readonly:o})]})}C();var li=Ce(require("dayjs"),1),jp=Ce(require("dayjs/plugin/localizedFormat"),1),ys=require("react");var Mt=require("react/jsx-runtime");li.default.extend(jp.default);function Xp(e){let{onSubmit:t,value:a,readonly:o}=e,r=String(a),{handleOnChange:n,value:s}=zo({initialValue:r}),i=(0,ys.useMemo)(()=>{try{if(!s.includes(":"))return s;let f=/[+-]\d{2}(:\d{2})?$/.test(s),m=(0,li.default)(`2000-01-01 ${s}`);if(m.isValid())return m.format("h:mm A")+(f?` (${m.format("Z")})`:"");let g=/(\d{1,2}):(\d{2}):(\d{2})(?:\.\d+)?([+-]\d{2}(?::\d{2})?)?/,h=s.match(g);if(h){let x=parseInt(h[1]||"12",10),y=h[2]||"00",b=h[4]||"",w=x>=12?"PM":"AM";return`${x%12===0?12:x%12}:${y} ${w}${b?` (${b})`:""}`}return s}catch{return s}},[s]);function l(f){f.preventDefault(),s!==r&&t(s)}let u=(0,ys.useCallback)(()=>s!==r?(t(s),!0):!1,[s,r,t]),d=()=>{},{handleSave:c,handleCancel:p}=it({onSave:u,onCancel:d,readonly:o});return(0,Mt.jsxs)(Mt.Fragment,{children:[(0,Mt.jsxs)("form",{onSubmit:l,children:[(0,Mt.jsx)(Ca,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:n,type:"text",value:s}),(0,Mt.jsx)("input",{type:"submit",className:"ps-sr-only"})]}),(0,Mt.jsxs)("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-border-t ps-border-table-border",children:[(0,Mt.jsx)("div",{className:"ps-text-xs ps-text-muted-foreground",children:"Formatted value"}),(0,Mt.jsx)("div",{className:"ps-text-xs ps-font-mono ps-text-foreground",children:i})]}),(0,Mt.jsx)(ut,{onSave:c,onCancel:p,readonly:o})]})}var Ga=require("react/jsx-runtime");function vs(e){let{cell:t,column:a,onSubmit:o}=e,{group:r,options:n,isArray:s}=a.datatype,i=a.isComputed||e.readonly,l=t.getValue(),u=l===void 0?"":l;return r==="datetime"?(0,Ga.jsx)(Up,{onSubmit:o,value:u,column:a,readonly:i}):r==="time"?(0,Ga.jsx)(Xp,{onSubmit:o,value:u,column:a,readonly:i}):r==="json"||s?(0,Ga.jsx)(Kp,{onSubmit:o,value:u,column:a,readonly:i}):r==="boolean"?(0,Ga.jsx)(qp,{onSubmit:o,value:u,column:a,readonly:i}):r==="enum"?(0,Ga.jsx)(Vp,{onSubmit:o,value:u,options:n,column:a,readonly:i}):r==="numeric"?(0,Ga.jsx)(Gp,{onSubmit:o,value:u,column:a,readonly:i}):(0,Ga.jsx)(Qp,{onSubmit:o,value:(0,Zp.isObjectType)(u)?JSON.stringify(u):u,readonly:i})}C();var Jp=require("@tanstack/react-table"),Yp=require("remeda");var Wa=require("react/jsx-runtime");function em(e){let{table:t,stagedRows:a,setStagedRows:o}=e,r=!!rs();function n(l,u){o(d=>{let c=[...d];return c[l]={...c[l],...u},c})}let s=Object.values(t.options.columns).map(l=>l.id==="__ps_select"?{...l,cell(){return()=>(0,Wa.jsx)(Kr,{})}}:{...l,cell({cell:u}){return d=>(0,Wa.jsx)(ms,{cellComponent:ps({cell:u,column:l.meta,props:d}),inputComponent:vs({cell:u,column:l.meta,onSubmit(c){n(d.rowIndex,{[l.id]:c})},readonly:r})})}}),i=(0,Jp.useReactTable)({...t.options,columns:s,enableSorting:!1,onPaginationChange:void 0,onSortingChange:void 0,data:a,state:(0,Yp.omit)(t.options.state,["pagination","sorting"])});return(0,Wa.jsx)(Wa.Fragment,{children:i.getRowModel().rows.map((l,u)=>(0,Wa.jsx)(po,{children:l.getVisibleCells().map((d,c)=>{if(typeof d.column.columnDef.cell=="function"){let p=d.column.columnDef.cell(d.getContext());return(0,Wa.jsx)(p,{...wa(d.column),rowIndex:u},c)}return null})},u))})}var Pe=require("react/jsx-runtime");function om(e){let t=!!(0,tm.useIsMutating)(),{activeTable:a,onError:o,isFullscreen:r,toggleFullscreen:n}=Ke(),{sortingState:s,setSortingState:i}=_f(),{paginationState:l,setPaginationState:u}=ss(),[d,c]=(0,bs.useState)([]),{data:p,isFetching:f}=$f({...l,sortOrder:s}),{deleteSelection:m,isSelecting:g,rowSelectionState:h,setRowSelectionState:x}=Hf(p),y=!Object.values(a?.columns??{}).some(G=>G.isInPrimaryKey),b=rs(),w=Of(),I=qf();if((0,bs.useEffect)(()=>c([]),[a]),!a)return null;function O(){w.mutate(d,{onError:o,onSuccess(){am.toast.success("Rows inserted successfully"),c([])}})}function D(){c(G=>[...G,{}])}function T(){c([])}function L(G,ae,fe){I.mutate({details:{changes:{[ae.name]:G},row:fe,table:a},options:{}})}let S=Object.values(a?.columns??{}).map(G=>({id:G.name,accessorKey:G.name,meta:G,header(){return Ep({column:G})},cell({cell:ae}){return fe=>(0,Pe.jsx)(ms,{cellComponent:ps({cell:ae,column:G,props:fe}),inputComponent:vs({cell:ae,column:G,readonly:y,onSubmit(ce){return L(ce,G,ae.row.original)}})})}})),H=[{id:"__ps_select",accessorKey:"__ps_select",enablePinning:!1,meta:{disableDragging:!0},header({table:G}){return(0,Pe.jsx)(fr,{checked:G.getIsAllRowsSelected(),onCheckedChange:ae=>G.toggleAllRowsSelected(!!ae),disabled:y})},cell({row:G}){return()=>(0,Pe.jsx)(Ql,{row:G,readonly:y})}}],R=[...S,...H].sort(bb);return(0,Pe.jsxs)(Pe.Fragment,{children:[(0,Pe.jsx)("div",{className:"ps-bg-studio-header-background ps-flex ps-w-full ps-p-2 ps-py-3 ps-border-b ps-bg-card ps-rounded-t-lg",children:(0,Pe.jsx)("div",{className:"ps-flex ps-items-center ps-justify-between ps-w-full ps-gap-2",children:(0,Pe.jsxs)("div",{className:"ps-flex ps-flex-grow ps-justify-between ps-items-center",children:[(0,Pe.jsxs)("div",{className:"ps-flex ps-items-center ps-gap-2",children:[(0,Pe.jsx)(Xe,{variant:"outline",size:"sm",onClick:D,disabled:b>0,children:"Insert row"}),d.length>0&&(0,Pe.jsxs)(Pe.Fragment,{children:[(0,Pe.jsx)(Xe,{variant:"secondary",size:"sm",onClick:O,children:"Save"}),(0,Pe.jsx)(Xe,{variant:"ghost",size:"sm",onClick:T,children:"Cancel"})]}),g&&(0,Pe.jsx)(Pe.Fragment,{children:(0,Pe.jsx)(Xe,{variant:"secondary",size:"sm",onClick:m,children:"Delete"})})]}),(0,Pe.jsx)(Xe,{variant:"outline",size:"icon",onClick:n,children:r?(0,Pe.jsx)(nr,{}):(0,Pe.jsx)(rr,{})})]})})}),(0,Pe.jsx)(Mp,{columnDefs:R,getBeforeRows:G=>(0,Pe.jsx)(em,{table:G,stagedRows:d,setStagedRows:c}),isLoading:f,isProcessing:t,onPaginationChange:u,onRowSelectionChange:x,onSortingChange:i,pageCount:vb(p?.filteredRowCount??1/0,l.pageSize),paginationState:l,rows:p?.rows??[],rowSelectionState:h,sortingState:s})]})}function vb(e,t){if(e===1/0)return;let a=Number((BigInt(e)+BigInt(t)-BigInt(1))/BigInt(t));return Number.isSafeInteger(a)?a:Number.MAX_SAFE_INTEGER}function bb(e,t){let a=e.meta,o=t.meta;return e.id==="__ps_select"||t.id==="__ps_select"?1:a===void 0||o===void 0?0:a.isInPrimaryKey&&!o.isInPrimaryKey?-1:!a.isInPrimaryKey&&o.isInPrimaryKey?1:a.name.localeCompare(o.name)}C();var dm=require("@radix-ui/react-slot");C();var nm=require("react/jsx-runtime");function rm({className:e,...t}){return(0,nm.jsx)("div",{className:K("ps-animate-pulse ps-rounded-md ps-bg-primary/10",e),...t})}C();var Qa=require("react"),im=require("uuid");C();var sm=require("@tanstack/react-query");var Cs=-1;function lm(){let{adapter:e}=Ke();return(0,sm.useQuery)({initialData:{schemas:{[e.defaultSchema||"db"]:{tables:{}}},timezone:"UTC"},initialDataUpdatedAt:Cs,queryFn:async({signal:t})=>{let[a,o]=await e.introspect({abortSignal:t});if(a)throw a;return o},queryKey:["introspection"],staleTime:t=>t.state.dataUpdatedAt===Cs?0:1/0})}function um(){let{activeTable:e,setActiveTable:t,adapter:a,emitTelemetryEvent:o}=Ke(),{data:r,dataUpdatedAt:n}=lm(),s=n===Cs,i=(0,Qa.useMemo)(()=>Object.values(r.schemas[a.defaultSchema||"db"]?.tables||{}),[r.schemas,a.defaultSchema]),l=(0,Qa.useMemo)(()=>Object.values(r.schemas).reduce((g,h)=>g+Object.keys(h.tables).length,0),[r.schemas]),[u]=i,[d,c]=Vr({table:{defaultValue:null,parse:g=>g,serialize:g=>g??""},schema:{defaultValue:"",parse:g=>g,serialize:g=>g??""}}),[,p]=Bo("pageIndex",{parse:g=>g,serialize:g=>g??""}),[,f]=Bo("sort",{parse:g=>g,serialize:g=>g??""});(0,Qa.useEffect)(()=>{if(!s){if(d?.table&&i.length>0){let g=i.find(h=>h.name===d.table);if(g){t(g);return}}i.length>0&&!e&&(t(u||null),u&&c({table:u.name,schema:u.schema}))}},[s,d,i,u,e,t,c]);let m=(0,Qa.useCallback)(g=>{e!==g&&(t(g),c({table:g.name,schema:g.schema}),p(null),f(null))},[e,t,c,p,f]);return(0,Qa.useEffect)(()=>{n!==-1&&o({event:"studio_launched",payload:{event_id:(0,im.v4)(),timestamp:new Date().toISOString(),table_count:l}})},[i,o,n,l]),{tables:i,activeTable:e,isLoading:s,handleTableChange:m}}var dt=require("react/jsx-runtime");function ja(){let{tables:e,activeTable:t,isLoading:a,handleTableChange:o}=um();return(0,dt.jsx)("div",{className:"ps-flex ps-flex-col ps-w-64 ps-gap-4 ps-shrink-0 ps-overflow-y-auto ps-max-h-full ps-min-h-0 ps-rounded-lg ps-border ps-bg-card ps-text-card-foreground ps-shadow-xs",children:(0,dt.jsx)(ja.Block,{label:"Tables",children:e.length>0?e.map(r=>(0,dt.jsx)(ja.Item,{isActive:t===r,onClick:()=>{o(r)},className:"ps-py-1 ps-font-mono ps-text-xs ps-text-foreground/60 hover:ps-text-foreground ps-transition-all ps-cursor-pointer data-[active=true]:ps-bg-primary/5 data-[active=true]:ps-foreground data-[active=true]:ps-text-foreground",children:r.name},`${r.schema}-${r.name}`)):a?Array(4).fill(null).map((r,n)=>(0,dt.jsx)(ja.Item,{wrapChildrenInSpan:!1,children:(0,dt.jsx)(rm,{className:"ps-h-3 ps-w-full"})},n)):(0,dt.jsx)(ja.Item,{children:"No tables found"})})})}var Cb=({className:e,label:t,children:a,...o})=>(0,dt.jsxs)("div",{className:e,...o,children:[(0,dt.jsx)("div",{className:"ps-pt-4 ps-pb-2 ps-px-4",children:(0,dt.jsx)("h2",{className:"ps-text-sm ps-font-medium",children:t})}),(0,dt.jsx)("nav",{"aria-label":t,className:"ps-flex ps-flex-col ps-gap-px ps-pb-3",children:a})]}),wb=({className:e,asChild:t=!1,isActive:a,size:o,children:r,wrapChildrenInSpan:n=!0,...s})=>(0,dt.jsx)(t?dm.Slot:"button",{"data-sidebar":"menu-button","data-size":o,"data-active":a,className:K("ps-py-1.5 ps-px-4 ps-text-sm ps-font-medium ps-flex ps-gap-2 ps-items-center ps-border ps-border-transparent ps-bg-transparent ps-hover:bg-muted/50",e),...s,children:n?(0,dt.jsx)("span",{className:"ps-truncate",children:r}):r});ja.Block=Cb;ja.Item=wb;var Xt=require("react/jsx-runtime");function cm(e){let{adapter:t,onError:a,onTelemetryEvent:o}=e;return t?(0,Xt.jsx)(Ef,{adapter:t,onError:a,onTelemetryEvent:o,children:(0,Xt.jsx)(Lb,{})}):(console.error("No adapter provided to Studio component"),(0,Xt.jsx)("div",{children:"Error: No adapter provided"}))}function Lb(){let{isFullscreen:e}=Ke(),t=K("ps-flex ps-flex-col ps-w-full ps-min-h-0 ps-max-h-full",e&&"ps-fixed ps-inset-0 ps-z-[9999] ps-bg-background ps-p-2");return(0,Xt.jsx)("div",{className:t,children:(0,Xt.jsxs)("div",{className:"ps-flex ps-gap-4 ps-w-full ps-bg-background ps-relative ps-max-h-full ps-min-h-full",children:[(0,Xt.jsx)(ja,{}),(0,Xt.jsx)("div",{className:"ps-flex ps-w-full ps-flex-col ps-bg-slate-100 ps-border ps-rounded-lg ps-self-start ps-h-full ps-min-h-full ps-max-h-full ps-overflow-clip",children:(0,Xt.jsx)(om,{})})]})})}0&&(module.exports={Studio});
|
|
1219
|
+
`}}),_.default.createElement("div",{style:{flex:"1 1 500px",minHeight:"40%",maxHeight:"100%",overflow:"auto",borderRight:`1px solid ${Qt.grayAlt}`,display:"flex",flexDirection:"column"}},_.default.createElement("div",{style:{padding:".5em",background:Qt.backgroundAlt,display:"flex",justifyContent:"space-between",alignItems:"center"}},_.default.createElement(hp,{"aria-hidden":!0,style:{marginRight:".5em"},onClick:()=>n(!1)}),_.default.createElement("div",{style:{marginRight:"auto",fontSize:"clamp(.8rem, 2vw, 1.3rem)",fontWeight:"bold"}},"React Table"," ",_.default.createElement("span",{style:{fontWeight:100}},"Devtools")),_.default.createElement("div",{style:{display:"flex",flexDirection:"column"}},r?_.default.createElement(ob,{type:"button","aria-label":"Close React Table Devtools",onClick:()=>{n(!1)}},"Close"):null)),_.default.createElement("div",{style:{display:"flex",flexWrap:"wrap",overflowY:"auto",flex:"1"}},_.default.createElement("div",{style:{flex:"1 1 auto",padding:".5em"}},_.default.createElement(jt,{label:"Instance",value:o,defaultExpanded:!1}),_.default.createElement("div",{style:{height:".5rem"}}),_.default.createElement(jt,{label:"State",value:o.getState(),defaultExpanded:!1}),_.default.createElement("div",{style:{height:".5rem"}}),_.default.createElement(jt,{label:"Columns",value:o.getAllColumns(),defaultExpanded:!1})),_.default.createElement("div",{style:{flex:"1 1 auto",padding:".5em"}},_.default.createElement(jt,{label:"Core Model",value:o.getCoreRowModel(),defaultExpanded:!1}),_.default.createElement(jt,{label:"Filtered Model",value:o.getFilteredRowModel(),defaultExpanded:!1}),_.default.createElement(jt,{label:"Sorted Model",value:o.getSortedRowModel(),defaultExpanded:!1}),_.default.createElement(jt,{label:"Grouped Model",value:o.getGroupedRowModel(),defaultExpanded:!1}),_.default.createElement(jt,{label:"Expanded Model",value:o.getExpandedRowModel(),defaultExpanded:!1}))))))});var Ha=require("react");C();var bp=require("@tanstack/react-table");var Wr=require("motion/react");C();var ie=Ce(require("@radix-ui/react-dropdown-menu"),1);var ba=Ce(require("react"),1);var ze=require("react/jsx-runtime"),yp=ie.Root,vp=ie.Trigger;var ib=ba.forwardRef(({className:e,inset:t,children:a,...o},r)=>(0,ze.jsxs)(ie.SubTrigger,{ref:r,className:K("ps-flex ps-cursor-default ps-select-none ps-items-center ps-gap-2 ps-rounded-sm ps-px-2 ps-py-1.5 ps-text-sm ps-outline-none focus:ps-bg-accent data-[state=open]:ps-bg-accent [&_svg]:ps-pointer-events-none [&_svg]:ps-size-4 [&_svg]:ps-shrink-0",t&&"ps-pl-8",e),...o,children:[a,(0,ze.jsx)(sa,{className:"ps-ml-auto"})]}));ib.displayName=ie.SubTrigger.displayName;var ub=ba.forwardRef(({className:e,...t},a)=>(0,ze.jsx)(ie.SubContent,{ref:a,className:K("ps-z-50 ps-min-w-[8rem] ps-overflow-hidden ps-rounded-md ps-border ps-bg-popover ps-p-1 ps-text-popover-foreground ps-shadow-lg data-[state=open]:ps-animate-in data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=open]:ps-fade-in-0 data-[state=closed]:ps-zoom-out-95 data-[state=open]:ps-zoom-in-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-dropdown-menu-content-transform-origin]",e),...t}));ub.displayName=ie.SubContent.displayName;var Yl=ba.forwardRef(({className:e,sideOffset:t=4,...a},o)=>(0,ze.jsx)(ie.Portal,{children:(0,ze.jsx)(ie.Content,{ref:o,sideOffset:t,className:K("ps-z-50 ps-max-h-[var(--radix-dropdown-menu-content-available-height)] ps-min-w-[8rem] ps-overflow-y-auto ps-overflow-x-hidden ps-rounded-md ps-border ps-bg-popover ps-p-1 ps-text-popover-foreground ps-shadow-md","data-[state=open]:ps-animate-in data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=open]:ps-fade-in-0 data-[state=closed]:ps-zoom-out-95 data-[state=open]:ps-zoom-in-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-dropdown-menu-content-transform-origin]",e),...a})}));Yl.displayName=ie.Content.displayName;var hs=ba.forwardRef(({className:e,inset:t,...a},o)=>(0,ze.jsx)(ie.Item,{ref:o,className:K("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-gap-2 ps-rounded-sm ps-px-2 ps-py-1.5 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50 [&>svg]:ps-size-4 [&>svg]:ps-shrink-0",t&&"ps-pl-8",e),...a}));hs.displayName=ie.Item.displayName;var db=ba.forwardRef(({className:e,children:t,checked:a,...o},r)=>(0,ze.jsxs)(ie.CheckboxItem,{ref:r,className:K("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-rounded-sm ps-py-1.5 ps-pl-8 ps-pr-2 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50",e),checked:a,...o,children:[(0,ze.jsx)("span",{className:"ps-absolute ps-left-2 ps-flex ps-h-3.5 ps-w-3.5 ps-items-center ps-justify-center",children:(0,ze.jsx)(ie.ItemIndicator,{children:(0,ze.jsx)(na,{className:"ps-h-4 ps-w-4"})})}),t]}));db.displayName=ie.CheckboxItem.displayName;var cb=ba.forwardRef(({className:e,children:t,...a},o)=>(0,ze.jsxs)(ie.RadioItem,{ref:o,className:K("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-rounded-sm ps-py-1.5 ps-pl-8 ps-pr-2 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50",e),...a,children:[(0,ze.jsx)("span",{className:"ps-absolute ps-left-2 ps-flex ps-h-3.5 ps-w-3.5 ps-items-center ps-justify-center",children:(0,ze.jsx)(ie.ItemIndicator,{children:(0,ze.jsx)(Ya,{className:"ps-h-2 ps-w-2 ps-fill-current"})})}),t]}));cb.displayName=ie.RadioItem.displayName;var fb=ba.forwardRef(({className:e,inset:t,...a},o)=>(0,ze.jsx)(ie.Label,{ref:o,className:K("ps-px-2 ps-py-1.5 ps-text-sm ps-font-semibold",t&&"ps-pl-8",e),...a}));fb.displayName=ie.Label.displayName;var pb=ba.forwardRef(({className:e,...t},a)=>(0,ze.jsx)(ie.Separator,{ref:a,className:K("ps--mx-1 ps-my-1 ps-h-px ps-bg-muted",e),...t}));pb.displayName=ie.Separator.displayName;var mb=({className:e,...t})=>(0,ze.jsx)("span",{className:K("ps-ml-auto ps-text-xs ps-tracking-widest ps-opacity-60",e),...t});mb.displayName="DropdownMenuShortcut";var se=require("react/jsx-runtime");function Cp(e){let{header:t,className:a}=e;return(0,se.jsxs)("div",{className:K("ps-flex ps-items-center ps-justify-between ps-w-full ps-h-full ps-flex-0",a),children:[(0,se.jsxs)("div",{className:"ps-flex ps-items-center ps-justify-between ps-w-full",children:[(0,se.jsx)("div",{className:"ps-flex ps-items-center ps-gap-2 ps-overflow-hidden ps-text-ellipsis ps-font-mono ps-text-xs",children:t.isPlaceholder?null:(0,se.jsx)("span",{className:"ps-flex ps-min-w-0",children:(0,se.jsx)("span",{className:"ps-min-w-0 ps-overflow-hidden ps-text-ellipsis ps-text-foreground/90",children:(0,bp.flexRender)(t.column.columnDef.header,t.getContext())})})}),(0,se.jsxs)("span",{className:"ps-relative ps-flex ps-shrink-0 ps-gap-1",children:[(0,se.jsx)("span",{className:"ps-flex ps-items-center ps-ml-1",children:(0,se.jsx)(Wr.AnimatePresence,{mode:"wait",children:t.column.getIsSorted()==="desc"?(0,se.jsx)(Wr.motion.div,{initial:{opacity:0,y:-4},animate:{opacity:1,y:0},exit:{opacity:0,y:-4},transition:{duration:.2},children:(0,se.jsx)(sr,{size:14,className:"ps-text-muted-foreground"})},"desc"):t.column.getIsSorted()==="asc"?(0,se.jsx)(Wr.motion.div,{initial:{opacity:0,y:4},animate:{opacity:1,y:0},exit:{opacity:0,y:4},transition:{duration:.2},children:(0,se.jsx)(lr,{size:14,className:"ps-text-muted-foreground"})},"asc"):null})}),t.column.getCanPin()&&t.column.id!=="select"&&(0,se.jsxs)(yp,{children:[(0,se.jsx)(vp,{asChild:!0,children:(0,se.jsx)(Xe,{variant:"ghost",size:"sm",className:"ps-px-0 ps-h-6 ps-w-6",children:(0,se.jsx)(Zo,{size:12})})}),(0,se.jsxs)(Yl,{children:[t.column.getCanSort()&&(0,se.jsx)(hs,{onClick:()=>t.column.toggleSorting(),children:(0,se.jsx)("span",{className:"ps-flex ps-items-center ps-gap-2",children:t.column.getNextSortingOrder()==="desc"?(0,se.jsxs)(se.Fragment,{children:[(0,se.jsx)(Ra,{size:16}),"Sort descending"]}):t.column.getNextSortingOrder()==="asc"?(0,se.jsxs)(se.Fragment,{children:[(0,se.jsx)(Xo,{size:16}),"Sort ascending"]}):(0,se.jsxs)(se.Fragment,{children:[(0,se.jsx)(dr,{size:16}),"Cancel sorting"]})})}),(0,se.jsx)(hs,{onClick:()=>t.column.pin(t.column.getIsPinned()?!1:"left"),children:t.column.getIsPinned()?(0,se.jsxs)("span",{className:"ps-flex ps-items-center ps-gap-2",children:[(0,se.jsx)(ir,{size:16}),"Unpin column"]}):(0,se.jsxs)("span",{className:"ps-flex ps-items-center ps-gap-2",children:[(0,se.jsx)(ur,{size:16}),"Pin column"]})})]})]})]})]}),t.column.getCanResize()&&(0,se.jsx)("button",{type:"button",tabIndex:0,onMouseDown:o=>{o.stopPropagation(),t.getResizeHandler()(o)},onTouchStart:o=>{o.stopPropagation(),t.getResizeHandler()(o)},onClick:o=>o.stopPropagation(),onKeyDown:o=>{(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),o.stopPropagation(),t.getResizeHandler()(o))},className:K("ps-absolute ps-right-0 ps-top-0 ps-h-full ps-w-px ps-cursor-col-resize ps-border ps-border-transparent hover:ps-border-table-border"),"aria-label":"Resize column"})]})}C();var ei=require("react/jsx-runtime");function wp({className:e}){return(0,ei.jsx)("div",{"data-loading-bar":!0,className:K("ps-h-[2px] ps-w-full ps-overflow-hidden ps-bg-gray-200 ps-z-50",e),children:(0,ei.jsx)("div",{className:"ps-animate-indeterminate-bar ps-h-full ps-w-1/3 ps-rounded-r-full ps-bg-purple-600"})})}C();C();var Lp=Ce(require("react"),1);var Ip=require("react/jsx-runtime"),Ca=Lp.forwardRef(({className:e,type:t,...a},o)=>(0,Ip.jsx)("input",{type:t,className:K("ps-flex ps-h-9 ps-w-full ps-rounded-md ps-border ps-border-input ps-bg-transparent ps-px-3 ps-py-1 ps-shadow-sm ps-transition-colors file:ps-border-0 file:ps-bg-transparent file:ps-text-sm file:ps-font-medium file:ps-text-foreground placeholder:ps-text-muted-foreground focus-visible:ps-outline-none focus-visible:ps-ring-1 focus-visible:ps-ring-ring disabled:ps-cursor-not-allowed disabled:ps-opacity-50",e),ref:o,...a}));Ca.displayName="Input";var qe=require("react/jsx-runtime");function Sp(e){let{table:t,variant:a="basic"}=e,{pageIndex:o}=t.getState().pagination,r=t.getPageCount();return(0,qe.jsx)("div",{className:"ps-rounded-b-lg ps-overflow-clip ps-sticky ps-bottom-0 ps-left-0 ps-border-t-0 w-full ps-z-20 ps-p-0",children:(0,qe.jsx)("div",{className:"ps-flex ps-items-center ps-justify-between ps-space-x-2 ps-py-2 ps-px-2 ps-border-t ps-border-table-border ps-backdrop-blur-sm ps-bg-table-head/90",children:a==="basic"?(0,qe.jsxs)("div",{className:"ps-flex ps-items-center ps-space-x-2",children:[(0,qe.jsx)(Xe,{variant:"outline",size:"sm",className:"ps-h-9",onClick:()=>t.previousPage(),disabled:!t.getCanPreviousPage(),children:"Previous"}),(0,qe.jsx)(Xe,{variant:"outline",size:"sm",className:"ps-h-9",onClick:()=>t.nextPage(),disabled:!t.getCanNextPage(),children:"Next"})]}):(0,qe.jsx)("div",{className:"ps-flex ps-items-center ps-space-x-2",children:(0,qe.jsxs)("div",{className:"ps-flex ps-items-center ps-space-x-2",children:[(0,qe.jsx)(Xe,{variant:"outline",onClick:()=>t.setPageIndex(0),disabled:!t.getCanPreviousPage(),children:(0,qe.jsx)(Yo,{className:"ps-w-4 ps-h-4"})}),(0,qe.jsx)(Xe,{variant:"outline",onClick:()=>t.previousPage(),disabled:!t.getCanPreviousPage(),children:(0,qe.jsx)(Jo,{className:"ps-w-4 ps-h-4"})}),(0,qe.jsxs)("div",{className:"ps-flex ps-items-center ps-gap-1 ps-text-xs ps-font-medium",children:["Page",(0,qe.jsx)(Ca,{type:"number",min:1,max:r,value:o+1,className:"ps-w-16",onChange:n=>{let s=n.target.value?Number(n.target.value)-1:0;t.setPageIndex(s)}}),(0,qe.jsxs)("span",{className:"ps-shrink-0 ps-w-max",children:["of ",r]})]}),(0,qe.jsx)(Xe,{variant:"outline",onClick:()=>t.nextPage(),disabled:!t.getCanNextPage(),children:(0,qe.jsx)(sa,{className:"ps-w-4 ps-h-4"})}),(0,qe.jsx)(Xe,{variant:"outline",onClick:()=>t.setPageIndex(r-1),disabled:!t.getCanNextPage(),children:(0,qe.jsx)(er,{className:"ps-w-4 ps-h-4"})})]})})})})}C();function wa(e){let t=e.getIsPinned(),a=t==="right"&&e.getIsFirstColumn("right");return{className:K("ps-group ps-border-r ps-border-b ps-border-table-border last:ps-border-r-0","ps-overflow-hidden ps-whitespace-nowrap ps-text-ellipsis",t&&["ps-sticky ps-bg-background ps-z-20",t==="left"?"ps-left-0":"ps-right-0"],!t&&"ps-relative ps-z-10",t&&a&&"ps-shadow-[-1px_0_0_0_hsl(var(--border))]"),style:{width:e.getSize(),left:t==="left"?`${e.getStart("left")}px`:void 0,right:t==="right"?`${e.getAfter("right")}px`:void 0}}}var xe=require("react/jsx-runtime"),gb=e=>{let{children:t,className:a,header:o,style:r}=e,{attributes:n,listeners:s,transform:i,transition:l,setNodeRef:u,isDragging:d}=(0,Va.useSortable)({id:o.id});return(0,xe.jsx)(ds,{ref:u,...n,...s,style:{cursor:"grab",touchAction:"none",transform:Pp.CSS.Transform.toString(i),transition:l,...r,"--dragging-width":`${o.getSize()}px`},className:K(a,"ps-select-none ps-touch-none ps-sticky ps-top-0 ps-z-20 ps-bg-table-head",o.column.getIsPinned()&&"ps-sticky ps-z-30",d&&"!ps-z-50 ps-w-[var(--dragging-width)] ps-border-2 ps-border-violet-500"),children:(0,xe.jsx)("div",{className:"ps-w-full",children:t})})};function Mp(e){let{columnDefs:t,getBeforeRows:a,isLoading:o,isProcessing:r,onPaginationChange:n,onRowSelectionChange:s,onSortingChange:i,pageCount:l,paginationState:u,rows:d,rowSelectionState:c,sortingState:p}=e,[f,m]=(0,Ha.useState)([]),[g,h]=(0,Ha.useState)({left:["__ps_select"],right:[]}),[x,y]=(0,Ha.useState)({}),b=(0,Ha.useMemo)(()=>kp(p),[p]),w=o||r;(0,Ha.useEffect)(()=>m(t.map(({accessorKey:L})=>L)),[]);function I({active:L,over:S}){S&&L.id!==S.id&&m(H=>{let R=H.indexOf(L.id),G=H.indexOf(S.id);return(0,Va.arrayMove)(H,R,G)})}let O=(0,_a.useSensor)(_a.MouseSensor,{activationConstraint:{distance:10}}),D=(0,_a.useSensors)(O),T=(0,No.useReactTable)({columnResizeMode:"onChange",columns:t,data:d,defaultColumn:{size:200,minSize:50,maxSize:500},enableColumnPinning:!0,enableColumnResizing:!0,enableRowSelection:!0,enableSorting:!!(i&&p),getCoreRowModel:(0,No.getCoreRowModel)(),getRowId:({__ps_rowid:L})=>L,manualPagination:!0,manualSorting:!0,onColumnOrderChange:m,onColumnPinningChange:h,onColumnSizingChange:y,onPaginationChange:n,onRowSelectionChange:s,onSortingChange:L=>i?.(S=>(typeof L=="function"&&(L=L(kp(S))),hb(L))),pageCount:l,state:{columnOrder:f,columnPinning:g,columnSizing:x,pagination:u,rowSelection:c,sorting:b}});return(0,xe.jsxs)(xe.Fragment,{children:[process.env.NODE_ENV==="production"?null:(0,xe.jsx)(xp,{table:T}),(0,xe.jsxs)("div",{"data-studio":"content",className:"ps-flex-1 ps-w-0 ps-h-0 ps-min-w-full ps-flex ps-flex-col ps-relative ps-bg-slate-100",children:[(0,xe.jsx)("div",{children:w&&(0,xe.jsx)(wp,{className:"ps-absolute -ps-top-[1px] ps-left-0 ps-right-0"})}),(0,xe.jsx)(_a.DndContext,{sensors:D,onDragEnd:I,children:(0,xe.jsxs)(Rl,{className:"ps-table-fixed ps-border-separate ps-border-spacing-0 ps-box-border",children:[(0,xe.jsx)("colgroup",{children:(0,xe.jsx)("col",{style:{width:"40px",minWidth:0,maxWidth:"40px"}})}),(0,xe.jsx)(Dl,{children:T.getHeaderGroups().map(L=>(0,xe.jsx)(po,{children:(0,xe.jsx)(Va.SortableContext,{items:L.headers.filter(S=>S.id!=="__ps_select").map(S=>S.id),strategy:Va.horizontalListSortingStrategy,children:L.headers.map(S=>S.id==="__ps_select"?(0,xe.jsx)(ds,{style:wa(S.column).style,className:K(wa(S.column).className,"ps-select-none ps-sticky ps-top-0 ps-z-20 ps-bg-table-head ps-p-0 ps-table-cell-select",S.column.getIsPinned()&&"ps-sticky ps-z-30"),children:(0,xe.jsx)("div",{className:"ps-flex ps-items-center ps-justify-center ps-h-full",children:(0,No.flexRender)(S.column.columnDef.header,S.getContext())})},S.id):(0,xe.jsx)(gb,{header:S,table:T,...wa(S.column),children:(0,xe.jsx)(Cp,{header:S})},S.id))})},L.id))}),(0,xe.jsxs)(El,{children:[a?.(T),T.getRowModel().rows?.length?T.getRowModel().rows.map(L=>(0,xe.jsx)(po,{className:K("ps-bg-table-row ps-odd:bg-table-row-odd ps-group [&:last-of-type_td]:ps-border-b-0"),children:L.getVisibleCells().map((S,H)=>{if(S.column.id==="__ps_select")return(0,xe.jsx)($o,{style:wa(S.column).style,className:K(wa(S.column).className,"ps-table-cell-select"),children:typeof S.column.columnDef.cell=="function"&&(R=>{let G=S.column.columnDef.cell(S.getContext());return(0,xe.jsx)(G,{className:"ps-w-full ps-h-full"})})({className:""})},S.id);if(typeof S.column.columnDef.cell=="function"){let R=S.column.columnDef.cell(S.getContext());return(0,xe.jsx)(R,{...wa(S.column)},H)}return null})},L.id)):(0,xe.jsx)(po,{children:(0,xe.jsx)($o,{colSpan:t.length,className:"ps-h-24 ps-text-center",children:o?"Loading...":"No results."})})]})]})}),!l||l<2?null:(0,xe.jsx)(Sp,{table:T,variant:"numeric"})]})]})}function kp(e){return e?.map(t=>({id:t.column,desc:t.direction==="desc"}))||[]}function hb(e){return e.map(t=>({column:t.id,direction:t.desc?"desc":"asc"}))}C();C();var $t=Ce(require("@radix-ui/react-tooltip"),1),Ap=Ce(require("react"),1);var ti=require("react/jsx-runtime"),Tp=$t.Provider,Rp=$t.Root,Dp=$t.Trigger,ai=Ap.forwardRef(({className:e,sideOffset:t=4,...a},o)=>(0,ti.jsx)($t.Portal,{children:(0,ti.jsx)($t.Content,{ref:o,sideOffset:t,className:K("ps-z-50 ps-overflow-hidden ps-rounded-md ps-bg-primary ps-px-3 ps-py-1.5 ps-text-xs ps-text-primary-foreground ps-animate-in ps-fade-in-0 ps-zoom-in-95 data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=closed]:ps-zoom-out-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-tooltip-content-transform-origin]",e),...a})}));ai.displayName=$t.Content.displayName;var kt=require("react/jsx-runtime");function Ep({column:e}){return e.isInPrimaryKey?(0,kt.jsxs)("span",{className:"ps-flex ps-flex-row ps-font-medium ps-items-center ps-gap-1",children:[(0,kt.jsx)(Tp,{delayDuration:300,children:(0,kt.jsxs)(Rp,{children:[(0,kt.jsx)(Dp,{asChild:!0,children:(0,kt.jsx)(or,{size:12})}),(0,kt.jsx)(ai,{children:(0,kt.jsx)("p",{children:"Primary Key"})})]})}),e.name]}):(0,kt.jsxs)("div",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center",children:[(0,kt.jsx)("span",{className:"ps-font-medium ps-truncate",children:e.name}),(0,kt.jsx)("span",{className:"ps-overflow-hidden ps-text-ellipsis ps-text-muted-foreground/70 ps-lowercase ps-truncate",children:e.datatype.name})]})}C();var Zp=require("remeda");C();var ni=require("motion/react"),Zr=Ce(require("react"),1);C();var oi=Ce(require("@radix-ui/react-label"),1),Fp=require("class-variance-authority"),Op=Ce(require("react"),1);var Bp=require("react/jsx-runtime"),xb=(0,Fp.cva)("ps-text-sm ps-font-medium ps-leading-none peer-disabled:ps-cursor-not-allowed peer-disabled:ps-opacity-70"),Qr=Op.forwardRef(({className:e,...t},a)=>(0,Bp.jsx)(oi.Root,{ref:a,className:K(xb(),e),...t}));Qr.displayName=oi.Root.displayName;C();var jr=Ce(require("@radix-ui/react-switch"),1),$p=Ce(require("react"),1);var ri=require("react/jsx-runtime"),Xr=$p.forwardRef(({className:e,...t},a)=>(0,ri.jsx)(jr.Root,{className:K("ps-peer ps-inline-flex ps-h-5 ps-w-9 ps-shrink-0 ps-cursor-pointer ps-items-center ps-rounded-full ps-border-2 ps-border-transparent ps-shadow-sm ps-transition-colors focus-visible:ps-outline-none focus-visible:ps-ring-2 focus-visible:ps-ring-ring focus-visible:ps-ring-offset-2 focus-visible:ps-ring-offset-background disabled:ps-cursor-not-allowed disabled:ps-opacity-50 data-[state=checked]:ps-bg-primary data-[state=unchecked]:ps-bg-input",e),...t,ref:a,children:(0,ri.jsx)(jr.Thumb,{className:K("ps-pointer-events-none ps-block ps-h-4 ps-w-4 ps-rounded-full ps-bg-background ps-shadow-lg ps-ring-0 ps-transition-transform data-[state=checked]:ps-translate-x-4 data-[state=unchecked]:ps-translate-x-0")})}));Xr.displayName=jr.Root.displayName;C();var at=require("react/jsx-runtime"),ut=({onSave:e,onCancel:t,onClose:a,onNullChange:o,isNull:r=!1,readonly:n})=>(0,at.jsx)("div",{className:"ps-flex ps-flex-row ps-gap-1 ps-border-t ps-border-table-border ps-text-xs ps-",children:!n&&(0,at.jsxs)(at.Fragment,{children:[(0,at.jsxs)("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-mr-auto",children:[(0,at.jsxs)("button",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center ps-cursor-pointer",onClick:()=>{e&&e(),a&&a()},children:[(0,at.jsx)("kbd",{className:"ps-inline-flex ps-justify-center ps-items-center ps-h-6 ps-w-6 ps-rounded-md ps-bg-muted ps-text-muted-foreground",children:(0,at.jsx)(ar,{size:12,strokeWidth:2})})," ","Save changes"]}),(0,at.jsxs)("button",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center ps-cursor-pointer",onClick:()=>{t&&t(),a&&a()},children:[(0,at.jsx)("kbd",{className:"ps-inline-flex ps-justify-center ps-items-center ps-h-6 ps-w-6 ps-rounded-md ps-bg-muted ps-text-muted-foreground ps-text-[8px] ps-leading-none ps-font-semibold",children:"Esc"})," ","Cancel changes"]})]}),o&&(0,at.jsx)("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2",children:(0,at.jsxs)("label",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center",htmlFor:"set-nullable",children:[(0,at.jsx)(Xr,{id:"set-nullable",checked:r,onCheckedChange:u=>{o&&o(u)}}),(0,at.jsx)("span",{children:"Set to NULL"})]})})]})});var qt=require("react/jsx-runtime");function qp(e){let{value:t,onSubmit:a,column:o,readonly:r}=e,n=o.nullable===!0,[s,i]=(0,Zr.useState)(t===null?!1:t),[l,u]=(0,Zr.useState)(t===null),d=t===null?!1:t,c=x=>{i(x)},p=x=>{u(x)},f=Zr.default.useCallback(()=>{let x=l?null:s;return x!==t?(a(x),!0):!1},[s,t,a,l]),m=()=>{i(d),u(t===null)},{handleSave:g,handleCancel:h}=it({onSave:f,onCancel:m,readonly:r});return(0,qt.jsxs)(qt.Fragment,{children:[(0,qt.jsxs)("div",{className:"ps-flex ps-flex-row ps-items-center ps-h-[var(--studio-cell-height)] ps-gap-4 ps-py-0 ps-px-2",children:[(0,qt.jsx)(Qr,{htmlFor:"boolean-input",className:"ps-sr-only",children:"Boolean"}),(0,qt.jsx)(ni.motion.div,{className:"ps-flex ps-items-center",initial:{opacity:0},animate:{opacity:1},transition:{duration:.24},children:(0,qt.jsx)(Xr,{id:"boolean-input",checked:s,onCheckedChange:c,disabled:l||r})}),(0,qt.jsx)(ni.motion.div,{"data-value":!0,className:"ps-inline-flex ps-items-center ps-text-xs ps-text-muted-foreground ps-font-mono",initial:{x:-40,opacity:1},animate:{x:0,opacity:1},transition:{duration:.12,delay:0},children:l?"NULL":String(s)})]}),(0,qt.jsx)(ut,{onSave:g,onCancel:h,onNullChange:n?p:void 0,isNull:l,readonly:r})]})}C();var si=Ce(require("dayjs"),1),zp=Ce(require("dayjs/plugin/localizedFormat"),1),xs=require("react");C();var Np=require("react");function zo(e){let{initialValue:t}=e,[a,o]=(0,Np.useState)(t??"");return{handleOnChange:n=>{o(n.target.value)},value:a}}var Pt=require("react/jsx-runtime");si.default.extend(zp.default);function Up(e){let{onSubmit:t,value:a,readonly:o}=e,r=String(a),{handleOnChange:n,value:s}=zo({initialValue:r}),i=(0,xs.useMemo)(()=>{try{let f=(0,si.default)(s);return f.isValid()?s.includes(":")?f.format("LL LTS"):f.format("LL"):s}catch{return s}},[s]);function l(f){f.preventDefault(),s!==r&&t(s)}let u=(0,xs.useCallback)(()=>s!==r?(t(s),!0):!1,[s,r,t]),d=()=>{},{handleSave:c,handleCancel:p}=it({onSave:u,onCancel:d,readonly:o});return(0,Pt.jsxs)(Pt.Fragment,{children:[(0,Pt.jsxs)("form",{onSubmit:l,children:[(0,Pt.jsx)(Ca,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:n,type:"text",value:s}),(0,Pt.jsx)("input",{type:"submit",className:"ps-sr-only"})]}),(0,Pt.jsxs)("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-border-t ps-border-table-border",children:[(0,Pt.jsx)("div",{className:"ps-text-xs ps-text-muted-foreground",children:"Formatted value"}),(0,Pt.jsx)("div",{className:"ps-text-xs ps-font-mono ps-text-foreground",children:i})]}),(0,Pt.jsx)(ut,{onSave:c,onCancel:p,readonly:o})]})}C();var Jr=require("react");C();var Hp=require("class-variance-authority");var yb=require("react/jsx-runtime"),_p=(0,Hp.cva)("ps-inline-flex ps-items-center ps-rounded-md ps-border ps-px-2.5 ps-py-0.5 ps-text-xs ps-font-semibold ps-transition-colors focus:ps-outline-none focus:ps-ring-2 focus:ps-ring-ring focus:ps-ring-offset-2",{variants:{variant:{default:"ps-border-transparent ps-bg-primary ps-text-primary-foreground ps-shadow hover:ps-bg-primary/80",secondary:"ps-border-transparent ps-bg-secondary ps-text-secondary-foreground hover:ps-bg-secondary/80",destructive:"ps-border-transparent ps-bg-destructive ps-text-destructive-foreground ps-shadow hover:ps-bg-destructive/80",outline:"ps-text-foreground"}},defaultVariants:{variant:"default"}});var La=require("react/jsx-runtime");function Vp(e){let{onSubmit:t,column:a,value:o,options:r=[],readonly:n}=e,s=a.nullable===!0,i=String(o),[l,u]=(0,Jr.useState)(i),[d,c]=(0,Jr.useState)(o===null),p=y=>{u(y)},f=y=>{c(y)},m=(0,Jr.useCallback)(()=>d?o!==null?(t(null),!0):!1:l!==i?(t(l),!0):!1,[l,i,t,d,o]),g=()=>{u(i),c(o===null)},{handleSave:h,handleCancel:x}=it({onSave:m,onCancel:g,readonly:n});return(0,La.jsxs)(La.Fragment,{children:[(0,La.jsx)("div",{className:"ps-flex ps-items-center ps-gap-2 ps-font-mono ps-h-[var(--studio-cell-height)] ps-px-2 ps-py-0 ps-w-full ps-text-xs ps-text-muted-foreground",children:l}),(0,La.jsx)("div",{className:"ps-flex ps-flex-row ps-flex-wrap ps-gap-2 ps-p-2 ps-min-w-[var(--radix-popover-trigger-width)] ps-max-w-min ps-border-t ps-border-table-border ps-overflow-y-scroll ps-max-h-32",children:r.map(y=>(0,La.jsx)("button",{onClick:()=>p(y),className:_p({variant:y===l?"default":"outline"}),disabled:d||n,children:y},y))}),(0,La.jsx)(ut,{onSave:h,onCancel:x,onNullChange:s?f:void 0,isNull:d,readonly:n})]})}C();var Yr=Ce(require("react"),1);var Ka=require("react/jsx-runtime");function Kp(e){let{value:t,onSubmit:a,column:o,readonly:r}=e,n=o.nullable===!0,s=t===null?"":JSON.stringify(t,null,2),[i,l]=(0,Yr.useState)(s),[u,d]=(0,Yr.useState)(t===null),c=x=>{l(x.target.value)},p=x=>{d(x)},f=Yr.default.useCallback(()=>{if(u)return t!==null?(a(null),!0):!1;let x=i===""?null:JSON.parse(i);return x!==t?(a(x),!0):!1},[i,t,a,u]),m=()=>{l(s),d(t===null)},{handleSave:g,handleCancel:h}=it({onSave:f,onCancel:m,readonly:r});return(0,Ka.jsxs)(Ka.Fragment,{children:[(0,Ka.jsx)("div",{className:"ps-flex ps-flex-row ps-items-center ps-gap-4 ps-py-0",children:(0,Ka.jsx)("textarea",{rows:5,value:i,onChange:c,disabled:u||r,className:"ps-cell-input-base ps-appearance-none ps-w-full ps-font-mono ps-border-none ps-outline-none ps-shadow-none ps-bg-transparent focus-visible:ps-ring-0 ps-resize ps-px-[var(--studio-cell-spacing)]",lang:"en_EN"})}),(0,Ka.jsx)(ut,{onSave:g,onCancel:h,onNullChange:n?p:void 0,isNull:u,readonly:r})]})}C();var en=Ce(require("react"),1);var Ia=require("react/jsx-runtime");function Gp(e){let{value:t,onSubmit:a,column:o,readonly:r}=e,n=o.nullable===!0,[s,i]=(0,en.useState)(t===null?"":String(t)),[l,u]=(0,en.useState)(t===null),d=t===null?"":String(t),c=x=>{i(x.target.value)},p=x=>{u(x)},f=en.default.useCallback(()=>{if(l)return t!==null?(a(null),!0):!1;let x=s===""?null:Number(s);return s!==t?(a(x),!0):!1},[s,t,a,l]),m=()=>{i(d),u(t===null)},{handleSave:g,handleCancel:h}=it({onSave:f,onCancel:m,readonly:r});return(0,Ia.jsxs)(Ia.Fragment,{children:[(0,Ia.jsxs)("div",{className:"ps-flex ps-flex-row ps-items-center ps-h-[var(--studio-cell-height)] ps-gap-4 ps-py-0",children:[(0,Ia.jsx)(Qr,{htmlFor:"numeric-input",className:"ps-sr-only",children:"Numeric"}),(0,Ia.jsx)("input",{type:"text",inputMode:"numeric",pattern:"\\d*",value:s,onChange:c,disabled:l||r,className:"ps-cell-input-leading ps-appearance-none ps-w-full ps-font-mono ps-border-none ps-outline-none ps-shadow-none ps-bg-transparent focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",step:"any",lang:"en_EN"})]}),(0,Ia.jsx)(ut,{onSave:g,onCancel:h,onNullChange:n?p:void 0,isNull:l,readonly:r})]})}C();var Wp=Ce(require("react"),1);var Sa=require("react/jsx-runtime");function Qp(e){let{onSubmit:t,value:a,readonly:o}=e,r=String(a),{handleOnChange:n,value:s}=zo({initialValue:r});function i(p){p.preventDefault(),s!==r&&t(s)}let l=Wp.default.useCallback(()=>s!==r?(t(s),!0):!1,[s,r,t]),u=()=>{},{handleSave:d,handleCancel:c}=it({onSave:l,onCancel:u,readonly:o});return(0,Sa.jsxs)(Sa.Fragment,{children:[(0,Sa.jsxs)("form",{onSubmit:i,children:[(0,Sa.jsx)(Ca,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:n,type:"text",value:s,disabled:o}),(0,Sa.jsx)("input",{type:"submit",className:"ps-sr-only"})]}),(0,Sa.jsx)(ut,{onSave:d,onCancel:c,readonly:o})]})}C();var li=Ce(require("dayjs"),1),jp=Ce(require("dayjs/plugin/localizedFormat"),1),ys=require("react");var Mt=require("react/jsx-runtime");li.default.extend(jp.default);function Xp(e){let{onSubmit:t,value:a,readonly:o}=e,r=String(a),{handleOnChange:n,value:s}=zo({initialValue:r}),i=(0,ys.useMemo)(()=>{try{if(!s.includes(":"))return s;let f=/[+-]\d{2}(:\d{2})?$/.test(s),m=(0,li.default)(`2000-01-01 ${s}`);if(m.isValid())return m.format("h:mm A")+(f?` (${m.format("Z")})`:"");let g=/(\d{1,2}):(\d{2}):(\d{2})(?:\.\d+)?([+-]\d{2}(?::\d{2})?)?/,h=s.match(g);if(h){let x=parseInt(h[1]||"12",10),y=h[2]||"00",b=h[4]||"",w=x>=12?"PM":"AM";return`${x%12===0?12:x%12}:${y} ${w}${b?` (${b})`:""}`}return s}catch{return s}},[s]);function l(f){f.preventDefault(),s!==r&&t(s)}let u=(0,ys.useCallback)(()=>s!==r?(t(s),!0):!1,[s,r,t]),d=()=>{},{handleSave:c,handleCancel:p}=it({onSave:u,onCancel:d,readonly:o});return(0,Mt.jsxs)(Mt.Fragment,{children:[(0,Mt.jsxs)("form",{onSubmit:l,children:[(0,Mt.jsx)(Ca,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:n,type:"text",value:s}),(0,Mt.jsx)("input",{type:"submit",className:"ps-sr-only"})]}),(0,Mt.jsxs)("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-border-t ps-border-table-border",children:[(0,Mt.jsx)("div",{className:"ps-text-xs ps-text-muted-foreground",children:"Formatted value"}),(0,Mt.jsx)("div",{className:"ps-text-xs ps-font-mono ps-text-foreground",children:i})]}),(0,Mt.jsx)(ut,{onSave:c,onCancel:p,readonly:o})]})}var Ga=require("react/jsx-runtime");function vs(e){let{cell:t,column:a,onSubmit:o}=e,{group:r,options:n,isArray:s}=a.datatype,i=a.isComputed||e.readonly,l=t.getValue(),u=l===void 0?"":l;return r==="datetime"?(0,Ga.jsx)(Up,{onSubmit:o,value:u,column:a,readonly:i}):r==="time"?(0,Ga.jsx)(Xp,{onSubmit:o,value:u,column:a,readonly:i}):r==="json"||s?(0,Ga.jsx)(Kp,{onSubmit:o,value:u,column:a,readonly:i}):r==="boolean"?(0,Ga.jsx)(qp,{onSubmit:o,value:u,column:a,readonly:i}):r==="enum"?(0,Ga.jsx)(Vp,{onSubmit:o,value:u,options:n,column:a,readonly:i}):r==="numeric"?(0,Ga.jsx)(Gp,{onSubmit:o,value:u,column:a,readonly:i}):(0,Ga.jsx)(Qp,{onSubmit:o,value:(0,Zp.isObjectType)(u)?JSON.stringify(u):u,readonly:i})}C();var Jp=require("@tanstack/react-table"),Yp=require("remeda");var Wa=require("react/jsx-runtime");function em(e){let{table:t,stagedRows:a,setStagedRows:o}=e,r=!!rs();function n(l,u){o(d=>{let c=[...d];return c[l]={...c[l],...u},c})}let s=Object.values(t.options.columns).map(l=>l.id==="__ps_select"?{...l,cell(){return()=>(0,Wa.jsx)(Kr,{})}}:{...l,cell({cell:u}){return d=>(0,Wa.jsx)(ms,{cellComponent:ps({cell:u,column:l.meta,props:d}),inputComponent:vs({cell:u,column:l.meta,onSubmit(c){n(d.rowIndex,{[l.id]:c})},readonly:r})})}}),i=(0,Jp.useReactTable)({...t.options,columns:s,enableSorting:!1,onPaginationChange:void 0,onSortingChange:void 0,data:a,state:(0,Yp.omit)(t.options.state,["pagination","sorting"])});return(0,Wa.jsx)(Wa.Fragment,{children:i.getRowModel().rows.map((l,u)=>(0,Wa.jsx)(po,{children:l.getVisibleCells().map((d,c)=>{if(typeof d.column.columnDef.cell=="function"){let p=d.column.columnDef.cell(d.getContext());return(0,Wa.jsx)(p,{...wa(d.column),rowIndex:u},c)}return null})},u))})}var Pe=require("react/jsx-runtime");function om(e){let t=!!(0,tm.useIsMutating)(),{activeTable:a,onError:o,isFullscreen:r,toggleFullscreen:n}=Ke(),{sortingState:s,setSortingState:i}=_f(),{paginationState:l,setPaginationState:u}=ss(),[d,c]=(0,bs.useState)([]),{data:p,isFetching:f}=$f({...l,sortOrder:s}),{deleteSelection:m,isSelecting:g,rowSelectionState:h,setRowSelectionState:x}=Hf(p),y=!Object.values(a?.columns??{}).some(G=>G.isInPrimaryKey),b=rs(),w=Of(),I=qf();if((0,bs.useEffect)(()=>c([]),[a]),!a)return null;function O(){w.mutate(d,{onError:o,onSuccess(){am.toast.success("Rows inserted successfully"),c([])}})}function D(){c(G=>[...G,{}])}function T(){c([])}function L(G,ae,fe){I.mutate({details:{changes:{[ae.name]:G},row:fe,table:a},options:{}})}let S=Object.values(a?.columns??{}).map(G=>({id:G.name,accessorKey:G.name,meta:G,header(){return Ep({column:G})},cell({cell:ae}){return fe=>(0,Pe.jsx)(ms,{cellComponent:ps({cell:ae,column:G,props:fe}),inputComponent:vs({cell:ae,column:G,readonly:y,onSubmit(ce){return L(ce,G,ae.row.original)}})})}})),H=[{id:"__ps_select",accessorKey:"__ps_select",enablePinning:!1,meta:{disableDragging:!0},header({table:G}){return(0,Pe.jsx)(fr,{checked:G.getIsAllRowsSelected(),onCheckedChange:ae=>G.toggleAllRowsSelected(!!ae),disabled:y})},cell({row:G}){return()=>(0,Pe.jsx)(Ql,{row:G,readonly:y})}}],R=[...S,...H].sort(bb);return(0,Pe.jsxs)(Pe.Fragment,{children:[(0,Pe.jsx)("div",{className:"ps-bg-studio-header-background ps-flex ps-w-full ps-p-2 ps-py-3 ps-border-b ps-bg-card ps-rounded-t-lg",children:(0,Pe.jsx)("div",{className:"ps-flex ps-items-center ps-justify-between ps-w-full ps-gap-2",children:(0,Pe.jsxs)("div",{className:"ps-flex ps-flex-grow ps-justify-between ps-items-center",children:[(0,Pe.jsxs)("div",{className:"ps-flex ps-items-center ps-gap-2",children:[(0,Pe.jsx)(Xe,{variant:"outline",size:"sm",onClick:D,disabled:b>0,children:"Insert row"}),d.length>0&&(0,Pe.jsxs)(Pe.Fragment,{children:[(0,Pe.jsx)(Xe,{variant:"secondary",size:"sm",onClick:O,children:"Save"}),(0,Pe.jsx)(Xe,{variant:"ghost",size:"sm",onClick:T,children:"Cancel"})]}),g&&(0,Pe.jsx)(Pe.Fragment,{children:(0,Pe.jsx)(Xe,{variant:"secondary",size:"sm",onClick:m,children:"Delete"})})]}),(0,Pe.jsx)(Xe,{variant:"outline",size:"icon",onClick:n,children:r?(0,Pe.jsx)(nr,{}):(0,Pe.jsx)(rr,{})})]})})}),(0,Pe.jsx)(Mp,{columnDefs:R,getBeforeRows:G=>(0,Pe.jsx)(em,{table:G,stagedRows:d,setStagedRows:c}),isLoading:f,isProcessing:t,onPaginationChange:u,onRowSelectionChange:x,onSortingChange:i,pageCount:vb(p?.filteredRowCount??1/0,l.pageSize),paginationState:l,rows:p?.rows??[],rowSelectionState:h,sortingState:s})]})}function vb(e,t){if(e===1/0)return;let a=Number((BigInt(e)+BigInt(t)-BigInt(1))/BigInt(t));return Number.isSafeInteger(a)?a:Number.MAX_SAFE_INTEGER}function bb(e,t){let a=e.meta,o=t.meta;return e.id==="__ps_select"||t.id==="__ps_select"?1:a===void 0||o===void 0?0:a.isInPrimaryKey&&!o.isInPrimaryKey?-1:!a.isInPrimaryKey&&o.isInPrimaryKey?1:a.name.localeCompare(o.name)}C();var dm=require("@radix-ui/react-slot");C();var nm=require("react/jsx-runtime");function rm({className:e,...t}){return(0,nm.jsx)("div",{className:K("ps-animate-pulse ps-rounded-md ps-bg-primary/10",e),...t})}C();var Qa=require("react"),im=require("uuid");C();var sm=require("@tanstack/react-query");var Cs=-1;function lm(){let{adapter:e}=Ke();return(0,sm.useQuery)({initialData:{schemas:{[e.defaultSchema||"db"]:{tables:{}}},timezone:"UTC"},initialDataUpdatedAt:Cs,queryFn:async({signal:t})=>{let[a,o]=await e.introspect({abortSignal:t});if(a)throw a;return o},queryKey:["introspection"],staleTime:t=>t.state.dataUpdatedAt===Cs?0:1/0})}function um(){let{activeTable:e,setActiveTable:t,adapter:a,emitTelemetryEvent:o}=Ke(),{data:r,dataUpdatedAt:n}=lm(),s=n===Cs,i=(0,Qa.useMemo)(()=>Object.values(r.schemas[a.defaultSchema||"db"]?.tables||{}),[r.schemas,a.defaultSchema]),l=(0,Qa.useMemo)(()=>Object.values(r.schemas).reduce((g,h)=>g+Object.keys(h.tables).length,0),[r.schemas]),[u]=i,[d,c]=Vr({table:{defaultValue:null,parse:g=>g,serialize:g=>g??""},schema:{defaultValue:"",parse:g=>g,serialize:g=>g??""}}),[,p]=Bo("pageIndex",{parse:g=>g,serialize:g=>g??""}),[,f]=Bo("sort",{parse:g=>g,serialize:g=>g??""});(0,Qa.useEffect)(()=>{if(!s){if(d?.table&&i.length>0){let g=i.find(h=>h.name===d.table);if(g){t(g);return}}i.length>0&&!e&&(t(u||null),u&&c({table:u.name,schema:u.schema}))}},[s,d,i,u,e,t,c]);let m=(0,Qa.useCallback)(g=>{e!==g&&(t(g),c({table:g.name,schema:g.schema}),p(null),f(null))},[e,t,c,p,f]);return(0,Qa.useEffect)(()=>{n!==-1&&o({event:"studio_launched",payload:{event_id:(0,im.v4)(),timestamp:new Date().toISOString(),table_count:l}})},[i,o,n,l]),{tables:i,activeTable:e,isLoading:s,handleTableChange:m}}var dt=require("react/jsx-runtime");function ja(){let{tables:e,activeTable:t,isLoading:a,handleTableChange:o}=um();return(0,dt.jsx)("div",{className:"ps-flex ps-flex-col ps-w-64 ps-gap-4 ps-shrink-0 ps-overflow-y-auto ps-max-h-full ps-min-h-0 ps-rounded-lg ps-border ps-bg-card ps-text-card-foreground ps-shadow-xs",children:(0,dt.jsx)(ja.Block,{label:"Tables",children:e.length>0?e.map(r=>(0,dt.jsx)(ja.Item,{isActive:t===r,onClick:()=>{o(r)},className:"ps-py-1 ps-font-mono ps-text-xs ps-text-foreground/60 hover:ps-text-foreground ps-transition-all ps-cursor-pointer data-[active=true]:ps-bg-primary/5 data-[active=true]:ps-foreground data-[active=true]:ps-text-foreground",children:r.name},`${r.schema}-${r.name}`)):a?Array(4).fill(null).map((r,n)=>(0,dt.jsx)(ja.Item,{wrapChildrenInSpan:!1,children:(0,dt.jsx)(rm,{className:"ps-h-3 ps-w-full"})},n)):(0,dt.jsx)(ja.Item,{children:"No tables found"})})})}var Cb=({className:e,label:t,children:a,...o})=>(0,dt.jsxs)("div",{className:e,...o,children:[(0,dt.jsx)("div",{className:"ps-pt-4 ps-pb-2 ps-px-4 ps-sticky ps-top-0 ps-bg-card",children:(0,dt.jsx)("h2",{className:"ps-text-sm ps-font-medium",children:t})}),(0,dt.jsx)("nav",{"aria-label":t,className:"ps-flex ps-flex-col ps-gap-px ps-pb-3",children:a})]}),wb=({className:e,asChild:t=!1,isActive:a,size:o,children:r,wrapChildrenInSpan:n=!0,...s})=>(0,dt.jsx)(t?dm.Slot:"button",{"data-sidebar":"menu-button","data-size":o,"data-active":a,className:K("ps-py-1.5 ps-px-4 ps-text-sm ps-font-medium ps-flex ps-gap-2 ps-items-center ps-border ps-border-transparent ps-bg-transparent ps-hover:bg-muted/50",e),...s,children:n?(0,dt.jsx)("span",{className:"ps-truncate",children:r}):r});ja.Block=Cb;ja.Item=wb;var Xt=require("react/jsx-runtime");function cm(e){let{adapter:t,onError:a,onTelemetryEvent:o}=e;return t?(0,Xt.jsx)(Ef,{adapter:t,onError:a,onTelemetryEvent:o,children:(0,Xt.jsx)(Lb,{})}):(console.error("No adapter provided to Studio component"),(0,Xt.jsx)("div",{children:"Error: No adapter provided"}))}function Lb(){let{isFullscreen:e}=Ke(),t=K("ps-flex ps-flex-col ps-w-full ps-min-h-0 ps-max-h-full",e&&"ps-fixed ps-inset-0 ps-z-[9999] ps-bg-background ps-p-2");return(0,Xt.jsx)("div",{className:t,children:(0,Xt.jsxs)("div",{className:"ps-flex ps-gap-4 ps-w-full ps-bg-background ps-relative ps-max-h-full ps-min-h-full",children:[(0,Xt.jsx)(ja,{}),(0,Xt.jsx)("div",{className:"ps-flex ps-w-full ps-flex-col ps-bg-slate-100 ps-border ps-rounded-lg ps-self-start ps-h-full ps-min-h-full ps-max-h-full ps-overflow-clip",children:(0,Xt.jsx)(om,{})})]})})}0&&(module.exports={Studio});
|
|
1220
1220
|
/*! Bundled license information:
|
|
1221
1221
|
|
|
1222
1222
|
@tanstack/query-devtools/build/chunk/WXAWMS3D.js:
|
package/dist/ui/index.js
CHANGED
|
@@ -17,7 +17,7 @@ import"../chunk-2ZJZX5I7.js";import{D as Fe}from"../chunk-P72NBTYE.js";import{B
|
|
|
17
17
|
border-radius: .5em;
|
|
18
18
|
border: 3px solid ${ae.backgroundAlt};
|
|
19
19
|
}
|
|
20
|
-
`}}),p.createElement("div",{style:{flex:"1 1 500px",minHeight:"40%",maxHeight:"100%",overflow:"auto",borderRight:`1px solid ${ae.grayAlt}`,display:"flex",flexDirection:"column"}},p.createElement("div",{style:{padding:".5em",background:ae.backgroundAlt,display:"flex",justifyContent:"space-between",alignItems:"center"}},p.createElement(bo,{"aria-hidden":!0,style:{marginRight:".5em"},onClick:()=>l(!1)}),p.createElement("div",{style:{marginRight:"auto",fontSize:"clamp(.8rem, 2vw, 1.3rem)",fontWeight:"bold"}},"React Table"," ",p.createElement("span",{style:{fontWeight:100}},"Devtools")),p.createElement("div",{style:{display:"flex",flexDirection:"column"}},r?p.createElement(Sl,{type:"button","aria-label":"Close React Table Devtools",onClick:()=>{l(!1)}},"Close"):null)),p.createElement("div",{style:{display:"flex",flexWrap:"wrap",overflowY:"auto",flex:"1"}},p.createElement("div",{style:{flex:"1 1 auto",padding:".5em"}},p.createElement(te,{label:"Instance",value:o,defaultExpanded:!1}),p.createElement("div",{style:{height:".5rem"}}),p.createElement(te,{label:"State",value:o.getState(),defaultExpanded:!1}),p.createElement("div",{style:{height:".5rem"}}),p.createElement(te,{label:"Columns",value:o.getAllColumns(),defaultExpanded:!1})),p.createElement("div",{style:{flex:"1 1 auto",padding:".5em"}},p.createElement(te,{label:"Core Model",value:o.getCoreRowModel(),defaultExpanded:!1}),p.createElement(te,{label:"Filtered Model",value:o.getFilteredRowModel(),defaultExpanded:!1}),p.createElement(te,{label:"Sorted Model",value:o.getSortedRowModel(),defaultExpanded:!1}),p.createElement(te,{label:"Grouped Model",value:o.getGroupedRowModel(),defaultExpanded:!1}),p.createElement(te,{label:"Expanded Model",value:o.getExpandedRowModel(),defaultExpanded:!1}))))))});import{useEffect as Ql,useMemo as Zl,useState as gt}from"react";import{flexRender as Bl}from"@tanstack/react-table";import{AnimatePresence as Fl,motion as vo}from"motion/react";import*as P from"@radix-ui/react-dropdown-menu";import*as ge from"react";import{jsx as V,jsxs as mt}from"react/jsx-runtime";var yo=P.Root,Po=P.Trigger;var vl=ge.forwardRef(({className:e,inset:a,children:t,...o},r)=>mt(P.SubTrigger,{ref:r,className:x("ps-flex ps-cursor-default ps-select-none ps-items-center ps-gap-2 ps-rounded-sm ps-px-2 ps-py-1.5 ps-text-sm ps-outline-none focus:ps-bg-accent data-[state=open]:ps-bg-accent [&_svg]:ps-pointer-events-none [&_svg]:ps-size-4 [&_svg]:ps-shrink-0",a&&"ps-pl-8",e),...o,children:[t,V(ne,{className:"ps-ml-auto"})]}));vl.displayName=P.SubTrigger.displayName;var kl=ge.forwardRef(({className:e,...a},t)=>V(P.SubContent,{ref:t,className:x("ps-z-50 ps-min-w-[8rem] ps-overflow-hidden ps-rounded-md ps-border ps-bg-popover ps-p-1 ps-text-popover-foreground ps-shadow-lg data-[state=open]:ps-animate-in data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=open]:ps-fade-in-0 data-[state=closed]:ps-zoom-out-95 data-[state=open]:ps-zoom-in-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-dropdown-menu-content-transform-origin]",e),...a}));kl.displayName=P.SubContent.displayName;var pt=ge.forwardRef(({className:e,sideOffset:a=4,...t},o)=>V(P.Portal,{children:V(P.Content,{ref:o,sideOffset:a,className:x("ps-z-50 ps-max-h-[var(--radix-dropdown-menu-content-available-height)] ps-min-w-[8rem] ps-overflow-y-auto ps-overflow-x-hidden ps-rounded-md ps-border ps-bg-popover ps-p-1 ps-text-popover-foreground ps-shadow-md","data-[state=open]:ps-animate-in data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=open]:ps-fade-in-0 data-[state=closed]:ps-zoom-out-95 data-[state=open]:ps-zoom-in-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-dropdown-menu-content-transform-origin]",e),...t})}));pt.displayName=P.Content.displayName;var Ma=ge.forwardRef(({className:e,inset:a,...t},o)=>V(P.Item,{ref:o,className:x("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-gap-2 ps-rounded-sm ps-px-2 ps-py-1.5 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50 [&>svg]:ps-size-4 [&>svg]:ps-shrink-0",a&&"ps-pl-8",e),...t}));Ma.displayName=P.Item.displayName;var Rl=ge.forwardRef(({className:e,children:a,checked:t,...o},r)=>mt(P.CheckboxItem,{ref:r,className:x("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-rounded-sm ps-py-1.5 ps-pl-8 ps-pr-2 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50",e),checked:t,...o,children:[V("span",{className:"ps-absolute ps-left-2 ps-flex ps-h-3.5 ps-w-3.5 ps-items-center ps-justify-center",children:V(P.ItemIndicator,{children:V(de,{className:"ps-h-4 ps-w-4"})})}),a]}));Rl.displayName=P.CheckboxItem.displayName;var Ml=ge.forwardRef(({className:e,children:a,...t},o)=>mt(P.RadioItem,{ref:o,className:x("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-rounded-sm ps-py-1.5 ps-pl-8 ps-pr-2 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50",e),...t,children:[V("span",{className:"ps-absolute ps-left-2 ps-flex ps-h-3.5 ps-w-3.5 ps-items-center ps-justify-center",children:V(P.ItemIndicator,{children:V(ye,{className:"ps-h-2 ps-w-2 ps-fill-current"})})}),a]}));Ml.displayName=P.RadioItem.displayName;var Tl=ge.forwardRef(({className:e,inset:a,...t},o)=>V(P.Label,{ref:o,className:x("ps-px-2 ps-py-1.5 ps-text-sm ps-font-semibold",a&&"ps-pl-8",e),...t}));Tl.displayName=P.Label.displayName;var Al=ge.forwardRef(({className:e,...a},t)=>V(P.Separator,{ref:t,className:x("ps--mx-1 ps-my-1 ps-h-px ps-bg-muted",e),...a}));Al.displayName=P.Separator.displayName;var Dl=({className:e,...a})=>V("span",{className:x("ps-ml-auto ps-text-xs ps-tracking-widest ps-opacity-60",e),...a});Dl.displayName="DropdownMenuShortcut";import{Fragment as xt,jsx as D,jsxs as oe}from"react/jsx-runtime";function ko(e){let{header:a,className:t}=e;return oe("div",{className:x("ps-flex ps-items-center ps-justify-between ps-w-full ps-h-full ps-flex-0",t),children:[oe("div",{className:"ps-flex ps-items-center ps-justify-between ps-w-full",children:[D("div",{className:"ps-flex ps-items-center ps-gap-2 ps-overflow-hidden ps-text-ellipsis ps-font-mono ps-text-xs",children:a.isPlaceholder?null:D("span",{className:"ps-flex ps-min-w-0",children:D("span",{className:"ps-min-w-0 ps-overflow-hidden ps-text-ellipsis ps-text-foreground/90",children:Bl(a.column.columnDef.header,a.getContext())})})}),oe("span",{className:"ps-relative ps-flex ps-shrink-0 ps-gap-1",children:[D("span",{className:"ps-flex ps-items-center ps-ml-1",children:D(Fl,{mode:"wait",children:a.column.getIsSorted()==="desc"?D(vo.div,{initial:{opacity:0,y:-4},animate:{opacity:1,y:0},exit:{opacity:0,y:-4},transition:{duration:.2},children:D(ea,{size:14,className:"ps-text-muted-foreground"})},"desc"):a.column.getIsSorted()==="asc"?D(vo.div,{initial:{opacity:0,y:4},animate:{opacity:1,y:0},exit:{opacity:0,y:4},transition:{duration:.2},children:D(aa,{size:14,className:"ps-text-muted-foreground"})},"asc"):null})}),a.column.getCanPin()&&a.column.id!=="select"&&oe(yo,{children:[D(Po,{asChild:!0,children:D(q,{variant:"ghost",size:"sm",className:"ps-px-0 ps-h-6 ps-w-6",children:D(Ke,{size:12})})}),oe(pt,{children:[a.column.getCanSort()&&D(Ma,{onClick:()=>a.column.toggleSorting(),children:D("span",{className:"ps-flex ps-items-center ps-gap-2",children:a.column.getNextSortingOrder()==="desc"?oe(xt,{children:[D(Se,{size:16}),"Sort descending"]}):a.column.getNextSortingOrder()==="asc"?oe(xt,{children:[D(We,{size:16}),"Sort ascending"]}):oe(xt,{children:[D(ra,{size:16}),"Cancel sorting"]})})}),D(Ma,{onClick:()=>a.column.pin(a.column.getIsPinned()?!1:"left"),children:a.column.getIsPinned()?oe("span",{className:"ps-flex ps-items-center ps-gap-2",children:[D(ta,{size:16}),"Unpin column"]}):oe("span",{className:"ps-flex ps-items-center ps-gap-2",children:[D(oa,{size:16}),"Pin column"]})})]})]})]})]}),a.column.getCanResize()&&D("button",{type:"button",tabIndex:0,onMouseDown:o=>{o.stopPropagation(),a.getResizeHandler()(o)},onTouchStart:o=>{o.stopPropagation(),a.getResizeHandler()(o)},onClick:o=>o.stopPropagation(),onKeyDown:o=>{(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),o.stopPropagation(),a.getResizeHandler()(o))},className:x("ps-absolute ps-right-0 ps-top-0 ps-h-full ps-w-px ps-cursor-col-resize ps-border ps-border-transparent hover:ps-border-table-border"),"aria-label":"Resize column"})]})}import{jsx as Ro}from"react/jsx-runtime";function Mo({className:e}){return Ro("div",{"data-loading-bar":!0,className:x("ps-h-[2px] ps-w-full ps-overflow-hidden ps-bg-gray-200 ps-z-50",e),children:Ro("div",{className:"ps-animate-indeterminate-bar ps-h-full ps-w-1/3 ps-rounded-r-full ps-bg-purple-600"})})}import*as To from"react";import{jsx as Ol}from"react/jsx-runtime";var Le=To.forwardRef(({className:e,type:a,...t},o)=>Ol("input",{type:a,className:x("ps-flex ps-h-9 ps-w-full ps-rounded-md ps-border ps-border-input ps-bg-transparent ps-px-3 ps-py-1 ps-shadow-sm ps-transition-colors file:ps-border-0 file:ps-bg-transparent file:ps-text-sm file:ps-font-medium file:ps-text-foreground placeholder:ps-text-muted-foreground focus-visible:ps-outline-none focus-visible:ps-ring-1 focus-visible:ps-ring-ring disabled:ps-cursor-not-allowed disabled:ps-opacity-50",e),ref:o,...t}));Le.displayName="Input";import{jsx as G,jsxs as Ta}from"react/jsx-runtime";function Ao(e){let{table:a,variant:t="basic"}=e,{pageIndex:o}=a.getState().pagination,r=a.getPageCount();return G("div",{className:"ps-rounded-b-lg ps-overflow-clip ps-sticky ps-bottom-0 ps-left-0 ps-border-t-0 w-full ps-z-20 ps-p-0",children:G("div",{className:"ps-flex ps-items-center ps-justify-between ps-space-x-2 ps-py-2 ps-px-2 ps-border-t ps-border-table-border ps-backdrop-blur-sm ps-bg-table-head/90",children:t==="basic"?Ta("div",{className:"ps-flex ps-items-center ps-space-x-2",children:[G(q,{variant:"outline",size:"sm",className:"ps-h-9",onClick:()=>a.previousPage(),disabled:!a.getCanPreviousPage(),children:"Previous"}),G(q,{variant:"outline",size:"sm",className:"ps-h-9",onClick:()=>a.nextPage(),disabled:!a.getCanNextPage(),children:"Next"})]}):G("div",{className:"ps-flex ps-items-center ps-space-x-2",children:Ta("div",{className:"ps-flex ps-items-center ps-space-x-2",children:[G(q,{variant:"outline",onClick:()=>a.setPageIndex(0),disabled:!a.getCanPreviousPage(),children:G(_e,{className:"ps-w-4 ps-h-4"})}),G(q,{variant:"outline",onClick:()=>a.previousPage(),disabled:!a.getCanPreviousPage(),children:G(Xe,{className:"ps-w-4 ps-h-4"})}),Ta("div",{className:"ps-flex ps-items-center ps-gap-1 ps-text-xs ps-font-medium",children:["Page",G(Le,{type:"number",min:1,max:r,value:o+1,className:"ps-w-16",onChange:l=>{let s=l.target.value?Number(l.target.value)-1:0;a.setPageIndex(s)}}),Ta("span",{className:"ps-shrink-0 ps-w-max",children:["of ",r]})]}),G(q,{variant:"outline",onClick:()=>a.nextPage(),disabled:!a.getCanNextPage(),children:G(ne,{className:"ps-w-4 ps-h-4"})}),G(q,{variant:"outline",onClick:()=>a.setPageIndex(r-1),disabled:!a.getCanNextPage(),children:G(Qe,{className:"ps-w-4 ps-h-4"})})]})})})})}function Ce(e){let a=e.getIsPinned(),t=a==="right"&&e.getIsFirstColumn("right");return{className:x("ps-group ps-border-r ps-border-b ps-border-table-border last:ps-border-r-0","ps-overflow-hidden ps-whitespace-nowrap ps-text-ellipsis",a&&["ps-sticky ps-bg-background ps-z-20",a==="left"?"ps-left-0":"ps-right-0"],!a&&"ps-relative ps-z-10",a&&t&&"ps-shadow-[-1px_0_0_0_hsl(var(--border))]"),style:{width:e.getSize(),left:a==="left"?`${e.getStart("left")}px`:void 0,right:a==="right"?`${e.getAfter("right")}px`:void 0}}}import{Fragment as jl,jsx as A,jsxs as Aa}from"react/jsx-runtime";var Jl=e=>{let{children:a,className:t,header:o,style:r}=e,{attributes:l,listeners:s,transform:u,transition:d,setNodeRef:n,isDragging:f}=Gl({id:o.id});return A(wa,{ref:n,...l,...s,style:{cursor:"grab",touchAction:"none",transform:Wl.Transform.toString(u),transition:d,...r,"--dragging-width":`${o.getSize()}px`},className:x(t,"ps-select-none ps-touch-none ps-sticky ps-top-0 ps-z-20 ps-bg-table-head",o.column.getIsPinned()&&"ps-sticky ps-z-30",f&&"!ps-z-50 ps-w-[var(--dragging-width)] ps-border-2 ps-border-violet-500"),children:A("div",{className:"ps-w-full",children:a})})};function Bo(e){let{columnDefs:a,getBeforeRows:t,isLoading:o,isProcessing:r,onPaginationChange:l,onRowSelectionChange:s,onSortingChange:u,pageCount:d,paginationState:n,rows:f,rowSelectionState:m,sortingState:g}=e,[I,S]=gt([]),[c,L]=gt({left:["__ps_select"],right:[]}),[C,v]=gt({}),U=Zl(()=>Do(g),[g]),K=o||r;Ql(()=>S(a.map(({accessorKey:T})=>T)),[]);function re({active:T,over:b}){b&&T.id!==b.id&&S(Z=>{let k=Z.indexOf(T.id),R=Z.indexOf(b.id);return Hl(Z,k,R)})}let Te=El(Nl,{activationConstraint:{distance:10}}),Ae=Ul(Te),X=_l({columnResizeMode:"onChange",columns:a,data:f,defaultColumn:{size:200,minSize:50,maxSize:500},enableColumnPinning:!0,enableColumnResizing:!0,enableRowSelection:!0,enableSorting:!!(u&&g),getCoreRowModel:Xl(),getRowId:({__ps_rowid:T})=>T,manualPagination:!0,manualSorting:!0,onColumnOrderChange:S,onColumnPinningChange:L,onColumnSizingChange:v,onPaginationChange:l,onRowSelectionChange:s,onSortingChange:T=>u?.(b=>(typeof T=="function"&&(T=T(Do(b))),$l(T))),pageCount:d,state:{columnOrder:I,columnPinning:c,columnSizing:C,pagination:n,rowSelection:m,sorting:U}});return Aa(jl,{children:[process.env.NODE_ENV==="production"?null:A(wo,{table:X}),Aa("div",{"data-studio":"content",className:"ps-flex-1 ps-w-0 ps-h-0 ps-min-w-full ps-flex ps-flex-col ps-relative ps-bg-slate-100",children:[A("div",{children:K&&A(Mo,{className:"ps-absolute -ps-top-[1px] ps-left-0 ps-right-0"})}),A(ql,{sensors:Ae,onDragEnd:re,children:Aa(Qa,{className:"ps-table-fixed ps-border-separate ps-border-spacing-0 ps-box-border",children:[A("colgroup",{children:A("col",{style:{width:"40px",minWidth:0,maxWidth:"40px"}})}),A(Za,{children:X.getHeaderGroups().map(T=>A(Pe,{children:A(Vl,{items:T.headers.filter(b=>b.id!=="__ps_select").map(b=>b.id),strategy:zl,children:T.headers.map(b=>b.id==="__ps_select"?A(wa,{style:Ce(b.column).style,className:x(Ce(b.column).className,"ps-select-none ps-sticky ps-top-0 ps-z-20 ps-bg-table-head ps-p-0 ps-table-cell-select",b.column.getIsPinned()&&"ps-sticky ps-z-30"),children:A("div",{className:"ps-flex ps-items-center ps-justify-center ps-h-full",children:Kl(b.column.columnDef.header,b.getContext())})},b.id):A(Jl,{header:b,table:X,...Ce(b.column),children:A(ko,{header:b})},b.id))})},T.id))}),Aa(Ja,{children:[t?.(X),X.getRowModel().rows?.length?X.getRowModel().rows.map(T=>A(Pe,{className:x("ps-bg-table-row ps-odd:bg-table-row-odd ps-group [&:last-of-type_td]:ps-border-b-0"),children:T.getVisibleCells().map((b,Z)=>{if(b.column.id==="__ps_select")return A(Ee,{style:Ce(b.column).style,className:x(Ce(b.column).className,"ps-table-cell-select"),children:typeof b.column.columnDef.cell=="function"&&(k=>{let R=b.column.columnDef.cell(b.getContext());return A(R,{className:"ps-w-full ps-h-full"})})({className:""})},b.id);if(typeof b.column.columnDef.cell=="function"){let k=b.column.columnDef.cell(b.getContext());return A(k,{...Ce(b.column)},Z)}return null})},T.id)):A(Pe,{children:A(Ee,{colSpan:a.length,className:"ps-h-24 ps-text-center",children:o?"Loading...":"No results."})})]})]})}),!d||d<2?null:A(Ao,{table:X,variant:"numeric"})]})]})}function Do(e){return e?.map(a=>({id:a.column,desc:a.direction==="desc"}))||[]}function $l(e){return e.map(a=>({column:a.id,direction:a.desc?"desc":"asc"}))}import*as Y from"@radix-ui/react-tooltip";import*as Oo from"react";import{jsx as Fo}from"react/jsx-runtime";var qo=Y.Provider,No=Y.Root,Eo=Y.Trigger,Lt=Oo.forwardRef(({className:e,sideOffset:a=4,...t},o)=>Fo(Y.Portal,{children:Fo(Y.Content,{ref:o,sideOffset:a,className:x("ps-z-50 ps-overflow-hidden ps-rounded-md ps-bg-primary ps-px-3 ps-py-1.5 ps-text-xs ps-text-primary-foreground ps-animate-in ps-fade-in-0 ps-zoom-in-95 data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=closed]:ps-zoom-out-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-tooltip-content-transform-origin]",e),...t})}));Lt.displayName=Y.Content.displayName;import{jsx as ve,jsxs as Ct}from"react/jsx-runtime";function Uo({column:e}){return e.isInPrimaryKey?Ct("span",{className:"ps-flex ps-flex-row ps-font-medium ps-items-center ps-gap-1",children:[ve(qo,{delayDuration:300,children:Ct(No,{children:[ve(Eo,{asChild:!0,children:ve($e,{size:12})}),ve(Lt,{children:ve("p",{children:"Primary Key"})})]})}),e.name]}):Ct("div",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center",children:[ve("span",{className:"ps-font-medium ps-truncate",children:e.name}),ve("span",{className:"ps-overflow-hidden ps-text-ellipsis ps-text-muted-foreground/70 ps-lowercase ps-truncate",children:e.datatype.name})]})}import{isObjectType as Pu}from"remeda";import{motion as Go}from"motion/react";import ou,{useState as Wo}from"react";import*as It from"@radix-ui/react-label";import{cva as Yl}from"class-variance-authority";import*as Ho from"react";import{jsx as au}from"react/jsx-runtime";var eu=Yl("ps-text-sm ps-font-medium ps-leading-none peer-disabled:ps-cursor-not-allowed peer-disabled:ps-opacity-70"),ia=Ho.forwardRef(({className:e,...a},t)=>au(It.Root,{ref:t,className:x(eu(),e),...a}));ia.displayName=It.Root.displayName;import*as fa from"@radix-ui/react-switch";import*as Vo from"react";import{jsx as zo}from"react/jsx-runtime";var ca=Vo.forwardRef(({className:e,...a},t)=>zo(fa.Root,{className:x("ps-peer ps-inline-flex ps-h-5 ps-w-9 ps-shrink-0 ps-cursor-pointer ps-items-center ps-rounded-full ps-border-2 ps-border-transparent ps-shadow-sm ps-transition-colors focus-visible:ps-outline-none focus-visible:ps-ring-2 focus-visible:ps-ring-ring focus-visible:ps-ring-offset-2 focus-visible:ps-ring-offset-background disabled:ps-cursor-not-allowed disabled:ps-opacity-50 data-[state=checked]:ps-bg-primary data-[state=unchecked]:ps-bg-input",e),...a,ref:t,children:zo(fa.Thumb,{className:x("ps-pointer-events-none ps-block ps-h-4 ps-w-4 ps-rounded-full ps-bg-background ps-shadow-lg ps-ring-0 ps-transition-transform data-[state=checked]:ps-translate-x-4 data-[state=unchecked]:ps-translate-x-0")})}));ca.displayName=fa.Root.displayName;import{Fragment as tu,jsx as ke,jsxs as pa}from"react/jsx-runtime";var W=({onSave:e,onCancel:a,onClose:t,onNullChange:o,isNull:r=!1,readonly:l})=>ke("div",{className:"ps-flex ps-flex-row ps-gap-1 ps-border-t ps-border-table-border ps-text-xs ps-",children:!l&&pa(tu,{children:[pa("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-mr-auto",children:[pa("button",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center ps-cursor-pointer",onClick:()=>{e&&e(),t&&t()},children:[ke("kbd",{className:"ps-inline-flex ps-justify-center ps-items-center ps-h-6 ps-w-6 ps-rounded-md ps-bg-muted ps-text-muted-foreground",children:ke(Je,{size:12,strokeWidth:2})})," ","Save changes"]}),pa("button",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center ps-cursor-pointer",onClick:()=>{a&&a(),t&&t()},children:[ke("kbd",{className:"ps-inline-flex ps-justify-center ps-items-center ps-h-6 ps-w-6 ps-rounded-md ps-bg-muted ps-text-muted-foreground ps-text-[8px] ps-leading-none ps-font-semibold",children:"Esc"})," ","Cancel changes"]})]}),o&&ke("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2",children:pa("label",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center",htmlFor:"set-nullable",children:[ke(ca,{id:"set-nullable",checked:r,onCheckedChange:n=>{o&&o(n)}}),ke("span",{children:"Set to NULL"})]})})]})});import{Fragment as ru,jsx as ma,jsxs as Ko}from"react/jsx-runtime";function Xo(e){let{value:a,onSubmit:t,column:o,readonly:r}=e,l=o.nullable===!0,[s,u]=Wo(a===null?!1:a),[d,n]=Wo(a===null),f=a===null?!1:a,m=C=>{u(C)},g=C=>{n(C)},I=ou.useCallback(()=>{let C=d?null:s;return C!==a?(t(C),!0):!1},[s,a,t,d]),S=()=>{u(f),n(a===null)},{handleSave:c,handleCancel:L}=z({onSave:I,onCancel:S,readonly:r});return Ko(ru,{children:[Ko("div",{className:"ps-flex ps-flex-row ps-items-center ps-h-[var(--studio-cell-height)] ps-gap-4 ps-py-0 ps-px-2",children:[ma(ia,{htmlFor:"boolean-input",className:"ps-sr-only",children:"Boolean"}),ma(Go.div,{className:"ps-flex ps-items-center",initial:{opacity:0},animate:{opacity:1},transition:{duration:.24},children:ma(ca,{id:"boolean-input",checked:s,onCheckedChange:m,disabled:d||r})}),ma(Go.div,{"data-value":!0,className:"ps-inline-flex ps-items-center ps-text-xs ps-text-muted-foreground ps-font-mono",initial:{x:-40,opacity:1},animate:{x:0,opacity:1},transition:{duration:.12,delay:0},children:d?"NULL":String(s)})]}),ma(W,{onSave:c,onCancel:L,onNullChange:l?g:void 0,isNull:d,readonly:r})]})}import _o from"dayjs";import lu from"dayjs/plugin/localizedFormat";import{useCallback as uu,useMemo as du}from"react";import{useState as su}from"react";function Ue(e){let{initialValue:a}=e,[t,o]=su(a??"");return{handleOnChange:l=>{o(l.target.value)},value:t}}import{Fragment as nu,jsx as xa,jsxs as ht}from"react/jsx-runtime";_o.extend(lu);function Qo(e){let{onSubmit:a,value:t,readonly:o}=e,r=String(t),{handleOnChange:l,value:s}=Ue({initialValue:r}),u=du(()=>{try{let I=_o(s);return I.isValid()?s.includes(":")?I.format("LL LTS"):I.format("LL"):s}catch{return s}},[s]);function d(I){I.preventDefault(),s!==r&&a(s)}let n=uu(()=>s!==r?(a(s),!0):!1,[s,r,a]),f=()=>{},{handleSave:m,handleCancel:g}=z({onSave:n,onCancel:f,readonly:o});return ht(nu,{children:[ht("form",{onSubmit:d,children:[xa(Le,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:l,type:"text",value:s}),xa("input",{type:"submit",className:"ps-sr-only"})]}),ht("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-border-t ps-border-table-border",children:[xa("div",{className:"ps-text-xs ps-text-muted-foreground",children:"Formatted value"}),xa("div",{className:"ps-text-xs ps-font-mono ps-text-foreground",children:u})]}),xa(W,{onSave:m,onCancel:g,readonly:o})]})}import{useCallback as fu,useState as Jo}from"react";import{cva as iu}from"class-variance-authority";import{jsx as Km}from"react/jsx-runtime";var Zo=iu("ps-inline-flex ps-items-center ps-rounded-md ps-border ps-px-2.5 ps-py-0.5 ps-text-xs ps-font-semibold ps-transition-colors focus:ps-outline-none focus:ps-ring-2 focus:ps-ring-ring focus:ps-ring-offset-2",{variants:{variant:{default:"ps-border-transparent ps-bg-primary ps-text-primary-foreground ps-shadow hover:ps-bg-primary/80",secondary:"ps-border-transparent ps-bg-secondary ps-text-secondary-foreground hover:ps-bg-secondary/80",destructive:"ps-border-transparent ps-bg-destructive ps-text-destructive-foreground ps-shadow hover:ps-bg-destructive/80",outline:"ps-text-foreground"}},defaultVariants:{variant:"default"}});import{Fragment as cu,jsx as Da,jsxs as pu}from"react/jsx-runtime";function $o(e){let{onSubmit:a,column:t,value:o,options:r=[],readonly:l}=e,s=t.nullable===!0,u=String(o),[d,n]=Jo(u),[f,m]=Jo(o===null),g=v=>{n(v)},I=v=>{m(v)},S=fu(()=>f?o!==null?(a(null),!0):!1:d!==u?(a(d),!0):!1,[d,u,a,f,o]),c=()=>{n(u),m(o===null)},{handleSave:L,handleCancel:C}=z({onSave:S,onCancel:c,readonly:l});return pu(cu,{children:[Da("div",{className:"ps-flex ps-items-center ps-gap-2 ps-font-mono ps-h-[var(--studio-cell-height)] ps-px-2 ps-py-0 ps-w-full ps-text-xs ps-text-muted-foreground",children:d}),Da("div",{className:"ps-flex ps-flex-row ps-flex-wrap ps-gap-2 ps-p-2 ps-min-w-[var(--radix-popover-trigger-width)] ps-max-w-min ps-border-t ps-border-table-border ps-overflow-y-scroll ps-max-h-32",children:r.map(v=>Da("button",{onClick:()=>g(v),className:Zo({variant:v===d?"default":"outline"}),disabled:f||l,children:v},v))}),Da(W,{onSave:L,onCancel:C,onNullChange:s?I:void 0,isNull:f,readonly:l})]})}import mu,{useState as jo}from"react";import{Fragment as xu,jsx as St,jsxs as gu}from"react/jsx-runtime";function Yo(e){let{value:a,onSubmit:t,column:o,readonly:r}=e,l=o.nullable===!0,s=a===null?"":JSON.stringify(a,null,2),[u,d]=jo(s),[n,f]=jo(a===null),m=C=>{d(C.target.value)},g=C=>{f(C)},I=mu.useCallback(()=>{if(n)return a!==null?(t(null),!0):!1;let C=u===""?null:JSON.parse(u);return C!==a?(t(C),!0):!1},[u,a,t,n]),S=()=>{d(s),f(a===null)},{handleSave:c,handleCancel:L}=z({onSave:I,onCancel:S,readonly:r});return gu(xu,{children:[St("div",{className:"ps-flex ps-flex-row ps-items-center ps-gap-4 ps-py-0",children:St("textarea",{rows:5,value:u,onChange:m,disabled:n||r,className:"ps-cell-input-base ps-appearance-none ps-w-full ps-font-mono ps-border-none ps-outline-none ps-shadow-none ps-bg-transparent focus-visible:ps-ring-0 ps-resize ps-px-[var(--studio-cell-spacing)]",lang:"en_EN"})}),St(W,{onSave:c,onCancel:L,onNullChange:l?g:void 0,isNull:n,readonly:r})]})}import Lu,{useState as er}from"react";import{Fragment as Cu,jsx as bt,jsxs as ar}from"react/jsx-runtime";function tr(e){let{value:a,onSubmit:t,column:o,readonly:r}=e,l=o.nullable===!0,[s,u]=er(a===null?"":String(a)),[d,n]=er(a===null),f=a===null?"":String(a),m=C=>{u(C.target.value)},g=C=>{n(C)},I=Lu.useCallback(()=>{if(d)return a!==null?(t(null),!0):!1;let C=s===""?null:Number(s);return s!==a?(t(C),!0):!1},[s,a,t,d]),S=()=>{u(f),n(a===null)},{handleSave:c,handleCancel:L}=z({onSave:I,onCancel:S,readonly:r});return ar(Cu,{children:[ar("div",{className:"ps-flex ps-flex-row ps-items-center ps-h-[var(--studio-cell-height)] ps-gap-4 ps-py-0",children:[bt(ia,{htmlFor:"numeric-input",className:"ps-sr-only",children:"Numeric"}),bt("input",{type:"text",inputMode:"numeric",pattern:"\\d*",value:s,onChange:m,disabled:d||r,className:"ps-cell-input-leading ps-appearance-none ps-w-full ps-font-mono ps-border-none ps-outline-none ps-shadow-none ps-bg-transparent focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",step:"any",lang:"en_EN"})]}),bt(W,{onSave:c,onCancel:L,onNullChange:l?g:void 0,isNull:d,readonly:r})]})}import Iu from"react";import{Fragment as hu,jsx as wt,jsxs as or}from"react/jsx-runtime";function rr(e){let{onSubmit:a,value:t,readonly:o}=e,r=String(t),{handleOnChange:l,value:s}=Ue({initialValue:r});function u(g){g.preventDefault(),s!==r&&a(s)}let d=Iu.useCallback(()=>s!==r?(a(s),!0):!1,[s,r,a]),n=()=>{},{handleSave:f,handleCancel:m}=z({onSave:d,onCancel:n,readonly:o});return or(hu,{children:[or("form",{onSubmit:u,children:[wt(Le,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:l,type:"text",value:s,disabled:o}),wt("input",{type:"submit",className:"ps-sr-only"})]}),wt(W,{onSave:f,onCancel:m,readonly:o})]})}import sr from"dayjs";import Su from"dayjs/plugin/localizedFormat";import{useCallback as bu,useMemo as wu}from"react";import{Fragment as yu,jsx as ga,jsxs as yt}from"react/jsx-runtime";sr.extend(Su);function lr(e){let{onSubmit:a,value:t,readonly:o}=e,r=String(t),{handleOnChange:l,value:s}=Ue({initialValue:r}),u=wu(()=>{try{if(!s.includes(":"))return s;let I=/[+-]\d{2}(:\d{2})?$/.test(s),S=sr(`2000-01-01 ${s}`);if(S.isValid())return S.format("h:mm A")+(I?` (${S.format("Z")})`:"");let c=/(\d{1,2}):(\d{2}):(\d{2})(?:\.\d+)?([+-]\d{2}(?::\d{2})?)?/,L=s.match(c);if(L){let C=parseInt(L[1]||"12",10),v=L[2]||"00",U=L[4]||"",K=C>=12?"PM":"AM";return`${C%12===0?12:C%12}:${v} ${K}${U?` (${U})`:""}`}return s}catch{return s}},[s]);function d(I){I.preventDefault(),s!==r&&a(s)}let n=bu(()=>s!==r?(a(s),!0):!1,[s,r,a]),f=()=>{},{handleSave:m,handleCancel:g}=z({onSave:n,onCancel:f,readonly:o});return yt(yu,{children:[yt("form",{onSubmit:d,children:[ga(Le,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:l,type:"text",value:s}),ga("input",{type:"submit",className:"ps-sr-only"})]}),yt("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-border-t ps-border-table-border",children:[ga("div",{className:"ps-text-xs ps-text-muted-foreground",children:"Formatted value"}),ga("div",{className:"ps-text-xs ps-font-mono ps-text-foreground",children:u})]}),ga(W,{onSave:m,onCancel:g,readonly:o})]})}import{jsx as Re}from"react/jsx-runtime";function Ba(e){let{cell:a,column:t,onSubmit:o}=e,{group:r,options:l,isArray:s}=t.datatype,u=t.isComputed||e.readonly,d=a.getValue(),n=d===void 0?"":d;return r==="datetime"?Re(Qo,{onSubmit:o,value:n,column:t,readonly:u}):r==="time"?Re(lr,{onSubmit:o,value:n,column:t,readonly:u}):r==="json"||s?Re(Yo,{onSubmit:o,value:n,column:t,readonly:u}):r==="boolean"?Re(Xo,{onSubmit:o,value:n,column:t,readonly:u}):r==="enum"?Re($o,{onSubmit:o,value:n,options:l,column:t,readonly:u}):r==="numeric"?Re(tr,{onSubmit:o,value:n,column:t,readonly:u}):Re(rr,{onSubmit:o,value:Pu(n)?JSON.stringify(n):n,readonly:u})}import{useReactTable as vu}from"@tanstack/react-table";import{omit as ku}from"remeda";import{Fragment as Ru,jsx as La}from"react/jsx-runtime";function ur(e){let{table:a,stagedRows:t,setStagedRows:o}=e,r=!!Sa();function l(d,n){o(f=>{let m=[...f];return m[d]={...m[d],...n},m})}let s=Object.values(a.options.columns).map(d=>d.id==="__ps_select"?{...d,cell(){return()=>La(da,{})}}:{...d,cell({cell:n}){return f=>La(ka,{cellComponent:va({cell:n,column:d.meta,props:f}),inputComponent:Ba({cell:n,column:d.meta,onSubmit(m){l(f.rowIndex,{[d.id]:m})},readonly:r})})}}),u=vu({...a.options,columns:s,enableSorting:!1,onPaginationChange:void 0,onSortingChange:void 0,data:t,state:ku(a.options.state,["pagination","sorting"])});return La(Ru,{children:u.getRowModel().rows.map((d,n)=>La(Pe,{children:d.getVisibleCells().map((f,m)=>{if(typeof f.column.columnDef.cell=="function"){let g=f.column.columnDef.cell(f.getContext());return La(g,{...Ce(f.column),rowIndex:n},m)}return null})},n))})}import{Fragment as Pt,jsx as E,jsxs as Fa}from"react/jsx-runtime";function dr(e){let a=!!Mu(),{activeTable:t,onError:o,isFullscreen:r,toggleFullscreen:l}=B(),{sortingState:s,setSortingState:u}=so(),{paginationState:d,setPaginationState:n}=ba(),[f,m]=Au([]),{data:g,isFetching:I}=ao({...d,sortOrder:s}),{deleteSelection:S,isSelecting:c,rowSelectionState:L,setRowSelectionState:C}=ro(g),v=!Object.values(t?.columns??{}).some(R=>R.isInPrimaryKey),U=Sa(),K=eo(),re=to();if(Tu(()=>m([]),[t]),!t)return null;function Te(){K.mutate(f,{onError:o,onSuccess(){Du.success("Rows inserted successfully"),m([])}})}function Ae(){m(R=>[...R,{}])}function X(){m([])}function T(R,_,De){re.mutate({details:{changes:{[_.name]:R},row:De,table:t},options:{}})}let b=Object.values(t?.columns??{}).map(R=>({id:R.name,accessorKey:R.name,meta:R,header(){return Uo({column:R})},cell({cell:_}){return De=>E(ka,{cellComponent:va({cell:_,column:R,props:De}),inputComponent:Ba({cell:_,column:R,readonly:v,onSubmit(Be){return T(Be,R,_.row.original)}})})}})),Z=[{id:"__ps_select",accessorKey:"__ps_select",enablePinning:!1,meta:{disableDragging:!0},header({table:R}){return E(la,{checked:R.getIsAllRowsSelected(),onCheckedChange:_=>R.toggleAllRowsSelected(!!_),disabled:v})},cell({row:R}){return()=>E(dt,{row:R,readonly:v})}}],k=[...b,...Z].sort(Fu);return Fa(Pt,{children:[E("div",{className:"ps-bg-studio-header-background ps-flex ps-w-full ps-p-2 ps-py-3 ps-border-b ps-bg-card ps-rounded-t-lg",children:E("div",{className:"ps-flex ps-items-center ps-justify-between ps-w-full ps-gap-2",children:Fa("div",{className:"ps-flex ps-flex-grow ps-justify-between ps-items-center",children:[Fa("div",{className:"ps-flex ps-items-center ps-gap-2",children:[E(q,{variant:"outline",size:"sm",onClick:Ae,disabled:U>0,children:"Insert row"}),f.length>0&&Fa(Pt,{children:[E(q,{variant:"secondary",size:"sm",onClick:Te,children:"Save"}),E(q,{variant:"ghost",size:"sm",onClick:X,children:"Cancel"})]}),c&&E(Pt,{children:E(q,{variant:"secondary",size:"sm",onClick:S,children:"Delete"})})]}),E(q,{variant:"outline",size:"icon",onClick:l,children:r?E(Ye,{}):E(je,{})})]})})}),E(Bo,{columnDefs:k,getBeforeRows:R=>E(ur,{table:R,stagedRows:f,setStagedRows:m}),isLoading:I,isProcessing:a,onPaginationChange:n,onRowSelectionChange:C,onSortingChange:u,pageCount:Bu(g?.filteredRowCount??1/0,d.pageSize),paginationState:d,rows:g?.rows??[],rowSelectionState:L,sortingState:s})]})}function Bu(e,a){if(e===1/0)return;let t=Number((BigInt(e)+BigInt(a)-BigInt(1))/BigInt(a));return Number.isSafeInteger(t)?t:Number.MAX_SAFE_INTEGER}function Fu(e,a){let t=e.meta,o=a.meta;return e.id==="__ps_select"||a.id==="__ps_select"?1:t===void 0||o===void 0?0:t.isInPrimaryKey&&!o.isInPrimaryKey?-1:!t.isInPrimaryKey&&o.isInPrimaryKey?1:t.name.localeCompare(o.name)}import{Slot as Uu}from"@radix-ui/react-slot";import{jsx as Ou}from"react/jsx-runtime";function nr({className:e,...a}){return Ou("div",{className:x("ps-animate-pulse ps-rounded-md ps-bg-primary/10",e),...a})}import{useCallback as Nu,useEffect as fr,useMemo as cr}from"react";import{v4 as Eu}from"uuid";import{useQuery as qu}from"@tanstack/react-query";var Oa=-1;function ir(){let{adapter:e}=B();return qu({initialData:{schemas:{[e.defaultSchema||"db"]:{tables:{}}},timezone:"UTC"},initialDataUpdatedAt:Oa,queryFn:async({signal:a})=>{let[t,o]=await e.introspect({abortSignal:a});if(t)throw t;return o},queryKey:["introspection"],staleTime:a=>a.state.dataUpdatedAt===Oa?0:1/0})}function pr(){let{activeTable:e,setActiveTable:a,adapter:t,emitTelemetryEvent:o}=B(),{data:r,dataUpdatedAt:l}=ir(),s=l===Oa,u=cr(()=>Object.values(r.schemas[t.defaultSchema||"db"]?.tables||{}),[r.schemas,t.defaultSchema]),d=cr(()=>Object.values(r.schemas).reduce((c,L)=>c+Object.keys(L.tables).length,0),[r.schemas]),[n]=u,[f,m]=ua({table:{defaultValue:null,parse:c=>c,serialize:c=>c??""},schema:{defaultValue:"",parse:c=>c,serialize:c=>c??""}}),[,g]=Ne("pageIndex",{parse:c=>c,serialize:c=>c??""}),[,I]=Ne("sort",{parse:c=>c,serialize:c=>c??""});fr(()=>{if(!s){if(f?.table&&u.length>0){let c=u.find(L=>L.name===f.table);if(c){a(c);return}}u.length>0&&!e&&(a(n||null),n&&m({table:n.name,schema:n.schema}))}},[s,f,u,n,e,a,m]);let S=Nu(c=>{e!==c&&(a(c),m({table:c.name,schema:c.schema}),g(null),I(null))},[e,a,m,g,I]);return fr(()=>{l!==-1&&o({event:"studio_launched",payload:{event_id:Eu(),timestamp:new Date().toISOString(),table_count:d}})},[u,o,l,d]),{tables:u,activeTable:e,isLoading:s,handleTableChange:S}}import{jsx as ee,jsxs as Vu}from"react/jsx-runtime";function we(){let{tables:e,activeTable:a,isLoading:t,handleTableChange:o}=pr();return ee("div",{className:"ps-flex ps-flex-col ps-w-64 ps-gap-4 ps-shrink-0 ps-overflow-y-auto ps-max-h-full ps-min-h-0 ps-rounded-lg ps-border ps-bg-card ps-text-card-foreground ps-shadow-xs",children:ee(we.Block,{label:"Tables",children:e.length>0?e.map(r=>ee(we.Item,{isActive:a===r,onClick:()=>{o(r)},className:"ps-py-1 ps-font-mono ps-text-xs ps-text-foreground/60 hover:ps-text-foreground ps-transition-all ps-cursor-pointer data-[active=true]:ps-bg-primary/5 data-[active=true]:ps-foreground data-[active=true]:ps-text-foreground",children:r.name},`${r.schema}-${r.name}`)):t?Array(4).fill(null).map((r,l)=>ee(we.Item,{wrapChildrenInSpan:!1,children:ee(nr,{className:"ps-h-3 ps-w-full"})},l)):ee(we.Item,{children:"No tables found"})})})}var Hu=({className:e,label:a,children:t,...o})=>Vu("div",{className:e,...o,children:[ee("div",{className:"ps-pt-4 ps-pb-2 ps-px-4",children:ee("h2",{className:"ps-text-sm ps-font-medium",children:a})}),ee("nav",{"aria-label":a,className:"ps-flex ps-flex-col ps-gap-px ps-pb-3",children:t})]}),zu=({className:e,asChild:a=!1,isActive:t,size:o,children:r,wrapChildrenInSpan:l=!0,...s})=>ee(a?Uu:"button",{"data-sidebar":"menu-button","data-size":o,"data-active":t,className:x("ps-py-1.5 ps-px-4 ps-text-sm ps-font-medium ps-flex ps-gap-2 ps-items-center ps-border ps-border-transparent ps-bg-transparent ps-hover:bg-muted/50",e),...s,children:l?ee("span",{className:"ps-truncate",children:r}):r});we.Block=Hu;we.Item=zu;import{jsx as Me,jsxs as Ku}from"react/jsx-runtime";function Gu(e){let{adapter:a,onError:t,onTelemetryEvent:o}=e;return a?Me(jt,{adapter:a,onError:t,onTelemetryEvent:o,children:Me(Wu,{})}):(console.error("No adapter provided to Studio component"),Me("div",{children:"Error: No adapter provided"}))}function Wu(){let{isFullscreen:e}=B(),a=x("ps-flex ps-flex-col ps-w-full ps-min-h-0 ps-max-h-full",e&&"ps-fixed ps-inset-0 ps-z-[9999] ps-bg-background ps-p-2");return Me("div",{className:a,children:Ku("div",{className:"ps-flex ps-gap-4 ps-w-full ps-bg-background ps-relative ps-max-h-full ps-min-h-full",children:[Me(we,{}),Me("div",{className:"ps-flex ps-w-full ps-flex-col ps-bg-slate-100 ps-border ps-rounded-lg ps-self-start ps-h-full ps-min-h-full ps-max-h-full ps-overflow-clip",children:Me(dr,{})})]})})}export{Gu as Studio};
|
|
20
|
+
`}}),p.createElement("div",{style:{flex:"1 1 500px",minHeight:"40%",maxHeight:"100%",overflow:"auto",borderRight:`1px solid ${ae.grayAlt}`,display:"flex",flexDirection:"column"}},p.createElement("div",{style:{padding:".5em",background:ae.backgroundAlt,display:"flex",justifyContent:"space-between",alignItems:"center"}},p.createElement(bo,{"aria-hidden":!0,style:{marginRight:".5em"},onClick:()=>l(!1)}),p.createElement("div",{style:{marginRight:"auto",fontSize:"clamp(.8rem, 2vw, 1.3rem)",fontWeight:"bold"}},"React Table"," ",p.createElement("span",{style:{fontWeight:100}},"Devtools")),p.createElement("div",{style:{display:"flex",flexDirection:"column"}},r?p.createElement(Sl,{type:"button","aria-label":"Close React Table Devtools",onClick:()=>{l(!1)}},"Close"):null)),p.createElement("div",{style:{display:"flex",flexWrap:"wrap",overflowY:"auto",flex:"1"}},p.createElement("div",{style:{flex:"1 1 auto",padding:".5em"}},p.createElement(te,{label:"Instance",value:o,defaultExpanded:!1}),p.createElement("div",{style:{height:".5rem"}}),p.createElement(te,{label:"State",value:o.getState(),defaultExpanded:!1}),p.createElement("div",{style:{height:".5rem"}}),p.createElement(te,{label:"Columns",value:o.getAllColumns(),defaultExpanded:!1})),p.createElement("div",{style:{flex:"1 1 auto",padding:".5em"}},p.createElement(te,{label:"Core Model",value:o.getCoreRowModel(),defaultExpanded:!1}),p.createElement(te,{label:"Filtered Model",value:o.getFilteredRowModel(),defaultExpanded:!1}),p.createElement(te,{label:"Sorted Model",value:o.getSortedRowModel(),defaultExpanded:!1}),p.createElement(te,{label:"Grouped Model",value:o.getGroupedRowModel(),defaultExpanded:!1}),p.createElement(te,{label:"Expanded Model",value:o.getExpandedRowModel(),defaultExpanded:!1}))))))});import{useEffect as Ql,useMemo as Zl,useState as gt}from"react";import{flexRender as Bl}from"@tanstack/react-table";import{AnimatePresence as Fl,motion as vo}from"motion/react";import*as P from"@radix-ui/react-dropdown-menu";import*as ge from"react";import{jsx as V,jsxs as mt}from"react/jsx-runtime";var yo=P.Root,Po=P.Trigger;var vl=ge.forwardRef(({className:e,inset:a,children:t,...o},r)=>mt(P.SubTrigger,{ref:r,className:x("ps-flex ps-cursor-default ps-select-none ps-items-center ps-gap-2 ps-rounded-sm ps-px-2 ps-py-1.5 ps-text-sm ps-outline-none focus:ps-bg-accent data-[state=open]:ps-bg-accent [&_svg]:ps-pointer-events-none [&_svg]:ps-size-4 [&_svg]:ps-shrink-0",a&&"ps-pl-8",e),...o,children:[t,V(ne,{className:"ps-ml-auto"})]}));vl.displayName=P.SubTrigger.displayName;var kl=ge.forwardRef(({className:e,...a},t)=>V(P.SubContent,{ref:t,className:x("ps-z-50 ps-min-w-[8rem] ps-overflow-hidden ps-rounded-md ps-border ps-bg-popover ps-p-1 ps-text-popover-foreground ps-shadow-lg data-[state=open]:ps-animate-in data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=open]:ps-fade-in-0 data-[state=closed]:ps-zoom-out-95 data-[state=open]:ps-zoom-in-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-dropdown-menu-content-transform-origin]",e),...a}));kl.displayName=P.SubContent.displayName;var pt=ge.forwardRef(({className:e,sideOffset:a=4,...t},o)=>V(P.Portal,{children:V(P.Content,{ref:o,sideOffset:a,className:x("ps-z-50 ps-max-h-[var(--radix-dropdown-menu-content-available-height)] ps-min-w-[8rem] ps-overflow-y-auto ps-overflow-x-hidden ps-rounded-md ps-border ps-bg-popover ps-p-1 ps-text-popover-foreground ps-shadow-md","data-[state=open]:ps-animate-in data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=open]:ps-fade-in-0 data-[state=closed]:ps-zoom-out-95 data-[state=open]:ps-zoom-in-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-dropdown-menu-content-transform-origin]",e),...t})}));pt.displayName=P.Content.displayName;var Ma=ge.forwardRef(({className:e,inset:a,...t},o)=>V(P.Item,{ref:o,className:x("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-gap-2 ps-rounded-sm ps-px-2 ps-py-1.5 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50 [&>svg]:ps-size-4 [&>svg]:ps-shrink-0",a&&"ps-pl-8",e),...t}));Ma.displayName=P.Item.displayName;var Rl=ge.forwardRef(({className:e,children:a,checked:t,...o},r)=>mt(P.CheckboxItem,{ref:r,className:x("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-rounded-sm ps-py-1.5 ps-pl-8 ps-pr-2 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50",e),checked:t,...o,children:[V("span",{className:"ps-absolute ps-left-2 ps-flex ps-h-3.5 ps-w-3.5 ps-items-center ps-justify-center",children:V(P.ItemIndicator,{children:V(de,{className:"ps-h-4 ps-w-4"})})}),a]}));Rl.displayName=P.CheckboxItem.displayName;var Ml=ge.forwardRef(({className:e,children:a,...t},o)=>mt(P.RadioItem,{ref:o,className:x("ps-relative ps-flex ps-cursor-default ps-select-none ps-items-center ps-rounded-sm ps-py-1.5 ps-pl-8 ps-pr-2 ps-text-sm ps-outline-none ps-transition-colors focus:ps-bg-accent focus:ps-text-accent-foreground data-[disabled]:ps-pointer-events-none data-[disabled]:ps-opacity-50",e),...t,children:[V("span",{className:"ps-absolute ps-left-2 ps-flex ps-h-3.5 ps-w-3.5 ps-items-center ps-justify-center",children:V(P.ItemIndicator,{children:V(ye,{className:"ps-h-2 ps-w-2 ps-fill-current"})})}),a]}));Ml.displayName=P.RadioItem.displayName;var Tl=ge.forwardRef(({className:e,inset:a,...t},o)=>V(P.Label,{ref:o,className:x("ps-px-2 ps-py-1.5 ps-text-sm ps-font-semibold",a&&"ps-pl-8",e),...t}));Tl.displayName=P.Label.displayName;var Al=ge.forwardRef(({className:e,...a},t)=>V(P.Separator,{ref:t,className:x("ps--mx-1 ps-my-1 ps-h-px ps-bg-muted",e),...a}));Al.displayName=P.Separator.displayName;var Dl=({className:e,...a})=>V("span",{className:x("ps-ml-auto ps-text-xs ps-tracking-widest ps-opacity-60",e),...a});Dl.displayName="DropdownMenuShortcut";import{Fragment as xt,jsx as D,jsxs as oe}from"react/jsx-runtime";function ko(e){let{header:a,className:t}=e;return oe("div",{className:x("ps-flex ps-items-center ps-justify-between ps-w-full ps-h-full ps-flex-0",t),children:[oe("div",{className:"ps-flex ps-items-center ps-justify-between ps-w-full",children:[D("div",{className:"ps-flex ps-items-center ps-gap-2 ps-overflow-hidden ps-text-ellipsis ps-font-mono ps-text-xs",children:a.isPlaceholder?null:D("span",{className:"ps-flex ps-min-w-0",children:D("span",{className:"ps-min-w-0 ps-overflow-hidden ps-text-ellipsis ps-text-foreground/90",children:Bl(a.column.columnDef.header,a.getContext())})})}),oe("span",{className:"ps-relative ps-flex ps-shrink-0 ps-gap-1",children:[D("span",{className:"ps-flex ps-items-center ps-ml-1",children:D(Fl,{mode:"wait",children:a.column.getIsSorted()==="desc"?D(vo.div,{initial:{opacity:0,y:-4},animate:{opacity:1,y:0},exit:{opacity:0,y:-4},transition:{duration:.2},children:D(ea,{size:14,className:"ps-text-muted-foreground"})},"desc"):a.column.getIsSorted()==="asc"?D(vo.div,{initial:{opacity:0,y:4},animate:{opacity:1,y:0},exit:{opacity:0,y:4},transition:{duration:.2},children:D(aa,{size:14,className:"ps-text-muted-foreground"})},"asc"):null})}),a.column.getCanPin()&&a.column.id!=="select"&&oe(yo,{children:[D(Po,{asChild:!0,children:D(q,{variant:"ghost",size:"sm",className:"ps-px-0 ps-h-6 ps-w-6",children:D(Ke,{size:12})})}),oe(pt,{children:[a.column.getCanSort()&&D(Ma,{onClick:()=>a.column.toggleSorting(),children:D("span",{className:"ps-flex ps-items-center ps-gap-2",children:a.column.getNextSortingOrder()==="desc"?oe(xt,{children:[D(Se,{size:16}),"Sort descending"]}):a.column.getNextSortingOrder()==="asc"?oe(xt,{children:[D(We,{size:16}),"Sort ascending"]}):oe(xt,{children:[D(ra,{size:16}),"Cancel sorting"]})})}),D(Ma,{onClick:()=>a.column.pin(a.column.getIsPinned()?!1:"left"),children:a.column.getIsPinned()?oe("span",{className:"ps-flex ps-items-center ps-gap-2",children:[D(ta,{size:16}),"Unpin column"]}):oe("span",{className:"ps-flex ps-items-center ps-gap-2",children:[D(oa,{size:16}),"Pin column"]})})]})]})]})]}),a.column.getCanResize()&&D("button",{type:"button",tabIndex:0,onMouseDown:o=>{o.stopPropagation(),a.getResizeHandler()(o)},onTouchStart:o=>{o.stopPropagation(),a.getResizeHandler()(o)},onClick:o=>o.stopPropagation(),onKeyDown:o=>{(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),o.stopPropagation(),a.getResizeHandler()(o))},className:x("ps-absolute ps-right-0 ps-top-0 ps-h-full ps-w-px ps-cursor-col-resize ps-border ps-border-transparent hover:ps-border-table-border"),"aria-label":"Resize column"})]})}import{jsx as Ro}from"react/jsx-runtime";function Mo({className:e}){return Ro("div",{"data-loading-bar":!0,className:x("ps-h-[2px] ps-w-full ps-overflow-hidden ps-bg-gray-200 ps-z-50",e),children:Ro("div",{className:"ps-animate-indeterminate-bar ps-h-full ps-w-1/3 ps-rounded-r-full ps-bg-purple-600"})})}import*as To from"react";import{jsx as Ol}from"react/jsx-runtime";var Le=To.forwardRef(({className:e,type:a,...t},o)=>Ol("input",{type:a,className:x("ps-flex ps-h-9 ps-w-full ps-rounded-md ps-border ps-border-input ps-bg-transparent ps-px-3 ps-py-1 ps-shadow-sm ps-transition-colors file:ps-border-0 file:ps-bg-transparent file:ps-text-sm file:ps-font-medium file:ps-text-foreground placeholder:ps-text-muted-foreground focus-visible:ps-outline-none focus-visible:ps-ring-1 focus-visible:ps-ring-ring disabled:ps-cursor-not-allowed disabled:ps-opacity-50",e),ref:o,...t}));Le.displayName="Input";import{jsx as G,jsxs as Ta}from"react/jsx-runtime";function Ao(e){let{table:a,variant:t="basic"}=e,{pageIndex:o}=a.getState().pagination,r=a.getPageCount();return G("div",{className:"ps-rounded-b-lg ps-overflow-clip ps-sticky ps-bottom-0 ps-left-0 ps-border-t-0 w-full ps-z-20 ps-p-0",children:G("div",{className:"ps-flex ps-items-center ps-justify-between ps-space-x-2 ps-py-2 ps-px-2 ps-border-t ps-border-table-border ps-backdrop-blur-sm ps-bg-table-head/90",children:t==="basic"?Ta("div",{className:"ps-flex ps-items-center ps-space-x-2",children:[G(q,{variant:"outline",size:"sm",className:"ps-h-9",onClick:()=>a.previousPage(),disabled:!a.getCanPreviousPage(),children:"Previous"}),G(q,{variant:"outline",size:"sm",className:"ps-h-9",onClick:()=>a.nextPage(),disabled:!a.getCanNextPage(),children:"Next"})]}):G("div",{className:"ps-flex ps-items-center ps-space-x-2",children:Ta("div",{className:"ps-flex ps-items-center ps-space-x-2",children:[G(q,{variant:"outline",onClick:()=>a.setPageIndex(0),disabled:!a.getCanPreviousPage(),children:G(_e,{className:"ps-w-4 ps-h-4"})}),G(q,{variant:"outline",onClick:()=>a.previousPage(),disabled:!a.getCanPreviousPage(),children:G(Xe,{className:"ps-w-4 ps-h-4"})}),Ta("div",{className:"ps-flex ps-items-center ps-gap-1 ps-text-xs ps-font-medium",children:["Page",G(Le,{type:"number",min:1,max:r,value:o+1,className:"ps-w-16",onChange:l=>{let s=l.target.value?Number(l.target.value)-1:0;a.setPageIndex(s)}}),Ta("span",{className:"ps-shrink-0 ps-w-max",children:["of ",r]})]}),G(q,{variant:"outline",onClick:()=>a.nextPage(),disabled:!a.getCanNextPage(),children:G(ne,{className:"ps-w-4 ps-h-4"})}),G(q,{variant:"outline",onClick:()=>a.setPageIndex(r-1),disabled:!a.getCanNextPage(),children:G(Qe,{className:"ps-w-4 ps-h-4"})})]})})})})}function Ce(e){let a=e.getIsPinned(),t=a==="right"&&e.getIsFirstColumn("right");return{className:x("ps-group ps-border-r ps-border-b ps-border-table-border last:ps-border-r-0","ps-overflow-hidden ps-whitespace-nowrap ps-text-ellipsis",a&&["ps-sticky ps-bg-background ps-z-20",a==="left"?"ps-left-0":"ps-right-0"],!a&&"ps-relative ps-z-10",a&&t&&"ps-shadow-[-1px_0_0_0_hsl(var(--border))]"),style:{width:e.getSize(),left:a==="left"?`${e.getStart("left")}px`:void 0,right:a==="right"?`${e.getAfter("right")}px`:void 0}}}import{Fragment as jl,jsx as A,jsxs as Aa}from"react/jsx-runtime";var Jl=e=>{let{children:a,className:t,header:o,style:r}=e,{attributes:l,listeners:s,transform:u,transition:d,setNodeRef:n,isDragging:f}=Gl({id:o.id});return A(wa,{ref:n,...l,...s,style:{cursor:"grab",touchAction:"none",transform:Wl.Transform.toString(u),transition:d,...r,"--dragging-width":`${o.getSize()}px`},className:x(t,"ps-select-none ps-touch-none ps-sticky ps-top-0 ps-z-20 ps-bg-table-head",o.column.getIsPinned()&&"ps-sticky ps-z-30",f&&"!ps-z-50 ps-w-[var(--dragging-width)] ps-border-2 ps-border-violet-500"),children:A("div",{className:"ps-w-full",children:a})})};function Bo(e){let{columnDefs:a,getBeforeRows:t,isLoading:o,isProcessing:r,onPaginationChange:l,onRowSelectionChange:s,onSortingChange:u,pageCount:d,paginationState:n,rows:f,rowSelectionState:m,sortingState:g}=e,[I,S]=gt([]),[c,L]=gt({left:["__ps_select"],right:[]}),[C,v]=gt({}),U=Zl(()=>Do(g),[g]),K=o||r;Ql(()=>S(a.map(({accessorKey:T})=>T)),[]);function re({active:T,over:b}){b&&T.id!==b.id&&S(Z=>{let k=Z.indexOf(T.id),R=Z.indexOf(b.id);return Hl(Z,k,R)})}let Te=El(Nl,{activationConstraint:{distance:10}}),Ae=Ul(Te),X=_l({columnResizeMode:"onChange",columns:a,data:f,defaultColumn:{size:200,minSize:50,maxSize:500},enableColumnPinning:!0,enableColumnResizing:!0,enableRowSelection:!0,enableSorting:!!(u&&g),getCoreRowModel:Xl(),getRowId:({__ps_rowid:T})=>T,manualPagination:!0,manualSorting:!0,onColumnOrderChange:S,onColumnPinningChange:L,onColumnSizingChange:v,onPaginationChange:l,onRowSelectionChange:s,onSortingChange:T=>u?.(b=>(typeof T=="function"&&(T=T(Do(b))),$l(T))),pageCount:d,state:{columnOrder:I,columnPinning:c,columnSizing:C,pagination:n,rowSelection:m,sorting:U}});return Aa(jl,{children:[process.env.NODE_ENV==="production"?null:A(wo,{table:X}),Aa("div",{"data-studio":"content",className:"ps-flex-1 ps-w-0 ps-h-0 ps-min-w-full ps-flex ps-flex-col ps-relative ps-bg-slate-100",children:[A("div",{children:K&&A(Mo,{className:"ps-absolute -ps-top-[1px] ps-left-0 ps-right-0"})}),A(ql,{sensors:Ae,onDragEnd:re,children:Aa(Qa,{className:"ps-table-fixed ps-border-separate ps-border-spacing-0 ps-box-border",children:[A("colgroup",{children:A("col",{style:{width:"40px",minWidth:0,maxWidth:"40px"}})}),A(Za,{children:X.getHeaderGroups().map(T=>A(Pe,{children:A(Vl,{items:T.headers.filter(b=>b.id!=="__ps_select").map(b=>b.id),strategy:zl,children:T.headers.map(b=>b.id==="__ps_select"?A(wa,{style:Ce(b.column).style,className:x(Ce(b.column).className,"ps-select-none ps-sticky ps-top-0 ps-z-20 ps-bg-table-head ps-p-0 ps-table-cell-select",b.column.getIsPinned()&&"ps-sticky ps-z-30"),children:A("div",{className:"ps-flex ps-items-center ps-justify-center ps-h-full",children:Kl(b.column.columnDef.header,b.getContext())})},b.id):A(Jl,{header:b,table:X,...Ce(b.column),children:A(ko,{header:b})},b.id))})},T.id))}),Aa(Ja,{children:[t?.(X),X.getRowModel().rows?.length?X.getRowModel().rows.map(T=>A(Pe,{className:x("ps-bg-table-row ps-odd:bg-table-row-odd ps-group [&:last-of-type_td]:ps-border-b-0"),children:T.getVisibleCells().map((b,Z)=>{if(b.column.id==="__ps_select")return A(Ee,{style:Ce(b.column).style,className:x(Ce(b.column).className,"ps-table-cell-select"),children:typeof b.column.columnDef.cell=="function"&&(k=>{let R=b.column.columnDef.cell(b.getContext());return A(R,{className:"ps-w-full ps-h-full"})})({className:""})},b.id);if(typeof b.column.columnDef.cell=="function"){let k=b.column.columnDef.cell(b.getContext());return A(k,{...Ce(b.column)},Z)}return null})},T.id)):A(Pe,{children:A(Ee,{colSpan:a.length,className:"ps-h-24 ps-text-center",children:o?"Loading...":"No results."})})]})]})}),!d||d<2?null:A(Ao,{table:X,variant:"numeric"})]})]})}function Do(e){return e?.map(a=>({id:a.column,desc:a.direction==="desc"}))||[]}function $l(e){return e.map(a=>({column:a.id,direction:a.desc?"desc":"asc"}))}import*as Y from"@radix-ui/react-tooltip";import*as Oo from"react";import{jsx as Fo}from"react/jsx-runtime";var qo=Y.Provider,No=Y.Root,Eo=Y.Trigger,Lt=Oo.forwardRef(({className:e,sideOffset:a=4,...t},o)=>Fo(Y.Portal,{children:Fo(Y.Content,{ref:o,sideOffset:a,className:x("ps-z-50 ps-overflow-hidden ps-rounded-md ps-bg-primary ps-px-3 ps-py-1.5 ps-text-xs ps-text-primary-foreground ps-animate-in ps-fade-in-0 ps-zoom-in-95 data-[state=closed]:ps-animate-out data-[state=closed]:ps-fade-out-0 data-[state=closed]:ps-zoom-out-95 data-[side=bottom]:ps-slide-in-from-top-2 data-[side=left]:ps-slide-in-from-right-2 data-[side=right]:ps-slide-in-from-left-2 data-[side=top]:ps-slide-in-from-bottom-2 ps-origin-[--radix-tooltip-content-transform-origin]",e),...t})}));Lt.displayName=Y.Content.displayName;import{jsx as ve,jsxs as Ct}from"react/jsx-runtime";function Uo({column:e}){return e.isInPrimaryKey?Ct("span",{className:"ps-flex ps-flex-row ps-font-medium ps-items-center ps-gap-1",children:[ve(qo,{delayDuration:300,children:Ct(No,{children:[ve(Eo,{asChild:!0,children:ve($e,{size:12})}),ve(Lt,{children:ve("p",{children:"Primary Key"})})]})}),e.name]}):Ct("div",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center",children:[ve("span",{className:"ps-font-medium ps-truncate",children:e.name}),ve("span",{className:"ps-overflow-hidden ps-text-ellipsis ps-text-muted-foreground/70 ps-lowercase ps-truncate",children:e.datatype.name})]})}import{isObjectType as Pu}from"remeda";import{motion as Go}from"motion/react";import ou,{useState as Wo}from"react";import*as It from"@radix-ui/react-label";import{cva as Yl}from"class-variance-authority";import*as Ho from"react";import{jsx as au}from"react/jsx-runtime";var eu=Yl("ps-text-sm ps-font-medium ps-leading-none peer-disabled:ps-cursor-not-allowed peer-disabled:ps-opacity-70"),ia=Ho.forwardRef(({className:e,...a},t)=>au(It.Root,{ref:t,className:x(eu(),e),...a}));ia.displayName=It.Root.displayName;import*as fa from"@radix-ui/react-switch";import*as Vo from"react";import{jsx as zo}from"react/jsx-runtime";var ca=Vo.forwardRef(({className:e,...a},t)=>zo(fa.Root,{className:x("ps-peer ps-inline-flex ps-h-5 ps-w-9 ps-shrink-0 ps-cursor-pointer ps-items-center ps-rounded-full ps-border-2 ps-border-transparent ps-shadow-sm ps-transition-colors focus-visible:ps-outline-none focus-visible:ps-ring-2 focus-visible:ps-ring-ring focus-visible:ps-ring-offset-2 focus-visible:ps-ring-offset-background disabled:ps-cursor-not-allowed disabled:ps-opacity-50 data-[state=checked]:ps-bg-primary data-[state=unchecked]:ps-bg-input",e),...a,ref:t,children:zo(fa.Thumb,{className:x("ps-pointer-events-none ps-block ps-h-4 ps-w-4 ps-rounded-full ps-bg-background ps-shadow-lg ps-ring-0 ps-transition-transform data-[state=checked]:ps-translate-x-4 data-[state=unchecked]:ps-translate-x-0")})}));ca.displayName=fa.Root.displayName;import{Fragment as tu,jsx as ke,jsxs as pa}from"react/jsx-runtime";var W=({onSave:e,onCancel:a,onClose:t,onNullChange:o,isNull:r=!1,readonly:l})=>ke("div",{className:"ps-flex ps-flex-row ps-gap-1 ps-border-t ps-border-table-border ps-text-xs ps-",children:!l&&pa(tu,{children:[pa("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-mr-auto",children:[pa("button",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center ps-cursor-pointer",onClick:()=>{e&&e(),t&&t()},children:[ke("kbd",{className:"ps-inline-flex ps-justify-center ps-items-center ps-h-6 ps-w-6 ps-rounded-md ps-bg-muted ps-text-muted-foreground",children:ke(Je,{size:12,strokeWidth:2})})," ","Save changes"]}),pa("button",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center ps-cursor-pointer",onClick:()=>{a&&a(),t&&t()},children:[ke("kbd",{className:"ps-inline-flex ps-justify-center ps-items-center ps-h-6 ps-w-6 ps-rounded-md ps-bg-muted ps-text-muted-foreground ps-text-[8px] ps-leading-none ps-font-semibold",children:"Esc"})," ","Cancel changes"]})]}),o&&ke("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2",children:pa("label",{className:"ps-flex ps-flex-row ps-gap-1 ps-items-center",htmlFor:"set-nullable",children:[ke(ca,{id:"set-nullable",checked:r,onCheckedChange:n=>{o&&o(n)}}),ke("span",{children:"Set to NULL"})]})})]})});import{Fragment as ru,jsx as ma,jsxs as Ko}from"react/jsx-runtime";function Xo(e){let{value:a,onSubmit:t,column:o,readonly:r}=e,l=o.nullable===!0,[s,u]=Wo(a===null?!1:a),[d,n]=Wo(a===null),f=a===null?!1:a,m=C=>{u(C)},g=C=>{n(C)},I=ou.useCallback(()=>{let C=d?null:s;return C!==a?(t(C),!0):!1},[s,a,t,d]),S=()=>{u(f),n(a===null)},{handleSave:c,handleCancel:L}=z({onSave:I,onCancel:S,readonly:r});return Ko(ru,{children:[Ko("div",{className:"ps-flex ps-flex-row ps-items-center ps-h-[var(--studio-cell-height)] ps-gap-4 ps-py-0 ps-px-2",children:[ma(ia,{htmlFor:"boolean-input",className:"ps-sr-only",children:"Boolean"}),ma(Go.div,{className:"ps-flex ps-items-center",initial:{opacity:0},animate:{opacity:1},transition:{duration:.24},children:ma(ca,{id:"boolean-input",checked:s,onCheckedChange:m,disabled:d||r})}),ma(Go.div,{"data-value":!0,className:"ps-inline-flex ps-items-center ps-text-xs ps-text-muted-foreground ps-font-mono",initial:{x:-40,opacity:1},animate:{x:0,opacity:1},transition:{duration:.12,delay:0},children:d?"NULL":String(s)})]}),ma(W,{onSave:c,onCancel:L,onNullChange:l?g:void 0,isNull:d,readonly:r})]})}import _o from"dayjs";import lu from"dayjs/plugin/localizedFormat";import{useCallback as uu,useMemo as du}from"react";import{useState as su}from"react";function Ue(e){let{initialValue:a}=e,[t,o]=su(a??"");return{handleOnChange:l=>{o(l.target.value)},value:t}}import{Fragment as nu,jsx as xa,jsxs as ht}from"react/jsx-runtime";_o.extend(lu);function Qo(e){let{onSubmit:a,value:t,readonly:o}=e,r=String(t),{handleOnChange:l,value:s}=Ue({initialValue:r}),u=du(()=>{try{let I=_o(s);return I.isValid()?s.includes(":")?I.format("LL LTS"):I.format("LL"):s}catch{return s}},[s]);function d(I){I.preventDefault(),s!==r&&a(s)}let n=uu(()=>s!==r?(a(s),!0):!1,[s,r,a]),f=()=>{},{handleSave:m,handleCancel:g}=z({onSave:n,onCancel:f,readonly:o});return ht(nu,{children:[ht("form",{onSubmit:d,children:[xa(Le,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:l,type:"text",value:s}),xa("input",{type:"submit",className:"ps-sr-only"})]}),ht("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-border-t ps-border-table-border",children:[xa("div",{className:"ps-text-xs ps-text-muted-foreground",children:"Formatted value"}),xa("div",{className:"ps-text-xs ps-font-mono ps-text-foreground",children:u})]}),xa(W,{onSave:m,onCancel:g,readonly:o})]})}import{useCallback as fu,useState as Jo}from"react";import{cva as iu}from"class-variance-authority";import{jsx as Km}from"react/jsx-runtime";var Zo=iu("ps-inline-flex ps-items-center ps-rounded-md ps-border ps-px-2.5 ps-py-0.5 ps-text-xs ps-font-semibold ps-transition-colors focus:ps-outline-none focus:ps-ring-2 focus:ps-ring-ring focus:ps-ring-offset-2",{variants:{variant:{default:"ps-border-transparent ps-bg-primary ps-text-primary-foreground ps-shadow hover:ps-bg-primary/80",secondary:"ps-border-transparent ps-bg-secondary ps-text-secondary-foreground hover:ps-bg-secondary/80",destructive:"ps-border-transparent ps-bg-destructive ps-text-destructive-foreground ps-shadow hover:ps-bg-destructive/80",outline:"ps-text-foreground"}},defaultVariants:{variant:"default"}});import{Fragment as cu,jsx as Da,jsxs as pu}from"react/jsx-runtime";function $o(e){let{onSubmit:a,column:t,value:o,options:r=[],readonly:l}=e,s=t.nullable===!0,u=String(o),[d,n]=Jo(u),[f,m]=Jo(o===null),g=v=>{n(v)},I=v=>{m(v)},S=fu(()=>f?o!==null?(a(null),!0):!1:d!==u?(a(d),!0):!1,[d,u,a,f,o]),c=()=>{n(u),m(o===null)},{handleSave:L,handleCancel:C}=z({onSave:S,onCancel:c,readonly:l});return pu(cu,{children:[Da("div",{className:"ps-flex ps-items-center ps-gap-2 ps-font-mono ps-h-[var(--studio-cell-height)] ps-px-2 ps-py-0 ps-w-full ps-text-xs ps-text-muted-foreground",children:d}),Da("div",{className:"ps-flex ps-flex-row ps-flex-wrap ps-gap-2 ps-p-2 ps-min-w-[var(--radix-popover-trigger-width)] ps-max-w-min ps-border-t ps-border-table-border ps-overflow-y-scroll ps-max-h-32",children:r.map(v=>Da("button",{onClick:()=>g(v),className:Zo({variant:v===d?"default":"outline"}),disabled:f||l,children:v},v))}),Da(W,{onSave:L,onCancel:C,onNullChange:s?I:void 0,isNull:f,readonly:l})]})}import mu,{useState as jo}from"react";import{Fragment as xu,jsx as St,jsxs as gu}from"react/jsx-runtime";function Yo(e){let{value:a,onSubmit:t,column:o,readonly:r}=e,l=o.nullable===!0,s=a===null?"":JSON.stringify(a,null,2),[u,d]=jo(s),[n,f]=jo(a===null),m=C=>{d(C.target.value)},g=C=>{f(C)},I=mu.useCallback(()=>{if(n)return a!==null?(t(null),!0):!1;let C=u===""?null:JSON.parse(u);return C!==a?(t(C),!0):!1},[u,a,t,n]),S=()=>{d(s),f(a===null)},{handleSave:c,handleCancel:L}=z({onSave:I,onCancel:S,readonly:r});return gu(xu,{children:[St("div",{className:"ps-flex ps-flex-row ps-items-center ps-gap-4 ps-py-0",children:St("textarea",{rows:5,value:u,onChange:m,disabled:n||r,className:"ps-cell-input-base ps-appearance-none ps-w-full ps-font-mono ps-border-none ps-outline-none ps-shadow-none ps-bg-transparent focus-visible:ps-ring-0 ps-resize ps-px-[var(--studio-cell-spacing)]",lang:"en_EN"})}),St(W,{onSave:c,onCancel:L,onNullChange:l?g:void 0,isNull:n,readonly:r})]})}import Lu,{useState as er}from"react";import{Fragment as Cu,jsx as bt,jsxs as ar}from"react/jsx-runtime";function tr(e){let{value:a,onSubmit:t,column:o,readonly:r}=e,l=o.nullable===!0,[s,u]=er(a===null?"":String(a)),[d,n]=er(a===null),f=a===null?"":String(a),m=C=>{u(C.target.value)},g=C=>{n(C)},I=Lu.useCallback(()=>{if(d)return a!==null?(t(null),!0):!1;let C=s===""?null:Number(s);return s!==a?(t(C),!0):!1},[s,a,t,d]),S=()=>{u(f),n(a===null)},{handleSave:c,handleCancel:L}=z({onSave:I,onCancel:S,readonly:r});return ar(Cu,{children:[ar("div",{className:"ps-flex ps-flex-row ps-items-center ps-h-[var(--studio-cell-height)] ps-gap-4 ps-py-0",children:[bt(ia,{htmlFor:"numeric-input",className:"ps-sr-only",children:"Numeric"}),bt("input",{type:"text",inputMode:"numeric",pattern:"\\d*",value:s,onChange:m,disabled:d||r,className:"ps-cell-input-leading ps-appearance-none ps-w-full ps-font-mono ps-border-none ps-outline-none ps-shadow-none ps-bg-transparent focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",step:"any",lang:"en_EN"})]}),bt(W,{onSave:c,onCancel:L,onNullChange:l?g:void 0,isNull:d,readonly:r})]})}import Iu from"react";import{Fragment as hu,jsx as wt,jsxs as or}from"react/jsx-runtime";function rr(e){let{onSubmit:a,value:t,readonly:o}=e,r=String(t),{handleOnChange:l,value:s}=Ue({initialValue:r});function u(g){g.preventDefault(),s!==r&&a(s)}let d=Iu.useCallback(()=>s!==r?(a(s),!0):!1,[s,r,a]),n=()=>{},{handleSave:f,handleCancel:m}=z({onSave:d,onCancel:n,readonly:o});return or(hu,{children:[or("form",{onSubmit:u,children:[wt(Le,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:l,type:"text",value:s,disabled:o}),wt("input",{type:"submit",className:"ps-sr-only"})]}),wt(W,{onSave:f,onCancel:m,readonly:o})]})}import sr from"dayjs";import Su from"dayjs/plugin/localizedFormat";import{useCallback as bu,useMemo as wu}from"react";import{Fragment as yu,jsx as ga,jsxs as yt}from"react/jsx-runtime";sr.extend(Su);function lr(e){let{onSubmit:a,value:t,readonly:o}=e,r=String(t),{handleOnChange:l,value:s}=Ue({initialValue:r}),u=wu(()=>{try{if(!s.includes(":"))return s;let I=/[+-]\d{2}(:\d{2})?$/.test(s),S=sr(`2000-01-01 ${s}`);if(S.isValid())return S.format("h:mm A")+(I?` (${S.format("Z")})`:"");let c=/(\d{1,2}):(\d{2}):(\d{2})(?:\.\d+)?([+-]\d{2}(?::\d{2})?)?/,L=s.match(c);if(L){let C=parseInt(L[1]||"12",10),v=L[2]||"00",U=L[4]||"",K=C>=12?"PM":"AM";return`${C%12===0?12:C%12}:${v} ${K}${U?` (${U})`:""}`}return s}catch{return s}},[s]);function d(I){I.preventDefault(),s!==r&&a(s)}let n=bu(()=>s!==r?(a(s),!0):!1,[s,r,a]),f=()=>{},{handleSave:m,handleCancel:g}=z({onSave:n,onCancel:f,readonly:o});return yt(yu,{children:[yt("form",{onSubmit:d,children:[ga(Le,{className:"ps-cell-input-leading ps-font-mono ps-border-none ps-shadow-none focus-visible:ps-ring-0 ps-resize-none ps-px-[var(--studio-cell-spacing)]",onChange:l,type:"text",value:s}),ga("input",{type:"submit",className:"ps-sr-only"})]}),yt("div",{className:"ps-flex ps-flex-col ps-gap-1 ps-p-2 ps-border-t ps-border-table-border",children:[ga("div",{className:"ps-text-xs ps-text-muted-foreground",children:"Formatted value"}),ga("div",{className:"ps-text-xs ps-font-mono ps-text-foreground",children:u})]}),ga(W,{onSave:m,onCancel:g,readonly:o})]})}import{jsx as Re}from"react/jsx-runtime";function Ba(e){let{cell:a,column:t,onSubmit:o}=e,{group:r,options:l,isArray:s}=t.datatype,u=t.isComputed||e.readonly,d=a.getValue(),n=d===void 0?"":d;return r==="datetime"?Re(Qo,{onSubmit:o,value:n,column:t,readonly:u}):r==="time"?Re(lr,{onSubmit:o,value:n,column:t,readonly:u}):r==="json"||s?Re(Yo,{onSubmit:o,value:n,column:t,readonly:u}):r==="boolean"?Re(Xo,{onSubmit:o,value:n,column:t,readonly:u}):r==="enum"?Re($o,{onSubmit:o,value:n,options:l,column:t,readonly:u}):r==="numeric"?Re(tr,{onSubmit:o,value:n,column:t,readonly:u}):Re(rr,{onSubmit:o,value:Pu(n)?JSON.stringify(n):n,readonly:u})}import{useReactTable as vu}from"@tanstack/react-table";import{omit as ku}from"remeda";import{Fragment as Ru,jsx as La}from"react/jsx-runtime";function ur(e){let{table:a,stagedRows:t,setStagedRows:o}=e,r=!!Sa();function l(d,n){o(f=>{let m=[...f];return m[d]={...m[d],...n},m})}let s=Object.values(a.options.columns).map(d=>d.id==="__ps_select"?{...d,cell(){return()=>La(da,{})}}:{...d,cell({cell:n}){return f=>La(ka,{cellComponent:va({cell:n,column:d.meta,props:f}),inputComponent:Ba({cell:n,column:d.meta,onSubmit(m){l(f.rowIndex,{[d.id]:m})},readonly:r})})}}),u=vu({...a.options,columns:s,enableSorting:!1,onPaginationChange:void 0,onSortingChange:void 0,data:t,state:ku(a.options.state,["pagination","sorting"])});return La(Ru,{children:u.getRowModel().rows.map((d,n)=>La(Pe,{children:d.getVisibleCells().map((f,m)=>{if(typeof f.column.columnDef.cell=="function"){let g=f.column.columnDef.cell(f.getContext());return La(g,{...Ce(f.column),rowIndex:n},m)}return null})},n))})}import{Fragment as Pt,jsx as E,jsxs as Fa}from"react/jsx-runtime";function dr(e){let a=!!Mu(),{activeTable:t,onError:o,isFullscreen:r,toggleFullscreen:l}=B(),{sortingState:s,setSortingState:u}=so(),{paginationState:d,setPaginationState:n}=ba(),[f,m]=Au([]),{data:g,isFetching:I}=ao({...d,sortOrder:s}),{deleteSelection:S,isSelecting:c,rowSelectionState:L,setRowSelectionState:C}=ro(g),v=!Object.values(t?.columns??{}).some(R=>R.isInPrimaryKey),U=Sa(),K=eo(),re=to();if(Tu(()=>m([]),[t]),!t)return null;function Te(){K.mutate(f,{onError:o,onSuccess(){Du.success("Rows inserted successfully"),m([])}})}function Ae(){m(R=>[...R,{}])}function X(){m([])}function T(R,_,De){re.mutate({details:{changes:{[_.name]:R},row:De,table:t},options:{}})}let b=Object.values(t?.columns??{}).map(R=>({id:R.name,accessorKey:R.name,meta:R,header(){return Uo({column:R})},cell({cell:_}){return De=>E(ka,{cellComponent:va({cell:_,column:R,props:De}),inputComponent:Ba({cell:_,column:R,readonly:v,onSubmit(Be){return T(Be,R,_.row.original)}})})}})),Z=[{id:"__ps_select",accessorKey:"__ps_select",enablePinning:!1,meta:{disableDragging:!0},header({table:R}){return E(la,{checked:R.getIsAllRowsSelected(),onCheckedChange:_=>R.toggleAllRowsSelected(!!_),disabled:v})},cell({row:R}){return()=>E(dt,{row:R,readonly:v})}}],k=[...b,...Z].sort(Fu);return Fa(Pt,{children:[E("div",{className:"ps-bg-studio-header-background ps-flex ps-w-full ps-p-2 ps-py-3 ps-border-b ps-bg-card ps-rounded-t-lg",children:E("div",{className:"ps-flex ps-items-center ps-justify-between ps-w-full ps-gap-2",children:Fa("div",{className:"ps-flex ps-flex-grow ps-justify-between ps-items-center",children:[Fa("div",{className:"ps-flex ps-items-center ps-gap-2",children:[E(q,{variant:"outline",size:"sm",onClick:Ae,disabled:U>0,children:"Insert row"}),f.length>0&&Fa(Pt,{children:[E(q,{variant:"secondary",size:"sm",onClick:Te,children:"Save"}),E(q,{variant:"ghost",size:"sm",onClick:X,children:"Cancel"})]}),c&&E(Pt,{children:E(q,{variant:"secondary",size:"sm",onClick:S,children:"Delete"})})]}),E(q,{variant:"outline",size:"icon",onClick:l,children:r?E(Ye,{}):E(je,{})})]})})}),E(Bo,{columnDefs:k,getBeforeRows:R=>E(ur,{table:R,stagedRows:f,setStagedRows:m}),isLoading:I,isProcessing:a,onPaginationChange:n,onRowSelectionChange:C,onSortingChange:u,pageCount:Bu(g?.filteredRowCount??1/0,d.pageSize),paginationState:d,rows:g?.rows??[],rowSelectionState:L,sortingState:s})]})}function Bu(e,a){if(e===1/0)return;let t=Number((BigInt(e)+BigInt(a)-BigInt(1))/BigInt(a));return Number.isSafeInteger(t)?t:Number.MAX_SAFE_INTEGER}function Fu(e,a){let t=e.meta,o=a.meta;return e.id==="__ps_select"||a.id==="__ps_select"?1:t===void 0||o===void 0?0:t.isInPrimaryKey&&!o.isInPrimaryKey?-1:!t.isInPrimaryKey&&o.isInPrimaryKey?1:t.name.localeCompare(o.name)}import{Slot as Uu}from"@radix-ui/react-slot";import{jsx as Ou}from"react/jsx-runtime";function nr({className:e,...a}){return Ou("div",{className:x("ps-animate-pulse ps-rounded-md ps-bg-primary/10",e),...a})}import{useCallback as Nu,useEffect as fr,useMemo as cr}from"react";import{v4 as Eu}from"uuid";import{useQuery as qu}from"@tanstack/react-query";var Oa=-1;function ir(){let{adapter:e}=B();return qu({initialData:{schemas:{[e.defaultSchema||"db"]:{tables:{}}},timezone:"UTC"},initialDataUpdatedAt:Oa,queryFn:async({signal:a})=>{let[t,o]=await e.introspect({abortSignal:a});if(t)throw t;return o},queryKey:["introspection"],staleTime:a=>a.state.dataUpdatedAt===Oa?0:1/0})}function pr(){let{activeTable:e,setActiveTable:a,adapter:t,emitTelemetryEvent:o}=B(),{data:r,dataUpdatedAt:l}=ir(),s=l===Oa,u=cr(()=>Object.values(r.schemas[t.defaultSchema||"db"]?.tables||{}),[r.schemas,t.defaultSchema]),d=cr(()=>Object.values(r.schemas).reduce((c,L)=>c+Object.keys(L.tables).length,0),[r.schemas]),[n]=u,[f,m]=ua({table:{defaultValue:null,parse:c=>c,serialize:c=>c??""},schema:{defaultValue:"",parse:c=>c,serialize:c=>c??""}}),[,g]=Ne("pageIndex",{parse:c=>c,serialize:c=>c??""}),[,I]=Ne("sort",{parse:c=>c,serialize:c=>c??""});fr(()=>{if(!s){if(f?.table&&u.length>0){let c=u.find(L=>L.name===f.table);if(c){a(c);return}}u.length>0&&!e&&(a(n||null),n&&m({table:n.name,schema:n.schema}))}},[s,f,u,n,e,a,m]);let S=Nu(c=>{e!==c&&(a(c),m({table:c.name,schema:c.schema}),g(null),I(null))},[e,a,m,g,I]);return fr(()=>{l!==-1&&o({event:"studio_launched",payload:{event_id:Eu(),timestamp:new Date().toISOString(),table_count:d}})},[u,o,l,d]),{tables:u,activeTable:e,isLoading:s,handleTableChange:S}}import{jsx as ee,jsxs as Vu}from"react/jsx-runtime";function we(){let{tables:e,activeTable:a,isLoading:t,handleTableChange:o}=pr();return ee("div",{className:"ps-flex ps-flex-col ps-w-64 ps-gap-4 ps-shrink-0 ps-overflow-y-auto ps-max-h-full ps-min-h-0 ps-rounded-lg ps-border ps-bg-card ps-text-card-foreground ps-shadow-xs",children:ee(we.Block,{label:"Tables",children:e.length>0?e.map(r=>ee(we.Item,{isActive:a===r,onClick:()=>{o(r)},className:"ps-py-1 ps-font-mono ps-text-xs ps-text-foreground/60 hover:ps-text-foreground ps-transition-all ps-cursor-pointer data-[active=true]:ps-bg-primary/5 data-[active=true]:ps-foreground data-[active=true]:ps-text-foreground",children:r.name},`${r.schema}-${r.name}`)):t?Array(4).fill(null).map((r,l)=>ee(we.Item,{wrapChildrenInSpan:!1,children:ee(nr,{className:"ps-h-3 ps-w-full"})},l)):ee(we.Item,{children:"No tables found"})})})}var Hu=({className:e,label:a,children:t,...o})=>Vu("div",{className:e,...o,children:[ee("div",{className:"ps-pt-4 ps-pb-2 ps-px-4 ps-sticky ps-top-0 ps-bg-card",children:ee("h2",{className:"ps-text-sm ps-font-medium",children:a})}),ee("nav",{"aria-label":a,className:"ps-flex ps-flex-col ps-gap-px ps-pb-3",children:t})]}),zu=({className:e,asChild:a=!1,isActive:t,size:o,children:r,wrapChildrenInSpan:l=!0,...s})=>ee(a?Uu:"button",{"data-sidebar":"menu-button","data-size":o,"data-active":t,className:x("ps-py-1.5 ps-px-4 ps-text-sm ps-font-medium ps-flex ps-gap-2 ps-items-center ps-border ps-border-transparent ps-bg-transparent ps-hover:bg-muted/50",e),...s,children:l?ee("span",{className:"ps-truncate",children:r}):r});we.Block=Hu;we.Item=zu;import{jsx as Me,jsxs as Ku}from"react/jsx-runtime";function Gu(e){let{adapter:a,onError:t,onTelemetryEvent:o}=e;return a?Me(jt,{adapter:a,onError:t,onTelemetryEvent:o,children:Me(Wu,{})}):(console.error("No adapter provided to Studio component"),Me("div",{children:"Error: No adapter provided"}))}function Wu(){let{isFullscreen:e}=B(),a=x("ps-flex ps-flex-col ps-w-full ps-min-h-0 ps-max-h-full",e&&"ps-fixed ps-inset-0 ps-z-[9999] ps-bg-background ps-p-2");return Me("div",{className:a,children:Ku("div",{className:"ps-flex ps-gap-4 ps-w-full ps-bg-background ps-relative ps-max-h-full ps-min-h-full",children:[Me(we,{}),Me("div",{className:"ps-flex ps-w-full ps-flex-col ps-bg-slate-100 ps-border ps-rounded-lg ps-self-start ps-h-full ps-min-h-full ps-max-h-full ps-overflow-clip",children:Me(dr,{})})]})})}export{Gu as Studio};
|
|
21
21
|
/*! Bundled license information:
|
|
22
22
|
|
|
23
23
|
lucide-react/dist/esm/shared/src/utils.js:
|