@pg-boss/dashboard 1.1.2 → 1.1.3

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 (35) hide show
  1. package/build/client/assets/MenuTrigger-BUdpY9vj.js +1 -0
  2. package/build/client/assets/{_index-BTx7NRR8.js → _index-DXfER9RD.js} +1 -1
  3. package/build/client/assets/{badge-DBD4CzAv.js → badge-to3cY6Nn.js} +1 -1
  4. package/build/client/assets/{button-Ba8FWhqs.js → button-CudTDtZF.js} +1 -1
  5. package/build/client/assets/{chevron-down-CYa4FYmp.js → chevron-down-ClrMXFFn.js} +1 -1
  6. package/build/client/assets/chunk-EVOBXE3Y-CmKRT32p.js +26 -0
  7. package/build/client/assets/{createLucideIcon-Bt-yXILq.js → createLucideIcon-C5Bm8BOS.js} +1 -1
  8. package/build/client/assets/{db-link-CU7IJqbq.js → db-link-BzIwSws3.js} +1 -1
  9. package/build/client/assets/dialog-BBFR7NS6.js +1 -0
  10. package/build/client/assets/{entry.client-DXZUROTm.js → entry.client-B-bLoJqf.js} +2 -2
  11. package/build/client/assets/{error-card-D-uZRy_l.js → error-card--OB_TuOC.js} +1 -1
  12. package/build/client/assets/{filter-select-Tk_CBvrn.js → filter-select-07am_j5T.js} +1 -1
  13. package/build/client/assets/{index-DuhoQwUK.js → index-By5u-yQ6.js} +1 -1
  14. package/build/client/assets/{jobs-ouYjIGAi.js → jobs-Gp0x24mG.js} +1 -1
  15. package/build/client/assets/manifest-560249af.js +1 -0
  16. package/build/client/assets/{pagination-BItl293Q.js → pagination-DCEs769S.js} +1 -1
  17. package/build/client/assets/{queues._index-_ID9kaow.js → queues._index-DxMtAiK3.js} +1 -1
  18. package/build/client/assets/{queues._name-DwdbQND-.js → queues._name-DqI0ZH4S.js} +1 -1
  19. package/build/client/assets/{queues._name.jobs._jobId-DrgG3VBb.js → queues._name.jobs._jobId-BEwVDYH6.js} +1 -1
  20. package/build/client/assets/{queues.create-CmVW5UVm.js → queues.create-aEr8z6Lt.js} +1 -1
  21. package/build/client/assets/{root-DDqOT0vL.js → root-Cubm0m9Y.js} +1 -1
  22. package/build/client/assets/{schedules-B6ixYsvz.js → schedules-BacoSVY9.js} +1 -1
  23. package/build/client/assets/{schedules._name._key-CXTVKoOc.js → schedules._name._key-zuc0HZqU.js} +1 -1
  24. package/build/client/assets/{schedules.new-Dmasri9v.js → schedules.new-CrK1w4GF.js} +1 -1
  25. package/build/client/assets/{send-CqR34Z50.js → send-wPFbslqy.js} +1 -1
  26. package/build/client/assets/{table-Au2E5mnP.js → table-CV0K56fY.js} +1 -1
  27. package/build/client/assets/useOpenInteractionType-C7OfDyTB.js +1 -0
  28. package/build/client/assets/{warnings-Dj3qacgN.js → warnings-DLjttltF.js} +1 -1
  29. package/build/server/assets/server-build.js +23 -19
  30. package/package.json +12 -12
  31. package/build/client/assets/MenuTrigger-CoRd-BqL.js +0 -1
  32. package/build/client/assets/chunk-UVKPFVEO-YfSfkVr_.js +0 -26
  33. package/build/client/assets/dialog-Dkx42Rkd.js +0 -1
  34. package/build/client/assets/manifest-72f6b3e9.js +0 -1
  35. package/build/client/assets/useOpenInteractionType-mgYMZAa8.js +0 -12
