efficient-shell 10.23.0 → 10.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/README.md +14 -3
  2. package/dist/{Browser-GTQKXJQ6.js → Browser-KUFFOGYK.js} +14 -14
  3. package/dist/Calculator-LENRW34X.js +29 -0
  4. package/dist/CurrencyConverter-7UMHQS2V.js +21 -0
  5. package/dist/{Documents-MTCJXTXY.js → Documents-ODZ4AAOY.js} +16 -16
  6. package/dist/{Files-XMZ3XBP4.js → Files-BRGTTI2J.js} +25 -25
  7. package/dist/Notepad-RMRDEGGU.js +24 -0
  8. package/dist/{PomodoroTimer-5ELVNJEU.js → PomodoroTimer-4566W4F7.js} +40 -40
  9. package/dist/{Preview-QCA6XUDU.js → Preview-7POJP7PB.js} +33 -33
  10. package/dist/Sidebar-TU4QCKYJ.js +44 -0
  11. package/dist/Spreadsheet-7T4VT5IO.js +37 -0
  12. package/dist/{Stock-TRG6CAZJ.js → Stock-H73C4R3N.js} +3 -3
  13. package/dist/{Weather-YGTT7UWR.js → Weather-WF56QCBI.js} +19 -19
  14. package/dist/{WorldClock-UCX5LCJB.js → WorldClock-5QJNZYYS.js} +6 -6
  15. package/dist/ai/index.js +1 -1
  16. package/dist/api/shellHttp.d.ts +52 -0
  17. package/dist/api/shellHttp.js +1 -0
  18. package/dist/apps/index.js +1 -1
  19. package/dist/bin/media-host-check.js +1 -1
  20. package/dist/bin/ui-check.js +1 -1
  21. package/dist/chunk-2QY5BJLA.js +2 -0
  22. package/dist/chunk-3C5NKOVF.js +1 -0
  23. package/dist/chunk-3FBDLIQW.js +99 -0
  24. package/dist/chunk-4LXCCZDM.js +1 -0
  25. package/dist/chunk-5DIGYJHD.js +1 -0
  26. package/dist/{chunk-U2RFKQVA.js → chunk-5H4SWQGM.js} +1 -1
  27. package/dist/{chunk-75UD5ZMP.js → chunk-6IOFNPR6.js} +3 -3
  28. package/dist/{chunk-YOZGW2RB.js → chunk-7FW2BQTV.js} +1 -1
  29. package/dist/{chunk-RV2FGSGH.js → chunk-ALTBTO3Z.js} +2 -2
  30. package/dist/chunk-ATMJ5ZPK.js +1 -0
  31. package/dist/{chunk-XJPKDTQN.js → chunk-BUO7XCYR.js} +12 -12
  32. package/dist/{chunk-JET2TKEQ.js → chunk-DOF56HTO.js} +5 -5
  33. package/dist/chunk-E6FDUFPH.js +1 -0
  34. package/dist/chunk-EH2BNSG3.js +13 -0
  35. package/dist/chunk-F3ZOO23R.js +1 -0
  36. package/dist/chunk-HNVSVTNC.js +16 -0
  37. package/dist/{chunk-E6LQY6TB.js → chunk-IHNOWRTP.js} +2 -2
  38. package/dist/{chunk-E5QPXEKN.js → chunk-JFBL4PR3.js} +1 -1
  39. package/dist/{chunk-O52BQ5DP.js → chunk-NZ7BFYCM.js} +1 -1
  40. package/dist/chunk-O3MBPAWZ.js +2 -0
  41. package/dist/{chunk-DBL7MFCB.js → chunk-PVDZG2U2.js} +4 -4
  42. package/dist/{chunk-G7BBSHDF.js → chunk-QRU55BUS.js} +1 -1
  43. package/dist/{chunk-5RQJRD2E.js → chunk-RSOBUPLK.js} +1 -1
  44. package/dist/{chunk-VCCGS6Q2.js → chunk-S5DYR75A.js} +8 -8
  45. package/dist/chunk-STKJA4PV.js +1 -0
  46. package/dist/{chunk-ZTV2BA3P.js → chunk-U6LKNGC6.js} +1 -1
  47. package/dist/chunk-UKBXQXDZ.js +1 -0
  48. package/dist/chunk-ULJQYXHB.js +1 -0
  49. package/dist/{chunk-I4DLYOPO.js → chunk-V2J2AHDW.js} +4 -4
  50. package/dist/{chunk-Z46MSUTP.js → chunk-WLYYC3AP.js} +1 -1
  51. package/dist/{chunk-OGU5JE52.js → chunk-WOAMPTZI.js} +6 -6
  52. package/dist/{chunk-GCZU4XFA.js → chunk-Z6GQFTLJ.js} +1 -1
  53. package/dist/data/DataTable.js +1 -1
  54. package/dist/data/EntityList.d.ts +125 -0
  55. package/dist/data/EntityList.js +2 -0
  56. package/dist/data/ResizableTable.d.ts +31 -0
  57. package/dist/data/ResizableTable.js +2 -0
  58. package/dist/data/useColumnConfig.d.ts +68 -0
  59. package/dist/data/useColumnConfig.js +2 -0
  60. package/dist/data/useSort.d.ts +55 -0
  61. package/dist/data/useSort.js +2 -0
  62. package/dist/data/useTableNav.d.ts +28 -0
  63. package/dist/data/useTableNav.js +2 -0
  64. package/dist/format/index.js +1 -1
  65. package/dist/forms/BorderInput.js +1 -1
  66. package/dist/forms/BrandAssetEditor.js +1 -1
  67. package/dist/forms/ColorPicker.js +1 -1
  68. package/dist/forms/CornersInput.js +1 -1
  69. package/dist/forms/InputNumber.js +1 -1
  70. package/dist/forms/LinkPicker.js +1 -1
  71. package/dist/forms/MediaLibrary.js +1 -1
  72. package/dist/forms/MediaUploadGrid.js +1 -1
  73. package/dist/forms/PositionInput.js +1 -1
  74. package/dist/forms/SidesInput.js +1 -1
  75. package/dist/forms/Slider.js +1 -1
  76. package/dist/forms/WidthsBar.js +1 -1
  77. package/dist/icons/efficient-glyphs.js +1 -1
  78. package/dist/icons/efficient-looks.js +1 -1
  79. package/dist/icons/efficient.js +1 -1
  80. package/dist/icons/looks/map.js +1 -1
  81. package/dist/icons/payment.js +1 -1
  82. package/dist/icons/sets.js +1 -1
  83. package/dist/index.d.ts +13 -317
  84. package/dist/index.js +667 -694
  85. package/dist/shell/LanguageSelect.js +1 -1
  86. package/dist/telemetry/index.js +1 -1
  87. package/dist/templates/DataTablePage.js +1 -1
  88. package/dist/ui/index.d.ts +6 -0
  89. package/dist/ui/index.js +1 -1
  90. package/dist/version.js +1 -1
  91. package/package.json +1 -1
  92. package/dist/Calculator-PM4TYWTE.js +0 -29
  93. package/dist/CurrencyConverter-4I2ENTSX.js +0 -21
  94. package/dist/Notepad-QIJN7VDZ.js +0 -24
  95. package/dist/Sidebar-7LN3ZEF4.js +0 -44
  96. package/dist/Spreadsheet-EKYP6XIX.js +0 -37
  97. package/dist/chunk-7IY47EKR.js +0 -1
  98. package/dist/chunk-CY5N5OA3.js +0 -2
  99. package/dist/chunk-I3XM2PSQ.js +0 -100
  100. package/dist/chunk-OFCHJWM2.js +0 -1
  101. /package/dist/{chunk-CSA6CGXS.js → chunk-RKLZDVAO.js} +0 -0