@@ -1 +1 @@
1
- import{A as N,B as S,t as C,D,x as E,a as s,G as B,p as e}from"./chunk-UVKPFVEO-YfSfkVr_.js";import{c as a,D as L}from"./db-link-CU7IJqbq.js";import{B as u,C as F,a as q,b as Q,c as A}from"./button-Ba8FWhqs.js";import{E as I}from"./error-card-D-uZRy_l.js";const O=S(function(){return e.jsx(I,{title:"Failed to load job sending page",backTo:{href:"/queues",label:"Back to Queues"}})}),R=N(function({loaderData:h}){const{queues:f}=h,[k]=C(),n=D(),t=E().state==="submitting",[l,i]=s.useState(!1),x=k.get("queue")||"",[m,y]=s.useState(x),[c,j]=s.useState(x),[v,o]=s.useState(!1),p=f.filter(r=>r.name.toLowerCase().includes(m.toLowerCase())),w=r=>{j(r),y(r),o(!1),i(!0)},g=B(({currentLocation:r,nextLocation:d})=>l&&!t&&r.pathname!==d.pathname);return s.useEffect(()=>{const r=d=>{l&&!t&&(d.preventDefault(),d.returnValue="")};return window.addEventListener("beforeunload",r),()=>window.removeEventListener("beforeunload",r)},[l,t]),e.jsxs("div",{className:"space-y-6",children:[g.state==="blocked"&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:e.jsxs("div",{className:"bg-white dark:bg-gray-900 rounded-lg shadow-lg p-6 max-w-md mx-4",children:[e.jsx("h2",{className:"text-lg font-semibold text-gray-900 dark:text-gray-100 mb-2",children:"Unsaved Changes"}),e.jsx("p",{className:"text-sm text-gray-600 dark:text-gray-400 mb-6",children:"You have unsaved changes. Are you sure you want to leave this page?"}),e.jsxs("div",{className:"flex gap-3 justify-end",children:[e.jsx(u,{type:"button",variant:"outline",size:"sm",onClick:()=>g.reset(),children:"Stay"}),e.jsx(u,{type:"button",variant:"danger",size:"sm",onClick:()=>g.proceed(),children:"Leave"})]})]})}),e.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-gray-100",children:"Send Job"}),e.jsxs(F,{children:[e.jsx(q,{children:e.jsx(Q,{children:"Job Details"})}),e.jsx(A,{children:e.jsxs("form",{method:"post",className:"space-y-5",onChange:()=>i(!0),onSubmit:()=>i(!1),children:[n&&"error"in n&&e.jsx("div",{className:a("rounded-lg border px-4 py-3 text-sm","bg-red-50 border-red-200 text-red-700","dark:bg-red-950 dark:border-red-800 dark:text-red-400"),children:n.error}),e.jsxs("div",{children:[e.jsxs("label",{htmlFor:"queueSearch",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:["Queue Name ",e.jsx("span",{className:"text-red-500",children:"*"})]}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:"text",id:"queueSearch",value:m,onChange:r=>{y(r.target.value),o(!0)},onFocus:()=>o(!0),onBlur:()=>setTimeout(()=>o(!1),200),placeholder:"Search for a queue...",autoComplete:"off",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")}),e.jsx("input",{type:"hidden",name:"queueName",value:c,required:!0}),v&&p.length>0&&e.jsx("div",{className:"absolute z-10 w-full mt-1 bg-white dark:bg-gray-900 border border-gray-300 dark:border-gray-700 rounded-md shadow-lg max-h-60 overflow-auto",children:p.map(r=>e.jsx("button",{type:"button",onClick:()=>w(r.name),className:"w-full text-left px-3 py-2 hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-900 dark:text-gray-100 cursor-pointer text-sm",children:r.name},r.name))})]}),c&&e.jsxs("p",{className:"mt-1 text-xs text-green-600 dark:text-green-400",children:["Selected: ",c]})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"data",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Data"}),e.jsx("textarea",{id:"data",name:"data",rows:6,placeholder:'{"key": "value"}',className:a("w-full rounded-lg border px-3 py-2 text-sm font-mono","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")}),e.jsx("p",{className:"mt-1 text-xs text-gray-500 dark:text-gray-400",children:"Optional: JSON object to pass as job data"})]}),e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx("label",{htmlFor:"priority",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Priority"}),e.jsx("input",{type:"number",id:"priority",name:"priority",placeholder:"0",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"startAfter",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Start After"}),e.jsx("input",{type:"text",id:"startAfter",name:"startAfter",placeholder:"e.g. 2025-01-01T00:00:00Z or 5 minutes",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"singletonKey",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Singleton Key"}),e.jsx("input",{type:"text",id:"singletonKey",name:"singletonKey",placeholder:"Optional unique key",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"retryLimit",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Retry Limit"}),e.jsx("input",{type:"number",id:"retryLimit",name:"retryLimit",min:"0",placeholder:"0",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"expireInSeconds",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Expire In Seconds"}),e.jsx("input",{type:"number",id:"expireInSeconds",name:"expireInSeconds",min:"1",placeholder:"Default",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]})]}),e.jsxs("div",{className:"flex items-center gap-3 pt-2",children:[e.jsx(u,{type:"submit",disabled:t,children:t?"Sending...":"Send Job"}),e.jsx(L,{to:"/queues",className:"text-sm text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300",children:"Cancel"})]})]})})]})]})});export{O as ErrorBoundary,R as default};
1
+ import{A as N,B as S,t as C,D,x as E,a as s,G as B,p as e}from"./chunk-EVOBXE3Y-CmKRT32p.js";import{c as a,D as L}from"./db-link-BzIwSws3.js";import{B as u,C as F,a as q,b as Q,c as A}from"./button-CudTDtZF.js";import{E as I}from"./error-card--OB_TuOC.js";const O=S(function(){return e.jsx(I,{title:"Failed to load job sending page",backTo:{href:"/queues",label:"Back to Queues"}})}),R=N(function({loaderData:h}){const{queues:f}=h,[k]=C(),n=D(),t=E().state==="submitting",[l,i]=s.useState(!1),x=k.get("queue")||"",[m,y]=s.useState(x),[c,j]=s.useState(x),[v,o]=s.useState(!1),p=f.filter(r=>r.name.toLowerCase().includes(m.toLowerCase())),w=r=>{j(r),y(r),o(!1),i(!0)},g=B(({currentLocation:r,nextLocation:d})=>l&&!t&&r.pathname!==d.pathname);return s.useEffect(()=>{const r=d=>{l&&!t&&(d.preventDefault(),d.returnValue="")};return window.addEventListener("beforeunload",r),()=>window.removeEventListener("beforeunload",r)},[l,t]),e.jsxs("div",{className:"space-y-6",children:[g.state==="blocked"&&e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:e.jsxs("div",{className:"bg-white dark:bg-gray-900 rounded-lg shadow-lg p-6 max-w-md mx-4",children:[e.jsx("h2",{className:"text-lg font-semibold text-gray-900 dark:text-gray-100 mb-2",children:"Unsaved Changes"}),e.jsx("p",{className:"text-sm text-gray-600 dark:text-gray-400 mb-6",children:"You have unsaved changes. Are you sure you want to leave this page?"}),e.jsxs("div",{className:"flex gap-3 justify-end",children:[e.jsx(u,{type:"button",variant:"outline",size:"sm",onClick:()=>g.reset(),children:"Stay"}),e.jsx(u,{type:"button",variant:"danger",size:"sm",onClick:()=>g.proceed(),children:"Leave"})]})]})}),e.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-gray-100",children:"Send Job"}),e.jsxs(F,{children:[e.jsx(q,{children:e.jsx(Q,{children:"Job Details"})}),e.jsx(A,{children:e.jsxs("form",{method:"post",className:"space-y-5",onChange:()=>i(!0),onSubmit:()=>i(!1),children:[n&&"error"in n&&e.jsx("div",{className:a("rounded-lg border px-4 py-3 text-sm","bg-red-50 border-red-200 text-red-700","dark:bg-red-950 dark:border-red-800 dark:text-red-400"),children:n.error}),e.jsxs("div",{children:[e.jsxs("label",{htmlFor:"queueSearch",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:["Queue Name ",e.jsx("span",{className:"text-red-500",children:"*"})]}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:"text",id:"queueSearch",value:m,onChange:r=>{y(r.target.value),o(!0)},onFocus:()=>o(!0),onBlur:()=>setTimeout(()=>o(!1),200),placeholder:"Search for a queue...",autoComplete:"off",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")}),e.jsx("input",{type:"hidden",name:"queueName",value:c,required:!0}),v&&p.length>0&&e.jsx("div",{className:"absolute z-10 w-full mt-1 bg-white dark:bg-gray-900 border border-gray-300 dark:border-gray-700 rounded-md shadow-lg max-h-60 overflow-auto",children:p.map(r=>e.jsx("button",{type:"button",onClick:()=>w(r.name),className:"w-full text-left px-3 py-2 hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-900 dark:text-gray-100 cursor-pointer text-sm",children:r.name},r.name))})]}),c&&e.jsxs("p",{className:"mt-1 text-xs text-green-600 dark:text-green-400",children:["Selected: ",c]})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"data",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Data"}),e.jsx("textarea",{id:"data",name:"data",rows:6,placeholder:'{"key": "value"}',className:a("w-full rounded-lg border px-3 py-2 text-sm font-mono","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")}),e.jsx("p",{className:"mt-1 text-xs text-gray-500 dark:text-gray-400",children:"Optional: JSON object to pass as job data"})]}),e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[e.jsxs("div",{children:[e.jsx("label",{htmlFor:"priority",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Priority"}),e.jsx("input",{type:"number",id:"priority",name:"priority",placeholder:"0",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"startAfter",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Start After"}),e.jsx("input",{type:"text",id:"startAfter",name:"startAfter",placeholder:"e.g. 2025-01-01T00:00:00Z or 5 minutes",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"singletonKey",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Singleton Key"}),e.jsx("input",{type:"text",id:"singletonKey",name:"singletonKey",placeholder:"Optional unique key",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"retryLimit",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Retry Limit"}),e.jsx("input",{type:"number",id:"retryLimit",name:"retryLimit",min:"0",placeholder:"0",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"expireInSeconds",className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"Expire In Seconds"}),e.jsx("input",{type:"number",id:"expireInSeconds",name:"expireInSeconds",min:"1",placeholder:"Default",className:a("w-full rounded-lg border px-3 py-2 text-sm","bg-white border-gray-300 text-gray-900 placeholder-gray-400","dark:bg-gray-900 dark:border-gray-700 dark:text-gray-100 dark:placeholder-gray-500","focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-transparent")})]})]}),e.jsxs("div",{className:"flex items-center gap-3 pt-2",children:[e.jsx(u,{type:"submit",disabled:t,children:t?"Sending...":"Send Job"}),e.jsx(L,{to:"/queues",className:"text-sm text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300",children:"Cancel"})]})]})})]})]})});export{O as ErrorBoundary,R as default};
@@ -1 +1 @@
1
- import{p as r}from"./chunk-UVKPFVEO-YfSfkVr_.js";import{c as t}from"./db-link-CU7IJqbq.js";function o({children:a,className:e}){return r.jsx("div",{className:t("overflow-x-auto",e),children:r.jsx("table",{className:"min-w-full divide-y divide-gray-200 dark:divide-gray-800",children:a})})}function n({children:a,className:e}){return r.jsx("thead",{className:t("bg-gray-50 dark:bg-gray-900",e),children:a})}function c({children:a,className:e}){return r.jsx("tbody",{className:t("divide-y divide-gray-200 bg-white","dark:divide-gray-800 dark:bg-gray-950",e),children:a})}function l({children:a,className:e,onClick:s}){return r.jsx("tr",{className:t(s&&"cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-900 transition-colors",e),onClick:s,children:a})}function x({children:a,className:e}){return r.jsx("th",{scope:"col",className:t("px-6 py-3 text-left text-xs font-semibold text-gray-500 uppercase tracking-wider","dark:text-gray-400",e),children:a})}function g({children:a,className:e,colSpan:s}){return r.jsx("td",{className:t("px-6 py-4 whitespace-nowrap text-sm",e),colSpan:s,children:a})}export{o as T,n as a,l as b,x as c,c as d,g as e};
1
+ import{p as r}from"./chunk-EVOBXE3Y-CmKRT32p.js";import{c as t}from"./db-link-BzIwSws3.js";function o({children:a,className:e}){return r.jsx("div",{className:t("overflow-x-auto",e),children:r.jsx("table",{className:"min-w-full divide-y divide-gray-200 dark:divide-gray-800",children:a})})}function n({children:a,className:e}){return r.jsx("thead",{className:t("bg-gray-50 dark:bg-gray-900",e),children:a})}function c({children:a,className:e}){return r.jsx("tbody",{className:t("divide-y divide-gray-200 bg-white","dark:divide-gray-800 dark:bg-gray-950",e),children:a})}function l({children:a,className:e,onClick:s}){return r.jsx("tr",{className:t(s&&"cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-900 transition-colors",e),onClick:s,children:a})}function x({children:a,className:e}){return r.jsx("th",{scope:"col",className:t("px-6 py-3 text-left text-xs font-semibold text-gray-500 uppercase tracking-wider","dark:text-gray-400",e),children:a})}function g({children:a,className:e,colSpan:s}){return r.jsx("td",{className:t("px-6 py-4 whitespace-nowrap text-sm",e),colSpan:s,children:a})}export{o as T,n as a,l as b,x as c,c as d,g as e};
@@ -0,0 +1 @@
1
+ import{a as u,I as wn,p as ue,r as Tn}from"./chunk-EVOBXE3Y-CmKRT32p.js";import{j as Pe,g as Cn,m as Cr,l as qt,E as _e,N as Vt,i as xr,h as Xt,n as xn}from"./db-link-BzIwSws3.js";import{a as Ht}from"./index-By5u-yQ6.js";let Ge=(function(e){return e.startingStyle="data-starting-style",e.endingStyle="data-ending-style",e})({});const Or={[Ge.startingStyle]:""},kr={[Ge.endingStyle]:""},ks={transitionStatus(e){return e==="starting"?Or:e==="ending"?kr:null}};let Lt=(function(e){return e.open="data-open",e.closed="data-closed",e[e.startingStyle=Ge.startingStyle]="startingStyle",e[e.endingStyle=Ge.endingStyle]="endingStyle",e.anchorHidden="data-anchor-hidden",e.side="data-side",e.align="data-align",e})({}),zt=(function(e){return e.popupOpen="data-popup-open",e.pressed="data-pressed",e})({});const Pr={[zt.popupOpen]:"",[zt.pressed]:""},vr={[Lt.open]:""},Ir={[Lt.closed]:""},Ar={[Lt.anchorHidden]:""},Ps={open(e){return e?Pr:null}},vs={open(e){return e?vr:Ir},anchorHidden(e){return e?Ar:null}},Jt="trigger-press",Mr="trigger-hover",Is="trigger-focus",On="outside-press",As="item-press",Ms="close-press",kn="focus-out",Dr="escape-key",Ds="list-navigation",Fs="cancel-open",Ns="sibling-open",_s="imperative-action",lt=wn[`useInsertionEffect${Math.random().toFixed(1)}`.slice(0,-3)],Fr=lt&&lt!==u.useLayoutEffect?lt:e=>e();function U(e){const t=Pe(Nr).current;return t.next=e,Fr(t.effect),t.trampoline}function Nr(){const e={next:void 0,callback:_r,trampoline:(...t)=>e.callback?.(...t),effect:()=>{e.callback=e.next}};return e}function _r(){}function at(){return typeof window<"u"}function ce(e){return Bt(e)?(e.nodeName||"").toLowerCase():"#document"}function he(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Wr(e){var t;return(t=(Bt(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Bt(e){return at()?e instanceof Node||e instanceof he(e).Node:!1}function Re(e){return at()?e instanceof Element||e instanceof he(e).Element:!1}function oe(e){return at()?e instanceof HTMLElement||e instanceof he(e).HTMLElement:!1}function He(e){return!at()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof he(e).ShadowRoot}function Ke(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=Ue(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&o!=="inline"&&o!=="contents"}function Ws(e){return/^(table|td|th)$/.test(ce(e))}function Vr(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const Hr=/transform|translate|scale|rotate|perspective|filter/,Lr=/paint|layout|strict|content/,Ce=e=>!!e&&e!=="none";let ft;function Br(e){const t=Re(e)?Ue(e):e;return Ce(t.transform)||Ce(t.translate)||Ce(t.scale)||Ce(t.rotate)||Ce(t.perspective)||!Pn()&&(Ce(t.backdropFilter)||Ce(t.filter))||Hr.test(t.willChange||"")||Lr.test(t.contain||"")}function Vs(e){let t=ot(e);for(;oe(t)&&!je(t);){if(Br(t))return t;if(Vr(t))return null;t=ot(t)}return null}function Pn(){return ft==null&&(ft=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),ft}function je(e){return/^(html|body|#document)$/.test(ce(e))}function Ue(e){return he(e).getComputedStyle(e)}function Hs(e){return Re(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function ot(e){if(ce(e)==="html")return e;const t=e.assignedSlot||e.parentNode||He(e)&&e.host||Wr(e);return He(t)?t.host:t}function vn(e){const t=ot(e);return je(t)?e.ownerDocument?e.ownerDocument.body:e.body:oe(t)&&Ke(t)?t:vn(t)}function Zt(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=vn(e),s=o===((r=e.ownerDocument)==null?void 0:r.body),i=he(o);if(s){const c=Yr(i);return t.concat(i,i.visualViewport||[],Ke(o)?o:[],c&&n?Zt(c):[])}else return t.concat(o,Zt(o,[],n))}function Yr(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}const jr={...wn},$r=()=>{},j=typeof document<"u"?u.useLayoutEffect:$r,Gr=u.createContext(void 0);function Kr(e=!1){const t=u.useContext(Gr);if(t===void 0&&!e)throw new Error(Cn(16));return t}function Ur(e){const{focusableWhenDisabled:t,disabled:n,composite:r=!1,tabIndex:o=0,isNativeButton:s}=e,i=r&&t!==!1,c=r&&t===!1;return{props:u.useMemo(()=>{const l={onKeyDown(a){n&&t&&a.key!=="Tab"&&a.preventDefault()}};return r||(l.tabIndex=o,!s&&n&&(l.tabIndex=t?o:-1)),(s&&(t||i)||!s&&n)&&(l["aria-disabled"]=n),s&&(!t||c)&&(l.disabled=n),l},[r,n,t,i,c,s,o])}}function Ls(e={}){const{disabled:t=!1,focusableWhenDisabled:n,tabIndex:r=0,native:o=!0,composite:s}=e,i=u.useRef(null),c=Kr(!0),b=s??c!==void 0,{props:l}=Ur({focusableWhenDisabled:n,disabled:t,composite:b,tabIndex:r,isNativeButton:o}),a=u.useCallback(()=>{const E=i.current;dt(E)&&b&&t&&l.disabled===void 0&&E.disabled&&(E.disabled=!1)},[t,l.disabled,b]);j(a,[a]);const d=u.useCallback((E={})=>{const{onClick:h,onMouseDown:m,onKeyUp:g,onKeyDown:T,onPointerDown:R,...N}=E;return Cr({type:o?"button":void 0,onClick(f){if(t){f.preventDefault();return}h?.(f)},onMouseDown(f){t||m?.(f)},onKeyDown(f){if(t||(qt(f),T?.(f),f.baseUIHandlerPrevented))return;const D=f.target===f.currentTarget,x=f.currentTarget,C=dt(x),F=!o&&qr(x),v=D&&(o?C:!F),V=f.key==="Enter",L=f.key===" ",S=x.getAttribute("role"),_=S?.startsWith("menuitem")||S==="option"||S==="gridcell";if(D&&b&&L){if(f.defaultPrevented&&_)return;f.preventDefault(),F||o&&C?(x.click(),f.preventBaseUIHandler()):v&&(h?.(f),f.preventBaseUIHandler());return}v&&(!o&&(L||V)&&f.preventDefault(),!o&&V&&h?.(f))},onKeyUp(f){if(!t){if(qt(f),g?.(f),f.target===f.currentTarget&&o&&b&&dt(f.currentTarget)&&f.key===" "){f.preventDefault();return}f.baseUIHandlerPrevented||f.target===f.currentTarget&&!o&&!b&&f.key===" "&&h?.(f)}},onPointerDown(f){if(t){f.preventDefault();return}R?.(f)}},o?void 0:{role:"button"},l,N)},[t,l,b,o]),p=U(E=>{i.current=E,a()});return{getButtonProps:d,buttonRef:p}}function dt(e){return oe(e)&&e.tagName==="BUTTON"}function qr(e){return!!(e?.tagName==="A"&&e?.href)}const Le=typeof navigator<"u",pt=zr(),In=Zr(),An=Jr(),Mn=typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter:none"),Dn=pt.platform==="MacIntel"&&pt.maxTouchPoints>1?!0:/iP(hone|ad|od)|iOS/.test(pt.platform),Xr=Le&&/apple/i.test(navigator.vendor),Pt=Le&&/android/i.test(In)||/android/i.test(An),Bs=Le&&In.toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints,Fn=An.includes("jsdom/");function zr(){if(!Le)return{platform:"",maxTouchPoints:-1};const e=navigator.userAgentData;return e?.platform?{platform:e.platform,maxTouchPoints:navigator.maxTouchPoints}:{platform:navigator.platform??"",maxTouchPoints:navigator.maxTouchPoints??-1}}function Jr(){if(!Le)return"";const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?e.brands.map(({brand:t,version:n})=>`${t}/${n}`).join(" "):navigator.userAgent}function Zr(){if(!Le)return"";const e=navigator.userAgentData;return e?.platform?e.platform:navigator.platform??""}let Qt=0;function Qr(e,t="mui"){const[n,r]=u.useState(e),o=e||n;return u.useEffect(()=>{n==null&&(Qt+=1,r(`${t}-${Qt}`))},[n,t]),o}const en=jr.useId;function qe(e,t){if(en!==void 0){const n=en();return e??(t?`${t}-${n}`:n)}return Qr(e,t)}function Ys(e){return qe(e,"base-ui")}function Ne(e,t,n,r){let o=!1,s=!1;const i=_e;return{reason:e,event:t??new Event("base-ui"),cancel(){o=!0},allowPropagation(){s=!0},get isCanceled(){return o},get isPropagationAllowed(){return s},trigger:n,...i}}const eo=[];function Nn(e){u.useEffect(e,eo)}const Je=null;class to{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=t=>{this.isScheduled=!1;const n=this.callbacks,r=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,r>0)for(let o=0;o<n.length;o+=1)n[o]?.(t)};request(t){const n=this.nextId;return this.nextId+=1,this.callbacks.push(t),this.callbacksCount+=1,!this.isScheduled&&(requestAnimationFrame(this.tick),this.isScheduled=!0),n}cancel(t){const n=t-this.startId;n<0||n>=this.callbacks.length||(this.callbacks[n]=null,this.callbacksCount-=1)}}const Ze=new to;class ge{static create(){return new ge}static request(t){return Ze.request(t)}static cancel(t){return Ze.cancel(t)}currentId=Je;request(t){this.cancel(),this.currentId=Ze.request(()=>{this.currentId=Je,t()})}cancel=()=>{this.currentId!==Je&&(Ze.cancel(this.currentId),this.currentId=Je)};disposeEffect=()=>this.cancel}function _n(){const e=Pe(ge.create).current;return Nn(e.disposeEffect),e}function no(e,t=!1,n=!1){const[r,o]=u.useState(e&&t?"idle":void 0),[s,i]=u.useState(e);return e&&!s&&(i(!0),o("starting")),!e&&s&&r!=="ending"&&!n&&o("ending"),!e&&!s&&r==="ending"&&o(void 0),j(()=>{if(!e&&s&&r!=="ending"&&n){const c=ge.request(()=>{o("ending")});return()=>{ge.cancel(c)}}},[e,s,r,n]),j(()=>{if(!e||t)return;const c=ge.request(()=>{o(void 0)});return()=>{ge.cancel(c)}},[t,e]),j(()=>{if(!e||!t)return;e&&s&&r!=="idle"&&o("starting");const c=ge.request(()=>{o("idle")});return()=>{ge.cancel(c)}},[t,e,s,r]),{mounted:s,setMounted:i,transitionStatus:r}}function me(e){return e==null?e:"current"in e?e.current:e}function ro(e,t=!1,n=!0){const r=_n();return U((o,s=null)=>{r.cancel();const i=me(e);if(i==null)return;const c=i,b=()=>{Ht.flushSync(o)};if(typeof c.getAnimations!="function"||globalThis.BASE_UI_ANIMATIONS_DISABLED){o();return}function l(){Promise.all(c.getAnimations().map(a=>a.finished)).then(()=>{s?.aborted||b()}).catch(()=>{if(n){s?.aborted||b();return}const a=c.getAnimations();!s?.aborted&&a.length>0&&a.some(d=>d.pending||d.playState!=="finished")&&l()})}if(t){const a=Ge.startingStyle;if(!c.hasAttribute(a)){r.request(l);return}const d=new MutationObserver(()=>{c.hasAttribute(a)||(d.disconnect(),l())});d.observe(c,{attributes:!0,attributeFilter:[a]}),s?.addEventListener("abort",()=>d.disconnect(),{once:!0});return}r.request(l)})}function oo(e){const{enabled:t=!0,open:n,ref:r,onComplete:o}=e,s=U(o),i=ro(r,n,!1);u.useEffect(()=>{if(!t)return;const c=new AbortController;return i(s,c.signal),()=>{c.abort()}},[t,n,s,i])}const Be=0;class ke{static create(){return new ke}currentId=Be;start(t,n){this.clear(),this.currentId=setTimeout(()=>{this.currentId=Be,n()},t)}isStarted(){return this.currentId!==Be}clear=()=>{this.currentId!==Be&&(clearTimeout(this.currentId),this.currentId=Be)};disposeEffect=()=>this.clear}function st(){const e=Pe(ke.create).current;return Nn(e.disposeEffect),e}function rt(e){e.preventDefault(),e.stopPropagation()}function so(e){return"nativeEvent"in e}function io(e){return e.pointerType===""&&e.isTrusted?!0:Pt&&e.pointerType?e.type==="click"&&e.buttons===1:e.detail===0&&!e.pointerType}function co(e){return Fn?!1:!Pt&&e.width===0&&e.height===0||Pt&&e.width===1&&e.height===1&&e.pressure===0&&e.detail===0&&e.pointerType==="mouse"||e.width<1&&e.height<1&&e.pressure===0&&e.detail===0&&e.pointerType==="touch"}function js(e,t){const n=["mouse","pen"];return t||n.push("",void 0),n.includes(e)}function ao(e){const t=e.type;return t==="click"||t==="mousedown"||t==="keydown"||t==="keyup"}function H(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function We(...e){return()=>{for(let t=0;t<e.length;t+=1){const n=e[t];n&&n()}}}function gt(e){const t=Pe(uo,e).current;return t.next=e,j(t.effect),t}function uo(e){const t={current:e,next:e,effect:()=>{t.current=t.next}};return t}function q(e){return e?.ownerDocument||document}const lo={clipPath:"inset(50%)",overflow:"hidden",whiteSpace:"nowrap",border:0,padding:0,width:1,height:1,margin:-1},fo={...lo,position:"fixed",top:0,left:0},it=u.forwardRef(function(t,n){const[r,o]=u.useState();j(()=>{Xr&&o("button")},[]);const s={tabIndex:0,role:r};return ue.jsx("span",{...t,ref:n,style:fo,"aria-hidden":r?void 0:!0,...s,"data-base-ui-focus-guard":""})}),vt="data-base-ui-focusable",Wn="active",Vn="selected",Hn="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])",ht="ArrowLeft",mt="ArrowRight",po="ArrowUp",go="ArrowDown";function xe(e){let t=e.activeElement;for(;t?.shadowRoot?.activeElement!=null;)t=t.shadowRoot.activeElement;return t}function B(e,t){if(!e||!t)return!1;const n=t.getRootNode?.();if(e.contains(t))return!0;if(n&&He(n)){let r=t;for(;r;){if(e===r)return!0;r=r.parentNode||r.host}}return!1}function Oe(e){return"composedPath"in e?e.composedPath()[0]:e.target}function $s(e,t){if(!Re(e))return!1;const n=e;if(t.hasElement(n))return!n.hasAttribute("data-trigger-disabled");for(const[,r]of t.entries())if(B(r,n))return!r.hasAttribute("data-trigger-disabled");return!1}function fe(e,t){if(t==null)return!1;if("composedPath"in e)return e.composedPath().includes(t);const n=e;return n.target!=null&&t.contains(n.target)}function ho(e){return e.matches("html,body")}function Ln(e){return oe(e)&&e.matches(Hn)}function Gs(e){return e?.closest(`button,a[href],[role="button"],select,[tabindex]:not([tabindex="-1"]),${Hn}`)!=null}function tn(e){return e?e.getAttribute("role")==="combobox"&&Ln(e):!1}function Ks(e){if(!e||Fn)return!0;try{return e.matches(":focus-visible")}catch{return!0}}function It(e){return e?e.hasAttribute(vt)?e:e.querySelector(`[${vt}]`)||e:null}const Us=["top","right","bottom","left"],mo=Math.min,bo=Math.max,qs=Math.round,bt=Math.floor,Xs=e=>({x:e,y:e}),yo={left:"right",right:"left",bottom:"top",top:"bottom"};function zs(e,t,n){return bo(e,mo(t,n))}function Js(e,t){return typeof e=="function"?e(t):e}function Bn(e){return e.split("-")[0]}function Yn(e){return e.split("-")[1]}function Eo(e){return e==="x"?"y":"x"}function So(e){return e==="y"?"height":"width"}function Ro(e){const t=e[0];return t==="t"||t==="b"?"y":"x"}function wo(e){return Eo(Ro(e))}function Zs(e,t,n){n===void 0&&(n=!1);const r=Yn(e),o=wo(e),s=So(o);let i=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(i=Mt(i)),[i,Mt(i)]}function Qs(e){const t=Mt(e);return[At(e),t,At(t)]}function At(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const nn=["left","right"],rn=["right","left"],To=["top","bottom"],Co=["bottom","top"];function xo(e,t,n){switch(e){case"top":case"bottom":return n?t?rn:nn:t?nn:rn;case"left":case"right":return t?To:Co;default:return[]}}function ei(e,t,n,r){const o=Yn(e);let s=xo(Bn(e),n==="start",r);return o&&(s=s.map(i=>i+"-"+o),t&&(s=s.concat(s.map(At)))),s}function Mt(e){const t=Bn(e);return yo[t]+e.slice(t.length)}function Oo(e){return{top:0,right:0,bottom:0,left:0,...e}}function ti(e){return typeof e!="number"?Oo(e):{top:e,right:e,bottom:e,left:e}}function ni(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function Qe(e,t,n){return Math.floor(e/t)!==n}function on(e,t){return t<0||t>=e.length}function ri(e,t){return de(e.current,{disabledIndices:t})}function oi(e,t){return de(e.current,{decrement:!0,startingIndex:e.current.length,disabledIndices:t})}function de(e,{startingIndex:t=-1,decrement:n=!1,disabledIndices:r,amount:o=1}={}){let s=t;do s+=n?-o:o;while(s>=0&&s<=e.length-1&&Dt(e,s,r));return s}function si(e,{event:t,orientation:n,loopFocus:r,onLoop:o,rtl:s,cols:i,disabledIndices:c,minIndex:b,maxIndex:l,prevIndex:a,stopEvent:d=!1}){let p=a,E;if(t.key===po?E="up":t.key===go&&(E="down"),E){const h=[],m=[];let g=!1,T=0;{let F=null,v=-1;e.forEach((V,L)=>{if(V==null)return;T+=1;const S=V.closest('[role="row"]');S&&(g=!0),(S!==F||v===-1)&&(F=S,v+=1,h[v]=[]),h[v].push(L),m[L]=v})}let R=!1,N=0;if(g)for(const F of h){const v=F.length;v>N&&(N=v),v!==i&&(R=!0)}const k=R&&T<e.length,f=N||i,D=F=>{if(!R||a===-1)return;const v=m[a];if(v==null)return;const V=h[v].indexOf(a),L=F==="up"?-1:1;for(let S=v+L,_=0;_<h.length;_+=1,S+=L){if(S<0||S>=h.length){if(!r||k)return;if(S=S<0?h.length-1:0,o){const X=Math.min(V,h[S].length-1),ee=h[S][X]??h[S][0],be=o(t,a,ee);S=m[be]??S}}const J=h[S];for(let X=Math.min(V,J.length-1);X>=0;X-=1){const ee=J[X];if(!Dt(e,ee,c))return ee}}},x=F=>{if(!k||a===-1)return;const v=a%f,V=F==="up"?-f:f,L=l-l%f,S=bt(l/f)+1;for(let _=a-v+V,J=0;J<S;J+=1,_+=V){if(_<0||_>l){if(!r)return;_=_<0?L:0}const X=Math.min(_+f-1,l);for(let ee=Math.min(_+v,X);ee>=_;ee-=1)if(!Dt(e,ee,c))return ee}};d&&rt(t);const C=D(E)??x(E);if(C!==void 0)p=C;else if(a===-1)p=E==="up"?l:b;else if(p=de(e,{startingIndex:a,amount:f,decrement:E==="up",disabledIndices:c}),r){if(E==="up"&&(a-f<b||p<0)){const F=a%f,v=l%f,V=l-(v-F);v===F?p=l:p=v>F?V:V-f,o&&(p=o(t,a,p))}E==="down"&&a+f>l&&(p=de(e,{startingIndex:a%f-f,amount:f,disabledIndices:c}),o&&(p=o(t,a,p)))}on(e,p)&&(p=a)}if(n==="both"){const h=bt(a/i);t.key===(s?ht:mt)&&(d&&rt(t),a%i!==i-1?(p=de(e,{startingIndex:a,disabledIndices:c}),r&&Qe(p,i,h)&&(p=de(e,{startingIndex:a-a%i-1,disabledIndices:c}),o&&(p=o(t,a,p)))):r&&(p=de(e,{startingIndex:a-a%i-1,disabledIndices:c}),o&&(p=o(t,a,p))),Qe(p,i,h)&&(p=a)),t.key===(s?mt:ht)&&(d&&rt(t),a%i!==0?(p=de(e,{startingIndex:a,decrement:!0,disabledIndices:c}),r&&Qe(p,i,h)&&(p=de(e,{startingIndex:a+(i-a%i),decrement:!0,disabledIndices:c}),o&&(p=o(t,a,p)))):r&&(p=de(e,{startingIndex:a+(i-a%i),decrement:!0,disabledIndices:c}),o&&(p=o(t,a,p))),Qe(p,i,h)&&(p=a));const m=bt(l/i)===h;on(e,p)&&(r&&m?(p=t.key===(s?mt:ht)?l:de(e,{startingIndex:a-a%i-1,disabledIndices:c}),o&&(p=o(t,a,p))):p=a)}return p}function ii(e,t,n){const r=[];let o=0;return e.forEach(({width:s,height:i},c)=>{let b=!1;for(;!b;){const l=[];for(let a=0;a<s;a+=1)for(let d=0;d<i;d+=1)l.push(o+a+d*t);o%t+s<=t&&l.every(a=>r[a]==null)?(l.forEach(a=>{r[a]=c}),b=!0):o+=1}}),[...r]}function ci(e,t,n,r,o){if(e===-1)return-1;const s=n.indexOf(e),i=t[e];switch(o){case"tl":return s;case"tr":return i?s+i.width-1:s;case"bl":return i?s+(i.height-1)*r:s;case"br":return n.lastIndexOf(e);default:return-1}}function ai(e,t){return t.flatMap((n,r)=>e.includes(n)?[r]:[])}function Dt(e,t,n){if(typeof n=="function"?n(t):n?.includes(t)??!1)return!0;const o=e[t];return o?Yt(o)?!n&&(o.hasAttribute("disabled")||o.getAttribute("aria-disabled")==="true"):!0:!1}function ko(e){return e.visibility==="hidden"||e.visibility==="collapse"}function Yt(e,t=e?Ue(e):null){return!e||!e.isConnected||!t||ko(t)?!1:typeof e.checkVisibility=="function"?e.checkVisibility():t.display!=="none"&&t.display!=="contents"}const Po='a[href],button,input,select,textarea,summary,details,iframe,object,embed,[tabindex],[contenteditable]:not([contenteditable="false"]),audio[controls],video[controls]';function vo(e){const t=e.assignedSlot;if(t)return t;if(e.parentElement)return e.parentElement;const n=e.getRootNode();return He(n)?n.host:null}function Ft(e){for(const t of Array.from(e.children))if(ce(t)==="summary")return t;return null}function Io(e,t){const n=Ft(t);return!!n&&(e===n||B(n,e))}function jn(e){const t=e?ce(e):"";return e!=null&&e.matches(Po)&&(t!=="summary"||e.parentElement!=null&&ce(e.parentElement)==="details"&&Ft(e.parentElement)===e)&&(t!=="details"||Ft(e)==null)&&(t!=="input"||e.type!=="hidden")}function $n(e){if(!jn(e)||!e.isConnected||e.matches(":disabled"))return!1;for(let t=e;t;t=vo(t)){const n=t!==e,r=ce(t)==="slot";if(t.hasAttribute("inert")||n&&ce(t)==="details"&&!t.open&&!Io(e,t)||t.hasAttribute("hidden")||!r&&!Ao(t,n))return!1}return!0}function Ao(e,t){const n=Ue(e);return t?n.display!=="none":Yt(e,n)}function Gn(e){const t=e.tabIndex;if(t<0){const n=ce(e);if(n==="details"||n==="audio"||n==="video"||oe(e)&&e.isContentEditable)return 0}return t}function yt(e){if(ce(e)!=="input")return null;const t=e;return t.type==="radio"&&t.name!==""?t:null}function Mo(e,t){const n=yt(e);if(!n)return!0;const r=t.find(o=>{const s=yt(o);return s?.name===n.name&&s.form===n.form&&s.checked});return r?r===n:t.find(o=>{const s=yt(o);return s?.name===n.name&&s.form===n.form})===n}function Kn(e){if(oe(e)&&ce(e)==="slot"){const t=e.assignedElements({flatten:!0});if(t.length>0)return t}return oe(e)&&e.shadowRoot?Array.from(e.shadowRoot.children):Array.from(e.children)}function Un(e,t){Kn(e).forEach(n=>{jn(n)&&t.push(n),Un(n,t)})}function qn(e,t,n){Kn(e).forEach(r=>{oe(r)&&r.matches(t)&&n.push(r),qn(r,t,n)})}function jt(e){return $n(e)&&Gn(e)>=0}function Xn(e){const t=[];return Un(e,t),t.filter($n)}function Xe(e){const t=Xn(e);return t.filter(n=>Gn(n)>=0&&Mo(n,t))}function zn(e,t){const n=Xe(e),r=n.length;if(r===0)return;const o=xe(q(e)),s=n.indexOf(o),i=s===-1?t===1?0:r-1:s+t;return n[i]}function Jn(e){return zn(q(e).body,1)||e}function Zn(e){return zn(q(e).body,-1)||e}function Qn(e,t){if(!e)return null;const n=Xe(q(e).body),r=n.length;if(r===0)return null;const o=n.indexOf(e);if(o===-1)return null;const s=(o+t+r)%r;return n[s]}function ui(e){return Qn(e,1)}function li(e){return Qn(e,-1)}function $e(e,t){const n=t||e.currentTarget,r=e.relatedTarget;return!r||!B(n,r)}function Do(e){Xe(e).forEach(n=>{n.dataset.tabindex=n.getAttribute("tabindex")||"",n.setAttribute("tabindex","-1")})}function sn(e){const t=[];qn(e,"[data-tabindex]",t),t.forEach(n=>{const r=n.dataset.tabindex;delete n.dataset.tabindex,r?n.setAttribute("tabindex",r):n.removeAttribute("tabindex")})}function Ve(e,t,n=!0){return e.filter(o=>o.parentId===t).flatMap(o=>[...!n||o.context?.open?[o]:[],...Ve(e,o.id,n)])}function cn(e,t){let n=[],r=e.find(o=>o.id===t)?.parentId;for(;r;){const o=e.find(s=>s.id===r);r=o?.parentId,o&&(n=n.concat(o))}return n}function ct(e){return`data-base-ui-${e}`}let et=0;function Et(e,t={}){const{preventScroll:n=!1,cancelPrevious:r=!0,sync:o=!1}=t;r&&cancelAnimationFrame(et);const s=()=>e?.focus({preventScroll:n});if(o)return s(),Vt;const i=requestAnimationFrame(s);return et=i,()=>{et===i&&(cancelAnimationFrame(i),et=0)}}const St={inert:new WeakMap,"aria-hidden":new WeakMap},an="data-base-ui-inert",Nt={inert:new WeakSet,"aria-hidden":new WeakSet};let Ye=new WeakMap,Rt=0;function Fo(e){return Nt[e]}function er(e){return e?He(e)?e.host:er(e.parentNode):null}const wt=(e,t)=>t.map(n=>{if(e.contains(n))return n;const r=er(n);return e.contains(r)?r:null}).filter(n=>n!=null),un=e=>{const t=new Set;return e.forEach(n=>{let r=n;for(;r&&!t.has(r);)t.add(r),r=r.parentNode}),t},ln=(e,t,n)=>{const r=[],o=s=>{!s||n.has(s)||Array.from(s.children).forEach(i=>{ce(i)!=="script"&&(t.has(i)?o(i):r.push(i))})};return o(e),r};function No(e,t,n,r,{mark:o=!0,markerIgnoreElements:s=[]}){const i=r?"inert":n?"aria-hidden":null;let c=null,b=null;const l=wt(t,e),a=o?wt(t,s):[],d=new Set(a),p=o?ln(t,un(l),new Set(l)).filter(m=>!d.has(m)):[],E=[],h=[];if(i){const m=St[i],g=Fo(i);b=g,c=m;const T=wt(t,Array.from(t.querySelectorAll("[aria-live]"))),R=l.concat(T);ln(t,un(R),new Set(R)).forEach(k=>{const f=k.getAttribute(i),D=f!==null&&f!=="false",x=(m.get(k)||0)+1;m.set(k,x),E.push(k),x===1&&D&&g.add(k),D||k.setAttribute(i,i==="inert"?"":"true")})}return o&&p.forEach(m=>{const g=(Ye.get(m)||0)+1;Ye.set(m,g),h.push(m),g===1&&m.setAttribute(an,"")}),Rt+=1,()=>{c&&E.forEach(m=>{const T=(c.get(m)||0)-1;c.set(m,T),T||(!b?.has(m)&&i&&m.removeAttribute(i),b?.delete(m))}),o&&h.forEach(m=>{const g=(Ye.get(m)||0)-1;Ye.set(m,g),g||m.removeAttribute(an)}),Rt-=1,Rt||(St.inert=new WeakMap,St["aria-hidden"]=new WeakMap,Nt.inert=new WeakSet,Nt["aria-hidden"]=new WeakSet,Ye=new WeakMap)}}function fn(e,t={}){const{ariaHidden:n=!1,inert:r=!1,mark:o=!0,markerIgnoreElements:s=[]}=t,i=q(e[0]).body;return No(e,i,n,r,{mark:o,markerIgnoreElements:s})}const fi=500,di=500,pi={style:{transition:"none"}},_o="data-base-ui-click-trigger",gi={fallbackAxisSide:"none"},hi={fallbackAxisSide:"end"},Wo={clipPath:"inset(50%)",position:"fixed",top:0,left:0},tr=u.createContext(null),nr=()=>u.useContext(tr),Vo=ct("portal");function Ho(e={}){const{ref:t,container:n,componentProps:r=_e,elementProps:o}=e,s=qe(),c=nr()?.portalNode,[b,l]=u.useState(null),[a,d]=u.useState(null),p=U(g=>{g!==null&&d(g)}),E=u.useRef(null);j(()=>{if(n===null){E.current&&(E.current=null,d(null),l(null));return}if(s==null)return;const g=(n&&(Bt(n)?n:n.current))??c??document.body;if(g==null){E.current&&(E.current=null,d(null),l(null));return}E.current!==g&&(E.current=g,d(null),l(g))},[n,c,s]);const h=xr("div",r,{ref:[t,p],props:[{id:s,[Vo]:""},o]});return{portalNode:a,portalSubtree:b&&h?Ht.createPortal(h,b):null}}const mi=u.forwardRef(function(t,n){const{children:r,container:o,className:s,render:i,renderGuards:c,style:b,...l}=t,{portalNode:a,portalSubtree:d}=Ho({container:o,ref:n,componentProps:t,elementProps:l}),p=u.useRef(null),E=u.useRef(null),h=u.useRef(null),m=u.useRef(null),[g,T]=u.useState(null),R=u.useRef(!1),N=g?.modal,k=g?.open,f=typeof c=="boolean"?c:!!g&&!g.modal&&g.open&&!!a;u.useEffect(()=>{if(!a||N)return;function x(C){a&&C.relatedTarget&&$e(C)&&(C.type==="focusin"?R.current&&(sn(a),R.current=!1):(Do(a),R.current=!0))}return We(H(a,"focusin",x,!0),H(a,"focusout",x,!0))},[a,N]),u.useEffect(()=>{!a||k!==!1||(sn(a),R.current=!1)},[k,a]);const D=u.useMemo(()=>({beforeOutsideRef:p,afterOutsideRef:E,beforeInsideRef:h,afterInsideRef:m,portalNode:a,setFocusManagerState:T}),[a]);return ue.jsxs(u.Fragment,{children:[d,ue.jsxs(tr.Provider,{value:D,children:[f&&a&&ue.jsx(it,{"data-type":"outside",ref:p,onFocus:x=>{if($e(x,a))h.current?.focus();else{const C=g?g.domReference:null;Zn(C)?.focus()}}}),f&&a&&ue.jsx("span",{"aria-owns":a.id,style:Wo}),a&&Ht.createPortal(r,a),f&&a&&ue.jsx(it,{"data-type":"outside",ref:E,onFocus:x=>{if($e(x,a))m.current?.focus();else{const C=g?g.domReference:null;Jn(C)?.focus(),g?.closeOnFocusOut&&g?.onOpenChange(!1,Ne(kn,x.nativeEvent))}}})]})]})});function rr(){const e=new Map;return{emit(t,n){e.get(t)?.forEach(r=>r(n))},on(t,n){e.has(t)||e.set(t,new Set),e.get(t).add(n)},off(t,n){e.get(t)?.delete(n)}}}class Lo{nodesRef={current:[]};events=rr();addNode(t){this.nodesRef.current.push(t)}removeNode(t){const n=this.nodesRef.current.findIndex(r=>r===t);n!==-1&&this.nodesRef.current.splice(n,1)}}const or=u.createContext(null),sr=u.createContext(null),ut=()=>u.useContext(or)?.id||null,$t=e=>{const t=u.useContext(sr);return e??t};function bi(e){const t=qe(),n=$t(e),r=ut();return j(()=>{if(!t)return;const o={id:t,parentId:r};return n?.addNode(o),()=>{n?.removeNode(o)}},[n,t,r]),t}function yi(e){const{children:t,id:n}=e,r=ut();return ue.jsx(or.Provider,{value:u.useMemo(()=>({id:n,parentId:r}),[n,r]),children:t})}function Ei(e){const{children:t,externalTree:n}=e,r=Pe(()=>n??new Lo).current;return ue.jsx(sr.Provider,{value:r,children:t})}function Bo(e,t){const n=he(Oe(e));return e instanceof n.KeyboardEvent?"keyboard":e instanceof n.FocusEvent?t||"keyboard":"pointerType"in e?e.pointerType||"keyboard":"touches"in e?"touch":e instanceof n.MouseEvent?t||(e.detail===0?"keyboard":"mouse"):""}const dn=20;let we=[];function Gt(){we=we.filter(e=>e.deref()?.isConnected)}function Yo(e){Gt(),e&&ce(e)!=="body"&&(we.push(new WeakRef(e)),we.length>dn&&(we=we.slice(-dn)))}function Tt(){return Gt(),we[we.length-1]?.deref()}function jo(e){return e?jt(e)?e:Xe(e)[0]||e:null}function pn(e,t){if(e.hasAttribute("tabindex")&&!e.hasAttribute("data-tabindex")||!t.current.includes("floating")&&!e.getAttribute("role")?.includes("dialog"))return;const r=Xn(e).filter(s=>{const i=s.getAttribute("data-tabindex")||"";return jt(s)||s.hasAttribute("data-tabindex")&&!i.startsWith("-")}),o=e.getAttribute("tabindex");t.current.includes("floating")||r.length===0?o!=="0"&&e.setAttribute("tabindex","0"):(o!=="-1"||e.hasAttribute("data-tabindex")&&e.getAttribute("data-tabindex")!=="-1")&&(e.setAttribute("tabindex","-1"),e.setAttribute("data-tabindex","-1"))}function Si(e){const{context:t,children:n,disabled:r=!1,initialFocus:o=!0,returnFocus:s=!0,restoreFocus:i=!1,modal:c=!0,closeOnFocusOut:b=!0,openInteractionType:l="",nextFocusableElement:a,previousFocusableElement:d,beforeContentFocusGuardRef:p,externalTree:E,getInsideElements:h}=e,m="rootStore"in t?t.rootStore:t,g=m.useState("open"),T=m.useState("domReferenceElement"),R=m.useState("floatingElement"),{events:N,dataRef:k}=m.context,f=U(()=>k.current.floatingContext?.nodeId),D=o===!1,x=tn(T)&&D,C=u.useRef(["content"]),F=gt(o),v=gt(s),V=gt(l),L=$t(E),S=nr(),_=u.useRef(!1),J=u.useRef(!1),X=u.useRef(!1),ee=u.useRef(null),be=u.useRef(""),Te=u.useRef(""),ve=u.useRef(null),W=u.useRef(null),pe=Xt(ve,p,S?.beforeInsideRef),Ie=Xt(W,S?.afterInsideRef),Ae=st(),ye=st(),Ee=_n(),ae=S!=null,A=It(R),le=U((P=A)=>P?Xe(P):[]),se=U(()=>h?.().filter(P=>P!=null)??[]);u.useEffect(()=>{if(r||!c)return;function P(Z){Z.key==="Tab"&&B(A,xe(q(A)))&&le().length===0&&!x&&rt(Z)}const $=q(A);return H($,"keydown",P)},[r,T,A,c,C,x,le]),u.useEffect(()=>{if(r||!g)return;const P=q(A);function $(){X.current=!1}function Z(M){const I=Oe(M),z=se(),O=B(R,I)||B(T,I)||B(S?.portalNode,I)||z.some(te=>te===I||B(te,I));X.current=!O,Te.current=M.pointerType||"keyboard",I?.closest(`[${_o}]`)&&(J.current=!0)}function Q(){Te.current="keyboard"}return We(H(P,"pointerdown",Z,!0),H(P,"pointerup",$,!0),H(P,"pointercancel",$,!0),H(P,"keydown",Q,!0))},[r,R,T,A,g,S,se]),u.useEffect(()=>{if(r||!b)return;const P=q(A);function $(){J.current=!0,ye.start(0,()=>{J.current=!1})}function Z(z){const O=Oe(z);jt(O)&&(ee.current=O)}function Q(z){const O=z.relatedTarget,te=z.currentTarget,Y=Oe(z);queueMicrotask(()=>{const Me=f(),y=m.context.triggerElements,w=se(),ne=O?.hasAttribute(ct("focus-guard"))&&[ve.current,W.current,S?.beforeInsideRef.current,S?.afterInsideRef.current,S?.beforeOutsideRef.current,S?.afterOutsideRef.current,me(d),me(a)].includes(O),re=!(B(T,O)||B(R,O)||B(O,R)||B(S?.portalNode,O)||w.some(G=>G===O||B(G,O))||O!=null&&y.hasElement(O)||y.hasMatchingElement(G=>B(G,O))||ne||L&&(Ve(L.nodesRef.current,Me).find(G=>B(G.context?.elements.floating,O)||B(G.context?.elements.domReference,O))||cn(L.nodesRef.current,Me).find(G=>[G.context?.elements.floating,It(G.context?.elements.floating)].includes(O)||G.context?.elements.domReference===O)));if(te===T&&A&&pn(A,C),i&&te!==T&&!Yt(Y)&&xe(P)===P.body){if(oe(A)&&(A.focus(),i==="popup")){Ee.request(()=>{A.focus()});return}const G=le(),De=ee.current,Se=(De&&G.includes(De)?De:null)||G[G.length-1]||A;oe(Se)&&Se.focus()}if(k.current.insideReactTree){k.current.insideReactTree=!1;return}(x||!c)&&O&&re&&!J.current&&(x||O!==Tt())&&(_.current=!0,m.setOpen(!1,Ne(kn,z)))})}function M(){X.current||(k.current.insideReactTree=!0,Ae.start(0,()=>{k.current.insideReactTree=!1}))}const I=oe(T)?T:null;if(!(!R&&!I))return We(I&&H(I,"focusout",Q),I&&H(I,"pointerdown",$),R&&H(R,"focusin",Z),R&&H(R,"focusout",Q),R&&S&&H(R,"focusout",M,!0))},[r,T,R,A,c,L,S,m,b,i,le,x,f,C,k,Ae,ye,Ee,a,d,se]),u.useEffect(()=>{if(r||!R||!g)return;const P=Array.from(S?.portalNode?.querySelectorAll(`[${ct("portal")}]`)||[]),Z=(L?cn(L.nodesRef.current,f()):[]).find(te=>tn(te.context?.elements.domReference||null))?.context?.elements.domReference,M=[...[R,...P,ve.current,W.current,S?.beforeOutsideRef.current,S?.afterOutsideRef.current,...se()],Z,me(d),me(a),x?T:null].filter(te=>te!=null),I=fn(M,{ariaHidden:c||x,mark:!1}),z=[R,...P].filter(te=>te!=null),O=fn(z);return()=>{O(),I()}},[g,r,T,R,c,C,S,x,L,f,a,d,se]),j(()=>{if(!g||r||!oe(A))return;const P=q(A),$=xe(P);queueMicrotask(()=>{const Z=F.current,Q=typeof Z=="function"?Z(V.current||""):Z;if(Q===void 0||Q===!1||B(A,$))return;let I=null;const z=()=>(I==null&&(I=le(A)),I[0]||A);let O;Q===!0||Q===null?O=z():O=me(Q),O=O||z(),Et(O,{preventScroll:O===A})})},[r,g,A,D,le,F,V]),j(()=>{if(r||!A)return;const P=q(A),$=xe(P);Yo($);function Z(M){if(M.open||(be.current=Bo(M.nativeEvent,Te.current)),M.reason===Mr&&M.nativeEvent.type==="mouseleave"&&(_.current=!0),M.reason===On)if(M.nested)_.current=!1;else if(io(M.nativeEvent)||co(M.nativeEvent))_.current=!1;else{let I=!1;q(A).createElement("div").focus({get preventScroll(){return I=!0,!1}}),I?_.current=!1:_.current=!0}}N.on("openchange",Z);function Q(){const M=v.current;let I=typeof M=="function"?M(be.current):M;if(I===void 0||I===!1)return null;if(I===null&&(I=!0),typeof I=="boolean"){const O=T||Tt();return O&&O.isConnected?O:null}const z=T||Tt();return me(I)||z||null}return()=>{N.off("openchange",Z);const M=xe(P),I=se(),z=B(R,M)||I.some(Y=>Y===M||B(Y,M))||L&&Ve(L.nodesRef.current,f(),!1).some(Y=>B(Y.context?.elements.floating,M)),O=v.current,te=Q();queueMicrotask(()=>{const Y=jo(te),Me=typeof O!="boolean";O&&!_.current&&oe(Y)&&(!(!Me&&Y!==M&&M!==P.body)||z)&&Y.focus({preventScroll:!0}),_.current=!1})}},[r,R,A,v,k,N,L,T,f,se]),j(()=>{if(!Mn||g||!R)return;const P=xe(q(R));!oe(P)||!Ln(P)||B(R,P)&&P.blur()},[g,R]),j(()=>{if(!(r||!S))return S.setFocusManagerState({modal:c,closeOnFocusOut:b,open:g,onOpenChange:m.setOpen,domReference:T}),()=>{S.setFocusManagerState(null)}},[r,S,c,g,m,b,T]),j(()=>{if(!(r||!A))return pn(A,C),()=>{queueMicrotask(Gt)}},[r,A,C]);const ze=!r&&(c?!x:!0)&&(ae||c);return ue.jsxs(u.Fragment,{children:[ze&&ue.jsx(it,{"data-type":"inside",ref:pe,onFocus:P=>{if(c){const $=le();Et($[$.length-1])}else S?.portalNode&&(_.current=!1,$e(P,S.portalNode)?Jn(T)?.focus():me(d??S.beforeOutsideRef)?.focus())}}),n,ze&&ue.jsx(it,{"data-type":"inside",ref:Ie,onFocus:P=>{c?Et(le()[0]):S?.portalNode&&(b&&(_.current=!0),$e(P,S.portalNode)?Zn(T)?.focus():me(a??S.afterOutsideRef)?.focus())}})]})}const $o={intentional:"onClick",sloppy:"onPointerDown"};function Go(){return!1}function Ko(e){return{escapeKey:typeof e=="boolean"?e:e?.escapeKey??!1,outsidePress:typeof e=="boolean"?e:e?.outsidePress??!0}}function Ri(e,t={}){const n="rootStore"in e?e.rootStore:e,r=n.useState("open"),o=n.useState("floatingElement"),{dataRef:s}=n.context,{enabled:i=!0,escapeKey:c=!0,outsidePress:b=!0,outsidePressEvent:l="sloppy",referencePress:a=Go,referencePressEvent:d="sloppy",bubbles:p,externalTree:E}=t,h=$t(E),m=U(typeof b=="function"?b:()=>!1),g=typeof b=="function"?m:b,T=g!==!1,R=U(()=>l),N=u.useRef(!1),k=u.useRef(!1),f=u.useRef(!1),{escapeKey:D,outsidePress:x}=Ko(p),C=u.useRef(null),F=st(),v=st(),V=U(()=>{v.clear(),s.current.insideReactTree=!1}),L=u.useRef(!1),S=u.useRef(""),_=U(a),J=U(W=>{if(!r||!i||!c||W.key!=="Escape"||L.current)return;const pe=s.current.floatingContext?.nodeId,Ie=h?Ve(h.nodesRef.current,pe):[];if(!D&&Ie.length>0){let Ee=!0;if(Ie.forEach(ae=>{ae.context?.open&&!ae.context.dataRef.current.__escapeKeyBubbles&&(Ee=!1)}),!Ee)return}const Ae=so(W)?W.nativeEvent:W,ye=Ne(Dr,Ae);n.setOpen(!1,ye),!D&&!ye.isPropagationAllowed&&W.stopPropagation()}),X=U(()=>{s.current.insideReactTree=!0,v.start(0,V)});u.useEffect(()=>{if(!r||!i)return;s.current.__escapeKeyBubbles=D,s.current.__outsidePressBubbles=x;const W=new ke,pe=new ke;function Ie(){W.clear(),L.current=!0}function Ae(){W.start(Pn()?5:0,()=>{L.current=!1})}function ye(){f.current=!0,pe.start(0,()=>{f.current=!1})}function Ee(){N.current=!1,k.current=!1}function ae(){const y=S.current,w=y==="pen"||!y?"mouse":y,ne=R(),re=typeof ne=="function"?ne():ne;return typeof re=="string"?re:re[w]}function A(y){const w=ae();return w==="intentional"&&y.type!=="click"||w==="sloppy"&&y.type==="click"}function le(y){const w=s.current.floatingContext?.nodeId,ne=h&&Ve(h.nodesRef.current,w).some(re=>fe(y,re.context?.elements.floating));return fe(y,n.select("floatingElement"))||fe(y,n.select("domReferenceElement"))||ne}function se(y){if(A(y)){V();return}if(s.current.insideReactTree){V();return}const w=Oe(y),ne=`[${ct("inert")}]`,re=Re(w)?w.getRootNode():null,G=Array.from((He(re)?re:q(n.select("floatingElement"))).querySelectorAll(ne)),De=n.context.triggerElements;if(w&&(De.hasElement(w)||De.hasMatchingElement(ie=>B(ie,w))))return;let Se=Re(w)?w:null;for(;Se&&!je(Se);){const ie=ot(Se);if(je(ie)||!Re(ie))break;Se=ie}if(G.length&&Re(w)&&!ho(w)&&!B(w,n.select("floatingElement"))&&G.every(ie=>!B(Se,ie)))return;if(oe(w)&&!("touches"in y)){const ie=je(w),Fe=Ue(w),Ut=/auto|scroll/,br=ie||Ut.test(Fe.overflowX),yr=ie||Ut.test(Fe.overflowY),Er=br&&w.clientWidth>0&&w.scrollWidth>w.clientWidth,Sr=yr&&w.clientHeight>0&&w.scrollHeight>w.clientHeight,Rr=Fe.direction==="rtl",wr=Sr&&(Rr?y.offsetX<=w.offsetWidth-w.clientWidth:y.offsetX>w.clientWidth),Tr=Er&&y.offsetY>w.clientHeight;if(wr||Tr)return}if(le(y))return;if(ae()==="intentional"&&f.current){pe.clear(),f.current=!1;return}if(typeof g=="function"&&!g(y))return;const mr=s.current.floatingContext?.nodeId,Kt=h?Ve(h.nodesRef.current,mr):[];if(Kt.length>0){let ie=!0;if(Kt.forEach(Fe=>{Fe.context?.open&&!Fe.context.dataRef.current.__outsidePressBubbles&&(ie=!1)}),!ie)return}n.setOpen(!1,Ne(On,y)),V()}function ze(y){ae()!=="sloppy"||y.pointerType==="touch"||!n.select("open")||!i||fe(y,n.select("floatingElement"))||fe(y,n.select("domReferenceElement"))||se(y)}function P(y){if(ae()!=="sloppy"||!n.select("open")||!i||fe(y,n.select("floatingElement"))||fe(y,n.select("domReferenceElement")))return;const w=y.touches[0];w&&(C.current={startTime:Date.now(),startX:w.clientX,startY:w.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},F.start(1e3,()=>{C.current&&(C.current.dismissOnTouchEnd=!1,C.current.dismissOnMouseDown=!1)}))}function $(y,w){const ne=Oe(y);if(!ne)return;const re=H(ne,y.type,()=>{w(y),re()})}function Z(y){S.current="touch",$(y,P)}function Q(y){F.clear(),y.type==="pointerdown"&&(S.current=y.pointerType),!(y.type==="mousedown"&&C.current&&!C.current.dismissOnMouseDown)&&$(y,w=>{w.type==="pointerdown"?ze(w):se(w)})}function M(y){if(!N.current)return;const w=k.current;if(Ee(),ae()==="intentional"){if(y.type==="pointercancel"){w&&ye();return}if(!le(y)){if(w){ye();return}typeof g=="function"&&!g(y)||(pe.clear(),f.current=!0,V())}}}function I(y){if(ae()!=="sloppy"||!C.current||fe(y,n.select("floatingElement"))||fe(y,n.select("domReferenceElement")))return;const w=y.touches[0];if(!w)return;const ne=Math.abs(w.clientX-C.current.startX),re=Math.abs(w.clientY-C.current.startY),G=Math.sqrt(ne*ne+re*re);G>5&&(C.current.dismissOnTouchEnd=!0),G>10&&(se(y),F.clear(),C.current=null)}function z(y){$(y,I)}function O(y){ae()!=="sloppy"||!C.current||fe(y,n.select("floatingElement"))||fe(y,n.select("domReferenceElement"))||(C.current.dismissOnTouchEnd&&se(y),F.clear(),C.current=null)}function te(y){$(y,O)}const Y=q(o),Me=We(c&&We(H(Y,"keydown",J),H(Y,"compositionstart",Ie),H(Y,"compositionend",Ae)),T&&We(H(Y,"click",Q,!0),H(Y,"pointerdown",Q,!0),H(Y,"pointerup",M,!0),H(Y,"pointercancel",M,!0),H(Y,"mousedown",Q,!0),H(Y,"mouseup",M,!0),H(Y,"touchstart",Z,!0),H(Y,"touchmove",z,!0),H(Y,"touchend",te,!0)));return()=>{Me(),W.clear(),pe.clear(),Ee(),f.current=!1}},[s,o,c,T,g,r,i,D,x,J,V,R,h,n,F]),u.useEffect(V,[g,V]);const ee=u.useMemo(()=>({onKeyDown:J,[$o[d]]:W=>{_()&&n.setOpen(!1,Ne(Jt,W.nativeEvent))},...d!=="intentional"&&{onClick(W){_()&&n.setOpen(!1,Ne(Jt,W.nativeEvent))}}}),[J,n,d,_]),be=U(W=>{if(!r||!i||W.button!==0)return;const pe=Oe(W.nativeEvent);B(n.select("floatingElement"),pe)&&(N.current||(N.current=!0,k.current=!1))}),Te=U(W=>{!r||!i||(W.defaultPrevented||W.nativeEvent.defaultPrevented)&&N.current&&(k.current=!0)}),ve=u.useMemo(()=>({onKeyDown:J,onPointerDown:Te,onMouseDown:Te,onClickCapture:X,onMouseDownCapture(W){X(),be(W)},onPointerDownCapture(W){X(),be(W)},onMouseUpCapture:X,onTouchEndCapture:X,onTouchMoveCapture:X}),[J,X,be,Te]);return u.useMemo(()=>i?{reference:ee,floating:ve,trigger:ee}:{},[i,ee,ve])}const K=(e,t,n,r,o,s,...i)=>{if(i.length>0)throw new Error(Cn(1));let c;if(e)c=e;else throw new Error("Missing arguments");return c};var Ct={exports:{}},xt={};var gn;function Uo(){if(gn)return xt;gn=1;var e=Tn();function t(d,p){return d===p&&(d!==0||1/d===1/p)||d!==d&&p!==p}var n=typeof Object.is=="function"?Object.is:t,r=e.useState,o=e.useEffect,s=e.useLayoutEffect,i=e.useDebugValue;function c(d,p){var E=p(),h=r({inst:{value:E,getSnapshot:p}}),m=h[0].inst,g=h[1];return s(function(){m.value=E,m.getSnapshot=p,b(m)&&g({inst:m})},[d,E,p]),o(function(){return b(m)&&g({inst:m}),d(function(){b(m)&&g({inst:m})})},[d]),i(E),E}function b(d){var p=d.getSnapshot;d=d.value;try{var E=p();return!n(d,E)}catch{return!0}}function l(d,p){return p()}var a=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?l:c;return xt.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:a,xt}var hn;function ir(){return hn||(hn=1,Ct.exports=Uo()),Ct.exports}var cr=ir(),Ot={exports:{}},kt={};var mn;function qo(){if(mn)return kt;mn=1;var e=Tn(),t=ir();function n(l,a){return l===a&&(l!==0||1/l===1/a)||l!==l&&a!==a}var r=typeof Object.is=="function"?Object.is:n,o=t.useSyncExternalStore,s=e.useRef,i=e.useEffect,c=e.useMemo,b=e.useDebugValue;return kt.useSyncExternalStoreWithSelector=function(l,a,d,p,E){var h=s(null);if(h.current===null){var m={hasValue:!1,value:null};h.current=m}else m=h.current;h=c(function(){function T(D){if(!R){if(R=!0,N=D,D=p(D),E!==void 0&&m.hasValue){var x=m.value;if(E(x,D))return k=x}return k=D}if(x=k,r(N,D))return x;var C=p(D);return E!==void 0&&E(x,C)?(N=D,x):(N=D,k=C)}var R=!1,N,k,f=d===void 0?null:d;return[function(){return T(a())},f===null?void 0:function(){return T(f())}]},[a,d,p,E]);var g=o(l,h[0],h[1]);return i(function(){m.hasValue=!0,m.value=g},[g]),b(g),g},kt}var bn;function Xo(){return bn||(bn=1,Ot.exports=qo()),Ot.exports}var zo=Xo();const _t=[];let Wt;function Jo(){return Wt}function Zo(e){_t.push(e)}function Qo(e){const t=(n,r)=>{const o=Pe(es).current;let s;try{Wt=o;for(const i of _t)i.before(o);s=e(n,r);for(const i of _t)i.after(o);o.didInitialize=!0}finally{Wt=void 0}return s};return t.displayName=e.displayName||e.name,t}function wi(e){return u.forwardRef(Qo(e))}function es(){return{didInitialize:!1}}const ts=xn(19),ns=ts?os:ss;function ar(e,t,n,r,o){return ns(e,t,n,r,o)}function rs(e,t,n,r,o){const s=u.useCallback(()=>t(e.getSnapshot(),n,r,o),[e,t,n,r,o]);return cr.useSyncExternalStore(e.subscribe,s,s)}Zo({before(e){e.syncIndex=0,e.didInitialize||(e.syncTick=1,e.syncHooks=[],e.didChangeStore=!0,e.getSnapshot=()=>{let t=!1;for(let n=0;n<e.syncHooks.length;n+=1){const r=e.syncHooks[n],o=r.selector(r.store.state,r.a1,r.a2,r.a3);(r.didChange||!Object.is(r.value,o))&&(t=!0,r.value=o,r.didChange=!1)}return t&&(e.syncTick+=1),e.syncTick})},after(e){e.syncHooks.length>0&&(e.didChangeStore&&(e.didChangeStore=!1,e.subscribe=t=>{const n=new Set;for(const o of e.syncHooks)n.add(o.store);const r=[];for(const o of n)r.push(o.subscribe(t));return()=>{for(const o of r)o()}}),cr.useSyncExternalStore(e.subscribe,e.getSnapshot,e.getSnapshot))}});function os(e,t,n,r,o){const s=Jo();if(!s)return rs(e,t,n,r,o);const i=s.syncIndex;s.syncIndex+=1;let c;return s.didInitialize?(c=s.syncHooks[i],(c.store!==e||c.selector!==t||!Object.is(c.a1,n)||!Object.is(c.a2,r)||!Object.is(c.a3,o))&&(c.store!==e&&(s.didChangeStore=!0),c.store=e,c.selector=t,c.a1=n,c.a2=r,c.a3=o,c.didChange=!0)):(c={store:e,selector:t,a1:n,a2:r,a3:o,value:t(e.getSnapshot(),n,r,o),didChange:!1},s.syncHooks.push(c)),c.value}function ss(e,t,n,r,o){return zo.useSyncExternalStoreWithSelector(e.subscribe,e.getSnapshot,e.getSnapshot,s=>t(s,n,r,o))}class is{constructor(t){this.state=t,this.listeners=new Set,this.updateTick=0}subscribe=t=>(this.listeners.add(t),()=>{this.listeners.delete(t)});getSnapshot=()=>this.state;setState(t){if(this.state===t)return;this.state=t,this.updateTick+=1;const n=this.updateTick;for(const r of this.listeners){if(n!==this.updateTick)return;r(t)}}update(t){for(const n in t)if(!Object.is(this.state[n],t[n])){this.setState({...this.state,...t});return}}set(t,n){Object.is(this.state[t],n)||this.setState({...this.state,[t]:n})}notifyAll(){const t={...this.state};this.setState(t)}use(t,n,r,o){return ar(this,t,n,r,o)}}class cs extends is{constructor(t,n={},r){super(t),this.context=n,this.selectors=r}useSyncedValue(t,n){u.useDebugValue(t),j(()=>{this.state[t]!==n&&this.set(t,n)},[t,n])}useSyncedValueWithCleanup(t,n){const r=this;j(()=>(r.state[t]!==n&&r.set(t,n),()=>{r.set(t,void 0)}),[r,t,n])}useSyncedValues(t){const n=this,r=Object.values(t);j(()=>{n.update(t)},[n,...r])}useControlledProp(t,n){u.useDebugValue(t);const r=n!==void 0;j(()=>{r&&!Object.is(this.state[t],n)&&super.setState({...this.state,[t]:n})},[t,n,r])}select(t,n,r,o){const s=this.selectors[t];return s(this.state,n,r,o)}useState(t,n,r,o){return u.useDebugValue(t),ar(this,this.selectors[t],n,r,o)}useContextCallback(t,n){u.useDebugValue(t);const r=U(n??Vt);this.context[t]=r}useStateSetter(t){const n=u.useRef(void 0);return n.current===void 0&&(n.current=r=>{this.set(t,r)}),n.current}observe(t,n){let r;typeof t=="function"?r=t:r=this.selectors[t];let o=r(this.state);return n(o,o,this),this.subscribe(s=>{const i=r(s);if(!Object.is(o,i)){const c=o;o=i,n(i,c,this)}})}}const as={open:K(e=>e.open),transitionStatus:K(e=>e.transitionStatus),domReferenceElement:K(e=>e.domReferenceElement),referenceElement:K(e=>e.positionReference??e.referenceElement),floatingElement:K(e=>e.floatingElement),floatingId:K(e=>e.floatingId)};class ur extends cs{constructor(t){const{syncOnly:n,nested:r,onOpenChange:o,triggerElements:s,...i}=t;super({...i,positionReference:i.referenceElement,domReferenceElement:i.referenceElement},{onOpenChange:o,dataRef:{current:{}},events:rr(),nested:r,triggerElements:s},as),this.syncOnly=n}syncOpenEvent=(t,n)=>{(!t||!this.state.open||n!=null&&ao(n))&&(this.context.dataRef.current.openEvent=t?n:void 0)};dispatchOpenChange=(t,n)=>{this.syncOpenEvent(t,n.event);const r={open:t,reason:n.reason,nativeEvent:n.event,nested:this.context.nested,triggerElement:n.trigger};this.context.events.emit("openchange",r)};setOpen=(t,n)=>{if(this.syncOnly){this.context.onOpenChange?.(t,n);return}this.dispatchOpenChange(t,n),this.context.onOpenChange?.(t,n)}}function us(e,t){const n=u.useRef(null),r=u.useRef(null);return u.useCallback(o=>{if(e!==void 0){if(n.current!==null){const s=n.current,i=r.current,c=t.context.triggerElements.getById(s);i&&c===i&&t.context.triggerElements.delete(s),n.current=null,r.current=null}o!==null&&(n.current=e,r.current=o,t.context.triggerElements.add(e,o))}},[t,e])}function Ti(e,t,n,r){const o=n.useState("isMountedByTrigger",e),s=us(e,n),i=U(c=>{if(s(c),!c||!n.select("open"))return;const b=n.select("activeTriggerId");if(b===e){n.update({activeTriggerElement:c,...r});return}b==null&&n.update({activeTriggerId:e,activeTriggerElement:c,...r})});return j(()=>{o&&n.update({activeTriggerElement:t.current,...r})},[o,n,t,...Object.values(r)]),{registerTrigger:i,isMountedByThisTrigger:o}}function Ci(e){const t=e.useState("open");j(()=>{if(t&&!e.select("activeTriggerId")&&e.context.triggerElements.size===1){const n=e.context.triggerElements.entries().next();if(!n.done){const[r,o]=n.value;e.update({activeTriggerId:r,activeTriggerElement:o})}}},[t,e])}function xi(e,t,n){const{mounted:r,setMounted:o,transitionStatus:s}=no(e);t.useSyncedValues({mounted:r,transitionStatus:s});const i=U(()=>{o(!1),t.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1}),n?.(),t.context.onOpenChangeComplete?.(!1)}),c=t.useState("preventUnmountingOnClose");return oo({enabled:!c,open:e,ref:t.context.popupRef,onComplete(){e||i()}}),{forceUnmount:i,transitionStatus:s}}class ls{constructor(){this.elementsSet=new Set,this.idMap=new Map}add(t,n){const r=this.idMap.get(t);r!==n&&(r!==void 0&&this.elementsSet.delete(r),this.elementsSet.add(n),this.idMap.set(t,n))}delete(t){const n=this.idMap.get(t);n&&(this.elementsSet.delete(n),this.idMap.delete(t))}hasElement(t){return this.elementsSet.has(t)}hasMatchingElement(t){for(const n of this.elementsSet)if(t(n))return!0;return!1}getById(t){return this.idMap.get(t)}entries(){return this.idMap.entries()}elements(){return this.elementsSet.values()}get size(){return this.idMap.size}}function fs(){return new ur({open:!1,transitionStatus:void 0,floatingElement:null,referenceElement:null,triggerElements:new ls,floatingId:"",syncOnly:!1,nested:!1,onOpenChange:void 0})}function Oi(){return{open:!1,openProp:void 0,mounted:!1,transitionStatus:void 0,floatingRootContext:fs(),preventUnmountingOnClose:!1,payload:void 0,activeTriggerId:null,activeTriggerElement:null,triggerIdProp:void 0,popupElement:null,positionerElement:null,activeTriggerProps:_e,inactiveTriggerProps:_e,popupProps:_e}}const tt=K(e=>e.triggerIdProp??e.activeTriggerId),ki={open:K(e=>e.openProp??e.open),mounted:K(e=>e.mounted),transitionStatus:K(e=>e.transitionStatus),floatingRootContext:K(e=>e.floatingRootContext),preventUnmountingOnClose:K(e=>e.preventUnmountingOnClose),payload:K(e=>e.payload),activeTriggerId:tt,activeTriggerElement:K(e=>e.mounted?e.activeTriggerElement:null),isTriggerActive:K((e,t)=>t!==void 0&&tt(e)===t),isOpenedByTrigger:K((e,t)=>t!==void 0&&tt(e)===t&&e.open),isMountedByTrigger:K((e,t)=>t!==void 0&&tt(e)===t&&e.mounted),triggerProps:K((e,t)=>t?e.activeTriggerProps:e.inactiveTriggerProps),popupProps:K(e=>e.popupProps),popupElement:K(e=>e.popupElement),positionerElement:K(e=>e.positionerElement)};function Pi(e){const{popupStore:t,treatPopupAsFloatingElement:n=!1,onOpenChange:r}=e,o=qe(),s=ut()!=null,i=t.useState("open"),c=t.useState("activeTriggerElement"),b=t.useState(n?"popupElement":"positionerElement"),l=t.context.triggerElements,a=Pe(()=>new ur({open:i,transitionStatus:void 0,referenceElement:c,floatingElement:b,triggerElements:l,onOpenChange:r,floatingId:o,syncOnly:!0,nested:s})).current;return j(()=>{const d={open:i,floatingId:o,referenceElement:c,floatingElement:b};Re(c)&&(d.domReferenceElement=c),a.state.positionReference===a.state.referenceElement&&(d.positionReference=c),a.update(d)},[i,o,c,b,a]),a.context.onOpenChange=r,a.context.nested=s,a}function vi(e=[]){const t=e.map(l=>l?.reference),n=e.map(l=>l?.floating),r=e.map(l=>l?.item),o=e.map(l=>l?.trigger),s=u.useCallback(l=>nt(l,e,"reference"),t),i=u.useCallback(l=>nt(l,e,"floating"),n),c=u.useCallback(l=>nt(l,e,"item"),r),b=u.useCallback(l=>nt(l,e,"trigger"),o);return u.useMemo(()=>({getReferenceProps:s,getFloatingProps:i,getItemProps:c,getTriggerProps:b}),[s,i,c,b])}function nt(e,t,n){const r=new Map,o=n==="item",s={};n==="floating"&&(s.tabIndex=-1,s[vt]="");for(const i in e)o&&e&&(i===Wn||i===Vn)||(s[i]=e[i]);for(let i=0;i<t.length;i+=1){let c;const b=t[i]?.[n];typeof b=="function"?c=e?b(e):null:c=b,c&&yn(s,c,o,r)}return yn(s,e,o,r),s}function yn(e,t,n,r){for(const o in t){const s=t[o];n&&(o===Wn||o===Vn)||(o.startsWith("on")?(r.has(o)||r.set(o,[]),typeof s=="function"&&(r.get(o)?.push(s),e[o]=(...i)=>r.get(o)?.map(c=>c(...i)).find(c=>c!==void 0))):e[o]=s)}}const ds=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function Ii(e,t={}){const n="rootStore"in e?e.rootStore:e,r=n.useState("open"),o=n.useState("floatingId"),s=n.useState("domReferenceElement"),i=n.useState("floatingElement"),{role:c="dialog"}=t,b=qe(),l=s?.id||b,a=u.useMemo(()=>It(i)?.id||o,[i,o]),d=ds.get(c)??c,E=ut()!=null,h=u.useMemo(()=>d==="tooltip"||c==="label"?_e:{"aria-haspopup":d==="alertdialog"?"dialog":d,"aria-expanded":"false",...d==="listbox"&&{role:"combobox"},...d==="menu"&&E&&{role:"menuitem"},...c==="select"&&{"aria-autocomplete":"none"},...c==="combobox"&&{"aria-autocomplete":"list"}},[d,E,c]),m=u.useMemo(()=>d==="tooltip"||c==="label"?{[`aria-${c==="label"?"labelledby":"describedby"}`]:r?a:void 0}:{...h,"aria-expanded":r?"true":"false","aria-controls":r?a:void 0,...d==="menu"&&{id:l}},[d,a,r,l,c,h]),g=u.useMemo(()=>{const R={id:a,...d&&{role:d}};return d==="tooltip"||c==="label"?R:{...R,...d==="menu"&&{"aria-labelledby":l}}},[d,a,l,c]),T=u.useCallback(({active:R,selected:N})=>{const k={role:"option",...R&&{id:`${a}-fui-option`}};switch(c){case"select":case"combobox":return{...k,"aria-selected":N}}return{}},[a,c]);return u.useMemo(()=>({reference:m,floating:g,item:T,trigger:h}),[m,g,h,T])}const lr="ArrowUp",fr="ArrowDown",dr="ArrowLeft",pr="ArrowRight",gr="Home",hr="End",ps=new Set([dr,pr]),gs=new Set([lr,fr]),hs=new Set([...ps,...gs]);[...hs];const Ai=new Set([lr,fr,dr,pr,gr,hr]);function Mi(e){return xn(19)?e:e?"true":void 0}const Di=u.forwardRef(function(t,n){const{cutout:r,...o}=t;let s;if(r){const i=r.getBoundingClientRect();s=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${i.left}px ${i.top}px,${i.left}px ${i.bottom}px,${i.right}px ${i.bottom}px,${i.right}px ${i.top}px,${i.left}px ${i.top}px)`}return ue.jsx("div",{ref:n,role:"presentation","data-base-ui-inert":"",...o,style:{position:"fixed",inset:0,userSelect:"none",WebkitUserSelect:"none",clipPath:s}})});let En={},Sn={},Rn="";function ms(e){if(typeof document>"u")return!1;const t=q(e);return he(t).innerWidth-t.documentElement.clientWidth>0}function bs(e){if(!(typeof CSS<"u"&&CSS.supports&&CSS.supports("scrollbar-gutter","stable"))||typeof document>"u")return!1;const n=q(e),r=n.documentElement,o=n.body,s=Ke(r)?r:o,i=s.style.overflowY,c=r.style.scrollbarGutter;r.style.scrollbarGutter="stable",s.style.overflowY="scroll";const b=s.offsetWidth;s.style.overflowY="hidden";const l=s.offsetWidth;return s.style.overflowY=i,r.style.scrollbarGutter=c,b===l}function ys(e){const t=q(e),n=t.documentElement,r=t.body,o=Ke(n)?n:r,s={overflowY:o.style.overflowY,overflowX:o.style.overflowX};return Object.assign(o.style,{overflowY:"hidden",overflowX:"hidden"}),()=>{Object.assign(o.style,s)}}function Es(e){const t=q(e),n=t.documentElement,r=t.body,o=he(n);let s=0,i=0,c=!1;const b=ge.create();if(Mn&&(o.visualViewport?.scale??1)!==1)return()=>{};function l(){const E=o.getComputedStyle(n),h=o.getComputedStyle(r),T=(E.scrollbarGutter||"").includes("both-edges")?"stable both-edges":"stable";s=n.scrollTop,i=n.scrollLeft,En={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},Rn=n.style.scrollBehavior,Sn={position:r.style.position,height:r.style.height,width:r.style.width,boxSizing:r.style.boxSizing,overflowY:r.style.overflowY,overflowX:r.style.overflowX,scrollBehavior:r.style.scrollBehavior};const R=n.scrollHeight>n.clientHeight,N=n.scrollWidth>n.clientWidth,k=E.overflowY==="scroll"||h.overflowY==="scroll",f=E.overflowX==="scroll"||h.overflowX==="scroll",D=Math.max(0,o.innerWidth-r.clientWidth),x=Math.max(0,o.innerHeight-r.clientHeight),C=parseFloat(h.marginTop)+parseFloat(h.marginBottom),F=parseFloat(h.marginLeft)+parseFloat(h.marginRight),v=Ke(n)?n:r;if(c=bs(e),c){n.style.scrollbarGutter=T,v.style.overflowY="hidden",v.style.overflowX="hidden";return}Object.assign(n.style,{scrollbarGutter:T,overflowY:"hidden",overflowX:"hidden"}),(R||k)&&(n.style.overflowY="scroll"),(N||f)&&(n.style.overflowX="scroll"),Object.assign(r.style,{position:"relative",height:C||x?`calc(100dvh - ${C+x}px)`:"100dvh",width:F||D?`calc(100vw - ${F+D}px)`:"100vw",boxSizing:"border-box",overflow:"hidden",scrollBehavior:"unset"}),r.scrollTop=s,r.scrollLeft=i,n.setAttribute("data-base-ui-scroll-locked",""),n.style.scrollBehavior="unset"}function a(){Object.assign(n.style,En),Object.assign(r.style,Sn),c||(n.scrollTop=s,n.scrollLeft=i,n.removeAttribute("data-base-ui-scroll-locked"),n.style.scrollBehavior=Rn)}function d(){a(),b.request(l)}l();const p=H(o,"resize",d);return()=>{b.cancel(),a(),typeof o.removeEventListener=="function"&&p()}}class Ss{lockCount=0;restore=null;timeoutLock=ke.create();timeoutUnlock=ke.create();acquire(t){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(t)),this.release}release=()=>{this.lockCount-=1,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(t){if(this.lockCount===0||this.restore!==null)return;const r=q(t).documentElement,o=he(r).getComputedStyle(r).overflowY;if(o==="hidden"||o==="clip"){this.restore=Vt;return}const s=Dn||!ms(t);this.restore=s?ys(t):Es(t)}}const Rs=new Ss;function Fi(e=!0,t=null){j(()=>{if(e)return Rs.acquire(t)},[e,t])}function Ni(e){const t=u.useRef(!0);t.current&&(t.current=!1,e())}function ws(e){const t=u.useRef(""),n=u.useCallback(o=>{o.defaultPrevented||(t.current=o.pointerType,e(o,o.pointerType))},[e]);return{onClick:u.useCallback(o=>{if(o.detail===0){e(o,"keyboard");return}"pointerType"in o?e(o,o.pointerType):e(o,t.current),t.current=""},[e]),onPointerDown:n}}function Ts(e,t){const n=u.useRef(e),r=U(t);j(()=>{n.current!==e&&r(n.current)},[e,r]),j(()=>{n.current=e},[e])}function _i(e){const[t,n]=u.useState(null),r=U((i,c)=>{e||n(c||(Dn?"touch":""))});Ts(e,i=>{i&&!e&&n(null)});const{onClick:o,onPointerDown:s}=ws(r);return u.useMemo(()=>({openMethod:t,triggerProps:{onClick:o,onPointerDown:s}}),[t,o,s])}export{ls as $,Us as A,So as B,zs as C,Eo as D,Zt as E,Re as F,Wr as G,Xs as H,he as I,Yr as J,Ue as K,bt as L,oe as M,qs as N,Pn as O,Vr as P,ot as Q,je as R,Ws as S,Br as T,Vs as U,ce as V,Ke as W,Hs as X,qe as Y,ut as Z,ur as _,As as a,Ni as a$,$t as a0,We as a1,Xr as a2,H as a3,ct as a4,xe as a5,q as a6,B as a7,$s as a8,Is as a9,kn as aA,io as aB,co as aC,po as aD,Yt as aE,pi as aF,oo as aG,On as aH,Si as aI,vs as aJ,ks as aK,Ai as aL,mi as aM,Fi as aN,gi as aO,ro as aP,hi as aQ,Di as aR,Mi as aS,yi as aT,Ns as aU,cs as aV,ki as aW,Lo as aX,Oi as aY,K as aZ,Qo as a_,Ks as aa,Dr as ab,Nn as ac,ke as ad,U as ae,Gs as af,Mr as ag,Ve as ah,gt as ai,It as aj,tn as ak,Et as al,on as am,ri as an,oi as ao,rt as ap,Ds as aq,ii as ar,Dt as as,si as at,ci as au,go as av,ht as aw,mt as ax,ai as ay,de as az,j as b,bi as b0,_i as b1,Ci as b2,xi as b3,_s as b4,Pi as b5,Ri as b6,Ii as b7,fi as b8,vi as b9,Ei as ba,Kr as bb,li as bc,$e as bd,ui as be,Jn as bf,wi as bg,Ti as bh,Fs as bi,Ps as bj,it as bk,di as bl,Ms as bm,Lt as bn,Ys as c,js as d,_n as e,st as f,ao as g,Ne as h,Bs as i,Oe as j,Ln as k,Js as l,Bn as m,Ro as n,Mt as o,Qs as p,ei as q,Zs as r,Yn as s,Jt as t,Ls as u,mo as v,bo as w,wo as x,ti as y,ni as z};
@@ -1 +1 @@
1
- import{A as f,B as N,t as P,p as a}from"./chunk-UVKPFVEO-YfSfkVr_.js";import{C as u,a as T,b,c as w}from"./button-Ba8FWhqs.js";import{B as C}from"./badge-DBD4CzAv.js";import{T as S,a as E,b as l,c as o,d as W,e as r}from"./table-Au2E5mnP.js";import{P as B}from"./pagination-BItl293Q.js";import{F as R}from"./filter-select-Tk_CBvrn.js";import{E as k}from"./error-card-D-uZRy_l.js";import{o as A,p as _,q as D,W as F,b as I}from"./db-link-CU7IJqbq.js";const M=N(function(){return a.jsx(k,{title:"Failed to load warnings",backTo:{href:"/",label:"Back to Dashboard"}})}),V=f(function({loaderData:p}){const{warnings:d,totalCount:x,page:i,totalPages:m,typeFilter:c}=p,[h,g]=P(),j=(e,s)=>{const n=new URLSearchParams(h);s?n.set(e,s):n.delete(e),n.delete("page"),g(n)},y=e=>{const s=new URLSearchParams(h);s.set("page",e.toString()),g(s)};return a.jsxs("div",{className:"space-y-6",children:[a.jsxs("div",{children:[a.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-gray-100",children:"Warnings"}),a.jsxs("p",{className:"mt-1 text-sm text-gray-500 dark:text-gray-400",children:[x.toLocaleString()," warning",x!==1?"s":""," recorded"]})]}),a.jsxs(u,{children:[a.jsxs(T,{className:"flex flex-row items-center justify-between",children:[a.jsx(b,{children:"Warning History"}),a.jsx(R,{value:c,options:A,onChange:e=>j("type",e)})]}),a.jsx(w,{className:"p-0",children:a.jsxs(S,{children:[a.jsx(E,{children:a.jsxs(l,{children:[a.jsx(o,{children:"Type"}),a.jsx(o,{children:"Message"}),a.jsx(o,{children:"Details"}),a.jsx(o,{children:"Time"})]})}),a.jsx(W,{children:d.length===0?a.jsx(l,{children:a.jsx(r,{className:"text-center text-gray-500 dark:text-gray-400 py-8",colSpan:4,children:c?`No ${c.replace("_"," ")} warnings found`:"No warnings recorded. Enable persistWarnings in pg-boss config to capture warnings."})}):d.map(e=>a.jsxs(l,{children:[a.jsx(r,{children:a.jsx(L,{type:e.type})}),a.jsx(r,{className:"text-gray-900 dark:text-gray-100 max-w-md truncate",children:e.message}),a.jsx(r,{className:"font-mono text-xs text-gray-500 dark:text-gray-400 max-w-xs truncate",children:_(e.data)}),a.jsx(r,{className:"text-gray-500 dark:text-gray-400 whitespace-nowrap",children:D(new Date(e.createdOn))})]},e.id))})]})}),a.jsx(B,{page:i,totalPages:m,hasNextPage:i<m,hasPrevPage:i>1,onPageChange:y})]})]})});function L({type:t}){return a.jsx(C,{variant:I[t],size:"sm",children:F[t]})}export{M as ErrorBoundary,V as default};
1
+ import{A as f,B as N,t as P,p as a}from"./chunk-EVOBXE3Y-CmKRT32p.js";import{C as u,a as T,b,c as w}from"./button-CudTDtZF.js";import{B as C}from"./badge-to3cY6Nn.js";import{T as S,a as E,b as l,c as o,d as W,e as r}from"./table-CV0K56fY.js";import{P as B}from"./pagination-DCEs769S.js";import{F as R}from"./filter-select-07am_j5T.js";import{E as k}from"./error-card--OB_TuOC.js";import{o as A,p as _,q as D,W as F,b as I}from"./db-link-BzIwSws3.js";const M=N(function(){return a.jsx(k,{title:"Failed to load warnings",backTo:{href:"/",label:"Back to Dashboard"}})}),V=f(function({loaderData:p}){const{warnings:d,totalCount:x,page:i,totalPages:m,typeFilter:c}=p,[h,g]=P(),j=(e,s)=>{const n=new URLSearchParams(h);s?n.set(e,s):n.delete(e),n.delete("page"),g(n)},y=e=>{const s=new URLSearchParams(h);s.set("page",e.toString()),g(s)};return a.jsxs("div",{className:"space-y-6",children:[a.jsxs("div",{children:[a.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-gray-100",children:"Warnings"}),a.jsxs("p",{className:"mt-1 text-sm text-gray-500 dark:text-gray-400",children:[x.toLocaleString()," warning",x!==1?"s":""," recorded"]})]}),a.jsxs(u,{children:[a.jsxs(T,{className:"flex flex-row items-center justify-between",children:[a.jsx(b,{children:"Warning History"}),a.jsx(R,{value:c,options:A,onChange:e=>j("type",e)})]}),a.jsx(w,{className:"p-0",children:a.jsxs(S,{children:[a.jsx(E,{children:a.jsxs(l,{children:[a.jsx(o,{children:"Type"}),a.jsx(o,{children:"Message"}),a.jsx(o,{children:"Details"}),a.jsx(o,{children:"Time"})]})}),a.jsx(W,{children:d.length===0?a.jsx(l,{children:a.jsx(r,{className:"text-center text-gray-500 dark:text-gray-400 py-8",colSpan:4,children:c?`No ${c.replace("_"," ")} warnings found`:"No warnings recorded. Enable persistWarnings in pg-boss config to capture warnings."})}):d.map(e=>a.jsxs(l,{children:[a.jsx(r,{children:a.jsx(L,{type:e.type})}),a.jsx(r,{className:"text-gray-900 dark:text-gray-100 max-w-md truncate",children:e.message}),a.jsx(r,{className:"font-mono text-xs text-gray-500 dark:text-gray-400 max-w-xs truncate",children:_(e.data)}),a.jsx(r,{className:"text-gray-500 dark:text-gray-400 whitespace-nowrap",children:D(new Date(e.createdOn))})]},e.id))})]})}),a.jsx(B,{page:i,totalPages:m,hasNextPage:i<m,hasPrevPage:i>1,onPageChange:y})]})]})});function L({type:t}){return a.jsx(C,{variant:I[t],size:"sm",children:F[t]})}export{M as ErrorBoundary,V as default};
@@ -1906,7 +1906,7 @@ function deleteJobsById(schema, table) {
1906
1906
  WITH results as (
1907
1907
  DELETE FROM ${schema}.${table}
1908
1908
  WHERE name = $1
1909
- AND id IN (SELECT UNNEST($2::uuid[]))
1909
+ AND id IN (SELECT UNNEST($2::uuid[]))
1910
1910
  RETURNING 1
1911
1911
  )
1912
1912
  SELECT COUNT(*) from results
@@ -2057,34 +2057,38 @@ function fetchNextJob(options) {
2057
2057
  const hasMaxPriority = maxPriority != null;
2058
2058
  const hasTiers = hasGroupConcurrency && typeof groupConcurrency === "object" && groupConcurrency.tiers && Object.keys(groupConcurrency.tiers).length > 0;
2059
2059
  const params = buildFetchParams(options);
2060
- const whereConditions = [
2061
- `name = '${name}'`,
2062
- `state < '${JOB_STATES.active}'`,
2063
- !ignoreStartAfter ? "start_after < now()" : "",
2064
- hasIgnoreSingletons ? `singleton_key <> ALL(${params.ignoreSingletonsParam})` : "",
2065
- hasIgnoreGroups ? `(group_id IS NULL OR group_id <> ALL(${params.ignoreGroupsParam}))` : "",
2066
- hasMinPriority ? `priority >= ${params.minPriorityParam}` : "",
2067
- hasMaxPriority ? `priority <= ${params.maxPriorityParam}` : ""
2068
- ].filter(Boolean).join(" AND ");
2069
2060
  const selectCols = [
2070
- "id",
2071
- singletonFetch ? "singleton_key" : "",
2072
- hasGroupConcurrency ? "group_id, group_tier" : ""
2061
+ "j.id",
2062
+ singletonFetch ? "j.singleton_key" : "",
2063
+ hasGroupConcurrency ? "j.group_id, j.group_tier" : ""
2073
2064
  ].filter(Boolean).join(", ");
2074
- const activeGroupCountsCte = hasGroupConcurrency ? `active_group_counts AS (
2065
+ const activeGroupCountsCte = hasGroupConcurrency ? `active_group_counts AS MATERIALIZED (
2075
2066
  SELECT group_id, COUNT(*)::int as active_cnt
2076
2067
  FROM ${schema}.${table}
2077
2068
  WHERE name = '${name}' AND state = '${JOB_STATES.active}' AND group_id IS NOT NULL
2078
2069
  GROUP BY group_id
2079
2070
  ), ` : "";
2071
+ const whereConditions = [
2072
+ `j.name = '${name}'`,
2073
+ `j.state < '${JOB_STATES.active}'`,
2074
+ !ignoreStartAfter ? "j.start_after < now()" : "",
2075
+ hasIgnoreSingletons ? `j.singleton_key <> ALL(${params.ignoreSingletonsParam})` : "",
2076
+ hasIgnoreGroups ? `(j.group_id IS NULL OR j.group_id <> ALL(${params.ignoreGroupsParam}))` : "",
2077
+ hasMinPriority ? `j.priority >= ${params.minPriorityParam}` : "",
2078
+ hasMaxPriority ? `j.priority <= ${params.maxPriorityParam}` : "",
2079
+ hasGroupConcurrency ? `(j.group_id IS NULL
2080
+ OR agc.active_cnt IS NULL
2081
+ OR agc.active_cnt < ${hasTiers ? `COALESCE((${params.tiersParam} ->> j.group_tier)::int, ${params.defaultGroupLimitParam})` : params.defaultGroupLimitParam})` : ""
2082
+ ].filter(Boolean).join("\n AND ");
2080
2083
  const nextCte = `
2081
2084
  next AS (
2082
2085
  SELECT ${selectCols}
2083
- FROM ${schema}.${table}
2086
+ FROM ${schema}.${table} j
2087
+ ${hasGroupConcurrency ? "LEFT JOIN active_group_counts agc ON j.group_id = agc.group_id" : ""}
2084
2088
  WHERE ${whereConditions}
2085
- ORDER BY ${priority ? "priority desc, " : ""}${orderByCreatedOn ? "created_on, " : ""}id
2089
+ ORDER BY ${priority ? "j.priority desc, " : ""}${orderByCreatedOn ? "j.created_on, " : ""}j.id
2086
2090
  LIMIT ${limit}
2087
- FOR UPDATE SKIP LOCKED
2091
+ FOR UPDATE OF j SKIP LOCKED
2088
2092
  )`;
2089
2093
  const singletonCte = singletonFetch ? `, singleton_ranking AS (
2090
2094
  SELECT id, ${hasGroupConcurrency ? "group_id, group_tier, " : ""}
@@ -4252,7 +4256,7 @@ class Manager extends EventEmitter {
4252
4256
  this.db = db;
4253
4257
  this.wipTs = Date.now();
4254
4258
  this.workers = /* @__PURE__ */ new Map();
4255
- this.queues = null;
4259
+ this.queues = {};
4256
4260
  this.pendingOffWorkCleanups = /* @__PURE__ */ new Set();
4257
4261
  this.#spies = /* @__PURE__ */ new Map();
4258
4262
  this.#localGroupActive = /* @__PURE__ */ new Map();
@@ -9897,7 +9901,7 @@ const route11 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
9897
9901
  default: warnings,
9898
9902
  loader
9899
9903
  }, Symbol.toStringTag, { value: "Module" }));
9900
- const serverManifest = { "entry": { "module": "/assets/entry.client-DXZUROTm.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/index-DuhoQwUK.js"], "css": [] }, "routes": { "root": { "id": "root", "parentId": void 0, "path": "", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/root-DDqOT0vL.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/index-DuhoQwUK.js", "/assets/db-link-CU7IJqbq.js", "/assets/createLucideIcon-Bt-yXILq.js", "/assets/MenuTrigger-CoRd-BqL.js", "/assets/useOpenInteractionType-mgYMZAa8.js"], "css": ["/assets/root-Bpb4WtY4.css"], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/_index": { "id": "routes/_index", "parentId": "root", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/_index-BTx7NRR8.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/badge-DBD4CzAv.js", "/assets/table-Au2E5mnP.js", "/assets/error-card-D-uZRy_l.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/jobs": { "id": "routes/jobs", "parentId": "root", "path": "jobs", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/jobs-ouYjIGAi.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/badge-DBD4CzAv.js", "/assets/table-Au2E5mnP.js", "/assets/pagination-BItl293Q.js", "/assets/filter-select-Tk_CBvrn.js", "/assets/error-card-D-uZRy_l.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/queues._index": { "id": "routes/queues._index", "parentId": "root", "path": "queues", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/queues._index-_ID9kaow.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/badge-DBD4CzAv.js", "/assets/filter-select-Tk_CBvrn.js", "/assets/table-Au2E5mnP.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/queues.create": { "id": "routes/queues.create", "parentId": "root", "path": "queues/create", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/queues.create-CmVW5UVm.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/chevron-down-CYa4FYmp.js", "/assets/error-card-D-uZRy_l.js", "/assets/createLucideIcon-Bt-yXILq.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/queues.$name": { "id": "routes/queues.$name", "parentId": "root", "path": "queues/:name", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/queues._name-DwdbQND-.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/badge-DBD4CzAv.js", "/assets/table-Au2E5mnP.js", "/assets/pagination-BItl293Q.js", "/assets/filter-select-Tk_CBvrn.js", "/assets/dialog-Dkx42Rkd.js", "/assets/error-card-D-uZRy_l.js", "/assets/chevron-down-CYa4FYmp.js", "/assets/createLucideIcon-Bt-yXILq.js", "/assets/MenuTrigger-CoRd-BqL.js", "/assets/useOpenInteractionType-mgYMZAa8.js", "/assets/index-DuhoQwUK.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/queues.$name.jobs.$jobId": { "id": "routes/queues.$name.jobs.$jobId", "parentId": "root", "path": "queues/:name/jobs/:jobId", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/queues._name.jobs._jobId-DrgG3VBb.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/badge-DBD4CzAv.js", "/assets/dialog-Dkx42Rkd.js", "/assets/error-card-D-uZRy_l.js", "/assets/createLucideIcon-Bt-yXILq.js", "/assets/useOpenInteractionType-mgYMZAa8.js", "/assets/index-DuhoQwUK.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/schedules": { "id": "routes/schedules", "parentId": "root", "path": "schedules", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/schedules-B6ixYsvz.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/table-Au2E5mnP.js", "/assets/pagination-BItl293Q.js", "/assets/error-card-D-uZRy_l.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/schedules.$name.$key": { "id": "routes/schedules.$name.$key", "parentId": "root", "path": "schedules/:name/:key", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/schedules._name._key-CXTVKoOc.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/dialog-Dkx42Rkd.js", "/assets/error-card-D-uZRy_l.js", "/assets/createLucideIcon-Bt-yXILq.js", "/assets/useOpenInteractionType-mgYMZAa8.js", "/assets/index-DuhoQwUK.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/schedules.new": { "id": "routes/schedules.new", "parentId": "root", "path": "schedules/new", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/schedules.new-Dmasri9v.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/error-card-D-uZRy_l.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/send": { "id": "routes/send", "parentId": "root", "path": "send", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/send-CqR34Z50.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/db-link-CU7IJqbq.js", "/assets/button-Ba8FWhqs.js", "/assets/error-card-D-uZRy_l.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/warnings": { "id": "routes/warnings", "parentId": "root", "path": "warnings", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/warnings-Dj3qacgN.js", "imports": ["/assets/chunk-UVKPFVEO-YfSfkVr_.js", "/assets/button-Ba8FWhqs.js", "/assets/badge-DBD4CzAv.js", "/assets/table-Au2E5mnP.js", "/assets/pagination-BItl293Q.js", "/assets/filter-select-Tk_CBvrn.js", "/assets/error-card-D-uZRy_l.js", "/assets/db-link-CU7IJqbq.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 } }, "url": "/assets/manifest-72f6b3e9.js", "version": "72f6b3e9", "sri": void 0 };
9904
+ const serverManifest = { "entry": { "module": "/assets/entry.client-B-bLoJqf.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/index-By5u-yQ6.js"], "css": [] }, "routes": { "root": { "id": "root", "parentId": void 0, "path": "", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/root-Cubm0m9Y.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/index-By5u-yQ6.js", "/assets/db-link-BzIwSws3.js", "/assets/createLucideIcon-C5Bm8BOS.js", "/assets/MenuTrigger-BUdpY9vj.js", "/assets/useOpenInteractionType-C7OfDyTB.js"], "css": ["/assets/root-Bpb4WtY4.css"], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/_index": { "id": "routes/_index", "parentId": "root", "path": void 0, "index": true, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/_index-DXfER9RD.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/badge-to3cY6Nn.js", "/assets/table-CV0K56fY.js", "/assets/error-card--OB_TuOC.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/jobs": { "id": "routes/jobs", "parentId": "root", "path": "jobs", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/jobs-Gp0x24mG.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/badge-to3cY6Nn.js", "/assets/table-CV0K56fY.js", "/assets/pagination-DCEs769S.js", "/assets/filter-select-07am_j5T.js", "/assets/error-card--OB_TuOC.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/queues._index": { "id": "routes/queues._index", "parentId": "root", "path": "queues", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/queues._index-DxMtAiK3.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/badge-to3cY6Nn.js", "/assets/filter-select-07am_j5T.js", "/assets/table-CV0K56fY.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/queues.create": { "id": "routes/queues.create", "parentId": "root", "path": "queues/create", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/queues.create-aEr8z6Lt.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/chevron-down-ClrMXFFn.js", "/assets/error-card--OB_TuOC.js", "/assets/createLucideIcon-C5Bm8BOS.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/queues.$name": { "id": "routes/queues.$name", "parentId": "root", "path": "queues/:name", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/queues._name-DqI0ZH4S.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/badge-to3cY6Nn.js", "/assets/table-CV0K56fY.js", "/assets/pagination-DCEs769S.js", "/assets/filter-select-07am_j5T.js", "/assets/dialog-BBFR7NS6.js", "/assets/error-card--OB_TuOC.js", "/assets/chevron-down-ClrMXFFn.js", "/assets/createLucideIcon-C5Bm8BOS.js", "/assets/MenuTrigger-BUdpY9vj.js", "/assets/useOpenInteractionType-C7OfDyTB.js", "/assets/index-By5u-yQ6.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/queues.$name.jobs.$jobId": { "id": "routes/queues.$name.jobs.$jobId", "parentId": "root", "path": "queues/:name/jobs/:jobId", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/queues._name.jobs._jobId-BEwVDYH6.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/badge-to3cY6Nn.js", "/assets/dialog-BBFR7NS6.js", "/assets/error-card--OB_TuOC.js", "/assets/createLucideIcon-C5Bm8BOS.js", "/assets/useOpenInteractionType-C7OfDyTB.js", "/assets/index-By5u-yQ6.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/schedules": { "id": "routes/schedules", "parentId": "root", "path": "schedules", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/schedules-BacoSVY9.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/table-CV0K56fY.js", "/assets/pagination-DCEs769S.js", "/assets/error-card--OB_TuOC.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/schedules.$name.$key": { "id": "routes/schedules.$name.$key", "parentId": "root", "path": "schedules/:name/:key", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/schedules._name._key-zuc0HZqU.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/dialog-BBFR7NS6.js", "/assets/error-card--OB_TuOC.js", "/assets/createLucideIcon-C5Bm8BOS.js", "/assets/useOpenInteractionType-C7OfDyTB.js", "/assets/index-By5u-yQ6.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/schedules.new": { "id": "routes/schedules.new", "parentId": "root", "path": "schedules/new", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/schedules.new-CrK1w4GF.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/error-card--OB_TuOC.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/send": { "id": "routes/send", "parentId": "root", "path": "send", "index": void 0, "caseSensitive": void 0, "hasAction": true, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/send-wPFbslqy.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/db-link-BzIwSws3.js", "/assets/button-CudTDtZF.js", "/assets/error-card--OB_TuOC.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 }, "routes/warnings": { "id": "routes/warnings", "parentId": "root", "path": "warnings", "index": void 0, "caseSensitive": void 0, "hasAction": false, "hasLoader": true, "hasClientAction": false, "hasClientLoader": false, "hasClientMiddleware": false, "hasDefaultExport": true, "hasErrorBoundary": true, "module": "/assets/warnings-DLjttltF.js", "imports": ["/assets/chunk-EVOBXE3Y-CmKRT32p.js", "/assets/button-CudTDtZF.js", "/assets/badge-to3cY6Nn.js", "/assets/table-CV0K56fY.js", "/assets/pagination-DCEs769S.js", "/assets/filter-select-07am_j5T.js", "/assets/error-card--OB_TuOC.js", "/assets/db-link-BzIwSws3.js"], "css": [], "clientActionModule": void 0, "clientLoaderModule": void 0, "clientMiddlewareModule": void 0, "hydrateFallbackModule": void 0 } }, "url": "/assets/manifest-560249af.js", "version": "560249af", "sri": void 0 };
9901
9905
  const assetsBuildDirectory = "build/client";
9902
9906
  const basename = "/";
9903
9907
  const future = { "unstable_optimizeDeps": false, "unstable_passThroughRequests": false, "unstable_subResourceIntegrity": false, "unstable_trailingSlashAwareDataRequests": false, "unstable_previewServerPrerendering": false, "v8_middleware": false, "v8_splitRouteModules": false, "v8_viteEnvironmentApi": false };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pg-boss/dashboard",
3
- "version": "1.1.2",
3
+ "version": "1.1.3",
4
4
  "description": "Web dashboard for monitoring and managing pg-boss job queues",
5
5
  "keywords": [
6
6
  "pg-boss",
@@ -41,30 +41,30 @@
41
41
  "ci": "npm run typecheck && npm run cover:frontend && cross-env DATABASE_URL=postgres://postgres:postgres@127.0.0.1:5432/pgboss npm run cover:server"
42
42
  },
43
43
  "dependencies": {
44
- "@base-ui/react": "^1.3.0",
44
+ "@base-ui/react": "^1.4.1",
45
45
  "@hono/node-server": "^1.19.12",
46
46
  "@react-router/node": "^7.13.0",
47
47
  "class-variance-authority": "^0.7.1",
48
48
  "clsx": "^2.1.1",
49
- "hono": "^4.12.9",
50
- "isbot": "^5.1.36",
49
+ "hono": "^4.12.14",
50
+ "isbot": "^5.1.39",
51
51
  "lucide-react": "^0.575.0",
52
52
  "pg": "^8.20.0",
53
- "pg-boss": "^12.14.0",
54
- "react": "^19.2.4",
55
- "react-dom": "^19.2.4",
53
+ "pg-boss": "^12.16.0",
54
+ "react": "^19.2.5",
55
+ "react-dom": "^19.2.5",
56
56
  "react-router": "^7.13.0",
57
- "react-router-hono-server": "^2.25.2",
57
+ "react-router-hono-server": "^2.25.3",
58
58
  "tailwind-merge": "^3.5.0"
59
59
  },
60
60
  "devDependencies": {
61
- "@react-router/dev": "^7.13.2",
62
- "@tailwindcss/vite": "^4.2.2",
61
+ "@react-router/dev": "^7.14.2",
62
+ "@tailwindcss/vite": "^4.2.4",
63
63
  "@testing-library/dom": "^10.4.1",
64
64
  "@testing-library/jest-dom": "^6.9.1",
65
65
  "@testing-library/react": "^16.3.2",
66
66
  "@testing-library/user-event": "^14.6.1",
67
- "@types/node": "^22.19.15",
67
+ "@types/node": "^22.19.17",
68
68
  "@types/pg": "^8.20.0",
69
69
  "@types/react": "^19.2.14",
70
70
  "@types/react-dom": "^19.2.3",
@@ -75,7 +75,7 @@
75
75
  "tailwindcss": "^4.1.18",
76
76
  "tsx": "^4.21.0",
77
77
  "typescript": "^5.9.3",
78
- "vite": "^7.3.1",
78
+ "vite": "^7.3.2",
79
79
  "vitest": "^4.0.18"
80
80
  },
81
81
  "repository": {