@@ -1,4 +1,4 @@
1
- import{Checkbox_default as e}from"./chunk-CGZBDI6C.js";import{Pagination as t}from"./chunk-LXL2UCUR.js";import{SpinnerRing as r}from"./chunk-R2VKEMZH.js";import{TH_ONE_LINE as o,OneLineLabel as n}from"./chunk-WGLHB6WE.js";import{useBrowserLayoutEffect as l}from"./chunk-D65T4H6J.js";import{useShellStrings as s}from"./chunk-GDQJBQ5B.js";import{useState as i,useRef as a}from"react";import{jsxs as c,Fragment as d,jsx as h}from"react/jsx-runtime";function u(e){const t={};if(!e)return t;for(const[r,o]of Object.entries(e))!r.startsWith("data-")||"string"!=typeof o&&"number"!=typeof o&&"boolean"!=typeof o||(t[r]=o);return t}var m=e=>Array.isArray(e.columns),f=e=>"wide"===e.only?"rosh-dt-only-wide":"stacked"===e.only?"rosh-dt-only-stacked":"",g="rosh-dt-row-link rosh-focus-ring underline-offset-4 hover:underline",p={sm:"px-2 py-2",md:"px-3 py-2"},y={left:"text-left",right:"text-right",center:"text-center"};function b({direction:e}){/* @__PURE__ */
1
+ import{Pagination as e}from"./chunk-LXL2UCUR.js";import{Checkbox_default as t}from"./chunk-CGZBDI6C.js";import{SpinnerRing as r}from"./chunk-R2VKEMZH.js";import{TH_ONE_LINE as o,OneLineLabel as n}from"./chunk-WGLHB6WE.js";import{useBrowserLayoutEffect as l}from"./chunk-D65T4H6J.js";import{useShellStrings as s}from"./chunk-GDQJBQ5B.js";import{useState as i,useRef as a}from"react";import{jsxs as c,Fragment as d,jsx as h}from"react/jsx-runtime";function u(e){const t={};if(!e)return t;for(const[r,o]of Object.entries(e))!r.startsWith("data-")||"string"!=typeof o&&"number"!=typeof o&&"boolean"!=typeof o||(t[r]=o);return t}var m=e=>Array.isArray(e.columns),f=e=>"wide"===e.only?"rosh-dt-only-wide":"stacked"===e.only?"rosh-dt-only-stacked":"",g="rosh-dt-row-link rosh-focus-ring underline-offset-4 hover:underline",p={sm:"px-2 py-2",md:"px-3 py-2"},y={left:"text-left",right:"text-right",center:"text-center"};function b({direction:e}){/* @__PURE__ */
2
2
  return c("span",{className:"ml-1 inline-flex flex-col leading-none","aria-hidden":"true",children:[
3
3
  /* @__PURE__ */h("svg",{className:"h-2 w-2 "+("asc"===e?"text-gray-700":"text-gray-300"),viewBox:"0 0 8 5",fill:"currentColor",children:/* @__PURE__ */h("path",{d:"M4 0L8 5H0z"})}),
4
4
  /* @__PURE__ */h("svg",{className:"h-2 w-2 "+("desc"===e?"text-gray-700":"text-gray-300"),viewBox:"0 0 8 5",fill:"currentColor",children:/* @__PURE__ */h("path",{d:"M4 5L0 0h8z"})})]})}function w(e,t=!1){const r=t?"":" whitespace-nowrap";return e.code?`font-mono${r}`:e.numeric?`tabular-nums${r}`:""}function x({columns:x,data:v,rowKey:k,sort:N=null,onSortChange:C,pagination:j,caption:B,loading:M=!1,bordered:$=!1,size:S="md",minWidth:z,rowClassName:H,onRow:L,rowHref:T,onRowPress:I,linkAs:D,emptyText:E,selection:R,footer:W,virtualized:A,stackOnNarrow:F=!1,stackBelow:O,className:P=""}){const G=s(),K=E??G.table.empty,J=(e,t)=>"function"==typeof k?k(e,t):String(e[k]),Q=F&&!A,U=Q?x:x.flatMap(e=>{if(!m(e))return"stacked"===e.only?[]:[e];const t=e.columns.filter(e=>"stacked"!==e.only);return t.length?[{...e,columns:t}]:[]}),Z=e=>Q?{role:e}:{},V=(e,t)=>(t??("string"==typeof e||"number"==typeof e?String(e):"")).trim()||void 0,[X,q]=i(0),Y=A?.overscan??6,_=A?e=>{const t=Math.max(0,Math.floor(e.currentTarget.scrollTop/A.rowHeight)-Y);q(e=>e===t?e:t)}:void 0,ee=A?Math.ceil(A.height/A.rowHeight)+2*Y:v.length,te=A?Math.min(X,Math.max(0,v.length-ee)):0,re=Math.min(v.length,te+ee),oe=A?te*A.rowHeight:0,ne=A?(v.length-re)*A.rowHeight:0,le=a(null),[se,ie]=i(0);l(()=>{if(!A)return;const e=le.current?.offsetHeight??0;ie(t=>t===e?t:e)});const ae=e=>e.sortField??e.key,ce=e=>N&&N.field===ae(e)?N.direction:null,de=U.flatMap(e=>m(e)?e.columns:[e]),he=U.some(m),ue=/* @__PURE__ */new Map;if(Q)for(const e of U)if(m(e))for(const t of e.columns)ue.set(t,V(e.title,e.label));const me=e=>{const t=V(e.title,e.label),r=ue.get(e);return t&&r?`${r} · ${t}`:t},fe=new Set(R?.selected??[]),ge=R?v.map((e,t)=>J(e,t)):[],pe=ge.length>0&&ge.every(e=>fe.has(e)),ye=ge.some(e=>fe.has(e)),be=R?36:0,we=de.length+(R?1:0),xe=de.some(e=>"left"===e.fixed),ve=Q&&!R&&de.some(e=>e.cardCorner),ke=D??"a",Ne=`${p[S]} ${"sm"===S?"text-xs":"text-sm"}`,Ce=(e,t)=>e.ellipsis?/* @__PURE__ */h("span",{className:"block w-0 min-w-full",children:t}):t,je=(e,t,r,l=0)=>{const s=ce(e),i=y[e.align??(e.numeric?"right":"left")],a="left"===e.fixed,d=!(!e.sortable||!C);/* @__PURE__ */
@@ -11,10 +11,10 @@ return h("th",{scope:"col",...Z("columnheader"),rowSpan:r>1?r:void 0,"aria-sort"
11
11
  /* @__PURE__ */h("span",{className:"sr-only",children:G.table.loading})]}),
12
12
  /* @__PURE__ */c("table",{...Z("table"),className:(Q?"rosh-dt-table ":"")+"w-full border-collapse tabular-nums",style:z?{minWidth:z}:void 0,children:[B&&/* @__PURE__ */h("caption",{className:"sr-only",children:B}),
13
13
  /* @__PURE__ */c("thead",{...Z("rowgroup"),className:Q?"rosh-dt-head":void 0,children:[
14
- /* @__PURE__ */c("tr",{ref:le,...Z("row"),className:"border-b border-gray-200 bg-gray-50",children:[R&&/* @__PURE__ */h("th",{scope:"col",...Z("columnheader"),rowSpan:he?2:void 0,style:{width:36,...A?{top:0}:{}},className:[Ne,o,xe||A?"sticky z-20 bg-gray-50":"",xe?"left-0":"",Q?"rosh-dt-select":""].filter(Boolean).join(" "),children:/* @__PURE__ */h(e,{"aria-label":G.table.selectAll,checked:pe,indeterminate:ye&&!pe,onChange:()=>{if(!R)return;const e=new Set(ge);R.onChange(pe?R.selected.filter(t=>!e.has(t)):[...R.selected,...ge.filter(e=>!fe.has(e))])}})}),U.map((e,t)=>m(e)?/* @__PURE__ */h("th",{scope:"colgroup",...Z("columnheader"),colSpan:e.columns.length,style:A?{top:0}:void 0,className:[Ne,"text-center",o,"font-semibold uppercase tracking-wide text-gray-500","sm"===S?"text-2xs":"text-xs","border-b border-gray-200",A?"sticky z-10 bg-gray-50":"",e.headerClassName??""].filter(Boolean).join(" "),children:/* @__PURE__ */h(n,{children:e.title})},e.key??`group-${t}`):je(e,de.indexOf(e),he?2:1))]}),he&&/* @__PURE__ */h("tr",{...Z("row"),className:"border-b border-gray-200 bg-gray-50",children:U.flatMap(e=>m(e)?e.columns:[]).map(e=>je(e,de.indexOf(e),1,se))})]}),
15
- /* @__PURE__ */h("tbody",{...Z("rowgroup"),className:Q?"rosh-dt-body":void 0,children:0!==v.length||M?/* @__PURE__ */c(d,{children:[oe>0&&/* @__PURE__ */h("tr",{"aria-hidden":"true",children:/* @__PURE__ */h("td",{colSpan:we,style:{height:oe,padding:0,border:0}})}),v.slice(te,re).map((t,r)=>{const o=te+r,n=L?.(t,o),l=!!n?.current,s=T?.(t,o),i=void 0===s&&I?()=>I(t,o):void 0,a=void 0!==s||void 0!==i;let d=!1;const m=(e,t)=>{if(d=!0,!a)return e;const r=[g,i?"cursor-pointer text-left":"",t?.className??""].filter(Boolean).join(" "),o=l?"true":void 0;return void 0!==s?/* @__PURE__ */h(ke,{href:s,className:r,"aria-current":o,children:e}):/* @__PURE__ */h("button",{type:"button",onClick:i,className:r,"aria-current":o,children:e})},p=de.map(e=>e.render?e.render(t,o,m):e.dataIndex?t[e.dataIndex]:null);if(a&&!d){const e=de.findIndex(e=>"stacked"!==e.only&&!e.cardCorner),t=de.findIndex(e=>"wide"!==e.only&&!e.cardCorner);for(const r of/* @__PURE__ */new Set([e,t]))r>=0&&(p[r]=m(p[r]))}const b=e=>e?t=>{t.currentTarget.contains(t.relatedTarget)||e()}:void 0;/* @__PURE__ */
16
- return c("tr",{...u(n),...Z("row"),style:A?{height:A.rowHeight}:void 0,onClick:n?.onClick,onMouseEnter:n?.onMouseEnter,onMouseLeave:n?.onMouseLeave,onFocus:b(n?.onFocus),onBlur:b(n?.onBlur),"aria-current":l&&!a?"true":void 0,...n?.onClick?{tabIndex:0,onKeyDown:e=>{e.target===e.currentTarget&&("Enter"!==e.key&&" "!==e.key||(e.preventDefault(),n.onClick?.()))}}:{},className:[Q?R?"rosh-dt-row rosh-dt-row-select":"rosh-dt-row":"",Q&&ve?"rosh-dt-row-corner":"","border-b border-gray-100 last:border-b-0",n?.onClick?"cursor-pointer hover:bg-gray-50 rosh-focus-ring focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[color:var(--rosh-focus-ring-solid)]":"",a?"rosh-dt-linked hover:bg-gray-50":"",l?"rosh-dt-current":"",H?.(t,o)??"",n?.className??""].filter(Boolean).join(" "),children:[R&&(()=>{const r=J(t,o);/* @__PURE__ */
17
- return h("td",{...Z("cell"),style:{width:36},onClick:e=>e.stopPropagation(),className:[Ne,xe?"sticky left-0 z-10 bg-white":"",Q?"rosh-dt-select":""].filter(Boolean).join(" "),children:/* @__PURE__ */h(e,{"aria-label":G.table.selectRow,checked:fe.has(r),onChange:()=>(e=>{R&&R.onChange(fe.has(e)?R.selected.filter(t=>t!==e):[...R.selected,e])})(r)})})})(),de.map((e,t)=>{const r="left"===e.fixed,o=p[t],n=ve&&!!e.cardCorner,l=Q&&!n&&"wide"!==e.only;/* @__PURE__ */
14
+ /* @__PURE__ */c("tr",{ref:le,...Z("row"),className:"border-b border-gray-200 bg-gray-50",children:[R&&/* @__PURE__ */h("th",{scope:"col",...Z("columnheader"),rowSpan:he?2:void 0,style:{width:36,...A?{top:0}:{}},className:[Ne,o,xe||A?"sticky z-20 bg-gray-50":"",xe?"left-0":"",Q?"rosh-dt-select":""].filter(Boolean).join(" "),children:/* @__PURE__ */h(t,{"aria-label":G.table.selectAll,checked:pe,indeterminate:ye&&!pe,onChange:()=>{if(!R)return;const e=new Set(ge);R.onChange(pe?R.selected.filter(t=>!e.has(t)):[...R.selected,...ge.filter(e=>!fe.has(e))])}})}),U.map((e,t)=>m(e)?/* @__PURE__ */h("th",{scope:"colgroup",...Z("columnheader"),colSpan:e.columns.length,style:A?{top:0}:void 0,className:[Ne,"text-center",o,"font-semibold uppercase tracking-wide text-gray-500","sm"===S?"text-2xs":"text-xs","border-b border-gray-200",A?"sticky z-10 bg-gray-50":"",e.headerClassName??""].filter(Boolean).join(" "),children:/* @__PURE__ */h(n,{children:e.title})},e.key??`group-${t}`):je(e,de.indexOf(e),he?2:1))]}),he&&/* @__PURE__ */h("tr",{...Z("row"),className:"border-b border-gray-200 bg-gray-50",children:U.flatMap(e=>m(e)?e.columns:[]).map(e=>je(e,de.indexOf(e),1,se))})]}),
15
+ /* @__PURE__ */h("tbody",{...Z("rowgroup"),className:Q?"rosh-dt-body":void 0,children:0!==v.length||M?/* @__PURE__ */c(d,{children:[oe>0&&/* @__PURE__ */h("tr",{"aria-hidden":"true",children:/* @__PURE__ */h("td",{colSpan:we,style:{height:oe,padding:0,border:0}})}),v.slice(te,re).map((e,r)=>{const o=te+r,n=L?.(e,o),l=!!n?.current,s=T?.(e,o),i=void 0===s&&I?()=>I(e,o):void 0,a=void 0!==s||void 0!==i;let d=!1;const m=(e,t)=>{if(d=!0,!a)return e;const r=[g,i?"cursor-pointer text-left":"",t?.className??""].filter(Boolean).join(" "),o=l?"true":void 0;return void 0!==s?/* @__PURE__ */h(ke,{href:s,className:r,"aria-current":o,children:e}):/* @__PURE__ */h("button",{type:"button",onClick:i,className:r,"aria-current":o,children:e})},p=de.map(t=>t.render?t.render(e,o,m):t.dataIndex?e[t.dataIndex]:null);if(a&&!d){const e=de.findIndex(e=>"stacked"!==e.only&&!e.cardCorner),t=de.findIndex(e=>"wide"!==e.only&&!e.cardCorner);for(const r of/* @__PURE__ */new Set([e,t]))r>=0&&(p[r]=m(p[r]))}const b=e=>e?t=>{t.currentTarget.contains(t.relatedTarget)||e()}:void 0;/* @__PURE__ */
16
+ return c("tr",{...u(n),...Z("row"),style:A?{height:A.rowHeight}:void 0,onClick:n?.onClick,onMouseEnter:n?.onMouseEnter,onMouseLeave:n?.onMouseLeave,onFocus:b(n?.onFocus),onBlur:b(n?.onBlur),"aria-current":l&&!a?"true":void 0,...n?.onClick?{tabIndex:0,onKeyDown:e=>{e.target===e.currentTarget&&("Enter"!==e.key&&" "!==e.key||(e.preventDefault(),n.onClick?.()))}}:{},className:[Q?R?"rosh-dt-row rosh-dt-row-select":"rosh-dt-row":"",Q&&ve?"rosh-dt-row-corner":"","border-b border-gray-100 last:border-b-0",n?.onClick?"cursor-pointer hover:bg-gray-50 rosh-focus-ring focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[color:var(--rosh-focus-ring-solid)]":"",a?"rosh-dt-linked hover:bg-gray-50":"",l?"rosh-dt-current":"",H?.(e,o)??"",n?.className??""].filter(Boolean).join(" "),children:[R&&(()=>{const r=J(e,o);/* @__PURE__ */
17
+ return h("td",{...Z("cell"),style:{width:36},onClick:e=>e.stopPropagation(),className:[Ne,xe?"sticky left-0 z-10 bg-white":"",Q?"rosh-dt-select":""].filter(Boolean).join(" "),children:/* @__PURE__ */h(t,{"aria-label":G.table.selectRow,checked:fe.has(r),onChange:()=>(e=>{R&&R.onChange(fe.has(e)?R.selected.filter(t=>t!==e):[...R.selected,e])})(r)})})})(),de.map((e,t)=>{const r="left"===e.fixed,o=p[t],n=ve&&!!e.cardCorner,l=Q&&!n&&"wide"!==e.only;/* @__PURE__ */
18
18
  return h("td",{...Z("cell"),"data-label":l?me(e):void 0,style:r?{left:(Me[t]??0)+be}:void 0,className:[l?e.ellipsis?"rosh-dt-cell rosh-dt-clip":"rosh-dt-cell":"",n?"rosh-dt-corner":"",Q?f(e):"",Ne,y[e.align??(e.numeric?"right":"left")],Q?"":w(e),"text-ink-strongest",e.ellipsis?"max-w-0 truncate":"",r?"sticky z-10 bg-white":"",e.className??""].filter(Boolean).join(" "),children:Q?
19
- /* @__PURE__ */h("span",{className:["rosh-dt-value",w(e,!0)].filter(Boolean).join(" "),children:o}):o},e.key)})]},J(t,o))}),ne>0&&/* @__PURE__ */h("tr",{"aria-hidden":"true",children:/* @__PURE__ */h("td",{colSpan:we,style:{height:ne,padding:0,border:0}})})]}):/* @__PURE__ */h("tr",{...Z("row"),className:Q?"rosh-dt-empty":void 0,children:/* @__PURE__ */h("td",{...Z("cell"),colSpan:we,className:`${Ne} py-10 text-center text-gray-500`,children:K})})})]}),W]}),j&&j.pageCount>1&&/* @__PURE__ */h("div",{className:Q?"rosh-dt-pager mt-3 flex justify-end":"mt-3 flex justify-end",children:/* @__PURE__ */h(t,{page:j.page,pageCount:j.pageCount,onPageChange:j.onPageChange})})]});/* @__PURE__ */
19
+ /* @__PURE__ */h("span",{className:["rosh-dt-value",w(e,!0)].filter(Boolean).join(" "),children:o}):o},e.key)})]},J(e,o))}),ne>0&&/* @__PURE__ */h("tr",{"aria-hidden":"true",children:/* @__PURE__ */h("td",{colSpan:we,style:{height:ne,padding:0,border:0}})})]}):/* @__PURE__ */h("tr",{...Z("row"),className:Q?"rosh-dt-empty":void 0,children:/* @__PURE__ */h("td",{...Z("cell"),colSpan:we,className:`${Ne} py-10 text-center text-gray-500`,children:K})})})]}),W]}),j&&j.pageCount>1&&/* @__PURE__ */h("div",{className:Q?"rosh-dt-pager mt-3 flex justify-end":"mt-3 flex justify-end",children:/* @__PURE__ */h(e,{page:j.page,pageCount:j.pageCount,onPageChange:j.onPageChange})})]});/* @__PURE__ */
20
20
  return h("div",Q?void 0!==O&&O>0&&40!==O?{className:`rosh-dt-at ${P}`.trim(),children:/* @__PURE__ */h("div",{className:"rosh-dt-stack",style:{width:40/O*100+"%"},children:/* @__PURE__ */h("div",{className:"rosh-dt-fit",style:{width:O/40*100+"%"},children:$e})})}:{className:`rosh-dt-stack ${P}`.trim(),children:$e}:{className:P,children:$e})}export{x as DataTable};
@@ -1 +1 @@
1
- import{client_default as a}from"./chunk-I3XM2PSQ.js";var t=()=>a.get("/auth/numbering-configs/").then(a=>a.data?.results??a.data??[]),e="uploaded:wallpaper";function r(a,t){return"string"!=typeof a||!a||"none"===a||a.startsWith("#")?"":a===e?t||"":a}var l=()=>a.get("/auth/me/wallpaper/").then(a=>a.data),n=(t,e)=>{const r=new FormData;r.append("wallpaper",t);const l=e?{onUploadProgress:a=>e(a.total?Math.round(a.loaded/a.total*100):null)}:void 0;return a.post("/auth/me/wallpaper/",r,l).then(a=>a.data)},p=()=>a.delete("/auth/me/wallpaper/").then(a=>a.data);function o(a){const t=a?.response?.status,e=a?.response?.data,r=Array.isArray(e?.wallpaper)?e.wallpaper[0]:void 0;return r||(413===t?"That picture is too large to use as a wallpaper.":415===t?"That file is not a picture this can use as a wallpaper.":"The wallpaper could not be saved. Please try again.")}export{e as WALLPAPER_PREF_TOKEN,p as deleteWallpaper,t as getNumberingConfigs,l as getWallpaper,n as uploadWallpaper,r as wallpaperSrc,o as wallpaperUploadError};
1
+ import{client_default as a}from"./chunk-3FBDLIQW.js";var t=()=>a.get("/auth/numbering-configs/").then(a=>a.data?.results??a.data??[]),e="uploaded:wallpaper";function r(a,t){return"string"!=typeof a||!a||"none"===a||a.startsWith("#")?"":a===e?t||"":a}var l=()=>a.get("/auth/me/wallpaper/").then(a=>a.data),n=(t,e)=>{const r=new FormData;r.append("wallpaper",t);const l=e?{onUploadProgress:a=>e(a.total?Math.round(a.loaded/a.total*100):null)}:void 0;return a.post("/auth/me/wallpaper/",r,l).then(a=>a.data)},p=()=>a.delete("/auth/me/wallpaper/").then(a=>a.data);function o(a){const t=a?.response?.status,e=a?.response?.data,r=Array.isArray(e?.wallpaper)?e.wallpaper[0]:void 0;return r||(413===t?"That picture is too large to use as a wallpaper.":415===t?"That file is not a picture this can use as a wallpaper.":"The wallpaper could not be saved. Please try again.")}export{e as WALLPAPER_PREF_TOKEN,p as deleteWallpaper,t as getNumberingConfigs,l as getWallpaper,n as uploadWallpaper,r as wallpaperSrc,o as wallpaperUploadError};
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{DataTable as default}from"../chunk-OGU5JE52.js";import"../chunk-CGZBDI6C.js";import"../chunk-LXL2UCUR.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{DataTable as default}from"../chunk-WOAMPTZI.js";import"../chunk-LXL2UCUR.js";import"../chunk-CGZBDI6C.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -0,0 +1,125 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ReactNode, Dispatch, SetStateAction, RefObject } from 'react';
3
+
4
+ interface EntityListColumn {
5
+ key: string;
6
+ label: string;
7
+ /** The heading this column takes in a CSV export, when it should differ
8
+ * from what the grid shows. The export request carries a heading per
9
+ * column; a host whose interface is translated but whose exported files
10
+ * stay in one language for whoever opens them passes that language's
11
+ * heading here. Omitted, the export uses `label`. */
12
+ exportLabel?: string;
13
+ defaultWidth?: number;
14
+ minWidth?: number;
15
+ defaultHidden?: boolean;
16
+ sortField?: string;
17
+ headerNode?: ReactNode;
18
+ }
19
+ /** A page-supplied entry in the right-click bulk menu (e.g. invoice Post /
20
+ * Cancel). `onClick` receives the currently-selected rows. Set `divider` to
21
+ * render a separator above the item, `danger` for a destructive tint. */
22
+ interface EntityListContextAction<T = unknown> {
23
+ label: string;
24
+ onClick: (items: T[]) => void;
25
+ danger?: boolean;
26
+ disabled?: boolean;
27
+ divider?: boolean;
28
+ }
29
+ interface EntityListProps<T> {
30
+ items: T[];
31
+ isLoading: boolean;
32
+ emptyState: ReactNode;
33
+ totalCount?: number;
34
+ /** When true and no rows have loaded yet, render {@link ListLoadError}
35
+ * (with a retry) instead of `emptyState` — so a failed fetch reads as an
36
+ * error, not "nothing here". Wire `useInfiniteScroll`'s `isError`. A
37
+ * mid-scroll next-page failure (rows already loaded) keeps the list.
38
+ * Defaults to unset → behaviour unchanged for existing callers. */
39
+ isError?: boolean;
40
+ /** Retry handler for the error state — wire the data source's `refetch`.
41
+ * It also backs the row menu's Refresh item. */
42
+ onRetry?: () => void;
43
+ /** Heading for the error state, e.g. "Couldn't load candidates". Omit for
44
+ * {@link ListLoadError}'s generic "Couldn't load this list" — name the
45
+ * entity where the list has one, so an outage reads as *this* list failing. */
46
+ errorTitle?: string;
47
+ /** Explanatory line under {@link EntityListProps.errorTitle}. Omit for
48
+ * ListLoadError's generic connection/retry message. */
49
+ errorMessage?: string;
50
+ tableId: string;
51
+ columns: EntityListColumn[];
52
+ renderCell: (item: T, colKey: string) => ReactNode;
53
+ getRowId?: (item: T) => string | number;
54
+ sort?: {
55
+ field: string;
56
+ direction: 'asc' | 'desc';
57
+ };
58
+ onSort?: (field: string) => void;
59
+ /** The ticked row ids. The set is the caller's, and it may hold ids that are
60
+ * not among `items`: rows ticked before a search or a filter changed. The
61
+ * list keeps those. The header box, Ctrl/Cmd+A and Select all move only the
62
+ * rows on screen, the count says how many are not shown, and every row
63
+ * action — Copy rows, the export, `contextActions` — gets the ticked rows
64
+ * on screen. Clear selection, and a right-click on an unticked row, drop
65
+ * them. */
66
+ selected: Set<string | number>;
67
+ setSelected: Dispatch<SetStateAction<Set<string | number>>>;
68
+ onRowClick: (item: T) => void;
69
+ onRowHover?: (item: T) => void;
70
+ getRowClassName?: (item: T) => string;
71
+ footerLabel: string;
72
+ footerExtra?: ReactNode;
73
+ sentinelRef?: RefObject<any>;
74
+ isFetchingNextPage?: boolean;
75
+ /** Perm codenames that gate "Save as default for all users" in the column
76
+ * picker. Defaults to `['change_numberingconfig']` (admin-portal's proxy
77
+ * for admin access). Pass `[]` to hide the link entirely. */
78
+ saveDefaultPerms?: string[];
79
+ /** Right-click row menu. Every list has one, with nothing to wire: Open (the
80
+ * row right-clicked), Copy for text selected under the pointer, Copy
81
+ * `<first column>` and Copy rows (the ticked rows as a table of the visible
82
+ * columns in their on-screen order, which pastes into a spreadsheet as
83
+ * cells), Select all, Clear selection, and Refresh when `onRetry` is wired.
84
+ * Provide `exportEndpoint` (a list's `<base>/export_csv/` path, relative to
85
+ * the api base) to add "Export selected to CSV", which downloads just the
86
+ * ticked rows on screen (`?ids=`, honouring the visible/ordered columns),
87
+ * the same rows `contextActions` receives. Provide
88
+ * `contextActions` for domain actions (e.g. invoice Post / Cancel); they sit
89
+ * between the copy items and the selection items. */
90
+ exportEndpoint?: string;
91
+ exportFilename?: string;
92
+ contextActions?: (items: T[]) => EntityListContextAction<T>[];
93
+ }
94
+ /**
95
+ * The canonical pageless data grid for both portals. Wraps `<ResizableTable>`
96
+ * with selection-checkbox logic, keyboard navigation, the standardized list
97
+ * footer, an infinite-scroll sentinel hook-up, and a right-click row menu.
98
+ *
99
+ * Usage:
100
+ *
101
+ * const { sort, onSort } = useSort('mid', 'asc', 'suppliers');
102
+ * const { items, totalCount, isLoading, isFetchingNextPage, sentinelRef } =
103
+ * useInfiniteScroll<Supplier>({ queryKey: ['suppliers', filters],
104
+ * fetchFn: (p) => getSuppliers(p) });
105
+ *
106
+ * <EntityList
107
+ * items={items}
108
+ * totalCount={totalCount}
109
+ * isLoading={isLoading}
110
+ * sentinelRef={sentinelRef}
111
+ * isFetchingNextPage={isFetchingNextPage}
112
+ * tableId="suppliers"
113
+ * columns={SUPPLIER_COLUMNS}
114
+ * renderCell={(s, k) => …}
115
+ * sort={sort} onSort={onSort}
116
+ * selected={selected} setSelected={setSelected}
117
+ * onRowClick={(s) => openEntity('supplier', s.id, s, s.mid, '/suppliers')}
118
+ * exportEndpoint="/suppliers/export_csv/" exportFilename="Suppliers.csv"
119
+ * footerLabel="suppliers"
120
+ * emptyState={<EmptyState message="No suppliers yet." />}
121
+ * />
122
+ */
123
+ declare function EntityList<T>(props: EntityListProps<T>): react_jsx_runtime.JSX.Element;
124
+
125
+ export { type EntityListColumn, type EntityListContextAction, type EntityListProps, EntityList as default };
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ export{EntityList as default}from"../chunk-EH2BNSG3.js";import"../chunk-TMMNCXQT.js";import"../chunk-HNVSVTNC.js";import"../chunk-SI26KESU.js";import"../chunk-UKBXQXDZ.js";import"../chunk-ULJQYXHB.js";import"../chunk-ATMJ5ZPK.js";import"../chunk-G6DKCCWH.js";import"../chunk-CGZBDI6C.js";import"../chunk-4ULRP4Y4.js";import"../chunk-UNQ54QOF.js";import"../chunk-O3MBPAWZ.js";import"../chunk-7ELJQL7J.js";import"../chunk-2QY5BJLA.js";import"../chunk-UGTRSRIW.js";import"../chunk-KC3EX26K.js";import"../chunk-F3ZOO23R.js";import"../chunk-OTITQ3IH.js";import"../chunk-5QFPTDQF.js";import"../chunk-URHGHXDN.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-STKJA4PV.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -0,0 +1,31 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ColumnDef, SortState } from './types.js';
3
+
4
+ interface ResizableTableProps {
5
+ tableId: string;
6
+ columns: ColumnDef[];
7
+ sort?: SortState;
8
+ onSort?: (field: string) => void;
9
+ footer?: React.ReactNode;
10
+ afterBody?: React.ReactNode;
11
+ /** Permission codename(s) that gate the "Save as default for all users" link
12
+ * in the column picker. The shell's `useShellAuth().hasAnyPerm` is queried
13
+ * against this list. Defaults to a single placeholder permission; consumers
14
+ * with no admin gate can pass `[]` to hide the link entirely. */
15
+ saveDefaultPerms?: string[];
16
+ children: (orderedColumns: (ColumnDef & {
17
+ width: number;
18
+ })[]) => React.ReactNode;
19
+ }
20
+ /**
21
+ * Sticky-header, scrollable-body table primitive with:
22
+ * - drag-to-reorder columns (with a blue drop-indicator line)
23
+ * - resize columns by the right-edge handle
24
+ * - hide/show columns via a glass popover picker
25
+ * - admin-only "Save as default for all users" link in the picker
26
+ * - per-user persistence (via the shell-registered apiClient)
27
+ * - mobile-aware selection mode toggle
28
+ */
29
+ declare function ResizableTable({ tableId, columns, sort, onSort, footer, afterBody, saveDefaultPerms, children, }: ResizableTableProps): react_jsx_runtime.JSX.Element;
30
+
31
+ export { ResizableTable as default };
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ export{ResizableTable as default}from"../chunk-HNVSVTNC.js";import"../chunk-SI26KESU.js";import"../chunk-UKBXQXDZ.js";import"../chunk-ULJQYXHB.js";import"../chunk-2QY5BJLA.js";import"../chunk-UGTRSRIW.js";import"../chunk-KC3EX26K.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-STKJA4PV.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -0,0 +1,68 @@
1
+ import react__default from 'react';
2
+ import { ColumnDef } from './types.js';
3
+
4
+ /**
5
+ * Resizable + reorderable + hideable column state for `<ResizableTable>`.
6
+ *
7
+ * Reads and persists per-user through the `<ShellPrefsProvider>` adapter
8
+ * (`prefs.columns_{tableId}`), with a 1-second debounce on the save, and reads
9
+ * per-viewport admin defaults through the shared
10
+ * `GET /auth/default-columns/{tableId}?viewport=…` probe.
11
+ *
12
+ * The prefs half used to be a raw `GET /auth/me/` fired from a `[tableId]`
13
+ * effect, outside react-query — so every list mount re-fetched the whole user
14
+ * profile (~1.5 MB on prod), on a client with no cache adapter and no in-flight
15
+ * dedupe, and a screen that also renders a column-aware CSV export paid for it
16
+ * twice. The adapter already holds that profile in one cached query, which is
17
+ * the same object the raw GET was reading `preferences` off (SG#00590).
18
+ *
19
+ * Three consequences worth knowing, because this is NOT behaviour-preserving:
20
+ *
21
+ * - **A `<ShellPrefsProvider>` is now required for server-side persistence.**
22
+ * Without one, `useShellPrefs()` reads empty and drops saves, so column
23
+ * config degrades to localStorage-only. All three consumers that render
24
+ * `<EntityList>`/`<ResizableTable>` mount the provider.
25
+ * - **Prefs and admin defaults resolve independently**, where the raw pair was
26
+ * a single `Promise.all`. If the admin default lands while prefs are still
27
+ * loading it applies first and the user's own config replaces it a beat
28
+ * later, rather than never showing. `useSort` has always behaved this way;
29
+ * the two hooks now agree. The precedence that used to be one `if/else if`
30
+ * is now the `userSavedRef` guard below plus the order the two effects fire
31
+ * in — `tests/columnConfigDefaultsPrecedence.test.tsx` pins both directions.
32
+ * - **A failed save is silent here.** The old `useMutation` let a rejected
33
+ * `PATCH` reach a consumer's global `MutationCache({ onError })` — the admin
34
+ * portal toasted it. The adapter's `save` owns its own failures now, so a
35
+ * consumer that wants that toast raises it inside the adapter.
36
+ *
37
+ * What it does NOT require is a `<QueryClientProvider>` — it used to, for the
38
+ * `useMutation`. `useDefaultColumnConfig` falls back to a client the package
39
+ * owns when no provider is mounted.
40
+ */
41
+ declare function useColumnConfig(tableId: string, defaultColumns: ColumnDef[]): {
42
+ orderedColumns: {
43
+ width: number;
44
+ key: string;
45
+ label: string;
46
+ defaultWidth?: number;
47
+ minWidth?: number;
48
+ defaultHidden?: boolean;
49
+ headerNode?: react__default.ReactNode;
50
+ sortField?: string;
51
+ }[];
52
+ allColumns: {
53
+ key: string;
54
+ label: string;
55
+ hidden: boolean;
56
+ }[];
57
+ onResizeStart: (idx: number, e: react__default.MouseEvent) => void;
58
+ onDragStart: (idx: number) => void;
59
+ onDragOver: (visIdx: number, e: react__default.DragEvent) => void;
60
+ onDrop: (_visIdx: number, e: react__default.DragEvent) => void;
61
+ onDragEnd: () => void;
62
+ toggleColumn: (key: string) => void;
63
+ resetColumns: () => void;
64
+ draggedIdx: number | null;
65
+ dropGap: number | null;
66
+ };
67
+
68
+ export { useColumnConfig };
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ export{useColumnConfig}from"../chunk-UKBXQXDZ.js";import"../chunk-ULJQYXHB.js";import"../chunk-KC3EX26K.js";import"../chunk-D65T4H6J.js";import"../chunk-STKJA4PV.js";
@@ -0,0 +1,55 @@
1
+ import { SortState } from './types.js';
2
+
3
+ /** The part of a column `useSort` reads — `ColumnDef` and `EntityList`'s own
4
+ * column both fit.
5
+ *
6
+ * Not `DataTable`: its columns nest inside groups and it offers a sort on
7
+ * `sortable`, not on `sortField ?? key`. `DataTableColumn` satisfies this
8
+ * interface structurally, so passing one typechecks and then drops sorts the
9
+ * table does offer. `DataTable` owns its own sort state through
10
+ * `onSortChange`. */
11
+ interface SortableColumn {
12
+ key: string;
13
+ sortField?: string;
14
+ }
15
+ /**
16
+ * Sort-state hook used by list pages. Returns:
17
+ * - `sort` — current `{ field, direction }`
18
+ * - `onSort(field)` — toggle direction if same field, else activate asc
19
+ * - `ordering` — DRF-style string (`'-mid'` for desc, `'mid'` for asc) ready
20
+ * to drop into a query-string param.
21
+ *
22
+ * Pass `tableId` (the same id the list gives `<ResizableTable>`/`<EntityList>`)
23
+ * to persist the user's choice alongside their column config. Restore order:
24
+ * per-user pref (`prefs.sort_{tableId}` via the ShellPrefs adapter) → the
25
+ * admin-saved default on `/auth/default-columns/{tableId}/` → the page's
26
+ * `defaultField`/`defaultDir`. localStorage mirrors the last-applied value so
27
+ * the first render (before async prefs arrive) already uses the last-known
28
+ * sort instead of flashing the default and refetching. Without `tableId` the
29
+ * hook is pure in-memory state, exactly as before.
30
+ *
31
+ * The admin default is read through `useDefaultColumnConfig`, shared with
32
+ * `useColumnConfig` so a list page fetches that row once rather than twice
33
+ * (SG#00590). That probe is a react-query query, but this hook still needs no
34
+ * `<QueryClientProvider>` in either form: with no provider above it the probe
35
+ * falls back to a client the package owns (see `useDefaultColumnConfig`), and
36
+ * the `tableId`-less form issues no request at all, as before.
37
+ *
38
+ * Pass `options.columns` (the same array the table gets) and a sort the
39
+ * columns do not offer is replaced by the page default in `sort` and
40
+ * `ordering` — a save on a column since given `sortField: ''`, or on a key
41
+ * whose column now sorts on another `sortField`. Without it that stale save
42
+ * goes out as `?ordering=` on every open; DRF drops a term it cannot order by,
43
+ * so the list comes back unsorted for good. Without `columns` — or while the
44
+ * array is still empty, which is a list page whose columns are not built yet
45
+ * rather than a table that offers no sort — nothing is checked, as before.
46
+ */
47
+ declare function useSort(defaultField: string, defaultDir?: 'asc' | 'desc', tableId?: string, options?: {
48
+ columns?: ReadonlyArray<SortableColumn>;
49
+ }): {
50
+ sort: SortState;
51
+ onSort: (field: string) => void;
52
+ ordering: string;
53
+ };
54
+
55
+ export { type SortableColumn, useSort };
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ export{useSort}from"../chunk-E6FDUFPH.js";import"../chunk-ULJQYXHB.js";import"../chunk-KC3EX26K.js";import"../chunk-D65T4H6J.js";import"../chunk-STKJA4PV.js";
@@ -0,0 +1,28 @@
1
+ import { RefObject } from 'react';
2
+
3
+ /**
4
+ * Keyboard + shift-click navigation for table rows.
5
+ *
6
+ * - J/K or Arrow keys to move focus
7
+ * - Enter to open the focused row (calls `onSelect`)
8
+ * - Space to toggle the focused row's checkbox (calls `onToggle`)
9
+ * — neither while the keyboard focus is on a button or a link the user moved
10
+ * it to: there the key is that control's. One the focus was only left on by
11
+ * a mouse click gives both keys back to the row at the next J/K; see the
12
+ * key handler
13
+ * - Shift+J/K to extend selection while moving
14
+ * - Shift+click to range-select (calls `onSelectRange`, which must ADD the range
15
+ * rather than toggle it — the clicked checkbox is ticked on that assumption)
16
+ * - Cmd/Ctrl+A to select/deselect all (calls `onSelectAll`)
17
+ *
18
+ * Each list instance gates its document-level listeners on `useModalActive`
19
+ * so two open lists don't both react to the same shift-click.
20
+ *
21
+ * `container` is the element that holds this list's rows. Row indices repeat
22
+ * from one list to the next, so without it the row J/K scrolls into view is the
23
+ * first `data-row-idx` match in the document — with two lists open, a row of
24
+ * the one behind.
25
+ */
26
+ declare function useTableNav<T>(items: T[], onSelect: (item: T) => void, onToggle?: (item: T) => void, onSelectAll?: () => void, onSelectRange?: (from: number, to: number) => void, container?: RefObject<HTMLElement | null>): number;
27
+
28
+ export { useTableNav as default };
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ export{useTableNav as default}from"../chunk-ATMJ5ZPK.js";import"../chunk-F3ZOO23R.js";
@@ -1 +1 @@
1
- export{slugify}from"../chunk-24AL3CDS.js";export{PAGE_MOTION_DURATIONS,PAGE_MOTION_EASING,PAGE_MOTION_STEPS,pageMotionMs}from"../chunk-DHKRXHJN.js";export{escapeHtml}from"../chunk-G6DKCCWH.js";export{addShowWhenFacts,isShown,lazyShowWhenContext,showWhenFactReaders,showWhenFactsContext,showWhenOf,shownForOption,truthy,withRowRules,withRowsShownWhen,withShowWhen,withShowWhenFacts}from"../chunk-HCP7WOAL.js";export{FOCAL_DEFAULT,FOCAL_NUDGE_COARSE,FOCAL_NUDGE_STEP,focalFromRect,formatFocal,nudgeFocal,parseFocal}from"../chunk-25RR3GQW.js";export{fromDateKey,toDateKey}from"../chunk-2HMNOLKX.js";export{contrastRatio,hexToRgb,parseHexColor,readableInk,relativeLuminance}from"../chunk-S6OB6HJB.js";export{currencyDecimals,currencySymbol,formatBytes,formatMoney,setCurrencyFormats,timeAgo}from"../chunk-GEYM4WN3.js";export{DATE_FORMAT_OPTIONS,TZ_AUTO,formatDate,formatDateTime,formatTime,getUserDateFormat,getUserTimezone,setUserDateFormat,setUserTimezone,syncTimezoneFromProfile}from"../chunk-Y3JW2GW5.js";export{EMPTY_VALUE}from"../chunk-36BRD5J3.js";import"../chunk-LF27WIN2.js";export{ROOT_THEME_ATTRIBUTES,rootIsDark,watchRootTheme}from"../chunk-LNXBTK7Q.js";
1
+ export{slugify}from"../chunk-24AL3CDS.js";export{PAGE_MOTION_DURATIONS,PAGE_MOTION_EASING,PAGE_MOTION_STEPS,pageMotionMs}from"../chunk-DHKRXHJN.js";export{addShowWhenFacts,isShown,lazyShowWhenContext,showWhenFactReaders,showWhenFactsContext,showWhenOf,shownForOption,truthy,withRowRules,withRowsShownWhen,withShowWhen,withShowWhenFacts}from"../chunk-HCP7WOAL.js";export{FOCAL_DEFAULT,FOCAL_NUDGE_COARSE,FOCAL_NUDGE_STEP,focalFromRect,formatFocal,nudgeFocal,parseFocal}from"../chunk-25RR3GQW.js";export{fromDateKey,toDateKey}from"../chunk-2HMNOLKX.js";export{contrastRatio,hexToRgb,parseHexColor,readableInk,relativeLuminance}from"../chunk-S6OB6HJB.js";export{escapeHtml}from"../chunk-G6DKCCWH.js";export{currencyDecimals,currencySymbol,formatBytes,formatMoney,setCurrencyFormats,timeAgo}from"../chunk-GEYM4WN3.js";export{DATE_FORMAT_OPTIONS,TZ_AUTO,formatDate,formatDateTime,formatTime,getUserDateFormat,getUserTimezone,setUserDateFormat,setUserTimezone,syncTimezoneFromProfile}from"../chunk-Y3JW2GW5.js";export{EMPTY_VALUE}from"../chunk-36BRD5J3.js";import"../chunk-LF27WIN2.js";export{ROOT_THEME_ATTRIBUTES,rootIsDark,watchRootTheme}from"../chunk-LNXBTK7Q.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{BORDER_LINE_STYLES,borderSides,borderStartEach,BorderInput as default}from"../chunk-RV2FGSGH.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-XJPKDTQN.js";import"../chunk-7JGR7WPD.js";import"../chunk-G7BBSHDF.js";import"../chunk-2NMW66P5.js";import"../chunk-S6OB6HJB.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-CDAJKLGL.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{BORDER_LINE_STYLES,borderSides,borderStartEach,BorderInput as default}from"../chunk-ALTBTO3Z.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-BUO7XCYR.js";import"../chunk-7JGR7WPD.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-S6OB6HJB.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-CDAJKLGL.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{BrandAssetEditor as default}from"../chunk-O7RR2ZZ2.js";import"../chunk-QGWKM7C3.js";import"../chunk-XQZL6JDD.js";import"../chunk-6KBDNYRW.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-MI67DI3H.js";import"../chunk-25RR3GQW.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-JTMEFXRL.js";import"../chunk-FZM3ZPW3.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{BrandAssetEditor as default}from"../chunk-O7RR2ZZ2.js";import"../chunk-QGWKM7C3.js";import"../chunk-XQZL6JDD.js";import"../chunk-6KBDNYRW.js";import"../chunk-MI67DI3H.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-25RR3GQW.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-JTMEFXRL.js";import"../chunk-FZM3ZPW3.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{ColorPickerPanel,ColorSwatch,HexInput,NO_COLOR_FILL,clampOpacity,colorFill,colorSwatchClasses,ColorPicker as default,stepHue,stepOpacity,stepSquare}from"../chunk-XJPKDTQN.js";import"../chunk-7JGR7WPD.js";import"../chunk-G7BBSHDF.js";import"../chunk-2NMW66P5.js";import"../chunk-S6OB6HJB.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-CDAJKLGL.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{ColorPickerPanel,ColorSwatch,HexInput,NO_COLOR_FILL,clampOpacity,colorFill,colorSwatchClasses,ColorPicker as default,stepHue,stepOpacity,stepSquare}from"../chunk-BUO7XCYR.js";import"../chunk-7JGR7WPD.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-S6OB6HJB.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-CDAJKLGL.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{CornersInput as default}from"../chunk-75UD5ZMP.js";import"../chunk-G7BBSHDF.js";import"../chunk-2NMW66P5.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{CornersInput as default}from"../chunk-6IOFNPR6.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{InputNumber_default as default}from"../chunk-G7BBSHDF.js";import"../chunk-2NMW66P5.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{InputNumber_default as default}from"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{TextLinkField,LinkPicker as default}from"../chunk-DBL7MFCB.js";import"../chunk-7RP7QTRF.js";import"../chunk-XFH64VIG.js";import"../chunk-EO5RLFRX.js";import"../chunk-LJN77RG6.js";import"../chunk-EQKUFYX6.js";import"../chunk-2NMW66P5.js";import"../chunk-UJUTS6LJ.js";import"../chunk-PJPK2ADX.js";import"../chunk-MAMWQCJ6.js";import"../chunk-AYZY3YNC.js";import"../chunk-UGTRSRIW.js";import"../chunk-URHGHXDN.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{TextLinkField,LinkPicker as default}from"../chunk-PVDZG2U2.js";import"../chunk-7RP7QTRF.js";import"../chunk-EQKUFYX6.js";import"../chunk-XFH64VIG.js";import"../chunk-EO5RLFRX.js";import"../chunk-LJN77RG6.js";import"../chunk-2NMW66P5.js";import"../chunk-UJUTS6LJ.js";import"../chunk-PJPK2ADX.js";import"../chunk-MAMWQCJ6.js";import"../chunk-AYZY3YNC.js";import"../chunk-UGTRSRIW.js";import"../chunk-URHGHXDN.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{MEDIA_FILES_DRAG_TYPE,MEDIA_FILE_DRAG_TYPE,MEDIA_FOLDER_DRAG_TYPE,MediaLibrary as default,readMediaFileDrag}from"../chunk-VCCGS6Q2.js";import"../chunk-NRALUW6P.js";import"../chunk-7JVGF555.js";import"../chunk-P7H2DXJB.js";import"../chunk-CGUMJZUB.js";import"../chunk-IC72MGON.js";import"../chunk-QVZKRROQ.js";import"../chunk-SACUSHVN.js";import"../chunk-V6Y4OC6K.js";import"../chunk-XYECIBVX.js";import"../chunk-MS5APD3V.js";import"../chunk-OPN4I565.js";import"../chunk-TMMNCXQT.js";import"../chunk-JPOYR5AO.js";import"../chunk-E3EJWNNK.js";import"../chunk-NZ34BQKH.js";import"../chunk-XFH64VIG.js";import"../chunk-EO5RLFRX.js";import"../chunk-LJN77RG6.js";import"../chunk-6KBDNYRW.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-2NMW66P5.js";import"../chunk-VLKDWKVR.js";import"../chunk-OLFYNMTD.js";import"../chunk-LACL4MAR.js";import"../chunk-CGZBDI6C.js";import"../chunk-DRUQH4ZE.js";import"../chunk-ZGOHRLXG.js";import"../chunk-CIHR5ZKF.js";import"../chunk-MAMWQCJ6.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-JTMEFXRL.js";import"../chunk-55AEZX6K.js";import"../chunk-3DVNXNTF.js";import"../chunk-ECJKIPWU.js";import"../chunk-VWGWZY7A.js";import"../chunk-7QSDPSXP.js";import"../chunk-7ELJQL7J.js";import"../chunk-OKHKY3ZZ.js";import"../chunk-UGTRSRIW.js";import"../chunk-CDAJKLGL.js";import"../chunk-OTITQ3IH.js";import"../chunk-5QFPTDQF.js";import"../chunk-URHGHXDN.js";import"../chunk-FZM3ZPW3.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-MAFUXCPZ.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{MEDIA_FILES_DRAG_TYPE,MEDIA_FILE_DRAG_TYPE,MEDIA_FOLDER_DRAG_TYPE,MediaLibrary as default,readMediaFileDrag}from"../chunk-S5DYR75A.js";import"../chunk-NRALUW6P.js";import"../chunk-7JVGF555.js";import"../chunk-IC72MGON.js";import"../chunk-QVZKRROQ.js";import"../chunk-P7H2DXJB.js";import"../chunk-CGUMJZUB.js";import"../chunk-SACUSHVN.js";import"../chunk-V6Y4OC6K.js";import"../chunk-XYECIBVX.js";import"../chunk-MS5APD3V.js";import"../chunk-OPN4I565.js";import"../chunk-JPOYR5AO.js";import"../chunk-E3EJWNNK.js";import"../chunk-NZ34BQKH.js";import"../chunk-XFH64VIG.js";import"../chunk-EO5RLFRX.js";import"../chunk-LJN77RG6.js";import"../chunk-6KBDNYRW.js";import"../chunk-VLKDWKVR.js";import"../chunk-OLFYNMTD.js";import"../chunk-LACL4MAR.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-2NMW66P5.js";import"../chunk-TMMNCXQT.js";import"../chunk-CGZBDI6C.js";import"../chunk-DRUQH4ZE.js";import"../chunk-ZGOHRLXG.js";import"../chunk-CIHR5ZKF.js";import"../chunk-MAMWQCJ6.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-JTMEFXRL.js";import"../chunk-55AEZX6K.js";import"../chunk-3DVNXNTF.js";import"../chunk-ECJKIPWU.js";import"../chunk-VWGWZY7A.js";import"../chunk-7QSDPSXP.js";import"../chunk-OKHKY3ZZ.js";import"../chunk-CDAJKLGL.js";import"../chunk-7ELJQL7J.js";import"../chunk-UGTRSRIW.js";import"../chunk-FZM3ZPW3.js";import"../chunk-OTITQ3IH.js";import"../chunk-5QFPTDQF.js";import"../chunk-URHGHXDN.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-MAFUXCPZ.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{FULL_BADGE_TILE_PX,MediaUploadGrid as default}from"../chunk-E3EJWNNK.js";import"../chunk-6KBDNYRW.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-JTMEFXRL.js";import"../chunk-OKHKY3ZZ.js";import"../chunk-5QFPTDQF.js";import"../chunk-FZM3ZPW3.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{FULL_BADGE_TILE_PX,MediaUploadGrid as default}from"../chunk-E3EJWNNK.js";import"../chunk-6KBDNYRW.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-JTMEFXRL.js";import"../chunk-OKHKY3ZZ.js";import"../chunk-FZM3ZPW3.js";import"../chunk-5QFPTDQF.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{PositionInput as default}from"../chunk-Z46MSUTP.js";import"../chunk-G7BBSHDF.js";import"../chunk-2NMW66P5.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{PositionInput as default}from"../chunk-WLYYC3AP.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{SidesEachToggle,SidesInput as default,sidesStartEach}from"../chunk-YOZGW2RB.js";import"../chunk-G7BBSHDF.js";import"../chunk-2NMW66P5.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{SidesEachToggle,SidesInput as default,sidesStartEach}from"../chunk-7FW2BQTV.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{SliderGroup,Slider as default,settleSliderValue,sliderBoxChars,stepDecimals}from"../chunk-I4DLYOPO.js";import"../chunk-G7BBSHDF.js";import"../chunk-2NMW66P5.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{SliderGroup,Slider as default,settleSliderValue,sliderBoxChars,stepDecimals}from"../chunk-V2J2AHDW.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{WidthsBar as default}from"../chunk-JET2TKEQ.js";import"../chunk-PLGJOHEG.js";import"../chunk-G7BBSHDF.js";import"../chunk-2NMW66P5.js";import"../chunk-LE5LWALR.js";import"../chunk-AYZY3YNC.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{WidthsBar as default}from"../chunk-DOF56HTO.js";import"../chunk-PLGJOHEG.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";