vibepulse 0.1.6 → 0.1.7

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 (115) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +2 -2
  3. package/.next/cache/.previewinfo +1 -1
  4. package/.next/cache/.rscinfo +1 -1
  5. package/.next/cache/.tsbuildinfo +1 -1
  6. package/.next/cache/config.json +3 -3
  7. package/.next/fallback-build-manifest.json +2 -2
  8. package/.next/prerender-manifest.json +3 -3
  9. package/.next/server/app/_global-error.html +2 -2
  10. package/.next/server/app/_global-error.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  17. package/.next/server/app/_not-found.html +1 -1
  18. package/.next/server/app/_not-found.rsc +2 -2
  19. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  20. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  22. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  23. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  24. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  25. package/.next/server/app/api/opencode-config/route.js +3 -2
  26. package/.next/server/app/api/opencode-config/route.js.nft.json +1 -1
  27. package/.next/server/app/api/sessions/route.js +3 -2
  28. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  29. package/.next/server/app/index.html +1 -1
  30. package/.next/server/app/index.rsc +3 -3
  31. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  32. package/.next/server/app/index.segments/_full.segment.rsc +3 -3
  33. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  34. package/.next/server/app/index.segments/_index.segment.rsc +2 -2
  35. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  36. package/.next/server/app/page_client-reference-manifest.js +1 -1
  37. package/.next/server/chunks/[root-of-the-server]__172a07b6._.js +3 -0
  38. package/.next/server/chunks/[root-of-the-server]__172a07b6._.js.map +1 -0
  39. package/.next/server/chunks/[root-of-the-server]__2eaddfa4._.js +3 -0
  40. package/.next/server/chunks/[root-of-the-server]__2eaddfa4._.js.map +1 -0
  41. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7e181e75.js +3 -0
  42. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7e181e75.js.map +1 -0
  43. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_b054aff3.js +1 -1
  44. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_b054aff3.js.map +1 -1
  45. package/.next/server/chunks/ssr/src_app_page_tsx_a7111f3e._.js +3 -4
  46. package/.next/server/chunks/ssr/src_app_page_tsx_a7111f3e._.js.map +1 -1
  47. package/.next/server/pages/404.html +1 -1
  48. package/.next/server/pages/500.html +2 -2
  49. package/.next/server/server-reference-manifest.js +1 -1
  50. package/.next/server/server-reference-manifest.json +1 -1
  51. package/.next/standalone/.next/BUILD_ID +1 -1
  52. package/.next/standalone/.next/build-manifest.json +2 -2
  53. package/.next/standalone/.next/prerender-manifest.json +3 -3
  54. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  55. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  56. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  57. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  58. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  59. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  60. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  61. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  63. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  64. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  65. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  66. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  67. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  68. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  69. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  70. package/.next/standalone/.next/server/app/api/opencode-config/route.js +3 -2
  71. package/.next/standalone/.next/server/app/api/opencode-config/route.js.nft.json +1 -1
  72. package/.next/standalone/.next/server/app/api/sessions/route.js +3 -2
  73. package/.next/standalone/.next/server/app/api/sessions/route.js.nft.json +1 -1
  74. package/.next/standalone/.next/server/app/index.html +1 -1
  75. package/.next/standalone/.next/server/app/index.rsc +3 -3
  76. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  77. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  78. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  79. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
  80. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  81. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/chunks/[root-of-the-server]__172a07b6._.js +3 -0
  83. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2eaddfa4._.js +3 -0
  84. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7e181e75.js +3 -0
  85. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_b054aff3.js +1 -1
  86. package/.next/standalone/.next/server/chunks/ssr/src_app_page_tsx_a7111f3e._.js +3 -4
  87. package/.next/standalone/.next/server/pages/404.html +1 -1
  88. package/.next/standalone/.next/server/pages/500.html +2 -2
  89. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  91. package/.next/standalone/.next/static/chunks/17f4f0208a73190e.css +3 -0
  92. package/.next/standalone/.next/static/chunks/27cd09abe7141317.js +13 -0
  93. package/.next/standalone/package.json +3 -2
  94. package/.next/static/chunks/17f4f0208a73190e.css +3 -0
  95. package/.next/static/chunks/27cd09abe7141317.js +13 -0
  96. package/.next/trace +1 -1
  97. package/.next/trace-build +1 -1
  98. package/README.md +27 -101
  99. package/package.json +3 -2
  100. package/.next/server/chunks/[root-of-the-server]__8fa14cea._.js +0 -3
  101. package/.next/server/chunks/[root-of-the-server]__8fa14cea._.js.map +0 -1
  102. package/.next/server/chunks/[root-of-the-server]__e2b9c507._.js +0 -3
  103. package/.next/server/chunks/[root-of-the-server]__e2b9c507._.js.map +0 -1
  104. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8fa14cea._.js +0 -3
  105. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e2b9c507._.js +0 -3
  106. package/.next/standalone/.next/static/chunks/81d2fe9627c32ffb.js +0 -14
  107. package/.next/standalone/.next/static/chunks/d454a03c72a6bd1e.css +0 -3
  108. package/.next/static/chunks/81d2fe9627c32ffb.js +0 -14
  109. package/.next/static/chunks/d454a03c72a6bd1e.css +0 -3
  110. /package/.next/standalone/.next/static/{wRaPM3eaMbZ0yvOc7b6Yu → nxwthzXRJllvd1zizGoUj}/_buildManifest.js +0 -0
  111. /package/.next/standalone/.next/static/{wRaPM3eaMbZ0yvOc7b6Yu → nxwthzXRJllvd1zizGoUj}/_clientMiddlewareManifest.json +0 -0
  112. /package/.next/standalone/.next/static/{wRaPM3eaMbZ0yvOc7b6Yu → nxwthzXRJllvd1zizGoUj}/_ssgManifest.js +0 -0
  113. /package/.next/static/{wRaPM3eaMbZ0yvOc7b6Yu → nxwthzXRJllvd1zizGoUj}/_buildManifest.js +0 -0
  114. /package/.next/static/{wRaPM3eaMbZ0yvOc7b6Yu → nxwthzXRJllvd1zizGoUj}/_clientMiddlewareManifest.json +0 -0
  115. /package/.next/static/{wRaPM3eaMbZ0yvOc7b6Yu → nxwthzXRJllvd1zizGoUj}/_ssgManifest.js +0 -0
@@ -1,9 +1,8 @@
1
- module.exports=[40777,a=>{"use strict";let b,c,d;var e,f,g,h,i,j,k,l,m=a.i(87924),n=a.i(72131),o=a.i(99745),p=a.i(18544),q=a.i(76644),r=a.i(33791),s=a.i(79715),t=a.i(42871),u=a.i(8361),v=class extends r.Subscribable{constructor(a,b){super(),this.options=b,this.#a=a,this.#b=null,this.#c=(0,s.pendingThenable)(),this.bindMethods(),this.setOptions(b)}#a;#d=void 0;#e=void 0;#f=void 0;#g;#h;#c;#b;#i;#j;#k;#l;#m;#n;#o=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#d.addObserver(this),w(this.#d,this.options)?this.#p():this.updateResult(),this.#q())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return x(this.#d,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return x(this.#d,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#r(),this.#s(),this.#d.removeObserver(this)}setOptions(a){let b=this.options,c=this.#d;if(this.options=this.#a.defaultQueryOptions(a),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled&&"function"!=typeof this.options.enabled&&"boolean"!=typeof(0,t.resolveEnabled)(this.options.enabled,this.#d))throw Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#t(),this.#d.setOptions(this.options),b._defaulted&&!(0,t.shallowEqualObjects)(this.options,b)&&this.#a.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#d,observer:this});let d=this.hasListeners();d&&y(this.#d,c,this.options,b)&&this.#p(),this.updateResult(),d&&(this.#d!==c||(0,t.resolveEnabled)(this.options.enabled,this.#d)!==(0,t.resolveEnabled)(b.enabled,this.#d)||(0,t.resolveStaleTime)(this.options.staleTime,this.#d)!==(0,t.resolveStaleTime)(b.staleTime,this.#d))&&this.#u();let e=this.#v();d&&(this.#d!==c||(0,t.resolveEnabled)(this.options.enabled,this.#d)!==(0,t.resolveEnabled)(b.enabled,this.#d)||e!==this.#n)&&this.#w(e)}getOptimisticResult(a){var b,c;let d=this.#a.getQueryCache().build(this.#a,a),e=this.createResult(d,a);return b=this,c=e,(0,t.shallowEqualObjects)(b.getCurrentResult(),c)||(this.#f=e,this.#h=this.options,this.#g=this.#d.state),e}getCurrentResult(){return this.#f}trackResult(a,b){return new Proxy(a,{get:(a,c)=>(this.trackProp(c),b?.(c),"promise"===c&&(this.trackProp("data"),this.options.experimental_prefetchInRender||"pending"!==this.#c.status||this.#c.reject(Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(a,c))})}trackProp(a){this.#o.add(a)}getCurrentQuery(){return this.#d}refetch({...a}={}){return this.fetch({...a})}fetchOptimistic(a){let b=this.#a.defaultQueryOptions(a),c=this.#a.getQueryCache().build(this.#a,b);return c.fetch().then(()=>this.createResult(c,b))}fetch(a){return this.#p({...a,cancelRefetch:a.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#f))}#p(a){this.#t();let b=this.#d.fetch(this.options,a);return a?.throwOnError||(b=b.catch(t.noop)),b}#u(){this.#r();let a=(0,t.resolveStaleTime)(this.options.staleTime,this.#d);if(t.isServer||this.#f.isStale||!(0,t.isValidTimeout)(a))return;let b=(0,t.timeUntilStale)(this.#f.dataUpdatedAt,a);this.#l=u.timeoutManager.setTimeout(()=>{this.#f.isStale||this.updateResult()},b+1)}#v(){return("function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.#d):this.options.refetchInterval)??!1}#w(a){this.#s(),this.#n=a,!t.isServer&&!1!==(0,t.resolveEnabled)(this.options.enabled,this.#d)&&(0,t.isValidTimeout)(this.#n)&&0!==this.#n&&(this.#m=u.timeoutManager.setInterval(()=>{(this.options.refetchIntervalInBackground||o.focusManager.isFocused())&&this.#p()},this.#n))}#q(){this.#u(),this.#w(this.#v())}#r(){this.#l&&(u.timeoutManager.clearTimeout(this.#l),this.#l=void 0)}#s(){this.#m&&(u.timeoutManager.clearInterval(this.#m),this.#m=void 0)}createResult(a,b){let c,d=this.#d,e=this.options,f=this.#f,g=this.#g,h=this.#h,i=a!==d?a.state:this.#e,{state:j}=a,k={...j},l=!1;if(b._optimisticResults){let c=this.hasListeners(),f=!c&&w(a,b),g=c&&y(a,d,b,e);(f||g)&&(k={...k,...(0,q.fetchState)(j.data,a.options)}),"isRestoring"===b._optimisticResults&&(k.fetchStatus="idle")}let{error:m,errorUpdatedAt:n,status:o}=k;c=k.data;let p=!1;if(void 0!==b.placeholderData&&void 0===c&&"pending"===o){let a;f?.isPlaceholderData&&b.placeholderData===h?.placeholderData?(a=f.data,p=!0):a="function"==typeof b.placeholderData?b.placeholderData(this.#k?.state.data,this.#k):b.placeholderData,void 0!==a&&(o="success",c=(0,t.replaceData)(f?.data,a,b),l=!0)}if(b.select&&void 0!==c&&!p)if(f&&c===g?.data&&b.select===this.#i)c=this.#j;else try{this.#i=b.select,c=b.select(c),c=(0,t.replaceData)(f?.data,c,b),this.#j=c,this.#b=null}catch(a){this.#b=a}this.#b&&(m=this.#b,c=this.#j,n=Date.now(),o="error");let r="fetching"===k.fetchStatus,u="pending"===o,v="error"===o,x=u&&r,A=void 0!==c,B={status:o,fetchStatus:k.fetchStatus,isPending:u,isSuccess:"success"===o,isError:v,isInitialLoading:x,isLoading:x,data:c,dataUpdatedAt:k.dataUpdatedAt,error:m,errorUpdatedAt:n,failureCount:k.fetchFailureCount,failureReason:k.fetchFailureReason,errorUpdateCount:k.errorUpdateCount,isFetched:k.dataUpdateCount>0||k.errorUpdateCount>0,isFetchedAfterMount:k.dataUpdateCount>i.dataUpdateCount||k.errorUpdateCount>i.errorUpdateCount,isFetching:r,isRefetching:r&&!u,isLoadingError:v&&!A,isPaused:"paused"===k.fetchStatus,isPlaceholderData:l,isRefetchError:v&&A,isStale:z(a,b),refetch:this.refetch,promise:this.#c,isEnabled:!1!==(0,t.resolveEnabled)(b.enabled,a)};if(this.options.experimental_prefetchInRender){let b=void 0!==B.data,c="error"===B.status&&!b,e=a=>{c?a.reject(B.error):b&&a.resolve(B.data)},f=()=>{e(this.#c=B.promise=(0,s.pendingThenable)())},g=this.#c;switch(g.status){case"pending":a.queryHash===d.queryHash&&e(g);break;case"fulfilled":(c||B.data!==g.value)&&f();break;case"rejected":c&&B.error===g.reason||f()}}return B}updateResult(){let a=this.#f,b=this.createResult(this.#d,this.options);if(this.#g=this.#d.state,this.#h=this.options,void 0!==this.#g.data&&(this.#k=this.#d),(0,t.shallowEqualObjects)(b,a))return;this.#f=b;let c=()=>{if(!a)return!0;let{notifyOnChangeProps:b}=this.options,c="function"==typeof b?b():b;if("all"===c||!c&&!this.#o.size)return!0;let d=new Set(c??this.#o);return this.options.throwOnError&&d.add("error"),Object.keys(this.#f).some(b=>this.#f[b]!==a[b]&&d.has(b))};this.#x({listeners:c()})}#t(){let a=this.#a.getQueryCache().build(this.#a,this.options);if(a===this.#d)return;let b=this.#d;this.#d=a,this.#e=a.state,this.hasListeners()&&(b?.removeObserver(this),a.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#q()}#x(a){p.notifyManager.batch(()=>{a.listeners&&this.listeners.forEach(a=>{a(this.#f)}),this.#a.getQueryCache().notify({query:this.#d,type:"observerResultsUpdated"})})}};function w(a,b){return!1!==(0,t.resolveEnabled)(b.enabled,a)&&void 0===a.state.data&&("error"!==a.state.status||!1!==b.retryOnMount)||void 0!==a.state.data&&x(a,b,b.refetchOnMount)}function x(a,b,c){if(!1!==(0,t.resolveEnabled)(b.enabled,a)&&"static"!==(0,t.resolveStaleTime)(b.staleTime,a)){let d="function"==typeof c?c(a):c;return"always"===d||!1!==d&&z(a,b)}return!1}function y(a,b,c,d){return(a!==b||!1===(0,t.resolveEnabled)(d.enabled,a))&&(!c.suspense||"error"!==a.state.status)&&z(a,c)}function z(a,b){return!1!==(0,t.resolveEnabled)(b.enabled,a)&&a.isStaleByTime((0,t.resolveStaleTime)(b.staleTime,a))}var A=a.i(37927),B=n.createContext((c=!1,{clearReset:()=>{c=!1},reset:()=>{c=!0},isReset:()=>c})),C=n.createContext(!1);C.Provider;var D=(a,b,c)=>b.fetchOptimistic(a).catch(()=>{c.clearReset()});function E(a,b){return function(a,b,c){let d,e=n.useContext(C),f=n.useContext(B),g=(0,A.useQueryClient)(c),h=g.defaultQueryOptions(a);g.getDefaultOptions().queries?._experimental_beforeQuery?.(h);let i=g.getQueryCache().get(h.queryHash);if(h._optimisticResults=e?"isRestoring":"optimistic",h.suspense){let a=a=>"static"===a?a:Math.max(a??1e3,1e3),b=h.staleTime;h.staleTime="function"==typeof b?(...c)=>a(b(...c)):a(b),"number"==typeof h.gcTime&&(h.gcTime=Math.max(h.gcTime,1e3))}d=i?.state.error&&"function"==typeof h.throwOnError?(0,t.shouldThrowError)(h.throwOnError,[i.state.error,i]):h.throwOnError,(h.suspense||h.experimental_prefetchInRender||d)&&!f.isReset()&&(h.retryOnMount=!1),n.useEffect(()=>{f.clearReset()},[f]);let j=!g.getQueryCache().get(h.queryHash),[k]=n.useState(()=>new b(g,h)),l=k.getOptimisticResult(h),m=!e&&!1!==a.subscribed;if(n.useSyncExternalStore(n.useCallback(a=>{let b=m?k.subscribe(p.notifyManager.batchCalls(a)):t.noop;return k.updateResult(),b},[k,m]),()=>k.getCurrentResult(),()=>k.getCurrentResult()),n.useEffect(()=>{k.setOptions(h)},[h,k]),h?.suspense&&l.isPending)throw D(h,k,f);if((({result:a,errorResetBoundary:b,throwOnError:c,query:d,suspense:e})=>a.isError&&!b.isReset()&&!a.isFetching&&d&&(e&&void 0===a.data||(0,t.shouldThrowError)(c,[a.error,d])))({result:l,errorResetBoundary:f,throwOnError:h.throwOnError,query:i,suspense:h.suspense}))throw l.error;if(g.getDefaultOptions().queries?._experimental_afterQuery?.(h,l),h.experimental_prefetchInRender&&!t.isServer&&l.isLoading&&l.isFetching&&!e){let a=j?D(h,k,f):i?.promise;a?.catch(t.noop).finally(()=>{k.updateResult()})}return h.notifyOnChangeProps?l:k.trackResult(l)}(a,v,b)}function F(a){let b=Date.now()-a,c=Math.floor(b/6e4),d=Math.floor(b/36e5),e=Math.floor(b/864e5);return c<1?"<1m":d<1?`${c}m`:e<1?`${d}h`:`${e}d`}function G({status:a,waitingForUser:b}){if(b)return(0,m.jsxs)("span",{className:"relative flex h-2 w-2 flex-shrink-0",title:"Waiting",children:[(0,m.jsx)("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-amber-400 opacity-75"}),(0,m.jsx)("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-amber-500"})]});switch(a){case"busy":return(0,m.jsxs)("span",{className:"relative flex h-2 w-2 flex-shrink-0",title:"Running",children:[(0,m.jsx)("span",{className:"animate-pulse absolute inline-flex h-full w-full rounded-full bg-emerald-400 opacity-75"}),(0,m.jsx)("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-emerald-500"})]});case"retry":return(0,m.jsxs)("span",{className:"relative flex h-2 w-2 flex-shrink-0",title:"Retrying",children:[(0,m.jsx)("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-red-400 opacity-75"}),(0,m.jsx)("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-red-500"})]});default:return(0,m.jsx)("span",{className:"inline-flex rounded-full h-2 w-2 bg-gray-400 flex-shrink-0",title:"Idle"})}}function H({cards:a,readOnly:b=!1}){let c=(0,A.useQueryClient)(),[d,e]=(0,n.useState)(!1),f=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!d)return;let a=a=>{f.current&&!f.current.contains(a.target)&&e(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[d]);let g=a.some(a=>"done"!==a.status),h=async b=>{b.stopPropagation();let d=a.filter(a=>"done"!==a.status);await Promise.all(d.map(a=>fetch(`/api/sessions/${a.id}/archive`,{method:"POST"}))),e(!1),c.invalidateQueries({queryKey:["sessions"]})},i=async b=>{b.stopPropagation(),confirm(`Delete ${a.length} session(s)? This cannot be undone.`)&&(await Promise.all(a.map(a=>fetch(`/api/sessions/${a.id}/delete`,{method:"POST"}))),e(!1),c.invalidateQueries({queryKey:["sessions"]}))};return b?null:(0,m.jsxs)("div",{className:"relative",ref:f,children:[(0,m.jsx)("button",{type:"button",className:"w-5 h-5 flex items-center justify-center rounded text-gray-400 hover:text-gray-600 hover:bg-gray-200 dark:text-gray-500 dark:hover:text-gray-300 dark:hover:bg-zinc-600 transition-colors",onClick:a=>{a.stopPropagation(),e(!d)},title:"Batch actions",children:(0,m.jsx)("svg",{className:"w-3.5 h-3.5",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:(0,m.jsx)("path",{d:"M5 10a2 2 0 110 4 2 2 0 010-4zm7 0a2 2 0 110 4 2 2 0 010-4zm7 0a2 2 0 110 4 2 2 0 010-4z"})})}),d&&(0,m.jsxs)("div",{className:"absolute right-0 top-6 w-32 rounded-md border border-gray-200 bg-white shadow-lg dark:border-zinc-700 dark:bg-zinc-900 z-20",children:[g&&(0,m.jsx)("button",{type:"button",className:"w-full text-left px-3 py-1.5 text-xs text-gray-700 hover:bg-gray-50 dark:text-gray-200 dark:hover:bg-zinc-800",onClick:h,children:"Archive all"}),(0,m.jsx)("button",{type:"button",className:"w-full text-left px-3 py-1.5 text-xs text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",onClick:i,children:"Delete all"})]})]})}function I({cardId:a,archived:b}){let c=(0,A.useQueryClient)(),[d,e]=(0,n.useState)(!1),f=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!d)return;let a=a=>{f.current&&!f.current.contains(a.target)&&e(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[d]);let g=async b=>{b.stopPropagation();try{await fetch(`/api/sessions/${a}/archive`,{method:"POST"})}finally{e(!1),c.invalidateQueries({queryKey:["sessions"]})}},h=async b=>{b.stopPropagation();try{await fetch(`/api/sessions/${a}/delete`,{method:"POST"})}finally{e(!1),c.invalidateQueries({queryKey:["sessions"]})}};return(0,m.jsxs)("div",{className:"relative flex-shrink-0",ref:f,children:[(0,m.jsx)("button",{type:"button",className:"w-5 h-5 flex items-center justify-center rounded text-gray-400 hover:text-gray-600 hover:bg-gray-200 dark:text-gray-500 dark:hover:text-gray-300 dark:hover:bg-zinc-600 transition-colors",onClick:a=>{a.stopPropagation(),e(!d)},title:"Actions",children:(0,m.jsx)("svg",{className:"w-3.5 h-3.5",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:(0,m.jsx)("path",{d:"M5 10a2 2 0 110 4 2 2 0 010-4zm7 0a2 2 0 110 4 2 2 0 010-4zm7 0a2 2 0 110 4 2 2 0 010-4z"})})}),d&&(0,m.jsxs)("div",{className:"absolute right-0 top-6 w-28 rounded-md border border-gray-200 bg-white shadow-lg dark:border-zinc-700 dark:bg-zinc-900 z-20",children:[b?null:(0,m.jsx)("button",{type:"button",className:"w-full text-left px-3 py-1.5 text-xs text-gray-700 hover:bg-gray-50 dark:text-gray-200 dark:hover:bg-zinc-800",onClick:g,children:"Archive"}),(0,m.jsx)("button",{type:"button",className:"w-full text-left px-3 py-1.5 text-xs text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",onClick:h,children:"Delete"})]})]})}function J({card:a,isLast:b,readOnly:c=!1}){let[d,e]=(0,n.useState)(!0),f=(a.children||[]).filter(a=>"idle"!==a.realTimeStatus||a.waitingForUser),g=f.length>0;return(0,m.jsxs)("div",{className:b?"":"border-b border-gray-50 dark:border-zinc-700/30",children:[(0,m.jsxs)("div",{className:"group/row flex items-center gap-2.5 px-3 py-2 hover:bg-gray-50 dark:hover:bg-zinc-700/30 transition-colors",title:`${a.title||"Untitled Session"}
2
- Active ${F(a.updatedAt)} ago \xb7 Started ${F(a.createdAt)} ago`,children:[g&&(0,m.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),e(!d)},className:"w-3 h-3 flex items-center justify-center text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300 flex-shrink-0 transition-transform",title:d?"Collapse subagents":"Expand subagents",children:(0,m.jsx)("svg",{className:`w-2.5 h-2.5 transition-transform duration-150 ${d?"rotate-90":""}`,viewBox:"0 0 6 10",fill:"currentColor","aria-hidden":"true",children:(0,m.jsx)("path",{d:"M1 1l4 4-4 4",stroke:"currentColor",strokeWidth:"1.5",fill:"none",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,m.jsx)(G,{status:a.opencodeStatus,waitingForUser:a.waitingForUser}),(0,m.jsx)("span",{className:"text-sm text-gray-700 dark:text-gray-300 truncate flex-1 min-w-0",children:a.title||"Untitled Session"}),g&&!d&&(0,m.jsxs)("span",{className:"text-[9px] font-medium text-gray-400 dark:text-gray-500 bg-gray-100 dark:bg-zinc-700 px-1 py-0.5 rounded flex-shrink-0",children:[f.length," sub"]}),(0,m.jsx)("span",{className:"text-[10px] text-gray-400 dark:text-gray-500 flex-shrink-0 tabular-nums group-hover/row:hidden",children:F(a.updatedAt)}),c?null:(0,m.jsx)("div",{className:"hidden group-hover/row:flex flex-shrink-0",children:(0,m.jsx)(I,{cardId:a.id,archived:"done"===a.status})})]}),g&&d&&(0,m.jsx)("div",{className:"bg-gray-50/50 dark:bg-zinc-800/30",children:f.map((a,b)=>(0,m.jsxs)("div",{className:"flex items-center gap-2 pl-8 pr-3 py-1.5 hover:bg-gray-100/50 dark:hover:bg-zinc-700/20 transition-colors",title:a.title||"Subagent",children:[(0,m.jsx)("span",{className:"text-gray-300 dark:text-zinc-600 text-xs flex-shrink-0 font-mono leading-none",children:b===f.length-1?"└":"├"}),(0,m.jsx)(G,{status:a.realTimeStatus,waitingForUser:a.waitingForUser}),(0,m.jsx)("span",{className:"text-xs text-gray-500 dark:text-gray-400 truncate flex-1 min-w-0",children:a.title||"Subagent"})]},a.id))})]})}function K({projectName:a,branch:b,cards:c,readOnly:d=!1}){let[e,f]=(0,n.useState)(()=>"vscode"),[g]=(0,n.useState)(()=>"");return(0,m.jsxs)("article",{className:"w-full bg-white dark:bg-zinc-800 rounded-xl shadow-sm border border-gray-200 dark:border-zinc-700 hover:shadow-lg hover:border-gray-300 dark:hover:border-zinc-600 transition-all duration-200 overflow-visible",children:[(0,m.jsxs)("div",{className:"group/header flex items-center gap-2 px-3 py-2.5 hover:bg-gray-50 dark:hover:bg-zinc-700/30 transition-colors",children:[(0,m.jsx)("svg",{className:"w-4 h-4 text-blue-500 dark:text-blue-400 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z"})}),(0,m.jsx)("span",{className:"text-sm font-semibold text-gray-800 dark:text-gray-200 truncate flex-1",children:a}),b&&(0,m.jsx)("span",{className:"text-[10px] bg-gray-100 dark:bg-zinc-700 text-gray-500 dark:text-gray-400 px-1.5 py-0.5 rounded flex-shrink-0",children:b}),c.length>1&&(0,m.jsx)("span",{className:"text-[10px] text-gray-400 dark:text-gray-500 font-medium bg-gray-100 dark:bg-zinc-700 px-1.5 py-0.5 rounded-full flex-shrink-0",children:c.length}),!d&&(0,m.jsx)("div",{className:"hidden group-hover/header:flex flex-shrink-0",children:(0,m.jsx)(H,{cards:c,readOnly:d})})]}),(0,m.jsx)("div",{className:"border-t border-gray-100 dark:border-zinc-700/50",children:c.map((a,b)=>(0,m.jsx)(J,{card:a,isLast:b===c.length-1,readOnly:d},a.id))}),(0,m.jsxs)("div",{className:"flex items-center justify-end gap-1.5 px-3 py-1.5 border-t border-gray-100 dark:border-zinc-700/50 bg-gray-50/50 dark:bg-zinc-800/50",children:[(0,m.jsxs)("select",{className:"text-[10px] rounded border border-gray-200 bg-white px-1 py-0.5 text-gray-500 dark:border-zinc-700 dark:bg-zinc-900 dark:text-gray-400 focus:outline-none",value:e,onClick:a=>a.stopPropagation(),onChange:a=>{f(a.target.value),window.localStorage.setItem("vibepulse:open-tool",a.target.value)},title:"Select open tool",children:[(0,m.jsx)("option",{value:"vscode",children:"VSCode"}),(0,m.jsx)("option",{value:"antigravity",children:"Antigravity"})]}),(0,m.jsxs)("button",{type:"button",onClick:()=>{let a,b=c[0]?.directory;if(!b)return;let d="antigravity"===e?`antigravity://file${b}`:(a=encodeURI(b.replace(/\\/g,"/")),g?`vscode://vscode-remote/ssh-remote+${g}${a.startsWith("/")?"":"/"}${a}`:`vscode://file${a.startsWith("/")?a:`/${a}`}`);window.location.href=d},className:"flex items-center gap-1 px-2 py-0.5 rounded-md text-[10px] font-medium text-gray-500 hover:text-blue-600 hover:bg-blue-50 dark:text-gray-400 dark:hover:text-blue-400 dark:hover:bg-blue-900/20 transition-colors",title:"Open project",children:[(0,m.jsx)("svg",{className:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"})}),"Open"]})]})]})}function L(a){let b,c,d=a.realTimeStatus||"idle",e=(a.children||[]).some(a=>{let b=a.realTimeStatus||"idle";return"busy"===b||"retry"===b}),f="retry"===d?"retry":"busy"===d||e?"busy":"idle",g=(a.children||[]).some(a=>{let b=a.realTimeStatus||"idle";return"retry"===b||"idle"!==b&&!!a.waitingForUser}),h="retry"===f||"busy"===f&&(!!a.waitingForUser||g);return c=a.time?.archived?"done":h?"review":"busy"===f?"busy":"idle",{id:a.id,sessionSlug:a.slug,title:a.title||"Untitled Session",directory:a.directory,projectName:a.projectName||"Unknown Project",branch:a.branch,agents:(b=a.slug.split("_")).length>=3?b[b.length-1].split("-").filter(Boolean):[],messageCount:a.messageCount||0,status:c,opencodeStatus:f,waitingForUser:h,todosTotal:0,todosCompleted:0,createdAt:a.time.created,updatedAt:a.time.updated,archivedAt:a.time.archived,sortOrder:0,children:(a.children||[]).map(a=>({id:a.id,title:a.title,realTimeStatus:a.realTimeStatus||"idle",waitingForUser:"retry"===(a.realTimeStatus||"idle")||"busy"===(a.realTimeStatus||"idle")&&!!a.waitingForUser}))}}function M(){return(0,m.jsx)("div",{className:"h-[calc(100vh-8rem)] overflow-x-auto",children:(0,m.jsx)("div",{className:"flex gap-4 h-full min-w-max p-4",children:[1,2,3,4].map(a=>(0,m.jsxs)("div",{className:"flex-shrink-0 w-80 bg-gray-100 dark:bg-zinc-800 rounded-lg p-4 animate-pulse",children:[(0,m.jsx)("div",{className:"h-6 bg-gray-200 dark:bg-zinc-700 rounded w-24 mb-4"}),(0,m.jsx)("div",{className:"space-y-3",children:[1,2,3].map(a=>(0,m.jsxs)("div",{className:"p-4 bg-white dark:bg-zinc-900 rounded-lg shadow border border-gray-200 dark:border-zinc-700",children:[(0,m.jsx)("div",{className:"h-5 bg-gray-200 dark:bg-zinc-700 rounded w-3/4 mb-3"}),(0,m.jsxs)("div",{className:"flex gap-2",children:[(0,m.jsx)("div",{className:"h-4 bg-gray-200 dark:bg-zinc-700 rounded w-20"}),(0,m.jsx)("div",{className:"h-4 bg-gray-200 dark:bg-zinc-700 rounded w-16"})]})]},a))})]},a))})})}let N=null,O=new Map;function P(a){let b=Date.now();return!(b-(O.get(a)??0)<1e4)&&(O.set(a,b),!0)}function Q(a,b,c){P(`warn:${a}`)&&console.warn(`[VibePulse sound] ${b}`,c)}function R(){return N||(N=new AudioContext),N}function S(a,b,c,d){var e;0;try{let b=R(),e=()=>{try{d(b,b.currentTime)}catch(b){Q(a,c,b)}};if("running"===b.state)return void e();b.resume().then(()=>{"running"===b.state?e():Q(`${a}-state`,`${c} (AudioContext not running after resume)`,Error(b.state))}).catch(b=>{Q(`${a}-resume`,`${c} (AudioContext resume failed)`,b)})}catch(b){Q(a,c,b)}}function T(){try{let a=R(),b=()=>{let b=a.createBuffer(1,1,22050),c=a.createBufferSource();c.buffer=b,c.connect(a.destination),c.start(0)};if("running"===a.state)return void b();a.resume().then(()=>{"running"===a.state?b():Q("unlock-state","unlockAudio() resume did not reach running state",Error(a.state))}).catch(a=>{Q("unlock-resume","Failed to resume AudioContext in unlockAudio()",a)})}catch(a){Q("unlock-audio","unlockAudio() failed",a)}}function U(){S("play-attention","Skipped playAttentionSound() because muted","playAttentionSound() failed",(a,b)=>{let c=a.createOscillator(),d=a.createGain();c.type="sine",c.frequency.value=523,d.gain.setValueAtTime(.3,b),d.gain.exponentialRampToValueAtTime(.001,b+.2),c.connect(d),d.connect(a.destination),c.start(b),c.stop(b+.2);let e=a.createOscillator(),f=a.createGain();e.type="sine",e.frequency.value=659,f.gain.setValueAtTime(.3,b+.15),f.gain.exponentialRampToValueAtTime(.001,b+.4),e.connect(f),f.connect(a.destination),e.start(b+.15),e.stop(b+.4);let g=a.createOscillator(),h=a.createGain();g.type="sine",g.frequency.value=784,h.gain.setValueAtTime(.25,b+.3),h.gain.exponentialRampToValueAtTime(.001,b+.55),g.connect(h),h.connect(a.destination),g.start(b+.3),g.stop(b+.55)})}function V(){S("play-complete","Skipped playCompleteSound() because muted","playCompleteSound() failed",(a,b)=>{let c=a.createOscillator(),d=a.createGain();c.type="sine",c.frequency.setValueAtTime(659,b),c.frequency.exponentialRampToValueAtTime(988,b+.18),d.gain.setValueAtTime(.22,b),d.gain.exponentialRampToValueAtTime(.001,b+.22),c.connect(d),d.connect(a.destination),c.start(b),c.stop(b+.22);let e=a.createOscillator(),f=a.createGain();e.type="sine",e.frequency.setValueAtTime(988,b+.12),e.frequency.exponentialRampToValueAtTime(1318,b+.32),f.gain.setValueAtTime(.18,b+.12),f.gain.exponentialRampToValueAtTime(.001,b+.36),e.connect(f),f.connect(a.destination),e.start(b+.12),e.stop(b+.36)})}let W=[{id:"idle",title:"Idle"},{id:"busy",title:"Busy"},{id:"review",title:"Needs Attention"},{id:"done",title:"Archived"}];function X({filterDays:a,onProcessHintsChange:b}){let c=(0,n.useRef)({}),d=(0,n.useRef)(!1),e=(0,n.useRef)({}),f=(0,n.useRef)(!1),[g,h]=(0,n.useState)("idle"),[i,j]=(0,n.useState)(null),{data:k,isLoading:l,error:o,dataUpdatedAt:p,refetch:q,isFetching:r}=E({queryKey:["sessions"],queryFn:async()=>{try{let a=await fetch("/api/sessions");if(!a.ok){let b=null;try{b=await a.json()}catch{b=null}let c=503===a.status&&b?.error==="OpenCode server not found",d=Error(c?b?.error||"OpenCode server not found":b?.error||`Failed to load sessions (${a.status})`);throw d.kind=c?"opencode_unavailable":"request_failed",d.hint=b?.hint,d.status=a.status,d}return a.json()}catch(b){if(b instanceof Error&&b.kind)throw b;let a=Error("Unable to connect to session service");throw a.kind="request_failed",a}},refetchInterval:5e3,refetchIntervalInBackground:!0,refetchOnReconnect:!0});(0,n.useEffect)(()=>{},[]),(0,n.useEffect)(()=>{},[k?.processHints,k?.sessions]);let s=async()=>{try{await navigator.clipboard.writeText("opencode --port <PORT>"),h("copied"),setTimeout(()=>h("idle"),1500)}catch{h("failed"),setTimeout(()=>h("idle"),2e3)}},t=(0,n.useMemo)(()=>k?.sessions?k.sessions:o&&i?.sessions?.length?i.sessions:[],[o,k?.sessions,i?.sessions]),u=!!o&&!k?.sessions&&!!i?.sessions?.length,v=(0,n.useMemo)(()=>k?.processHints?k.processHints:u&&i?.processHints?i.processHints:[],[k?.processHints,u,i?.processHints]);(0,n.useEffect)(()=>{b?.(v)},[b,v]);let w=(0,n.useMemo)(()=>{if(!t.length)return[];let a={};return t.map(b=>{let c=!!a[b.id];return{...b,waitingForUser:!!b.waitingForUser||"retry"===b.realTimeStatus&&c}})},[t]);(0,n.useEffect)(()=>{},[w]),(0,n.useEffect)(()=>{let a={},b=!1;for(let e of w){let f=!!e.waitingForUser;a[e.id]=f,d.current&&f&&!c.current[e.id]&&(b=!0)}if(c.current=a,!d.current){d.current=!0;return}b&&setTimeout(()=>U(),250)},[w]),(0,n.useEffect)(()=>{let a={};for(let b of w){let c="busy"===b.realTimeStatus||"retry"===b.realTimeStatus?b.realTimeStatus:"idle";a[b.id]=c}if(!f.current){f.current=!0,e.current=a;return}let b=!1;for(let[c,d]of Object.entries(a)){let a=e.current[c];if(("busy"===a||"retry"===a)&&"idle"===d){b=!0;break}}e.current=a,b&&!u&&setTimeout(()=>V(),250)},[w,u]);let x=(0,n.useMemo)(()=>{let b=w.map(L);if(0===a)return b;let c=p-24*a*36e5;return b.filter(a=>a.updatedAt>=c)},[p,w,a]);if(l)return(0,m.jsx)(M,{});if(o&&!u){let a=o?.kind==="opencode_unavailable",b=a?o?.hint||"Run OpenCode with an exposed API port, for example `opencode --port <PORT>`.":o?.message||"An error occurred while loading sessions";return(0,m.jsx)("div",{className:"flex-1 flex items-center justify-center p-8",children:(0,m.jsxs)("div",{className:"max-w-md w-full text-center",children:[(0,m.jsx)("div",{className:"flex items-center justify-center w-12 h-12 mx-auto mb-4 bg-red-100 dark:bg-red-900/30 rounded-full",children:(0,m.jsx)("svg",{className:"w-6 h-6 text-red-600 dark:text-red-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})}),(0,m.jsx)("h2",{className:"text-lg font-semibold text-gray-900 dark:text-white mb-2",children:a?"OpenCode is not running":"Failed to load sessions"}),(0,m.jsx)("p",{className:"text-gray-600 dark:text-gray-400 mb-4",children:b}),(0,m.jsxs)("div",{className:"flex items-center justify-center gap-2",children:[(0,m.jsx)("button",{type:"button",onClick:()=>q(),className:"px-3 py-1.5 bg-blue-600 hover:bg-blue-700 text-white text-sm font-medium rounded-md transition-colors disabled:opacity-50 disabled:cursor-not-allowed",disabled:r,children:r?"Retrying...":"Retry"}),a?(0,m.jsx)("button",{type:"button",onClick:s,className:"px-3 py-1.5 bg-gray-100 hover:bg-gray-200 dark:bg-zinc-800 dark:hover:bg-zinc-700 text-gray-700 dark:text-gray-300 text-sm font-medium rounded-md transition-colors",children:"copied"===g?"Copied":"failed"===g?"Copy Failed":"Copy Start Command"}):null]})]})})}return x&&0!==x.length?(0,m.jsxs)("div",{className:"flex-1 overflow-x-auto scrollbar-thin scroll-smooth",children:[u?(0,m.jsx)("div",{className:"px-4 pt-4 pb-0",children:(0,m.jsx)("div",{className:"rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-amber-800 dark:border-amber-900/40 dark:bg-amber-900/20 dark:text-amber-200",children:(0,m.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium",children:[(0,m.jsx)("span",{className:"inline-flex items-center rounded-full bg-amber-100 px-2 py-0.5 text-[10px] uppercase tracking-wide dark:bg-amber-900/40",children:"Stale Data"}),(0,m.jsxs)("span",{children:["Last seen at ",i?new Date(i.savedAt).toLocaleString():"--"]}),(0,m.jsx)("span",{className:"text-amber-700/80 dark:text-amber-300/80",children:"Read-only snapshot while OpenCode is unreachable."})]})})}):null,(0,m.jsx)("div",{className:"flex gap-6 h-full min-w-max p-4",children:W.map(a=>{let b=x.filter(b=>b.status===a.id).sort((a,b)=>a.sortOrder-b.sortOrder),c=(a=>{let b=new Map;for(let c of a){let a=c.projectName||"Unknown Project";b.has(a)||b.set(a,[]),b.get(a).push(c)}return b})(b);return(0,m.jsxs)("div",{className:"flex-shrink-0 w-80 bg-gray-100 dark:bg-zinc-800/80 rounded-xl p-4 flex flex-col shadow-sm",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between mb-4 pb-3 border-b border-gray-200 dark:border-zinc-700",children:[(0,m.jsx)("h2",{className:"font-semibold text-gray-700 dark:text-gray-300",children:a.title}),(0,m.jsx)("span",{className:"px-2.5 py-0.5 bg-gray-200 dark:bg-zinc-700 text-gray-600 dark:text-gray-400 text-xs font-medium rounded-full",children:b.length})]}),(0,m.jsx)("div",{className:"flex-1 overflow-y-auto scrollbar-thin pr-1",children:(0,m.jsx)("div",{className:"space-y-3",children:Array.from(c.entries()).map(([a,b])=>(0,m.jsx)(K,{projectName:a,branch:b[0].branch,cards:b,readOnly:u},a))})})]},a.id)})})]}):(0,m.jsx)("div",{className:"flex-1 flex items-center justify-center p-8",children:(0,m.jsxs)("div",{className:"max-w-md w-full text-center",children:[(0,m.jsx)("div",{className:"flex items-center justify-center w-12 h-12 mx-auto mb-4 bg-gray-100 dark:bg-zinc-800 rounded-full",children:(0,m.jsx)("svg",{className:"w-6 h-6 text-gray-500 dark:text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"})})}),(0,m.jsx)("h2",{className:"text-lg font-semibold text-gray-900 dark:text-white mb-2",children:"No sessions yet"}),(0,m.jsx)("p",{className:"text-gray-600 dark:text-gray-400 mb-4",children:"OpenCode is running, but no sessions are available."}),(0,m.jsx)("p",{className:"text-sm text-gray-500 dark:text-gray-500",children:"Start a conversation in OpenCode and this board will update automatically."})]})})}var Y=n;class Z extends Y.Component{constructor(a){super(a),this.state={hasError:!1}}static getDerivedStateFromError(a){return{hasError:!0,error:a}}componentDidCatch(a,b){console.error("ErrorBoundary caught an error:",a,b)}render(){return this.state.hasError?(0,m.jsx)("div",{className:"min-h-screen flex items-center justify-center bg-zinc-50 dark:bg-black",children:(0,m.jsxs)("div",{className:"max-w-md w-full mx-4 p-8 bg-white dark:bg-zinc-900 rounded-lg shadow-lg border border-gray-200 dark:border-zinc-800",children:[(0,m.jsx)("div",{className:"flex items-center justify-center w-12 h-12 mx-auto mb-4 bg-red-100 dark:bg-red-900/30 rounded-full",children:(0,m.jsx)("svg",{className:"w-6 h-6 text-red-600 dark:text-red-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})}),(0,m.jsx)("h2",{className:"text-xl font-semibold text-center text-gray-900 dark:text-white mb-2",children:"Something went wrong"}),(0,m.jsx)("p",{className:"text-center text-gray-600 dark:text-gray-400 mb-6",children:"An unexpected error occurred. Please try refreshing the page."}),this.state.error&&(0,m.jsx)("div",{className:"p-3 bg-gray-100 dark:bg-zinc-800 rounded text-sm text-gray-700 dark:text-gray-300 font-mono overflow-auto",children:this.state.error.message}),(0,m.jsx)("button",{onClick:()=>window.location.reload(),className:"mt-6 w-full py-2 px-4 bg-blue-600 hover:bg-blue-700 text-white font-medium rounded-lg transition-colors",children:"Refresh Page"})]})}):this.props.children}}function $(a,b){}function _(a){let b=Date.now();return{...a,slug:a.slug||a.id,title:a.title||"Untitled Session",directory:a.directory||"",projectName:a.projectName||function(a){if(!a)return"Unknown Project";let b=a.replace(/\\/g,"/").split("/").filter(Boolean);return b[b.length-1]||"Unknown Project"}(a.directory),time:a.time||{created:b,updated:b},realTimeStatus:a.realTimeStatus||"busy",waitingForUser:!!a.waitingForUser,children:a.children||[]}}let aa=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),ab=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var ac={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let ad=(0,n.forwardRef)(({color:a="currentColor",size:b=24,strokeWidth:c=2,absoluteStrokeWidth:d,className:e="",children:f,iconNode:g,...h},i)=>(0,n.createElement)("svg",{ref:i,...ac,width:b,height:b,stroke:a,strokeWidth:d?24*Number(c)/Number(b):c,className:aa("lucide",e),...!f&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(h)&&{"aria-hidden":"true"},...h},[...g.map(([a,b])=>(0,n.createElement)(a,b)),...Array.isArray(f)?f:[f]])),ae=(a,b)=>{let c=(0,n.forwardRef)(({className:c,...d},e)=>(0,n.createElement)(ad,{ref:e,iconNode:b,className:aa(`lucide-${ab(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,c),...d}));return c.displayName=ab(a),c},af=ae("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]),ag=ae("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);function ah({onClick:a}){let{data:b}=E({queryKey:["opencode-config","status"],queryFn:async()=>{let a=await fetch("/api/opencode-config/status");if(!a.ok)throw Error("Failed to fetch config status");return a.json()}});return b?.hasPlugin?(0,m.jsx)("button",{type:"button",onClick:a,className:"inline-flex items-center justify-center w-9 h-9 rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 dark:text-gray-400 dark:hover:text-gray-200 dark:hover:bg-zinc-800 transition-colors duration-200","aria-label":"OpenCode Settings",title:"OpenCode Settings",children:(0,m.jsx)(ag,{className:"w-5 h-5"})}):null}let ai=ae("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),aj=ae("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]),ak=ae("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]),al=ae("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]),am=ae("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);var an=a.i(12794),ao=r,ap=class extends ao.Subscribable{#a;#f=void 0;#y;#z;constructor(a,b){super(),this.#a=a,this.setOptions(b),this.bindMethods(),this.#A()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(a){let b=this.options;this.options=this.#a.defaultMutationOptions(a),(0,t.shallowEqualObjects)(this.options,b)||this.#a.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#y,observer:this}),b?.mutationKey&&this.options.mutationKey&&(0,t.hashKey)(b.mutationKey)!==(0,t.hashKey)(this.options.mutationKey)?this.reset():this.#y?.state.status==="pending"&&this.#y.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#y?.removeObserver(this)}onMutationUpdate(a){this.#A(),this.#x(a)}getCurrentResult(){return this.#f}reset(){this.#y?.removeObserver(this),this.#y=void 0,this.#A(),this.#x()}mutate(a,b){return this.#z=b,this.#y?.removeObserver(this),this.#y=this.#a.getMutationCache().build(this.#a,this.options),this.#y.addObserver(this),this.#y.execute(a)}#A(){let a=this.#y?.state??(0,an.getDefaultState)();this.#f={...a,isPending:"pending"===a.status,isSuccess:"success"===a.status,isError:"error"===a.status,isIdle:"idle"===a.status,mutate:this.mutate,reset:this.reset}}#x(a){p.notifyManager.batch(()=>{if(this.#z&&this.hasListeners()){let b=this.#f.variables,c=this.#f.context,d={client:this.#a,meta:this.options.meta,mutationKey:this.options.mutationKey};if(a?.type==="success"){try{this.#z.onSuccess?.(a.data,b,c,d)}catch(a){Promise.reject(a)}try{this.#z.onSettled?.(a.data,null,b,c,d)}catch(a){Promise.reject(a)}}else if(a?.type==="error"){try{this.#z.onError?.(a.error,b,c,d)}catch(a){Promise.reject(a)}try{this.#z.onSettled?.(void 0,a.error,b,c,d)}catch(a){Promise.reject(a)}}}this.listeners.forEach(a=>{a(this.#f)})})}};function aq(a,b){let c=(0,A.useQueryClient)(b),[d]=n.useState(()=>new ap(c,a));n.useEffect(()=>{d.setOptions(a)},[d,a]);let e=n.useSyncExternalStore(n.useCallback(a=>d.subscribe(p.notifyManager.batchCalls(a)),[d]),()=>d.getCurrentResult(),()=>d.getCurrentResult()),f=n.useCallback((a,b)=>{d.mutate(a,b).catch(t.noop)},[d]);if(e.error&&(0,t.shouldThrowError)(d.options.throwOnError,[e.error]))throw e.error;return{...e,mutate:f,mutateAsync:e.mutate}}let ar=ae("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]),as=ae("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]),at=ae("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]),au=ae("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]),av=ae("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]),aw=ae("layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]]),ax=[{key:"visual-engineering",name:"Visual Engineering",description:"Visual and UI component engineering tasks"},{key:"ultrabrain",name:"Ultrabrain",description:"Complex reasoning and deep analysis tasks"},{key:"deep",name:"Deep",description:"Deep research and comprehensive tasks"},{key:"artistry",name:"Artistry",description:"Creative and design-focused tasks"},{key:"quick",name:"Quick",description:"Fast, simple tasks requiring minimal processing"},{key:"unspecified-low",name:"Unspecified Low",description:"Default low-complexity tasks"},{key:"unspecified-high",name:"Unspecified High",description:"Default high-complexity tasks"},{key:"writing",name:"Writing",description:"Content creation and writing tasks"}];function ay({categoryKey:a,config:b,isBuiltIn:c,availableModels:d,onEdit:e,onDelete:f}){var g;let h,i=(h=ax.find(b=>b.key===a))||{key:a,name:a,description:"Custom category"},j=!!(b.model||b.variant),k=b.model&&d&&d.size>0&&!d.has(b.model),l=j?"bg-white border-zinc-200 dark:bg-zinc-900 dark:border-zinc-700 hover:border-zinc-300 dark:hover:border-zinc-600":"bg-zinc-50/50 border-zinc-200/50 dark:bg-zinc-900/50 dark:border-zinc-800/50 hover:border-zinc-300 dark:hover:border-zinc-600";return k&&(l="bg-amber-50/50 border-amber-200 dark:bg-amber-900/10 dark:border-amber-800/50 hover:border-amber-300 dark:hover:border-amber-700"),(0,m.jsxs)("div",{className:`
1
+ module.exports=[40777,a=>{"use strict";let b,c,d;var e,f,g,h,i,j,k,l,m=a.i(87924),n=a.i(72131),o=a.i(99745),p=a.i(18544),q=a.i(76644),r=a.i(33791),s=a.i(79715),t=a.i(42871),u=a.i(8361),v=class extends r.Subscribable{constructor(a,b){super(),this.options=b,this.#a=a,this.#b=null,this.#c=(0,s.pendingThenable)(),this.bindMethods(),this.setOptions(b)}#a;#d=void 0;#e=void 0;#f=void 0;#g;#h;#c;#b;#i;#j;#k;#l;#m;#n;#o=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#d.addObserver(this),w(this.#d,this.options)?this.#p():this.updateResult(),this.#q())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return x(this.#d,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return x(this.#d,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#r(),this.#s(),this.#d.removeObserver(this)}setOptions(a){let b=this.options,c=this.#d;if(this.options=this.#a.defaultQueryOptions(a),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled&&"function"!=typeof this.options.enabled&&"boolean"!=typeof(0,t.resolveEnabled)(this.options.enabled,this.#d))throw Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#t(),this.#d.setOptions(this.options),b._defaulted&&!(0,t.shallowEqualObjects)(this.options,b)&&this.#a.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#d,observer:this});let d=this.hasListeners();d&&y(this.#d,c,this.options,b)&&this.#p(),this.updateResult(),d&&(this.#d!==c||(0,t.resolveEnabled)(this.options.enabled,this.#d)!==(0,t.resolveEnabled)(b.enabled,this.#d)||(0,t.resolveStaleTime)(this.options.staleTime,this.#d)!==(0,t.resolveStaleTime)(b.staleTime,this.#d))&&this.#u();let e=this.#v();d&&(this.#d!==c||(0,t.resolveEnabled)(this.options.enabled,this.#d)!==(0,t.resolveEnabled)(b.enabled,this.#d)||e!==this.#n)&&this.#w(e)}getOptimisticResult(a){var b,c;let d=this.#a.getQueryCache().build(this.#a,a),e=this.createResult(d,a);return b=this,c=e,(0,t.shallowEqualObjects)(b.getCurrentResult(),c)||(this.#f=e,this.#h=this.options,this.#g=this.#d.state),e}getCurrentResult(){return this.#f}trackResult(a,b){return new Proxy(a,{get:(a,c)=>(this.trackProp(c),b?.(c),"promise"===c&&(this.trackProp("data"),this.options.experimental_prefetchInRender||"pending"!==this.#c.status||this.#c.reject(Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(a,c))})}trackProp(a){this.#o.add(a)}getCurrentQuery(){return this.#d}refetch({...a}={}){return this.fetch({...a})}fetchOptimistic(a){let b=this.#a.defaultQueryOptions(a),c=this.#a.getQueryCache().build(this.#a,b);return c.fetch().then(()=>this.createResult(c,b))}fetch(a){return this.#p({...a,cancelRefetch:a.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#f))}#p(a){this.#t();let b=this.#d.fetch(this.options,a);return a?.throwOnError||(b=b.catch(t.noop)),b}#u(){this.#r();let a=(0,t.resolveStaleTime)(this.options.staleTime,this.#d);if(t.isServer||this.#f.isStale||!(0,t.isValidTimeout)(a))return;let b=(0,t.timeUntilStale)(this.#f.dataUpdatedAt,a);this.#l=u.timeoutManager.setTimeout(()=>{this.#f.isStale||this.updateResult()},b+1)}#v(){return("function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.#d):this.options.refetchInterval)??!1}#w(a){this.#s(),this.#n=a,!t.isServer&&!1!==(0,t.resolveEnabled)(this.options.enabled,this.#d)&&(0,t.isValidTimeout)(this.#n)&&0!==this.#n&&(this.#m=u.timeoutManager.setInterval(()=>{(this.options.refetchIntervalInBackground||o.focusManager.isFocused())&&this.#p()},this.#n))}#q(){this.#u(),this.#w(this.#v())}#r(){this.#l&&(u.timeoutManager.clearTimeout(this.#l),this.#l=void 0)}#s(){this.#m&&(u.timeoutManager.clearInterval(this.#m),this.#m=void 0)}createResult(a,b){let c,d=this.#d,e=this.options,f=this.#f,g=this.#g,h=this.#h,i=a!==d?a.state:this.#e,{state:j}=a,k={...j},l=!1;if(b._optimisticResults){let c=this.hasListeners(),f=!c&&w(a,b),g=c&&y(a,d,b,e);(f||g)&&(k={...k,...(0,q.fetchState)(j.data,a.options)}),"isRestoring"===b._optimisticResults&&(k.fetchStatus="idle")}let{error:m,errorUpdatedAt:n,status:o}=k;c=k.data;let p=!1;if(void 0!==b.placeholderData&&void 0===c&&"pending"===o){let a;f?.isPlaceholderData&&b.placeholderData===h?.placeholderData?(a=f.data,p=!0):a="function"==typeof b.placeholderData?b.placeholderData(this.#k?.state.data,this.#k):b.placeholderData,void 0!==a&&(o="success",c=(0,t.replaceData)(f?.data,a,b),l=!0)}if(b.select&&void 0!==c&&!p)if(f&&c===g?.data&&b.select===this.#i)c=this.#j;else try{this.#i=b.select,c=b.select(c),c=(0,t.replaceData)(f?.data,c,b),this.#j=c,this.#b=null}catch(a){this.#b=a}this.#b&&(m=this.#b,c=this.#j,n=Date.now(),o="error");let r="fetching"===k.fetchStatus,u="pending"===o,v="error"===o,x=u&&r,A=void 0!==c,B={status:o,fetchStatus:k.fetchStatus,isPending:u,isSuccess:"success"===o,isError:v,isInitialLoading:x,isLoading:x,data:c,dataUpdatedAt:k.dataUpdatedAt,error:m,errorUpdatedAt:n,failureCount:k.fetchFailureCount,failureReason:k.fetchFailureReason,errorUpdateCount:k.errorUpdateCount,isFetched:k.dataUpdateCount>0||k.errorUpdateCount>0,isFetchedAfterMount:k.dataUpdateCount>i.dataUpdateCount||k.errorUpdateCount>i.errorUpdateCount,isFetching:r,isRefetching:r&&!u,isLoadingError:v&&!A,isPaused:"paused"===k.fetchStatus,isPlaceholderData:l,isRefetchError:v&&A,isStale:z(a,b),refetch:this.refetch,promise:this.#c,isEnabled:!1!==(0,t.resolveEnabled)(b.enabled,a)};if(this.options.experimental_prefetchInRender){let b=void 0!==B.data,c="error"===B.status&&!b,e=a=>{c?a.reject(B.error):b&&a.resolve(B.data)},f=()=>{e(this.#c=B.promise=(0,s.pendingThenable)())},g=this.#c;switch(g.status){case"pending":a.queryHash===d.queryHash&&e(g);break;case"fulfilled":(c||B.data!==g.value)&&f();break;case"rejected":c&&B.error===g.reason||f()}}return B}updateResult(){let a=this.#f,b=this.createResult(this.#d,this.options);if(this.#g=this.#d.state,this.#h=this.options,void 0!==this.#g.data&&(this.#k=this.#d),(0,t.shallowEqualObjects)(b,a))return;this.#f=b;let c=()=>{if(!a)return!0;let{notifyOnChangeProps:b}=this.options,c="function"==typeof b?b():b;if("all"===c||!c&&!this.#o.size)return!0;let d=new Set(c??this.#o);return this.options.throwOnError&&d.add("error"),Object.keys(this.#f).some(b=>this.#f[b]!==a[b]&&d.has(b))};this.#x({listeners:c()})}#t(){let a=this.#a.getQueryCache().build(this.#a,this.options);if(a===this.#d)return;let b=this.#d;this.#d=a,this.#e=a.state,this.hasListeners()&&(b?.removeObserver(this),a.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#q()}#x(a){p.notifyManager.batch(()=>{a.listeners&&this.listeners.forEach(a=>{a(this.#f)}),this.#a.getQueryCache().notify({query:this.#d,type:"observerResultsUpdated"})})}};function w(a,b){return!1!==(0,t.resolveEnabled)(b.enabled,a)&&void 0===a.state.data&&("error"!==a.state.status||!1!==b.retryOnMount)||void 0!==a.state.data&&x(a,b,b.refetchOnMount)}function x(a,b,c){if(!1!==(0,t.resolveEnabled)(b.enabled,a)&&"static"!==(0,t.resolveStaleTime)(b.staleTime,a)){let d="function"==typeof c?c(a):c;return"always"===d||!1!==d&&z(a,b)}return!1}function y(a,b,c,d){return(a!==b||!1===(0,t.resolveEnabled)(d.enabled,a))&&(!c.suspense||"error"!==a.state.status)&&z(a,c)}function z(a,b){return!1!==(0,t.resolveEnabled)(b.enabled,a)&&a.isStaleByTime((0,t.resolveStaleTime)(b.staleTime,a))}var A=a.i(37927),B=n.createContext((c=!1,{clearReset:()=>{c=!1},reset:()=>{c=!0},isReset:()=>c})),C=n.createContext(!1);C.Provider;var D=(a,b,c)=>b.fetchOptimistic(a).catch(()=>{c.clearReset()});function E(a,b){return function(a,b,c){let d,e=n.useContext(C),f=n.useContext(B),g=(0,A.useQueryClient)(c),h=g.defaultQueryOptions(a);g.getDefaultOptions().queries?._experimental_beforeQuery?.(h);let i=g.getQueryCache().get(h.queryHash);if(h._optimisticResults=e?"isRestoring":"optimistic",h.suspense){let a=a=>"static"===a?a:Math.max(a??1e3,1e3),b=h.staleTime;h.staleTime="function"==typeof b?(...c)=>a(b(...c)):a(b),"number"==typeof h.gcTime&&(h.gcTime=Math.max(h.gcTime,1e3))}d=i?.state.error&&"function"==typeof h.throwOnError?(0,t.shouldThrowError)(h.throwOnError,[i.state.error,i]):h.throwOnError,(h.suspense||h.experimental_prefetchInRender||d)&&!f.isReset()&&(h.retryOnMount=!1),n.useEffect(()=>{f.clearReset()},[f]);let j=!g.getQueryCache().get(h.queryHash),[k]=n.useState(()=>new b(g,h)),l=k.getOptimisticResult(h),m=!e&&!1!==a.subscribed;if(n.useSyncExternalStore(n.useCallback(a=>{let b=m?k.subscribe(p.notifyManager.batchCalls(a)):t.noop;return k.updateResult(),b},[k,m]),()=>k.getCurrentResult(),()=>k.getCurrentResult()),n.useEffect(()=>{k.setOptions(h)},[h,k]),h?.suspense&&l.isPending)throw D(h,k,f);if((({result:a,errorResetBoundary:b,throwOnError:c,query:d,suspense:e})=>a.isError&&!b.isReset()&&!a.isFetching&&d&&(e&&void 0===a.data||(0,t.shouldThrowError)(c,[a.error,d])))({result:l,errorResetBoundary:f,throwOnError:h.throwOnError,query:i,suspense:h.suspense}))throw l.error;if(g.getDefaultOptions().queries?._experimental_afterQuery?.(h,l),h.experimental_prefetchInRender&&!t.isServer&&l.isLoading&&l.isFetching&&!e){let a=j?D(h,k,f):i?.promise;a?.catch(t.noop).finally(()=>{k.updateResult()})}return h.notifyOnChangeProps?l:k.trackResult(l)}(a,v,b)}function F(a){let b=Date.now()-a,c=Math.floor(b/6e4),d=Math.floor(b/36e5),e=Math.floor(b/864e5);return c<1?"<1m":d<1?`${c}m`:e<1?`${d}h`:`${e}d`}function G(a,b){return b?[...a,`Reason: ${b}`].join("\n"):a.join("\n")}function H({status:a,waitingForUser:b}){if(b)return(0,m.jsxs)("span",{className:"relative flex h-2 w-2 flex-shrink-0",title:"Waiting",children:[(0,m.jsx)("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-amber-400 opacity-75"}),(0,m.jsx)("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-amber-500"})]});switch(a){case"busy":return(0,m.jsxs)("span",{className:"relative flex h-2 w-2 flex-shrink-0",title:"Running",children:[(0,m.jsx)("span",{className:"animate-pulse absolute inline-flex h-full w-full rounded-full bg-emerald-400 opacity-75"}),(0,m.jsx)("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-emerald-500"})]});case"retry":return(0,m.jsxs)("span",{className:"relative flex h-2 w-2 flex-shrink-0",title:"Retrying",children:[(0,m.jsx)("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-red-400 opacity-75"}),(0,m.jsx)("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-red-500"})]});default:return(0,m.jsx)("span",{className:"inline-flex rounded-full h-2 w-2 bg-gray-400 flex-shrink-0",title:"Idle"})}}function I({cards:a,readOnly:b=!1}){let c=(0,A.useQueryClient)(),[d,e]=(0,n.useState)(!1),f=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!d)return;let a=a=>{f.current&&!f.current.contains(a.target)&&e(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[d]);let g=a.some(a=>"done"!==a.status),h=async b=>{b.stopPropagation();let d=a.filter(a=>"done"!==a.status);await Promise.all(d.map(a=>fetch(`/api/sessions/${a.id}/archive`,{method:"POST"}))),e(!1),c.invalidateQueries({queryKey:["sessions"]})},i=async b=>{b.stopPropagation(),confirm(`Delete ${a.length} session(s)? This cannot be undone.`)&&(await Promise.all(a.map(a=>fetch(`/api/sessions/${a.id}/delete`,{method:"POST"}))),e(!1),c.invalidateQueries({queryKey:["sessions"]}))};return b?null:(0,m.jsxs)("div",{className:"relative",ref:f,children:[(0,m.jsx)("button",{type:"button",className:"w-5 h-5 flex items-center justify-center rounded text-gray-400 hover:text-gray-600 hover:bg-gray-200 dark:text-gray-500 dark:hover:text-gray-300 dark:hover:bg-zinc-600 transition-colors",onClick:a=>{a.stopPropagation(),e(!d)},title:"Batch actions",children:(0,m.jsx)("svg",{className:"w-3.5 h-3.5",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:(0,m.jsx)("path",{d:"M5 10a2 2 0 110 4 2 2 0 010-4zm7 0a2 2 0 110 4 2 2 0 010-4zm7 0a2 2 0 110 4 2 2 0 010-4z"})})}),d&&(0,m.jsxs)("div",{className:"absolute right-0 top-6 w-32 rounded-md border border-gray-200 bg-white shadow-lg dark:border-zinc-700 dark:bg-zinc-900 z-20",children:[g&&(0,m.jsx)("button",{type:"button",className:"w-full text-left px-3 py-1.5 text-xs text-gray-700 hover:bg-gray-50 dark:text-gray-200 dark:hover:bg-zinc-800",onClick:h,children:"Archive all"}),(0,m.jsx)("button",{type:"button",className:"w-full text-left px-3 py-1.5 text-xs text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",onClick:i,children:"Delete all"})]})]})}function J({cardId:a,archived:b}){let c=(0,A.useQueryClient)(),[d,e]=(0,n.useState)(!1),f=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!d)return;let a=a=>{f.current&&!f.current.contains(a.target)&&e(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[d]);let g=async b=>{b.stopPropagation();try{await fetch(`/api/sessions/${a}/archive`,{method:"POST"})}finally{e(!1),c.invalidateQueries({queryKey:["sessions"]})}},h=async b=>{b.stopPropagation();try{await fetch(`/api/sessions/${a}/delete`,{method:"POST"})}finally{e(!1),c.invalidateQueries({queryKey:["sessions"]})}};return(0,m.jsxs)("div",{className:"relative flex-shrink-0",ref:f,children:[(0,m.jsx)("button",{type:"button",className:"w-5 h-5 flex items-center justify-center rounded text-gray-400 hover:text-gray-600 hover:bg-gray-200 dark:text-gray-500 dark:hover:text-gray-300 dark:hover:bg-zinc-600 transition-colors",onClick:a=>{a.stopPropagation(),e(!d)},title:"Actions",children:(0,m.jsx)("svg",{className:"w-3.5 h-3.5",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",children:(0,m.jsx)("path",{d:"M5 10a2 2 0 110 4 2 2 0 010-4zm7 0a2 2 0 110 4 2 2 0 010-4zm7 0a2 2 0 110 4 2 2 0 010-4z"})})}),d&&(0,m.jsxs)("div",{className:"absolute right-0 top-6 w-28 rounded-md border border-gray-200 bg-white shadow-lg dark:border-zinc-700 dark:bg-zinc-900 z-20",children:[b?null:(0,m.jsx)("button",{type:"button",className:"w-full text-left px-3 py-1.5 text-xs text-gray-700 hover:bg-gray-50 dark:text-gray-200 dark:hover:bg-zinc-800",onClick:g,children:"Archive"}),(0,m.jsx)("button",{type:"button",className:"w-full text-left px-3 py-1.5 text-xs text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-900/20",onClick:h,children:"Delete"})]})]})}function K({card:a,isLast:b,readOnly:c=!1}){let[d,e]=(0,n.useState)(!0),f=(a.children||[]).filter(a=>"idle"!==a.realTimeStatus||a.waitingForUser),g=f.length>0,h=G([a.title||"Untitled Session",`Active ${F(a.updatedAt)} ago`,`Started ${F(a.createdAt)} ago`],a.debugReason);return(0,m.jsxs)("div",{className:b?"":"border-b border-gray-50 dark:border-zinc-700/30",children:[(0,m.jsxs)("div",{className:"group/row flex items-center gap-2.5 px-3 py-2 hover:bg-gray-50 dark:hover:bg-zinc-700/30 transition-colors",title:h,children:[g&&(0,m.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),e(!d)},className:"w-3 h-3 flex items-center justify-center text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300 flex-shrink-0 transition-transform",title:d?"Collapse subagents":"Expand subagents",children:(0,m.jsx)("svg",{className:`w-2.5 h-2.5 transition-transform duration-150 ${d?"rotate-90":""}`,viewBox:"0 0 6 10",fill:"currentColor","aria-hidden":"true",children:(0,m.jsx)("path",{d:"M1 1l4 4-4 4",stroke:"currentColor",strokeWidth:"1.5",fill:"none",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,m.jsx)(H,{status:a.opencodeStatus,waitingForUser:a.waitingForUser}),(0,m.jsx)("span",{className:"text-sm text-gray-700 dark:text-gray-300 truncate flex-1 min-w-0",children:a.title||"Untitled Session"}),g&&!d&&(0,m.jsxs)("span",{className:"text-[9px] font-medium text-gray-400 dark:text-gray-500 bg-gray-100 dark:bg-zinc-700 px-1 py-0.5 rounded flex-shrink-0",children:[f.length," sub"]}),(0,m.jsx)("span",{className:"text-[10px] text-gray-400 dark:text-gray-500 flex-shrink-0 tabular-nums group-hover/row:hidden",children:F(a.updatedAt)}),c?null:(0,m.jsx)("div",{className:"hidden group-hover/row:flex flex-shrink-0",children:(0,m.jsx)(J,{cardId:a.id,archived:"done"===a.status})})]}),g&&d&&(0,m.jsx)("div",{className:"bg-gray-50/50 dark:bg-zinc-800/30",children:f.map((a,b)=>(0,m.jsxs)("div",{className:"flex items-center gap-2 pl-8 pr-3 py-1.5 hover:bg-gray-100/50 dark:hover:bg-zinc-700/20 transition-colors",title:G([a.title||"Subagent"],a.debugReason),children:[(0,m.jsx)("span",{className:"text-gray-300 dark:text-zinc-600 text-xs flex-shrink-0 font-mono leading-none",children:b===f.length-1?"└":"├"}),(0,m.jsx)(H,{status:a.realTimeStatus,waitingForUser:a.waitingForUser}),(0,m.jsx)("span",{className:"text-xs text-gray-500 dark:text-gray-400 truncate flex-1 min-w-0",children:a.title||"Subagent"})]},a.id))})]})}function L({projectName:a,branch:b,cards:c,readOnly:d=!1}){let[e,f]=(0,n.useState)(()=>"vscode"),[g]=(0,n.useState)(()=>"");return(0,m.jsxs)("article",{className:"w-full bg-white dark:bg-zinc-800 rounded-xl shadow-sm border border-gray-200 dark:border-zinc-700 hover:shadow-lg hover:border-gray-300 dark:hover:border-zinc-600 transition-all duration-200 overflow-visible",children:[(0,m.jsxs)("div",{className:"group/header flex items-center gap-2 px-3 py-2.5 hover:bg-gray-50 dark:hover:bg-zinc-700/30 transition-colors",children:[(0,m.jsx)("svg",{className:"w-4 h-4 text-blue-500 dark:text-blue-400 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M3 7v10a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-6l-2-2H5a2 2 0 00-2 2z"})}),(0,m.jsx)("span",{className:"text-sm font-semibold text-gray-800 dark:text-gray-200 truncate flex-1",children:a}),b&&(0,m.jsx)("span",{className:"text-[10px] bg-gray-100 dark:bg-zinc-700 text-gray-500 dark:text-gray-400 px-1.5 py-0.5 rounded flex-shrink-0",children:b}),c.length>1&&(0,m.jsx)("span",{className:"text-[10px] text-gray-400 dark:text-gray-500 font-medium bg-gray-100 dark:bg-zinc-700 px-1.5 py-0.5 rounded-full flex-shrink-0",children:c.length}),!d&&(0,m.jsx)("div",{className:"hidden group-hover/header:flex flex-shrink-0",children:(0,m.jsx)(I,{cards:c,readOnly:d})})]}),(0,m.jsx)("div",{className:"border-t border-gray-100 dark:border-zinc-700/50",children:c.map((a,b)=>(0,m.jsx)(K,{card:a,isLast:b===c.length-1,readOnly:d},a.id))}),(0,m.jsxs)("div",{className:"flex items-center justify-end gap-1.5 px-3 py-1.5 border-t border-gray-100 dark:border-zinc-700/50 bg-gray-50/50 dark:bg-zinc-800/50",children:[(0,m.jsxs)("select",{className:"text-[10px] rounded border border-gray-200 bg-white px-1 py-0.5 text-gray-500 dark:border-zinc-700 dark:bg-zinc-900 dark:text-gray-400 focus:outline-none",value:e,onClick:a=>a.stopPropagation(),onChange:a=>{f(a.target.value),window.localStorage.setItem("vibepulse:open-tool",a.target.value)},title:"Select open tool",children:[(0,m.jsx)("option",{value:"vscode",children:"VSCode"}),(0,m.jsx)("option",{value:"antigravity",children:"Antigravity"})]}),(0,m.jsxs)("button",{type:"button",onClick:()=>{let a,b=c[0]?.directory;if(!b)return;let d="antigravity"===e?`antigravity://file${b}`:(a=encodeURI(b.replace(/\\/g,"/")),g?`vscode://vscode-remote/ssh-remote+${g}${a.startsWith("/")?"":"/"}${a}`:`vscode://file${a.startsWith("/")?a:`/${a}`}`);window.location.href=d},className:"flex items-center gap-1 px-2 py-0.5 rounded-md text-[10px] font-medium text-gray-500 hover:text-blue-600 hover:bg-blue-50 dark:text-gray-400 dark:hover:text-blue-400 dark:hover:bg-blue-900/20 transition-colors",title:"Open project",children:[(0,m.jsx)("svg",{className:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"})}),"Open"]})]})]})}function M(a){let b,c,d=a.children||[],e=Date.now(),f=a.realTimeStatus||"idle",g=d.some(a=>{let b=a.realTimeStatus||"idle";return"busy"===b||"retry"===b}),h="retry"===f?"retry":"busy"===f||g?"busy":"idle",i=d.some(a=>{let b=a.realTimeStatus||"idle";if(!("retry"===b||"idle"!==b&&a.waitingForUser))return!1;let c=a.time?.updated||e;return e-c<6e5}),j="retry"===h||"busy"===h&&(!!a.waitingForUser||i),k=d.find(a=>{let b=a.realTimeStatus||"idle";return"busy"===b||"retry"===b}),l=d.find(a=>{let b=a.realTimeStatus||"idle";return"retry"===b||"idle"!==b&&!!a.waitingForUser}),m=j?a.debugReason||l?.debugReason||k?.debugReason:"busy"===h?a.debugReason||k?.debugReason:a.debugReason;return c=a.time?.archived?"done":j?"review":"busy"===h?"busy":"idle",{id:a.id,sessionSlug:a.slug,title:a.title||"Untitled Session",directory:a.directory,projectName:a.projectName||"Unknown Project",branch:a.branch,agents:(b=a.slug.split("_")).length>=3?b[b.length-1].split("-").filter(Boolean):[],messageCount:a.messageCount||0,status:c,opencodeStatus:h,waitingForUser:j,debugReason:m,todosTotal:0,todosCompleted:0,createdAt:a.time.created,updatedAt:a.time.updated,archivedAt:a.time.archived,sortOrder:0,children:d.map(a=>({id:a.id,title:a.title,realTimeStatus:a.realTimeStatus||"idle",waitingForUser:"retry"===(a.realTimeStatus||"idle")||"busy"===(a.realTimeStatus||"idle")&&!!a.waitingForUser,debugReason:a.debugReason,createdAt:a.time?.created||0,updatedAt:a.time?.updated||0}))}}function N(){return(0,m.jsx)("div",{className:"h-[calc(100vh-8rem)] overflow-x-auto",children:(0,m.jsx)("div",{className:"flex gap-4 h-full min-w-max p-4",children:[1,2,3,4].map(a=>(0,m.jsxs)("div",{className:"flex-shrink-0 w-80 bg-gray-100 dark:bg-zinc-800 rounded-lg p-4 animate-pulse",children:[(0,m.jsx)("div",{className:"h-6 bg-gray-200 dark:bg-zinc-700 rounded w-24 mb-4"}),(0,m.jsx)("div",{className:"space-y-3",children:[1,2,3].map(a=>(0,m.jsxs)("div",{className:"p-4 bg-white dark:bg-zinc-900 rounded-lg shadow border border-gray-200 dark:border-zinc-700",children:[(0,m.jsx)("div",{className:"h-5 bg-gray-200 dark:bg-zinc-700 rounded w-3/4 mb-3"}),(0,m.jsxs)("div",{className:"flex gap-2",children:[(0,m.jsx)("div",{className:"h-4 bg-gray-200 dark:bg-zinc-700 rounded w-20"}),(0,m.jsx)("div",{className:"h-4 bg-gray-200 dark:bg-zinc-700 rounded w-16"})]})]},a))})]},a))})})}let O=null,P=new Map;function Q(a){let b=Date.now();return!(b-(P.get(a)??0)<1e4)&&(P.set(a,b),!0)}function R(a,b,c){Q(`warn:${a}`)&&console.warn(`[VibePulse sound] ${b}`,c)}function S(){return O||(O=new AudioContext),O}function T(a,b,c,d){var e;0;try{let b=S(),e=()=>{try{d(b,b.currentTime)}catch(b){R(a,c,b)}};if("running"===b.state)return void e();b.resume().then(()=>{"running"===b.state?e():R(`${a}-state`,`${c} (AudioContext not running after resume)`,Error(b.state))}).catch(b=>{R(`${a}-resume`,`${c} (AudioContext resume failed)`,b)})}catch(b){R(a,c,b)}}function U(){try{let a=S(),b=()=>{let b=a.createBuffer(1,1,22050),c=a.createBufferSource();c.buffer=b,c.connect(a.destination),c.start(0)};if("running"===a.state)return void b();a.resume().then(()=>{"running"===a.state?b():R("unlock-state","unlockAudio() resume did not reach running state",Error(a.state))}).catch(a=>{R("unlock-resume","Failed to resume AudioContext in unlockAudio()",a)})}catch(a){R("unlock-audio","unlockAudio() failed",a)}}function V(){T("play-attention","Skipped playAttentionSound() because muted","playAttentionSound() failed",(a,b)=>{let c=a.createOscillator(),d=a.createGain();c.type="sine",c.frequency.value=523,d.gain.setValueAtTime(.3,b),d.gain.exponentialRampToValueAtTime(.001,b+.2),c.connect(d),d.connect(a.destination),c.start(b),c.stop(b+.2);let e=a.createOscillator(),f=a.createGain();e.type="sine",e.frequency.value=659,f.gain.setValueAtTime(.3,b+.15),f.gain.exponentialRampToValueAtTime(.001,b+.4),e.connect(f),f.connect(a.destination),e.start(b+.15),e.stop(b+.4);let g=a.createOscillator(),h=a.createGain();g.type="sine",g.frequency.value=784,h.gain.setValueAtTime(.25,b+.3),h.gain.exponentialRampToValueAtTime(.001,b+.55),g.connect(h),h.connect(a.destination),g.start(b+.3),g.stop(b+.55)})}function W(){T("play-complete","Skipped playCompleteSound() because muted","playCompleteSound() failed",(a,b)=>{let c=a.createOscillator(),d=a.createGain();c.type="sine",c.frequency.setValueAtTime(659,b),c.frequency.exponentialRampToValueAtTime(988,b+.18),d.gain.setValueAtTime(.22,b),d.gain.exponentialRampToValueAtTime(.001,b+.22),c.connect(d),d.connect(a.destination),c.start(b),c.stop(b+.22);let e=a.createOscillator(),f=a.createGain();e.type="sine",e.frequency.setValueAtTime(988,b+.12),e.frequency.exponentialRampToValueAtTime(1318,b+.32),f.gain.setValueAtTime(.18,b+.12),f.gain.exponentialRampToValueAtTime(.001,b+.36),e.connect(f),f.connect(a.destination),e.start(b+.12),e.stop(b+.36)})}let X=[{id:"idle",title:"Idle"},{id:"busy",title:"Busy"},{id:"review",title:"Needs Attention"},{id:"done",title:"Archived"}];function Y({filterDays:a,onProcessHintsChange:b}){let c=(0,n.useRef)({}),d=(0,n.useRef)(!1),e=(0,n.useRef)({}),f=(0,n.useRef)(!1),[g,h]=(0,n.useState)("idle"),[i,j]=(0,n.useState)(null),{data:k}=E({queryKey:["opencode-config"],queryFn:async()=>{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch config");return a.json()}}),l=k?.vibepulse?.sessionsRefreshIntervalMs,o="number"==typeof l&&Number.isFinite(l)&&l>0?l:5e3,{data:p,isLoading:q,error:r,dataUpdatedAt:s,refetch:t,isFetching:u}=E({queryKey:["sessions"],queryFn:async({signal:a})=>{try{let b=await fetch("/api/sessions",{signal:a});if(!b.ok){let a=null;try{a=await b.json()}catch{a=null}let c=503===b.status&&a?.error==="OpenCode server not found",d=Error(c?a?.error||"OpenCode server not found":a?.error||`Failed to load sessions (${b.status})`);throw d.kind=c?"opencode_unavailable":"request_failed",d.hint=a?.hint,d.status=b.status,d}return b.json()}catch(b){if(b instanceof Error&&b.kind)throw b;let a=Error("Unable to connect to session service");throw a.kind="request_failed",a}},refetchInterval:a=>"fetching"!==a.state.fetchStatus&&o,refetchIntervalInBackground:!0,refetchOnReconnect:!0});(0,n.useEffect)(()=>{},[]),(0,n.useEffect)(()=>{},[p?.processHints,p?.sessions]);let v=async()=>{try{await navigator.clipboard.writeText("opencode --port <PORT>"),h("copied"),setTimeout(()=>h("idle"),1500)}catch{h("failed"),setTimeout(()=>h("idle"),2e3)}},w=(0,n.useMemo)(()=>p?.sessions?p.sessions:r&&i?.sessions?.length?i.sessions:[],[r,p?.sessions,i?.sessions]),x=!!r&&!p?.sessions&&!!i?.sessions?.length,y=(0,n.useMemo)(()=>p?.processHints?p.processHints:x&&i?.processHints?i.processHints:[],[p?.processHints,x,i?.processHints]);(0,n.useEffect)(()=>{b?.(y)},[b,y]);let z=(0,n.useMemo)(()=>{if(!w.length)return[];let a={};return w.map(b=>{let c=!!a[b.id];return{...b,waitingForUser:!!b.waitingForUser||"retry"===b.realTimeStatus&&c}})},[w]);(0,n.useEffect)(()=>{},[z]),(0,n.useEffect)(()=>{let a={},b=!1;for(let e of z){let f=!!e.waitingForUser;a[e.id]=f,d.current&&f&&!c.current[e.id]&&(b=!0)}if(c.current=a,!d.current){d.current=!0;return}b&&setTimeout(()=>V(),250)},[z]),(0,n.useEffect)(()=>{let a={};for(let b of z){let c="busy"===b.realTimeStatus||"retry"===b.realTimeStatus?b.realTimeStatus:"idle";a[b.id]=c}if(!f.current){f.current=!0,e.current=a;return}let b=!1;for(let[c,d]of Object.entries(a)){let a=e.current[c];if(("busy"===a||"retry"===a)&&"idle"===d){b=!0;break}}e.current=a,b&&!x&&setTimeout(()=>W(),250)},[z,x]);let A=(0,n.useMemo)(()=>{let b=z.map(M);if(0===a)return b;let c=s-24*a*36e5;return b.filter(a=>a.updatedAt>=c)},[s,z,a]);if(q)return(0,m.jsx)(N,{});if(r&&!x){let a=r?.kind==="opencode_unavailable",b=a?r?.hint||"Run OpenCode with an exposed API port, for example `opencode --port <PORT>`.":r?.message||"An error occurred while loading sessions";return(0,m.jsx)("div",{className:"flex-1 flex items-center justify-center p-8",children:(0,m.jsxs)("div",{className:"max-w-md w-full text-center",children:[(0,m.jsx)("div",{className:"flex items-center justify-center w-12 h-12 mx-auto mb-4 bg-red-100 dark:bg-red-900/30 rounded-full",children:(0,m.jsx)("svg",{className:"w-6 h-6 text-red-600 dark:text-red-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})}),(0,m.jsx)("h2",{className:"text-lg font-semibold text-gray-900 dark:text-white mb-2",children:a?"OpenCode is not running":"Failed to load sessions"}),(0,m.jsx)("p",{className:"text-gray-600 dark:text-gray-400 mb-4",children:b}),(0,m.jsxs)("div",{className:"flex items-center justify-center gap-2",children:[(0,m.jsx)("button",{type:"button",onClick:()=>t(),className:"px-3 py-1.5 bg-blue-600 hover:bg-blue-700 text-white text-sm font-medium rounded-md transition-colors disabled:opacity-50 disabled:cursor-not-allowed",disabled:u,children:u?"Retrying...":"Retry"}),a?(0,m.jsx)("button",{type:"button",onClick:v,className:"px-3 py-1.5 bg-gray-100 hover:bg-gray-200 dark:bg-zinc-800 dark:hover:bg-zinc-700 text-gray-700 dark:text-gray-300 text-sm font-medium rounded-md transition-colors",children:"copied"===g?"Copied":"failed"===g?"Copy Failed":"Copy Start Command"}):null]})]})})}return A&&0!==A.length?(0,m.jsxs)("div",{className:"flex-1 overflow-x-auto scrollbar-thin scroll-smooth",children:[x?(0,m.jsx)("div",{className:"px-4 pt-4 pb-0",children:(0,m.jsx)("div",{className:"rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-amber-800 dark:border-amber-900/40 dark:bg-amber-900/20 dark:text-amber-200",children:(0,m.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium",children:[(0,m.jsx)("span",{className:"inline-flex items-center rounded-full bg-amber-100 px-2 py-0.5 text-[10px] uppercase tracking-wide dark:bg-amber-900/40",children:"Stale Data"}),(0,m.jsxs)("span",{children:["Last seen at ",i?new Date(i.savedAt).toLocaleString():"--"]}),(0,m.jsx)("span",{className:"text-amber-700/80 dark:text-amber-300/80",children:"Read-only snapshot while OpenCode is unreachable."})]})})}):null,(0,m.jsx)("div",{className:"flex gap-6 h-full min-w-max p-4",children:X.map(a=>{let b=A.filter(b=>b.status===a.id).sort((a,b)=>a.sortOrder-b.sortOrder),c=(a=>{let b=new Map;for(let c of a){let a=c.projectName||"Unknown Project";b.has(a)||b.set(a,[]),b.get(a).push(c)}return b})(b);return(0,m.jsxs)("div",{className:"flex-shrink-0 w-80 bg-gray-100 dark:bg-zinc-800/80 rounded-xl p-4 flex flex-col shadow-sm",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between mb-4 pb-3 border-b border-gray-200 dark:border-zinc-700",children:[(0,m.jsx)("h2",{className:"font-semibold text-gray-700 dark:text-gray-300",children:a.title}),(0,m.jsx)("span",{className:"px-2.5 py-0.5 bg-gray-200 dark:bg-zinc-700 text-gray-600 dark:text-gray-400 text-xs font-medium rounded-full",children:b.length})]}),(0,m.jsx)("div",{className:"flex-1 overflow-y-auto scrollbar-thin pr-1",children:(0,m.jsx)("div",{className:"space-y-3",children:Array.from(c.entries()).map(([a,b])=>(0,m.jsx)(L,{projectName:a,branch:b[0].branch,cards:b,readOnly:x},a))})})]},a.id)})})]}):(0,m.jsx)("div",{className:"flex-1 flex items-center justify-center p-8",children:(0,m.jsxs)("div",{className:"max-w-md w-full text-center",children:[(0,m.jsx)("div",{className:"flex items-center justify-center w-12 h-12 mx-auto mb-4 bg-gray-100 dark:bg-zinc-800 rounded-full",children:(0,m.jsx)("svg",{className:"w-6 h-6 text-gray-500 dark:text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"})})}),(0,m.jsx)("h2",{className:"text-lg font-semibold text-gray-900 dark:text-white mb-2",children:"No sessions yet"}),(0,m.jsx)("p",{className:"text-gray-600 dark:text-gray-400 mb-4",children:"OpenCode is running, but no sessions are available."}),(0,m.jsx)("p",{className:"text-sm text-gray-500 dark:text-gray-500",children:"Start a conversation in OpenCode and this board will update automatically."})]})})}var Z=n;class $ extends Z.Component{constructor(a){super(a),this.state={hasError:!1}}static getDerivedStateFromError(a){return{hasError:!0,error:a}}componentDidCatch(a,b){console.error("ErrorBoundary caught an error:",a,b)}render(){return this.state.hasError?(0,m.jsx)("div",{className:"min-h-screen flex items-center justify-center bg-zinc-50 dark:bg-black",children:(0,m.jsxs)("div",{className:"max-w-md w-full mx-4 p-8 bg-white dark:bg-zinc-900 rounded-lg shadow-lg border border-gray-200 dark:border-zinc-800",children:[(0,m.jsx)("div",{className:"flex items-center justify-center w-12 h-12 mx-auto mb-4 bg-red-100 dark:bg-red-900/30 rounded-full",children:(0,m.jsx)("svg",{className:"w-6 h-6 text-red-600 dark:text-red-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})}),(0,m.jsx)("h2",{className:"text-xl font-semibold text-center text-gray-900 dark:text-white mb-2",children:"Something went wrong"}),(0,m.jsx)("p",{className:"text-center text-gray-600 dark:text-gray-400 mb-6",children:"An unexpected error occurred. Please try refreshing the page."}),this.state.error&&(0,m.jsx)("div",{className:"p-3 bg-gray-100 dark:bg-zinc-800 rounded text-sm text-gray-700 dark:text-gray-300 font-mono overflow-auto",children:this.state.error.message}),(0,m.jsx)("button",{onClick:()=>window.location.reload(),className:"mt-6 w-full py-2 px-4 bg-blue-600 hover:bg-blue-700 text-white font-medium rounded-lg transition-colors",children:"Refresh Page"})]})}):this.props.children}}function _(a,b){}function aa(a){let b=Date.now();return{...a,slug:a.slug||a.id,title:a.title||"Untitled Session",directory:a.directory||"",projectName:a.projectName||function(a){if(!a)return"Unknown Project";let b=a.replace(/\\/g,"/").split("/").filter(Boolean);return b[b.length-1]||"Unknown Project"}(a.directory),time:a.time||{created:b,updated:b},realTimeStatus:a.realTimeStatus||"busy",waitingForUser:!!a.waitingForUser,children:a.children||[]}}let ab=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),ac=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var ad={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let ae=(0,n.forwardRef)(({color:a="currentColor",size:b=24,strokeWidth:c=2,absoluteStrokeWidth:d,className:e="",children:f,iconNode:g,...h},i)=>(0,n.createElement)("svg",{ref:i,...ad,width:b,height:b,stroke:a,strokeWidth:d?24*Number(c)/Number(b):c,className:ab("lucide",e),...!f&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(h)&&{"aria-hidden":"true"},...h},[...g.map(([a,b])=>(0,n.createElement)(a,b)),...Array.isArray(f)?f:[f]])),af=(a,b)=>{let c=(0,n.forwardRef)(({className:c,...d},e)=>(0,n.createElement)(ae,{ref:e,iconNode:b,className:ab(`lucide-${ac(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,c),...d}));return c.displayName=ac(a),c},ag=af("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]),ah=af("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);function ai({onClick:a}){let{data:b}=E({queryKey:["opencode-config","status"],queryFn:async()=>{let a=await fetch("/api/opencode-config/status");if(!a.ok)throw Error("Failed to fetch config status");return a.json()}});return b?.hasPlugin?(0,m.jsx)("button",{type:"button",onClick:a,className:"inline-flex items-center justify-center w-9 h-9 rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 dark:text-gray-400 dark:hover:text-gray-200 dark:hover:bg-zinc-800 transition-colors duration-200","aria-label":"OpenCode Settings",title:"OpenCode Settings",children:(0,m.jsx)(ah,{className:"w-5 h-5"})}):null}let aj=af("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),ak=af("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]),al=af("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]),am=af("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]),an=af("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);var ao=a.i(12794),ap=r,aq=class extends ap.Subscribable{#a;#f=void 0;#y;#z;constructor(a,b){super(),this.#a=a,this.setOptions(b),this.bindMethods(),this.#A()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(a){let b=this.options;this.options=this.#a.defaultMutationOptions(a),(0,t.shallowEqualObjects)(this.options,b)||this.#a.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#y,observer:this}),b?.mutationKey&&this.options.mutationKey&&(0,t.hashKey)(b.mutationKey)!==(0,t.hashKey)(this.options.mutationKey)?this.reset():this.#y?.state.status==="pending"&&this.#y.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#y?.removeObserver(this)}onMutationUpdate(a){this.#A(),this.#x(a)}getCurrentResult(){return this.#f}reset(){this.#y?.removeObserver(this),this.#y=void 0,this.#A(),this.#x()}mutate(a,b){return this.#z=b,this.#y?.removeObserver(this),this.#y=this.#a.getMutationCache().build(this.#a,this.options),this.#y.addObserver(this),this.#y.execute(a)}#A(){let a=this.#y?.state??(0,ao.getDefaultState)();this.#f={...a,isPending:"pending"===a.status,isSuccess:"success"===a.status,isError:"error"===a.status,isIdle:"idle"===a.status,mutate:this.mutate,reset:this.reset}}#x(a){p.notifyManager.batch(()=>{if(this.#z&&this.hasListeners()){let b=this.#f.variables,c=this.#f.context,d={client:this.#a,meta:this.options.meta,mutationKey:this.options.mutationKey};if(a?.type==="success"){try{this.#z.onSuccess?.(a.data,b,c,d)}catch(a){Promise.reject(a)}try{this.#z.onSettled?.(a.data,null,b,c,d)}catch(a){Promise.reject(a)}}else if(a?.type==="error"){try{this.#z.onError?.(a.error,b,c,d)}catch(a){Promise.reject(a)}try{this.#z.onSettled?.(void 0,a.error,b,c,d)}catch(a){Promise.reject(a)}}}this.listeners.forEach(a=>{a(this.#f)})})}};function ar(a,b){let c=(0,A.useQueryClient)(b),[d]=n.useState(()=>new aq(c,a));n.useEffect(()=>{d.setOptions(a)},[d,a]);let e=n.useSyncExternalStore(n.useCallback(a=>d.subscribe(p.notifyManager.batchCalls(a)),[d]),()=>d.getCurrentResult(),()=>d.getCurrentResult()),f=n.useCallback((a,b)=>{d.mutate(a,b).catch(t.noop)},[d]);if(e.error&&(0,t.shouldThrowError)(d.options.throwOnError,[e.error]))throw e.error;return{...e,mutate:f,mutateAsync:e.mutate}}let as=af("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]),at=af("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]),au=af("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]),av=af("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]),aw=af("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]),ax=af("layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]]),ay=[{key:"visual-engineering",name:"Visual Engineering",description:"Visual and UI component engineering tasks"},{key:"ultrabrain",name:"Ultrabrain",description:"Complex reasoning and deep analysis tasks"},{key:"deep",name:"Deep",description:"Deep research and comprehensive tasks"},{key:"artistry",name:"Artistry",description:"Creative and design-focused tasks"},{key:"quick",name:"Quick",description:"Fast, simple tasks requiring minimal processing"},{key:"unspecified-low",name:"Unspecified Low",description:"Default low-complexity tasks"},{key:"unspecified-high",name:"Unspecified High",description:"Default high-complexity tasks"},{key:"writing",name:"Writing",description:"Content creation and writing tasks"}];function az({categoryKey:a,config:b,isBuiltIn:c,availableModels:d,onEdit:e,onDelete:f}){var g;let h,i=(h=ay.find(b=>b.key===a))||{key:a,name:a,description:"Custom category"},j=!!(b.model||b.variant),k=b.model&&d&&d.size>0&&!d.has(b.model),l=j?"bg-white border-zinc-200 dark:bg-zinc-900 dark:border-zinc-700 hover:border-zinc-300 dark:hover:border-zinc-600":"bg-zinc-50/50 border-zinc-200/50 dark:bg-zinc-900/50 dark:border-zinc-800/50 hover:border-zinc-300 dark:hover:border-zinc-600";return k&&(l="bg-amber-50/50 border-amber-200 dark:bg-amber-900/10 dark:border-amber-800/50 hover:border-amber-300 dark:hover:border-amber-700"),(0,m.jsxs)("div",{className:`
3
2
  group relative flex items-center justify-between p-4 rounded-lg border flex-col sm:flex-row items-start sm:items-center gap-4
4
3
  transition-all duration-200
5
4
  ${l}
6
- `,children:[(0,m.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,m.jsxs)("div",{className:"flex items-center gap-2",children:[(0,m.jsx)("h4",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100 truncate",children:i.name}),!c&&(0,m.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-[10px] font-medium bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300",children:"Custom"}),k&&(0,m.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded text-[10px] font-medium bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:[(0,m.jsx)(am,{className:"h-3 w-3"}),"Model Unavailable"]}),!k&&j&&(0,m.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-[10px] font-medium bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-300",children:"Configured"}),!j&&(0,m.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded text-[10px] font-medium bg-zinc-100 text-zinc-500 dark:bg-zinc-800 dark:text-zinc-400",children:[(0,m.jsx)(as,{className:"h-3 w-3"}),"Built-in fallback"]})]}),(0,m.jsx)("p",{className:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400 truncate",children:i.description}),(0,m.jsxs)("div",{className:"mt-2 flex items-center gap-3 text-xs",children:[(0,m.jsxs)("span",{className:"text-zinc-600 dark:text-zinc-400",children:[(0,m.jsx)("span",{className:"text-zinc-400 dark:text-zinc-500",children:"Model:"})," ",function(a){if(!a)return"Default model";let b=a.split("/");return b[b.length-1]}(b.model)]}),b.variant&&(0,m.jsxs)("span",{className:"text-zinc-600 dark:text-zinc-400",children:[(0,m.jsx)("span",{className:"text-zinc-400 dark:text-zinc-500",children:"Variant:"})," ",(g=b.variant)?g:"—"]})]})]}),(0,m.jsxs)("div",{className:"flex items-center gap-1 ml-4 opacity-0 group-hover:opacity-100 transition-opacity",children:[(0,m.jsx)("button",{type:"button",onClick:()=>e(a,b),className:"p-1.5 rounded-md text-zinc-500 hover:text-zinc-900 hover:bg-zinc-100 dark:text-zinc-400 dark:hover:text-zinc-100 dark:hover:bg-zinc-800 transition-colors","aria-label":`Edit ${i.name} category`,title:`Edit ${i.name}`,children:(0,m.jsx)(au,{className:"h-4 w-4"})}),!c&&(0,m.jsx)("button",{type:"button",onClick:()=>f(a),className:"p-1.5 rounded-md text-zinc-500 hover:text-red-600 hover:bg-red-50 dark:text-zinc-400 dark:hover:text-red-400 dark:hover:bg-red-900/20 transition-colors","aria-label":`Delete ${i.name} category`,title:`Delete ${i.name}`,children:(0,m.jsx)(av,{className:"h-4 w-4"})})]})]})}function az({categories:a,onEdit:b,onDelete:c}){let{data:d}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models");if(!a.ok)throw Error("Failed to fetch models");return a.json()}}),e=n.useMemo(()=>d?new Set(d.models):null,[d]),{builtIn:f,custom:g}=n.useMemo(()=>{let b=[],c=[];return ax.forEach(c=>{b.push({key:c.key,config:a[c.key]||{}})}),Object.entries(a).forEach(([a,b])=>{ax.some(b=>b.key===a)||c.push({key:a,config:b})}),{builtIn:b,custom:c}},[a]),h=g.length>0;return(0,m.jsxs)("div",{className:"space-y-6",children:[(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,m.jsx)(aw,{className:"h-4 w-4 text-zinc-500 dark:text-zinc-400"}),(0,m.jsx)("h3",{className:"text-sm font-semibold text-zinc-900 dark:text-zinc-100",children:"Built-in Categories"}),(0,m.jsxs)("span",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:["(",f.length,")"]})]}),(0,m.jsx)("div",{className:"space-y-2",children:f.map(({key:a,config:d})=>(0,m.jsx)(ay,{categoryKey:a,config:d,isBuiltIn:!0,availableModels:e,onEdit:b,onDelete:c},a))})]}),h&&(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,m.jsx)(aw,{className:"h-4 w-4 text-blue-500"}),(0,m.jsx)("h3",{className:"text-sm font-semibold text-zinc-900 dark:text-zinc-100",children:"Custom Categories"}),(0,m.jsxs)("span",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:["(",g.length,")"]})]}),(0,m.jsx)("div",{className:"space-y-2",children:g.map(({key:a,config:d})=>(0,m.jsx)(ay,{categoryKey:a,config:d,isBuiltIn:!1,availableModels:e,onEdit:b,onDelete:c},a))})]}),0===f.length&&!h&&(0,m.jsxs)("div",{className:"text-center py-8",children:[(0,m.jsx)(aw,{className:"h-8 w-8 mx-auto text-zinc-300 dark:text-zinc-600 mb-2"}),(0,m.jsx)("p",{className:"text-sm text-zinc-500 dark:text-zinc-400",children:"No categories configured"})]})]})}var aA=a=>a instanceof Date,aB=a=>null==a,aC=a=>!aB(a)&&!Array.isArray(a)&&"object"==typeof a&&!aA(a),aD=a=>aC(a)&&a.target?"checkbox"===a.target.type?a.target.checked:a.target.value:a,aE=(a,b)=>a.has(b.substring(0,b.search(/\.\d+(\.|$)/))||b);function aF(a){let b;if(a instanceof Date)return new Date(a);"u">typeof FileList&&FileList;let c=Array.isArray(a);if(!c&&!(aC(a)&&aC(b=a.constructor&&a.constructor.prototype)&&b.hasOwnProperty("isPrototypeOf")))return a;let d=c?[]:Object.create(Object.getPrototypeOf(a));for(let b in a)Object.prototype.hasOwnProperty.call(a,b)&&(d[b]=aF(a[b]));return d}var aG=a=>void 0===a,aH=a=>Array.isArray(a)?a.filter(Boolean):[],aI=a=>aH(a.replace(/["|']|\]/g,"").split(/\.|\[/)),aJ=(a,b,c)=>{if(!b||!aC(a))return c;let d=(/^\w*$/.test(b)?[b]:aI(b)).reduce((a,b)=>aB(a)?a:a[b],a);return aG(d)||d===a?aG(a[b])?c:a[b]:d},aK=a=>"function"==typeof a,aL=(a,b,c)=>{let d=-1,e=/^\w*$/.test(b)?[b]:aI(b),f=e.length,g=f-1;for(;++d<f;){let b=e[d],f=c;if(d!==g){let c=a[b];f=aC(c)||Array.isArray(c)?c:isNaN(+e[d+1])?{}:[]}if("__proto__"===b||"constructor"===b||"prototype"===b)return;a[b]=f,a=a[b]}};let aM="blur",aN="onChange",aO="onSubmit",aP="maxLength",aQ="minLength",aR="pattern",aS="required",aT=n.default.createContext(null);aT.displayName="HookFormControlContext";var aU=(a,b,c,d=!0)=>{let e={defaultValues:b._defaultValues};for(let f in a)Object.defineProperty(e,f,{get:()=>("all"!==b._proxyFormState[f]&&(b._proxyFormState[f]=!d||"all"),c&&(c[f]=!0),a[f])});return e};let aV=n.default.useEffect;var aW=a=>"string"==typeof a,aX=(a,b,c,d,e)=>aW(a)?(d&&b.watch.add(a),aJ(c,a,e)):Array.isArray(a)?a.map(a=>(d&&b.watch.add(a),aJ(c,a))):(d&&(b.watchAll=!0),c),aY=a=>aB(a)||"object"!=typeof a;function aZ(a,b,c=new WeakSet){if(aY(a)||aY(b))return Object.is(a,b);if(aA(a)&&aA(b))return Object.is(a.getTime(),b.getTime());let d=Object.keys(a),e=Object.keys(b);if(d.length!==e.length)return!1;if(c.has(a)||c.has(b))return!0;for(let f of(c.add(a),c.add(b),d)){let d=a[f];if(!e.includes(f))return!1;if("ref"!==f){let a=b[f];if(aA(d)&&aA(a)||aC(d)&&aC(a)||Array.isArray(d)&&Array.isArray(a)?!aZ(d,a,c):!Object.is(d,a))return!1}}return!0}let a$=a=>a.render(function(a){let b=n.default.useContext(aT),{name:c,disabled:d,control:e=b,shouldUnregister:f,defaultValue:g,exact:h=!0}=a,i=aE(e._names.array,c),j=n.default.useMemo(()=>aJ(e._formValues,c,aJ(e._defaultValues,c,g)),[e,c,g]),k=function(a){let b=n.default.useContext(aT),{control:c=b,name:d,defaultValue:e,disabled:f,exact:g,compute:h}=a||{},i=n.default.useRef(e),j=n.default.useRef(h),k=n.default.useRef(void 0),l=n.default.useRef(c),m=n.default.useRef(d);j.current=h;let[o,p]=n.default.useState(()=>{let a=c._getWatch(d,i.current);return j.current?j.current(a):a}),q=n.default.useCallback(a=>{let b=aX(d,c._names,a||c._formValues,!1,i.current);return j.current?j.current(b):b},[c._formValues,c._names,d]),r=n.default.useCallback(a=>{if(!f){let b=aX(d,c._names,a||c._formValues,!1,i.current);if(j.current){let a=j.current(b);aZ(a,k.current)||(p(a),k.current=a)}else p(b)}},[c._formValues,c._names,f,d]);aV(()=>(l.current===c&&aZ(m.current,d)||(l.current=c,m.current=d,r()),c._subscribe({name:d,formState:{values:!0},exact:g,callback:a=>{r(a.values)}})),[c,g,d,r]),n.default.useEffect(()=>c._removeUnmounted());let s=l.current!==c,t=m.current,u=n.default.useMemo(()=>{if(f)return null;let a=!s&&!aZ(t,d);return s||a?q():null},[f,s,d,t,q]);return null!==u?u:o}({control:e,name:c,defaultValue:j,exact:h}),l=function(a){let b=n.default.useContext(aT),{control:c=b,disabled:d,name:e,exact:f}=a||{},[g,h]=n.default.useState(c._formState),i=n.default.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return aV(()=>c._subscribe({name:e,formState:i.current,exact:f,callback:a=>{d||h({...c._formState,...a})}}),[e,d,f]),n.default.useEffect(()=>{i.current.isValid&&c._setValid(!0)},[c]),n.default.useMemo(()=>aU(g,c,i.current,!1),[g,c])}({control:e,name:c,exact:h}),m=n.default.useRef(a),o=n.default.useRef(void 0),p=n.default.useRef(e.register(c,{...a.rules,value:k,..."boolean"==typeof a.disabled?{disabled:a.disabled}:{}}));m.current=a;let q=n.default.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!aJ(l.errors,c)},isDirty:{enumerable:!0,get:()=>!!aJ(l.dirtyFields,c)},isTouched:{enumerable:!0,get:()=>!!aJ(l.touchedFields,c)},isValidating:{enumerable:!0,get:()=>!!aJ(l.validatingFields,c)},error:{enumerable:!0,get:()=>aJ(l.errors,c)}}),[l,c]),r=n.default.useCallback(a=>p.current.onChange({target:{value:aD(a),name:c},type:"change"}),[c]),s=n.default.useCallback(()=>p.current.onBlur({target:{value:aJ(e._formValues,c),name:c},type:aM}),[c,e._formValues]),t=n.default.useCallback(a=>{let b=aJ(e._fields,c);b&&b._f&&a&&(b._f.ref={focus:()=>aK(a.focus)&&a.focus(),select:()=>aK(a.select)&&a.select(),setCustomValidity:b=>aK(a.setCustomValidity)&&a.setCustomValidity(b),reportValidity:()=>aK(a.reportValidity)&&a.reportValidity()})},[e._fields,c]),u=n.default.useMemo(()=>({name:c,value:k,..."boolean"==typeof d||l.disabled?{disabled:l.disabled||d}:{},onChange:r,onBlur:s,ref:t}),[c,d,l.disabled,r,s,t,k]);return n.default.useEffect(()=>{let a=e._options.shouldUnregister||f,b=o.current;b&&b!==c&&!i&&e.unregister(b),e.register(c,{...m.current.rules,..."boolean"==typeof m.current.disabled?{disabled:m.current.disabled}:{}});let d=(a,b)=>{let c=aJ(e._fields,a);c&&c._f&&(c._f.mount=b)};if(d(c,!0),a){let a=aF(aJ(e._options.defaultValues,c,m.current.defaultValue));aL(e._defaultValues,c,a),aG(aJ(e._formValues,c))&&aL(e._formValues,c,a)}return i||e.register(c),o.current=c,()=>{(i?a&&!e._state.action:a)?e.unregister(c):d(c,!1)}},[c,e,i,f]),n.default.useEffect(()=>{e._setDisabledField({disabled:d,name:c})},[d,c,e]),n.default.useMemo(()=>({field:u,formState:l,fieldState:q}),[u,l,q])}(a));n.default.createContext(null).displayName="HookFormContext";var a_=(a,b,c,d,e)=>b?{...c[a],types:{...c[a]&&c[a].types?c[a].types:{},[d]:e||!0}}:{},a0=a=>Array.isArray(a)?a:[a],a1=()=>{let a=[];return{get observers(){return a},next:b=>{for(let c of a)c.next&&c.next(b)},subscribe:b=>(a.push(b),{unsubscribe:()=>{a=a.filter(a=>a!==b)}}),unsubscribe:()=>{a=[]}}},a2=a=>aC(a)&&!Object.keys(a).length,a3=a=>!1;function a4(a,b){let c=Array.isArray(b)?b:/^\w*$/.test(b)?[b]:aI(b),d=1===c.length?a:function(a,b){let c=b.slice(0,-1).length,d=0;for(;d<c;)a=aG(a)?d++:a[b[d++]];return a}(a,c),e=c.length-1,f=c[e];return d&&delete d[f],0!==e&&(aC(d)&&a2(d)||Array.isArray(d)&&function(a){for(let b in a)if(a.hasOwnProperty(b)&&!aG(a[b]))return!1;return!0}(d))&&a4(a,c.slice(0,-1)),a}function a5(a){return Array.isArray(a)||aC(a)&&!(a=>{for(let b in a)if(aK(a[b]))return!0;return!1})(a)}function a6(a,b={}){for(let c in a){let d=a[c];a5(d)?(b[c]=Array.isArray(d)?[]:{},a6(d,b[c])):aG(d)||(b[c]=!0)}return b}function a7(a,b,c){for(let d in c||(c=a6(b)),a){let e=a[d];if(a5(e))aG(b)||aY(c[d])?c[d]=a6(e,Array.isArray(e)?[]:{}):a7(e,aB(b)?{}:b[d],c[d]);else{let a=b[d];c[d]=!aZ(e,a)}}return c}let a8={value:!1,isValid:!1},a9={value:!0,isValid:!0};var ba=a=>{if(Array.isArray(a)){if(a.length>1){let b=a.filter(a=>a&&a.checked&&!a.disabled).map(a=>a.value);return{value:b,isValid:!!b.length}}return a[0].checked&&!a[0].disabled?a[0].attributes&&!aG(a[0].attributes.value)?aG(a[0].value)||""===a[0].value?a9:{value:a[0].value,isValid:!0}:a9:a8}return a8},bb=(a,{valueAsNumber:b,valueAsDate:c,setValueAs:d})=>aG(a)?a:b?""===a?NaN:a?+a:a:c&&aW(a)?new Date(a):d?d(a):a;let bc={isValid:!1,value:null};var bd=a=>Array.isArray(a)?a.reduce((a,b)=>b&&b.checked&&!b.disabled?{isValid:!0,value:b.value}:a,bc):bc;function be(a){let b=a.ref;return"file"===b.type?b.files:"radio"===b.type?bd(a.refs).value:"select-multiple"===b.type?[...b.selectedOptions].map(({value:a})=>a):"checkbox"===b.type?ba(a.refs).value:bb(aG(b.value)?a.ref.value:b.value,a)}var bf=a=>aG(a)?a:a instanceof RegExp?a.source:aC(a)?a.value instanceof RegExp?a.value.source:a.value:a,bg=a=>({isOnSubmit:!a||a===aO,isOnBlur:"onBlur"===a,isOnChange:a===aN,isOnAll:"all"===a,isOnTouch:"onTouched"===a});let bh="AsyncFunction";var bi=a=>!!a&&!!a.validate&&!!(aK(a.validate)&&a.validate.constructor.name===bh||aC(a.validate)&&Object.values(a.validate).find(a=>a.constructor.name===bh)),bj=(a,b,c)=>!c&&(b.watchAll||b.watch.has(a)||[...b.watch].some(b=>a.startsWith(b)&&/^\.\w+/.test(a.slice(b.length))));let bk=(a,b,c,d)=>{for(let e of c||Object.keys(a)){let c=aJ(a,e);if(c){let{_f:a,...f}=c;if(a){if(a.refs&&a.refs[0]&&b(a.refs[0],e)&&!d)return!0;else if(a.ref&&b(a.ref,a.name)&&!d)return!0;else if(bk(f,b))break}else if(aC(f)&&bk(f,b))break}}};function bl(a,b,c){let d=aJ(a,c);if(d||/^\w*$/.test(c))return{error:d,name:c};let e=c.split(".");for(;e.length;){let d=e.join("."),f=aJ(b,d),g=aJ(a,d);if(f&&!Array.isArray(f)&&c!==d)break;if(g&&g.type)return{name:d,error:g};if(g&&g.root&&g.root.type)return{name:`${d}.root`,error:g.root};e.pop()}return{name:c}}var bm=(a,b,c)=>{let d=a0(aJ(a,c));return aL(d,"root",b[c]),aL(a,c,d),a};function bn(a,b,c="validate"){if(aW(a)||Array.isArray(a)&&a.every(aW)||"boolean"==typeof a&&!a)return{type:c,message:aW(a)?a:"",ref:b}}var bo=a=>!aC(a)||a instanceof RegExp?{value:a,message:""}:a,bp=async(a,b,c,d,e,f)=>{let{ref:g,refs:h,required:i,maxLength:j,minLength:k,min:l,max:m,pattern:n,validate:o,name:p,valueAsNumber:q,mount:r}=a._f,s=aJ(c,p);if(!r||b.has(p))return{};let t=h?h[0]:g,u=a=>{e&&t.reportValidity&&(t.setCustomValidity("boolean"==typeof a?"":a||""),t.reportValidity())},v={},w="radio"===g.type,x="checkbox"===g.type,y=(q||"file"===g.type)&&aG(g.value)&&aG(s)||""===s||Array.isArray(s)&&!s.length,z=a_.bind(null,p,d,v),A=(a,b,c,d=aP,e=aQ)=>{let f=a?b:c;v[p]={type:a?d:e,message:f,ref:g,...z(a?d:e,f)}};if(f?!Array.isArray(s)||!s.length:i&&(!(w||x)&&(y||aB(s))||"boolean"==typeof s&&!s||x&&!ba(h).isValid||w&&!bd(h).isValid)){let{value:a,message:b}=aW(i)?{value:!!i,message:i}:bo(i);if(a&&(v[p]={type:aS,message:b,ref:t,...z(aS,b)},!d))return u(b),v}if(!y&&(!aB(l)||!aB(m))){let a,b,c=bo(m),e=bo(l);if(aB(s)||isNaN(s)){let d=g.valueAsDate||new Date(s),f=a=>new Date(new Date().toDateString()+" "+a),h="time"==g.type,i="week"==g.type;aW(c.value)&&s&&(a=h?f(s)>f(c.value):i?s>c.value:d>new Date(c.value)),aW(e.value)&&s&&(b=h?f(s)<f(e.value):i?s<e.value:d<new Date(e.value))}else{let d=g.valueAsNumber||(s?+s:s);aB(c.value)||(a=d>c.value),aB(e.value)||(b=d<e.value)}if((a||b)&&(A(!!a,c.message,e.message,"max","min"),!d))return u(v[p].message),v}if((j||k)&&!y&&(aW(s)||f&&Array.isArray(s))){let a=bo(j),b=bo(k),c=!aB(a.value)&&s.length>+a.value,e=!aB(b.value)&&s.length<+b.value;if((c||e)&&(A(c,a.message,b.message),!d))return u(v[p].message),v}if(n&&!y&&aW(s)){let{value:a,message:b}=bo(n);if(a instanceof RegExp&&!s.match(a)&&(v[p]={type:aR,message:b,ref:g,...z(aR,b)},!d))return u(b),v}if(o){if(aK(o)){let a=bn(await o(s,c),t);if(a&&(v[p]={...a,...z("validate",a.message)},!d))return u(a.message),v}else if(aC(o)){let a={};for(let b in o){if(!a2(a)&&!d)break;let e=bn(await o[b](s,c),t,b);e&&(a={...e,...z(b,e.message)},u(e.message),d&&(v[p]=a))}if(!a2(a)&&(v[p]={ref:t,...a},!d))return v}}return u(!0),v};let bq={mode:aO,reValidateMode:aN,shouldFocusError:!0};function br(a={}){let b=n.default.useRef(void 0),c=n.default.useRef(void 0),[d,e]=n.default.useState({isDirty:!1,isValidating:!1,isLoading:aK(a.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:a.errors||{},disabled:a.disabled||!1,isReady:!1,defaultValues:aK(a.defaultValues)?void 0:a.defaultValues});if(!b.current)if(a.formControl)b.current={...a.formControl,formState:d},a.defaultValues&&!aK(a.defaultValues)&&a.formControl.reset(a.defaultValues,a.resetOptions);else{let{formControl:c,...e}=function(a={}){let b,c={...bq,...a},d={submitCount:0,isDirty:!1,isReady:!1,isLoading:aK(c.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:c.errors||{},disabled:c.disabled||!1},e={},f=(aC(c.defaultValues)||aC(c.values))&&aF(c.defaultValues||c.values)||{},g=c.shouldUnregister?{}:aF(f),h={action:!1,mount:!1,watch:!1,keepIsValid:!1},i={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},j=0,k={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},l={...k},m={...l},n={array:a1(),state:a1()},o="all"===c.criteriaMode,p=async a=>{if(!h.keepIsValid&&!c.disabled&&(l.isValid||m.isValid||a)){let a;c.resolver?(a=a2((await t()).errors),q()):a=await v(e,!0),a!==d.isValid&&n.state.next({isValid:a})}},q=(a,b)=>{!c.disabled&&(l.isValidating||l.validatingFields||m.isValidating||m.validatingFields)&&((a||Array.from(i.mount)).forEach(a=>{a&&(b?aL(d.validatingFields,a,b):a4(d.validatingFields,a))}),n.state.next({validatingFields:d.validatingFields,isValidating:!a2(d.validatingFields)}))},r=(a,b,c,d)=>{let i=aJ(e,a);if(i){let e=aJ(g,a,aG(c)?aJ(f,a):c);aG(e)||d&&d.defaultChecked||b?aL(g,a,b?e:be(i._f)):y(a,e),h.mount&&!h.action&&p()}},s=(a,b,e,g,h)=>{let i=!1,j=!1,k={name:a};if(!c.disabled){if(!e||g){(l.isDirty||m.isDirty)&&(j=d.isDirty,d.isDirty=k.isDirty=w(),i=j!==k.isDirty);let c=aZ(aJ(f,a),b);j=!!aJ(d.dirtyFields,a),c?a4(d.dirtyFields,a):aL(d.dirtyFields,a,!0),k.dirtyFields=d.dirtyFields,i=i||(l.dirtyFields||m.dirtyFields)&&!c!==j}if(e){let b=aJ(d.touchedFields,a);b||(aL(d.touchedFields,a,e),k.touchedFields=d.touchedFields,i=i||(l.touchedFields||m.touchedFields)&&b!==e)}i&&h&&n.state.next(k)}return i?k:{}},t=async a=>(q(a,!0),await c.resolver(g,c.context,((a,b,c,d)=>{let e={};for(let c of a){let a=aJ(b,c);a&&aL(e,c,a._f)}return{criteriaMode:c,names:[...a],fields:e,shouldUseNativeValidation:d}})(a||i.mount,e,c.criteriaMode,c.shouldUseNativeValidation))),u=async a=>{let{errors:b}=await t(a);if(q(a),a)for(let c of a){let a=aJ(b,c);a?aL(d.errors,c,a):a4(d.errors,c)}else d.errors=b;return b},v=async(b,e,f={valid:!0})=>{for(let h in b){let j=b[h];if(j){let{_f:b,...h}=j;if(b){let h=i.array.has(b.name),k=j._f&&bi(j._f);k&&l.validatingFields&&q([b.name],!0);let m=await bp(j,i.disabled,g,o,c.shouldUseNativeValidation&&!e,h);if(k&&l.validatingFields&&q([b.name]),m[b.name]&&(f.valid=!1,e||a.shouldUseNativeValidation))break;e||(aJ(m,b.name)?h?bm(d.errors,m,b.name):aL(d.errors,b.name,m[b.name]):a4(d.errors,b.name))}a2(h)||await v(h,e,f)}}return f.valid},w=(a,b)=>!c.disabled&&(a&&b&&aL(g,a,b),!aZ(E(),f)),x=(a,b,c)=>aX(a,i,{...h.mount?g:aG(b)?f:aW(a)?{[a]:b}:b},c,b),y=(a,b,c={})=>{let d=aJ(e,a),f=b;if(d){let c=d._f;c&&(c.disabled||aL(g,a,bb(b,c)),c.ref,f=b,"select-multiple"===c.ref.type?[...c.ref.options].forEach(a=>a.selected=f.includes(a.value)):c.refs?"checkbox"===c.ref.type?c.refs.forEach(a=>{a.defaultChecked&&a.disabled||(Array.isArray(f)?a.checked=!!f.find(b=>b===a.value):a.checked=f===a.value||!!f)}):c.refs.forEach(a=>a.checked=a.value===f):"file"===c.ref.type?c.ref.value="":(c.ref.value=f,c.ref.type||n.state.next({name:a,values:aF(g)})))}(c.shouldDirty||c.shouldTouch)&&s(a,f,c.shouldTouch,c.shouldDirty,!0),c.shouldValidate&&D(a)},z=(a,b,c)=>{for(let d in b){if(!b.hasOwnProperty(d))return;let f=b[d],g=a+"."+d,h=aJ(e,g);(i.array.has(a)||aC(f)||h&&!h._f)&&!aA(f)?z(g,f,c):y(g,f,c)}},A=(a,b,c={})=>{let j=aJ(e,a),k=i.array.has(a),o=aF(b);aL(g,a,o),k?(n.array.next({name:a,values:aF(g)}),(l.isDirty||l.dirtyFields||m.isDirty||m.dirtyFields)&&c.shouldDirty&&n.state.next({name:a,dirtyFields:a7(f,g),isDirty:w(a,o)})):!j||j._f||aB(o)?y(a,o,c):z(a,o,c),bj(a,i)?n.state.next({...d,name:a,values:aF(g)}):n.state.next({name:h.mount?a:void 0,values:aF(g)})},B=async a=>{h.mount=!0;let f=a.target,k=f.name,r=!0,u=aJ(e,k),w=a=>{r=Number.isNaN(a)||aA(a)&&isNaN(a.getTime())||aZ(a,aJ(g,k,a))},x=bg(c.mode),y=bg(c.reValidateMode);if(u){var z,A,B,C,E;let h,I,J,K=f.type?be(u._f):aD(a),L=a.type===aM||"focusout"===a.type,M=!((J=u._f).mount&&(J.required||J.min||J.max||J.maxLength||J.minLength||J.pattern||J.validate))&&!c.resolver&&!aJ(d.errors,k)&&!u._f.deps||(z=L,A=aJ(d.touchedFields,k),B=d.isSubmitted,C=y,!(E=x).isOnAll&&(!B&&E.isOnTouch?!(A||z):(B?C.isOnBlur:E.isOnBlur)?!z:(B?!C.isOnChange:!E.isOnChange)||z)),N=bj(k,i,L);aL(g,k,K),L?f&&f.readOnly||(u._f.onBlur&&u._f.onBlur(a),b&&b(0)):u._f.onChange&&u._f.onChange(a);let O=s(k,K,L),P=!a2(O)||N;if(L||n.state.next({name:k,type:a.type,values:aF(g)}),M)return(l.isValid||m.isValid)&&("onBlur"===c.mode?L&&p():L||p()),P&&n.state.next({name:k,...N?{}:O});if(!L&&N&&n.state.next({...d}),c.resolver){let{errors:a}=await t([k]);if(q([k]),w(K),r){let b=bl(d.errors,e,k),c=bl(a,e,b.name||k);h=c.error,k=c.name,I=a2(a)}}else q([k],!0),h=(await bp(u,i.disabled,g,o,c.shouldUseNativeValidation))[k],q([k]),w(K),r&&(h?I=!1:(l.isValid||m.isValid)&&(I=await v(e,!0)));if(r){u._f.deps&&(!Array.isArray(u._f.deps)||u._f.deps.length>0)&&D(u._f.deps);var F=k,G=I,H=h;let a=aJ(d.errors,F),e=(l.isValid||m.isValid)&&"boolean"==typeof G&&d.isValid!==G;if(c.delayError&&H){let a;a=()=>{aL(d.errors,F,H),n.state.next({errors:d.errors})},(b=b=>{clearTimeout(j),j=setTimeout(a,b)})(c.delayError)}else clearTimeout(j),b=null,H?aL(d.errors,F,H):a4(d.errors,F);if((H?!aZ(a,H):a)||!a2(O)||e){let a={...O,...e&&"boolean"==typeof G?{isValid:G}:{},errors:d.errors,name:F};d={...d,...a},n.state.next(a)}}}},C=(a,b)=>{if(aJ(d.errors,b)&&a.focus)return a.focus(),1},D=async(a,b={})=>{let f,g,h=a0(a);if(c.resolver){let b=await u(aG(a)?a:h);f=a2(b),g=a?!h.some(a=>aJ(b,a)):f}else a?((g=(await Promise.all(h.map(async a=>{let b=aJ(e,a);return await v(b&&b._f?{[a]:b}:b)}))).every(Boolean))||d.isValid)&&p():g=f=await v(e);return n.state.next({...!aW(a)||(l.isValid||m.isValid)&&f!==d.isValid?{}:{name:a},...c.resolver||!a?{isValid:f}:{},errors:d.errors}),b.shouldFocus&&!g&&bk(e,C,a?h:i.mount),g},E=(a,b)=>{let c={...h.mount?g:f};return b&&(c=function a(b,c){let d={};for(let e in b)if(b.hasOwnProperty(e)){let f=b[e],g=c[e];if(f&&aC(f)&&g){let b=a(f,g);aC(b)&&(d[e]=b)}else b[e]&&(d[e]=g)}return d}(b.dirtyFields?d.dirtyFields:d.touchedFields,c)),aG(a)?c:aW(a)?aJ(c,a):a.map(a=>aJ(c,a))},F=(a,b)=>({invalid:!!aJ((b||d).errors,a),isDirty:!!aJ((b||d).dirtyFields,a),error:aJ((b||d).errors,a),isValidating:!!aJ(d.validatingFields,a),isTouched:!!aJ((b||d).touchedFields,a)}),G=(a,b,c)=>{let f=(aJ(e,a,{_f:{}})._f||{}).ref,{ref:g,message:h,type:i,...j}=aJ(d.errors,a)||{};aL(d.errors,a,{...j,...b,ref:f}),n.state.next({name:a,errors:d.errors,isValid:!1}),c&&c.shouldFocus&&f&&f.focus&&f.focus()},H=a=>n.state.subscribe({next:b=>{let c,e,h;c=a.name,e=b.name,h=a.exact,(!c||!e||c===e||a0(c).some(a=>a&&(h?a===e:a.startsWith(e)||e.startsWith(a))))&&((a,b,c,d)=>{c(a);let{name:e,...f}=a;return a2(f)||Object.keys(f).length>=Object.keys(b).length||Object.keys(f).find(a=>b[a]===(!d||"all"))})(b,a.formState||l,P,a.reRenderRoot)&&a.callback({values:{...g},...d,...b,defaultValues:f})}}).unsubscribe,I=(a,b={})=>{for(let h of a?a0(a):i.mount)i.mount.delete(h),i.array.delete(h),b.keepValue||(a4(e,h),a4(g,h)),b.keepError||a4(d.errors,h),b.keepDirty||a4(d.dirtyFields,h),b.keepTouched||a4(d.touchedFields,h),b.keepIsValidating||a4(d.validatingFields,h),c.shouldUnregister||b.keepDefaultValue||a4(f,h);n.state.next({values:aF(g)}),n.state.next({...d,...!b.keepDirty?{}:{isDirty:w()}}),b.keepIsValid||p()},J=({disabled:a,name:b})=>{if("boolean"==typeof a&&h.mount||a||i.disabled.has(b)){let c=i.disabled.has(b);a?i.disabled.add(b):i.disabled.delete(b),!!a!==c&&h.mount&&!h.action&&p()}},K=(a,b={})=>{let d=aJ(e,a),g="boolean"==typeof b.disabled||"boolean"==typeof c.disabled;return(aL(e,a,{...d||{},_f:{...d&&d._f?d._f:{ref:{name:a}},name:a,mount:!0,...b}}),i.mount.add(a),d)?J({disabled:"boolean"==typeof b.disabled?b.disabled:c.disabled,name:a}):r(a,!0,b.value),{...g?{disabled:b.disabled||c.disabled}:{},...c.progressive?{required:!!b.required,min:bf(b.min),max:bf(b.max),minLength:bf(b.minLength),maxLength:bf(b.maxLength),pattern:bf(b.pattern)}:{},name:a,onChange:B,onBlur:B,ref:g=>{if(g){let c;K(a,b),d=aJ(e,a);let h=aG(g.value)&&g.querySelectorAll&&g.querySelectorAll("input,select,textarea")[0]||g,i="radio"===(c=h).type||"checkbox"===c.type,j=d._f.refs||[];(i?j.find(a=>a===h):h===d._f.ref)||(aL(e,a,{_f:{...d._f,...i?{refs:[...j.filter(a3),h,...Array.isArray(aJ(f,a))?[{}]:[]],ref:{type:h.type,name:a}}:{ref:h}}}),r(a,!1,void 0,h))}else(d=aJ(e,a,{}))._f&&(d._f.mount=!1),(c.shouldUnregister||b.shouldUnregister)&&!(aE(i.array,a)&&h.action)&&i.unMount.add(a)}}},L=()=>c.shouldFocusError&&bk(e,C,i.mount),M=(a,b)=>async f=>{let h;f&&(f.preventDefault&&f.preventDefault(),f.persist&&f.persist());let j=aF(g);if(n.state.next({isSubmitting:!0}),c.resolver){let{errors:a,values:b}=await t();q(),d.errors=a,j=aF(b)}else await v(e);if(i.disabled.size)for(let a of i.disabled)a4(j,a);if(a4(d.errors,"root"),a2(d.errors)){n.state.next({errors:{}});try{await a(j,f)}catch(a){h=a}}else b&&await b({...d.errors},f),L(),setTimeout(L);if(n.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:a2(d.errors)&&!h,submitCount:d.submitCount+1,errors:d.errors}),h)throw h},N=(a,b={})=>{let j=a?aF(a):f,k=aF(j),m=a2(a),o=m?f:k;if(b.keepDefaultValues||(f=j),!b.keepValues){if(b.keepDirtyValues)for(let a of Array.from(new Set([...i.mount,...Object.keys(a7(f,g))]))){let b=aJ(d.dirtyFields,a),c=aJ(g,a),e=aJ(o,a);b&&!aG(c)?aL(o,a,c):b||aG(e)||A(a,e)}else if(b.keepFieldsRef)for(let a of i.mount)A(a,aJ(o,a));else e={};g=c.shouldUnregister?b.keepDefaultValues?aF(f):{}:aF(o),n.array.next({values:{...o}}),n.state.next({values:{...o}})}i={mount:b.keepDirtyValues?i.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},h.mount=!l.isValid||!!b.keepIsValid||!!b.keepDirtyValues||!c.shouldUnregister&&!a2(o),h.watch=!!c.shouldUnregister,h.keepIsValid=!!b.keepIsValid,h.action=!1,b.keepErrors||(d.errors={}),n.state.next({submitCount:b.keepSubmitCount?d.submitCount:0,isDirty:!m&&(b.keepDirty?d.isDirty:!!(b.keepDefaultValues&&!aZ(a,f))),isSubmitted:!!b.keepIsSubmitted&&d.isSubmitted,dirtyFields:m?{}:b.keepDirtyValues?b.keepDefaultValues&&g?a7(f,g):d.dirtyFields:b.keepDefaultValues&&a?a7(f,a):b.keepDirty?d.dirtyFields:{},touchedFields:b.keepTouched?d.touchedFields:{},errors:b.keepErrors?d.errors:{},isSubmitSuccessful:!!b.keepIsSubmitSuccessful&&d.isSubmitSuccessful,isSubmitting:!1,defaultValues:f})},O=(a,b)=>N(aK(a)?a(g):a,{...c.resetOptions,...b}),P=a=>{d={...d,...a}},Q={control:{register:K,unregister:I,getFieldState:F,handleSubmit:M,setError:G,_subscribe:H,_runSchema:t,_updateIsValidating:q,_focusError:L,_getWatch:x,_getDirty:w,_setValid:p,_setFieldArray:(a,b=[],i,j,k=!0,o=!0)=>{if(j&&i&&!c.disabled){if(h.action=!0,o&&Array.isArray(aJ(e,a))){let b=i(aJ(e,a),j.argA,j.argB);k&&aL(e,a,b)}if(o&&Array.isArray(aJ(d.errors,a))){let b,c=i(aJ(d.errors,a),j.argA,j.argB);k&&aL(d.errors,a,c),aH(aJ(b=d.errors,a)).length||a4(b,a)}if((l.touchedFields||m.touchedFields)&&o&&Array.isArray(aJ(d.touchedFields,a))){let b=i(aJ(d.touchedFields,a),j.argA,j.argB);k&&aL(d.touchedFields,a,b)}(l.dirtyFields||m.dirtyFields)&&(d.dirtyFields=a7(f,g)),n.state.next({name:a,isDirty:w(a,b),dirtyFields:d.dirtyFields,errors:d.errors,isValid:d.isValid})}else aL(g,a,b)},_setDisabledField:J,_setErrors:a=>{d.errors=a,n.state.next({errors:d.errors,isValid:!1})},_getFieldArray:a=>aH(aJ(h.mount?g:f,a,c.shouldUnregister?aJ(f,a,[]):[])),_reset:N,_resetDefaultValues:()=>aK(c.defaultValues)&&c.defaultValues().then(a=>{O(a,c.resetOptions),n.state.next({isLoading:!1})}),_removeUnmounted:()=>{for(let a of i.unMount){let b=aJ(e,a);b&&(b._f.refs?b._f.refs.every(a=>!a3(a)):!a3(b._f.ref))&&I(a)}i.unMount=new Set},_disableForm:a=>{"boolean"==typeof a&&(n.state.next({disabled:a}),bk(e,(b,c)=>{let d=aJ(e,c);d&&(b.disabled=d._f.disabled||a,Array.isArray(d._f.refs)&&d._f.refs.forEach(b=>{b.disabled=d._f.disabled||a}))},0,!1))},_subjects:n,_proxyFormState:l,get _fields(){return e},get _formValues(){return g},get _state(){return h},set _state(value){h=value},get _defaultValues(){return f},get _names(){return i},set _names(value){i=value},get _formState(){return d},get _options(){return c},set _options(value){c={...c,...value}}},subscribe:a=>(h.mount=!0,m={...m,...a.formState},H({...a,formState:{...k,...a.formState}})),trigger:D,register:K,handleSubmit:M,watch:(a,b)=>aK(a)?n.state.subscribe({next:c=>"values"in c&&a(x(void 0,b),c)}):x(a,b,!0),setValue:A,getValues:E,reset:O,resetField:(a,b={})=>{aJ(e,a)&&(aG(b.defaultValue)?A(a,aF(aJ(f,a))):(A(a,b.defaultValue),aL(f,a,aF(b.defaultValue))),b.keepTouched||a4(d.touchedFields,a),b.keepDirty||(a4(d.dirtyFields,a),d.isDirty=b.defaultValue?w(a,aF(aJ(f,a))):w()),!b.keepError&&(a4(d.errors,a),l.isValid&&p()),n.state.next({...d}))},clearErrors:a=>{let b=a?a0(a):void 0;null==b||b.forEach(a=>a4(d.errors,a)),b?b.forEach(a=>{n.state.next({name:a,errors:d.errors})}):n.state.next({errors:{}})},unregister:I,setError:G,setFocus:(a,b={})=>{let c=aJ(e,a),d=c&&c._f;if(d){let a=d.refs?d.refs[0]:d.ref;a.focus&&setTimeout(()=>{a.focus(),b.shouldSelect&&aK(a.select)&&a.select()})}},getFieldState:F};return{...Q,formControl:Q}}(a);b.current={...e,formState:d}}let f=b.current.control;return f._options=a,aV(()=>{let a=f._subscribe({formState:f._proxyFormState,callback:()=>e({...f._formState}),reRenderRoot:!0});return e(a=>({...a,isReady:!0})),f._formState.isReady=!0,a},[f]),n.default.useEffect(()=>f._disableForm(a.disabled),[f,a.disabled]),n.default.useEffect(()=>{a.mode&&(f._options.mode=a.mode),a.reValidateMode&&(f._options.reValidateMode=a.reValidateMode)},[f,a.mode,a.reValidateMode]),n.default.useEffect(()=>{a.errors&&(f._setErrors(a.errors),f._focusError())},[f,a.errors]),n.default.useEffect(()=>{a.shouldUnregister&&f._subjects.state.next({values:f._getWatch()})},[f,a.shouldUnregister]),n.default.useEffect(()=>{if(f._proxyFormState.isDirty){let a=f._getDirty();a!==d.isDirty&&f._subjects.state.next({isDirty:a})}},[f,d.isDirty]),n.default.useEffect(()=>{var b;a.values&&!aZ(a.values,c.current)?(f._reset(a.values,{keepFieldsRef:!0,...f._options.resetOptions}),(null==(b=f._options.resetOptions)?void 0:b.keepIsValid)||f._setValid(),c.current=a.values,e(a=>({...a}))):f._resetDefaultValues()},[f,a.values]),n.default.useEffect(()=>{f._state.mount||(f._setValid(),f._state.mount=!0),f._state.watch&&(f._state.watch=!1,f._subjects.state.next({...f._formState})),f._removeUnmounted()}),b.current.formState=n.default.useMemo(()=>aU(d,f),[f,d]),b.current}var bs=a.i(35112);function bt(a,[b,c]){return Math.min(c,Math.max(b,a))}function bu(a,b,{checkForDefaultPrevented:c=!0}={}){return function(d){if(a?.(d),!1===c||!d.defaultPrevented)return b?.(d)}}function bv(a,b=[]){let c=[],d=()=>{let b=c.map(a=>n.createContext(a));return function(c){let d=c?.[a]||b;return n.useMemo(()=>({[`__scope${a}`]:{...c,[a]:d}}),[c,d])}};return d.scopeName=a,[function(b,d){let e=n.createContext(d),f=c.length;c=[...c,d];let g=b=>{let{scope:c,children:d,...g}=b,h=c?.[a]?.[f]||e,i=n.useMemo(()=>g,Object.values(g));return(0,m.jsx)(h.Provider,{value:i,children:d})};return g.displayName=b+"Provider",[g,function(c,g){let h=g?.[a]?.[f]||e,i=n.useContext(h);if(i)return i;if(void 0!==d)return d;throw Error(`\`${c}\` must be used within \`${b}\``)}]},function(...a){let b=a[0];if(1===a.length)return b;let c=()=>{let c=a.map(a=>({useScope:a(),scopeName:a.scopeName}));return function(a){let d=c.reduce((b,{useScope:c,scopeName:d})=>{let e=c(a)[`__scope${d}`];return{...b,...e}},{});return n.useMemo(()=>({[`__scope${b.scopeName}`]:d}),[d])}};return c.scopeName=b.scopeName,c}(d,...b)]}function bw(a,b){if("function"==typeof a)return a(b);null!=a&&(a.current=b)}function bx(...a){return b=>{let c=!1,d=a.map(a=>{let d=bw(a,b);return c||"function"!=typeof d||(c=!0),d});if(c)return()=>{for(let b=0;b<d.length;b++){let c=d[b];"function"==typeof c?c():bw(a[b],null)}}}}function by(...a){return n.useCallback(bx(...a),a)}function bz(a){var b;let c,d=(b=a,(c=n.forwardRef((a,b)=>{let{children:c,...d}=a;if(n.isValidElement(c)){var e;let a,f,g=(e=c,(f=(a=Object.getOwnPropertyDescriptor(e.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.ref:(f=(a=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.props.ref:e.props.ref||e.ref),h=function(a,b){let c={...b};for(let d in b){let e=a[d],f=b[d];/^on[A-Z]/.test(d)?e&&f?c[d]=(...a)=>{let b=f(...a);return e(...a),b}:e&&(c[d]=e):"style"===d?c[d]={...e,...f}:"className"===d&&(c[d]=[e,f].filter(Boolean).join(" "))}return{...a,...c}}(d,c.props);return c.type!==n.Fragment&&(h.ref=b?bx(b,g):g),n.cloneElement(c,h)}return n.Children.count(c)>1?n.Children.only(null):null})).displayName=`${b}.SlotClone`,c),e=n.forwardRef((a,b)=>{let{children:c,...e}=a,f=n.Children.toArray(c),g=f.find(bB);if(g){let a=g.props.children,c=f.map(b=>b!==g?b:n.Children.count(a)>1?n.Children.only(null):n.isValidElement(a)?a.props.children:null);return(0,m.jsx)(d,{...e,ref:b,children:n.isValidElement(a)?n.cloneElement(a,void 0,c):null})}return(0,m.jsx)(d,{...e,ref:b,children:c})});return e.displayName=`${a}.Slot`,e}var bA=Symbol("radix.slottable");function bB(a){return n.isValidElement(a)&&"function"==typeof a.type&&"__radixId"in a.type&&a.type.__radixId===bA}var bC=new WeakMap;function bD(a,b){var c,d;let e,f,g;if("at"in Array.prototype)return Array.prototype.at.call(a,b);let h=(c=a,d=b,e=c.length,(g=(f=bE(d))>=0?f:e+f)<0||g>=e?-1:g);return -1===h?void 0:a[h]}function bE(a){return a!=a||0===a?0:Math.trunc(a)}(class a extends Map{#B;constructor(a){super(a),this.#B=[...super.keys()],bC.set(this,!0)}set(a,b){return bC.get(this)&&(this.has(a)?this.#B[this.#B.indexOf(a)]=a:this.#B.push(a)),super.set(a,b),this}insert(a,b,c){let d,e=this.has(b),f=this.#B.length,g=bE(a),h=g>=0?g:f+g,i=h<0||h>=f?-1:h;if(i===this.size||e&&i===this.size-1||-1===i)return this.set(b,c),this;let j=this.size+ +!e;g<0&&h++;let k=[...this.#B],l=!1;for(let a=h;a<j;a++)if(h===a){let f=k[a];k[a]===b&&(f=k[a+1]),e&&this.delete(b),d=this.get(f),this.set(b,c)}else{l||k[a-1]!==b||(l=!0);let c=k[l?a:a-1],e=d;d=this.get(c),this.delete(c),this.set(c,e)}return this}with(b,c,d){let e=new a(this);return e.insert(b,c,d),e}before(a){let b=this.#B.indexOf(a)-1;if(!(b<0))return this.entryAt(b)}setBefore(a,b,c){let d=this.#B.indexOf(a);return -1===d?this:this.insert(d,b,c)}after(a){let b=this.#B.indexOf(a);if(-1!==(b=-1===b||b===this.size-1?-1:b+1))return this.entryAt(b)}setAfter(a,b,c){let d=this.#B.indexOf(a);return -1===d?this:this.insert(d+1,b,c)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#B=[],super.clear()}delete(a){let b=super.delete(a);return b&&this.#B.splice(this.#B.indexOf(a),1),b}deleteAt(a){let b=this.keyAt(a);return void 0!==b&&this.delete(b)}at(a){let b=bD(this.#B,a);if(void 0!==b)return this.get(b)}entryAt(a){let b=bD(this.#B,a);if(void 0!==b)return[b,this.get(b)]}indexOf(a){return this.#B.indexOf(a)}keyAt(a){return bD(this.#B,a)}from(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.at(d)}keyFrom(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.keyAt(d)}find(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return d;c++}}findIndex(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return c;c++}return -1}filter(b,c){let d=[],e=0;for(let a of this)Reflect.apply(b,c,[a,e,this])&&d.push(a),e++;return new a(d)}map(b,c){let d=[],e=0;for(let a of this)d.push([a[0],Reflect.apply(b,c,[a,e,this])]),e++;return new a(d)}reduce(...a){let[b,c]=a,d=0,e=c??this.at(0);for(let c of this)e=0===d&&1===a.length?c:Reflect.apply(b,this,[e,c,d,this]),d++;return e}reduceRight(...a){let[b,c]=a,d=c??this.at(-1);for(let c=this.size-1;c>=0;c--){let e=this.at(c);d=c===this.size-1&&1===a.length?e:Reflect.apply(b,this,[d,e,c,this])}return d}toSorted(b){return new a([...this.entries()].sort(b))}toReversed(){let b=new a;for(let a=this.size-1;a>=0;a--){let c=this.keyAt(a),d=this.get(c);b.set(c,d)}return b}toSpliced(...b){let c=[...this.entries()];return c.splice(...b),new a(c)}slice(b,c){let d=new a,e=this.size-1;if(void 0===b)return d;b<0&&(b+=this.size),void 0!==c&&c>0&&(e=c-1);for(let a=b;a<=e;a++){let b=this.keyAt(a),c=this.get(b);d.set(b,c)}return d}every(a,b){let c=0;for(let d of this){if(!Reflect.apply(a,b,[d,c,this]))return!1;c++}return!0}some(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return!0;c++}return!1}});var bF=n.createContext(void 0),bG=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,b)=>{let c=bz(`Primitive.${b}`),d=n.forwardRef((a,d)=>{let{asChild:e,...f}=a;return(0,m.jsx)(e?c:b,{...f,ref:d})});return d.displayName=`Primitive.${b}`,{...a,[b]:d}},{});function bH(a){let b=n.useRef(a);return n.useEffect(()=>{b.current=a}),n.useMemo(()=>(...a)=>b.current?.(...a),[])}var bI="dismissableLayer.update",bJ=n.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),bK=n.forwardRef((a,b)=>{let{disableOutsidePointerEvents:c=!1,onEscapeKeyDown:d,onPointerDownOutside:e,onFocusOutside:f,onInteractOutside:g,onDismiss:h,...i}=a,j=n.useContext(bJ),[l,o]=n.useState(null),p=l?.ownerDocument??globalThis?.document,[,q]=n.useState({}),r=by(b,a=>o(a)),s=Array.from(j.layers),[t]=[...j.layersWithOutsidePointerEventsDisabled].slice(-1),u=s.indexOf(t),v=l?s.indexOf(l):-1,w=j.layersWithOutsidePointerEventsDisabled.size>0,x=v>=u,y=function(a,b=globalThis?.document){let c=bH(a),d=n.useRef(!1),e=n.useRef(()=>{});return n.useEffect(()=>{let a=a=>{if(a.target&&!d.current){let d=function(){bM("dismissableLayer.pointerDownOutside",c,f,{discrete:!0})},f={originalEvent:a};"touch"===a.pointerType?(b.removeEventListener("click",e.current),e.current=d,b.addEventListener("click",e.current,{once:!0})):d()}else b.removeEventListener("click",e.current);d.current=!1},f=window.setTimeout(()=>{b.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(f),b.removeEventListener("pointerdown",a),b.removeEventListener("click",e.current)}},[b,c]),{onPointerDownCapture:()=>d.current=!0}}(a=>{let b=a.target,c=[...j.branches].some(a=>a.contains(b));x&&!c&&(e?.(a),g?.(a),a.defaultPrevented||h?.())},p),z=function(a,b=globalThis?.document){let c=bH(a),d=n.useRef(!1);return n.useEffect(()=>{let a=a=>{a.target&&!d.current&&bM("dismissableLayer.focusOutside",c,{originalEvent:a},{discrete:!1})};return b.addEventListener("focusin",a),()=>b.removeEventListener("focusin",a)},[b,c]),{onFocusCapture:()=>d.current=!0,onBlurCapture:()=>d.current=!1}}(a=>{let b=a.target;![...j.branches].some(a=>a.contains(b))&&(f?.(a),g?.(a),a.defaultPrevented||h?.())},p);return!function(a,b=globalThis?.document){let c=bH(a);n.useEffect(()=>{let a=a=>{"Escape"===a.key&&c(a)};return b.addEventListener("keydown",a,{capture:!0}),()=>b.removeEventListener("keydown",a,{capture:!0})},[c,b])}(a=>{v===j.layers.size-1&&(d?.(a),!a.defaultPrevented&&h&&(a.preventDefault(),h()))},p),n.useEffect(()=>{if(l)return c&&(0===j.layersWithOutsidePointerEventsDisabled.size&&(k=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),j.layersWithOutsidePointerEventsDisabled.add(l)),j.layers.add(l),bL(),()=>{c&&1===j.layersWithOutsidePointerEventsDisabled.size&&(p.body.style.pointerEvents=k)}},[l,p,c,j]),n.useEffect(()=>()=>{l&&(j.layers.delete(l),j.layersWithOutsidePointerEventsDisabled.delete(l),bL())},[l,j]),n.useEffect(()=>{let a=()=>q({});return document.addEventListener(bI,a),()=>document.removeEventListener(bI,a)},[]),(0,m.jsx)(bG.div,{...i,ref:r,style:{pointerEvents:w?x?"auto":"none":void 0,...a.style},onFocusCapture:bu(a.onFocusCapture,z.onFocusCapture),onBlurCapture:bu(a.onBlurCapture,z.onBlurCapture),onPointerDownCapture:bu(a.onPointerDownCapture,y.onPointerDownCapture)})});function bL(){let a=new CustomEvent(bI);document.dispatchEvent(a)}function bM(a,b,c,{discrete:d}){let e=c.originalEvent.target,f=new CustomEvent(a,{bubbles:!1,cancelable:!0,detail:c});if(b&&e.addEventListener(a,b,{once:!0}),d)e&&bs.flushSync(()=>e.dispatchEvent(f));else e.dispatchEvent(f)}bK.displayName="DismissableLayer",n.forwardRef((a,b)=>{let c=n.useContext(bJ),d=n.useRef(null),e=by(b,d);return n.useEffect(()=>{let a=d.current;if(a)return c.branches.add(a),()=>{c.branches.delete(a)}},[c.branches]),(0,m.jsx)(bG.div,{...a,ref:e})}).displayName="DismissableLayerBranch";var bN=0;function bO(){let a=document.createElement("span");return a.setAttribute("data-radix-focus-guard",""),a.tabIndex=0,a.style.outline="none",a.style.opacity="0",a.style.position="fixed",a.style.pointerEvents="none",a}var bP="focusScope.autoFocusOnMount",bQ="focusScope.autoFocusOnUnmount",bR={bubbles:!1,cancelable:!0},bS=n.forwardRef((a,b)=>{let{loop:c=!1,trapped:d=!1,onMountAutoFocus:e,onUnmountAutoFocus:f,...g}=a,[h,i]=n.useState(null),j=bH(e),k=bH(f),l=n.useRef(null),o=by(b,a=>i(a)),p=n.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;n.useEffect(()=>{if(d){let a=function(a){if(p.paused||!h)return;let b=a.target;h.contains(b)?l.current=b:bV(l.current,{select:!0})},b=function(a){if(p.paused||!h)return;let b=a.relatedTarget;null!==b&&(h.contains(b)||bV(l.current,{select:!0}))};document.addEventListener("focusin",a),document.addEventListener("focusout",b);let c=new MutationObserver(function(a){if(document.activeElement===document.body)for(let b of a)b.removedNodes.length>0&&bV(h)});return h&&c.observe(h,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",a),document.removeEventListener("focusout",b),c.disconnect()}}},[d,h,p.paused]),n.useEffect(()=>{if(h){bW.add(p);let a=document.activeElement;if(!h.contains(a)){let b=new CustomEvent(bP,bR);h.addEventListener(bP,j),h.dispatchEvent(b),b.defaultPrevented||(function(a,{select:b=!1}={}){let c=document.activeElement;for(let d of a)if(bV(d,{select:b}),document.activeElement!==c)return}(bT(h).filter(a=>"A"!==a.tagName),{select:!0}),document.activeElement===a&&bV(h))}return()=>{h.removeEventListener(bP,j),setTimeout(()=>{let b=new CustomEvent(bQ,bR);h.addEventListener(bQ,k),h.dispatchEvent(b),b.defaultPrevented||bV(a??document.body,{select:!0}),h.removeEventListener(bQ,k),bW.remove(p)},0)}}},[h,j,k,p]);let q=n.useCallback(a=>{if(!c&&!d||p.paused)return;let b="Tab"===a.key&&!a.altKey&&!a.ctrlKey&&!a.metaKey,e=document.activeElement;if(b&&e){var f;let b,d=a.currentTarget,[g,h]=[bU(b=bT(f=d),f),bU(b.reverse(),f)];g&&h?a.shiftKey||e!==h?a.shiftKey&&e===g&&(a.preventDefault(),c&&bV(h,{select:!0})):(a.preventDefault(),c&&bV(g,{select:!0})):e===d&&a.preventDefault()}},[c,d,p.paused]);return(0,m.jsx)(bG.div,{tabIndex:-1,...g,ref:o,onKeyDown:q})});function bT(a){let b=[],c=document.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,{acceptNode:a=>{let b="INPUT"===a.tagName&&"hidden"===a.type;return a.disabled||a.hidden||b?NodeFilter.FILTER_SKIP:a.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;c.nextNode();)b.push(c.currentNode);return b}function bU(a,b){for(let c of a)if(!function(a,{upTo:b}){if("hidden"===getComputedStyle(a).visibility)return!0;for(;a&&(void 0===b||a!==b);){if("none"===getComputedStyle(a).display)return!0;a=a.parentElement}return!1}(c,{upTo:b}))return c}function bV(a,{select:b=!1}={}){if(a&&a.focus){var c;let d=document.activeElement;a.focus({preventScroll:!0}),a!==d&&(c=a)instanceof HTMLInputElement&&"select"in c&&b&&a.select()}}bS.displayName="FocusScope";var bW=(d=[],{add(a){let b=d[0];a!==b&&b?.pause(),(d=bX(d,a)).unshift(a)},remove(a){d=bX(d,a),d[0]?.resume()}});function bX(a,b){let c=[...a],d=c.indexOf(b);return -1!==d&&c.splice(d,1),c}var bY=globalThis?.document?n.useLayoutEffect:()=>{},bZ=n[" useId ".trim().toString()]||(()=>void 0),b$=0;function b_(a){let[b,c]=n.useState(bZ());return bY(()=>{a||c(a=>a??String(b$++))},[a]),a||(b?`radix-${b}`:"")}let b0=["top","right","bottom","left"],b1=Math.min,b2=Math.max,b3=Math.round,b4=Math.floor,b5=a=>({x:a,y:a}),b6={left:"right",right:"left",bottom:"top",top:"bottom"};function b7(a,b){return"function"==typeof a?a(b):a}function b8(a){return a.split("-")[0]}function b9(a){return a.split("-")[1]}function ca(a){return"x"===a?"y":"x"}function cb(a){return"y"===a?"height":"width"}function cc(a){let b=a[0];return"t"===b||"b"===b?"y":"x"}function cd(a){return a.includes("start")?a.replace("start","end"):a.replace("end","start")}let ce=["left","right"],cf=["right","left"],cg=["top","bottom"],ch=["bottom","top"];function ci(a){let b=b8(a);return b6[b]+a.slice(b.length)}function cj(a){return"number"!=typeof a?{top:0,right:0,bottom:0,left:0,...a}:{top:a,right:a,bottom:a,left:a}}function ck(a){let{x:b,y:c,width:d,height:e}=a;return{width:d,height:e,top:c,left:b,right:b+d,bottom:c+e,x:b,y:c}}function cl(a,b,c){let d,{reference:e,floating:f}=a,g=cc(b),h=ca(cc(b)),i=cb(h),j=b8(b),k="y"===g,l=e.x+e.width/2-f.width/2,m=e.y+e.height/2-f.height/2,n=e[i]/2-f[i]/2;switch(j){case"top":d={x:l,y:e.y-f.height};break;case"bottom":d={x:l,y:e.y+e.height};break;case"right":d={x:e.x+e.width,y:m};break;case"left":d={x:e.x-f.width,y:m};break;default:d={x:e.x,y:e.y}}switch(b9(b)){case"start":d[h]-=n*(c&&k?-1:1);break;case"end":d[h]+=n*(c&&k?-1:1)}return d}async function cm(a,b){var c;void 0===b&&(b={});let{x:d,y:e,platform:f,rects:g,elements:h,strategy:i}=a,{boundary:j="clippingAncestors",rootBoundary:k="viewport",elementContext:l="floating",altBoundary:m=!1,padding:n=0}=b7(b,a),o=cj(n),p=h[m?"floating"===l?"reference":"floating":l],q=ck(await f.getClippingRect({element:null==(c=await (null==f.isElement?void 0:f.isElement(p)))||c?p:p.contextElement||await (null==f.getDocumentElement?void 0:f.getDocumentElement(h.floating)),boundary:j,rootBoundary:k,strategy:i})),r="floating"===l?{x:d,y:e,width:g.floating.width,height:g.floating.height}:g.reference,s=await (null==f.getOffsetParent?void 0:f.getOffsetParent(h.floating)),t=await (null==f.isElement?void 0:f.isElement(s))&&await (null==f.getScale?void 0:f.getScale(s))||{x:1,y:1},u=ck(f.convertOffsetParentRelativeRectToViewportRelativeRect?await f.convertOffsetParentRelativeRectToViewportRelativeRect({elements:h,rect:r,offsetParent:s,strategy:i}):r);return{top:(q.top-u.top+o.top)/t.y,bottom:(u.bottom-q.bottom+o.bottom)/t.y,left:(q.left-u.left+o.left)/t.x,right:(u.right-q.right+o.right)/t.x}}let cn=async(a,b,c)=>{let{placement:d="bottom",strategy:e="absolute",middleware:f=[],platform:g}=c,h=g.detectOverflow?g:{...g,detectOverflow:cm},i=await (null==g.isRTL?void 0:g.isRTL(b)),j=await g.getElementRects({reference:a,floating:b,strategy:e}),{x:k,y:l}=cl(j,d,i),m=d,n=0,o={};for(let c=0;c<f.length;c++){let p=f[c];if(!p)continue;let{name:q,fn:r}=p,{x:s,y:t,data:u,reset:v}=await r({x:k,y:l,initialPlacement:d,placement:m,strategy:e,middlewareData:o,rects:j,platform:h,elements:{reference:a,floating:b}});k=null!=s?s:k,l=null!=t?t:l,o[q]={...o[q],...u},v&&n<50&&(n++,"object"==typeof v&&(v.placement&&(m=v.placement),v.rects&&(j=!0===v.rects?await g.getElementRects({reference:a,floating:b,strategy:e}):v.rects),{x:k,y:l}=cl(j,m,i)),c=-1)}return{x:k,y:l,placement:m,strategy:e,middlewareData:o}};function co(a,b){return{top:a.top-b.height,right:a.right-b.width,bottom:a.bottom-b.height,left:a.left-b.width}}function cp(a){return b0.some(b=>a[b]>=0)}let cq=new Set(["left","top"]);async function cr(a,b){let{placement:c,platform:d,elements:e}=a,f=await (null==d.isRTL?void 0:d.isRTL(e.floating)),g=b8(c),h=b9(c),i="y"===cc(c),j=cq.has(g)?-1:1,k=f&&i?-1:1,l=b7(b,a),{mainAxis:m,crossAxis:n,alignmentAxis:o}="number"==typeof l?{mainAxis:l,crossAxis:0,alignmentAxis:null}:{mainAxis:l.mainAxis||0,crossAxis:l.crossAxis||0,alignmentAxis:l.alignmentAxis};return h&&"number"==typeof o&&(n="end"===h?-1*o:o),i?{x:n*k,y:m*j}:{x:m*j,y:n*k}}function cs(a){return function(a){return!1}(a)?(a.nodeName||"").toLowerCase():"#document"}function ct(a){var b;return(null==a||null==(b=a.ownerDocument)?void 0:b.defaultView)||window}function cu(a){var b;return null==(b=(function(a){return!1}(a)?a.ownerDocument:a.document)||window.document)?void 0:b.documentElement}function cv(a){return!1}function cw(a){let{overflow:b,overflowX:c,overflowY:d,display:e}=cE(a);return/auto|scroll|overlay|hidden|clip/.test(b+d+c)&&"inline"!==e&&"contents"!==e}function cx(a){try{if(a.matches(":popover-open"))return!0}catch(a){}try{return a.matches(":modal")}catch(a){return!1}}let cy=/transform|translate|scale|rotate|perspective|filter/,cz=/paint|layout|strict|content/,cA=a=>!!a&&"none"!==a;function cB(a){let b=a;return cA(b.transform)||cA(b.translate)||cA(b.scale)||cA(b.rotate)||cA(b.perspective)||!cC()&&(cA(b.backdropFilter)||cA(b.filter))||cy.test(b.willChange||"")||cz.test(b.contain||"")}function cC(){return null==b&&(b="u">typeof CSS&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),b}function cD(a){return/^(html|body|#document)$/.test(cs(a))}function cE(a){return ct(a).getComputedStyle(a)}function cF(a){return{scrollLeft:a.scrollX,scrollTop:a.scrollY}}function cG(a){if("html"===cs(a))return a;let b=a.assignedSlot||a.parentNode||!1||cu(a);return b}function cH(a,b,c){var d;void 0===b&&(b=[]),void 0===c&&(c=!0);let e=function a(b){let c=cG(b);return cD(c)?b.ownerDocument?b.ownerDocument.body:b.body:a(c)}(a),f=e===(null==(d=a.ownerDocument)?void 0:d.body),g=ct(e);if(!f)return b.concat(e,cH(e,[],c));{let a=cI(g);return b.concat(g,g.visualViewport||[],cw(e)?e:[],a&&c?cH(a):[])}}function cI(a){return a.parent&&Object.getPrototypeOf(a.parent)?a.frameElement:null}function cJ(a){let b=cE(a),c=parseFloat(b.width)||0,d=parseFloat(b.height)||0,e=!1,f=e?a.offsetWidth:c,g=e?a.offsetHeight:d,h=b3(c)!==f||b3(d)!==g;return h&&(c=f,d=g),{width:c,height:d,$:h}}function cK(a){return 0,a.contextElement}function cL(a){let b=cK(a);1;return b5(1)}let cM=b5(0);function cN(a){let b=ct(a);return cC()&&b.visualViewport?{x:b.visualViewport.offsetLeft,y:b.visualViewport.offsetTop}:cM}function cO(a,b,c,d){var e;void 0===b&&(b=!1),void 0===c&&(c=!1);let f=a.getBoundingClientRect(),g=cK(a),h=b5(1);b&&(d||(h=cL(a)));let i=(void 0===(e=c)&&(e=!1),d&&(!e||d===ct(g))&&e)?cN(g):b5(0),j=(f.left+i.x)/h.x,k=(f.top+i.y)/h.y,l=f.width/h.x,m=f.height/h.y;if(g){let a=ct(g),b=d,c=a,e=cI(c);for(;e&&d&&b!==c;){let a=cL(e),b=e.getBoundingClientRect(),d=cE(e),f=b.left+(e.clientLeft+parseFloat(d.paddingLeft))*a.x,g=b.top+(e.clientTop+parseFloat(d.paddingTop))*a.y;j*=a.x,k*=a.y,l*=a.x,m*=a.y,j+=f,k+=g,e=cI(c=ct(e))}}return ck({width:l,height:m,x:j,y:k})}function cP(a,b){let c=cF(a).scrollLeft;return b?b.left+c:cO(cu(a)).left+c}function cQ(a,b){let c=a.getBoundingClientRect();return{x:c.left+b.scrollLeft-cP(a,c),y:c.top+b.scrollTop}}function cR(a,b,c){var d;let e;if("viewport"===b)e=function(a,b){let c=ct(a),d=cu(a),e=c.visualViewport,f=d.clientWidth,g=d.clientHeight,h=0,i=0;if(e){f=e.width,g=e.height;let a=cC();(!a||a&&"fixed"===b)&&(h=e.offsetLeft,i=e.offsetTop)}let j=cP(d);if(j<=0){let a=d.ownerDocument,b=a.body,c=getComputedStyle(b),e="CSS1Compat"===a.compatMode&&parseFloat(c.marginLeft)+parseFloat(c.marginRight)||0,g=Math.abs(d.clientWidth-b.clientWidth-e);g<=25&&(f-=g)}else j<=25&&(f+=j);return{width:f,height:g,x:h,y:i}}(a,c);else if("document"===b){let b,c,f,g,h,i,j;d=cu(a),b=cu(d),c=cF(d),f=d.ownerDocument.body,g=b2(b.scrollWidth,b.clientWidth,f.scrollWidth,f.clientWidth),h=b2(b.scrollHeight,b.clientHeight,f.scrollHeight,f.clientHeight),i=-c.scrollLeft+cP(d),j=-c.scrollTop,"rtl"===cE(f).direction&&(i+=b2(b.clientWidth,f.clientWidth)-g),e={width:g,height:h,x:i,y:j}}else{1;{let c=cN(a);e={x:b.x-c.x,y:b.y-c.y,width:b.width,height:b.height}}}return ck(e)}function cS(a){return"static"===cE(a).position}function cT(a,b){1;return null}function cU(a,b){var c;let d=ct(a);if(cx(a))return d;1;{let b=cG(a);for(;b&&!cD(b);){0;b=cG(b)}return d}}let cV=async function(a){let b=this.getOffsetParent||cU,c=this.getDimensions,d=await c(a.floating);return{reference:function(a,b,c){var d;let e=(d=0,!1),f=cu(b),g="fixed"===c,h=cO(a,!0,g,b),i={scrollLeft:0,scrollTop:0},j=b5(0);if(e||!e&&!g)if(("body"!==cs(b)||cw(f))&&(i=cF(b)),e){let a=cO(b,!0,g,b);j.x=a.x+b.clientLeft,j.y=a.y+b.clientTop}else f&&(j.x=cP(f));g&&!e&&f&&(j.x=cP(f));let k=!f||e||g?b5(0):cQ(f,i);return{x:h.left+i.scrollLeft-j.x-k.x,y:h.top+i.scrollTop-j.y-k.y,width:h.width,height:h.height}}(a.reference,await b(a.floating),a.strategy),floating:{x:0,y:0,width:d.width,height:d.height}}},cW={convertOffsetParentRelativeRectToViewportRelativeRect:function(a){var b;let{elements:c,rect:d,offsetParent:e,strategy:f}=a,g="fixed"===f,h=cu(e),i=!!c&&cx(c.floating);if(e===h||i&&g)return d;let j={scrollLeft:0,scrollTop:0},k=b5(1),l=b5(0),m=(b=0,!1);if((m||!m&&!g)&&(("body"!==cs(e)||cw(h))&&(j=cF(e)),m)){let a=cO(e);k=cL(e),l.x=a.x+e.clientLeft,l.y=a.y+e.clientTop}let n=!h||m||g?b5(0):cQ(h,j);return{width:d.width*k.x,height:d.height*k.y,x:d.x*k.x-j.scrollLeft*k.x+l.x+n.x,y:d.y*k.y-j.scrollTop*k.y+l.y+n.y}},getDocumentElement:cu,getClippingRect:function(a){let{element:b,boundary:c,rootBoundary:d,strategy:e}=a,f=[..."clippingAncestors"===c?cx(b)?[]:function(a,b){var c;let d=b.get(a);if(d)return d;let e=cH(a,[],!1).filter(a=>{var b;return b=0,!1}),f="fixed"===cE(a).position,g=f?cG(a):a;return c=0,b.set(a,e),e}(b,this._c):[].concat(c),d],g=cR(b,f[0],e),h=g.top,i=g.right,j=g.bottom,k=g.left;for(let a=1;a<f.length;a++){let c=cR(b,f[a],e);h=b2(c.top,h),i=b1(c.right,i),j=b1(c.bottom,j),k=b2(c.left,k)}return{width:i-k,height:j-h,x:k,y:h}},getOffsetParent:cU,getElementRects:cV,getClientRects:function(a){return Array.from(a.getClientRects())},getDimensions:function(a){let{width:b,height:c}=cJ(a);return{width:b,height:c}},getScale:cL,isElement:cv,isRTL:function(a){return"rtl"===cE(a).direction}};function cX(a,b){return a.x===b.x&&a.y===b.y&&a.width===b.width&&a.height===b.height}let cY=a=>({name:"arrow",options:a,async fn(b){let{x:c,y:d,placement:e,rects:f,platform:g,elements:h,middlewareData:i}=b,{element:j,padding:k=0}=b7(a,b)||{};if(null==j)return{};let l=cj(k),m={x:c,y:d},n=ca(cc(e)),o=cb(n),p=await g.getDimensions(j),q="y"===n,r=q?"clientHeight":"clientWidth",s=f.reference[o]+f.reference[n]-m[n]-f.floating[o],t=m[n]-f.reference[n],u=await (null==g.getOffsetParent?void 0:g.getOffsetParent(j)),v=u?u[r]:0;v&&await (null==g.isElement?void 0:g.isElement(u))||(v=h.floating[r]||f.floating[o]);let w=v/2-p[o]/2-1,x=b1(l[q?"top":"left"],w),y=b1(l[q?"bottom":"right"],w),z=v-p[o]-y,A=v/2-p[o]/2+(s/2-t/2),B=b2(x,b1(A,z)),C=!i.arrow&&null!=b9(e)&&A!==B&&f.reference[o]/2-(A<x?x:y)-p[o]/2<0,D=C?A<x?A-x:A-z:0;return{[n]:m[n]+D,data:{[n]:B,centerOffset:A-B-D,...C&&{alignmentOffset:D}},reset:C}}});var cZ="u">typeof document?n.useLayoutEffect:function(){};function c$(a,b){let c,d,e;if(a===b)return!0;if(typeof a!=typeof b)return!1;if("function"==typeof a&&a.toString()===b.toString())return!0;if(a&&b&&"object"==typeof a){if(Array.isArray(a)){if((c=a.length)!==b.length)return!1;for(d=c;0!=d--;)if(!c$(a[d],b[d]))return!1;return!0}if((c=(e=Object.keys(a)).length)!==Object.keys(b).length)return!1;for(d=c;0!=d--;)if(!({}).hasOwnProperty.call(b,e[d]))return!1;for(d=c;0!=d--;){let c=e[d];if(("_owner"!==c||!a.$$typeof)&&!c$(a[c],b[c]))return!1}return!0}return a!=a&&b!=b}function c_(a,b){let c=1;return Math.round(b*c)/c}function c0(a){let b=n.useRef(a);return cZ(()=>{b.current=a}),b}var c1=n.forwardRef((a,b)=>{let{children:c,width:d=10,height:e=5,...f}=a;return(0,m.jsx)(bG.svg,{...f,ref:b,width:d,height:e,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:a.asChild?c:(0,m.jsx)("polygon",{points:"0,0 30,0 15,10"})})});c1.displayName="Arrow";var c2="Popper",[c3,c4]=bv(c2),[c5,c6]=c3(c2),c7=a=>{let{__scopePopper:b,children:c}=a,[d,e]=n.useState(null);return(0,m.jsx)(c5,{scope:b,anchor:d,onAnchorChange:e,children:c})};c7.displayName=c2;var c8="PopperAnchor",c9=n.forwardRef((a,b)=>{let{__scopePopper:c,virtualRef:d,...e}=a,f=c6(c8,c),g=n.useRef(null),h=by(b,g),i=n.useRef(null);return n.useEffect(()=>{let a=i.current;i.current=d?.current||g.current,a!==i.current&&f.onAnchorChange(i.current)}),d?null:(0,m.jsx)(bG.div,{...e,ref:h})});c9.displayName=c8;var da="PopperContent",[db,dc]=c3(da),dd=n.forwardRef((a,b)=>{var c,d,e,f,g,h,i,j,k,l,o,p,q,r,s,t,u,v,w,x,y;let z,A,B,C,D,E,{__scopePopper:F,side:G="bottom",sideOffset:H=0,align:I="center",alignOffset:J=0,arrowPadding:K=0,avoidCollisions:L=!0,collisionBoundary:M=[],collisionPadding:N=0,sticky:O="partial",hideWhenDetached:P=!1,updatePositionStrategy:Q="optimized",onPlaced:R,...S}=a,T=c6(da,F),[U,V]=n.useState(null),W=by(b,a=>V(a)),[X,Y]=n.useState(null),Z=function(a){let[b,c]=n.useState(void 0);return bY(()=>{if(a){c({width:a.offsetWidth,height:a.offsetHeight});let b=new ResizeObserver(b=>{let d,e;if(!Array.isArray(b)||!b.length)return;let f=b[0];if("borderBoxSize"in f){let a=f.borderBoxSize,b=Array.isArray(a)?a[0]:a;d=b.inlineSize,e=b.blockSize}else d=a.offsetWidth,e=a.offsetHeight;c({width:d,height:e})});return b.observe(a,{box:"border-box"}),()=>b.unobserve(a)}c(void 0)},[a]),b}(X),$=Z?.width??0,_=Z?.height??0,aa="number"==typeof N?N:{top:0,right:0,bottom:0,left:0,...N},ab=Array.isArray(M)?M:[M],ac=ab.length>0,ad={padding:aa,boundary:ab.filter(dh),altBoundary:ac},{refs:ae,floatingStyles:af,placement:ag,isPositioned:ah,middlewareData:ai}=function(a){void 0===a&&(a={});let{placement:b="bottom",strategy:c="absolute",middleware:d=[],platform:e,elements:{reference:f,floating:g}={},transform:h=!0,whileElementsMounted:i,open:j}=a,[k,l]=n.useState({x:0,y:0,strategy:c,placement:b,middlewareData:{},isPositioned:!1}),[m,o]=n.useState(d);c$(m,d)||o(d);let[p,q]=n.useState(null),[r,s]=n.useState(null),t=n.useCallback(a=>{a!==x.current&&(x.current=a,q(a))},[]),u=n.useCallback(a=>{a!==y.current&&(y.current=a,s(a))},[]),v=f||p,w=g||r,x=n.useRef(null),y=n.useRef(null),z=n.useRef(k),A=null!=i,B=c0(i),C=c0(e),D=c0(j),E=n.useCallback(()=>{var a,d;let e,f,g;if(!x.current||!y.current)return;let h={placement:b,strategy:c,middleware:m};C.current&&(h.platform=C.current),(a=x.current,d=y.current,e=new Map,g={...(f={platform:cW,...h}).platform,_c:e},cn(a,d,{...f,platform:g})).then(a=>{let b={...a,isPositioned:!1!==D.current};F.current&&!c$(z.current,b)&&(z.current=b,bs.flushSync(()=>{l(b)}))})},[m,b,c,C,D]);cZ(()=>{!1===j&&z.current.isPositioned&&(z.current.isPositioned=!1,l(a=>({...a,isPositioned:!1})))},[j]);let F=n.useRef(!1);cZ(()=>(F.current=!0,()=>{F.current=!1}),[]),cZ(()=>{if(v&&(x.current=v),w&&(y.current=w),v&&w){if(B.current)return B.current(v,w,E);E()}},[v,w,E,B,A]);let G=n.useMemo(()=>({reference:x,floating:y,setReference:t,setFloating:u}),[t,u]),H=n.useMemo(()=>({reference:v,floating:w}),[v,w]),I=n.useMemo(()=>{let a={position:c,left:0,top:0};if(!H.floating)return a;let b=c_(H.floating,k.x),d=c_(H.floating,k.y);if(h)return{...a,transform:"translate("+b+"px, "+d+"px)",...(H.floating,false)};return{position:c,left:b,top:d}},[c,h,H.floating,k.x,k.y]);return n.useMemo(()=>({...k,update:E,refs:G,elements:H,floatingStyles:I}),[k,E,G,H,I])}({strategy:"fixed",placement:G+("center"!==I?"-"+I:""),whileElementsMounted:(...a)=>(function(a,b,c,d){let e;void 0===d&&(d={});let{ancestorScroll:f=!0,ancestorResize:g=!0,elementResize:h="function"==typeof ResizeObserver,layoutShift:i="function"==typeof IntersectionObserver,animationFrame:j=!1}=d,k=cK(a),l=f||g?[...k?cH(k):[],...b?cH(b):[]]:[];l.forEach(a=>{f&&a.addEventListener("scroll",c,{passive:!0}),g&&a.addEventListener("resize",c)});let m=k&&i?function(a,b){let c,d=null,e=cu(a);function f(){var a;clearTimeout(c),null==(a=d)||a.disconnect(),d=null}return!function g(h,i){void 0===h&&(h=!1),void 0===i&&(i=1),f();let j=a.getBoundingClientRect(),{left:k,top:l,width:m,height:n}=j;if(h||b(),!m||!n)return;let o={rootMargin:-b4(l)+"px "+-b4(e.clientWidth-(k+m))+"px "+-b4(e.clientHeight-(l+n))+"px "+-b4(k)+"px",threshold:b2(0,b1(1,i))||1},p=!0;function q(b){let d=b[0].intersectionRatio;if(d!==i){if(!p)return g();d?g(!1,d):c=setTimeout(()=>{g(!1,1e-7)},1e3)}1!==d||cX(j,a.getBoundingClientRect())||g(),p=!1}try{d=new IntersectionObserver(q,{...o,root:e.ownerDocument})}catch(a){d=new IntersectionObserver(q,o)}d.observe(a)}(!0),f}(k,c):null,n=-1,o=null;h&&(o=new ResizeObserver(a=>{let[d]=a;d&&d.target===k&&o&&b&&(o.unobserve(b),cancelAnimationFrame(n),n=requestAnimationFrame(()=>{var a;null==(a=o)||a.observe(b)})),c()}),k&&!j&&o.observe(k),b&&o.observe(b));let p=j?cO(a):null;return j&&function b(){let d=cO(a);p&&!cX(p,d)&&c(),p=d,e=requestAnimationFrame(b)}(),c(),()=>{var a;l.forEach(a=>{f&&a.removeEventListener("scroll",c),g&&a.removeEventListener("resize",c)}),null==m||m(),null==(a=o)||a.disconnect(),o=null,j&&cancelAnimationFrame(e)}})(...a,{animationFrame:"always"===Q}),elements:{reference:T.anchor},middleware:[{name:(z={name:"offset",options:e=c={mainAxis:H+_,alignmentAxis:J},async fn(a){var b,c;let{x:d,y:f,placement:g,middlewareData:h}=a,i=await cr(a,e);return g===(null==(b=h.offset)?void 0:b.placement)&&null!=(c=h.arrow)&&c.alignmentOffset?{}:{x:d+i.x,y:f+i.y,data:{...i,placement:g}}}}).name,fn:z.fn,options:[c,d]},L&&{name:(A={name:"shift",options:k=i={mainAxis:!0,crossAxis:!1,limiter:"partial"===O?{fn:(void 0===(h=f)&&(h={}),{options:h,fn(a){let{x:b,y:c,placement:d,rects:e,middlewareData:f}=a,{offset:g=0,mainAxis:i=!0,crossAxis:j=!0}=b7(h,a),k={x:b,y:c},l=cc(d),m=ca(l),n=k[m],o=k[l],p=b7(g,a),q="number"==typeof p?{mainAxis:p,crossAxis:0}:{mainAxis:0,crossAxis:0,...p};if(i){let a="y"===m?"height":"width",b=e.reference[m]-e.floating[a]+q.mainAxis,c=e.reference[m]+e.reference[a]-q.mainAxis;n<b?n=b:n>c&&(n=c)}if(j){var r,s;let a="y"===m?"width":"height",b=cq.has(b8(d)),c=e.reference[l]-e.floating[a]+(b&&(null==(r=f.offset)?void 0:r[l])||0)+(b?0:q.crossAxis),g=e.reference[l]+e.reference[a]+(b?0:(null==(s=f.offset)?void 0:s[l])||0)-(b?q.crossAxis:0);o<c?o=c:o>g&&(o=g)}return{[m]:n,[l]:o}}}).fn,options:[f,g]}:void 0,...ad},async fn(a){let{x:b,y:c,placement:d,platform:e}=a,{mainAxis:f=!0,crossAxis:g=!1,limiter:h={fn:a=>{let{x:b,y:c}=a;return{x:b,y:c}}},...i}=b7(k,a),j={x:b,y:c},l=await e.detectOverflow(a,i),m=cc(b8(d)),n=ca(m),o=j[n],p=j[m];if(f){let a="y"===n?"top":"left",b="y"===n?"bottom":"right",c=o+l[a],d=o-l[b];o=b2(c,b1(o,d))}if(g){let a="y"===m?"top":"left",b="y"===m?"bottom":"right",c=p+l[a],d=p-l[b];p=b2(c,b1(p,d))}let q=h.fn({...a,[n]:o,[m]:p});return{...q,data:{x:q.x-b,y:q.y-c,enabled:{[n]:f,[m]:g}}}}}).name,fn:A.fn,options:[i,j]},L&&{name:(B={name:"flip",options:p=l={...ad},async fn(a){var b,c,d,e,f,g,h,i;let j,k,l,{placement:m,middlewareData:n,rects:o,initialPlacement:q,platform:r,elements:s}=a,{mainAxis:t=!0,crossAxis:u=!0,fallbackPlacements:v,fallbackStrategy:w="bestFit",fallbackAxisSideDirection:x="none",flipAlignment:y=!0,...z}=b7(p,a);if(null!=(b=n.arrow)&&b.alignmentOffset)return{};let A=b8(m),B=cc(q),C=b8(q)===q,D=await (null==r.isRTL?void 0:r.isRTL(s.floating)),E=v||(C||!y?[ci(q)]:(j=ci(q),[cd(q),j,cd(j)])),F="none"!==x;!v&&F&&E.push(...(k=b9(q),l=function(a,b,c){switch(a){case"top":case"bottom":if(c)return b?cf:ce;return b?ce:cf;case"left":case"right":return b?cg:ch;default:return[]}}(b8(q),"start"===x,D),k&&(l=l.map(a=>a+"-"+k),y&&(l=l.concat(l.map(cd)))),l));let G=[q,...E],H=await r.detectOverflow(a,z),I=[],J=(null==(c=n.flip)?void 0:c.overflows)||[];if(t&&I.push(H[A]),u){let a,b,c,d,e=(g=m,h=o,void 0===(i=D)&&(i=!1),a=b9(g),c=cb(b=ca(cc(g))),d="x"===b?a===(i?"end":"start")?"right":"left":"start"===a?"bottom":"top",h.reference[c]>h.floating[c]&&(d=ci(d)),[d,ci(d)]);I.push(H[e[0]],H[e[1]])}if(J=[...J,{placement:m,overflows:I}],!I.every(a=>a<=0)){let a=((null==(d=n.flip)?void 0:d.index)||0)+1,b=G[a];if(b&&("alignment"!==u||B===cc(b)||J.every(a=>cc(a.placement)!==B||a.overflows[0]>0)))return{data:{index:a,overflows:J},reset:{placement:b}};let c=null==(e=J.filter(a=>a.overflows[0]<=0).sort((a,b)=>a.overflows[1]-b.overflows[1])[0])?void 0:e.placement;if(!c)switch(w){case"bestFit":{let a=null==(f=J.filter(a=>{if(F){let b=cc(a.placement);return b===B||"y"===b}return!0}).map(a=>[a.placement,a.overflows.filter(a=>a>0).reduce((a,b)=>a+b,0)]).sort((a,b)=>a[1]-b[1])[0])?void 0:f[0];a&&(c=a);break}case"initialPlacement":c=q}if(m!==c)return{reset:{placement:c}}}return{}}}).name,fn:B.fn,options:[l,o]},{name:(C={name:"size",options:s=q={...ad,apply:({elements:a,rects:b,availableWidth:c,availableHeight:d})=>{let{width:e,height:f}=b.reference,g=a.floating.style;g.setProperty("--radix-popper-available-width",`${c}px`),g.setProperty("--radix-popper-available-height",`${d}px`),g.setProperty("--radix-popper-anchor-width",`${e}px`),g.setProperty("--radix-popper-anchor-height",`${f}px`)}},async fn(a){var b,c;let d,e,{placement:f,rects:g,platform:h,elements:i}=a,{apply:j=()=>{},...k}=b7(s,a),l=await h.detectOverflow(a,k),m=b8(f),n=b9(f),o="y"===cc(f),{width:p,height:q}=g.floating;"top"===m||"bottom"===m?(d=m,e=n===(await (null==h.isRTL?void 0:h.isRTL(i.floating))?"start":"end")?"left":"right"):(e=m,d="end"===n?"top":"bottom");let r=q-l.top-l.bottom,t=p-l.left-l.right,u=b1(q-l[d],r),v=b1(p-l[e],t),w=!a.middlewareData.shift,x=u,y=v;if(null!=(b=a.middlewareData.shift)&&b.enabled.x&&(y=t),null!=(c=a.middlewareData.shift)&&c.enabled.y&&(x=r),w&&!n){let a=b2(l.left,0),b=b2(l.right,0),c=b2(l.top,0),d=b2(l.bottom,0);o?y=p-2*(0!==a||0!==b?a+b:b2(l.left,l.right)):x=q-2*(0!==c||0!==d?c+d:b2(l.top,l.bottom))}await j({...a,availableWidth:y,availableHeight:x});let z=await h.getDimensions(i.floating);return p!==z.width||q!==z.height?{reset:{rects:!0}}:{}}}).name,fn:C.fn,options:[q,r]},X&&{name:(D={name:"arrow",options:v=t={element:X,padding:K},fn(a){let{element:b,padding:c}="function"==typeof v?v(a):v;return b&&({}).hasOwnProperty.call(b,"current")?null!=b.current?cY({element:b.current,padding:c}).fn(a):{}:b?cY({element:b,padding:c}).fn(a):{}}}).name,fn:D.fn,options:[t,u]},di({arrowWidth:$,arrowHeight:_}),P&&{name:(E={name:"hide",options:y=w={strategy:"referenceHidden",...ad},async fn(a){let{rects:b,platform:c}=a,{strategy:d="referenceHidden",...e}=b7(y,a);switch(d){case"referenceHidden":{let d=co(await c.detectOverflow(a,{...e,elementContext:"reference"}),b.reference);return{data:{referenceHiddenOffsets:d,referenceHidden:cp(d)}}}case"escaped":{let d=co(await c.detectOverflow(a,{...e,altBoundary:!0}),b.floating);return{data:{escapedOffsets:d,escaped:cp(d)}}}default:return{}}}}).name,fn:E.fn,options:[w,x]}]}),[aj,ak]=dj(ag),al=bH(R);bY(()=>{ah&&al?.()},[ah,al]);let am=ai.arrow?.x,an=ai.arrow?.y,ao=ai.arrow?.centerOffset!==0,[ap,aq]=n.useState();return bY(()=>{U&&aq(window.getComputedStyle(U).zIndex)},[U]),(0,m.jsx)("div",{ref:ae.setFloating,"data-radix-popper-content-wrapper":"",style:{...af,transform:ah?af.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ap,"--radix-popper-transform-origin":[ai.transformOrigin?.x,ai.transformOrigin?.y].join(" "),...ai.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:a.dir,children:(0,m.jsx)(db,{scope:F,placedSide:aj,onArrowChange:Y,arrowX:am,arrowY:an,shouldHideArrow:ao,children:(0,m.jsx)(bG.div,{"data-side":aj,"data-align":ak,...S,ref:W,style:{...S.style,animation:ah?void 0:"none"}})})})});dd.displayName=da;var de="PopperArrow",df={top:"bottom",right:"left",bottom:"top",left:"right"},dg=n.forwardRef(function(a,b){let{__scopePopper:c,...d}=a,e=dc(de,c),f=df[e.placedSide];return(0,m.jsx)("span",{ref:e.onArrowChange,style:{position:"absolute",left:e.arrowX,top:e.arrowY,[f]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[e.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[e.placedSide],visibility:e.shouldHideArrow?"hidden":void 0},children:(0,m.jsx)(c1,{...d,ref:b,style:{...d.style,display:"block"}})})});function dh(a){return null!==a}dg.displayName=de;var di=a=>({name:"transformOrigin",options:a,fn(b){let{placement:c,rects:d,middlewareData:e}=b,f=e.arrow?.centerOffset!==0,g=f?0:a.arrowWidth,h=f?0:a.arrowHeight,[i,j]=dj(c),k={start:"0%",center:"50%",end:"100%"}[j],l=(e.arrow?.x??0)+g/2,m=(e.arrow?.y??0)+h/2,n="",o="";return"bottom"===i?(n=f?k:`${l}px`,o=`${-h}px`):"top"===i?(n=f?k:`${l}px`,o=`${d.floating.height+h}px`):"right"===i?(n=`${-h}px`,o=f?k:`${m}px`):"left"===i&&(n=`${d.floating.width+h}px`,o=f?k:`${m}px`),{data:{x:n,y:o}}}});function dj(a){let[b,c="center"]=a.split("-");return[b,c]}var dk=n.forwardRef((a,b)=>{let{container:c,...d}=a,[e,f]=n.useState(!1);bY(()=>f(!0),[]);let g=c||e&&globalThis?.document?.body;return g?bs.default.createPortal((0,m.jsx)(bG.div,{...d,ref:b}),g):null});dk.displayName="Portal",n[" useEffectEvent ".trim().toString()],n[" useInsertionEffect ".trim().toString()];var dl=n[" useInsertionEffect ".trim().toString()]||bY;function dm({prop:a,defaultProp:b,onChange:c=()=>{},caller:d}){let[e,f,g]=function({defaultProp:a,onChange:b}){let[c,d]=n.useState(a),e=n.useRef(c),f=n.useRef(b);return dl(()=>{f.current=b},[b]),n.useEffect(()=>{e.current!==c&&(f.current?.(c),e.current=c)},[c,e]),[c,d,f]}({defaultProp:b,onChange:c}),h=void 0!==a,i=h?a:e;{let b=n.useRef(void 0!==a);n.useEffect(()=>{let a=b.current;if(a!==h){let b=h?"controlled":"uncontrolled";console.warn(`${d} is changing from ${a?"controlled":"uncontrolled"} to ${b}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}b.current=h},[h,d])}return[i,n.useCallback(b=>{if(h){let c="function"==typeof b?b(a):b;c!==a&&g.current?.(c)}else f(b)},[h,a,f,g])]}Symbol("RADIX:SYNC_STATE");var dn=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"});n.forwardRef((a,b)=>(0,m.jsx)(bG.span,{...a,ref:b,style:{...dn,...a.style}})).displayName="VisuallyHidden";var dp=new WeakMap,dq=new WeakMap,dr={},ds=0,dt=function(a){return a&&(a.host||dt(a.parentNode))},du=function(a,b,c,d){var e=(Array.isArray(a)?a:[a]).map(function(a){if(b.contains(a))return a;var c=dt(a);return c&&b.contains(c)?c:(console.error("aria-hidden",a,"in not contained inside",b,". Doing nothing"),null)}).filter(function(a){return!!a});dr[c]||(dr[c]=new WeakMap);var f=dr[c],g=[],h=new Set,i=new Set(e),j=function(a){!a||h.has(a)||(h.add(a),j(a.parentNode))};e.forEach(j);var k=function(a){!a||i.has(a)||Array.prototype.forEach.call(a.children,function(a){if(h.has(a))k(a);else try{var b=a.getAttribute(d),e=null!==b&&"false"!==b,i=(dp.get(a)||0)+1,j=(f.get(a)||0)+1;dp.set(a,i),f.set(a,j),g.push(a),1===i&&e&&dq.set(a,!0),1===j&&a.setAttribute(c,"true"),e||a.setAttribute(d,"true")}catch(b){console.error("aria-hidden: cannot operate on ",a,b)}})};return k(b),h.clear(),ds++,function(){g.forEach(function(a){var b=dp.get(a)-1,e=f.get(a)-1;dp.set(a,b),f.set(a,e),b||(dq.has(a)||a.removeAttribute(d),dq.delete(a)),e||a.removeAttribute(c)}),--ds||(dp=new WeakMap,dp=new WeakMap,dq=new WeakMap,dr={})}},dv=function(a,b,c){void 0===c&&(c="data-aria-hidden");var d=Array.from(Array.isArray(a)?a:[a]),e=b||("u"<typeof document?null:(Array.isArray(a)?a[0]:a).ownerDocument.body);return e?(d.push.apply(d,Array.from(e.querySelectorAll("[aria-live], script"))),du(d,e,c,"aria-hidden")):function(){return null}},dw=function(){return(dw=Object.assign||function(a){for(var b,c=1,d=arguments.length;c<d;c++)for(var e in b=arguments[c])Object.prototype.hasOwnProperty.call(b,e)&&(a[e]=b[e]);return a}).apply(this,arguments)};function dx(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c}var dy=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),dz="width-before-scroll-bar";function dA(a,b){return"function"==typeof a?a(b):a&&(a.current=b),a}var dB=n.useEffect,dC=new WeakMap,dD=(void 0===e&&(e={}),(void 0===f&&(f=function(a){return a}),g=[],h=!1,i={read:function(){if(h)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return g.length?g[g.length-1]:null},useMedium:function(a){var b=f(a,h);return g.push(b),function(){g=g.filter(function(a){return a!==b})}},assignSyncMedium:function(a){for(h=!0;g.length;){var b=g;g=[],b.forEach(a)}g={push:function(b){return a(b)},filter:function(){return g}}},assignMedium:function(a){h=!0;var b=[];if(g.length){var c=g;g=[],c.forEach(a),b=g}var d=function(){var c=b;b=[],c.forEach(a)},e=function(){return Promise.resolve().then(d)};e(),g={push:function(a){b.push(a),e()},filter:function(a){return b=b.filter(a),g}}}}).options=dw({async:!0,ssr:!1},e),i),dE=function(){},dF=n.forwardRef(function(a,b){var c,d,e,f,g=n.useRef(null),h=n.useState({onScrollCapture:dE,onWheelCapture:dE,onTouchMoveCapture:dE}),i=h[0],j=h[1],k=a.forwardProps,l=a.children,m=a.className,o=a.removeScrollBar,p=a.enabled,q=a.shards,r=a.sideCar,s=a.noRelative,t=a.noIsolation,u=a.inert,v=a.allowPinchZoom,w=a.as,x=a.gapMode,y=dx(a,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),z=(c=[g,b],d=function(a){return c.forEach(function(b){return dA(b,a)})},(e=(0,n.useState)(function(){return{value:null,callback:d,facade:{get current(){return e.value},set current(value){var a=e.value;a!==value&&(e.value=value,e.callback(value,a))}}}})[0]).callback=d,f=e.facade,dB(function(){var a=dC.get(f);if(a){var b=new Set(a),d=new Set(c),e=f.current;b.forEach(function(a){d.has(a)||dA(a,null)}),d.forEach(function(a){b.has(a)||dA(a,e)})}dC.set(f,c)},[c]),f),A=dw(dw({},y),i);return n.createElement(n.Fragment,null,p&&n.createElement(r,{sideCar:dD,removeScrollBar:o,shards:q,noRelative:s,noIsolation:t,inert:u,setCallbacks:j,allowPinchZoom:!!v,lockRef:g,gapMode:x}),k?n.cloneElement(n.Children.only(l),dw(dw({},A),{ref:z})):n.createElement(void 0===w?"div":w,dw({},A,{className:m,ref:z}),l))});dF.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},dF.classNames={fullWidth:dz,zeroRight:dy};var dG=function(a){var b=a.sideCar,c=dx(a,["sideCar"]);if(!b)throw Error("Sidecar: please provide `sideCar` property to import the right car");var d=b.read();if(!d)throw Error("Sidecar medium not found");return n.createElement(d,dw({},c))};dG.isSideCarExport=!0;var dH=function(){var a=0,b=null;return{add:function(c){if(0==a&&(b=function(){if(!document)return null;var a=document.createElement("style");a.type="text/css";var b=l||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return b&&a.setAttribute("nonce",b),a}())){var d,e;(d=b).styleSheet?d.styleSheet.cssText=c:d.appendChild(document.createTextNode(c)),e=b,(document.head||document.getElementsByTagName("head")[0]).appendChild(e)}a++},remove:function(){--a||!b||(b.parentNode&&b.parentNode.removeChild(b),b=null)}}},dI=function(){var a=dH();return function(b,c){n.useEffect(function(){return a.add(b),function(){a.remove()}},[b&&c])}},dJ=function(){var a=dI();return function(b){return a(b.styles,b.dynamic),null}},dK={left:0,top:0,right:0,gap:0},dL=dJ(),dM="data-scroll-locked",dN=function(a,b,c,d){var e=a.left,f=a.top,g=a.right,h=a.gap;return void 0===c&&(c="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(d,";\n padding-right: ").concat(h,"px ").concat(d,";\n }\n body[").concat(dM,"] {\n overflow: hidden ").concat(d,";\n overscroll-behavior: contain;\n ").concat([b&&"position: relative ".concat(d,";"),"margin"===c&&"\n padding-left: ".concat(e,"px;\n padding-top: ").concat(f,"px;\n padding-right: ").concat(g,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(h,"px ").concat(d,";\n "),"padding"===c&&"padding-right: ".concat(h,"px ").concat(d,";")].filter(Boolean).join(""),"\n }\n \n .").concat(dy," {\n right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(dz," {\n margin-right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(dy," .").concat(dy," {\n right: 0 ").concat(d,";\n }\n \n .").concat(dz," .").concat(dz," {\n margin-right: 0 ").concat(d,";\n }\n \n body[").concat(dM,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(h,"px;\n }\n")},dO=function(){var a=parseInt(document.body.getAttribute(dM)||"0",10);return isFinite(a)?a:0},dP=function(){n.useEffect(function(){return document.body.setAttribute(dM,(dO()+1).toString()),function(){var a=dO()-1;a<=0?document.body.removeAttribute(dM):document.body.setAttribute(dM,a.toString())}},[])},dQ=function(a){var b=a.noRelative,c=a.noImportant,d=a.gapMode,e=void 0===d?"margin":d;dP();var f=n.useMemo(function(){return void 0===e,dK},[e]);return n.createElement(dL,{styles:dN(f,!b,e,c?"":"!important")})},dR=function(a,b){if(!(a instanceof Element))return!1;var c=window.getComputedStyle(a);return"hidden"!==c[b]&&(c.overflowY!==c.overflowX||"TEXTAREA"===a.tagName||"visible"!==c[b])},dS=function(a,b){var c=b.ownerDocument,d=b;do{if("u">typeof ShadowRoot&&d instanceof ShadowRoot&&(d=d.host),dT(a,d)){var e=dU(a,d);if(e[1]>e[2])return!0}d=d.parentNode}while(d&&d!==c.body)return!1},dT=function(a,b){return"v"===a?dR(b,"overflowY"):dR(b,"overflowX")},dU=function(a,b){return"v"===a?[b.scrollTop,b.scrollHeight,b.clientHeight]:[b.scrollLeft,b.scrollWidth,b.clientWidth]},dV=function(a,b,c,d,e){var f,g=(f=window.getComputedStyle(b).direction,"h"===a&&"rtl"===f?-1:1),h=g*d,i=c.target,j=b.contains(i),k=!1,l=h>0,m=0,n=0;do{if(!i)break;var o=dU(a,i),p=o[0],q=o[1]-o[2]-g*p;(p||q)&&dT(a,i)&&(m+=q,n+=p);var r=i.parentNode;i=r&&r.nodeType===Node.DOCUMENT_FRAGMENT_NODE?r.host:r}while(!j&&i!==document.body||j&&(b.contains(i)||b===i))return l&&(e&&1>Math.abs(m)||!e&&h>m)?k=!0:!l&&(e&&1>Math.abs(n)||!e&&-h>n)&&(k=!0),k},dW=function(a){return"changedTouches"in a?[a.changedTouches[0].clientX,a.changedTouches[0].clientY]:[0,0]},dX=function(a){return[a.deltaX,a.deltaY]},dY=function(a){return a&&"current"in a?a.current:a},dZ=0,d$=[];let d_=(j=function(a){var b=n.useRef([]),c=n.useRef([0,0]),d=n.useRef(),e=n.useState(dZ++)[0],f=n.useState(dJ)[0],g=n.useRef(a);n.useEffect(function(){g.current=a},[a]),n.useEffect(function(){if(a.inert){document.body.classList.add("block-interactivity-".concat(e));var b=(function(a,b,c){if(c||2==arguments.length)for(var d,e=0,f=b.length;e<f;e++)!d&&e in b||(d||(d=Array.prototype.slice.call(b,0,e)),d[e]=b[e]);return a.concat(d||Array.prototype.slice.call(b))})([a.lockRef.current],(a.shards||[]).map(dY),!0).filter(Boolean);return b.forEach(function(a){return a.classList.add("allow-interactivity-".concat(e))}),function(){document.body.classList.remove("block-interactivity-".concat(e)),b.forEach(function(a){return a.classList.remove("allow-interactivity-".concat(e))})}}},[a.inert,a.lockRef.current,a.shards]);var h=n.useCallback(function(a,b){if("touches"in a&&2===a.touches.length||"wheel"===a.type&&a.ctrlKey)return!g.current.allowPinchZoom;var e,f=dW(a),h=c.current,i="deltaX"in a?a.deltaX:h[0]-f[0],j="deltaY"in a?a.deltaY:h[1]-f[1],k=a.target,l=Math.abs(i)>Math.abs(j)?"h":"v";if("touches"in a&&"h"===l&&"range"===k.type)return!1;var m=window.getSelection(),n=m&&m.anchorNode;if(n&&(n===k||n.contains(k)))return!1;var o=dS(l,k);if(!o)return!0;if(o?e=l:(e="v"===l?"h":"v",o=dS(l,k)),!o)return!1;if(!d.current&&"changedTouches"in a&&(i||j)&&(d.current=e),!e)return!0;var p=d.current||e;return dV(p,b,a,"h"===p?i:j,!0)},[]),i=n.useCallback(function(a){if(d$.length&&d$[d$.length-1]===f){var c="deltaY"in a?dX(a):dW(a),d=b.current.filter(function(b){var d;return b.name===a.type&&(b.target===a.target||a.target===b.shadowParent)&&(d=b.delta,d[0]===c[0]&&d[1]===c[1])})[0];if(d&&d.should){a.cancelable&&a.preventDefault();return}if(!d){var e=(g.current.shards||[]).map(dY).filter(Boolean).filter(function(b){return b.contains(a.target)});(e.length>0?h(a,e[0]):!g.current.noIsolation)&&a.cancelable&&a.preventDefault()}}},[]),j=n.useCallback(function(a,c,d,e){var f={name:a,delta:c,target:d,should:e,shadowParent:function(a){for(var b=null;null!==a;)a instanceof ShadowRoot&&(b=a.host,a=a.host),a=a.parentNode;return b}(d)};b.current.push(f),setTimeout(function(){b.current=b.current.filter(function(a){return a!==f})},1)},[]),k=n.useCallback(function(a){c.current=dW(a),d.current=void 0},[]),l=n.useCallback(function(b){j(b.type,dX(b),b.target,h(b,a.lockRef.current))},[]),m=n.useCallback(function(b){j(b.type,dW(b),b.target,h(b,a.lockRef.current))},[]);n.useEffect(function(){return d$.push(f),a.setCallbacks({onScrollCapture:l,onWheelCapture:l,onTouchMoveCapture:m}),document.addEventListener("wheel",i,!1),document.addEventListener("touchmove",i,!1),document.addEventListener("touchstart",k,!1),function(){d$=d$.filter(function(a){return a!==f}),document.removeEventListener("wheel",i,!1),document.removeEventListener("touchmove",i,!1),document.removeEventListener("touchstart",k,!1)}},[]);var o=a.removeScrollBar,p=a.inert;return n.createElement(n.Fragment,null,p?n.createElement(f,{styles:"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")}):null,o?n.createElement(dQ,{noRelative:a.noRelative,gapMode:a.gapMode}):null)},dD.useMedium(j),dG);var d0=n.forwardRef(function(a,b){return n.createElement(dF,dw({},a,{ref:b,sideCar:d_}))});d0.classNames=dF.classNames;var d1=[" ","Enter","ArrowUp","ArrowDown"],d2=[" ","Enter"],d3="Select",[d4,d5,d6]=function(a){let b=a+"CollectionProvider",[c,d]=bv(b),[e,f]=c(b,{collectionRef:{current:null},itemMap:new Map}),g=a=>{let{scope:b,children:c}=a,d=n.default.useRef(null),f=n.default.useRef(new Map).current;return(0,m.jsx)(e,{scope:b,itemMap:f,collectionRef:d,children:c})};g.displayName=b;let h=a+"CollectionSlot",i=bz(h),j=n.default.forwardRef((a,b)=>{let{scope:c,children:d}=a,e=by(b,f(h,c).collectionRef);return(0,m.jsx)(i,{ref:e,children:d})});j.displayName=h;let k=a+"CollectionItemSlot",l="data-radix-collection-item",o=bz(k),p=n.default.forwardRef((a,b)=>{let{scope:c,children:d,...e}=a,g=n.default.useRef(null),h=by(b,g),i=f(k,c);return n.default.useEffect(()=>(i.itemMap.set(g,{ref:g,...e}),()=>void i.itemMap.delete(g))),(0,m.jsx)(o,{...{[l]:""},ref:h,children:d})});return p.displayName=k,[{Provider:g,Slot:j,ItemSlot:p},function(b){let c=f(a+"CollectionConsumer",b);return n.default.useCallback(()=>{let a=c.collectionRef.current;if(!a)return[];let b=Array.from(a.querySelectorAll(`[${l}]`));return Array.from(c.itemMap.values()).sort((a,c)=>b.indexOf(a.ref.current)-b.indexOf(c.ref.current))},[c.collectionRef,c.itemMap])},d]}(d3),[d7,d8]=bv(d3,[d6,c4]),d9=c4(),[ea,eb]=d7(d3),[ec,ed]=d7(d3),ee=a=>{let b,{__scopeSelect:c,children:d,open:e,defaultOpen:f,onOpenChange:g,value:h,defaultValue:i,onValueChange:j,dir:k,name:l,autoComplete:o,disabled:p,required:q,form:r}=a,s=d9(c),[t,u]=n.useState(null),[v,w]=n.useState(null),[x,y]=n.useState(!1),z=(b=n.useContext(bF),k||b||"ltr"),[A,B]=dm({prop:e,defaultProp:f??!1,onChange:g,caller:d3}),[C,D]=dm({prop:h,defaultProp:i,onChange:j,caller:d3}),E=n.useRef(null),F=!t||r||!!t.closest("form"),[G,H]=n.useState(new Set),I=Array.from(G).map(a=>a.props.value).join(";");return(0,m.jsx)(c7,{...s,children:(0,m.jsxs)(ea,{required:q,scope:c,trigger:t,onTriggerChange:u,valueNode:v,onValueNodeChange:w,valueNodeHasChildren:x,onValueNodeHasChildrenChange:y,contentId:b_(),value:C,onValueChange:D,open:A,onOpenChange:B,dir:z,triggerPointerDownPosRef:E,disabled:p,children:[(0,m.jsx)(d4.Provider,{scope:c,children:(0,m.jsx)(ec,{scope:a.__scopeSelect,onNativeOptionAdd:n.useCallback(a=>{H(b=>new Set(b).add(a))},[]),onNativeOptionRemove:n.useCallback(a=>{H(b=>{let c=new Set(b);return c.delete(a),c})},[]),children:d})}),F?(0,m.jsxs)(eN,{"aria-hidden":!0,required:q,tabIndex:-1,name:l,autoComplete:o,value:C,onChange:a=>D(a.target.value),disabled:p,form:r,children:[void 0===C?(0,m.jsx)("option",{value:""}):null,Array.from(G)]},I):null]})})};ee.displayName=d3;var ef="SelectTrigger",eg=n.forwardRef((a,b)=>{let{__scopeSelect:c,disabled:d=!1,...e}=a,f=d9(c),g=eb(ef,c),h=g.disabled||d,i=by(b,g.onTriggerChange),j=d5(c),k=n.useRef("touch"),[l,o,p]=eP(a=>{let b=j().filter(a=>!a.disabled),c=b.find(a=>a.value===g.value),d=eQ(b,a,c);void 0!==d&&g.onValueChange(d.value)}),q=a=>{h||(g.onOpenChange(!0),p()),a&&(g.triggerPointerDownPosRef.current={x:Math.round(a.pageX),y:Math.round(a.pageY)})};return(0,m.jsx)(c9,{asChild:!0,...f,children:(0,m.jsx)(bG.button,{type:"button",role:"combobox","aria-controls":g.contentId,"aria-expanded":g.open,"aria-required":g.required,"aria-autocomplete":"none",dir:g.dir,"data-state":g.open?"open":"closed",disabled:h,"data-disabled":h?"":void 0,"data-placeholder":eO(g.value)?"":void 0,...e,ref:i,onClick:bu(e.onClick,a=>{a.currentTarget.focus(),"mouse"!==k.current&&q(a)}),onPointerDown:bu(e.onPointerDown,a=>{k.current=a.pointerType;let b=a.target;b.hasPointerCapture(a.pointerId)&&b.releasePointerCapture(a.pointerId),0===a.button&&!1===a.ctrlKey&&"mouse"===a.pointerType&&(q(a),a.preventDefault())}),onKeyDown:bu(e.onKeyDown,a=>{let b=""!==l.current;a.ctrlKey||a.altKey||a.metaKey||1!==a.key.length||o(a.key),(!b||" "!==a.key)&&d1.includes(a.key)&&(q(),a.preventDefault())})})})});eg.displayName=ef;var eh="SelectValue",ei=n.forwardRef((a,b)=>{let{__scopeSelect:c,className:d,style:e,children:f,placeholder:g="",...h}=a,i=eb(eh,c),{onValueNodeHasChildrenChange:j}=i,k=void 0!==f,l=by(b,i.onValueNodeChange);return bY(()=>{j(k)},[j,k]),(0,m.jsx)(bG.span,{...h,ref:l,style:{pointerEvents:"none"},children:eO(i.value)?(0,m.jsx)(m.Fragment,{children:g}):f})});ei.displayName=eh;var ej=n.forwardRef((a,b)=>{let{__scopeSelect:c,children:d,...e}=a;return(0,m.jsx)(bG.span,{"aria-hidden":!0,...e,ref:b,children:d||"▼"})});ej.displayName="SelectIcon";var ek=a=>(0,m.jsx)(dk,{asChild:!0,...a});ek.displayName="SelectPortal";var el="SelectContent",em=n.forwardRef((a,b)=>{let c=eb(el,a.__scopeSelect),[d,e]=n.useState();return(bY(()=>{e(new DocumentFragment)},[]),c.open)?(0,m.jsx)(eq,{...a,ref:b}):d?bs.createPortal((0,m.jsx)(en,{scope:a.__scopeSelect,children:(0,m.jsx)(d4.Slot,{scope:a.__scopeSelect,children:(0,m.jsx)("div",{children:a.children})})}),d):null});em.displayName=el;var[en,eo]=d7(el),ep=bz("SelectContent.RemoveScroll"),eq=n.forwardRef((a,b)=>{let{__scopeSelect:c,position:d="item-aligned",onCloseAutoFocus:e,onEscapeKeyDown:f,onPointerDownOutside:g,side:h,sideOffset:i,align:j,alignOffset:k,arrowPadding:l,collisionBoundary:o,collisionPadding:p,sticky:q,hideWhenDetached:r,avoidCollisions:s,...t}=a,u=eb(el,c),[v,w]=n.useState(null),[x,y]=n.useState(null),z=by(b,a=>w(a)),[A,B]=n.useState(null),[C,D]=n.useState(null),E=d5(c),[F,G]=n.useState(!1),H=n.useRef(!1);n.useEffect(()=>{if(v)return dv(v)},[v]),n.useEffect(()=>{let a=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",a[0]??bO()),document.body.insertAdjacentElement("beforeend",a[1]??bO()),bN++,()=>{1===bN&&document.querySelectorAll("[data-radix-focus-guard]").forEach(a=>a.remove()),bN--}},[]);let I=n.useCallback(a=>{let[b,...c]=E().map(a=>a.ref.current),[d]=c.slice(-1),e=document.activeElement;for(let c of a)if(c===e||(c?.scrollIntoView({block:"nearest"}),c===b&&x&&(x.scrollTop=0),c===d&&x&&(x.scrollTop=x.scrollHeight),c?.focus(),document.activeElement!==e))return},[E,x]),J=n.useCallback(()=>I([A,v]),[I,A,v]);n.useEffect(()=>{F&&J()},[F,J]);let{onOpenChange:K,triggerPointerDownPosRef:L}=u;n.useEffect(()=>{if(v){let a={x:0,y:0},b=b=>{a={x:Math.abs(Math.round(b.pageX)-(L.current?.x??0)),y:Math.abs(Math.round(b.pageY)-(L.current?.y??0))}},c=c=>{a.x<=10&&a.y<=10?c.preventDefault():v.contains(c.target)||K(!1),document.removeEventListener("pointermove",b),L.current=null};return null!==L.current&&(document.addEventListener("pointermove",b),document.addEventListener("pointerup",c,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",c,{capture:!0})}}},[v,K,L]),n.useEffect(()=>{let a=()=>K(!1);return window.addEventListener("blur",a),window.addEventListener("resize",a),()=>{window.removeEventListener("blur",a),window.removeEventListener("resize",a)}},[K]);let[M,N]=eP(a=>{let b=E().filter(a=>!a.disabled),c=b.find(a=>a.ref.current===document.activeElement),d=eQ(b,a,c);d&&setTimeout(()=>d.ref.current.focus())}),O=n.useCallback((a,b,c)=>{let d=!H.current&&!c;(void 0!==u.value&&u.value===b||d)&&(B(a),d&&(H.current=!0))},[u.value]),P=n.useCallback(()=>v?.focus(),[v]),Q=n.useCallback((a,b,c)=>{let d=!H.current&&!c;(void 0!==u.value&&u.value===b||d)&&D(a)},[u.value]),R="popper"===d?es:er,S=R===es?{side:h,sideOffset:i,align:j,alignOffset:k,arrowPadding:l,collisionBoundary:o,collisionPadding:p,sticky:q,hideWhenDetached:r,avoidCollisions:s}:{};return(0,m.jsx)(en,{scope:c,content:v,viewport:x,onViewportChange:y,itemRefCallback:O,selectedItem:A,onItemLeave:P,itemTextRefCallback:Q,focusSelectedItem:J,selectedItemText:C,position:d,isPositioned:F,searchRef:M,children:(0,m.jsx)(d0,{as:ep,allowPinchZoom:!0,children:(0,m.jsx)(bS,{asChild:!0,trapped:u.open,onMountAutoFocus:a=>{a.preventDefault()},onUnmountAutoFocus:bu(e,a=>{u.trigger?.focus({preventScroll:!0}),a.preventDefault()}),children:(0,m.jsx)(bK,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:f,onPointerDownOutside:g,onFocusOutside:a=>a.preventDefault(),onDismiss:()=>u.onOpenChange(!1),children:(0,m.jsx)(R,{role:"listbox",id:u.contentId,"data-state":u.open?"open":"closed",dir:u.dir,onContextMenu:a=>a.preventDefault(),...t,...S,onPlaced:()=>G(!0),ref:z,style:{display:"flex",flexDirection:"column",outline:"none",...t.style},onKeyDown:bu(t.onKeyDown,a=>{let b=a.ctrlKey||a.altKey||a.metaKey;if("Tab"===a.key&&a.preventDefault(),b||1!==a.key.length||N(a.key),["ArrowUp","ArrowDown","Home","End"].includes(a.key)){let b=E().filter(a=>!a.disabled).map(a=>a.ref.current);if(["ArrowUp","End"].includes(a.key)&&(b=b.slice().reverse()),["ArrowUp","ArrowDown"].includes(a.key)){let c=a.target,d=b.indexOf(c);b=b.slice(d+1)}setTimeout(()=>I(b)),a.preventDefault()}})})})})})})});eq.displayName="SelectContentImpl";var er=n.forwardRef((a,b)=>{let{__scopeSelect:c,onPlaced:d,...e}=a,f=eb(el,c),g=eo(el,c),[h,i]=n.useState(null),[j,k]=n.useState(null),l=by(b,a=>k(a)),o=d5(c),p=n.useRef(!1),q=n.useRef(!0),{viewport:r,selectedItem:s,selectedItemText:t,focusSelectedItem:u}=g,v=n.useCallback(()=>{if(f.trigger&&f.valueNode&&h&&j&&r&&s&&t){let a=f.trigger.getBoundingClientRect(),b=j.getBoundingClientRect(),c=f.valueNode.getBoundingClientRect(),e=t.getBoundingClientRect();if("rtl"!==f.dir){let d=e.left-b.left,f=c.left-d,g=a.left-f,i=a.width+g,j=Math.max(i,b.width),k=bt(f,[10,Math.max(10,window.innerWidth-10-j)]);h.style.minWidth=i+"px",h.style.left=k+"px"}else{let d=b.right-e.right,f=window.innerWidth-c.right-d,g=window.innerWidth-a.right-f,i=a.width+g,j=Math.max(i,b.width),k=bt(f,[10,Math.max(10,window.innerWidth-10-j)]);h.style.minWidth=i+"px",h.style.right=k+"px"}let g=o(),i=window.innerHeight-20,k=r.scrollHeight,l=window.getComputedStyle(j),m=parseInt(l.borderTopWidth,10),n=parseInt(l.paddingTop,10),q=parseInt(l.borderBottomWidth,10),u=m+n+k+parseInt(l.paddingBottom,10)+q,v=Math.min(5*s.offsetHeight,u),w=window.getComputedStyle(r),x=parseInt(w.paddingTop,10),y=parseInt(w.paddingBottom,10),z=a.top+a.height/2-10,A=s.offsetHeight/2,B=m+n+(s.offsetTop+A);if(B<=z){let a=g.length>0&&s===g[g.length-1].ref.current;h.style.bottom="0px";let b=Math.max(i-z,A+(a?y:0)+(j.clientHeight-r.offsetTop-r.offsetHeight)+q);h.style.height=B+b+"px"}else{let a=g.length>0&&s===g[0].ref.current;h.style.top="0px";let b=Math.max(z,m+r.offsetTop+(a?x:0)+A);h.style.height=b+(u-B)+"px",r.scrollTop=B-z+r.offsetTop}h.style.margin="10px 0",h.style.minHeight=v+"px",h.style.maxHeight=i+"px",d?.(),requestAnimationFrame(()=>p.current=!0)}},[o,f.trigger,f.valueNode,h,j,r,s,t,f.dir,d]);bY(()=>v(),[v]);let[w,x]=n.useState();bY(()=>{j&&x(window.getComputedStyle(j).zIndex)},[j]);let y=n.useCallback(a=>{a&&!0===q.current&&(v(),u?.(),q.current=!1)},[v,u]);return(0,m.jsx)(et,{scope:c,contentWrapper:h,shouldExpandOnScrollRef:p,onScrollButtonChange:y,children:(0,m.jsx)("div",{ref:i,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:w},children:(0,m.jsx)(bG.div,{...e,ref:l,style:{boxSizing:"border-box",maxHeight:"100%",...e.style}})})})});er.displayName="SelectItemAlignedPosition";var es=n.forwardRef((a,b)=>{let{__scopeSelect:c,align:d="start",collisionPadding:e=10,...f}=a,g=d9(c);return(0,m.jsx)(dd,{...g,...f,ref:b,align:d,collisionPadding:e,style:{boxSizing:"border-box",...f.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});es.displayName="SelectPopperPosition";var[et,eu]=d7(el,{}),ev="SelectViewport",ew=n.forwardRef((a,b)=>{let{__scopeSelect:c,nonce:d,...e}=a,f=eo(ev,c),g=eu(ev,c),h=by(b,f.onViewportChange),i=n.useRef(0);return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:d}),(0,m.jsx)(d4.Slot,{scope:c,children:(0,m.jsx)(bG.div,{"data-radix-select-viewport":"",role:"presentation",...e,ref:h,style:{position:"relative",flex:1,overflow:"hidden auto",...e.style},onScroll:bu(e.onScroll,a=>{let b=a.currentTarget,{contentWrapper:c,shouldExpandOnScrollRef:d}=g;if(d?.current&&c){let a=Math.abs(i.current-b.scrollTop);if(a>0){let d=window.innerHeight-20,e=Math.max(parseFloat(c.style.minHeight),parseFloat(c.style.height));if(e<d){let f=e+a,g=Math.min(d,f),h=f-g;c.style.height=g+"px","0px"===c.style.bottom&&(b.scrollTop=h>0?h:0,c.style.justifyContent="flex-end")}}}i.current=b.scrollTop})})})]})});ew.displayName=ev;var ex="SelectGroup",[ey,ez]=d7(ex);n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=b_();return(0,m.jsx)(ey,{scope:c,id:e,children:(0,m.jsx)(bG.div,{role:"group","aria-labelledby":e,...d,ref:b})})}).displayName=ex;var eA="SelectLabel";n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=ez(eA,c);return(0,m.jsx)(bG.div,{id:e.id,...d,ref:b})}).displayName=eA;var eB="SelectItem",[eC,eD]=d7(eB),eE=n.forwardRef((a,b)=>{let{__scopeSelect:c,value:d,disabled:e=!1,textValue:f,...g}=a,h=eb(eB,c),i=eo(eB,c),j=h.value===d,[k,l]=n.useState(f??""),[o,p]=n.useState(!1),q=by(b,a=>i.itemRefCallback?.(a,d,e)),r=b_(),s=n.useRef("touch"),t=()=>{e||(h.onValueChange(d),h.onOpenChange(!1))};if(""===d)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,m.jsx)(eC,{scope:c,value:d,disabled:e,textId:r,isSelected:j,onItemTextChange:n.useCallback(a=>{l(b=>b||(a?.textContent??"").trim())},[]),children:(0,m.jsx)(d4.ItemSlot,{scope:c,value:d,disabled:e,textValue:k,children:(0,m.jsx)(bG.div,{role:"option","aria-labelledby":r,"data-highlighted":o?"":void 0,"aria-selected":j&&o,"data-state":j?"checked":"unchecked","aria-disabled":e||void 0,"data-disabled":e?"":void 0,tabIndex:e?void 0:-1,...g,ref:q,onFocus:bu(g.onFocus,()=>p(!0)),onBlur:bu(g.onBlur,()=>p(!1)),onClick:bu(g.onClick,()=>{"mouse"!==s.current&&t()}),onPointerUp:bu(g.onPointerUp,()=>{"mouse"===s.current&&t()}),onPointerDown:bu(g.onPointerDown,a=>{s.current=a.pointerType}),onPointerMove:bu(g.onPointerMove,a=>{s.current=a.pointerType,e?i.onItemLeave?.():"mouse"===s.current&&a.currentTarget.focus({preventScroll:!0})}),onPointerLeave:bu(g.onPointerLeave,a=>{a.currentTarget===document.activeElement&&i.onItemLeave?.()}),onKeyDown:bu(g.onKeyDown,a=>{(i.searchRef?.current===""||" "!==a.key)&&(d2.includes(a.key)&&t()," "===a.key&&a.preventDefault())})})})})});eE.displayName=eB;var eF="SelectItemText",eG=n.forwardRef((a,b)=>{let{__scopeSelect:c,className:d,style:e,...f}=a,g=eb(eF,c),h=eo(eF,c),i=eD(eF,c),j=ed(eF,c),[k,l]=n.useState(null),o=by(b,a=>l(a),i.onItemTextChange,a=>h.itemTextRefCallback?.(a,i.value,i.disabled)),p=k?.textContent,q=n.useMemo(()=>(0,m.jsx)("option",{value:i.value,disabled:i.disabled,children:p},i.value),[i.disabled,i.value,p]),{onNativeOptionAdd:r,onNativeOptionRemove:s}=j;return bY(()=>(r(q),()=>s(q)),[r,s,q]),(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(bG.span,{id:i.textId,...f,ref:o}),i.isSelected&&g.valueNode&&!g.valueNodeHasChildren?bs.createPortal(f.children,g.valueNode):null]})});eG.displayName=eF;var eH="SelectItemIndicator",eI=n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a;return eD(eH,c).isSelected?(0,m.jsx)(bG.span,{"aria-hidden":!0,...d,ref:b}):null});eI.displayName=eH;var eJ="SelectScrollUpButton";n.forwardRef((a,b)=>{let c=eo(eJ,a.__scopeSelect),d=eu(eJ,a.__scopeSelect),[e,f]=n.useState(!1),g=by(b,d.onScrollButtonChange);return bY(()=>{if(c.viewport&&c.isPositioned){let a=function(){f(b.scrollTop>0)},b=c.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[c.viewport,c.isPositioned]),e?(0,m.jsx)(eL,{...a,ref:g,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=c;a&&b&&(a.scrollTop=a.scrollTop-b.offsetHeight)}}):null}).displayName=eJ;var eK="SelectScrollDownButton";n.forwardRef((a,b)=>{let c=eo(eK,a.__scopeSelect),d=eu(eK,a.__scopeSelect),[e,f]=n.useState(!1),g=by(b,d.onScrollButtonChange);return bY(()=>{if(c.viewport&&c.isPositioned){let a=function(){let a=b.scrollHeight-b.clientHeight;f(Math.ceil(b.scrollTop)<a)},b=c.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[c.viewport,c.isPositioned]),e?(0,m.jsx)(eL,{...a,ref:g,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=c;a&&b&&(a.scrollTop=a.scrollTop+b.offsetHeight)}}):null}).displayName=eK;var eL=n.forwardRef((a,b)=>{let{__scopeSelect:c,onAutoScroll:d,...e}=a,f=eo("SelectScrollButton",c),g=n.useRef(null),h=d5(c),i=n.useCallback(()=>{null!==g.current&&(window.clearInterval(g.current),g.current=null)},[]);return n.useEffect(()=>()=>i(),[i]),bY(()=>{let a=h().find(a=>a.ref.current===document.activeElement);a?.ref.current?.scrollIntoView({block:"nearest"})},[h]),(0,m.jsx)(bG.div,{"aria-hidden":!0,...e,ref:b,style:{flexShrink:0,...e.style},onPointerDown:bu(e.onPointerDown,()=>{null===g.current&&(g.current=window.setInterval(d,50))}),onPointerMove:bu(e.onPointerMove,()=>{f.onItemLeave?.(),null===g.current&&(g.current=window.setInterval(d,50))}),onPointerLeave:bu(e.onPointerLeave,()=>{i()})})});n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a;return(0,m.jsx)(bG.div,{"aria-hidden":!0,...d,ref:b})}).displayName="SelectSeparator";var eM="SelectArrow";n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=d9(c),f=eb(eM,c),g=eo(eM,c);return f.open&&"popper"===g.position?(0,m.jsx)(dg,{...e,...d,ref:b}):null}).displayName=eM;var eN=n.forwardRef(({__scopeSelect:a,value:b,...c},d)=>{let e,f=n.useRef(null),g=by(d,f),h=(e=n.useRef({value:b,previous:b}),n.useMemo(()=>(e.current.value!==b&&(e.current.previous=e.current.value,e.current.value=b),e.current.previous),[b]));return n.useEffect(()=>{let a=f.current;if(!a)return;let c=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(h!==b&&c){let d=new Event("change",{bubbles:!0});c.call(a,b),a.dispatchEvent(d)}},[h,b]),(0,m.jsx)(bG.select,{...c,style:{...dn,...c.style},ref:g,defaultValue:b})});function eO(a){return""===a||void 0===a}function eP(a){let b=bH(a),c=n.useRef(""),d=n.useRef(0),e=n.useCallback(a=>{let e=c.current+a;b(e),function a(b){c.current=b,window.clearTimeout(d.current),""!==b&&(d.current=window.setTimeout(()=>a(""),1e3))}(e)},[b]),f=n.useCallback(()=>{c.current="",window.clearTimeout(d.current)},[]);return n.useEffect(()=>()=>window.clearTimeout(d.current),[]),[c,e,f]}function eQ(a,b,c){var d,e;let f=b.length>1&&Array.from(b).every(a=>a===b[0])?b[0]:b,g=c?a.indexOf(c):-1,h=(d=a,e=Math.max(g,0),d.map((a,b)=>d[(e+b)%d.length]));1===f.length&&(h=h.filter(a=>a!==c));let i=h.find(a=>a.textValue.toLowerCase().startsWith(f.toLowerCase()));return i!==c?i:void 0}eN.displayName="SelectBubbleInput";let eR=ae("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]),eS=ae("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]),eT=(a=new Map,b=null,c)=>({nextPart:a,validators:b,classGroupId:c}),eU=[],eV=(a,b,c)=>{if(0==a.length-b)return c.classGroupId;let d=a[b],e=c.nextPart.get(d);if(e){let c=eV(a,b+1,e);if(c)return c}let f=c.validators;if(null===f)return;let g=0===b?a.join("-"):a.slice(b).join("-"),h=f.length;for(let a=0;a<h;a++){let b=f[a];if(b.validator(g))return b.classGroupId}},eW=(a,b)=>{let c=eT();for(let d in a)eX(a[d],c,d,b);return c},eX=(a,b,c,d)=>{let e=a.length;for(let f=0;f<e;f++)eY(a[f],b,c,d)},eY=(a,b,c,d)=>{"string"==typeof a?eZ(a,b,c):"function"==typeof a?e$(a,b,c,d):e_(a,b,c,d)},eZ=(a,b,c)=>{(""===a?b:e0(b,a)).classGroupId=c},e$=(a,b,c,d)=>{e1(a)?eX(a(d),b,c,d):(null===b.validators&&(b.validators=[]),b.validators.push({classGroupId:c,validator:a}))},e_=(a,b,c,d)=>{let e=Object.entries(a),f=e.length;for(let a=0;a<f;a++){let[f,g]=e[a];eX(g,e0(b,f),c,d)}},e0=(a,b)=>{let c=a,d=b.split("-"),e=d.length;for(let a=0;a<e;a++){let b=d[a],e=c.nextPart.get(b);e||(e=eT(),c.nextPart.set(b,e)),c=e}return c},e1=a=>"isThemeGetter"in a&&!0===a.isThemeGetter,e2=[],e3=(a,b,c,d,e)=>({modifiers:a,hasImportantModifier:b,baseClassName:c,maybePostfixModifierPosition:d,isExternal:e}),e4=/\s+/,e5=a=>{let b;if("string"==typeof a)return a;let c="";for(let d=0;d<a.length;d++)a[d]&&(b=e5(a[d]))&&(c&&(c+=" "),c+=b);return c},e6=[],e7=a=>{let b=b=>b[a]||e6;return b.isThemeGetter=!0,b},e8=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,e9=/^\((?:(\w[\w-]*):)?(.+)\)$/i,fa=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,fb=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,fc=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,fd=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,fe=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,ff=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,fg=a=>fa.test(a),fh=a=>!!a&&!Number.isNaN(Number(a)),fi=a=>!!a&&Number.isInteger(Number(a)),fj=a=>a.endsWith("%")&&fh(a.slice(0,-1)),fk=a=>fb.test(a),fl=()=>!0,fm=a=>fc.test(a)&&!fd.test(a),fn=()=>!1,fo=a=>fe.test(a),fp=a=>ff.test(a),fq=a=>!fs(a)&&!fA(a),fr=a=>fI(a,fM,fn),fs=a=>e8.test(a),ft=a=>fI(a,fN,fm),fu=a=>fI(a,fO,fh),fv=a=>fI(a,fQ,fl),fw=a=>fI(a,fP,fn),fx=a=>fI(a,fK,fn),fy=a=>fI(a,fL,fp),fz=a=>fI(a,fR,fo),fA=a=>e9.test(a),fB=a=>fJ(a,fN),fC=a=>fJ(a,fP),fD=a=>fJ(a,fK),fE=a=>fJ(a,fM),fF=a=>fJ(a,fL),fG=a=>fJ(a,fR,!0),fH=a=>fJ(a,fQ,!0),fI=(a,b,c)=>{let d=e8.exec(a);return!!d&&(d[1]?b(d[1]):c(d[2]))},fJ=(a,b,c=!1)=>{let d=e9.exec(a);return!!d&&(d[1]?b(d[1]):c)},fK=a=>"position"===a||"percentage"===a,fL=a=>"image"===a||"url"===a,fM=a=>"length"===a||"size"===a||"bg-size"===a,fN=a=>"length"===a,fO=a=>"number"===a,fP=a=>"family-name"===a,fQ=a=>"number"===a||"weight"===a,fR=a=>"shadow"===a,fS=((a,...b)=>{let c,d,e,f,g=a=>{let b=d(a);if(b)return b;let f=((a,b)=>{let{parseClassName:c,getClassGroupId:d,getConflictingClassGroupIds:e,sortModifiers:f}=b,g=[],h=a.trim().split(e4),i="";for(let a=h.length-1;a>=0;a-=1){let b=h[a],{isExternal:j,modifiers:k,hasImportantModifier:l,baseClassName:m,maybePostfixModifierPosition:n}=c(b);if(j){i=b+(i.length>0?" "+i:i);continue}let o=!!n,p=d(o?m.substring(0,n):m);if(!p){if(!o||!(p=d(m))){i=b+(i.length>0?" "+i:i);continue}o=!1}let q=0===k.length?"":1===k.length?k[0]:f(k).join(":"),r=l?q+"!":q,s=r+p;if(g.indexOf(s)>-1)continue;g.push(s);let t=e(p,o);for(let a=0;a<t.length;++a){let b=t[a];g.push(r+b)}i=b+(i.length>0?" "+i:i)}return i})(a,c);return e(a,f),f};return f=h=>{var i;let j;return d=(c={cache:(a=>{if(a<1)return{get:()=>void 0,set:()=>{}};let b=0,c=Object.create(null),d=Object.create(null),e=(e,f)=>{c[e]=f,++b>a&&(b=0,d=c,c=Object.create(null))};return{get(a){let b=c[a];return void 0!==b?b:void 0!==(b=d[a])?(e(a,b),b):void 0},set(a,b){a in c?c[a]=b:e(a,b)}}})((i=b.reduce((a,b)=>b(a),a())).cacheSize),parseClassName:(a=>{let{prefix:b,experimentalParseClassName:c}=a,d=a=>{let b,c=[],d=0,e=0,f=0,g=a.length;for(let h=0;h<g;h++){let g=a[h];if(0===d&&0===e){if(":"===g){c.push(a.slice(f,h)),f=h+1;continue}if("/"===g){b=h;continue}}"["===g?d++:"]"===g?d--:"("===g?e++:")"===g&&e--}let h=0===c.length?a:a.slice(f),i=h,j=!1;return h.endsWith("!")?(i=h.slice(0,-1),j=!0):h.startsWith("!")&&(i=h.slice(1),j=!0),e3(c,j,i,b&&b>f?b-f:void 0)};if(b){let a=b+":",c=d;d=b=>b.startsWith(a)?c(b.slice(a.length)):e3(e2,!1,b,void 0,!0)}if(c){let a=d;d=b=>c({className:b,parseClassName:a})}return d})(i),sortModifiers:(j=new Map,i.orderSensitiveModifiers.forEach((a,b)=>{j.set(a,1e6+b)}),a=>{let b=[],c=[];for(let d=0;d<a.length;d++){let e=a[d],f="["===e[0],g=j.has(e);f||g?(c.length>0&&(c.sort(),b.push(...c),c=[]),b.push(e)):c.push(e)}return c.length>0&&(c.sort(),b.push(...c)),b}),...(a=>{let b=(a=>{let{theme:b,classGroups:c}=a;return eW(c,b)})(a),{conflictingClassGroups:c,conflictingClassGroupModifiers:d}=a;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]")){var c;let b,d,e;return -1===(c=a).slice(1,-1).indexOf(":")?void 0:(d=(b=c.slice(1,-1)).indexOf(":"),(e=b.slice(0,d))?"arbitrary.."+e:void 0)}let d=a.split("-"),e=+(""===d[0]&&d.length>1);return eV(d,e,b)},getConflictingClassGroupIds:(a,b)=>{if(b){let b=d[a],e=c[a];if(b){if(e){let a=Array(e.length+b.length);for(let b=0;b<e.length;b++)a[b]=e[b];for(let c=0;c<b.length;c++)a[e.length+c]=b[c];return a}return b}return e||eU}return c[a]||eU}}})(i)}).cache.get,e=c.cache.set,f=g,g(h)},(...a)=>f(((...a)=>{let b,c,d=0,e="";for(;d<a.length;)(b=a[d++])&&(c=e5(b))&&(e&&(e+=" "),e+=c);return e})(...a))})(()=>{let a=e7("color"),b=e7("font"),c=e7("text"),d=e7("font-weight"),e=e7("tracking"),f=e7("leading"),g=e7("breakpoint"),h=e7("container"),i=e7("spacing"),j=e7("radius"),k=e7("shadow"),l=e7("inset-shadow"),m=e7("text-shadow"),n=e7("drop-shadow"),o=e7("blur"),p=e7("perspective"),q=e7("aspect"),r=e7("ease"),s=e7("animate"),t=()=>["auto","avoid","all","avoid-page","page","left","right","column"],u=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],v=()=>[...u(),fA,fs],w=()=>["auto","hidden","clip","visible","scroll"],x=()=>["auto","contain","none"],y=()=>[fA,fs,i],z=()=>[fg,"full","auto",...y()],A=()=>[fi,"none","subgrid",fA,fs],B=()=>["auto",{span:["full",fi,fA,fs]},fi,fA,fs],C=()=>[fi,"auto",fA,fs],D=()=>["auto","min","max","fr",fA,fs],E=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],F=()=>["start","end","center","stretch","center-safe","end-safe"],G=()=>["auto",...y()],H=()=>[fg,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...y()],I=()=>[fg,"screen","full","dvw","lvw","svw","min","max","fit",...y()],J=()=>[fg,"screen","full","lh","dvh","lvh","svh","min","max","fit",...y()],K=()=>[a,fA,fs],L=()=>[...u(),fD,fx,{position:[fA,fs]}],M=()=>["no-repeat",{repeat:["","x","y","space","round"]}],N=()=>["auto","cover","contain",fE,fr,{size:[fA,fs]}],O=()=>[fj,fB,ft],P=()=>["","none","full",j,fA,fs],Q=()=>["",fh,fB,ft],R=()=>["solid","dashed","dotted","double"],S=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],T=()=>[fh,fj,fD,fx],U=()=>["","none",o,fA,fs],V=()=>["none",fh,fA,fs],W=()=>["none",fh,fA,fs],X=()=>[fh,fA,fs],Y=()=>[fg,"full",...y()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[fk],breakpoint:[fk],color:[fl],container:[fk],"drop-shadow":[fk],ease:["in","out","in-out"],font:[fq],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[fk],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[fk],shadow:[fk],spacing:["px",fh],text:[fk],"text-shadow":[fk],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",fg,fs,fA,q]}],container:["container"],columns:[{columns:[fh,fs,fA,h]}],"break-after":[{"break-after":t()}],"break-before":[{"break-before":t()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:v()}],overflow:[{overflow:w()}],"overflow-x":[{"overflow-x":w()}],"overflow-y":[{"overflow-y":w()}],overscroll:[{overscroll:x()}],"overscroll-x":[{"overscroll-x":x()}],"overscroll-y":[{"overscroll-y":x()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:z()}],"inset-x":[{"inset-x":z()}],"inset-y":[{"inset-y":z()}],start:[{"inset-s":z(),start:z()}],end:[{"inset-e":z(),end:z()}],"inset-bs":[{"inset-bs":z()}],"inset-be":[{"inset-be":z()}],top:[{top:z()}],right:[{right:z()}],bottom:[{bottom:z()}],left:[{left:z()}],visibility:["visible","invisible","collapse"],z:[{z:[fi,"auto",fA,fs]}],basis:[{basis:[fg,"full","auto",h,...y()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[fh,fg,"auto","initial","none",fs]}],grow:[{grow:["",fh,fA,fs]}],shrink:[{shrink:["",fh,fA,fs]}],order:[{order:[fi,"first","last","none",fA,fs]}],"grid-cols":[{"grid-cols":A()}],"col-start-end":[{col:B()}],"col-start":[{"col-start":C()}],"col-end":[{"col-end":C()}],"grid-rows":[{"grid-rows":A()}],"row-start-end":[{row:B()}],"row-start":[{"row-start":C()}],"row-end":[{"row-end":C()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":D()}],"auto-rows":[{"auto-rows":D()}],gap:[{gap:y()}],"gap-x":[{"gap-x":y()}],"gap-y":[{"gap-y":y()}],"justify-content":[{justify:[...E(),"normal"]}],"justify-items":[{"justify-items":[...F(),"normal"]}],"justify-self":[{"justify-self":["auto",...F()]}],"align-content":[{content:["normal",...E()]}],"align-items":[{items:[...F(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...F(),{baseline:["","last"]}]}],"place-content":[{"place-content":E()}],"place-items":[{"place-items":[...F(),"baseline"]}],"place-self":[{"place-self":["auto",...F()]}],p:[{p:y()}],px:[{px:y()}],py:[{py:y()}],ps:[{ps:y()}],pe:[{pe:y()}],pbs:[{pbs:y()}],pbe:[{pbe:y()}],pt:[{pt:y()}],pr:[{pr:y()}],pb:[{pb:y()}],pl:[{pl:y()}],m:[{m:G()}],mx:[{mx:G()}],my:[{my:G()}],ms:[{ms:G()}],me:[{me:G()}],mbs:[{mbs:G()}],mbe:[{mbe:G()}],mt:[{mt:G()}],mr:[{mr:G()}],mb:[{mb:G()}],ml:[{ml:G()}],"space-x":[{"space-x":y()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":y()}],"space-y-reverse":["space-y-reverse"],size:[{size:H()}],"inline-size":[{inline:["auto",...I()]}],"min-inline-size":[{"min-inline":["auto",...I()]}],"max-inline-size":[{"max-inline":["none",...I()]}],"block-size":[{block:["auto",...J()]}],"min-block-size":[{"min-block":["auto",...J()]}],"max-block-size":[{"max-block":["none",...J()]}],w:[{w:[h,"screen",...H()]}],"min-w":[{"min-w":[h,"screen","none",...H()]}],"max-w":[{"max-w":[h,"screen","none","prose",{screen:[g]},...H()]}],h:[{h:["screen","lh",...H()]}],"min-h":[{"min-h":["screen","lh","none",...H()]}],"max-h":[{"max-h":["screen","lh",...H()]}],"font-size":[{text:["base",c,fB,ft]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[d,fH,fv]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",fj,fs]}],"font-family":[{font:[fC,fw,b]}],"font-features":[{"font-features":[fs]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[e,fA,fs]}],"line-clamp":[{"line-clamp":[fh,"none",fA,fu]}],leading:[{leading:[f,...y()]}],"list-image":[{"list-image":["none",fA,fs]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",fA,fs]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:K()}],"text-color":[{text:K()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...R(),"wavy"]}],"text-decoration-thickness":[{decoration:[fh,"from-font","auto",fA,ft]}],"text-decoration-color":[{decoration:K()}],"underline-offset":[{"underline-offset":[fh,"auto",fA,fs]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:y()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",fA,fs]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",fA,fs]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:L()}],"bg-repeat":[{bg:M()}],"bg-size":[{bg:N()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},fi,fA,fs],radial:["",fA,fs],conic:[fi,fA,fs]},fF,fy]}],"bg-color":[{bg:K()}],"gradient-from-pos":[{from:O()}],"gradient-via-pos":[{via:O()}],"gradient-to-pos":[{to:O()}],"gradient-from":[{from:K()}],"gradient-via":[{via:K()}],"gradient-to":[{to:K()}],rounded:[{rounded:P()}],"rounded-s":[{"rounded-s":P()}],"rounded-e":[{"rounded-e":P()}],"rounded-t":[{"rounded-t":P()}],"rounded-r":[{"rounded-r":P()}],"rounded-b":[{"rounded-b":P()}],"rounded-l":[{"rounded-l":P()}],"rounded-ss":[{"rounded-ss":P()}],"rounded-se":[{"rounded-se":P()}],"rounded-ee":[{"rounded-ee":P()}],"rounded-es":[{"rounded-es":P()}],"rounded-tl":[{"rounded-tl":P()}],"rounded-tr":[{"rounded-tr":P()}],"rounded-br":[{"rounded-br":P()}],"rounded-bl":[{"rounded-bl":P()}],"border-w":[{border:Q()}],"border-w-x":[{"border-x":Q()}],"border-w-y":[{"border-y":Q()}],"border-w-s":[{"border-s":Q()}],"border-w-e":[{"border-e":Q()}],"border-w-bs":[{"border-bs":Q()}],"border-w-be":[{"border-be":Q()}],"border-w-t":[{"border-t":Q()}],"border-w-r":[{"border-r":Q()}],"border-w-b":[{"border-b":Q()}],"border-w-l":[{"border-l":Q()}],"divide-x":[{"divide-x":Q()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":Q()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...R(),"hidden","none"]}],"divide-style":[{divide:[...R(),"hidden","none"]}],"border-color":[{border:K()}],"border-color-x":[{"border-x":K()}],"border-color-y":[{"border-y":K()}],"border-color-s":[{"border-s":K()}],"border-color-e":[{"border-e":K()}],"border-color-bs":[{"border-bs":K()}],"border-color-be":[{"border-be":K()}],"border-color-t":[{"border-t":K()}],"border-color-r":[{"border-r":K()}],"border-color-b":[{"border-b":K()}],"border-color-l":[{"border-l":K()}],"divide-color":[{divide:K()}],"outline-style":[{outline:[...R(),"none","hidden"]}],"outline-offset":[{"outline-offset":[fh,fA,fs]}],"outline-w":[{outline:["",fh,fB,ft]}],"outline-color":[{outline:K()}],shadow:[{shadow:["","none",k,fG,fz]}],"shadow-color":[{shadow:K()}],"inset-shadow":[{"inset-shadow":["none",l,fG,fz]}],"inset-shadow-color":[{"inset-shadow":K()}],"ring-w":[{ring:Q()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:K()}],"ring-offset-w":[{"ring-offset":[fh,ft]}],"ring-offset-color":[{"ring-offset":K()}],"inset-ring-w":[{"inset-ring":Q()}],"inset-ring-color":[{"inset-ring":K()}],"text-shadow":[{"text-shadow":["none",m,fG,fz]}],"text-shadow-color":[{"text-shadow":K()}],opacity:[{opacity:[fh,fA,fs]}],"mix-blend":[{"mix-blend":[...S(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":S()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[fh]}],"mask-image-linear-from-pos":[{"mask-linear-from":T()}],"mask-image-linear-to-pos":[{"mask-linear-to":T()}],"mask-image-linear-from-color":[{"mask-linear-from":K()}],"mask-image-linear-to-color":[{"mask-linear-to":K()}],"mask-image-t-from-pos":[{"mask-t-from":T()}],"mask-image-t-to-pos":[{"mask-t-to":T()}],"mask-image-t-from-color":[{"mask-t-from":K()}],"mask-image-t-to-color":[{"mask-t-to":K()}],"mask-image-r-from-pos":[{"mask-r-from":T()}],"mask-image-r-to-pos":[{"mask-r-to":T()}],"mask-image-r-from-color":[{"mask-r-from":K()}],"mask-image-r-to-color":[{"mask-r-to":K()}],"mask-image-b-from-pos":[{"mask-b-from":T()}],"mask-image-b-to-pos":[{"mask-b-to":T()}],"mask-image-b-from-color":[{"mask-b-from":K()}],"mask-image-b-to-color":[{"mask-b-to":K()}],"mask-image-l-from-pos":[{"mask-l-from":T()}],"mask-image-l-to-pos":[{"mask-l-to":T()}],"mask-image-l-from-color":[{"mask-l-from":K()}],"mask-image-l-to-color":[{"mask-l-to":K()}],"mask-image-x-from-pos":[{"mask-x-from":T()}],"mask-image-x-to-pos":[{"mask-x-to":T()}],"mask-image-x-from-color":[{"mask-x-from":K()}],"mask-image-x-to-color":[{"mask-x-to":K()}],"mask-image-y-from-pos":[{"mask-y-from":T()}],"mask-image-y-to-pos":[{"mask-y-to":T()}],"mask-image-y-from-color":[{"mask-y-from":K()}],"mask-image-y-to-color":[{"mask-y-to":K()}],"mask-image-radial":[{"mask-radial":[fA,fs]}],"mask-image-radial-from-pos":[{"mask-radial-from":T()}],"mask-image-radial-to-pos":[{"mask-radial-to":T()}],"mask-image-radial-from-color":[{"mask-radial-from":K()}],"mask-image-radial-to-color":[{"mask-radial-to":K()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":u()}],"mask-image-conic-pos":[{"mask-conic":[fh]}],"mask-image-conic-from-pos":[{"mask-conic-from":T()}],"mask-image-conic-to-pos":[{"mask-conic-to":T()}],"mask-image-conic-from-color":[{"mask-conic-from":K()}],"mask-image-conic-to-color":[{"mask-conic-to":K()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:L()}],"mask-repeat":[{mask:M()}],"mask-size":[{mask:N()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",fA,fs]}],filter:[{filter:["","none",fA,fs]}],blur:[{blur:U()}],brightness:[{brightness:[fh,fA,fs]}],contrast:[{contrast:[fh,fA,fs]}],"drop-shadow":[{"drop-shadow":["","none",n,fG,fz]}],"drop-shadow-color":[{"drop-shadow":K()}],grayscale:[{grayscale:["",fh,fA,fs]}],"hue-rotate":[{"hue-rotate":[fh,fA,fs]}],invert:[{invert:["",fh,fA,fs]}],saturate:[{saturate:[fh,fA,fs]}],sepia:[{sepia:["",fh,fA,fs]}],"backdrop-filter":[{"backdrop-filter":["","none",fA,fs]}],"backdrop-blur":[{"backdrop-blur":U()}],"backdrop-brightness":[{"backdrop-brightness":[fh,fA,fs]}],"backdrop-contrast":[{"backdrop-contrast":[fh,fA,fs]}],"backdrop-grayscale":[{"backdrop-grayscale":["",fh,fA,fs]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[fh,fA,fs]}],"backdrop-invert":[{"backdrop-invert":["",fh,fA,fs]}],"backdrop-opacity":[{"backdrop-opacity":[fh,fA,fs]}],"backdrop-saturate":[{"backdrop-saturate":[fh,fA,fs]}],"backdrop-sepia":[{"backdrop-sepia":["",fh,fA,fs]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":y()}],"border-spacing-x":[{"border-spacing-x":y()}],"border-spacing-y":[{"border-spacing-y":y()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",fA,fs]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[fh,"initial",fA,fs]}],ease:[{ease:["linear","initial",r,fA,fs]}],delay:[{delay:[fh,fA,fs]}],animate:[{animate:["none",s,fA,fs]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[p,fA,fs]}],"perspective-origin":[{"perspective-origin":v()}],rotate:[{rotate:V()}],"rotate-x":[{"rotate-x":V()}],"rotate-y":[{"rotate-y":V()}],"rotate-z":[{"rotate-z":V()}],scale:[{scale:W()}],"scale-x":[{"scale-x":W()}],"scale-y":[{"scale-y":W()}],"scale-z":[{"scale-z":W()}],"scale-3d":["scale-3d"],skew:[{skew:X()}],"skew-x":[{"skew-x":X()}],"skew-y":[{"skew-y":X()}],transform:[{transform:[fA,fs,"","none","gpu","cpu"]}],"transform-origin":[{origin:v()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Y()}],"translate-x":[{"translate-x":Y()}],"translate-y":[{"translate-y":Y()}],"translate-z":[{"translate-z":Y()}],"translate-none":["translate-none"],accent:[{accent:K()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:K()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",fA,fs]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":y()}],"scroll-mx":[{"scroll-mx":y()}],"scroll-my":[{"scroll-my":y()}],"scroll-ms":[{"scroll-ms":y()}],"scroll-me":[{"scroll-me":y()}],"scroll-mbs":[{"scroll-mbs":y()}],"scroll-mbe":[{"scroll-mbe":y()}],"scroll-mt":[{"scroll-mt":y()}],"scroll-mr":[{"scroll-mr":y()}],"scroll-mb":[{"scroll-mb":y()}],"scroll-ml":[{"scroll-ml":y()}],"scroll-p":[{"scroll-p":y()}],"scroll-px":[{"scroll-px":y()}],"scroll-py":[{"scroll-py":y()}],"scroll-ps":[{"scroll-ps":y()}],"scroll-pe":[{"scroll-pe":y()}],"scroll-pbs":[{"scroll-pbs":y()}],"scroll-pbe":[{"scroll-pbe":y()}],"scroll-pt":[{"scroll-pt":y()}],"scroll-pr":[{"scroll-pr":y()}],"scroll-pb":[{"scroll-pb":y()}],"scroll-pl":[{"scroll-pl":y()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",fA,fs]}],fill:[{fill:["none",...K()]}],"stroke-w":[{stroke:[fh,fB,ft,fu]}],stroke:[{stroke:["none",...K()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}});function fT(...a){return fS(function(){for(var a,b,c=0,d="",e=arguments.length;c<e;c++)(a=arguments[c])&&(b=function a(b){var c,d,e="";if("string"==typeof b||"number"==typeof b)e+=b;else if("object"==typeof b)if(Array.isArray(b)){var f=b.length;for(c=0;c<f;c++)b[c]&&(d=a(b[c]))&&(e&&(e+=" "),e+=d)}else for(d in b)b[d]&&(e&&(e+=" "),e+=d);return e}(a))&&(d&&(d+=" "),d+=b);return d}(a))}let fU=n.forwardRef(({className:a,children:b,...c},d)=>(0,m.jsxs)(eg,{ref:d,className:fT("flex h-10 w-full items-center justify-between rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm","ring-offset-white placeholder:text-zinc-500 focus:outline-none focus:ring-2 focus:ring-zinc-950 focus:ring-offset-2","disabled:cursor-not-allowed disabled:opacity-50 dark:border-zinc-800 dark:bg-zinc-950 dark:ring-offset-zinc-950","dark:placeholder:text-zinc-400 dark:focus:ring-zinc-300",a),...c,children:[b,(0,m.jsx)(ej,{asChild:!0,children:(0,m.jsx)(eR,{className:"h-4 w-4 opacity-50"})})]}));fU.displayName=eg.displayName;let fV=n.forwardRef(({className:a,children:b,position:c="popper",...d},e)=>(0,m.jsx)(ek,{children:(0,m.jsx)(em,{ref:e,className:fT("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-lg border border-zinc-200 bg-white text-zinc-950 shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2","data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-50","popper"===c&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:c,...d,children:(0,m.jsx)(ew,{className:fT("p-1","popper"===c&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:b})})}));fV.displayName=em.displayName;let fW=n.forwardRef(({className:a,children:b,...c},d)=>(0,m.jsxs)(eE,{ref:d,className:fT("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none","focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50","dark:focus:bg-zinc-800 dark:focus:text-zinc-50",a),...c,children:[(0,m.jsx)("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,m.jsx)(eI,{children:(0,m.jsx)(at,{className:"h-4 w-4"})})}),(0,m.jsx)(eG,{children:b})]}));function fX(a){if(!a)return{provider:"unknown",model:""};let b=a.indexOf("/");return -1!==b?{provider:a.substring(0,b),model:a.substring(b+1)}:{provider:"unknown",model:a}}function fY({value:a,onValueChange:b,placeholder:c="Select a model...",disabled:d=!1}){let[e,f]=n.useState(""),{data:g,isLoading:h,isError:i,error:j,refetch:k}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models"),b=await a.json();if(!a.ok||b.error)throw Error(b.error||"Failed to fetch models");return b},retry:!1}),l=n.useMemo(()=>{let b=new Set(g?.models??[]);return a&&!b.has(a)&&b.add(a),Array.from(b).sort()},[g?.models,a]),o=n.useMemo(()=>{if(!e.trim())return l;let a=e.toLowerCase();return l.filter(b=>b.toLowerCase().includes(a))},[l,e]),p=n.useMemo(()=>{let a={};return o.forEach(b=>{let{provider:c}=fX(b);a[c]||(a[c]=[]),a[c].push(b)}),a},[o]),q=Object.keys(p).sort(),r=n.useCallback(a=>{a||f("")},[]),s=a?fX(a):null;return(0,m.jsxs)(ee,{value:a,onValueChange:b,disabled:d||h,onOpenChange:r,children:[(0,m.jsx)(fU,{children:(0,m.jsx)(ei,{placeholder:c,children:s&&(0,m.jsxs)("span",{className:"flex items-center gap-2",children:[(0,m.jsx)("span",{className:"text-xs font-medium text-zinc-500 dark:text-zinc-400",children:s.provider}),(0,m.jsx)("span",{className:"text-zinc-500 dark:text-zinc-400",children:"/"}),(0,m.jsx)("span",{className:"text-zinc-900 dark:text-zinc-100",children:s.model})]})})}),(0,m.jsxs)(fV,{children:[(0,m.jsx)("div",{className:"sticky top-0 z-10 border-b border-zinc-200 bg-white px-2 pb-2 pt-1 dark:border-zinc-800 dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"relative",children:[(0,m.jsx)(aj,{className:"absolute left-2 top-1/2 h-4 w-4 -translate-y-1/2 text-zinc-400"}),(0,m.jsx)("input",{type:"text",value:e,onChange:a=>f(a.target.value),placeholder:"Search models...",className:fT("h-9 w-full rounded-md border border-zinc-200 bg-transparent pl-8 pr-3 text-sm","outline-none placeholder:text-zinc-500 focus:border-zinc-400 focus:ring-0","dark:border-zinc-800 dark:placeholder:text-zinc-400"),onKeyDown:a=>a.stopPropagation()})]})}),(0,m.jsx)("div",{className:"max-h-64 overflow-auto",children:h?(0,m.jsx)("div",{className:"px-2 py-4 text-center text-sm text-zinc-500",children:"Loading models..."}):i?(0,m.jsx)("div",{className:"px-4 py-6 text-center",children:(0,m.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,m.jsx)("div",{className:"w-10 h-10 rounded-full bg-red-100 dark:bg-red-900/30 flex items-center justify-center",children:(0,m.jsx)(as,{className:"h-5 w-5 text-red-600 dark:text-red-400"})}),(0,m.jsxs)("div",{className:"space-y-1",children:[(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Failed to load models"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400 max-w-[200px]",children:j instanceof Error?j.message:"Please check your OpenCode installation"})]}),(0,m.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),k()},className:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs font-medium bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700 transition-colors",children:[(0,m.jsx)(eS,{className:"h-3.5 w-3.5"}),"Retry"]})]})}):0===o.length?(0,m.jsx)("div",{className:"px-2 py-4 text-center text-sm text-zinc-500",children:"No models found"}):q.map(a=>(0,m.jsxs)("div",{children:[(0,m.jsx)("div",{className:"px-2 py-1.5 text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:text-zinc-400",children:a}),p[a].map(a=>{let{model:b}=fX(a);return(0,m.jsx)(fW,{value:a,children:(0,m.jsx)("span",{className:"flex items-center gap-2",children:(0,m.jsx)("span",{className:"text-zinc-900 dark:text-zinc-100",children:b})})},a)})]},a))})]})]})}fW.displayName=eE.displayName;let fZ={"visual-engineering":["google/gemini-3.1-pro","glm-5","anthropic/claude-opus-4-6"],ultrabrain:["openai/gpt-5.3-codex","google/gemini-3.1-pro","anthropic/claude-opus-4-6"],deep:["openai/gpt-5.3-codex","anthropic/claude-opus-4-6","google/gemini-3.1-pro"],artistry:["google/gemini-3.1-pro","anthropic/claude-opus-4-6","openai/gpt-5.4"],quick:["anthropic/claude-haiku-4-5","google/gemini-3-flash","opencode/gpt-5-nano"],"unspecified-low":["anthropic/claude-sonnet-4-6","openai/gpt-5.3-codex","google/gemini-3-flash"],"unspecified-high":["openai/gpt-5.4","anthropic/claude-opus-4-6","glm-5","kimi-for-coding/k2p5"],writing:["google/gemini-3-flash","anthropic/claude-sonnet-4-6"]};function f$({categoryName:a,initialConfig:b,onSave:c,onCancel:d}){let[e,f]=n.useState(null),{control:g,handleSubmit:h,watch:i,formState:{isSubmitting:j}}=br({defaultValues:{model:b?.model||"",variant:b?.variant||"",temperature:b?.temperature??.7,top_p:b?.top_p??1,prompt_append:b?.prompt_append||""}}),{data:k}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models");if(!a.ok)throw Error("Failed to fetch models");return a.json()}}),l=n.useMemo(()=>new Set(k?.models??[]),[k]),o=i("model"),p=o&&l.size>0&&!l.has(o),q=!o,r=fZ[a];return n.useEffect(()=>{if(e){let a=setTimeout(()=>f(null),3e3);return()=>clearTimeout(a)}},[e]),(0,m.jsxs)("form",{onSubmit:h(a=>{let b=Math.max(0,Math.min(2,a.temperature)),d=Math.max(0,Math.min(1,a.top_p));c({model:a.model||void 0,variant:a.variant||void 0,temperature:b,top_p:d,prompt_append:a.prompt_append||void 0}),f({type:"success",message:"Configuration saved successfully"})}),className:"space-y-6","aria-label":"Category configuration form",children:[e&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===e.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===e.type?(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(as,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:e.message})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"category-name",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Category"}),(0,m.jsx)("input",{id:"category-name",type:"text",value:a,disabled:!0,className:"w-full rounded-lg border border-zinc-200 bg-zinc-100 px-3 py-2 text-sm text-zinc-600 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-400"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"The category identifier for this configuration."})]}),q&&r&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-zinc-200 bg-zinc-50 px-4 py-3 dark:border-zinc-800 dark:bg-zinc-900/20",children:[(0,m.jsx)(as,{className:"mt-0.5 h-4 w-4 shrink-0 text-zinc-500 dark:text-zinc-400"}),(0,m.jsxs)("div",{className:"text-sm text-zinc-700 dark:text-zinc-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Using built-in fallback chain"})," — this category will try models in priority order when ",(0,m.jsx)("code",{className:"rounded bg-zinc-200 px-1 py-0.5 text-xs dark:bg-zinc-800",children:"task()"})," is called:",(0,m.jsx)("div",{className:"mt-2 flex flex-wrap items-center gap-1",children:r.map((a,b)=>(0,m.jsxs)(n.Fragment,{children:[(0,m.jsx)("code",{className:`rounded px-1.5 py-0.5 text-xs ${0===b?"bg-blue-100 text-blue-800 dark:bg-blue-900/50 dark:text-blue-200 font-medium":"bg-zinc-100 text-zinc-600 dark:bg-zinc-800 dark:text-zinc-400"}`,children:a}),b<r.length-1&&(0,m.jsx)("span",{className:"text-zinc-400 dark:text-zinc-500",children:"→"})]},a))}),(0,m.jsx)("p",{className:"mt-2 text-xs text-zinc-500 dark:text-zinc-400",children:"Select a model to override the built-in behavior."})]})]}),q&&!r&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-zinc-200 bg-zinc-50 px-4 py-3 dark:border-zinc-800 dark:bg-zinc-900/20",children:[(0,m.jsx)(as,{className:"mt-0.5 h-4 w-4 shrink-0 text-zinc-500 dark:text-zinc-400"}),(0,m.jsxs)("p",{className:"text-sm text-zinc-700 dark:text-zinc-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"No model configured"})," — this custom category needs a model to be used with ",(0,m.jsx)("code",{className:"rounded bg-zinc-200 px-1 py-0.5 text-xs dark:bg-zinc-800",children:"task()"}),"."]})]}),p&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-amber-200 bg-amber-50 px-4 py-3 dark:border-amber-800 dark:bg-amber-900/20",children:[(0,m.jsx)(am,{className:"mt-0.5 h-4 w-4 shrink-0 text-amber-500 dark:text-amber-400"}),(0,m.jsxs)("p",{className:"text-sm text-amber-700 dark:text-amber-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Model unavailable"})," — ",(0,m.jsx)("code",{className:"rounded bg-amber-100 px-1 py-0.5 text-xs dark:bg-amber-800",children:o})," is missing from current providers. Please check your provider settings."]})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"model-selector",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Model"}),(0,m.jsx)(a$,{name:"model",control:g,render:({field:a})=>(0,m.jsx)("div",{id:"model-selector",children:(0,m.jsx)(fY,{value:a.value,onValueChange:a.onChange,placeholder:"Select a model..."})})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"The AI model identifier for this category."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"variant-selector",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Variant"}),(0,m.jsx)(a$,{name:"variant",control:g,render:({field:a})=>(0,m.jsxs)("select",{id:"variant-selector",value:a.value,onChange:b=>a.onChange(b.target.value),className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-800 dark:bg-zinc-950",children:[(0,m.jsx)("option",{value:"",children:"Not set"}),(0,m.jsx)("option",{value:"max",children:"max"}),(0,m.jsx)("option",{value:"high",children:"high"}),(0,m.jsx)("option",{value:"medium",children:"medium"}),(0,m.jsx)("option",{value:"low",children:"low"}),(0,m.jsx)("option",{value:"xhigh",children:"xhigh"})]})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Model reasoning variant. Higher values mean more thinking."})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"temperature-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Temperature"}),(0,m.jsx)(a$,{name:"temperature",control:g,rules:{min:{value:0,message:"Minimum is 0"},max:{value:2,message:"Maximum is 2"}},render:({field:a})=>(0,m.jsx)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:a.value.toFixed(1)})})]}),(0,m.jsx)(a$,{name:"temperature",control:g,rules:{min:{value:0,message:"Minimum is 0"},max:{value:2,message:"Maximum is 2"}},render:({field:a,fieldState:b})=>(0,m.jsxs)(m.Fragment,{children:[(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"temperature-slider",type:"range",min:0,max:2,step:.1,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Temperature slider"}),(0,m.jsx)("input",{type:"number",min:0,max:2,step:.1,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)||0),className:"w-16 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Temperature value"})]}),b.error&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:b.error.message})]})}),(0,m.jsxs)("div",{className:"flex justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsx)("span",{children:"Precise (0)"}),(0,m.jsx)("span",{children:"Balanced (1)"}),(0,m.jsx)("span",{children:"Creative (2)"})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Controls randomness: lower values make responses more deterministic."})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"top-p-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Top P"}),(0,m.jsx)(a$,{name:"top_p",control:g,rules:{min:{value:0,message:"Minimum is 0"},max:{value:1,message:"Maximum is 1"}},render:({field:a})=>(0,m.jsx)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:a.value.toFixed(2)})})]}),(0,m.jsx)(a$,{name:"top_p",control:g,rules:{min:{value:0,message:"Minimum is 0"},max:{value:1,message:"Maximum is 1"}},render:({field:a,fieldState:b})=>(0,m.jsxs)(m.Fragment,{children:[(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"top-p-slider",type:"range",min:0,max:1,step:.05,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Top P slider"}),(0,m.jsx)("input",{type:"number",min:0,max:1,step:.05,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)||0),className:"w-16 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Top P value"})]}),b.error&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:b.error.message})]})}),(0,m.jsxs)("div",{className:"flex justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsx)("span",{children:"Diverse (0)"}),(0,m.jsx)("span",{children:"Default (1)"})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Controls nucleus sampling: lower values sample from more likely tokens."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"prompt-append",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Prompt Append"}),(0,m.jsx)(a$,{name:"prompt_append",control:g,render:({field:a})=>(0,m.jsx)("textarea",{id:"prompt-append",value:a.value,onChange:b=>a.onChange(b.target.value),rows:4,className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm resize-none dark:border-zinc-800 dark:bg-zinc-950",placeholder:"Additional system instructions to append..."})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Additional instructions appended to the system prompt."})]}),(0,m.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-2",children:[(0,m.jsx)("button",{type:"button",onClick:d,className:"inline-flex items-center gap-2 rounded-lg border border-zinc-200 bg-white px-4 py-2 text-sm font-medium text-zinc-700 hover:bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800",children:"Cancel"}),(0,m.jsxs)("button",{type:"submit",disabled:j,className:"inline-flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-blue-600 dark:hover:bg-blue-500",children:[j&&(0,m.jsx)(ar,{className:"h-4 w-4 animate-spin","aria-hidden":"true"}),"Save Changes"]})]})]})}function f_({onSaveSuccess:a}){let b=(0,A.useQueryClient)(),[c,d]=n.useState(null),[e,f]=n.useState(void 0),[g,h]=n.useState(null),{data:i,isLoading:j,isError:k,error:l}=E({queryKey:["opencode-config"],queryFn:async()=>{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch configuration");return a.json()}});n.useEffect(()=>{if(g){let a=setTimeout(()=>h(null),3e3);return()=>clearTimeout(a)}},[g]);let o=aq({mutationFn:async a=>{let b=await fetch("/api/opencode-config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({categories:a})});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to save categories");return b.json()},onSuccess:()=>{b.invalidateQueries({queryKey:["opencode-config"]}),h({type:"success",message:"Categories saved successfully"}),d(null),f(void 0),a?.()},onError:a=>{h({type:"error",message:a.message})}});if(j)return(0,m.jsxs)("div",{className:"flex items-center justify-center py-12",children:[(0,m.jsx)(ar,{className:"h-6 w-6 animate-spin text-zinc-400"}),(0,m.jsx)("span",{className:"ml-2 text-sm text-zinc-500 dark:text-zinc-400",children:"Loading categories..."})]});if(k)return(0,m.jsx)("div",{className:"rounded-lg border border-red-200 bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20",children:(0,m.jsxs)("div",{className:"flex items-center gap-2",children:[(0,m.jsx)(as,{className:"h-5 w-5 text-red-600 dark:text-red-400"}),(0,m.jsxs)("div",{children:[(0,m.jsx)("p",{className:"text-sm font-medium text-red-800 dark:text-red-300",children:"Failed to load categories"}),(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",children:l instanceof Error?l.message:"An unknown error occurred"})]})]})});let p=i?.categories||{};return(0,m.jsxs)("div",{className:"space-y-4",children:[g&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===g.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===g.type?(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(as,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:g.message})]}),c?(0,m.jsx)(f$,{categoryName:c,initialConfig:e,onSave:a=>{if(!c)return;let b={...i?.categories||{},[c]:a};o.mutate(b)},onCancel:()=>{d(null),f(void 0)}}):(0,m.jsx)(az,{categories:p,onEdit:(a,b)=>{d(a),f(b)},onDelete:a=>{let{[a]:b,...c}=i?.categories||{};o.mutate(c)}})]})}let f0=ae("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]),f1=ae("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);function f2({profiles:a,activeProfileId:b,appliedProfileId:c,onApply:d,onEdit:e,onDelete:f,onCreateNew:g}){let[h,i]=n.useState(""),[j,k]=n.useState(null),l=(a,b)=>{b?k(a):d(a.id)},o=n.useMemo(()=>{if(!h.trim())return a;let b=h.toLowerCase();return a.filter(a=>a.name.toLowerCase().includes(b)||(a.description?.toLowerCase()||"").includes(b))},[a,h]),{active:p,builtIn:q,custom:r}=n.useMemo(()=>{let a=[],c=[],d=[];return o.forEach(e=>{e.id===b?a.push(e):e.isBuiltIn?c.push(e):d.push(e)}),{active:a,builtIn:c,custom:d}},[o,b]),s=a.length,t=o.length,u=h.trim().length>0;return(0,m.jsxs)("div",{className:"space-y-4",children:[(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsxs)("div",{className:"relative flex-1",children:[(0,m.jsx)(aj,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-zinc-400"}),(0,m.jsx)("input",{type:"text",placeholder:"Search profiles...",value:h,onChange:a=>i(a.target.value),className:"w-full pl-9 pr-3 py-2 text-sm bg-white dark:bg-zinc-900 border border-zinc-200 dark:border-zinc-700 rounded-lg placeholder:text-zinc-400 focus:outline-none focus:ring-2 focus:ring-teal-500/20 focus:border-teal-500 transition-all duration-200"})]}),(0,m.jsxs)("div",{className:"flex items-center gap-1.5 text-xs text-zinc-500 dark:text-zinc-400 tabular-nums",children:[(0,m.jsx)(f1,{className:"h-3.5 w-3.5"}),(0,m.jsxs)("span",{children:[u?`${t} of ${s}`:`${s}`," profiles"]})]})]}),0===o.length&&(0,m.jsxs)("div",{className:"text-center py-12 px-4",children:[(0,m.jsx)("div",{className:"inline-flex items-center justify-center w-12 h-12 rounded-full bg-zinc-100 dark:bg-zinc-800 mb-3",children:(0,m.jsx)(f1,{className:"h-5 w-5 text-zinc-400 dark:text-zinc-500"})}),(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:u?"No profiles match your search":"No profiles yet"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400 mt-1",children:u?"Try a different search term":"Create your first profile to get started"})]}),o.length>0&&(0,m.jsxs)("div",{className:"space-y-4",children:[p.length>0&&(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,m.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-[10px] font-semibold bg-teal-100 text-teal-700 dark:bg-teal-900/40 dark:text-teal-300 uppercase tracking-wider",children:[(0,m.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-teal-500 animate-pulse"}),"Active"]}),(0,m.jsx)("span",{className:"text-[10px] text-zinc-400 dark:text-zinc-500 tabular-nums",children:p.length})]}),(0,m.jsx)("div",{className:"space-y-2",children:p.map(a=>(0,m.jsx)(f3,{profile:a,isActive:!0,isApplied:a.id===c,onApply:()=>l(a,a.id===c),onEdit:()=>e(a),onDelete:()=>f(a.id)},a.id))})]}),q.length>0&&(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,m.jsx)("span",{className:"text-[10px] font-semibold text-zinc-500 dark:text-zinc-400 uppercase tracking-wider",children:"Built-in"}),(0,m.jsx)("span",{className:"text-[10px] text-zinc-400 dark:text-zinc-500 tabular-nums",children:q.length})]}),(0,m.jsx)("div",{className:"space-y-2",children:q.map(a=>(0,m.jsx)(f3,{profile:a,isActive:!1,isApplied:a.id===c,onApply:()=>l(a,a.id===c),onEdit:()=>e(a),onDelete:()=>f(a.id)},a.id))})]}),r.length>0&&(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,m.jsx)("span",{className:"text-[10px] font-semibold text-zinc-500 dark:text-zinc-400 uppercase tracking-wider",children:"Custom"}),(0,m.jsx)("span",{className:"text-[10px] text-zinc-400 dark:text-zinc-500 tabular-nums",children:r.length})]}),(0,m.jsx)("div",{className:"space-y-2",children:r.map(a=>(0,m.jsx)(f3,{profile:a,isActive:!1,isApplied:a.id===c,onApply:()=>l(a,a.id===c),onEdit:()=>e(a),onDelete:()=>f(a.id)},a.id))})]})]}),j&&(0,m.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 backdrop-blur-sm",children:(0,m.jsx)("div",{className:"w-full max-w-md mx-4 bg-white dark:bg-zinc-900 rounded-xl border border-zinc-200 dark:border-zinc-700 shadow-2xl",children:(0,m.jsxs)("div",{className:"p-6",children:[(0,m.jsxs)("div",{className:"flex items-start gap-4",children:[(0,m.jsx)("div",{className:"flex-shrink-0 w-12 h-12 rounded-full bg-amber-100 dark:bg-amber-900/30 flex items-center justify-center",children:(0,m.jsx)(am,{className:"h-6 w-6 text-amber-600 dark:text-amber-400"})}),(0,m.jsxs)("div",{className:"flex-1",children:[(0,m.jsx)("h3",{className:"text-lg font-semibold text-zinc-900 dark:text-zinc-100",children:"Reset Profile Configuration"}),(0,m.jsxs)("p",{className:"mt-2 text-sm text-zinc-600 dark:text-zinc-400",children:["This will reset all agent and category configurations back to the ",(0,m.jsx)("strong",{children:j.name})," profile values. Any changes made after applying this profile will be lost."]})]})]}),(0,m.jsxs)("div",{className:"mt-6 flex items-center justify-end gap-3",children:[(0,m.jsxs)("button",{type:"button",onClick:()=>{k(null)},className:"inline-flex items-center gap-2 px-4 py-2 rounded-lg border border-zinc-200 dark:border-zinc-700 bg-white dark:bg-zinc-800 text-sm font-medium text-zinc-700 dark:text-zinc-300 hover:bg-zinc-50 dark:hover:bg-zinc-700 transition-colors",children:[(0,m.jsx)(ai,{className:"h-4 w-4"}),"Cancel"]}),(0,m.jsxs)("button",{type:"button",onClick:()=>{j&&(d(j.id),k(null))},className:"inline-flex items-center gap-2 px-4 py-2 rounded-lg bg-amber-600 text-sm font-medium text-white hover:bg-amber-700 transition-colors",children:[(0,m.jsx)(at,{className:"h-4 w-4"}),"Reset to ",j.name]})]})]})})}),(0,m.jsxs)("button",{type:"button",onClick:g,className:"w-full flex items-center justify-center gap-2 py-3 px-4 rounded-lg border border-dashed border-zinc-300 dark:border-zinc-700 text-sm font-medium text-zinc-600 dark:text-zinc-400 hover:border-teal-400 hover:text-teal-600 dark:hover:border-teal-500 dark:hover:text-teal-400 hover:bg-teal-50/50 dark:hover:bg-teal-900/10 transition-all duration-200",children:[(0,m.jsx)(f0,{className:"h-4 w-4"}),"Create New Profile"]})]})}function f3({profile:a,isActive:b,isApplied:c,onApply:d,onEdit:e,onDelete:f}){return(0,m.jsxs)("div",{className:`
5
+ `,children:[(0,m.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,m.jsxs)("div",{className:"flex items-center gap-2",children:[(0,m.jsx)("h4",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100 truncate",children:i.name}),!c&&(0,m.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-[10px] font-medium bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300",children:"Custom"}),k&&(0,m.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded text-[10px] font-medium bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:[(0,m.jsx)(an,{className:"h-3 w-3"}),"Model Unavailable"]}),!k&&j&&(0,m.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-[10px] font-medium bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-300",children:"Configured"}),!j&&(0,m.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded text-[10px] font-medium bg-zinc-100 text-zinc-500 dark:bg-zinc-800 dark:text-zinc-400",children:[(0,m.jsx)(at,{className:"h-3 w-3"}),"Built-in fallback"]})]}),(0,m.jsx)("p",{className:"mt-0.5 text-xs text-zinc-500 dark:text-zinc-400 truncate",children:i.description}),(0,m.jsxs)("div",{className:"mt-2 flex items-center gap-3 text-xs",children:[(0,m.jsxs)("span",{className:"text-zinc-600 dark:text-zinc-400",children:[(0,m.jsx)("span",{className:"text-zinc-400 dark:text-zinc-500",children:"Model:"})," ",function(a){if(!a)return"Default model";let b=a.split("/");return b[b.length-1]}(b.model)]}),b.variant&&(0,m.jsxs)("span",{className:"text-zinc-600 dark:text-zinc-400",children:[(0,m.jsx)("span",{className:"text-zinc-400 dark:text-zinc-500",children:"Variant:"})," ",(g=b.variant)?g:"—"]})]})]}),(0,m.jsxs)("div",{className:"flex items-center gap-1 ml-4 opacity-0 group-hover:opacity-100 transition-opacity",children:[(0,m.jsx)("button",{type:"button",onClick:()=>e(a,b),className:"p-1.5 rounded-md text-zinc-500 hover:text-zinc-900 hover:bg-zinc-100 dark:text-zinc-400 dark:hover:text-zinc-100 dark:hover:bg-zinc-800 transition-colors","aria-label":`Edit ${i.name} category`,title:`Edit ${i.name}`,children:(0,m.jsx)(av,{className:"h-4 w-4"})}),!c&&(0,m.jsx)("button",{type:"button",onClick:()=>f(a),className:"p-1.5 rounded-md text-zinc-500 hover:text-red-600 hover:bg-red-50 dark:text-zinc-400 dark:hover:text-red-400 dark:hover:bg-red-900/20 transition-colors","aria-label":`Delete ${i.name} category`,title:`Delete ${i.name}`,children:(0,m.jsx)(aw,{className:"h-4 w-4"})})]})]})}function aA({categories:a,onEdit:b,onDelete:c}){let{data:d}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models");if(!a.ok)throw Error("Failed to fetch models");return a.json()}}),e=n.useMemo(()=>d?new Set(d.models):null,[d]),{builtIn:f,custom:g}=n.useMemo(()=>{let b=[],c=[];return ay.forEach(c=>{b.push({key:c.key,config:a[c.key]||{}})}),Object.entries(a).forEach(([a,b])=>{ay.some(b=>b.key===a)||c.push({key:a,config:b})}),{builtIn:b,custom:c}},[a]),h=g.length>0;return(0,m.jsxs)("div",{className:"space-y-6",children:[(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,m.jsx)(ax,{className:"h-4 w-4 text-zinc-500 dark:text-zinc-400"}),(0,m.jsx)("h3",{className:"text-sm font-semibold text-zinc-900 dark:text-zinc-100",children:"Built-in Categories"}),(0,m.jsxs)("span",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:["(",f.length,")"]})]}),(0,m.jsx)("div",{className:"space-y-2",children:f.map(({key:a,config:d})=>(0,m.jsx)(az,{categoryKey:a,config:d,isBuiltIn:!0,availableModels:e,onEdit:b,onDelete:c},a))})]}),h&&(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,m.jsx)(ax,{className:"h-4 w-4 text-blue-500"}),(0,m.jsx)("h3",{className:"text-sm font-semibold text-zinc-900 dark:text-zinc-100",children:"Custom Categories"}),(0,m.jsxs)("span",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:["(",g.length,")"]})]}),(0,m.jsx)("div",{className:"space-y-2",children:g.map(({key:a,config:d})=>(0,m.jsx)(az,{categoryKey:a,config:d,isBuiltIn:!1,availableModels:e,onEdit:b,onDelete:c},a))})]}),0===f.length&&!h&&(0,m.jsxs)("div",{className:"text-center py-8",children:[(0,m.jsx)(ax,{className:"h-8 w-8 mx-auto text-zinc-300 dark:text-zinc-600 mb-2"}),(0,m.jsx)("p",{className:"text-sm text-zinc-500 dark:text-zinc-400",children:"No categories configured"})]})]})}var aB=a=>a instanceof Date,aC=a=>null==a,aD=a=>!aC(a)&&!Array.isArray(a)&&"object"==typeof a&&!aB(a),aE=a=>aD(a)&&a.target?"checkbox"===a.target.type?a.target.checked:a.target.value:a,aF=(a,b)=>a.has(b.substring(0,b.search(/\.\d+(\.|$)/))||b);function aG(a){let b;if(a instanceof Date)return new Date(a);"u">typeof FileList&&FileList;let c=Array.isArray(a);if(!c&&!(aD(a)&&aD(b=a.constructor&&a.constructor.prototype)&&b.hasOwnProperty("isPrototypeOf")))return a;let d=c?[]:Object.create(Object.getPrototypeOf(a));for(let b in a)Object.prototype.hasOwnProperty.call(a,b)&&(d[b]=aG(a[b]));return d}var aH=a=>void 0===a,aI=a=>Array.isArray(a)?a.filter(Boolean):[],aJ=a=>aI(a.replace(/["|']|\]/g,"").split(/\.|\[/)),aK=(a,b,c)=>{if(!b||!aD(a))return c;let d=(/^\w*$/.test(b)?[b]:aJ(b)).reduce((a,b)=>aC(a)?a:a[b],a);return aH(d)||d===a?aH(a[b])?c:a[b]:d},aL=a=>"function"==typeof a,aM=(a,b,c)=>{let d=-1,e=/^\w*$/.test(b)?[b]:aJ(b),f=e.length,g=f-1;for(;++d<f;){let b=e[d],f=c;if(d!==g){let c=a[b];f=aD(c)||Array.isArray(c)?c:isNaN(+e[d+1])?{}:[]}if("__proto__"===b||"constructor"===b||"prototype"===b)return;a[b]=f,a=a[b]}};let aN="blur",aO="onChange",aP="onSubmit",aQ="maxLength",aR="minLength",aS="pattern",aT="required",aU=n.default.createContext(null);aU.displayName="HookFormControlContext";var aV=(a,b,c,d=!0)=>{let e={defaultValues:b._defaultValues};for(let f in a)Object.defineProperty(e,f,{get:()=>("all"!==b._proxyFormState[f]&&(b._proxyFormState[f]=!d||"all"),c&&(c[f]=!0),a[f])});return e};let aW=n.default.useEffect;var aX=a=>"string"==typeof a,aY=(a,b,c,d,e)=>aX(a)?(d&&b.watch.add(a),aK(c,a,e)):Array.isArray(a)?a.map(a=>(d&&b.watch.add(a),aK(c,a))):(d&&(b.watchAll=!0),c),aZ=a=>aC(a)||"object"!=typeof a;function a$(a,b,c=new WeakSet){if(aZ(a)||aZ(b))return Object.is(a,b);if(aB(a)&&aB(b))return Object.is(a.getTime(),b.getTime());let d=Object.keys(a),e=Object.keys(b);if(d.length!==e.length)return!1;if(c.has(a)||c.has(b))return!0;for(let f of(c.add(a),c.add(b),d)){let d=a[f];if(!e.includes(f))return!1;if("ref"!==f){let a=b[f];if(aB(d)&&aB(a)||aD(d)&&aD(a)||Array.isArray(d)&&Array.isArray(a)?!a$(d,a,c):!Object.is(d,a))return!1}}return!0}let a_=a=>a.render(function(a){let b=n.default.useContext(aU),{name:c,disabled:d,control:e=b,shouldUnregister:f,defaultValue:g,exact:h=!0}=a,i=aF(e._names.array,c),j=n.default.useMemo(()=>aK(e._formValues,c,aK(e._defaultValues,c,g)),[e,c,g]),k=function(a){let b=n.default.useContext(aU),{control:c=b,name:d,defaultValue:e,disabled:f,exact:g,compute:h}=a||{},i=n.default.useRef(e),j=n.default.useRef(h),k=n.default.useRef(void 0),l=n.default.useRef(c),m=n.default.useRef(d);j.current=h;let[o,p]=n.default.useState(()=>{let a=c._getWatch(d,i.current);return j.current?j.current(a):a}),q=n.default.useCallback(a=>{let b=aY(d,c._names,a||c._formValues,!1,i.current);return j.current?j.current(b):b},[c._formValues,c._names,d]),r=n.default.useCallback(a=>{if(!f){let b=aY(d,c._names,a||c._formValues,!1,i.current);if(j.current){let a=j.current(b);a$(a,k.current)||(p(a),k.current=a)}else p(b)}},[c._formValues,c._names,f,d]);aW(()=>(l.current===c&&a$(m.current,d)||(l.current=c,m.current=d,r()),c._subscribe({name:d,formState:{values:!0},exact:g,callback:a=>{r(a.values)}})),[c,g,d,r]),n.default.useEffect(()=>c._removeUnmounted());let s=l.current!==c,t=m.current,u=n.default.useMemo(()=>{if(f)return null;let a=!s&&!a$(t,d);return s||a?q():null},[f,s,d,t,q]);return null!==u?u:o}({control:e,name:c,defaultValue:j,exact:h}),l=function(a){let b=n.default.useContext(aU),{control:c=b,disabled:d,name:e,exact:f}=a||{},[g,h]=n.default.useState(c._formState),i=n.default.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return aW(()=>c._subscribe({name:e,formState:i.current,exact:f,callback:a=>{d||h({...c._formState,...a})}}),[e,d,f]),n.default.useEffect(()=>{i.current.isValid&&c._setValid(!0)},[c]),n.default.useMemo(()=>aV(g,c,i.current,!1),[g,c])}({control:e,name:c,exact:h}),m=n.default.useRef(a),o=n.default.useRef(void 0),p=n.default.useRef(e.register(c,{...a.rules,value:k,..."boolean"==typeof a.disabled?{disabled:a.disabled}:{}}));m.current=a;let q=n.default.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!aK(l.errors,c)},isDirty:{enumerable:!0,get:()=>!!aK(l.dirtyFields,c)},isTouched:{enumerable:!0,get:()=>!!aK(l.touchedFields,c)},isValidating:{enumerable:!0,get:()=>!!aK(l.validatingFields,c)},error:{enumerable:!0,get:()=>aK(l.errors,c)}}),[l,c]),r=n.default.useCallback(a=>p.current.onChange({target:{value:aE(a),name:c},type:"change"}),[c]),s=n.default.useCallback(()=>p.current.onBlur({target:{value:aK(e._formValues,c),name:c},type:aN}),[c,e._formValues]),t=n.default.useCallback(a=>{let b=aK(e._fields,c);b&&b._f&&a&&(b._f.ref={focus:()=>aL(a.focus)&&a.focus(),select:()=>aL(a.select)&&a.select(),setCustomValidity:b=>aL(a.setCustomValidity)&&a.setCustomValidity(b),reportValidity:()=>aL(a.reportValidity)&&a.reportValidity()})},[e._fields,c]),u=n.default.useMemo(()=>({name:c,value:k,..."boolean"==typeof d||l.disabled?{disabled:l.disabled||d}:{},onChange:r,onBlur:s,ref:t}),[c,d,l.disabled,r,s,t,k]);return n.default.useEffect(()=>{let a=e._options.shouldUnregister||f,b=o.current;b&&b!==c&&!i&&e.unregister(b),e.register(c,{...m.current.rules,..."boolean"==typeof m.current.disabled?{disabled:m.current.disabled}:{}});let d=(a,b)=>{let c=aK(e._fields,a);c&&c._f&&(c._f.mount=b)};if(d(c,!0),a){let a=aG(aK(e._options.defaultValues,c,m.current.defaultValue));aM(e._defaultValues,c,a),aH(aK(e._formValues,c))&&aM(e._formValues,c,a)}return i||e.register(c),o.current=c,()=>{(i?a&&!e._state.action:a)?e.unregister(c):d(c,!1)}},[c,e,i,f]),n.default.useEffect(()=>{e._setDisabledField({disabled:d,name:c})},[d,c,e]),n.default.useMemo(()=>({field:u,formState:l,fieldState:q}),[u,l,q])}(a));n.default.createContext(null).displayName="HookFormContext";var a0=(a,b,c,d,e)=>b?{...c[a],types:{...c[a]&&c[a].types?c[a].types:{},[d]:e||!0}}:{},a1=a=>Array.isArray(a)?a:[a],a2=()=>{let a=[];return{get observers(){return a},next:b=>{for(let c of a)c.next&&c.next(b)},subscribe:b=>(a.push(b),{unsubscribe:()=>{a=a.filter(a=>a!==b)}}),unsubscribe:()=>{a=[]}}},a3=a=>aD(a)&&!Object.keys(a).length,a4=a=>!1;function a5(a,b){let c=Array.isArray(b)?b:/^\w*$/.test(b)?[b]:aJ(b),d=1===c.length?a:function(a,b){let c=b.slice(0,-1).length,d=0;for(;d<c;)a=aH(a)?d++:a[b[d++]];return a}(a,c),e=c.length-1,f=c[e];return d&&delete d[f],0!==e&&(aD(d)&&a3(d)||Array.isArray(d)&&function(a){for(let b in a)if(a.hasOwnProperty(b)&&!aH(a[b]))return!1;return!0}(d))&&a5(a,c.slice(0,-1)),a}function a6(a){return Array.isArray(a)||aD(a)&&!(a=>{for(let b in a)if(aL(a[b]))return!0;return!1})(a)}function a7(a,b={}){for(let c in a){let d=a[c];a6(d)?(b[c]=Array.isArray(d)?[]:{},a7(d,b[c])):aH(d)||(b[c]=!0)}return b}function a8(a,b,c){for(let d in c||(c=a7(b)),a){let e=a[d];if(a6(e))aH(b)||aZ(c[d])?c[d]=a7(e,Array.isArray(e)?[]:{}):a8(e,aC(b)?{}:b[d],c[d]);else{let a=b[d];c[d]=!a$(e,a)}}return c}let a9={value:!1,isValid:!1},ba={value:!0,isValid:!0};var bb=a=>{if(Array.isArray(a)){if(a.length>1){let b=a.filter(a=>a&&a.checked&&!a.disabled).map(a=>a.value);return{value:b,isValid:!!b.length}}return a[0].checked&&!a[0].disabled?a[0].attributes&&!aH(a[0].attributes.value)?aH(a[0].value)||""===a[0].value?ba:{value:a[0].value,isValid:!0}:ba:a9}return a9},bc=(a,{valueAsNumber:b,valueAsDate:c,setValueAs:d})=>aH(a)?a:b?""===a?NaN:a?+a:a:c&&aX(a)?new Date(a):d?d(a):a;let bd={isValid:!1,value:null};var be=a=>Array.isArray(a)?a.reduce((a,b)=>b&&b.checked&&!b.disabled?{isValid:!0,value:b.value}:a,bd):bd;function bf(a){let b=a.ref;return"file"===b.type?b.files:"radio"===b.type?be(a.refs).value:"select-multiple"===b.type?[...b.selectedOptions].map(({value:a})=>a):"checkbox"===b.type?bb(a.refs).value:bc(aH(b.value)?a.ref.value:b.value,a)}var bg=a=>aH(a)?a:a instanceof RegExp?a.source:aD(a)?a.value instanceof RegExp?a.value.source:a.value:a,bh=a=>({isOnSubmit:!a||a===aP,isOnBlur:"onBlur"===a,isOnChange:a===aO,isOnAll:"all"===a,isOnTouch:"onTouched"===a});let bi="AsyncFunction";var bj=a=>!!a&&!!a.validate&&!!(aL(a.validate)&&a.validate.constructor.name===bi||aD(a.validate)&&Object.values(a.validate).find(a=>a.constructor.name===bi)),bk=(a,b,c)=>!c&&(b.watchAll||b.watch.has(a)||[...b.watch].some(b=>a.startsWith(b)&&/^\.\w+/.test(a.slice(b.length))));let bl=(a,b,c,d)=>{for(let e of c||Object.keys(a)){let c=aK(a,e);if(c){let{_f:a,...f}=c;if(a){if(a.refs&&a.refs[0]&&b(a.refs[0],e)&&!d)return!0;else if(a.ref&&b(a.ref,a.name)&&!d)return!0;else if(bl(f,b))break}else if(aD(f)&&bl(f,b))break}}};function bm(a,b,c){let d=aK(a,c);if(d||/^\w*$/.test(c))return{error:d,name:c};let e=c.split(".");for(;e.length;){let d=e.join("."),f=aK(b,d),g=aK(a,d);if(f&&!Array.isArray(f)&&c!==d)break;if(g&&g.type)return{name:d,error:g};if(g&&g.root&&g.root.type)return{name:`${d}.root`,error:g.root};e.pop()}return{name:c}}var bn=(a,b,c)=>{let d=a1(aK(a,c));return aM(d,"root",b[c]),aM(a,c,d),a};function bo(a,b,c="validate"){if(aX(a)||Array.isArray(a)&&a.every(aX)||"boolean"==typeof a&&!a)return{type:c,message:aX(a)?a:"",ref:b}}var bp=a=>!aD(a)||a instanceof RegExp?{value:a,message:""}:a,bq=async(a,b,c,d,e,f)=>{let{ref:g,refs:h,required:i,maxLength:j,minLength:k,min:l,max:m,pattern:n,validate:o,name:p,valueAsNumber:q,mount:r}=a._f,s=aK(c,p);if(!r||b.has(p))return{};let t=h?h[0]:g,u=a=>{e&&t.reportValidity&&(t.setCustomValidity("boolean"==typeof a?"":a||""),t.reportValidity())},v={},w="radio"===g.type,x="checkbox"===g.type,y=(q||"file"===g.type)&&aH(g.value)&&aH(s)||""===s||Array.isArray(s)&&!s.length,z=a0.bind(null,p,d,v),A=(a,b,c,d=aQ,e=aR)=>{let f=a?b:c;v[p]={type:a?d:e,message:f,ref:g,...z(a?d:e,f)}};if(f?!Array.isArray(s)||!s.length:i&&(!(w||x)&&(y||aC(s))||"boolean"==typeof s&&!s||x&&!bb(h).isValid||w&&!be(h).isValid)){let{value:a,message:b}=aX(i)?{value:!!i,message:i}:bp(i);if(a&&(v[p]={type:aT,message:b,ref:t,...z(aT,b)},!d))return u(b),v}if(!y&&(!aC(l)||!aC(m))){let a,b,c=bp(m),e=bp(l);if(aC(s)||isNaN(s)){let d=g.valueAsDate||new Date(s),f=a=>new Date(new Date().toDateString()+" "+a),h="time"==g.type,i="week"==g.type;aX(c.value)&&s&&(a=h?f(s)>f(c.value):i?s>c.value:d>new Date(c.value)),aX(e.value)&&s&&(b=h?f(s)<f(e.value):i?s<e.value:d<new Date(e.value))}else{let d=g.valueAsNumber||(s?+s:s);aC(c.value)||(a=d>c.value),aC(e.value)||(b=d<e.value)}if((a||b)&&(A(!!a,c.message,e.message,"max","min"),!d))return u(v[p].message),v}if((j||k)&&!y&&(aX(s)||f&&Array.isArray(s))){let a=bp(j),b=bp(k),c=!aC(a.value)&&s.length>+a.value,e=!aC(b.value)&&s.length<+b.value;if((c||e)&&(A(c,a.message,b.message),!d))return u(v[p].message),v}if(n&&!y&&aX(s)){let{value:a,message:b}=bp(n);if(a instanceof RegExp&&!s.match(a)&&(v[p]={type:aS,message:b,ref:g,...z(aS,b)},!d))return u(b),v}if(o){if(aL(o)){let a=bo(await o(s,c),t);if(a&&(v[p]={...a,...z("validate",a.message)},!d))return u(a.message),v}else if(aD(o)){let a={};for(let b in o){if(!a3(a)&&!d)break;let e=bo(await o[b](s,c),t,b);e&&(a={...e,...z(b,e.message)},u(e.message),d&&(v[p]=a))}if(!a3(a)&&(v[p]={ref:t,...a},!d))return v}}return u(!0),v};let br={mode:aP,reValidateMode:aO,shouldFocusError:!0};function bs(a={}){let b=n.default.useRef(void 0),c=n.default.useRef(void 0),[d,e]=n.default.useState({isDirty:!1,isValidating:!1,isLoading:aL(a.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:a.errors||{},disabled:a.disabled||!1,isReady:!1,defaultValues:aL(a.defaultValues)?void 0:a.defaultValues});if(!b.current)if(a.formControl)b.current={...a.formControl,formState:d},a.defaultValues&&!aL(a.defaultValues)&&a.formControl.reset(a.defaultValues,a.resetOptions);else{let{formControl:c,...e}=function(a={}){let b,c={...br,...a},d={submitCount:0,isDirty:!1,isReady:!1,isLoading:aL(c.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:c.errors||{},disabled:c.disabled||!1},e={},f=(aD(c.defaultValues)||aD(c.values))&&aG(c.defaultValues||c.values)||{},g=c.shouldUnregister?{}:aG(f),h={action:!1,mount:!1,watch:!1,keepIsValid:!1},i={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},j=0,k={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},l={...k},m={...l},n={array:a2(),state:a2()},o="all"===c.criteriaMode,p=async a=>{if(!h.keepIsValid&&!c.disabled&&(l.isValid||m.isValid||a)){let a;c.resolver?(a=a3((await t()).errors),q()):a=await v(e,!0),a!==d.isValid&&n.state.next({isValid:a})}},q=(a,b)=>{!c.disabled&&(l.isValidating||l.validatingFields||m.isValidating||m.validatingFields)&&((a||Array.from(i.mount)).forEach(a=>{a&&(b?aM(d.validatingFields,a,b):a5(d.validatingFields,a))}),n.state.next({validatingFields:d.validatingFields,isValidating:!a3(d.validatingFields)}))},r=(a,b,c,d)=>{let i=aK(e,a);if(i){let e=aK(g,a,aH(c)?aK(f,a):c);aH(e)||d&&d.defaultChecked||b?aM(g,a,b?e:bf(i._f)):y(a,e),h.mount&&!h.action&&p()}},s=(a,b,e,g,h)=>{let i=!1,j=!1,k={name:a};if(!c.disabled){if(!e||g){(l.isDirty||m.isDirty)&&(j=d.isDirty,d.isDirty=k.isDirty=w(),i=j!==k.isDirty);let c=a$(aK(f,a),b);j=!!aK(d.dirtyFields,a),c?a5(d.dirtyFields,a):aM(d.dirtyFields,a,!0),k.dirtyFields=d.dirtyFields,i=i||(l.dirtyFields||m.dirtyFields)&&!c!==j}if(e){let b=aK(d.touchedFields,a);b||(aM(d.touchedFields,a,e),k.touchedFields=d.touchedFields,i=i||(l.touchedFields||m.touchedFields)&&b!==e)}i&&h&&n.state.next(k)}return i?k:{}},t=async a=>(q(a,!0),await c.resolver(g,c.context,((a,b,c,d)=>{let e={};for(let c of a){let a=aK(b,c);a&&aM(e,c,a._f)}return{criteriaMode:c,names:[...a],fields:e,shouldUseNativeValidation:d}})(a||i.mount,e,c.criteriaMode,c.shouldUseNativeValidation))),u=async a=>{let{errors:b}=await t(a);if(q(a),a)for(let c of a){let a=aK(b,c);a?aM(d.errors,c,a):a5(d.errors,c)}else d.errors=b;return b},v=async(b,e,f={valid:!0})=>{for(let h in b){let j=b[h];if(j){let{_f:b,...h}=j;if(b){let h=i.array.has(b.name),k=j._f&&bj(j._f);k&&l.validatingFields&&q([b.name],!0);let m=await bq(j,i.disabled,g,o,c.shouldUseNativeValidation&&!e,h);if(k&&l.validatingFields&&q([b.name]),m[b.name]&&(f.valid=!1,e||a.shouldUseNativeValidation))break;e||(aK(m,b.name)?h?bn(d.errors,m,b.name):aM(d.errors,b.name,m[b.name]):a5(d.errors,b.name))}a3(h)||await v(h,e,f)}}return f.valid},w=(a,b)=>!c.disabled&&(a&&b&&aM(g,a,b),!a$(E(),f)),x=(a,b,c)=>aY(a,i,{...h.mount?g:aH(b)?f:aX(a)?{[a]:b}:b},c,b),y=(a,b,c={})=>{let d=aK(e,a),f=b;if(d){let c=d._f;c&&(c.disabled||aM(g,a,bc(b,c)),c.ref,f=b,"select-multiple"===c.ref.type?[...c.ref.options].forEach(a=>a.selected=f.includes(a.value)):c.refs?"checkbox"===c.ref.type?c.refs.forEach(a=>{a.defaultChecked&&a.disabled||(Array.isArray(f)?a.checked=!!f.find(b=>b===a.value):a.checked=f===a.value||!!f)}):c.refs.forEach(a=>a.checked=a.value===f):"file"===c.ref.type?c.ref.value="":(c.ref.value=f,c.ref.type||n.state.next({name:a,values:aG(g)})))}(c.shouldDirty||c.shouldTouch)&&s(a,f,c.shouldTouch,c.shouldDirty,!0),c.shouldValidate&&D(a)},z=(a,b,c)=>{for(let d in b){if(!b.hasOwnProperty(d))return;let f=b[d],g=a+"."+d,h=aK(e,g);(i.array.has(a)||aD(f)||h&&!h._f)&&!aB(f)?z(g,f,c):y(g,f,c)}},A=(a,b,c={})=>{let j=aK(e,a),k=i.array.has(a),o=aG(b);aM(g,a,o),k?(n.array.next({name:a,values:aG(g)}),(l.isDirty||l.dirtyFields||m.isDirty||m.dirtyFields)&&c.shouldDirty&&n.state.next({name:a,dirtyFields:a8(f,g),isDirty:w(a,o)})):!j||j._f||aC(o)?y(a,o,c):z(a,o,c),bk(a,i)?n.state.next({...d,name:a,values:aG(g)}):n.state.next({name:h.mount?a:void 0,values:aG(g)})},B=async a=>{h.mount=!0;let f=a.target,k=f.name,r=!0,u=aK(e,k),w=a=>{r=Number.isNaN(a)||aB(a)&&isNaN(a.getTime())||a$(a,aK(g,k,a))},x=bh(c.mode),y=bh(c.reValidateMode);if(u){var z,A,B,C,E;let h,I,J,K=f.type?bf(u._f):aE(a),L=a.type===aN||"focusout"===a.type,M=!((J=u._f).mount&&(J.required||J.min||J.max||J.maxLength||J.minLength||J.pattern||J.validate))&&!c.resolver&&!aK(d.errors,k)&&!u._f.deps||(z=L,A=aK(d.touchedFields,k),B=d.isSubmitted,C=y,!(E=x).isOnAll&&(!B&&E.isOnTouch?!(A||z):(B?C.isOnBlur:E.isOnBlur)?!z:(B?!C.isOnChange:!E.isOnChange)||z)),N=bk(k,i,L);aM(g,k,K),L?f&&f.readOnly||(u._f.onBlur&&u._f.onBlur(a),b&&b(0)):u._f.onChange&&u._f.onChange(a);let O=s(k,K,L),P=!a3(O)||N;if(L||n.state.next({name:k,type:a.type,values:aG(g)}),M)return(l.isValid||m.isValid)&&("onBlur"===c.mode?L&&p():L||p()),P&&n.state.next({name:k,...N?{}:O});if(!L&&N&&n.state.next({...d}),c.resolver){let{errors:a}=await t([k]);if(q([k]),w(K),r){let b=bm(d.errors,e,k),c=bm(a,e,b.name||k);h=c.error,k=c.name,I=a3(a)}}else q([k],!0),h=(await bq(u,i.disabled,g,o,c.shouldUseNativeValidation))[k],q([k]),w(K),r&&(h?I=!1:(l.isValid||m.isValid)&&(I=await v(e,!0)));if(r){u._f.deps&&(!Array.isArray(u._f.deps)||u._f.deps.length>0)&&D(u._f.deps);var F=k,G=I,H=h;let a=aK(d.errors,F),e=(l.isValid||m.isValid)&&"boolean"==typeof G&&d.isValid!==G;if(c.delayError&&H){let a;a=()=>{aM(d.errors,F,H),n.state.next({errors:d.errors})},(b=b=>{clearTimeout(j),j=setTimeout(a,b)})(c.delayError)}else clearTimeout(j),b=null,H?aM(d.errors,F,H):a5(d.errors,F);if((H?!a$(a,H):a)||!a3(O)||e){let a={...O,...e&&"boolean"==typeof G?{isValid:G}:{},errors:d.errors,name:F};d={...d,...a},n.state.next(a)}}}},C=(a,b)=>{if(aK(d.errors,b)&&a.focus)return a.focus(),1},D=async(a,b={})=>{let f,g,h=a1(a);if(c.resolver){let b=await u(aH(a)?a:h);f=a3(b),g=a?!h.some(a=>aK(b,a)):f}else a?((g=(await Promise.all(h.map(async a=>{let b=aK(e,a);return await v(b&&b._f?{[a]:b}:b)}))).every(Boolean))||d.isValid)&&p():g=f=await v(e);return n.state.next({...!aX(a)||(l.isValid||m.isValid)&&f!==d.isValid?{}:{name:a},...c.resolver||!a?{isValid:f}:{},errors:d.errors}),b.shouldFocus&&!g&&bl(e,C,a?h:i.mount),g},E=(a,b)=>{let c={...h.mount?g:f};return b&&(c=function a(b,c){let d={};for(let e in b)if(b.hasOwnProperty(e)){let f=b[e],g=c[e];if(f&&aD(f)&&g){let b=a(f,g);aD(b)&&(d[e]=b)}else b[e]&&(d[e]=g)}return d}(b.dirtyFields?d.dirtyFields:d.touchedFields,c)),aH(a)?c:aX(a)?aK(c,a):a.map(a=>aK(c,a))},F=(a,b)=>({invalid:!!aK((b||d).errors,a),isDirty:!!aK((b||d).dirtyFields,a),error:aK((b||d).errors,a),isValidating:!!aK(d.validatingFields,a),isTouched:!!aK((b||d).touchedFields,a)}),G=(a,b,c)=>{let f=(aK(e,a,{_f:{}})._f||{}).ref,{ref:g,message:h,type:i,...j}=aK(d.errors,a)||{};aM(d.errors,a,{...j,...b,ref:f}),n.state.next({name:a,errors:d.errors,isValid:!1}),c&&c.shouldFocus&&f&&f.focus&&f.focus()},H=a=>n.state.subscribe({next:b=>{let c,e,h;c=a.name,e=b.name,h=a.exact,(!c||!e||c===e||a1(c).some(a=>a&&(h?a===e:a.startsWith(e)||e.startsWith(a))))&&((a,b,c,d)=>{c(a);let{name:e,...f}=a;return a3(f)||Object.keys(f).length>=Object.keys(b).length||Object.keys(f).find(a=>b[a]===(!d||"all"))})(b,a.formState||l,P,a.reRenderRoot)&&a.callback({values:{...g},...d,...b,defaultValues:f})}}).unsubscribe,I=(a,b={})=>{for(let h of a?a1(a):i.mount)i.mount.delete(h),i.array.delete(h),b.keepValue||(a5(e,h),a5(g,h)),b.keepError||a5(d.errors,h),b.keepDirty||a5(d.dirtyFields,h),b.keepTouched||a5(d.touchedFields,h),b.keepIsValidating||a5(d.validatingFields,h),c.shouldUnregister||b.keepDefaultValue||a5(f,h);n.state.next({values:aG(g)}),n.state.next({...d,...!b.keepDirty?{}:{isDirty:w()}}),b.keepIsValid||p()},J=({disabled:a,name:b})=>{if("boolean"==typeof a&&h.mount||a||i.disabled.has(b)){let c=i.disabled.has(b);a?i.disabled.add(b):i.disabled.delete(b),!!a!==c&&h.mount&&!h.action&&p()}},K=(a,b={})=>{let d=aK(e,a),g="boolean"==typeof b.disabled||"boolean"==typeof c.disabled;return(aM(e,a,{...d||{},_f:{...d&&d._f?d._f:{ref:{name:a}},name:a,mount:!0,...b}}),i.mount.add(a),d)?J({disabled:"boolean"==typeof b.disabled?b.disabled:c.disabled,name:a}):r(a,!0,b.value),{...g?{disabled:b.disabled||c.disabled}:{},...c.progressive?{required:!!b.required,min:bg(b.min),max:bg(b.max),minLength:bg(b.minLength),maxLength:bg(b.maxLength),pattern:bg(b.pattern)}:{},name:a,onChange:B,onBlur:B,ref:g=>{if(g){let c;K(a,b),d=aK(e,a);let h=aH(g.value)&&g.querySelectorAll&&g.querySelectorAll("input,select,textarea")[0]||g,i="radio"===(c=h).type||"checkbox"===c.type,j=d._f.refs||[];(i?j.find(a=>a===h):h===d._f.ref)||(aM(e,a,{_f:{...d._f,...i?{refs:[...j.filter(a4),h,...Array.isArray(aK(f,a))?[{}]:[]],ref:{type:h.type,name:a}}:{ref:h}}}),r(a,!1,void 0,h))}else(d=aK(e,a,{}))._f&&(d._f.mount=!1),(c.shouldUnregister||b.shouldUnregister)&&!(aF(i.array,a)&&h.action)&&i.unMount.add(a)}}},L=()=>c.shouldFocusError&&bl(e,C,i.mount),M=(a,b)=>async f=>{let h;f&&(f.preventDefault&&f.preventDefault(),f.persist&&f.persist());let j=aG(g);if(n.state.next({isSubmitting:!0}),c.resolver){let{errors:a,values:b}=await t();q(),d.errors=a,j=aG(b)}else await v(e);if(i.disabled.size)for(let a of i.disabled)a5(j,a);if(a5(d.errors,"root"),a3(d.errors)){n.state.next({errors:{}});try{await a(j,f)}catch(a){h=a}}else b&&await b({...d.errors},f),L(),setTimeout(L);if(n.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:a3(d.errors)&&!h,submitCount:d.submitCount+1,errors:d.errors}),h)throw h},N=(a,b={})=>{let j=a?aG(a):f,k=aG(j),m=a3(a),o=m?f:k;if(b.keepDefaultValues||(f=j),!b.keepValues){if(b.keepDirtyValues)for(let a of Array.from(new Set([...i.mount,...Object.keys(a8(f,g))]))){let b=aK(d.dirtyFields,a),c=aK(g,a),e=aK(o,a);b&&!aH(c)?aM(o,a,c):b||aH(e)||A(a,e)}else if(b.keepFieldsRef)for(let a of i.mount)A(a,aK(o,a));else e={};g=c.shouldUnregister?b.keepDefaultValues?aG(f):{}:aG(o),n.array.next({values:{...o}}),n.state.next({values:{...o}})}i={mount:b.keepDirtyValues?i.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},h.mount=!l.isValid||!!b.keepIsValid||!!b.keepDirtyValues||!c.shouldUnregister&&!a3(o),h.watch=!!c.shouldUnregister,h.keepIsValid=!!b.keepIsValid,h.action=!1,b.keepErrors||(d.errors={}),n.state.next({submitCount:b.keepSubmitCount?d.submitCount:0,isDirty:!m&&(b.keepDirty?d.isDirty:!!(b.keepDefaultValues&&!a$(a,f))),isSubmitted:!!b.keepIsSubmitted&&d.isSubmitted,dirtyFields:m?{}:b.keepDirtyValues?b.keepDefaultValues&&g?a8(f,g):d.dirtyFields:b.keepDefaultValues&&a?a8(f,a):b.keepDirty?d.dirtyFields:{},touchedFields:b.keepTouched?d.touchedFields:{},errors:b.keepErrors?d.errors:{},isSubmitSuccessful:!!b.keepIsSubmitSuccessful&&d.isSubmitSuccessful,isSubmitting:!1,defaultValues:f})},O=(a,b)=>N(aL(a)?a(g):a,{...c.resetOptions,...b}),P=a=>{d={...d,...a}},Q={control:{register:K,unregister:I,getFieldState:F,handleSubmit:M,setError:G,_subscribe:H,_runSchema:t,_updateIsValidating:q,_focusError:L,_getWatch:x,_getDirty:w,_setValid:p,_setFieldArray:(a,b=[],i,j,k=!0,o=!0)=>{if(j&&i&&!c.disabled){if(h.action=!0,o&&Array.isArray(aK(e,a))){let b=i(aK(e,a),j.argA,j.argB);k&&aM(e,a,b)}if(o&&Array.isArray(aK(d.errors,a))){let b,c=i(aK(d.errors,a),j.argA,j.argB);k&&aM(d.errors,a,c),aI(aK(b=d.errors,a)).length||a5(b,a)}if((l.touchedFields||m.touchedFields)&&o&&Array.isArray(aK(d.touchedFields,a))){let b=i(aK(d.touchedFields,a),j.argA,j.argB);k&&aM(d.touchedFields,a,b)}(l.dirtyFields||m.dirtyFields)&&(d.dirtyFields=a8(f,g)),n.state.next({name:a,isDirty:w(a,b),dirtyFields:d.dirtyFields,errors:d.errors,isValid:d.isValid})}else aM(g,a,b)},_setDisabledField:J,_setErrors:a=>{d.errors=a,n.state.next({errors:d.errors,isValid:!1})},_getFieldArray:a=>aI(aK(h.mount?g:f,a,c.shouldUnregister?aK(f,a,[]):[])),_reset:N,_resetDefaultValues:()=>aL(c.defaultValues)&&c.defaultValues().then(a=>{O(a,c.resetOptions),n.state.next({isLoading:!1})}),_removeUnmounted:()=>{for(let a of i.unMount){let b=aK(e,a);b&&(b._f.refs?b._f.refs.every(a=>!a4(a)):!a4(b._f.ref))&&I(a)}i.unMount=new Set},_disableForm:a=>{"boolean"==typeof a&&(n.state.next({disabled:a}),bl(e,(b,c)=>{let d=aK(e,c);d&&(b.disabled=d._f.disabled||a,Array.isArray(d._f.refs)&&d._f.refs.forEach(b=>{b.disabled=d._f.disabled||a}))},0,!1))},_subjects:n,_proxyFormState:l,get _fields(){return e},get _formValues(){return g},get _state(){return h},set _state(value){h=value},get _defaultValues(){return f},get _names(){return i},set _names(value){i=value},get _formState(){return d},get _options(){return c},set _options(value){c={...c,...value}}},subscribe:a=>(h.mount=!0,m={...m,...a.formState},H({...a,formState:{...k,...a.formState}})),trigger:D,register:K,handleSubmit:M,watch:(a,b)=>aL(a)?n.state.subscribe({next:c=>"values"in c&&a(x(void 0,b),c)}):x(a,b,!0),setValue:A,getValues:E,reset:O,resetField:(a,b={})=>{aK(e,a)&&(aH(b.defaultValue)?A(a,aG(aK(f,a))):(A(a,b.defaultValue),aM(f,a,aG(b.defaultValue))),b.keepTouched||a5(d.touchedFields,a),b.keepDirty||(a5(d.dirtyFields,a),d.isDirty=b.defaultValue?w(a,aG(aK(f,a))):w()),!b.keepError&&(a5(d.errors,a),l.isValid&&p()),n.state.next({...d}))},clearErrors:a=>{let b=a?a1(a):void 0;null==b||b.forEach(a=>a5(d.errors,a)),b?b.forEach(a=>{n.state.next({name:a,errors:d.errors})}):n.state.next({errors:{}})},unregister:I,setError:G,setFocus:(a,b={})=>{let c=aK(e,a),d=c&&c._f;if(d){let a=d.refs?d.refs[0]:d.ref;a.focus&&setTimeout(()=>{a.focus(),b.shouldSelect&&aL(a.select)&&a.select()})}},getFieldState:F};return{...Q,formControl:Q}}(a);b.current={...e,formState:d}}let f=b.current.control;return f._options=a,aW(()=>{let a=f._subscribe({formState:f._proxyFormState,callback:()=>e({...f._formState}),reRenderRoot:!0});return e(a=>({...a,isReady:!0})),f._formState.isReady=!0,a},[f]),n.default.useEffect(()=>f._disableForm(a.disabled),[f,a.disabled]),n.default.useEffect(()=>{a.mode&&(f._options.mode=a.mode),a.reValidateMode&&(f._options.reValidateMode=a.reValidateMode)},[f,a.mode,a.reValidateMode]),n.default.useEffect(()=>{a.errors&&(f._setErrors(a.errors),f._focusError())},[f,a.errors]),n.default.useEffect(()=>{a.shouldUnregister&&f._subjects.state.next({values:f._getWatch()})},[f,a.shouldUnregister]),n.default.useEffect(()=>{if(f._proxyFormState.isDirty){let a=f._getDirty();a!==d.isDirty&&f._subjects.state.next({isDirty:a})}},[f,d.isDirty]),n.default.useEffect(()=>{var b;a.values&&!a$(a.values,c.current)?(f._reset(a.values,{keepFieldsRef:!0,...f._options.resetOptions}),(null==(b=f._options.resetOptions)?void 0:b.keepIsValid)||f._setValid(),c.current=a.values,e(a=>({...a}))):f._resetDefaultValues()},[f,a.values]),n.default.useEffect(()=>{f._state.mount||(f._setValid(),f._state.mount=!0),f._state.watch&&(f._state.watch=!1,f._subjects.state.next({...f._formState})),f._removeUnmounted()}),b.current.formState=n.default.useMemo(()=>aV(d,f),[f,d]),b.current}var bt=a.i(35112);function bu(a,[b,c]){return Math.min(c,Math.max(b,a))}function bv(a,b,{checkForDefaultPrevented:c=!0}={}){return function(d){if(a?.(d),!1===c||!d.defaultPrevented)return b?.(d)}}function bw(a,b=[]){let c=[],d=()=>{let b=c.map(a=>n.createContext(a));return function(c){let d=c?.[a]||b;return n.useMemo(()=>({[`__scope${a}`]:{...c,[a]:d}}),[c,d])}};return d.scopeName=a,[function(b,d){let e=n.createContext(d),f=c.length;c=[...c,d];let g=b=>{let{scope:c,children:d,...g}=b,h=c?.[a]?.[f]||e,i=n.useMemo(()=>g,Object.values(g));return(0,m.jsx)(h.Provider,{value:i,children:d})};return g.displayName=b+"Provider",[g,function(c,g){let h=g?.[a]?.[f]||e,i=n.useContext(h);if(i)return i;if(void 0!==d)return d;throw Error(`\`${c}\` must be used within \`${b}\``)}]},function(...a){let b=a[0];if(1===a.length)return b;let c=()=>{let c=a.map(a=>({useScope:a(),scopeName:a.scopeName}));return function(a){let d=c.reduce((b,{useScope:c,scopeName:d})=>{let e=c(a)[`__scope${d}`];return{...b,...e}},{});return n.useMemo(()=>({[`__scope${b.scopeName}`]:d}),[d])}};return c.scopeName=b.scopeName,c}(d,...b)]}function bx(a,b){if("function"==typeof a)return a(b);null!=a&&(a.current=b)}function by(...a){return b=>{let c=!1,d=a.map(a=>{let d=bx(a,b);return c||"function"!=typeof d||(c=!0),d});if(c)return()=>{for(let b=0;b<d.length;b++){let c=d[b];"function"==typeof c?c():bx(a[b],null)}}}}function bz(...a){return n.useCallback(by(...a),a)}function bA(a){var b;let c,d=(b=a,(c=n.forwardRef((a,b)=>{let{children:c,...d}=a;if(n.isValidElement(c)){var e;let a,f,g=(e=c,(f=(a=Object.getOwnPropertyDescriptor(e.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.ref:(f=(a=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.props.ref:e.props.ref||e.ref),h=function(a,b){let c={...b};for(let d in b){let e=a[d],f=b[d];/^on[A-Z]/.test(d)?e&&f?c[d]=(...a)=>{let b=f(...a);return e(...a),b}:e&&(c[d]=e):"style"===d?c[d]={...e,...f}:"className"===d&&(c[d]=[e,f].filter(Boolean).join(" "))}return{...a,...c}}(d,c.props);return c.type!==n.Fragment&&(h.ref=b?by(b,g):g),n.cloneElement(c,h)}return n.Children.count(c)>1?n.Children.only(null):null})).displayName=`${b}.SlotClone`,c),e=n.forwardRef((a,b)=>{let{children:c,...e}=a,f=n.Children.toArray(c),g=f.find(bC);if(g){let a=g.props.children,c=f.map(b=>b!==g?b:n.Children.count(a)>1?n.Children.only(null):n.isValidElement(a)?a.props.children:null);return(0,m.jsx)(d,{...e,ref:b,children:n.isValidElement(a)?n.cloneElement(a,void 0,c):null})}return(0,m.jsx)(d,{...e,ref:b,children:c})});return e.displayName=`${a}.Slot`,e}var bB=Symbol("radix.slottable");function bC(a){return n.isValidElement(a)&&"function"==typeof a.type&&"__radixId"in a.type&&a.type.__radixId===bB}var bD=new WeakMap;function bE(a,b){var c,d;let e,f,g;if("at"in Array.prototype)return Array.prototype.at.call(a,b);let h=(c=a,d=b,e=c.length,(g=(f=bF(d))>=0?f:e+f)<0||g>=e?-1:g);return -1===h?void 0:a[h]}function bF(a){return a!=a||0===a?0:Math.trunc(a)}(class a extends Map{#B;constructor(a){super(a),this.#B=[...super.keys()],bD.set(this,!0)}set(a,b){return bD.get(this)&&(this.has(a)?this.#B[this.#B.indexOf(a)]=a:this.#B.push(a)),super.set(a,b),this}insert(a,b,c){let d,e=this.has(b),f=this.#B.length,g=bF(a),h=g>=0?g:f+g,i=h<0||h>=f?-1:h;if(i===this.size||e&&i===this.size-1||-1===i)return this.set(b,c),this;let j=this.size+ +!e;g<0&&h++;let k=[...this.#B],l=!1;for(let a=h;a<j;a++)if(h===a){let f=k[a];k[a]===b&&(f=k[a+1]),e&&this.delete(b),d=this.get(f),this.set(b,c)}else{l||k[a-1]!==b||(l=!0);let c=k[l?a:a-1],e=d;d=this.get(c),this.delete(c),this.set(c,e)}return this}with(b,c,d){let e=new a(this);return e.insert(b,c,d),e}before(a){let b=this.#B.indexOf(a)-1;if(!(b<0))return this.entryAt(b)}setBefore(a,b,c){let d=this.#B.indexOf(a);return -1===d?this:this.insert(d,b,c)}after(a){let b=this.#B.indexOf(a);if(-1!==(b=-1===b||b===this.size-1?-1:b+1))return this.entryAt(b)}setAfter(a,b,c){let d=this.#B.indexOf(a);return -1===d?this:this.insert(d+1,b,c)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#B=[],super.clear()}delete(a){let b=super.delete(a);return b&&this.#B.splice(this.#B.indexOf(a),1),b}deleteAt(a){let b=this.keyAt(a);return void 0!==b&&this.delete(b)}at(a){let b=bE(this.#B,a);if(void 0!==b)return this.get(b)}entryAt(a){let b=bE(this.#B,a);if(void 0!==b)return[b,this.get(b)]}indexOf(a){return this.#B.indexOf(a)}keyAt(a){return bE(this.#B,a)}from(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.at(d)}keyFrom(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.keyAt(d)}find(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return d;c++}}findIndex(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return c;c++}return -1}filter(b,c){let d=[],e=0;for(let a of this)Reflect.apply(b,c,[a,e,this])&&d.push(a),e++;return new a(d)}map(b,c){let d=[],e=0;for(let a of this)d.push([a[0],Reflect.apply(b,c,[a,e,this])]),e++;return new a(d)}reduce(...a){let[b,c]=a,d=0,e=c??this.at(0);for(let c of this)e=0===d&&1===a.length?c:Reflect.apply(b,this,[e,c,d,this]),d++;return e}reduceRight(...a){let[b,c]=a,d=c??this.at(-1);for(let c=this.size-1;c>=0;c--){let e=this.at(c);d=c===this.size-1&&1===a.length?e:Reflect.apply(b,this,[d,e,c,this])}return d}toSorted(b){return new a([...this.entries()].sort(b))}toReversed(){let b=new a;for(let a=this.size-1;a>=0;a--){let c=this.keyAt(a),d=this.get(c);b.set(c,d)}return b}toSpliced(...b){let c=[...this.entries()];return c.splice(...b),new a(c)}slice(b,c){let d=new a,e=this.size-1;if(void 0===b)return d;b<0&&(b+=this.size),void 0!==c&&c>0&&(e=c-1);for(let a=b;a<=e;a++){let b=this.keyAt(a),c=this.get(b);d.set(b,c)}return d}every(a,b){let c=0;for(let d of this){if(!Reflect.apply(a,b,[d,c,this]))return!1;c++}return!0}some(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return!0;c++}return!1}});var bG=n.createContext(void 0),bH=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,b)=>{let c=bA(`Primitive.${b}`),d=n.forwardRef((a,d)=>{let{asChild:e,...f}=a;return(0,m.jsx)(e?c:b,{...f,ref:d})});return d.displayName=`Primitive.${b}`,{...a,[b]:d}},{});function bI(a){let b=n.useRef(a);return n.useEffect(()=>{b.current=a}),n.useMemo(()=>(...a)=>b.current?.(...a),[])}var bJ="dismissableLayer.update",bK=n.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),bL=n.forwardRef((a,b)=>{let{disableOutsidePointerEvents:c=!1,onEscapeKeyDown:d,onPointerDownOutside:e,onFocusOutside:f,onInteractOutside:g,onDismiss:h,...i}=a,j=n.useContext(bK),[l,o]=n.useState(null),p=l?.ownerDocument??globalThis?.document,[,q]=n.useState({}),r=bz(b,a=>o(a)),s=Array.from(j.layers),[t]=[...j.layersWithOutsidePointerEventsDisabled].slice(-1),u=s.indexOf(t),v=l?s.indexOf(l):-1,w=j.layersWithOutsidePointerEventsDisabled.size>0,x=v>=u,y=function(a,b=globalThis?.document){let c=bI(a),d=n.useRef(!1),e=n.useRef(()=>{});return n.useEffect(()=>{let a=a=>{if(a.target&&!d.current){let d=function(){bN("dismissableLayer.pointerDownOutside",c,f,{discrete:!0})},f={originalEvent:a};"touch"===a.pointerType?(b.removeEventListener("click",e.current),e.current=d,b.addEventListener("click",e.current,{once:!0})):d()}else b.removeEventListener("click",e.current);d.current=!1},f=window.setTimeout(()=>{b.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(f),b.removeEventListener("pointerdown",a),b.removeEventListener("click",e.current)}},[b,c]),{onPointerDownCapture:()=>d.current=!0}}(a=>{let b=a.target,c=[...j.branches].some(a=>a.contains(b));x&&!c&&(e?.(a),g?.(a),a.defaultPrevented||h?.())},p),z=function(a,b=globalThis?.document){let c=bI(a),d=n.useRef(!1);return n.useEffect(()=>{let a=a=>{a.target&&!d.current&&bN("dismissableLayer.focusOutside",c,{originalEvent:a},{discrete:!1})};return b.addEventListener("focusin",a),()=>b.removeEventListener("focusin",a)},[b,c]),{onFocusCapture:()=>d.current=!0,onBlurCapture:()=>d.current=!1}}(a=>{let b=a.target;![...j.branches].some(a=>a.contains(b))&&(f?.(a),g?.(a),a.defaultPrevented||h?.())},p);return!function(a,b=globalThis?.document){let c=bI(a);n.useEffect(()=>{let a=a=>{"Escape"===a.key&&c(a)};return b.addEventListener("keydown",a,{capture:!0}),()=>b.removeEventListener("keydown",a,{capture:!0})},[c,b])}(a=>{v===j.layers.size-1&&(d?.(a),!a.defaultPrevented&&h&&(a.preventDefault(),h()))},p),n.useEffect(()=>{if(l)return c&&(0===j.layersWithOutsidePointerEventsDisabled.size&&(k=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),j.layersWithOutsidePointerEventsDisabled.add(l)),j.layers.add(l),bM(),()=>{c&&1===j.layersWithOutsidePointerEventsDisabled.size&&(p.body.style.pointerEvents=k)}},[l,p,c,j]),n.useEffect(()=>()=>{l&&(j.layers.delete(l),j.layersWithOutsidePointerEventsDisabled.delete(l),bM())},[l,j]),n.useEffect(()=>{let a=()=>q({});return document.addEventListener(bJ,a),()=>document.removeEventListener(bJ,a)},[]),(0,m.jsx)(bH.div,{...i,ref:r,style:{pointerEvents:w?x?"auto":"none":void 0,...a.style},onFocusCapture:bv(a.onFocusCapture,z.onFocusCapture),onBlurCapture:bv(a.onBlurCapture,z.onBlurCapture),onPointerDownCapture:bv(a.onPointerDownCapture,y.onPointerDownCapture)})});function bM(){let a=new CustomEvent(bJ);document.dispatchEvent(a)}function bN(a,b,c,{discrete:d}){let e=c.originalEvent.target,f=new CustomEvent(a,{bubbles:!1,cancelable:!0,detail:c});if(b&&e.addEventListener(a,b,{once:!0}),d)e&&bt.flushSync(()=>e.dispatchEvent(f));else e.dispatchEvent(f)}bL.displayName="DismissableLayer",n.forwardRef((a,b)=>{let c=n.useContext(bK),d=n.useRef(null),e=bz(b,d);return n.useEffect(()=>{let a=d.current;if(a)return c.branches.add(a),()=>{c.branches.delete(a)}},[c.branches]),(0,m.jsx)(bH.div,{...a,ref:e})}).displayName="DismissableLayerBranch";var bO=0;function bP(){let a=document.createElement("span");return a.setAttribute("data-radix-focus-guard",""),a.tabIndex=0,a.style.outline="none",a.style.opacity="0",a.style.position="fixed",a.style.pointerEvents="none",a}var bQ="focusScope.autoFocusOnMount",bR="focusScope.autoFocusOnUnmount",bS={bubbles:!1,cancelable:!0},bT=n.forwardRef((a,b)=>{let{loop:c=!1,trapped:d=!1,onMountAutoFocus:e,onUnmountAutoFocus:f,...g}=a,[h,i]=n.useState(null),j=bI(e),k=bI(f),l=n.useRef(null),o=bz(b,a=>i(a)),p=n.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;n.useEffect(()=>{if(d){let a=function(a){if(p.paused||!h)return;let b=a.target;h.contains(b)?l.current=b:bW(l.current,{select:!0})},b=function(a){if(p.paused||!h)return;let b=a.relatedTarget;null!==b&&(h.contains(b)||bW(l.current,{select:!0}))};document.addEventListener("focusin",a),document.addEventListener("focusout",b);let c=new MutationObserver(function(a){if(document.activeElement===document.body)for(let b of a)b.removedNodes.length>0&&bW(h)});return h&&c.observe(h,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",a),document.removeEventListener("focusout",b),c.disconnect()}}},[d,h,p.paused]),n.useEffect(()=>{if(h){bX.add(p);let a=document.activeElement;if(!h.contains(a)){let b=new CustomEvent(bQ,bS);h.addEventListener(bQ,j),h.dispatchEvent(b),b.defaultPrevented||(function(a,{select:b=!1}={}){let c=document.activeElement;for(let d of a)if(bW(d,{select:b}),document.activeElement!==c)return}(bU(h).filter(a=>"A"!==a.tagName),{select:!0}),document.activeElement===a&&bW(h))}return()=>{h.removeEventListener(bQ,j),setTimeout(()=>{let b=new CustomEvent(bR,bS);h.addEventListener(bR,k),h.dispatchEvent(b),b.defaultPrevented||bW(a??document.body,{select:!0}),h.removeEventListener(bR,k),bX.remove(p)},0)}}},[h,j,k,p]);let q=n.useCallback(a=>{if(!c&&!d||p.paused)return;let b="Tab"===a.key&&!a.altKey&&!a.ctrlKey&&!a.metaKey,e=document.activeElement;if(b&&e){var f;let b,d=a.currentTarget,[g,h]=[bV(b=bU(f=d),f),bV(b.reverse(),f)];g&&h?a.shiftKey||e!==h?a.shiftKey&&e===g&&(a.preventDefault(),c&&bW(h,{select:!0})):(a.preventDefault(),c&&bW(g,{select:!0})):e===d&&a.preventDefault()}},[c,d,p.paused]);return(0,m.jsx)(bH.div,{tabIndex:-1,...g,ref:o,onKeyDown:q})});function bU(a){let b=[],c=document.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,{acceptNode:a=>{let b="INPUT"===a.tagName&&"hidden"===a.type;return a.disabled||a.hidden||b?NodeFilter.FILTER_SKIP:a.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;c.nextNode();)b.push(c.currentNode);return b}function bV(a,b){for(let c of a)if(!function(a,{upTo:b}){if("hidden"===getComputedStyle(a).visibility)return!0;for(;a&&(void 0===b||a!==b);){if("none"===getComputedStyle(a).display)return!0;a=a.parentElement}return!1}(c,{upTo:b}))return c}function bW(a,{select:b=!1}={}){if(a&&a.focus){var c;let d=document.activeElement;a.focus({preventScroll:!0}),a!==d&&(c=a)instanceof HTMLInputElement&&"select"in c&&b&&a.select()}}bT.displayName="FocusScope";var bX=(d=[],{add(a){let b=d[0];a!==b&&b?.pause(),(d=bY(d,a)).unshift(a)},remove(a){d=bY(d,a),d[0]?.resume()}});function bY(a,b){let c=[...a],d=c.indexOf(b);return -1!==d&&c.splice(d,1),c}var bZ=globalThis?.document?n.useLayoutEffect:()=>{},b$=n[" useId ".trim().toString()]||(()=>void 0),b_=0;function b0(a){let[b,c]=n.useState(b$());return bZ(()=>{a||c(a=>a??String(b_++))},[a]),a||(b?`radix-${b}`:"")}let b1=["top","right","bottom","left"],b2=Math.min,b3=Math.max,b4=Math.round,b5=Math.floor,b6=a=>({x:a,y:a}),b7={left:"right",right:"left",bottom:"top",top:"bottom"};function b8(a,b){return"function"==typeof a?a(b):a}function b9(a){return a.split("-")[0]}function ca(a){return a.split("-")[1]}function cb(a){return"x"===a?"y":"x"}function cc(a){return"y"===a?"height":"width"}function cd(a){let b=a[0];return"t"===b||"b"===b?"y":"x"}function ce(a){return a.includes("start")?a.replace("start","end"):a.replace("end","start")}let cf=["left","right"],cg=["right","left"],ch=["top","bottom"],ci=["bottom","top"];function cj(a){let b=b9(a);return b7[b]+a.slice(b.length)}function ck(a){return"number"!=typeof a?{top:0,right:0,bottom:0,left:0,...a}:{top:a,right:a,bottom:a,left:a}}function cl(a){let{x:b,y:c,width:d,height:e}=a;return{width:d,height:e,top:c,left:b,right:b+d,bottom:c+e,x:b,y:c}}function cm(a,b,c){let d,{reference:e,floating:f}=a,g=cd(b),h=cb(cd(b)),i=cc(h),j=b9(b),k="y"===g,l=e.x+e.width/2-f.width/2,m=e.y+e.height/2-f.height/2,n=e[i]/2-f[i]/2;switch(j){case"top":d={x:l,y:e.y-f.height};break;case"bottom":d={x:l,y:e.y+e.height};break;case"right":d={x:e.x+e.width,y:m};break;case"left":d={x:e.x-f.width,y:m};break;default:d={x:e.x,y:e.y}}switch(ca(b)){case"start":d[h]-=n*(c&&k?-1:1);break;case"end":d[h]+=n*(c&&k?-1:1)}return d}async function cn(a,b){var c;void 0===b&&(b={});let{x:d,y:e,platform:f,rects:g,elements:h,strategy:i}=a,{boundary:j="clippingAncestors",rootBoundary:k="viewport",elementContext:l="floating",altBoundary:m=!1,padding:n=0}=b8(b,a),o=ck(n),p=h[m?"floating"===l?"reference":"floating":l],q=cl(await f.getClippingRect({element:null==(c=await (null==f.isElement?void 0:f.isElement(p)))||c?p:p.contextElement||await (null==f.getDocumentElement?void 0:f.getDocumentElement(h.floating)),boundary:j,rootBoundary:k,strategy:i})),r="floating"===l?{x:d,y:e,width:g.floating.width,height:g.floating.height}:g.reference,s=await (null==f.getOffsetParent?void 0:f.getOffsetParent(h.floating)),t=await (null==f.isElement?void 0:f.isElement(s))&&await (null==f.getScale?void 0:f.getScale(s))||{x:1,y:1},u=cl(f.convertOffsetParentRelativeRectToViewportRelativeRect?await f.convertOffsetParentRelativeRectToViewportRelativeRect({elements:h,rect:r,offsetParent:s,strategy:i}):r);return{top:(q.top-u.top+o.top)/t.y,bottom:(u.bottom-q.bottom+o.bottom)/t.y,left:(q.left-u.left+o.left)/t.x,right:(u.right-q.right+o.right)/t.x}}let co=async(a,b,c)=>{let{placement:d="bottom",strategy:e="absolute",middleware:f=[],platform:g}=c,h=g.detectOverflow?g:{...g,detectOverflow:cn},i=await (null==g.isRTL?void 0:g.isRTL(b)),j=await g.getElementRects({reference:a,floating:b,strategy:e}),{x:k,y:l}=cm(j,d,i),m=d,n=0,o={};for(let c=0;c<f.length;c++){let p=f[c];if(!p)continue;let{name:q,fn:r}=p,{x:s,y:t,data:u,reset:v}=await r({x:k,y:l,initialPlacement:d,placement:m,strategy:e,middlewareData:o,rects:j,platform:h,elements:{reference:a,floating:b}});k=null!=s?s:k,l=null!=t?t:l,o[q]={...o[q],...u},v&&n<50&&(n++,"object"==typeof v&&(v.placement&&(m=v.placement),v.rects&&(j=!0===v.rects?await g.getElementRects({reference:a,floating:b,strategy:e}):v.rects),{x:k,y:l}=cm(j,m,i)),c=-1)}return{x:k,y:l,placement:m,strategy:e,middlewareData:o}};function cp(a,b){return{top:a.top-b.height,right:a.right-b.width,bottom:a.bottom-b.height,left:a.left-b.width}}function cq(a){return b1.some(b=>a[b]>=0)}let cr=new Set(["left","top"]);async function cs(a,b){let{placement:c,platform:d,elements:e}=a,f=await (null==d.isRTL?void 0:d.isRTL(e.floating)),g=b9(c),h=ca(c),i="y"===cd(c),j=cr.has(g)?-1:1,k=f&&i?-1:1,l=b8(b,a),{mainAxis:m,crossAxis:n,alignmentAxis:o}="number"==typeof l?{mainAxis:l,crossAxis:0,alignmentAxis:null}:{mainAxis:l.mainAxis||0,crossAxis:l.crossAxis||0,alignmentAxis:l.alignmentAxis};return h&&"number"==typeof o&&(n="end"===h?-1*o:o),i?{x:n*k,y:m*j}:{x:m*j,y:n*k}}function ct(a){return function(a){return!1}(a)?(a.nodeName||"").toLowerCase():"#document"}function cu(a){var b;return(null==a||null==(b=a.ownerDocument)?void 0:b.defaultView)||window}function cv(a){var b;return null==(b=(function(a){return!1}(a)?a.ownerDocument:a.document)||window.document)?void 0:b.documentElement}function cw(a){return!1}function cx(a){let{overflow:b,overflowX:c,overflowY:d,display:e}=cF(a);return/auto|scroll|overlay|hidden|clip/.test(b+d+c)&&"inline"!==e&&"contents"!==e}function cy(a){try{if(a.matches(":popover-open"))return!0}catch(a){}try{return a.matches(":modal")}catch(a){return!1}}let cz=/transform|translate|scale|rotate|perspective|filter/,cA=/paint|layout|strict|content/,cB=a=>!!a&&"none"!==a;function cC(a){let b=a;return cB(b.transform)||cB(b.translate)||cB(b.scale)||cB(b.rotate)||cB(b.perspective)||!cD()&&(cB(b.backdropFilter)||cB(b.filter))||cz.test(b.willChange||"")||cA.test(b.contain||"")}function cD(){return null==b&&(b="u">typeof CSS&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),b}function cE(a){return/^(html|body|#document)$/.test(ct(a))}function cF(a){return cu(a).getComputedStyle(a)}function cG(a){return{scrollLeft:a.scrollX,scrollTop:a.scrollY}}function cH(a){if("html"===ct(a))return a;let b=a.assignedSlot||a.parentNode||!1||cv(a);return b}function cI(a,b,c){var d;void 0===b&&(b=[]),void 0===c&&(c=!0);let e=function a(b){let c=cH(b);return cE(c)?b.ownerDocument?b.ownerDocument.body:b.body:a(c)}(a),f=e===(null==(d=a.ownerDocument)?void 0:d.body),g=cu(e);if(!f)return b.concat(e,cI(e,[],c));{let a=cJ(g);return b.concat(g,g.visualViewport||[],cx(e)?e:[],a&&c?cI(a):[])}}function cJ(a){return a.parent&&Object.getPrototypeOf(a.parent)?a.frameElement:null}function cK(a){let b=cF(a),c=parseFloat(b.width)||0,d=parseFloat(b.height)||0,e=!1,f=e?a.offsetWidth:c,g=e?a.offsetHeight:d,h=b4(c)!==f||b4(d)!==g;return h&&(c=f,d=g),{width:c,height:d,$:h}}function cL(a){return 0,a.contextElement}function cM(a){let b=cL(a);1;return b6(1)}let cN=b6(0);function cO(a){let b=cu(a);return cD()&&b.visualViewport?{x:b.visualViewport.offsetLeft,y:b.visualViewport.offsetTop}:cN}function cP(a,b,c,d){var e;void 0===b&&(b=!1),void 0===c&&(c=!1);let f=a.getBoundingClientRect(),g=cL(a),h=b6(1);b&&(d||(h=cM(a)));let i=(void 0===(e=c)&&(e=!1),d&&(!e||d===cu(g))&&e)?cO(g):b6(0),j=(f.left+i.x)/h.x,k=(f.top+i.y)/h.y,l=f.width/h.x,m=f.height/h.y;if(g){let a=cu(g),b=d,c=a,e=cJ(c);for(;e&&d&&b!==c;){let a=cM(e),b=e.getBoundingClientRect(),d=cF(e),f=b.left+(e.clientLeft+parseFloat(d.paddingLeft))*a.x,g=b.top+(e.clientTop+parseFloat(d.paddingTop))*a.y;j*=a.x,k*=a.y,l*=a.x,m*=a.y,j+=f,k+=g,e=cJ(c=cu(e))}}return cl({width:l,height:m,x:j,y:k})}function cQ(a,b){let c=cG(a).scrollLeft;return b?b.left+c:cP(cv(a)).left+c}function cR(a,b){let c=a.getBoundingClientRect();return{x:c.left+b.scrollLeft-cQ(a,c),y:c.top+b.scrollTop}}function cS(a,b,c){var d;let e;if("viewport"===b)e=function(a,b){let c=cu(a),d=cv(a),e=c.visualViewport,f=d.clientWidth,g=d.clientHeight,h=0,i=0;if(e){f=e.width,g=e.height;let a=cD();(!a||a&&"fixed"===b)&&(h=e.offsetLeft,i=e.offsetTop)}let j=cQ(d);if(j<=0){let a=d.ownerDocument,b=a.body,c=getComputedStyle(b),e="CSS1Compat"===a.compatMode&&parseFloat(c.marginLeft)+parseFloat(c.marginRight)||0,g=Math.abs(d.clientWidth-b.clientWidth-e);g<=25&&(f-=g)}else j<=25&&(f+=j);return{width:f,height:g,x:h,y:i}}(a,c);else if("document"===b){let b,c,f,g,h,i,j;d=cv(a),b=cv(d),c=cG(d),f=d.ownerDocument.body,g=b3(b.scrollWidth,b.clientWidth,f.scrollWidth,f.clientWidth),h=b3(b.scrollHeight,b.clientHeight,f.scrollHeight,f.clientHeight),i=-c.scrollLeft+cQ(d),j=-c.scrollTop,"rtl"===cF(f).direction&&(i+=b3(b.clientWidth,f.clientWidth)-g),e={width:g,height:h,x:i,y:j}}else{1;{let c=cO(a);e={x:b.x-c.x,y:b.y-c.y,width:b.width,height:b.height}}}return cl(e)}function cT(a){return"static"===cF(a).position}function cU(a,b){1;return null}function cV(a,b){var c;let d=cu(a);if(cy(a))return d;1;{let b=cH(a);for(;b&&!cE(b);){0;b=cH(b)}return d}}let cW=async function(a){let b=this.getOffsetParent||cV,c=this.getDimensions,d=await c(a.floating);return{reference:function(a,b,c){var d;let e=(d=0,!1),f=cv(b),g="fixed"===c,h=cP(a,!0,g,b),i={scrollLeft:0,scrollTop:0},j=b6(0);if(e||!e&&!g)if(("body"!==ct(b)||cx(f))&&(i=cG(b)),e){let a=cP(b,!0,g,b);j.x=a.x+b.clientLeft,j.y=a.y+b.clientTop}else f&&(j.x=cQ(f));g&&!e&&f&&(j.x=cQ(f));let k=!f||e||g?b6(0):cR(f,i);return{x:h.left+i.scrollLeft-j.x-k.x,y:h.top+i.scrollTop-j.y-k.y,width:h.width,height:h.height}}(a.reference,await b(a.floating),a.strategy),floating:{x:0,y:0,width:d.width,height:d.height}}},cX={convertOffsetParentRelativeRectToViewportRelativeRect:function(a){var b;let{elements:c,rect:d,offsetParent:e,strategy:f}=a,g="fixed"===f,h=cv(e),i=!!c&&cy(c.floating);if(e===h||i&&g)return d;let j={scrollLeft:0,scrollTop:0},k=b6(1),l=b6(0),m=(b=0,!1);if((m||!m&&!g)&&(("body"!==ct(e)||cx(h))&&(j=cG(e)),m)){let a=cP(e);k=cM(e),l.x=a.x+e.clientLeft,l.y=a.y+e.clientTop}let n=!h||m||g?b6(0):cR(h,j);return{width:d.width*k.x,height:d.height*k.y,x:d.x*k.x-j.scrollLeft*k.x+l.x+n.x,y:d.y*k.y-j.scrollTop*k.y+l.y+n.y}},getDocumentElement:cv,getClippingRect:function(a){let{element:b,boundary:c,rootBoundary:d,strategy:e}=a,f=[..."clippingAncestors"===c?cy(b)?[]:function(a,b){var c;let d=b.get(a);if(d)return d;let e=cI(a,[],!1).filter(a=>{var b;return b=0,!1}),f="fixed"===cF(a).position,g=f?cH(a):a;return c=0,b.set(a,e),e}(b,this._c):[].concat(c),d],g=cS(b,f[0],e),h=g.top,i=g.right,j=g.bottom,k=g.left;for(let a=1;a<f.length;a++){let c=cS(b,f[a],e);h=b3(c.top,h),i=b2(c.right,i),j=b2(c.bottom,j),k=b3(c.left,k)}return{width:i-k,height:j-h,x:k,y:h}},getOffsetParent:cV,getElementRects:cW,getClientRects:function(a){return Array.from(a.getClientRects())},getDimensions:function(a){let{width:b,height:c}=cK(a);return{width:b,height:c}},getScale:cM,isElement:cw,isRTL:function(a){return"rtl"===cF(a).direction}};function cY(a,b){return a.x===b.x&&a.y===b.y&&a.width===b.width&&a.height===b.height}let cZ=a=>({name:"arrow",options:a,async fn(b){let{x:c,y:d,placement:e,rects:f,platform:g,elements:h,middlewareData:i}=b,{element:j,padding:k=0}=b8(a,b)||{};if(null==j)return{};let l=ck(k),m={x:c,y:d},n=cb(cd(e)),o=cc(n),p=await g.getDimensions(j),q="y"===n,r=q?"clientHeight":"clientWidth",s=f.reference[o]+f.reference[n]-m[n]-f.floating[o],t=m[n]-f.reference[n],u=await (null==g.getOffsetParent?void 0:g.getOffsetParent(j)),v=u?u[r]:0;v&&await (null==g.isElement?void 0:g.isElement(u))||(v=h.floating[r]||f.floating[o]);let w=v/2-p[o]/2-1,x=b2(l[q?"top":"left"],w),y=b2(l[q?"bottom":"right"],w),z=v-p[o]-y,A=v/2-p[o]/2+(s/2-t/2),B=b3(x,b2(A,z)),C=!i.arrow&&null!=ca(e)&&A!==B&&f.reference[o]/2-(A<x?x:y)-p[o]/2<0,D=C?A<x?A-x:A-z:0;return{[n]:m[n]+D,data:{[n]:B,centerOffset:A-B-D,...C&&{alignmentOffset:D}},reset:C}}});var c$="u">typeof document?n.useLayoutEffect:function(){};function c_(a,b){let c,d,e;if(a===b)return!0;if(typeof a!=typeof b)return!1;if("function"==typeof a&&a.toString()===b.toString())return!0;if(a&&b&&"object"==typeof a){if(Array.isArray(a)){if((c=a.length)!==b.length)return!1;for(d=c;0!=d--;)if(!c_(a[d],b[d]))return!1;return!0}if((c=(e=Object.keys(a)).length)!==Object.keys(b).length)return!1;for(d=c;0!=d--;)if(!({}).hasOwnProperty.call(b,e[d]))return!1;for(d=c;0!=d--;){let c=e[d];if(("_owner"!==c||!a.$$typeof)&&!c_(a[c],b[c]))return!1}return!0}return a!=a&&b!=b}function c0(a,b){let c=1;return Math.round(b*c)/c}function c1(a){let b=n.useRef(a);return c$(()=>{b.current=a}),b}var c2=n.forwardRef((a,b)=>{let{children:c,width:d=10,height:e=5,...f}=a;return(0,m.jsx)(bH.svg,{...f,ref:b,width:d,height:e,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:a.asChild?c:(0,m.jsx)("polygon",{points:"0,0 30,0 15,10"})})});c2.displayName="Arrow";var c3="Popper",[c4,c5]=bw(c3),[c6,c7]=c4(c3),c8=a=>{let{__scopePopper:b,children:c}=a,[d,e]=n.useState(null);return(0,m.jsx)(c6,{scope:b,anchor:d,onAnchorChange:e,children:c})};c8.displayName=c3;var c9="PopperAnchor",da=n.forwardRef((a,b)=>{let{__scopePopper:c,virtualRef:d,...e}=a,f=c7(c9,c),g=n.useRef(null),h=bz(b,g),i=n.useRef(null);return n.useEffect(()=>{let a=i.current;i.current=d?.current||g.current,a!==i.current&&f.onAnchorChange(i.current)}),d?null:(0,m.jsx)(bH.div,{...e,ref:h})});da.displayName=c9;var db="PopperContent",[dc,dd]=c4(db),de=n.forwardRef((a,b)=>{var c,d,e,f,g,h,i,j,k,l,o,p,q,r,s,t,u,v,w,x,y;let z,A,B,C,D,E,{__scopePopper:F,side:G="bottom",sideOffset:H=0,align:I="center",alignOffset:J=0,arrowPadding:K=0,avoidCollisions:L=!0,collisionBoundary:M=[],collisionPadding:N=0,sticky:O="partial",hideWhenDetached:P=!1,updatePositionStrategy:Q="optimized",onPlaced:R,...S}=a,T=c7(db,F),[U,V]=n.useState(null),W=bz(b,a=>V(a)),[X,Y]=n.useState(null),Z=function(a){let[b,c]=n.useState(void 0);return bZ(()=>{if(a){c({width:a.offsetWidth,height:a.offsetHeight});let b=new ResizeObserver(b=>{let d,e;if(!Array.isArray(b)||!b.length)return;let f=b[0];if("borderBoxSize"in f){let a=f.borderBoxSize,b=Array.isArray(a)?a[0]:a;d=b.inlineSize,e=b.blockSize}else d=a.offsetWidth,e=a.offsetHeight;c({width:d,height:e})});return b.observe(a,{box:"border-box"}),()=>b.unobserve(a)}c(void 0)},[a]),b}(X),$=Z?.width??0,_=Z?.height??0,aa="number"==typeof N?N:{top:0,right:0,bottom:0,left:0,...N},ab=Array.isArray(M)?M:[M],ac=ab.length>0,ad={padding:aa,boundary:ab.filter(di),altBoundary:ac},{refs:ae,floatingStyles:af,placement:ag,isPositioned:ah,middlewareData:ai}=function(a){void 0===a&&(a={});let{placement:b="bottom",strategy:c="absolute",middleware:d=[],platform:e,elements:{reference:f,floating:g}={},transform:h=!0,whileElementsMounted:i,open:j}=a,[k,l]=n.useState({x:0,y:0,strategy:c,placement:b,middlewareData:{},isPositioned:!1}),[m,o]=n.useState(d);c_(m,d)||o(d);let[p,q]=n.useState(null),[r,s]=n.useState(null),t=n.useCallback(a=>{a!==x.current&&(x.current=a,q(a))},[]),u=n.useCallback(a=>{a!==y.current&&(y.current=a,s(a))},[]),v=f||p,w=g||r,x=n.useRef(null),y=n.useRef(null),z=n.useRef(k),A=null!=i,B=c1(i),C=c1(e),D=c1(j),E=n.useCallback(()=>{var a,d;let e,f,g;if(!x.current||!y.current)return;let h={placement:b,strategy:c,middleware:m};C.current&&(h.platform=C.current),(a=x.current,d=y.current,e=new Map,g={...(f={platform:cX,...h}).platform,_c:e},co(a,d,{...f,platform:g})).then(a=>{let b={...a,isPositioned:!1!==D.current};F.current&&!c_(z.current,b)&&(z.current=b,bt.flushSync(()=>{l(b)}))})},[m,b,c,C,D]);c$(()=>{!1===j&&z.current.isPositioned&&(z.current.isPositioned=!1,l(a=>({...a,isPositioned:!1})))},[j]);let F=n.useRef(!1);c$(()=>(F.current=!0,()=>{F.current=!1}),[]),c$(()=>{if(v&&(x.current=v),w&&(y.current=w),v&&w){if(B.current)return B.current(v,w,E);E()}},[v,w,E,B,A]);let G=n.useMemo(()=>({reference:x,floating:y,setReference:t,setFloating:u}),[t,u]),H=n.useMemo(()=>({reference:v,floating:w}),[v,w]),I=n.useMemo(()=>{let a={position:c,left:0,top:0};if(!H.floating)return a;let b=c0(H.floating,k.x),d=c0(H.floating,k.y);if(h)return{...a,transform:"translate("+b+"px, "+d+"px)",...(H.floating,false)};return{position:c,left:b,top:d}},[c,h,H.floating,k.x,k.y]);return n.useMemo(()=>({...k,update:E,refs:G,elements:H,floatingStyles:I}),[k,E,G,H,I])}({strategy:"fixed",placement:G+("center"!==I?"-"+I:""),whileElementsMounted:(...a)=>(function(a,b,c,d){let e;void 0===d&&(d={});let{ancestorScroll:f=!0,ancestorResize:g=!0,elementResize:h="function"==typeof ResizeObserver,layoutShift:i="function"==typeof IntersectionObserver,animationFrame:j=!1}=d,k=cL(a),l=f||g?[...k?cI(k):[],...b?cI(b):[]]:[];l.forEach(a=>{f&&a.addEventListener("scroll",c,{passive:!0}),g&&a.addEventListener("resize",c)});let m=k&&i?function(a,b){let c,d=null,e=cv(a);function f(){var a;clearTimeout(c),null==(a=d)||a.disconnect(),d=null}return!function g(h,i){void 0===h&&(h=!1),void 0===i&&(i=1),f();let j=a.getBoundingClientRect(),{left:k,top:l,width:m,height:n}=j;if(h||b(),!m||!n)return;let o={rootMargin:-b5(l)+"px "+-b5(e.clientWidth-(k+m))+"px "+-b5(e.clientHeight-(l+n))+"px "+-b5(k)+"px",threshold:b3(0,b2(1,i))||1},p=!0;function q(b){let d=b[0].intersectionRatio;if(d!==i){if(!p)return g();d?g(!1,d):c=setTimeout(()=>{g(!1,1e-7)},1e3)}1!==d||cY(j,a.getBoundingClientRect())||g(),p=!1}try{d=new IntersectionObserver(q,{...o,root:e.ownerDocument})}catch(a){d=new IntersectionObserver(q,o)}d.observe(a)}(!0),f}(k,c):null,n=-1,o=null;h&&(o=new ResizeObserver(a=>{let[d]=a;d&&d.target===k&&o&&b&&(o.unobserve(b),cancelAnimationFrame(n),n=requestAnimationFrame(()=>{var a;null==(a=o)||a.observe(b)})),c()}),k&&!j&&o.observe(k),b&&o.observe(b));let p=j?cP(a):null;return j&&function b(){let d=cP(a);p&&!cY(p,d)&&c(),p=d,e=requestAnimationFrame(b)}(),c(),()=>{var a;l.forEach(a=>{f&&a.removeEventListener("scroll",c),g&&a.removeEventListener("resize",c)}),null==m||m(),null==(a=o)||a.disconnect(),o=null,j&&cancelAnimationFrame(e)}})(...a,{animationFrame:"always"===Q}),elements:{reference:T.anchor},middleware:[{name:(z={name:"offset",options:e=c={mainAxis:H+_,alignmentAxis:J},async fn(a){var b,c;let{x:d,y:f,placement:g,middlewareData:h}=a,i=await cs(a,e);return g===(null==(b=h.offset)?void 0:b.placement)&&null!=(c=h.arrow)&&c.alignmentOffset?{}:{x:d+i.x,y:f+i.y,data:{...i,placement:g}}}}).name,fn:z.fn,options:[c,d]},L&&{name:(A={name:"shift",options:k=i={mainAxis:!0,crossAxis:!1,limiter:"partial"===O?{fn:(void 0===(h=f)&&(h={}),{options:h,fn(a){let{x:b,y:c,placement:d,rects:e,middlewareData:f}=a,{offset:g=0,mainAxis:i=!0,crossAxis:j=!0}=b8(h,a),k={x:b,y:c},l=cd(d),m=cb(l),n=k[m],o=k[l],p=b8(g,a),q="number"==typeof p?{mainAxis:p,crossAxis:0}:{mainAxis:0,crossAxis:0,...p};if(i){let a="y"===m?"height":"width",b=e.reference[m]-e.floating[a]+q.mainAxis,c=e.reference[m]+e.reference[a]-q.mainAxis;n<b?n=b:n>c&&(n=c)}if(j){var r,s;let a="y"===m?"width":"height",b=cr.has(b9(d)),c=e.reference[l]-e.floating[a]+(b&&(null==(r=f.offset)?void 0:r[l])||0)+(b?0:q.crossAxis),g=e.reference[l]+e.reference[a]+(b?0:(null==(s=f.offset)?void 0:s[l])||0)-(b?q.crossAxis:0);o<c?o=c:o>g&&(o=g)}return{[m]:n,[l]:o}}}).fn,options:[f,g]}:void 0,...ad},async fn(a){let{x:b,y:c,placement:d,platform:e}=a,{mainAxis:f=!0,crossAxis:g=!1,limiter:h={fn:a=>{let{x:b,y:c}=a;return{x:b,y:c}}},...i}=b8(k,a),j={x:b,y:c},l=await e.detectOverflow(a,i),m=cd(b9(d)),n=cb(m),o=j[n],p=j[m];if(f){let a="y"===n?"top":"left",b="y"===n?"bottom":"right",c=o+l[a],d=o-l[b];o=b3(c,b2(o,d))}if(g){let a="y"===m?"top":"left",b="y"===m?"bottom":"right",c=p+l[a],d=p-l[b];p=b3(c,b2(p,d))}let q=h.fn({...a,[n]:o,[m]:p});return{...q,data:{x:q.x-b,y:q.y-c,enabled:{[n]:f,[m]:g}}}}}).name,fn:A.fn,options:[i,j]},L&&{name:(B={name:"flip",options:p=l={...ad},async fn(a){var b,c,d,e,f,g,h,i;let j,k,l,{placement:m,middlewareData:n,rects:o,initialPlacement:q,platform:r,elements:s}=a,{mainAxis:t=!0,crossAxis:u=!0,fallbackPlacements:v,fallbackStrategy:w="bestFit",fallbackAxisSideDirection:x="none",flipAlignment:y=!0,...z}=b8(p,a);if(null!=(b=n.arrow)&&b.alignmentOffset)return{};let A=b9(m),B=cd(q),C=b9(q)===q,D=await (null==r.isRTL?void 0:r.isRTL(s.floating)),E=v||(C||!y?[cj(q)]:(j=cj(q),[ce(q),j,ce(j)])),F="none"!==x;!v&&F&&E.push(...(k=ca(q),l=function(a,b,c){switch(a){case"top":case"bottom":if(c)return b?cg:cf;return b?cf:cg;case"left":case"right":return b?ch:ci;default:return[]}}(b9(q),"start"===x,D),k&&(l=l.map(a=>a+"-"+k),y&&(l=l.concat(l.map(ce)))),l));let G=[q,...E],H=await r.detectOverflow(a,z),I=[],J=(null==(c=n.flip)?void 0:c.overflows)||[];if(t&&I.push(H[A]),u){let a,b,c,d,e=(g=m,h=o,void 0===(i=D)&&(i=!1),a=ca(g),c=cc(b=cb(cd(g))),d="x"===b?a===(i?"end":"start")?"right":"left":"start"===a?"bottom":"top",h.reference[c]>h.floating[c]&&(d=cj(d)),[d,cj(d)]);I.push(H[e[0]],H[e[1]])}if(J=[...J,{placement:m,overflows:I}],!I.every(a=>a<=0)){let a=((null==(d=n.flip)?void 0:d.index)||0)+1,b=G[a];if(b&&("alignment"!==u||B===cd(b)||J.every(a=>cd(a.placement)!==B||a.overflows[0]>0)))return{data:{index:a,overflows:J},reset:{placement:b}};let c=null==(e=J.filter(a=>a.overflows[0]<=0).sort((a,b)=>a.overflows[1]-b.overflows[1])[0])?void 0:e.placement;if(!c)switch(w){case"bestFit":{let a=null==(f=J.filter(a=>{if(F){let b=cd(a.placement);return b===B||"y"===b}return!0}).map(a=>[a.placement,a.overflows.filter(a=>a>0).reduce((a,b)=>a+b,0)]).sort((a,b)=>a[1]-b[1])[0])?void 0:f[0];a&&(c=a);break}case"initialPlacement":c=q}if(m!==c)return{reset:{placement:c}}}return{}}}).name,fn:B.fn,options:[l,o]},{name:(C={name:"size",options:s=q={...ad,apply:({elements:a,rects:b,availableWidth:c,availableHeight:d})=>{let{width:e,height:f}=b.reference,g=a.floating.style;g.setProperty("--radix-popper-available-width",`${c}px`),g.setProperty("--radix-popper-available-height",`${d}px`),g.setProperty("--radix-popper-anchor-width",`${e}px`),g.setProperty("--radix-popper-anchor-height",`${f}px`)}},async fn(a){var b,c;let d,e,{placement:f,rects:g,platform:h,elements:i}=a,{apply:j=()=>{},...k}=b8(s,a),l=await h.detectOverflow(a,k),m=b9(f),n=ca(f),o="y"===cd(f),{width:p,height:q}=g.floating;"top"===m||"bottom"===m?(d=m,e=n===(await (null==h.isRTL?void 0:h.isRTL(i.floating))?"start":"end")?"left":"right"):(e=m,d="end"===n?"top":"bottom");let r=q-l.top-l.bottom,t=p-l.left-l.right,u=b2(q-l[d],r),v=b2(p-l[e],t),w=!a.middlewareData.shift,x=u,y=v;if(null!=(b=a.middlewareData.shift)&&b.enabled.x&&(y=t),null!=(c=a.middlewareData.shift)&&c.enabled.y&&(x=r),w&&!n){let a=b3(l.left,0),b=b3(l.right,0),c=b3(l.top,0),d=b3(l.bottom,0);o?y=p-2*(0!==a||0!==b?a+b:b3(l.left,l.right)):x=q-2*(0!==c||0!==d?c+d:b3(l.top,l.bottom))}await j({...a,availableWidth:y,availableHeight:x});let z=await h.getDimensions(i.floating);return p!==z.width||q!==z.height?{reset:{rects:!0}}:{}}}).name,fn:C.fn,options:[q,r]},X&&{name:(D={name:"arrow",options:v=t={element:X,padding:K},fn(a){let{element:b,padding:c}="function"==typeof v?v(a):v;return b&&({}).hasOwnProperty.call(b,"current")?null!=b.current?cZ({element:b.current,padding:c}).fn(a):{}:b?cZ({element:b,padding:c}).fn(a):{}}}).name,fn:D.fn,options:[t,u]},dj({arrowWidth:$,arrowHeight:_}),P&&{name:(E={name:"hide",options:y=w={strategy:"referenceHidden",...ad},async fn(a){let{rects:b,platform:c}=a,{strategy:d="referenceHidden",...e}=b8(y,a);switch(d){case"referenceHidden":{let d=cp(await c.detectOverflow(a,{...e,elementContext:"reference"}),b.reference);return{data:{referenceHiddenOffsets:d,referenceHidden:cq(d)}}}case"escaped":{let d=cp(await c.detectOverflow(a,{...e,altBoundary:!0}),b.floating);return{data:{escapedOffsets:d,escaped:cq(d)}}}default:return{}}}}).name,fn:E.fn,options:[w,x]}]}),[aj,ak]=dk(ag),al=bI(R);bZ(()=>{ah&&al?.()},[ah,al]);let am=ai.arrow?.x,an=ai.arrow?.y,ao=ai.arrow?.centerOffset!==0,[ap,aq]=n.useState();return bZ(()=>{U&&aq(window.getComputedStyle(U).zIndex)},[U]),(0,m.jsx)("div",{ref:ae.setFloating,"data-radix-popper-content-wrapper":"",style:{...af,transform:ah?af.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ap,"--radix-popper-transform-origin":[ai.transformOrigin?.x,ai.transformOrigin?.y].join(" "),...ai.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:a.dir,children:(0,m.jsx)(dc,{scope:F,placedSide:aj,onArrowChange:Y,arrowX:am,arrowY:an,shouldHideArrow:ao,children:(0,m.jsx)(bH.div,{"data-side":aj,"data-align":ak,...S,ref:W,style:{...S.style,animation:ah?void 0:"none"}})})})});de.displayName=db;var df="PopperArrow",dg={top:"bottom",right:"left",bottom:"top",left:"right"},dh=n.forwardRef(function(a,b){let{__scopePopper:c,...d}=a,e=dd(df,c),f=dg[e.placedSide];return(0,m.jsx)("span",{ref:e.onArrowChange,style:{position:"absolute",left:e.arrowX,top:e.arrowY,[f]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[e.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[e.placedSide],visibility:e.shouldHideArrow?"hidden":void 0},children:(0,m.jsx)(c2,{...d,ref:b,style:{...d.style,display:"block"}})})});function di(a){return null!==a}dh.displayName=df;var dj=a=>({name:"transformOrigin",options:a,fn(b){let{placement:c,rects:d,middlewareData:e}=b,f=e.arrow?.centerOffset!==0,g=f?0:a.arrowWidth,h=f?0:a.arrowHeight,[i,j]=dk(c),k={start:"0%",center:"50%",end:"100%"}[j],l=(e.arrow?.x??0)+g/2,m=(e.arrow?.y??0)+h/2,n="",o="";return"bottom"===i?(n=f?k:`${l}px`,o=`${-h}px`):"top"===i?(n=f?k:`${l}px`,o=`${d.floating.height+h}px`):"right"===i?(n=`${-h}px`,o=f?k:`${m}px`):"left"===i&&(n=`${d.floating.width+h}px`,o=f?k:`${m}px`),{data:{x:n,y:o}}}});function dk(a){let[b,c="center"]=a.split("-");return[b,c]}var dl=n.forwardRef((a,b)=>{let{container:c,...d}=a,[e,f]=n.useState(!1);bZ(()=>f(!0),[]);let g=c||e&&globalThis?.document?.body;return g?bt.default.createPortal((0,m.jsx)(bH.div,{...d,ref:b}),g):null});dl.displayName="Portal",n[" useEffectEvent ".trim().toString()],n[" useInsertionEffect ".trim().toString()];var dm=n[" useInsertionEffect ".trim().toString()]||bZ;function dn({prop:a,defaultProp:b,onChange:c=()=>{},caller:d}){let[e,f,g]=function({defaultProp:a,onChange:b}){let[c,d]=n.useState(a),e=n.useRef(c),f=n.useRef(b);return dm(()=>{f.current=b},[b]),n.useEffect(()=>{e.current!==c&&(f.current?.(c),e.current=c)},[c,e]),[c,d,f]}({defaultProp:b,onChange:c}),h=void 0!==a,i=h?a:e;{let b=n.useRef(void 0!==a);n.useEffect(()=>{let a=b.current;if(a!==h){let b=h?"controlled":"uncontrolled";console.warn(`${d} is changing from ${a?"controlled":"uncontrolled"} to ${b}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}b.current=h},[h,d])}return[i,n.useCallback(b=>{if(h){let c="function"==typeof b?b(a):b;c!==a&&g.current?.(c)}else f(b)},[h,a,f,g])]}Symbol("RADIX:SYNC_STATE");var dp=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"});n.forwardRef((a,b)=>(0,m.jsx)(bH.span,{...a,ref:b,style:{...dp,...a.style}})).displayName="VisuallyHidden";var dq=new WeakMap,dr=new WeakMap,ds={},dt=0,du=function(a){return a&&(a.host||du(a.parentNode))},dv=function(a,b,c,d){var e=(Array.isArray(a)?a:[a]).map(function(a){if(b.contains(a))return a;var c=du(a);return c&&b.contains(c)?c:(console.error("aria-hidden",a,"in not contained inside",b,". Doing nothing"),null)}).filter(function(a){return!!a});ds[c]||(ds[c]=new WeakMap);var f=ds[c],g=[],h=new Set,i=new Set(e),j=function(a){!a||h.has(a)||(h.add(a),j(a.parentNode))};e.forEach(j);var k=function(a){!a||i.has(a)||Array.prototype.forEach.call(a.children,function(a){if(h.has(a))k(a);else try{var b=a.getAttribute(d),e=null!==b&&"false"!==b,i=(dq.get(a)||0)+1,j=(f.get(a)||0)+1;dq.set(a,i),f.set(a,j),g.push(a),1===i&&e&&dr.set(a,!0),1===j&&a.setAttribute(c,"true"),e||a.setAttribute(d,"true")}catch(b){console.error("aria-hidden: cannot operate on ",a,b)}})};return k(b),h.clear(),dt++,function(){g.forEach(function(a){var b=dq.get(a)-1,e=f.get(a)-1;dq.set(a,b),f.set(a,e),b||(dr.has(a)||a.removeAttribute(d),dr.delete(a)),e||a.removeAttribute(c)}),--dt||(dq=new WeakMap,dq=new WeakMap,dr=new WeakMap,ds={})}},dw=function(a,b,c){void 0===c&&(c="data-aria-hidden");var d=Array.from(Array.isArray(a)?a:[a]),e=b||("u"<typeof document?null:(Array.isArray(a)?a[0]:a).ownerDocument.body);return e?(d.push.apply(d,Array.from(e.querySelectorAll("[aria-live], script"))),dv(d,e,c,"aria-hidden")):function(){return null}},dx=function(){return(dx=Object.assign||function(a){for(var b,c=1,d=arguments.length;c<d;c++)for(var e in b=arguments[c])Object.prototype.hasOwnProperty.call(b,e)&&(a[e]=b[e]);return a}).apply(this,arguments)};function dy(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c}var dz=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),dA="width-before-scroll-bar";function dB(a,b){return"function"==typeof a?a(b):a&&(a.current=b),a}var dC=n.useEffect,dD=new WeakMap,dE=(void 0===e&&(e={}),(void 0===f&&(f=function(a){return a}),g=[],h=!1,i={read:function(){if(h)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return g.length?g[g.length-1]:null},useMedium:function(a){var b=f(a,h);return g.push(b),function(){g=g.filter(function(a){return a!==b})}},assignSyncMedium:function(a){for(h=!0;g.length;){var b=g;g=[],b.forEach(a)}g={push:function(b){return a(b)},filter:function(){return g}}},assignMedium:function(a){h=!0;var b=[];if(g.length){var c=g;g=[],c.forEach(a),b=g}var d=function(){var c=b;b=[],c.forEach(a)},e=function(){return Promise.resolve().then(d)};e(),g={push:function(a){b.push(a),e()},filter:function(a){return b=b.filter(a),g}}}}).options=dx({async:!0,ssr:!1},e),i),dF=function(){},dG=n.forwardRef(function(a,b){var c,d,e,f,g=n.useRef(null),h=n.useState({onScrollCapture:dF,onWheelCapture:dF,onTouchMoveCapture:dF}),i=h[0],j=h[1],k=a.forwardProps,l=a.children,m=a.className,o=a.removeScrollBar,p=a.enabled,q=a.shards,r=a.sideCar,s=a.noRelative,t=a.noIsolation,u=a.inert,v=a.allowPinchZoom,w=a.as,x=a.gapMode,y=dy(a,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),z=(c=[g,b],d=function(a){return c.forEach(function(b){return dB(b,a)})},(e=(0,n.useState)(function(){return{value:null,callback:d,facade:{get current(){return e.value},set current(value){var a=e.value;a!==value&&(e.value=value,e.callback(value,a))}}}})[0]).callback=d,f=e.facade,dC(function(){var a=dD.get(f);if(a){var b=new Set(a),d=new Set(c),e=f.current;b.forEach(function(a){d.has(a)||dB(a,null)}),d.forEach(function(a){b.has(a)||dB(a,e)})}dD.set(f,c)},[c]),f),A=dx(dx({},y),i);return n.createElement(n.Fragment,null,p&&n.createElement(r,{sideCar:dE,removeScrollBar:o,shards:q,noRelative:s,noIsolation:t,inert:u,setCallbacks:j,allowPinchZoom:!!v,lockRef:g,gapMode:x}),k?n.cloneElement(n.Children.only(l),dx(dx({},A),{ref:z})):n.createElement(void 0===w?"div":w,dx({},A,{className:m,ref:z}),l))});dG.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},dG.classNames={fullWidth:dA,zeroRight:dz};var dH=function(a){var b=a.sideCar,c=dy(a,["sideCar"]);if(!b)throw Error("Sidecar: please provide `sideCar` property to import the right car");var d=b.read();if(!d)throw Error("Sidecar medium not found");return n.createElement(d,dx({},c))};dH.isSideCarExport=!0;var dI=function(){var a=0,b=null;return{add:function(c){if(0==a&&(b=function(){if(!document)return null;var a=document.createElement("style");a.type="text/css";var b=l||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return b&&a.setAttribute("nonce",b),a}())){var d,e;(d=b).styleSheet?d.styleSheet.cssText=c:d.appendChild(document.createTextNode(c)),e=b,(document.head||document.getElementsByTagName("head")[0]).appendChild(e)}a++},remove:function(){--a||!b||(b.parentNode&&b.parentNode.removeChild(b),b=null)}}},dJ=function(){var a=dI();return function(b,c){n.useEffect(function(){return a.add(b),function(){a.remove()}},[b&&c])}},dK=function(){var a=dJ();return function(b){return a(b.styles,b.dynamic),null}},dL={left:0,top:0,right:0,gap:0},dM=dK(),dN="data-scroll-locked",dO=function(a,b,c,d){var e=a.left,f=a.top,g=a.right,h=a.gap;return void 0===c&&(c="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(d,";\n padding-right: ").concat(h,"px ").concat(d,";\n }\n body[").concat(dN,"] {\n overflow: hidden ").concat(d,";\n overscroll-behavior: contain;\n ").concat([b&&"position: relative ".concat(d,";"),"margin"===c&&"\n padding-left: ".concat(e,"px;\n padding-top: ").concat(f,"px;\n padding-right: ").concat(g,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(h,"px ").concat(d,";\n "),"padding"===c&&"padding-right: ".concat(h,"px ").concat(d,";")].filter(Boolean).join(""),"\n }\n \n .").concat(dz," {\n right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(dA," {\n margin-right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(dz," .").concat(dz," {\n right: 0 ").concat(d,";\n }\n \n .").concat(dA," .").concat(dA," {\n margin-right: 0 ").concat(d,";\n }\n \n body[").concat(dN,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(h,"px;\n }\n")},dP=function(){var a=parseInt(document.body.getAttribute(dN)||"0",10);return isFinite(a)?a:0},dQ=function(){n.useEffect(function(){return document.body.setAttribute(dN,(dP()+1).toString()),function(){var a=dP()-1;a<=0?document.body.removeAttribute(dN):document.body.setAttribute(dN,a.toString())}},[])},dR=function(a){var b=a.noRelative,c=a.noImportant,d=a.gapMode,e=void 0===d?"margin":d;dQ();var f=n.useMemo(function(){return void 0===e,dL},[e]);return n.createElement(dM,{styles:dO(f,!b,e,c?"":"!important")})},dS=function(a,b){if(!(a instanceof Element))return!1;var c=window.getComputedStyle(a);return"hidden"!==c[b]&&(c.overflowY!==c.overflowX||"TEXTAREA"===a.tagName||"visible"!==c[b])},dT=function(a,b){var c=b.ownerDocument,d=b;do{if("u">typeof ShadowRoot&&d instanceof ShadowRoot&&(d=d.host),dU(a,d)){var e=dV(a,d);if(e[1]>e[2])return!0}d=d.parentNode}while(d&&d!==c.body)return!1},dU=function(a,b){return"v"===a?dS(b,"overflowY"):dS(b,"overflowX")},dV=function(a,b){return"v"===a?[b.scrollTop,b.scrollHeight,b.clientHeight]:[b.scrollLeft,b.scrollWidth,b.clientWidth]},dW=function(a,b,c,d,e){var f,g=(f=window.getComputedStyle(b).direction,"h"===a&&"rtl"===f?-1:1),h=g*d,i=c.target,j=b.contains(i),k=!1,l=h>0,m=0,n=0;do{if(!i)break;var o=dV(a,i),p=o[0],q=o[1]-o[2]-g*p;(p||q)&&dU(a,i)&&(m+=q,n+=p);var r=i.parentNode;i=r&&r.nodeType===Node.DOCUMENT_FRAGMENT_NODE?r.host:r}while(!j&&i!==document.body||j&&(b.contains(i)||b===i))return l&&(e&&1>Math.abs(m)||!e&&h>m)?k=!0:!l&&(e&&1>Math.abs(n)||!e&&-h>n)&&(k=!0),k},dX=function(a){return"changedTouches"in a?[a.changedTouches[0].clientX,a.changedTouches[0].clientY]:[0,0]},dY=function(a){return[a.deltaX,a.deltaY]},dZ=function(a){return a&&"current"in a?a.current:a},d$=0,d_=[];let d0=(j=function(a){var b=n.useRef([]),c=n.useRef([0,0]),d=n.useRef(),e=n.useState(d$++)[0],f=n.useState(dK)[0],g=n.useRef(a);n.useEffect(function(){g.current=a},[a]),n.useEffect(function(){if(a.inert){document.body.classList.add("block-interactivity-".concat(e));var b=(function(a,b,c){if(c||2==arguments.length)for(var d,e=0,f=b.length;e<f;e++)!d&&e in b||(d||(d=Array.prototype.slice.call(b,0,e)),d[e]=b[e]);return a.concat(d||Array.prototype.slice.call(b))})([a.lockRef.current],(a.shards||[]).map(dZ),!0).filter(Boolean);return b.forEach(function(a){return a.classList.add("allow-interactivity-".concat(e))}),function(){document.body.classList.remove("block-interactivity-".concat(e)),b.forEach(function(a){return a.classList.remove("allow-interactivity-".concat(e))})}}},[a.inert,a.lockRef.current,a.shards]);var h=n.useCallback(function(a,b){if("touches"in a&&2===a.touches.length||"wheel"===a.type&&a.ctrlKey)return!g.current.allowPinchZoom;var e,f=dX(a),h=c.current,i="deltaX"in a?a.deltaX:h[0]-f[0],j="deltaY"in a?a.deltaY:h[1]-f[1],k=a.target,l=Math.abs(i)>Math.abs(j)?"h":"v";if("touches"in a&&"h"===l&&"range"===k.type)return!1;var m=window.getSelection(),n=m&&m.anchorNode;if(n&&(n===k||n.contains(k)))return!1;var o=dT(l,k);if(!o)return!0;if(o?e=l:(e="v"===l?"h":"v",o=dT(l,k)),!o)return!1;if(!d.current&&"changedTouches"in a&&(i||j)&&(d.current=e),!e)return!0;var p=d.current||e;return dW(p,b,a,"h"===p?i:j,!0)},[]),i=n.useCallback(function(a){if(d_.length&&d_[d_.length-1]===f){var c="deltaY"in a?dY(a):dX(a),d=b.current.filter(function(b){var d;return b.name===a.type&&(b.target===a.target||a.target===b.shadowParent)&&(d=b.delta,d[0]===c[0]&&d[1]===c[1])})[0];if(d&&d.should){a.cancelable&&a.preventDefault();return}if(!d){var e=(g.current.shards||[]).map(dZ).filter(Boolean).filter(function(b){return b.contains(a.target)});(e.length>0?h(a,e[0]):!g.current.noIsolation)&&a.cancelable&&a.preventDefault()}}},[]),j=n.useCallback(function(a,c,d,e){var f={name:a,delta:c,target:d,should:e,shadowParent:function(a){for(var b=null;null!==a;)a instanceof ShadowRoot&&(b=a.host,a=a.host),a=a.parentNode;return b}(d)};b.current.push(f),setTimeout(function(){b.current=b.current.filter(function(a){return a!==f})},1)},[]),k=n.useCallback(function(a){c.current=dX(a),d.current=void 0},[]),l=n.useCallback(function(b){j(b.type,dY(b),b.target,h(b,a.lockRef.current))},[]),m=n.useCallback(function(b){j(b.type,dX(b),b.target,h(b,a.lockRef.current))},[]);n.useEffect(function(){return d_.push(f),a.setCallbacks({onScrollCapture:l,onWheelCapture:l,onTouchMoveCapture:m}),document.addEventListener("wheel",i,!1),document.addEventListener("touchmove",i,!1),document.addEventListener("touchstart",k,!1),function(){d_=d_.filter(function(a){return a!==f}),document.removeEventListener("wheel",i,!1),document.removeEventListener("touchmove",i,!1),document.removeEventListener("touchstart",k,!1)}},[]);var o=a.removeScrollBar,p=a.inert;return n.createElement(n.Fragment,null,p?n.createElement(f,{styles:"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")}):null,o?n.createElement(dR,{noRelative:a.noRelative,gapMode:a.gapMode}):null)},dE.useMedium(j),dH);var d1=n.forwardRef(function(a,b){return n.createElement(dG,dx({},a,{ref:b,sideCar:d0}))});d1.classNames=dG.classNames;var d2=[" ","Enter","ArrowUp","ArrowDown"],d3=[" ","Enter"],d4="Select",[d5,d6,d7]=function(a){let b=a+"CollectionProvider",[c,d]=bw(b),[e,f]=c(b,{collectionRef:{current:null},itemMap:new Map}),g=a=>{let{scope:b,children:c}=a,d=n.default.useRef(null),f=n.default.useRef(new Map).current;return(0,m.jsx)(e,{scope:b,itemMap:f,collectionRef:d,children:c})};g.displayName=b;let h=a+"CollectionSlot",i=bA(h),j=n.default.forwardRef((a,b)=>{let{scope:c,children:d}=a,e=bz(b,f(h,c).collectionRef);return(0,m.jsx)(i,{ref:e,children:d})});j.displayName=h;let k=a+"CollectionItemSlot",l="data-radix-collection-item",o=bA(k),p=n.default.forwardRef((a,b)=>{let{scope:c,children:d,...e}=a,g=n.default.useRef(null),h=bz(b,g),i=f(k,c);return n.default.useEffect(()=>(i.itemMap.set(g,{ref:g,...e}),()=>void i.itemMap.delete(g))),(0,m.jsx)(o,{...{[l]:""},ref:h,children:d})});return p.displayName=k,[{Provider:g,Slot:j,ItemSlot:p},function(b){let c=f(a+"CollectionConsumer",b);return n.default.useCallback(()=>{let a=c.collectionRef.current;if(!a)return[];let b=Array.from(a.querySelectorAll(`[${l}]`));return Array.from(c.itemMap.values()).sort((a,c)=>b.indexOf(a.ref.current)-b.indexOf(c.ref.current))},[c.collectionRef,c.itemMap])},d]}(d4),[d8,d9]=bw(d4,[d7,c5]),ea=c5(),[eb,ec]=d8(d4),[ed,ee]=d8(d4),ef=a=>{let b,{__scopeSelect:c,children:d,open:e,defaultOpen:f,onOpenChange:g,value:h,defaultValue:i,onValueChange:j,dir:k,name:l,autoComplete:o,disabled:p,required:q,form:r}=a,s=ea(c),[t,u]=n.useState(null),[v,w]=n.useState(null),[x,y]=n.useState(!1),z=(b=n.useContext(bG),k||b||"ltr"),[A,B]=dn({prop:e,defaultProp:f??!1,onChange:g,caller:d4}),[C,D]=dn({prop:h,defaultProp:i,onChange:j,caller:d4}),E=n.useRef(null),F=!t||r||!!t.closest("form"),[G,H]=n.useState(new Set),I=Array.from(G).map(a=>a.props.value).join(";");return(0,m.jsx)(c8,{...s,children:(0,m.jsxs)(eb,{required:q,scope:c,trigger:t,onTriggerChange:u,valueNode:v,onValueNodeChange:w,valueNodeHasChildren:x,onValueNodeHasChildrenChange:y,contentId:b0(),value:C,onValueChange:D,open:A,onOpenChange:B,dir:z,triggerPointerDownPosRef:E,disabled:p,children:[(0,m.jsx)(d5.Provider,{scope:c,children:(0,m.jsx)(ed,{scope:a.__scopeSelect,onNativeOptionAdd:n.useCallback(a=>{H(b=>new Set(b).add(a))},[]),onNativeOptionRemove:n.useCallback(a=>{H(b=>{let c=new Set(b);return c.delete(a),c})},[]),children:d})}),F?(0,m.jsxs)(eO,{"aria-hidden":!0,required:q,tabIndex:-1,name:l,autoComplete:o,value:C,onChange:a=>D(a.target.value),disabled:p,form:r,children:[void 0===C?(0,m.jsx)("option",{value:""}):null,Array.from(G)]},I):null]})})};ef.displayName=d4;var eg="SelectTrigger",eh=n.forwardRef((a,b)=>{let{__scopeSelect:c,disabled:d=!1,...e}=a,f=ea(c),g=ec(eg,c),h=g.disabled||d,i=bz(b,g.onTriggerChange),j=d6(c),k=n.useRef("touch"),[l,o,p]=eQ(a=>{let b=j().filter(a=>!a.disabled),c=b.find(a=>a.value===g.value),d=eR(b,a,c);void 0!==d&&g.onValueChange(d.value)}),q=a=>{h||(g.onOpenChange(!0),p()),a&&(g.triggerPointerDownPosRef.current={x:Math.round(a.pageX),y:Math.round(a.pageY)})};return(0,m.jsx)(da,{asChild:!0,...f,children:(0,m.jsx)(bH.button,{type:"button",role:"combobox","aria-controls":g.contentId,"aria-expanded":g.open,"aria-required":g.required,"aria-autocomplete":"none",dir:g.dir,"data-state":g.open?"open":"closed",disabled:h,"data-disabled":h?"":void 0,"data-placeholder":eP(g.value)?"":void 0,...e,ref:i,onClick:bv(e.onClick,a=>{a.currentTarget.focus(),"mouse"!==k.current&&q(a)}),onPointerDown:bv(e.onPointerDown,a=>{k.current=a.pointerType;let b=a.target;b.hasPointerCapture(a.pointerId)&&b.releasePointerCapture(a.pointerId),0===a.button&&!1===a.ctrlKey&&"mouse"===a.pointerType&&(q(a),a.preventDefault())}),onKeyDown:bv(e.onKeyDown,a=>{let b=""!==l.current;a.ctrlKey||a.altKey||a.metaKey||1!==a.key.length||o(a.key),(!b||" "!==a.key)&&d2.includes(a.key)&&(q(),a.preventDefault())})})})});eh.displayName=eg;var ei="SelectValue",ej=n.forwardRef((a,b)=>{let{__scopeSelect:c,className:d,style:e,children:f,placeholder:g="",...h}=a,i=ec(ei,c),{onValueNodeHasChildrenChange:j}=i,k=void 0!==f,l=bz(b,i.onValueNodeChange);return bZ(()=>{j(k)},[j,k]),(0,m.jsx)(bH.span,{...h,ref:l,style:{pointerEvents:"none"},children:eP(i.value)?(0,m.jsx)(m.Fragment,{children:g}):f})});ej.displayName=ei;var ek=n.forwardRef((a,b)=>{let{__scopeSelect:c,children:d,...e}=a;return(0,m.jsx)(bH.span,{"aria-hidden":!0,...e,ref:b,children:d||"▼"})});ek.displayName="SelectIcon";var el=a=>(0,m.jsx)(dl,{asChild:!0,...a});el.displayName="SelectPortal";var em="SelectContent",en=n.forwardRef((a,b)=>{let c=ec(em,a.__scopeSelect),[d,e]=n.useState();return(bZ(()=>{e(new DocumentFragment)},[]),c.open)?(0,m.jsx)(er,{...a,ref:b}):d?bt.createPortal((0,m.jsx)(eo,{scope:a.__scopeSelect,children:(0,m.jsx)(d5.Slot,{scope:a.__scopeSelect,children:(0,m.jsx)("div",{children:a.children})})}),d):null});en.displayName=em;var[eo,ep]=d8(em),eq=bA("SelectContent.RemoveScroll"),er=n.forwardRef((a,b)=>{let{__scopeSelect:c,position:d="item-aligned",onCloseAutoFocus:e,onEscapeKeyDown:f,onPointerDownOutside:g,side:h,sideOffset:i,align:j,alignOffset:k,arrowPadding:l,collisionBoundary:o,collisionPadding:p,sticky:q,hideWhenDetached:r,avoidCollisions:s,...t}=a,u=ec(em,c),[v,w]=n.useState(null),[x,y]=n.useState(null),z=bz(b,a=>w(a)),[A,B]=n.useState(null),[C,D]=n.useState(null),E=d6(c),[F,G]=n.useState(!1),H=n.useRef(!1);n.useEffect(()=>{if(v)return dw(v)},[v]),n.useEffect(()=>{let a=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",a[0]??bP()),document.body.insertAdjacentElement("beforeend",a[1]??bP()),bO++,()=>{1===bO&&document.querySelectorAll("[data-radix-focus-guard]").forEach(a=>a.remove()),bO--}},[]);let I=n.useCallback(a=>{let[b,...c]=E().map(a=>a.ref.current),[d]=c.slice(-1),e=document.activeElement;for(let c of a)if(c===e||(c?.scrollIntoView({block:"nearest"}),c===b&&x&&(x.scrollTop=0),c===d&&x&&(x.scrollTop=x.scrollHeight),c?.focus(),document.activeElement!==e))return},[E,x]),J=n.useCallback(()=>I([A,v]),[I,A,v]);n.useEffect(()=>{F&&J()},[F,J]);let{onOpenChange:K,triggerPointerDownPosRef:L}=u;n.useEffect(()=>{if(v){let a={x:0,y:0},b=b=>{a={x:Math.abs(Math.round(b.pageX)-(L.current?.x??0)),y:Math.abs(Math.round(b.pageY)-(L.current?.y??0))}},c=c=>{a.x<=10&&a.y<=10?c.preventDefault():v.contains(c.target)||K(!1),document.removeEventListener("pointermove",b),L.current=null};return null!==L.current&&(document.addEventListener("pointermove",b),document.addEventListener("pointerup",c,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",c,{capture:!0})}}},[v,K,L]),n.useEffect(()=>{let a=()=>K(!1);return window.addEventListener("blur",a),window.addEventListener("resize",a),()=>{window.removeEventListener("blur",a),window.removeEventListener("resize",a)}},[K]);let[M,N]=eQ(a=>{let b=E().filter(a=>!a.disabled),c=b.find(a=>a.ref.current===document.activeElement),d=eR(b,a,c);d&&setTimeout(()=>d.ref.current.focus())}),O=n.useCallback((a,b,c)=>{let d=!H.current&&!c;(void 0!==u.value&&u.value===b||d)&&(B(a),d&&(H.current=!0))},[u.value]),P=n.useCallback(()=>v?.focus(),[v]),Q=n.useCallback((a,b,c)=>{let d=!H.current&&!c;(void 0!==u.value&&u.value===b||d)&&D(a)},[u.value]),R="popper"===d?et:es,S=R===et?{side:h,sideOffset:i,align:j,alignOffset:k,arrowPadding:l,collisionBoundary:o,collisionPadding:p,sticky:q,hideWhenDetached:r,avoidCollisions:s}:{};return(0,m.jsx)(eo,{scope:c,content:v,viewport:x,onViewportChange:y,itemRefCallback:O,selectedItem:A,onItemLeave:P,itemTextRefCallback:Q,focusSelectedItem:J,selectedItemText:C,position:d,isPositioned:F,searchRef:M,children:(0,m.jsx)(d1,{as:eq,allowPinchZoom:!0,children:(0,m.jsx)(bT,{asChild:!0,trapped:u.open,onMountAutoFocus:a=>{a.preventDefault()},onUnmountAutoFocus:bv(e,a=>{u.trigger?.focus({preventScroll:!0}),a.preventDefault()}),children:(0,m.jsx)(bL,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:f,onPointerDownOutside:g,onFocusOutside:a=>a.preventDefault(),onDismiss:()=>u.onOpenChange(!1),children:(0,m.jsx)(R,{role:"listbox",id:u.contentId,"data-state":u.open?"open":"closed",dir:u.dir,onContextMenu:a=>a.preventDefault(),...t,...S,onPlaced:()=>G(!0),ref:z,style:{display:"flex",flexDirection:"column",outline:"none",...t.style},onKeyDown:bv(t.onKeyDown,a=>{let b=a.ctrlKey||a.altKey||a.metaKey;if("Tab"===a.key&&a.preventDefault(),b||1!==a.key.length||N(a.key),["ArrowUp","ArrowDown","Home","End"].includes(a.key)){let b=E().filter(a=>!a.disabled).map(a=>a.ref.current);if(["ArrowUp","End"].includes(a.key)&&(b=b.slice().reverse()),["ArrowUp","ArrowDown"].includes(a.key)){let c=a.target,d=b.indexOf(c);b=b.slice(d+1)}setTimeout(()=>I(b)),a.preventDefault()}})})})})})})});er.displayName="SelectContentImpl";var es=n.forwardRef((a,b)=>{let{__scopeSelect:c,onPlaced:d,...e}=a,f=ec(em,c),g=ep(em,c),[h,i]=n.useState(null),[j,k]=n.useState(null),l=bz(b,a=>k(a)),o=d6(c),p=n.useRef(!1),q=n.useRef(!0),{viewport:r,selectedItem:s,selectedItemText:t,focusSelectedItem:u}=g,v=n.useCallback(()=>{if(f.trigger&&f.valueNode&&h&&j&&r&&s&&t){let a=f.trigger.getBoundingClientRect(),b=j.getBoundingClientRect(),c=f.valueNode.getBoundingClientRect(),e=t.getBoundingClientRect();if("rtl"!==f.dir){let d=e.left-b.left,f=c.left-d,g=a.left-f,i=a.width+g,j=Math.max(i,b.width),k=bu(f,[10,Math.max(10,window.innerWidth-10-j)]);h.style.minWidth=i+"px",h.style.left=k+"px"}else{let d=b.right-e.right,f=window.innerWidth-c.right-d,g=window.innerWidth-a.right-f,i=a.width+g,j=Math.max(i,b.width),k=bu(f,[10,Math.max(10,window.innerWidth-10-j)]);h.style.minWidth=i+"px",h.style.right=k+"px"}let g=o(),i=window.innerHeight-20,k=r.scrollHeight,l=window.getComputedStyle(j),m=parseInt(l.borderTopWidth,10),n=parseInt(l.paddingTop,10),q=parseInt(l.borderBottomWidth,10),u=m+n+k+parseInt(l.paddingBottom,10)+q,v=Math.min(5*s.offsetHeight,u),w=window.getComputedStyle(r),x=parseInt(w.paddingTop,10),y=parseInt(w.paddingBottom,10),z=a.top+a.height/2-10,A=s.offsetHeight/2,B=m+n+(s.offsetTop+A);if(B<=z){let a=g.length>0&&s===g[g.length-1].ref.current;h.style.bottom="0px";let b=Math.max(i-z,A+(a?y:0)+(j.clientHeight-r.offsetTop-r.offsetHeight)+q);h.style.height=B+b+"px"}else{let a=g.length>0&&s===g[0].ref.current;h.style.top="0px";let b=Math.max(z,m+r.offsetTop+(a?x:0)+A);h.style.height=b+(u-B)+"px",r.scrollTop=B-z+r.offsetTop}h.style.margin="10px 0",h.style.minHeight=v+"px",h.style.maxHeight=i+"px",d?.(),requestAnimationFrame(()=>p.current=!0)}},[o,f.trigger,f.valueNode,h,j,r,s,t,f.dir,d]);bZ(()=>v(),[v]);let[w,x]=n.useState();bZ(()=>{j&&x(window.getComputedStyle(j).zIndex)},[j]);let y=n.useCallback(a=>{a&&!0===q.current&&(v(),u?.(),q.current=!1)},[v,u]);return(0,m.jsx)(eu,{scope:c,contentWrapper:h,shouldExpandOnScrollRef:p,onScrollButtonChange:y,children:(0,m.jsx)("div",{ref:i,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:w},children:(0,m.jsx)(bH.div,{...e,ref:l,style:{boxSizing:"border-box",maxHeight:"100%",...e.style}})})})});es.displayName="SelectItemAlignedPosition";var et=n.forwardRef((a,b)=>{let{__scopeSelect:c,align:d="start",collisionPadding:e=10,...f}=a,g=ea(c);return(0,m.jsx)(de,{...g,...f,ref:b,align:d,collisionPadding:e,style:{boxSizing:"border-box",...f.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});et.displayName="SelectPopperPosition";var[eu,ev]=d8(em,{}),ew="SelectViewport",ex=n.forwardRef((a,b)=>{let{__scopeSelect:c,nonce:d,...e}=a,f=ep(ew,c),g=ev(ew,c),h=bz(b,f.onViewportChange),i=n.useRef(0);return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:d}),(0,m.jsx)(d5.Slot,{scope:c,children:(0,m.jsx)(bH.div,{"data-radix-select-viewport":"",role:"presentation",...e,ref:h,style:{position:"relative",flex:1,overflow:"hidden auto",...e.style},onScroll:bv(e.onScroll,a=>{let b=a.currentTarget,{contentWrapper:c,shouldExpandOnScrollRef:d}=g;if(d?.current&&c){let a=Math.abs(i.current-b.scrollTop);if(a>0){let d=window.innerHeight-20,e=Math.max(parseFloat(c.style.minHeight),parseFloat(c.style.height));if(e<d){let f=e+a,g=Math.min(d,f),h=f-g;c.style.height=g+"px","0px"===c.style.bottom&&(b.scrollTop=h>0?h:0,c.style.justifyContent="flex-end")}}}i.current=b.scrollTop})})})]})});ex.displayName=ew;var ey="SelectGroup",[ez,eA]=d8(ey);n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=b0();return(0,m.jsx)(ez,{scope:c,id:e,children:(0,m.jsx)(bH.div,{role:"group","aria-labelledby":e,...d,ref:b})})}).displayName=ey;var eB="SelectLabel";n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=eA(eB,c);return(0,m.jsx)(bH.div,{id:e.id,...d,ref:b})}).displayName=eB;var eC="SelectItem",[eD,eE]=d8(eC),eF=n.forwardRef((a,b)=>{let{__scopeSelect:c,value:d,disabled:e=!1,textValue:f,...g}=a,h=ec(eC,c),i=ep(eC,c),j=h.value===d,[k,l]=n.useState(f??""),[o,p]=n.useState(!1),q=bz(b,a=>i.itemRefCallback?.(a,d,e)),r=b0(),s=n.useRef("touch"),t=()=>{e||(h.onValueChange(d),h.onOpenChange(!1))};if(""===d)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,m.jsx)(eD,{scope:c,value:d,disabled:e,textId:r,isSelected:j,onItemTextChange:n.useCallback(a=>{l(b=>b||(a?.textContent??"").trim())},[]),children:(0,m.jsx)(d5.ItemSlot,{scope:c,value:d,disabled:e,textValue:k,children:(0,m.jsx)(bH.div,{role:"option","aria-labelledby":r,"data-highlighted":o?"":void 0,"aria-selected":j&&o,"data-state":j?"checked":"unchecked","aria-disabled":e||void 0,"data-disabled":e?"":void 0,tabIndex:e?void 0:-1,...g,ref:q,onFocus:bv(g.onFocus,()=>p(!0)),onBlur:bv(g.onBlur,()=>p(!1)),onClick:bv(g.onClick,()=>{"mouse"!==s.current&&t()}),onPointerUp:bv(g.onPointerUp,()=>{"mouse"===s.current&&t()}),onPointerDown:bv(g.onPointerDown,a=>{s.current=a.pointerType}),onPointerMove:bv(g.onPointerMove,a=>{s.current=a.pointerType,e?i.onItemLeave?.():"mouse"===s.current&&a.currentTarget.focus({preventScroll:!0})}),onPointerLeave:bv(g.onPointerLeave,a=>{a.currentTarget===document.activeElement&&i.onItemLeave?.()}),onKeyDown:bv(g.onKeyDown,a=>{(i.searchRef?.current===""||" "!==a.key)&&(d3.includes(a.key)&&t()," "===a.key&&a.preventDefault())})})})})});eF.displayName=eC;var eG="SelectItemText",eH=n.forwardRef((a,b)=>{let{__scopeSelect:c,className:d,style:e,...f}=a,g=ec(eG,c),h=ep(eG,c),i=eE(eG,c),j=ee(eG,c),[k,l]=n.useState(null),o=bz(b,a=>l(a),i.onItemTextChange,a=>h.itemTextRefCallback?.(a,i.value,i.disabled)),p=k?.textContent,q=n.useMemo(()=>(0,m.jsx)("option",{value:i.value,disabled:i.disabled,children:p},i.value),[i.disabled,i.value,p]),{onNativeOptionAdd:r,onNativeOptionRemove:s}=j;return bZ(()=>(r(q),()=>s(q)),[r,s,q]),(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(bH.span,{id:i.textId,...f,ref:o}),i.isSelected&&g.valueNode&&!g.valueNodeHasChildren?bt.createPortal(f.children,g.valueNode):null]})});eH.displayName=eG;var eI="SelectItemIndicator",eJ=n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a;return eE(eI,c).isSelected?(0,m.jsx)(bH.span,{"aria-hidden":!0,...d,ref:b}):null});eJ.displayName=eI;var eK="SelectScrollUpButton";n.forwardRef((a,b)=>{let c=ep(eK,a.__scopeSelect),d=ev(eK,a.__scopeSelect),[e,f]=n.useState(!1),g=bz(b,d.onScrollButtonChange);return bZ(()=>{if(c.viewport&&c.isPositioned){let a=function(){f(b.scrollTop>0)},b=c.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[c.viewport,c.isPositioned]),e?(0,m.jsx)(eM,{...a,ref:g,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=c;a&&b&&(a.scrollTop=a.scrollTop-b.offsetHeight)}}):null}).displayName=eK;var eL="SelectScrollDownButton";n.forwardRef((a,b)=>{let c=ep(eL,a.__scopeSelect),d=ev(eL,a.__scopeSelect),[e,f]=n.useState(!1),g=bz(b,d.onScrollButtonChange);return bZ(()=>{if(c.viewport&&c.isPositioned){let a=function(){let a=b.scrollHeight-b.clientHeight;f(Math.ceil(b.scrollTop)<a)},b=c.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[c.viewport,c.isPositioned]),e?(0,m.jsx)(eM,{...a,ref:g,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=c;a&&b&&(a.scrollTop=a.scrollTop+b.offsetHeight)}}):null}).displayName=eL;var eM=n.forwardRef((a,b)=>{let{__scopeSelect:c,onAutoScroll:d,...e}=a,f=ep("SelectScrollButton",c),g=n.useRef(null),h=d6(c),i=n.useCallback(()=>{null!==g.current&&(window.clearInterval(g.current),g.current=null)},[]);return n.useEffect(()=>()=>i(),[i]),bZ(()=>{let a=h().find(a=>a.ref.current===document.activeElement);a?.ref.current?.scrollIntoView({block:"nearest"})},[h]),(0,m.jsx)(bH.div,{"aria-hidden":!0,...e,ref:b,style:{flexShrink:0,...e.style},onPointerDown:bv(e.onPointerDown,()=>{null===g.current&&(g.current=window.setInterval(d,50))}),onPointerMove:bv(e.onPointerMove,()=>{f.onItemLeave?.(),null===g.current&&(g.current=window.setInterval(d,50))}),onPointerLeave:bv(e.onPointerLeave,()=>{i()})})});n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a;return(0,m.jsx)(bH.div,{"aria-hidden":!0,...d,ref:b})}).displayName="SelectSeparator";var eN="SelectArrow";n.forwardRef((a,b)=>{let{__scopeSelect:c,...d}=a,e=ea(c),f=ec(eN,c),g=ep(eN,c);return f.open&&"popper"===g.position?(0,m.jsx)(dh,{...e,...d,ref:b}):null}).displayName=eN;var eO=n.forwardRef(({__scopeSelect:a,value:b,...c},d)=>{let e,f=n.useRef(null),g=bz(d,f),h=(e=n.useRef({value:b,previous:b}),n.useMemo(()=>(e.current.value!==b&&(e.current.previous=e.current.value,e.current.value=b),e.current.previous),[b]));return n.useEffect(()=>{let a=f.current;if(!a)return;let c=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(h!==b&&c){let d=new Event("change",{bubbles:!0});c.call(a,b),a.dispatchEvent(d)}},[h,b]),(0,m.jsx)(bH.select,{...c,style:{...dp,...c.style},ref:g,defaultValue:b})});function eP(a){return""===a||void 0===a}function eQ(a){let b=bI(a),c=n.useRef(""),d=n.useRef(0),e=n.useCallback(a=>{let e=c.current+a;b(e),function a(b){c.current=b,window.clearTimeout(d.current),""!==b&&(d.current=window.setTimeout(()=>a(""),1e3))}(e)},[b]),f=n.useCallback(()=>{c.current="",window.clearTimeout(d.current)},[]);return n.useEffect(()=>()=>window.clearTimeout(d.current),[]),[c,e,f]}function eR(a,b,c){var d,e;let f=b.length>1&&Array.from(b).every(a=>a===b[0])?b[0]:b,g=c?a.indexOf(c):-1,h=(d=a,e=Math.max(g,0),d.map((a,b)=>d[(e+b)%d.length]));1===f.length&&(h=h.filter(a=>a!==c));let i=h.find(a=>a.textValue.toLowerCase().startsWith(f.toLowerCase()));return i!==c?i:void 0}eO.displayName="SelectBubbleInput";let eS=af("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]),eT=af("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]),eU=(a=new Map,b=null,c)=>({nextPart:a,validators:b,classGroupId:c}),eV=[],eW=(a,b,c)=>{if(0==a.length-b)return c.classGroupId;let d=a[b],e=c.nextPart.get(d);if(e){let c=eW(a,b+1,e);if(c)return c}let f=c.validators;if(null===f)return;let g=0===b?a.join("-"):a.slice(b).join("-"),h=f.length;for(let a=0;a<h;a++){let b=f[a];if(b.validator(g))return b.classGroupId}},eX=(a,b)=>{let c=eU();for(let d in a)eY(a[d],c,d,b);return c},eY=(a,b,c,d)=>{let e=a.length;for(let f=0;f<e;f++)eZ(a[f],b,c,d)},eZ=(a,b,c,d)=>{"string"==typeof a?e$(a,b,c):"function"==typeof a?e_(a,b,c,d):e0(a,b,c,d)},e$=(a,b,c)=>{(""===a?b:e1(b,a)).classGroupId=c},e_=(a,b,c,d)=>{e2(a)?eY(a(d),b,c,d):(null===b.validators&&(b.validators=[]),b.validators.push({classGroupId:c,validator:a}))},e0=(a,b,c,d)=>{let e=Object.entries(a),f=e.length;for(let a=0;a<f;a++){let[f,g]=e[a];eY(g,e1(b,f),c,d)}},e1=(a,b)=>{let c=a,d=b.split("-"),e=d.length;for(let a=0;a<e;a++){let b=d[a],e=c.nextPart.get(b);e||(e=eU(),c.nextPart.set(b,e)),c=e}return c},e2=a=>"isThemeGetter"in a&&!0===a.isThemeGetter,e3=[],e4=(a,b,c,d,e)=>({modifiers:a,hasImportantModifier:b,baseClassName:c,maybePostfixModifierPosition:d,isExternal:e}),e5=/\s+/,e6=a=>{let b;if("string"==typeof a)return a;let c="";for(let d=0;d<a.length;d++)a[d]&&(b=e6(a[d]))&&(c&&(c+=" "),c+=b);return c},e7=[],e8=a=>{let b=b=>b[a]||e7;return b.isThemeGetter=!0,b},e9=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,fa=/^\((?:(\w[\w-]*):)?(.+)\)$/i,fb=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,fc=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,fd=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,fe=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,ff=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,fg=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,fh=a=>fb.test(a),fi=a=>!!a&&!Number.isNaN(Number(a)),fj=a=>!!a&&Number.isInteger(Number(a)),fk=a=>a.endsWith("%")&&fi(a.slice(0,-1)),fl=a=>fc.test(a),fm=()=>!0,fn=a=>fd.test(a)&&!fe.test(a),fo=()=>!1,fp=a=>ff.test(a),fq=a=>fg.test(a),fr=a=>!ft(a)&&!fB(a),fs=a=>fJ(a,fN,fo),ft=a=>e9.test(a),fu=a=>fJ(a,fO,fn),fv=a=>fJ(a,fP,fi),fw=a=>fJ(a,fR,fm),fx=a=>fJ(a,fQ,fo),fy=a=>fJ(a,fL,fo),fz=a=>fJ(a,fM,fq),fA=a=>fJ(a,fS,fp),fB=a=>fa.test(a),fC=a=>fK(a,fO),fD=a=>fK(a,fQ),fE=a=>fK(a,fL),fF=a=>fK(a,fN),fG=a=>fK(a,fM),fH=a=>fK(a,fS,!0),fI=a=>fK(a,fR,!0),fJ=(a,b,c)=>{let d=e9.exec(a);return!!d&&(d[1]?b(d[1]):c(d[2]))},fK=(a,b,c=!1)=>{let d=fa.exec(a);return!!d&&(d[1]?b(d[1]):c)},fL=a=>"position"===a||"percentage"===a,fM=a=>"image"===a||"url"===a,fN=a=>"length"===a||"size"===a||"bg-size"===a,fO=a=>"length"===a,fP=a=>"number"===a,fQ=a=>"family-name"===a,fR=a=>"number"===a||"weight"===a,fS=a=>"shadow"===a,fT=((a,...b)=>{let c,d,e,f,g=a=>{let b=d(a);if(b)return b;let f=((a,b)=>{let{parseClassName:c,getClassGroupId:d,getConflictingClassGroupIds:e,sortModifiers:f}=b,g=[],h=a.trim().split(e5),i="";for(let a=h.length-1;a>=0;a-=1){let b=h[a],{isExternal:j,modifiers:k,hasImportantModifier:l,baseClassName:m,maybePostfixModifierPosition:n}=c(b);if(j){i=b+(i.length>0?" "+i:i);continue}let o=!!n,p=d(o?m.substring(0,n):m);if(!p){if(!o||!(p=d(m))){i=b+(i.length>0?" "+i:i);continue}o=!1}let q=0===k.length?"":1===k.length?k[0]:f(k).join(":"),r=l?q+"!":q,s=r+p;if(g.indexOf(s)>-1)continue;g.push(s);let t=e(p,o);for(let a=0;a<t.length;++a){let b=t[a];g.push(r+b)}i=b+(i.length>0?" "+i:i)}return i})(a,c);return e(a,f),f};return f=h=>{var i;let j;return d=(c={cache:(a=>{if(a<1)return{get:()=>void 0,set:()=>{}};let b=0,c=Object.create(null),d=Object.create(null),e=(e,f)=>{c[e]=f,++b>a&&(b=0,d=c,c=Object.create(null))};return{get(a){let b=c[a];return void 0!==b?b:void 0!==(b=d[a])?(e(a,b),b):void 0},set(a,b){a in c?c[a]=b:e(a,b)}}})((i=b.reduce((a,b)=>b(a),a())).cacheSize),parseClassName:(a=>{let{prefix:b,experimentalParseClassName:c}=a,d=a=>{let b,c=[],d=0,e=0,f=0,g=a.length;for(let h=0;h<g;h++){let g=a[h];if(0===d&&0===e){if(":"===g){c.push(a.slice(f,h)),f=h+1;continue}if("/"===g){b=h;continue}}"["===g?d++:"]"===g?d--:"("===g?e++:")"===g&&e--}let h=0===c.length?a:a.slice(f),i=h,j=!1;return h.endsWith("!")?(i=h.slice(0,-1),j=!0):h.startsWith("!")&&(i=h.slice(1),j=!0),e4(c,j,i,b&&b>f?b-f:void 0)};if(b){let a=b+":",c=d;d=b=>b.startsWith(a)?c(b.slice(a.length)):e4(e3,!1,b,void 0,!0)}if(c){let a=d;d=b=>c({className:b,parseClassName:a})}return d})(i),sortModifiers:(j=new Map,i.orderSensitiveModifiers.forEach((a,b)=>{j.set(a,1e6+b)}),a=>{let b=[],c=[];for(let d=0;d<a.length;d++){let e=a[d],f="["===e[0],g=j.has(e);f||g?(c.length>0&&(c.sort(),b.push(...c),c=[]),b.push(e)):c.push(e)}return c.length>0&&(c.sort(),b.push(...c)),b}),...(a=>{let b=(a=>{let{theme:b,classGroups:c}=a;return eX(c,b)})(a),{conflictingClassGroups:c,conflictingClassGroupModifiers:d}=a;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]")){var c;let b,d,e;return -1===(c=a).slice(1,-1).indexOf(":")?void 0:(d=(b=c.slice(1,-1)).indexOf(":"),(e=b.slice(0,d))?"arbitrary.."+e:void 0)}let d=a.split("-"),e=+(""===d[0]&&d.length>1);return eW(d,e,b)},getConflictingClassGroupIds:(a,b)=>{if(b){let b=d[a],e=c[a];if(b){if(e){let a=Array(e.length+b.length);for(let b=0;b<e.length;b++)a[b]=e[b];for(let c=0;c<b.length;c++)a[e.length+c]=b[c];return a}return b}return e||eV}return c[a]||eV}}})(i)}).cache.get,e=c.cache.set,f=g,g(h)},(...a)=>f(((...a)=>{let b,c,d=0,e="";for(;d<a.length;)(b=a[d++])&&(c=e6(b))&&(e&&(e+=" "),e+=c);return e})(...a))})(()=>{let a=e8("color"),b=e8("font"),c=e8("text"),d=e8("font-weight"),e=e8("tracking"),f=e8("leading"),g=e8("breakpoint"),h=e8("container"),i=e8("spacing"),j=e8("radius"),k=e8("shadow"),l=e8("inset-shadow"),m=e8("text-shadow"),n=e8("drop-shadow"),o=e8("blur"),p=e8("perspective"),q=e8("aspect"),r=e8("ease"),s=e8("animate"),t=()=>["auto","avoid","all","avoid-page","page","left","right","column"],u=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],v=()=>[...u(),fB,ft],w=()=>["auto","hidden","clip","visible","scroll"],x=()=>["auto","contain","none"],y=()=>[fB,ft,i],z=()=>[fh,"full","auto",...y()],A=()=>[fj,"none","subgrid",fB,ft],B=()=>["auto",{span:["full",fj,fB,ft]},fj,fB,ft],C=()=>[fj,"auto",fB,ft],D=()=>["auto","min","max","fr",fB,ft],E=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],F=()=>["start","end","center","stretch","center-safe","end-safe"],G=()=>["auto",...y()],H=()=>[fh,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...y()],I=()=>[fh,"screen","full","dvw","lvw","svw","min","max","fit",...y()],J=()=>[fh,"screen","full","lh","dvh","lvh","svh","min","max","fit",...y()],K=()=>[a,fB,ft],L=()=>[...u(),fE,fy,{position:[fB,ft]}],M=()=>["no-repeat",{repeat:["","x","y","space","round"]}],N=()=>["auto","cover","contain",fF,fs,{size:[fB,ft]}],O=()=>[fk,fC,fu],P=()=>["","none","full",j,fB,ft],Q=()=>["",fi,fC,fu],R=()=>["solid","dashed","dotted","double"],S=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],T=()=>[fi,fk,fE,fy],U=()=>["","none",o,fB,ft],V=()=>["none",fi,fB,ft],W=()=>["none",fi,fB,ft],X=()=>[fi,fB,ft],Y=()=>[fh,"full",...y()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[fl],breakpoint:[fl],color:[fm],container:[fl],"drop-shadow":[fl],ease:["in","out","in-out"],font:[fr],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[fl],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[fl],shadow:[fl],spacing:["px",fi],text:[fl],"text-shadow":[fl],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",fh,ft,fB,q]}],container:["container"],columns:[{columns:[fi,ft,fB,h]}],"break-after":[{"break-after":t()}],"break-before":[{"break-before":t()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:v()}],overflow:[{overflow:w()}],"overflow-x":[{"overflow-x":w()}],"overflow-y":[{"overflow-y":w()}],overscroll:[{overscroll:x()}],"overscroll-x":[{"overscroll-x":x()}],"overscroll-y":[{"overscroll-y":x()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:z()}],"inset-x":[{"inset-x":z()}],"inset-y":[{"inset-y":z()}],start:[{"inset-s":z(),start:z()}],end:[{"inset-e":z(),end:z()}],"inset-bs":[{"inset-bs":z()}],"inset-be":[{"inset-be":z()}],top:[{top:z()}],right:[{right:z()}],bottom:[{bottom:z()}],left:[{left:z()}],visibility:["visible","invisible","collapse"],z:[{z:[fj,"auto",fB,ft]}],basis:[{basis:[fh,"full","auto",h,...y()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[fi,fh,"auto","initial","none",ft]}],grow:[{grow:["",fi,fB,ft]}],shrink:[{shrink:["",fi,fB,ft]}],order:[{order:[fj,"first","last","none",fB,ft]}],"grid-cols":[{"grid-cols":A()}],"col-start-end":[{col:B()}],"col-start":[{"col-start":C()}],"col-end":[{"col-end":C()}],"grid-rows":[{"grid-rows":A()}],"row-start-end":[{row:B()}],"row-start":[{"row-start":C()}],"row-end":[{"row-end":C()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":D()}],"auto-rows":[{"auto-rows":D()}],gap:[{gap:y()}],"gap-x":[{"gap-x":y()}],"gap-y":[{"gap-y":y()}],"justify-content":[{justify:[...E(),"normal"]}],"justify-items":[{"justify-items":[...F(),"normal"]}],"justify-self":[{"justify-self":["auto",...F()]}],"align-content":[{content:["normal",...E()]}],"align-items":[{items:[...F(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...F(),{baseline:["","last"]}]}],"place-content":[{"place-content":E()}],"place-items":[{"place-items":[...F(),"baseline"]}],"place-self":[{"place-self":["auto",...F()]}],p:[{p:y()}],px:[{px:y()}],py:[{py:y()}],ps:[{ps:y()}],pe:[{pe:y()}],pbs:[{pbs:y()}],pbe:[{pbe:y()}],pt:[{pt:y()}],pr:[{pr:y()}],pb:[{pb:y()}],pl:[{pl:y()}],m:[{m:G()}],mx:[{mx:G()}],my:[{my:G()}],ms:[{ms:G()}],me:[{me:G()}],mbs:[{mbs:G()}],mbe:[{mbe:G()}],mt:[{mt:G()}],mr:[{mr:G()}],mb:[{mb:G()}],ml:[{ml:G()}],"space-x":[{"space-x":y()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":y()}],"space-y-reverse":["space-y-reverse"],size:[{size:H()}],"inline-size":[{inline:["auto",...I()]}],"min-inline-size":[{"min-inline":["auto",...I()]}],"max-inline-size":[{"max-inline":["none",...I()]}],"block-size":[{block:["auto",...J()]}],"min-block-size":[{"min-block":["auto",...J()]}],"max-block-size":[{"max-block":["none",...J()]}],w:[{w:[h,"screen",...H()]}],"min-w":[{"min-w":[h,"screen","none",...H()]}],"max-w":[{"max-w":[h,"screen","none","prose",{screen:[g]},...H()]}],h:[{h:["screen","lh",...H()]}],"min-h":[{"min-h":["screen","lh","none",...H()]}],"max-h":[{"max-h":["screen","lh",...H()]}],"font-size":[{text:["base",c,fC,fu]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[d,fI,fw]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",fk,ft]}],"font-family":[{font:[fD,fx,b]}],"font-features":[{"font-features":[ft]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[e,fB,ft]}],"line-clamp":[{"line-clamp":[fi,"none",fB,fv]}],leading:[{leading:[f,...y()]}],"list-image":[{"list-image":["none",fB,ft]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",fB,ft]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:K()}],"text-color":[{text:K()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...R(),"wavy"]}],"text-decoration-thickness":[{decoration:[fi,"from-font","auto",fB,fu]}],"text-decoration-color":[{decoration:K()}],"underline-offset":[{"underline-offset":[fi,"auto",fB,ft]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:y()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",fB,ft]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",fB,ft]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:L()}],"bg-repeat":[{bg:M()}],"bg-size":[{bg:N()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},fj,fB,ft],radial:["",fB,ft],conic:[fj,fB,ft]},fG,fz]}],"bg-color":[{bg:K()}],"gradient-from-pos":[{from:O()}],"gradient-via-pos":[{via:O()}],"gradient-to-pos":[{to:O()}],"gradient-from":[{from:K()}],"gradient-via":[{via:K()}],"gradient-to":[{to:K()}],rounded:[{rounded:P()}],"rounded-s":[{"rounded-s":P()}],"rounded-e":[{"rounded-e":P()}],"rounded-t":[{"rounded-t":P()}],"rounded-r":[{"rounded-r":P()}],"rounded-b":[{"rounded-b":P()}],"rounded-l":[{"rounded-l":P()}],"rounded-ss":[{"rounded-ss":P()}],"rounded-se":[{"rounded-se":P()}],"rounded-ee":[{"rounded-ee":P()}],"rounded-es":[{"rounded-es":P()}],"rounded-tl":[{"rounded-tl":P()}],"rounded-tr":[{"rounded-tr":P()}],"rounded-br":[{"rounded-br":P()}],"rounded-bl":[{"rounded-bl":P()}],"border-w":[{border:Q()}],"border-w-x":[{"border-x":Q()}],"border-w-y":[{"border-y":Q()}],"border-w-s":[{"border-s":Q()}],"border-w-e":[{"border-e":Q()}],"border-w-bs":[{"border-bs":Q()}],"border-w-be":[{"border-be":Q()}],"border-w-t":[{"border-t":Q()}],"border-w-r":[{"border-r":Q()}],"border-w-b":[{"border-b":Q()}],"border-w-l":[{"border-l":Q()}],"divide-x":[{"divide-x":Q()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":Q()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...R(),"hidden","none"]}],"divide-style":[{divide:[...R(),"hidden","none"]}],"border-color":[{border:K()}],"border-color-x":[{"border-x":K()}],"border-color-y":[{"border-y":K()}],"border-color-s":[{"border-s":K()}],"border-color-e":[{"border-e":K()}],"border-color-bs":[{"border-bs":K()}],"border-color-be":[{"border-be":K()}],"border-color-t":[{"border-t":K()}],"border-color-r":[{"border-r":K()}],"border-color-b":[{"border-b":K()}],"border-color-l":[{"border-l":K()}],"divide-color":[{divide:K()}],"outline-style":[{outline:[...R(),"none","hidden"]}],"outline-offset":[{"outline-offset":[fi,fB,ft]}],"outline-w":[{outline:["",fi,fC,fu]}],"outline-color":[{outline:K()}],shadow:[{shadow:["","none",k,fH,fA]}],"shadow-color":[{shadow:K()}],"inset-shadow":[{"inset-shadow":["none",l,fH,fA]}],"inset-shadow-color":[{"inset-shadow":K()}],"ring-w":[{ring:Q()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:K()}],"ring-offset-w":[{"ring-offset":[fi,fu]}],"ring-offset-color":[{"ring-offset":K()}],"inset-ring-w":[{"inset-ring":Q()}],"inset-ring-color":[{"inset-ring":K()}],"text-shadow":[{"text-shadow":["none",m,fH,fA]}],"text-shadow-color":[{"text-shadow":K()}],opacity:[{opacity:[fi,fB,ft]}],"mix-blend":[{"mix-blend":[...S(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":S()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[fi]}],"mask-image-linear-from-pos":[{"mask-linear-from":T()}],"mask-image-linear-to-pos":[{"mask-linear-to":T()}],"mask-image-linear-from-color":[{"mask-linear-from":K()}],"mask-image-linear-to-color":[{"mask-linear-to":K()}],"mask-image-t-from-pos":[{"mask-t-from":T()}],"mask-image-t-to-pos":[{"mask-t-to":T()}],"mask-image-t-from-color":[{"mask-t-from":K()}],"mask-image-t-to-color":[{"mask-t-to":K()}],"mask-image-r-from-pos":[{"mask-r-from":T()}],"mask-image-r-to-pos":[{"mask-r-to":T()}],"mask-image-r-from-color":[{"mask-r-from":K()}],"mask-image-r-to-color":[{"mask-r-to":K()}],"mask-image-b-from-pos":[{"mask-b-from":T()}],"mask-image-b-to-pos":[{"mask-b-to":T()}],"mask-image-b-from-color":[{"mask-b-from":K()}],"mask-image-b-to-color":[{"mask-b-to":K()}],"mask-image-l-from-pos":[{"mask-l-from":T()}],"mask-image-l-to-pos":[{"mask-l-to":T()}],"mask-image-l-from-color":[{"mask-l-from":K()}],"mask-image-l-to-color":[{"mask-l-to":K()}],"mask-image-x-from-pos":[{"mask-x-from":T()}],"mask-image-x-to-pos":[{"mask-x-to":T()}],"mask-image-x-from-color":[{"mask-x-from":K()}],"mask-image-x-to-color":[{"mask-x-to":K()}],"mask-image-y-from-pos":[{"mask-y-from":T()}],"mask-image-y-to-pos":[{"mask-y-to":T()}],"mask-image-y-from-color":[{"mask-y-from":K()}],"mask-image-y-to-color":[{"mask-y-to":K()}],"mask-image-radial":[{"mask-radial":[fB,ft]}],"mask-image-radial-from-pos":[{"mask-radial-from":T()}],"mask-image-radial-to-pos":[{"mask-radial-to":T()}],"mask-image-radial-from-color":[{"mask-radial-from":K()}],"mask-image-radial-to-color":[{"mask-radial-to":K()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":u()}],"mask-image-conic-pos":[{"mask-conic":[fi]}],"mask-image-conic-from-pos":[{"mask-conic-from":T()}],"mask-image-conic-to-pos":[{"mask-conic-to":T()}],"mask-image-conic-from-color":[{"mask-conic-from":K()}],"mask-image-conic-to-color":[{"mask-conic-to":K()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:L()}],"mask-repeat":[{mask:M()}],"mask-size":[{mask:N()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",fB,ft]}],filter:[{filter:["","none",fB,ft]}],blur:[{blur:U()}],brightness:[{brightness:[fi,fB,ft]}],contrast:[{contrast:[fi,fB,ft]}],"drop-shadow":[{"drop-shadow":["","none",n,fH,fA]}],"drop-shadow-color":[{"drop-shadow":K()}],grayscale:[{grayscale:["",fi,fB,ft]}],"hue-rotate":[{"hue-rotate":[fi,fB,ft]}],invert:[{invert:["",fi,fB,ft]}],saturate:[{saturate:[fi,fB,ft]}],sepia:[{sepia:["",fi,fB,ft]}],"backdrop-filter":[{"backdrop-filter":["","none",fB,ft]}],"backdrop-blur":[{"backdrop-blur":U()}],"backdrop-brightness":[{"backdrop-brightness":[fi,fB,ft]}],"backdrop-contrast":[{"backdrop-contrast":[fi,fB,ft]}],"backdrop-grayscale":[{"backdrop-grayscale":["",fi,fB,ft]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[fi,fB,ft]}],"backdrop-invert":[{"backdrop-invert":["",fi,fB,ft]}],"backdrop-opacity":[{"backdrop-opacity":[fi,fB,ft]}],"backdrop-saturate":[{"backdrop-saturate":[fi,fB,ft]}],"backdrop-sepia":[{"backdrop-sepia":["",fi,fB,ft]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":y()}],"border-spacing-x":[{"border-spacing-x":y()}],"border-spacing-y":[{"border-spacing-y":y()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",fB,ft]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[fi,"initial",fB,ft]}],ease:[{ease:["linear","initial",r,fB,ft]}],delay:[{delay:[fi,fB,ft]}],animate:[{animate:["none",s,fB,ft]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[p,fB,ft]}],"perspective-origin":[{"perspective-origin":v()}],rotate:[{rotate:V()}],"rotate-x":[{"rotate-x":V()}],"rotate-y":[{"rotate-y":V()}],"rotate-z":[{"rotate-z":V()}],scale:[{scale:W()}],"scale-x":[{"scale-x":W()}],"scale-y":[{"scale-y":W()}],"scale-z":[{"scale-z":W()}],"scale-3d":["scale-3d"],skew:[{skew:X()}],"skew-x":[{"skew-x":X()}],"skew-y":[{"skew-y":X()}],transform:[{transform:[fB,ft,"","none","gpu","cpu"]}],"transform-origin":[{origin:v()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Y()}],"translate-x":[{"translate-x":Y()}],"translate-y":[{"translate-y":Y()}],"translate-z":[{"translate-z":Y()}],"translate-none":["translate-none"],accent:[{accent:K()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:K()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",fB,ft]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":y()}],"scroll-mx":[{"scroll-mx":y()}],"scroll-my":[{"scroll-my":y()}],"scroll-ms":[{"scroll-ms":y()}],"scroll-me":[{"scroll-me":y()}],"scroll-mbs":[{"scroll-mbs":y()}],"scroll-mbe":[{"scroll-mbe":y()}],"scroll-mt":[{"scroll-mt":y()}],"scroll-mr":[{"scroll-mr":y()}],"scroll-mb":[{"scroll-mb":y()}],"scroll-ml":[{"scroll-ml":y()}],"scroll-p":[{"scroll-p":y()}],"scroll-px":[{"scroll-px":y()}],"scroll-py":[{"scroll-py":y()}],"scroll-ps":[{"scroll-ps":y()}],"scroll-pe":[{"scroll-pe":y()}],"scroll-pbs":[{"scroll-pbs":y()}],"scroll-pbe":[{"scroll-pbe":y()}],"scroll-pt":[{"scroll-pt":y()}],"scroll-pr":[{"scroll-pr":y()}],"scroll-pb":[{"scroll-pb":y()}],"scroll-pl":[{"scroll-pl":y()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",fB,ft]}],fill:[{fill:["none",...K()]}],"stroke-w":[{stroke:[fi,fC,fu,fv]}],stroke:[{stroke:["none",...K()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}});function fU(...a){return fT(function(){for(var a,b,c=0,d="",e=arguments.length;c<e;c++)(a=arguments[c])&&(b=function a(b){var c,d,e="";if("string"==typeof b||"number"==typeof b)e+=b;else if("object"==typeof b)if(Array.isArray(b)){var f=b.length;for(c=0;c<f;c++)b[c]&&(d=a(b[c]))&&(e&&(e+=" "),e+=d)}else for(d in b)b[d]&&(e&&(e+=" "),e+=d);return e}(a))&&(d&&(d+=" "),d+=b);return d}(a))}let fV=n.forwardRef(({className:a,children:b,...c},d)=>(0,m.jsxs)(eh,{ref:d,className:fU("flex h-10 w-full items-center justify-between rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm","ring-offset-white placeholder:text-zinc-500 focus:outline-none focus:ring-2 focus:ring-zinc-950 focus:ring-offset-2","disabled:cursor-not-allowed disabled:opacity-50 dark:border-zinc-800 dark:bg-zinc-950 dark:ring-offset-zinc-950","dark:placeholder:text-zinc-400 dark:focus:ring-zinc-300",a),...c,children:[b,(0,m.jsx)(ek,{asChild:!0,children:(0,m.jsx)(eS,{className:"h-4 w-4 opacity-50"})})]}));fV.displayName=eh.displayName;let fW=n.forwardRef(({className:a,children:b,position:c="popper",...d},e)=>(0,m.jsx)(el,{children:(0,m.jsx)(en,{ref:e,className:fU("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-lg border border-zinc-200 bg-white text-zinc-950 shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2","data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-50","popper"===c&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:c,...d,children:(0,m.jsx)(ex,{className:fU("p-1","popper"===c&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:b})})}));fW.displayName=en.displayName;let fX=n.forwardRef(({className:a,children:b,...c},d)=>(0,m.jsxs)(eF,{ref:d,className:fU("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none","focus:bg-zinc-100 focus:text-zinc-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50","dark:focus:bg-zinc-800 dark:focus:text-zinc-50",a),...c,children:[(0,m.jsx)("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,m.jsx)(eJ,{children:(0,m.jsx)(au,{className:"h-4 w-4"})})}),(0,m.jsx)(eH,{children:b})]}));function fY(a){if(!a)return{provider:"unknown",model:""};let b=a.indexOf("/");return -1!==b?{provider:a.substring(0,b),model:a.substring(b+1)}:{provider:"unknown",model:a}}function fZ({value:a,onValueChange:b,placeholder:c="Select a model...",disabled:d=!1}){let[e,f]=n.useState(""),{data:g,isLoading:h,isError:i,error:j,refetch:k}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models"),b=await a.json();if(!a.ok||b.error)throw Error(b.error||"Failed to fetch models");return b},retry:!1}),l=n.useMemo(()=>{let b=new Set(g?.models??[]);return a&&!b.has(a)&&b.add(a),Array.from(b).sort()},[g?.models,a]),o=n.useMemo(()=>{if(!e.trim())return l;let a=e.toLowerCase();return l.filter(b=>b.toLowerCase().includes(a))},[l,e]),p=n.useMemo(()=>{let a={};return o.forEach(b=>{let{provider:c}=fY(b);a[c]||(a[c]=[]),a[c].push(b)}),a},[o]),q=Object.keys(p).sort(),r=n.useCallback(a=>{a||f("")},[]),s=a?fY(a):null;return(0,m.jsxs)(ef,{value:a,onValueChange:b,disabled:d||h,onOpenChange:r,children:[(0,m.jsx)(fV,{children:(0,m.jsx)(ej,{placeholder:c,children:s&&(0,m.jsxs)("span",{className:"flex items-center gap-2",children:[(0,m.jsx)("span",{className:"text-xs font-medium text-zinc-500 dark:text-zinc-400",children:s.provider}),(0,m.jsx)("span",{className:"text-zinc-500 dark:text-zinc-400",children:"/"}),(0,m.jsx)("span",{className:"text-zinc-900 dark:text-zinc-100",children:s.model})]})})}),(0,m.jsxs)(fW,{children:[(0,m.jsx)("div",{className:"sticky top-0 z-10 border-b border-zinc-200 bg-white px-2 pb-2 pt-1 dark:border-zinc-800 dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"relative",children:[(0,m.jsx)(ak,{className:"absolute left-2 top-1/2 h-4 w-4 -translate-y-1/2 text-zinc-400"}),(0,m.jsx)("input",{type:"text",value:e,onChange:a=>f(a.target.value),placeholder:"Search models...",className:fU("h-9 w-full rounded-md border border-zinc-200 bg-transparent pl-8 pr-3 text-sm","outline-none placeholder:text-zinc-500 focus:border-zinc-400 focus:ring-0","dark:border-zinc-800 dark:placeholder:text-zinc-400"),onKeyDown:a=>a.stopPropagation()})]})}),(0,m.jsx)("div",{className:"max-h-64 overflow-auto",children:h?(0,m.jsx)("div",{className:"px-2 py-4 text-center text-sm text-zinc-500",children:"Loading models..."}):i?(0,m.jsx)("div",{className:"px-4 py-6 text-center",children:(0,m.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,m.jsx)("div",{className:"w-10 h-10 rounded-full bg-red-100 dark:bg-red-900/30 flex items-center justify-center",children:(0,m.jsx)(at,{className:"h-5 w-5 text-red-600 dark:text-red-400"})}),(0,m.jsxs)("div",{className:"space-y-1",children:[(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Failed to load models"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400 max-w-[200px]",children:j instanceof Error?j.message:"Please check your OpenCode installation"})]}),(0,m.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),k()},className:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-md text-xs font-medium bg-zinc-100 text-zinc-700 hover:bg-zinc-200 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-zinc-700 transition-colors",children:[(0,m.jsx)(eT,{className:"h-3.5 w-3.5"}),"Retry"]})]})}):0===o.length?(0,m.jsx)("div",{className:"px-2 py-4 text-center text-sm text-zinc-500",children:"No models found"}):q.map(a=>(0,m.jsxs)("div",{children:[(0,m.jsx)("div",{className:"px-2 py-1.5 text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:text-zinc-400",children:a}),p[a].map(a=>{let{model:b}=fY(a);return(0,m.jsx)(fX,{value:a,children:(0,m.jsx)("span",{className:"flex items-center gap-2",children:(0,m.jsx)("span",{className:"text-zinc-900 dark:text-zinc-100",children:b})})},a)})]},a))})]})]})}fX.displayName=eF.displayName;let f$={"visual-engineering":["google/gemini-3.1-pro","glm-5","anthropic/claude-opus-4-6"],ultrabrain:["openai/gpt-5.3-codex","google/gemini-3.1-pro","anthropic/claude-opus-4-6"],deep:["openai/gpt-5.3-codex","anthropic/claude-opus-4-6","google/gemini-3.1-pro"],artistry:["google/gemini-3.1-pro","anthropic/claude-opus-4-6","openai/gpt-5.4"],quick:["anthropic/claude-haiku-4-5","google/gemini-3-flash","opencode/gpt-5-nano"],"unspecified-low":["anthropic/claude-sonnet-4-6","openai/gpt-5.3-codex","google/gemini-3-flash"],"unspecified-high":["openai/gpt-5.4","anthropic/claude-opus-4-6","glm-5","kimi-for-coding/k2p5"],writing:["google/gemini-3-flash","anthropic/claude-sonnet-4-6"]};function f_({categoryName:a,initialConfig:b,onSave:c,onCancel:d}){let[e,f]=n.useState(null),{control:g,handleSubmit:h,watch:i,formState:{isSubmitting:j}}=bs({defaultValues:{model:b?.model||"",variant:b?.variant||"",temperature:b?.temperature??.7,top_p:b?.top_p??1,prompt_append:b?.prompt_append||""}}),{data:k}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models");if(!a.ok)throw Error("Failed to fetch models");return a.json()}}),l=n.useMemo(()=>new Set(k?.models??[]),[k]),o=i("model"),p=o&&l.size>0&&!l.has(o),q=!o,r=f$[a];return n.useEffect(()=>{if(e){let a=setTimeout(()=>f(null),3e3);return()=>clearTimeout(a)}},[e]),(0,m.jsxs)("form",{onSubmit:h(a=>{let b=Math.max(0,Math.min(2,a.temperature)),d=Math.max(0,Math.min(1,a.top_p));c({model:a.model||void 0,variant:a.variant||void 0,temperature:b,top_p:d,prompt_append:a.prompt_append||void 0}),f({type:"success",message:"Configuration saved successfully"})}),className:"space-y-6","aria-label":"Category configuration form",children:[e&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===e.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===e.type?(0,m.jsx)(au,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:e.message})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"category-name",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Category"}),(0,m.jsx)("input",{id:"category-name",type:"text",value:a,disabled:!0,className:"w-full rounded-lg border border-zinc-200 bg-zinc-100 px-3 py-2 text-sm text-zinc-600 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-400"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"The category identifier for this configuration."})]}),q&&r&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-zinc-200 bg-zinc-50 px-4 py-3 dark:border-zinc-800 dark:bg-zinc-900/20",children:[(0,m.jsx)(at,{className:"mt-0.5 h-4 w-4 shrink-0 text-zinc-500 dark:text-zinc-400"}),(0,m.jsxs)("div",{className:"text-sm text-zinc-700 dark:text-zinc-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Using built-in fallback chain"})," — this category will try models in priority order when ",(0,m.jsx)("code",{className:"rounded bg-zinc-200 px-1 py-0.5 text-xs dark:bg-zinc-800",children:"task()"})," is called:",(0,m.jsx)("div",{className:"mt-2 flex flex-wrap items-center gap-1",children:r.map((a,b)=>(0,m.jsxs)(n.Fragment,{children:[(0,m.jsx)("code",{className:`rounded px-1.5 py-0.5 text-xs ${0===b?"bg-blue-100 text-blue-800 dark:bg-blue-900/50 dark:text-blue-200 font-medium":"bg-zinc-100 text-zinc-600 dark:bg-zinc-800 dark:text-zinc-400"}`,children:a}),b<r.length-1&&(0,m.jsx)("span",{className:"text-zinc-400 dark:text-zinc-500",children:"→"})]},a))}),(0,m.jsx)("p",{className:"mt-2 text-xs text-zinc-500 dark:text-zinc-400",children:"Select a model to override the built-in behavior."})]})]}),q&&!r&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-zinc-200 bg-zinc-50 px-4 py-3 dark:border-zinc-800 dark:bg-zinc-900/20",children:[(0,m.jsx)(at,{className:"mt-0.5 h-4 w-4 shrink-0 text-zinc-500 dark:text-zinc-400"}),(0,m.jsxs)("p",{className:"text-sm text-zinc-700 dark:text-zinc-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"No model configured"})," — this custom category needs a model to be used with ",(0,m.jsx)("code",{className:"rounded bg-zinc-200 px-1 py-0.5 text-xs dark:bg-zinc-800",children:"task()"}),"."]})]}),p&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-amber-200 bg-amber-50 px-4 py-3 dark:border-amber-800 dark:bg-amber-900/20",children:[(0,m.jsx)(an,{className:"mt-0.5 h-4 w-4 shrink-0 text-amber-500 dark:text-amber-400"}),(0,m.jsxs)("p",{className:"text-sm text-amber-700 dark:text-amber-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Model unavailable"})," — ",(0,m.jsx)("code",{className:"rounded bg-amber-100 px-1 py-0.5 text-xs dark:bg-amber-800",children:o})," is missing from current providers. Please check your provider settings."]})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"model-selector",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Model"}),(0,m.jsx)(a_,{name:"model",control:g,render:({field:a})=>(0,m.jsx)("div",{id:"model-selector",children:(0,m.jsx)(fZ,{value:a.value,onValueChange:a.onChange,placeholder:"Select a model..."})})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"The AI model identifier for this category."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"variant-selector",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Variant"}),(0,m.jsx)(a_,{name:"variant",control:g,render:({field:a})=>(0,m.jsxs)("select",{id:"variant-selector",value:a.value,onChange:b=>a.onChange(b.target.value),className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-800 dark:bg-zinc-950",children:[(0,m.jsx)("option",{value:"",children:"Not set"}),(0,m.jsx)("option",{value:"max",children:"max"}),(0,m.jsx)("option",{value:"high",children:"high"}),(0,m.jsx)("option",{value:"medium",children:"medium"}),(0,m.jsx)("option",{value:"low",children:"low"}),(0,m.jsx)("option",{value:"xhigh",children:"xhigh"})]})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Model reasoning variant. Higher values mean more thinking."})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"temperature-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Temperature"}),(0,m.jsx)(a_,{name:"temperature",control:g,rules:{min:{value:0,message:"Minimum is 0"},max:{value:2,message:"Maximum is 2"}},render:({field:a})=>(0,m.jsx)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:a.value.toFixed(1)})})]}),(0,m.jsx)(a_,{name:"temperature",control:g,rules:{min:{value:0,message:"Minimum is 0"},max:{value:2,message:"Maximum is 2"}},render:({field:a,fieldState:b})=>(0,m.jsxs)(m.Fragment,{children:[(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"temperature-slider",type:"range",min:0,max:2,step:.1,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Temperature slider"}),(0,m.jsx)("input",{type:"number",min:0,max:2,step:.1,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)||0),className:"w-16 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Temperature value"})]}),b.error&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:b.error.message})]})}),(0,m.jsxs)("div",{className:"flex justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsx)("span",{children:"Precise (0)"}),(0,m.jsx)("span",{children:"Balanced (1)"}),(0,m.jsx)("span",{children:"Creative (2)"})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Controls randomness: lower values make responses more deterministic."})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"top-p-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Top P"}),(0,m.jsx)(a_,{name:"top_p",control:g,rules:{min:{value:0,message:"Minimum is 0"},max:{value:1,message:"Maximum is 1"}},render:({field:a})=>(0,m.jsx)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:a.value.toFixed(2)})})]}),(0,m.jsx)(a_,{name:"top_p",control:g,rules:{min:{value:0,message:"Minimum is 0"},max:{value:1,message:"Maximum is 1"}},render:({field:a,fieldState:b})=>(0,m.jsxs)(m.Fragment,{children:[(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"top-p-slider",type:"range",min:0,max:1,step:.05,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Top P slider"}),(0,m.jsx)("input",{type:"number",min:0,max:1,step:.05,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)||0),className:"w-16 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Top P value"})]}),b.error&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:b.error.message})]})}),(0,m.jsxs)("div",{className:"flex justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsx)("span",{children:"Diverse (0)"}),(0,m.jsx)("span",{children:"Default (1)"})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Controls nucleus sampling: lower values sample from more likely tokens."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"prompt-append",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Prompt Append"}),(0,m.jsx)(a_,{name:"prompt_append",control:g,render:({field:a})=>(0,m.jsx)("textarea",{id:"prompt-append",value:a.value,onChange:b=>a.onChange(b.target.value),rows:4,className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm resize-none dark:border-zinc-800 dark:bg-zinc-950",placeholder:"Additional system instructions to append..."})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Additional instructions appended to the system prompt."})]}),(0,m.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-2",children:[(0,m.jsx)("button",{type:"button",onClick:d,className:"inline-flex items-center gap-2 rounded-lg border border-zinc-200 bg-white px-4 py-2 text-sm font-medium text-zinc-700 hover:bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800",children:"Cancel"}),(0,m.jsxs)("button",{type:"submit",disabled:j,className:"inline-flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-blue-600 dark:hover:bg-blue-500",children:[j&&(0,m.jsx)(as,{className:"h-4 w-4 animate-spin","aria-hidden":"true"}),"Save Changes"]})]})]})}function f0({onSaveSuccess:a}){let b=(0,A.useQueryClient)(),[c,d]=n.useState(null),[e,f]=n.useState(void 0),[g,h]=n.useState(null),{data:i,isLoading:j,isError:k,error:l}=E({queryKey:["opencode-config"],queryFn:async()=>{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch configuration");return a.json()}});n.useEffect(()=>{if(g){let a=setTimeout(()=>h(null),3e3);return()=>clearTimeout(a)}},[g]);let o=ar({mutationFn:async a=>{let b=await fetch("/api/opencode-config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({categories:a})});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to save categories");return b.json()},onSuccess:()=>{b.invalidateQueries({queryKey:["opencode-config"]}),h({type:"success",message:"Categories saved successfully"}),d(null),f(void 0),a?.()},onError:a=>{h({type:"error",message:a.message})}});if(j)return(0,m.jsxs)("div",{className:"flex items-center justify-center py-12",children:[(0,m.jsx)(as,{className:"h-6 w-6 animate-spin text-zinc-400"}),(0,m.jsx)("span",{className:"ml-2 text-sm text-zinc-500 dark:text-zinc-400",children:"Loading categories..."})]});if(k)return(0,m.jsx)("div",{className:"rounded-lg border border-red-200 bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20",children:(0,m.jsxs)("div",{className:"flex items-center gap-2",children:[(0,m.jsx)(at,{className:"h-5 w-5 text-red-600 dark:text-red-400"}),(0,m.jsxs)("div",{children:[(0,m.jsx)("p",{className:"text-sm font-medium text-red-800 dark:text-red-300",children:"Failed to load categories"}),(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",children:l instanceof Error?l.message:"An unknown error occurred"})]})]})});let p=i?.categories||{};return(0,m.jsxs)("div",{className:"space-y-4",children:[g&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===g.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===g.type?(0,m.jsx)(au,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:g.message})]}),c?(0,m.jsx)(f_,{categoryName:c,initialConfig:e,onSave:a=>{if(!c)return;let b={...i?.categories||{},[c]:a};o.mutate(b)},onCancel:()=>{d(null),f(void 0)}}):(0,m.jsx)(aA,{categories:p,onEdit:(a,b)=>{d(a),f(b)},onDelete:a=>{let{[a]:b,...c}=i?.categories||{};o.mutate(c)}})]})}let f1=af("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]),f2=af("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);function f3({profiles:a,activeProfileId:b,appliedProfileId:c,onApply:d,onEdit:e,onDelete:f,onCreateNew:g}){let[h,i]=n.useState(""),[j,k]=n.useState(null),l=(a,b)=>{b?k(a):d(a.id)},o=n.useMemo(()=>{if(!h.trim())return a;let b=h.toLowerCase();return a.filter(a=>a.name.toLowerCase().includes(b)||(a.description?.toLowerCase()||"").includes(b))},[a,h]),{active:p,builtIn:q,custom:r}=n.useMemo(()=>{let a=[],c=[],d=[];return o.forEach(e=>{e.id===b?a.push(e):e.isBuiltIn?c.push(e):d.push(e)}),{active:a,builtIn:c,custom:d}},[o,b]),s=a.length,t=o.length,u=h.trim().length>0;return(0,m.jsxs)("div",{className:"space-y-4",children:[(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsxs)("div",{className:"relative flex-1",children:[(0,m.jsx)(ak,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-zinc-400"}),(0,m.jsx)("input",{type:"text",placeholder:"Search profiles...",value:h,onChange:a=>i(a.target.value),className:"w-full pl-9 pr-3 py-2 text-sm bg-white dark:bg-zinc-900 border border-zinc-200 dark:border-zinc-700 rounded-lg placeholder:text-zinc-400 focus:outline-none focus:ring-2 focus:ring-teal-500/20 focus:border-teal-500 transition-all duration-200"})]}),(0,m.jsxs)("div",{className:"flex items-center gap-1.5 text-xs text-zinc-500 dark:text-zinc-400 tabular-nums",children:[(0,m.jsx)(f2,{className:"h-3.5 w-3.5"}),(0,m.jsxs)("span",{children:[u?`${t} of ${s}`:`${s}`," profiles"]})]})]}),0===o.length&&(0,m.jsxs)("div",{className:"text-center py-12 px-4",children:[(0,m.jsx)("div",{className:"inline-flex items-center justify-center w-12 h-12 rounded-full bg-zinc-100 dark:bg-zinc-800 mb-3",children:(0,m.jsx)(f2,{className:"h-5 w-5 text-zinc-400 dark:text-zinc-500"})}),(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:u?"No profiles match your search":"No profiles yet"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400 mt-1",children:u?"Try a different search term":"Create your first profile to get started"})]}),o.length>0&&(0,m.jsxs)("div",{className:"space-y-4",children:[p.length>0&&(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,m.jsxs)("span",{className:"inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-[10px] font-semibold bg-teal-100 text-teal-700 dark:bg-teal-900/40 dark:text-teal-300 uppercase tracking-wider",children:[(0,m.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-teal-500 animate-pulse"}),"Active"]}),(0,m.jsx)("span",{className:"text-[10px] text-zinc-400 dark:text-zinc-500 tabular-nums",children:p.length})]}),(0,m.jsx)("div",{className:"space-y-2",children:p.map(a=>(0,m.jsx)(f4,{profile:a,isActive:!0,isApplied:a.id===c,onApply:()=>l(a,a.id===c),onEdit:()=>e(a),onDelete:()=>f(a.id)},a.id))})]}),q.length>0&&(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,m.jsx)("span",{className:"text-[10px] font-semibold text-zinc-500 dark:text-zinc-400 uppercase tracking-wider",children:"Built-in"}),(0,m.jsx)("span",{className:"text-[10px] text-zinc-400 dark:text-zinc-500 tabular-nums",children:q.length})]}),(0,m.jsx)("div",{className:"space-y-2",children:q.map(a=>(0,m.jsx)(f4,{profile:a,isActive:!1,isApplied:a.id===c,onApply:()=>l(a,a.id===c),onEdit:()=>e(a),onDelete:()=>f(a.id)},a.id))})]}),r.length>0&&(0,m.jsxs)("section",{children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,m.jsx)("span",{className:"text-[10px] font-semibold text-zinc-500 dark:text-zinc-400 uppercase tracking-wider",children:"Custom"}),(0,m.jsx)("span",{className:"text-[10px] text-zinc-400 dark:text-zinc-500 tabular-nums",children:r.length})]}),(0,m.jsx)("div",{className:"space-y-2",children:r.map(a=>(0,m.jsx)(f4,{profile:a,isActive:!1,isApplied:a.id===c,onApply:()=>l(a,a.id===c),onEdit:()=>e(a),onDelete:()=>f(a.id)},a.id))})]})]}),j&&(0,m.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50 backdrop-blur-sm",children:(0,m.jsx)("div",{className:"w-full max-w-md mx-4 bg-white dark:bg-zinc-900 rounded-xl border border-zinc-200 dark:border-zinc-700 shadow-2xl",children:(0,m.jsxs)("div",{className:"p-6",children:[(0,m.jsxs)("div",{className:"flex items-start gap-4",children:[(0,m.jsx)("div",{className:"flex-shrink-0 w-12 h-12 rounded-full bg-amber-100 dark:bg-amber-900/30 flex items-center justify-center",children:(0,m.jsx)(an,{className:"h-6 w-6 text-amber-600 dark:text-amber-400"})}),(0,m.jsxs)("div",{className:"flex-1",children:[(0,m.jsx)("h3",{className:"text-lg font-semibold text-zinc-900 dark:text-zinc-100",children:"Reset Profile Configuration"}),(0,m.jsxs)("p",{className:"mt-2 text-sm text-zinc-600 dark:text-zinc-400",children:["This will reset all agent and category configurations back to the ",(0,m.jsx)("strong",{children:j.name})," profile values. Any changes made after applying this profile will be lost."]})]})]}),(0,m.jsxs)("div",{className:"mt-6 flex items-center justify-end gap-3",children:[(0,m.jsxs)("button",{type:"button",onClick:()=>{k(null)},className:"inline-flex items-center gap-2 px-4 py-2 rounded-lg border border-zinc-200 dark:border-zinc-700 bg-white dark:bg-zinc-800 text-sm font-medium text-zinc-700 dark:text-zinc-300 hover:bg-zinc-50 dark:hover:bg-zinc-700 transition-colors",children:[(0,m.jsx)(aj,{className:"h-4 w-4"}),"Cancel"]}),(0,m.jsxs)("button",{type:"button",onClick:()=>{j&&(d(j.id),k(null))},className:"inline-flex items-center gap-2 px-4 py-2 rounded-lg bg-amber-600 text-sm font-medium text-white hover:bg-amber-700 transition-colors",children:[(0,m.jsx)(au,{className:"h-4 w-4"}),"Reset to ",j.name]})]})]})})}),(0,m.jsxs)("button",{type:"button",onClick:g,className:"w-full flex items-center justify-center gap-2 py-3 px-4 rounded-lg border border-dashed border-zinc-300 dark:border-zinc-700 text-sm font-medium text-zinc-600 dark:text-zinc-400 hover:border-teal-400 hover:text-teal-600 dark:hover:border-teal-500 dark:hover:text-teal-400 hover:bg-teal-50/50 dark:hover:bg-teal-900/10 transition-all duration-200",children:[(0,m.jsx)(f1,{className:"h-4 w-4"}),"Create New Profile"]})]})}function f4({profile:a,isActive:b,isApplied:c,onApply:d,onEdit:e,onDelete:f}){return(0,m.jsxs)("div",{className:`
7
6
  group relative flex items-center justify-between p-3 rounded-lg border
8
7
  transition-all duration-200
9
8
  ${b?"bg-teal-50/50 border-teal-200 dark:bg-teal-900/20 dark:border-teal-700/50":"bg-white border-zinc-200 dark:bg-zinc-900 dark:border-zinc-700 hover:border-zinc-300 dark:hover:border-zinc-600"}
@@ -11,6 +10,6 @@ Active ${F(a.updatedAt)} ago \xb7 Started ${F(a.createdAt)} ago`,children:[g&&(0
11
10
  px-2.5 py-1 rounded-md text-xs font-medium
12
11
  transition-all duration-200
13
12
  ${c?"bg-amber-100 text-amber-700 hover:bg-amber-200 dark:bg-amber-900/40 dark:text-amber-300 dark:hover:bg-amber-900/60":b?"bg-teal-100 text-teal-700 dark:bg-teal-900/40 dark:text-teal-300 cursor-default":"bg-zinc-100 text-zinc-700 hover:bg-teal-100 hover:text-teal-700 dark:bg-zinc-800 dark:text-zinc-300 dark:hover:bg-teal-900/30 dark:hover:text-teal-300"}
14
- `,children:c?"Reset":b?"Active":"Apply"}),(0,m.jsxs)("div",{className:"flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity",children:[(0,m.jsx)("button",{type:"button",onClick:e,className:"p-1.5 rounded-md text-zinc-400 hover:text-zinc-700 hover:bg-zinc-100 dark:text-zinc-500 dark:hover:text-zinc-200 dark:hover:bg-zinc-800 transition-colors","aria-label":`Edit ${a.name}`,title:`Edit ${a.name}`,children:(0,m.jsxs)("svg",{className:"h-3.5 w-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,role:"img",children:[(0,m.jsx)("title",{children:"Edit"}),(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"})]})}),!a.isBuiltIn&&!a.isDefault&&(0,m.jsx)("button",{type:"button",onClick:f,className:"p-1.5 rounded-md text-zinc-400 hover:text-red-600 hover:bg-red-50 dark:text-zinc-500 dark:hover:text-red-400 dark:hover:bg-red-900/20 transition-colors","aria-label":`Delete ${a.name}`,title:`Delete ${a.name}`,children:(0,m.jsxs)("svg",{className:"h-3.5 w-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,role:"img",children:[(0,m.jsx)("title",{children:"Delete"}),(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})]})})]})]})]})}let f4=ae("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]),f5=ae("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]),f6=["⚡","🔥","💎","🚀","🎯","💡","🔧","🎨","📊","🤖","👾","💻","⚙️","🔍","✨","🌟","🎭","🎪","🧩","🎲","📚","🔐","🛠️","⚡️","🌊","🔮","📡","🎸","🏆","🌈"];function f7({profile:a,initialConfig:b,onSave:c,onCancel:d}){let e=!!a,[f,g]=n.useState(null),[h,i]=n.useState(b||{agents:{}}),[j,k]=n.useState(b||{agents:{}});n.useEffect(()=>{b&&(i(b),k(b))},[b]);let[l,o]=n.useState(!1),{control:p,handleSubmit:q,watch:r,formState:{errors:s,isSubmitting:t}}=br({defaultValues:{id:a?.id||"",name:a?.name||"",emoji:a?.emoji||"⚡",description:a?.description||""}}),u=r("name"),v=r("emoji");n.useEffect(()=>{if(f){let a=setTimeout(()=>g(null),3e3);return()=>clearTimeout(a)}},[f]);let w=async()=>{try{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch configuration");let b=await a.json(),c={agents:b.agents||{},categories:b.categories};i(c),g({type:"success",message:"Configuration imported successfully"})}catch{g({type:"error",message:"Failed to import configuration"})}},x=n.useMemo(()=>JSON.stringify(h)!==JSON.stringify(j),[h,j]),y=Object.keys(h.agents||{}).length,z=Object.keys(h.categories||{}).length;return(0,m.jsxs)("form",{onSubmit:q(b=>{let d=new Date().toISOString();c({profile:{id:e?a.id:b.id,name:b.name,emoji:b.emoji,description:b.description||void 0,createdAt:e?a.createdAt:d,updatedAt:d,isDefault:!!e&&a.isDefault,isBuiltIn:!!e&&a.isBuiltIn},config:h}),g({type:"success",message:`Profile ${e?"updated":"created"} successfully`})}),className:"space-y-6","aria-label":"Profile editor form",children:[f&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===f.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===f.type?(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(as,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:f.message})]}),!e&&(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsxs)("label",{htmlFor:"profile-id",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:["Profile ID",(0,m.jsx)("span",{className:"ml-1 text-red-500",children:"*"})]}),(0,m.jsx)(a$,{name:"id",control:p,rules:{required:"Profile ID is required",pattern:{value:/^[a-zA-Z0-9_-]+$/,message:"Only alphanumeric characters, hyphens, and underscores allowed"}},render:({field:a})=>(0,m.jsx)("input",{id:"profile-id",type:"text",value:a.value,onChange:b=>a.onChange(b.target.value),placeholder:"e.g., my-custom-profile",className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-800 dark:bg-zinc-950"})}),s.id&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:s.id.message}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Unique identifier for this profile. Use only letters, numbers, hyphens, and underscores."})]}),e&&(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"profile-id-readonly",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Profile ID"}),(0,m.jsx)("input",{id:"profile-id-readonly",type:"text",value:a.id,disabled:!0,className:"w-full rounded-lg border border-zinc-200 bg-zinc-100 px-3 py-2 text-sm text-zinc-600 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-400"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Profile ID cannot be changed after creation."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsxs)("label",{htmlFor:"profile-name",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:["Name",(0,m.jsx)("span",{className:"ml-1 text-red-500",children:"*"})]}),(0,m.jsx)(a$,{name:"name",control:p,rules:{required:"Name is required",minLength:{value:1,message:"Name cannot be empty"}},render:({field:a})=>(0,m.jsx)("input",{id:"profile-name",type:"text",value:a.value,onChange:b=>a.onChange(b.target.value),placeholder:"e.g., My Custom Profile",className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-800 dark:bg-zinc-950"})}),s.name&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:s.name.message}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Display name for this profile."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Emoji Icon"}),(0,m.jsx)(a$,{name:"emoji",control:p,render:({field:a})=>(0,m.jsx)("div",{className:"flex flex-wrap gap-2",children:f6.map(b=>(0,m.jsx)("button",{type:"button",onClick:()=>a.onChange(b),className:`h-10 w-10 rounded-lg text-xl transition-all ${a.value===b?"bg-blue-100 ring-2 ring-blue-500 dark:bg-blue-900/30 dark:ring-blue-400":"bg-zinc-100 hover:bg-zinc-200 dark:bg-zinc-800 dark:hover:bg-zinc-700"}`,"aria-label":`Select ${b} emoji`,"aria-pressed":a.value===b,children:b},b))})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Choose an emoji to represent this profile."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"profile-description",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Description"}),(0,m.jsx)(a$,{name:"description",control:p,render:({field:a})=>(0,m.jsx)("textarea",{id:"profile-description",value:a.value,onChange:b=>a.onChange(b.target.value),rows:3,className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm resize-none dark:border-zinc-800 dark:bg-zinc-950",placeholder:"Optional description of this profile..."})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Optional description to help identify this profile."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Configuration"}),(0,m.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,m.jsxs)("button",{type:"button",onClick:w,className:"inline-flex items-center gap-2 rounded-lg border border-zinc-200 bg-white px-4 py-2 text-sm font-medium text-zinc-700 hover:bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800",children:[(0,m.jsx)(f4,{className:"h-4 w-4","aria-hidden":"true"}),"Import from Current Config"]}),e&&x&&(0,m.jsxs)("button",{type:"button",onClick:()=>{i(j),g({type:"success",message:"Configuration reset to original values"})},className:"inline-flex items-center gap-2 rounded-lg border border-zinc-200 bg-white px-4 py-2 text-sm font-medium text-zinc-700 hover:bg-zinc-50 hover:text-amber-600 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800 dark:hover:text-amber-400",children:[(0,m.jsx)(f5,{className:"h-4 w-4","aria-hidden":"true"}),"Reset to Original"]})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Import agent and category configurations from your current settings, or reset to the profile's original values."})]}),(0,m.jsxs)("div",{className:"rounded-lg border border-zinc-200 bg-zinc-50 p-4 dark:border-zinc-700 dark:bg-zinc-900",children:[(0,m.jsx)("h4",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100 mb-2",children:"Profile Preview"}),(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("span",{className:"text-3xl","aria-hidden":"true",children:v||"⚡"}),(0,m.jsxs)("div",{children:[(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:u||"Untitled Profile"}),(0,m.jsxs)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:[y," agent",1!==y?"s":"",", ",z," categor",1!==z?"ies":"y"," configured"]})]})]})]}),(0,m.jsxs)("div",{className:"rounded-lg border border-zinc-200 dark:border-zinc-700 overflow-hidden",children:[(0,m.jsxs)("button",{type:"button",onClick:()=>o(!l),className:"w-full flex items-center justify-between p-4 hover:bg-zinc-50 dark:hover:bg-zinc-800/50 transition-colors","aria-expanded":l,children:[(0,m.jsx)("span",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Configuration Details"}),(0,m.jsx)(eR,{className:`h-4 w-4 text-zinc-500 transition-transform duration-200 ${l?"rotate-180":""}`,"aria-hidden":"true"})]}),l&&(0,m.jsxs)("div",{className:"border-t border-zinc-200 dark:border-zinc-700 p-4 space-y-4",children:[(0,m.jsxs)("div",{children:[(0,m.jsxs)("h5",{className:"text-xs font-semibold text-zinc-500 dark:text-zinc-400 uppercase tracking-wide mb-2",children:["Agents (",y,")"]}),0===y?(0,m.jsx)("p",{className:"text-sm text-zinc-400 dark:text-zinc-500 italic",children:"No agents configured"}):(0,m.jsx)("ul",{className:"space-y-1.5",children:Object.entries(h.agents||{}).map(([a,b])=>(0,m.jsxs)("li",{className:"text-sm text-zinc-700 dark:text-zinc-300 flex items-center gap-2",children:[(0,m.jsx)("span",{className:"font-medium text-zinc-900 dark:text-zinc-100 min-w-[80px]",children:a}),(0,m.jsx)("span",{className:"text-zinc-400",children:"→"}),(0,m.jsxs)("span",{className:"text-zinc-600 dark:text-zinc-400",children:[b.model,void 0!==b.temperature&&` temp: ${b.temperature}`]})]},a))})]}),(0,m.jsxs)("div",{children:[(0,m.jsxs)("h5",{className:"text-xs font-semibold text-zinc-500 dark:text-zinc-400 uppercase tracking-wide mb-2",children:["Categories (",z,")"]}),0===z?(0,m.jsx)("p",{className:"text-sm text-zinc-400 dark:text-zinc-500 italic",children:"No categories configured"}):(0,m.jsx)("ul",{className:"space-y-1.5",children:Object.entries(h.categories||{}).map(([a,b])=>(0,m.jsxs)("li",{className:"text-sm text-zinc-700 dark:text-zinc-300 flex items-center gap-2",children:[(0,m.jsx)("span",{className:"font-medium text-zinc-900 dark:text-zinc-100 min-w-[80px]",children:a}),(0,m.jsx)("span",{className:"text-zinc-400",children:"→"}),(0,m.jsxs)("span",{className:"text-zinc-600 dark:text-zinc-400",children:[b.model,b.variant&&` (${b.variant})`,void 0!==b.temperature&&` temp: ${b.temperature}`]})]},a))})]})]})]}),(0,m.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-2",children:[(0,m.jsx)("button",{type:"button",onClick:d,className:"inline-flex items-center gap-2 rounded-lg border border-zinc-200 bg-white px-4 py-2 text-sm font-medium text-zinc-700 hover:bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800",children:"Cancel"}),(0,m.jsxs)("button",{type:"submit",disabled:t||!u.trim(),className:"inline-flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-blue-600 dark:hover:bg-blue-500",children:[t&&(0,m.jsx)(ar,{className:"h-4 w-4 animate-spin","aria-hidden":"true"}),e?"Save Changes":"Create Profile"]})]})]})}function f8({onSaveSuccess:a}){let b=(0,A.useQueryClient)(),[c,d]=n.useState(null),[e,f]=n.useState(void 0),[g,h]=n.useState(!1),[i,j]=n.useState(null),[k,l]=n.useState(null),{data:o,isLoading:p,isError:q,error:r}=E({queryKey:["profiles"],queryFn:async()=>{let a=await fetch("/api/profiles");if(!a.ok)throw Error("Failed to fetch profiles");return a.json()}});n.useEffect(()=>{o?.activeProfileId&&j(o.activeProfileId)},[o?.activeProfileId]),n.useEffect(()=>{if(k){let a=setTimeout(()=>l(null),3e3);return()=>clearTimeout(a)}},[k]);let s=aq({mutationFn:async a=>{let b=await fetch(`/api/profiles/${a}/apply`,{method:"POST"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to apply profile");return b.json()},onSuccess:(a,c)=>{b.invalidateQueries({queryKey:["profiles"]}),b.invalidateQueries({queryKey:["opencode-config"]}),j(c),l({type:"success",message:"Profile applied successfully"})},onError:a=>{l({type:"error",message:a.message})}}),t=aq({mutationFn:async({profile:a,config:b})=>{let c=await fetch("/api/profiles",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({profile:a,config:b})});if(!c.ok)throw Error((await c.json().catch(()=>({}))).error||"Failed to create profile");return c.json()},onSuccess:()=>{b.invalidateQueries({queryKey:["profiles"]}),l({type:"success",message:"Profile created successfully"}),h(!1),a?.()},onError:a=>{l({type:"error",message:a.message})}}),u=aq({mutationFn:async({id:a,profile:b,config:c})=>{let d=await fetch(`/api/profiles/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({profile:b,config:c})});if(!d.ok)throw Error((await d.json().catch(()=>({}))).error||"Failed to update profile");return d.json()},onSuccess:()=>{b.invalidateQueries({queryKey:["profiles"]}),l({type:"success",message:"Profile updated successfully"}),d(null),a?.()},onError:a=>{l({type:"error",message:a.message})}}),v=aq({mutationFn:async a=>{let b=await fetch(`/api/profiles/${a}`,{method:"DELETE"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to delete profile");return b.json()},onSuccess:()=>{b.invalidateQueries({queryKey:["profiles"]}),l({type:"success",message:"Profile deleted successfully"})},onError:a=>{l({type:"error",message:a.message})}}),w=async a=>{d(a),h(!1);try{let b=await fetch(`/api/profiles/${a.id}`);if(b.ok){let a=await b.json();f(a.config)}}catch{f(void 0)}};if(p)return(0,m.jsxs)("div",{className:"flex items-center justify-center py-12",children:[(0,m.jsx)(ar,{className:"h-6 w-6 animate-spin text-zinc-400"}),(0,m.jsx)("span",{className:"ml-2 text-sm text-zinc-500 dark:text-zinc-400",children:"Loading profiles..."})]});if(q)return(0,m.jsx)("div",{className:"rounded-lg border border-red-200 bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20",children:(0,m.jsxs)("div",{className:"flex items-center gap-2",children:[(0,m.jsx)(as,{className:"h-5 w-5 text-red-600 dark:text-red-400"}),(0,m.jsxs)("div",{children:[(0,m.jsx)("p",{className:"text-sm font-medium text-red-800 dark:text-red-300",children:"Failed to load profiles"}),(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",children:r instanceof Error?r.message:"An unknown error occurred"})]})]})});let x=o?.profiles??[],y=o?.activeProfileId??null;return(0,m.jsxs)("div",{className:"space-y-4",children:[k&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===k.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===k.type?(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(as,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:k.message})]}),c||g?(0,m.jsx)(f7,{profile:c??void 0,initialConfig:e,onSave:({profile:a,config:b})=>{g?t.mutate({profile:a,config:b}):c&&u.mutate({id:c.id,profile:a,config:b})},onCancel:()=>{d(null),f(void 0),h(!1)}}):(0,m.jsx)(f2,{profiles:x,activeProfileId:y,appliedProfileId:i,onApply:a=>{s.mutate(a)},onEdit:w,onDelete:a=>{v.mutate(a)},onCreateNew:()=>{h(!0),d(null)}})]})}let f9={sisyphus:["anthropic/claude-opus-4-6","glm-5","big-pickle"],prometheus:["anthropic/claude-opus-4-6","openai/gpt-5.4","google/gemini-3.1-pro"],metis:["anthropic/claude-opus-4-6","openai/gpt-5.4","google/gemini-3.1-pro"],atlas:["anthropic/claude-sonnet-4-6","openai/gpt-5.4"],hephaestus:["openai/gpt-5.3-codex"],oracle:["openai/gpt-5.4","google/gemini-3.1-pro","anthropic/claude-opus-4-6"],momus:["openai/gpt-5.4","anthropic/claude-opus-4-6","google/gemini-3.1-pro"],explore:["github-copilot/grok-code-fast-1","minimax-m2.5-free","anthropic/claude-haiku-4-5","opencode/gpt-5-nano"],librarian:["google/gemini-3-flash","minimax-m2.5-free","big-pickle"],default:["anthropic/claude-opus-4-6","openai/gpt-5.4"]};function ga({agentName:a="default",onSaveSuccess:b}){let c=(0,A.useQueryClient)(),[d,e]=n.useState(null),{data:f,isLoading:g}=E({queryKey:["opencode-config"],queryFn:async()=>{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch config");return a.json()}}),{control:h,handleSubmit:i,reset:j,formState:{isSubmitting:k}}=br({defaultValues:{model:"",temperature:.7,top_p:1,variant:"",prompt_append:""}}),{data:l}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models");if(!a.ok)throw Error("Failed to fetch models");return a.json()}}),o=n.useMemo(()=>new Set(l?.models??[]),[l]);n.useEffect(()=>{if(f){let b=f.agents?.[a]||{};j({model:b.model||"",temperature:b.temperature??.7,top_p:b.top_p??1,variant:b.variant||"",prompt_append:b.prompt_append||""})}},[f,a,j]),n.useEffect(()=>{if(d){let a=setTimeout(()=>e(null),3e3);return()=>clearTimeout(a)}},[d]);let p=aq({mutationFn:async b=>{let c=await fetch("/api/opencode-config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agents:{[a]:b}})});if(!c.ok)throw Error((await c.json()).error||"Failed to save config");return c.json()},onSuccess:()=>{c.invalidateQueries({queryKey:["opencode-config"]}),e({type:"success",message:"Configuration saved successfully"}),b?.()},onError:a=>{e({type:"error",message:a.message})}}),q=f?.agents?.[a],r=!!q?.model,s=q?.model,t=s&&o.size>0&&!o.has(s),u=!s,v=f9[a]||f9.default;return g?(0,m.jsxs)("div",{className:"flex items-center justify-center py-12",children:[(0,m.jsx)(ar,{className:"h-6 w-6 animate-spin text-zinc-400"}),(0,m.jsx)("span",{className:"ml-2 text-sm text-zinc-500",children:"Loading configuration..."})]}):(0,m.jsxs)("form",{onSubmit:i(a=>{p.mutate(a)}),className:"space-y-6","aria-label":"Agent configuration form",children:[r&&(0,m.jsx)("div",{className:"rounded-lg bg-blue-50 border border-blue-200 px-4 py-3 dark:bg-blue-900/20 dark:border-blue-800",children:(0,m.jsxs)("p",{className:"text-sm text-blue-800 dark:text-blue-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Preset applied:"})," This agent is configured with model ",(0,m.jsx)("span",{className:"font-mono bg-blue-100 dark:bg-blue-800 px-1.5 py-0.5 rounded",children:q.model}),q.variant&&(0,m.jsxs)("span",{children:[" (variant: ",q.variant,")"]})]})}),d&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===d.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===d.type?(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(as,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:d.message})]}),u&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-zinc-200 bg-zinc-50 px-4 py-3 dark:border-zinc-800 dark:bg-zinc-900/20",children:[(0,m.jsx)(as,{className:"mt-0.5 h-4 w-4 shrink-0 text-zinc-500 dark:text-zinc-400"}),(0,m.jsxs)("div",{className:"text-sm text-zinc-700 dark:text-zinc-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Using default fallback chain"})," — this agent will try models in priority order:",(0,m.jsx)("div",{className:"mt-2 flex flex-wrap items-center gap-1",children:v.map((a,b)=>(0,m.jsxs)(n.Fragment,{children:[(0,m.jsx)("code",{className:`rounded px-1.5 py-0.5 text-xs ${0===b?"bg-blue-100 text-blue-800 dark:bg-blue-900/50 dark:text-blue-200 font-medium":"bg-zinc-100 text-zinc-600 dark:bg-zinc-800 dark:text-zinc-400"}`,children:a}),b<v.length-1&&(0,m.jsx)("span",{className:"text-zinc-400 dark:text-zinc-500",children:"→"})]},a))}),(0,m.jsx)("p",{className:"mt-2 text-xs text-zinc-500 dark:text-zinc-400",children:"Select a model below to override the default behavior."})]})]}),t&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-amber-200 bg-amber-50 px-4 py-3 dark:border-amber-800 dark:bg-amber-900/20",children:[(0,m.jsx)(am,{className:"mt-0.5 h-4 w-4 shrink-0 text-amber-500 dark:text-amber-400"}),(0,m.jsxs)("p",{className:"text-sm text-amber-700 dark:text-amber-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Model unavailable"})," — ",(0,m.jsx)("code",{className:"rounded bg-amber-100 px-1 py-0.5 text-xs dark:bg-amber-800",children:s})," is missing from current providers. Please check your provider settings or select a different model."]})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"model-selector",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Model"}),(0,m.jsx)(a$,{name:"model",control:h,rules:{required:"Please select a model"},render:({field:a,fieldState:b})=>(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("div",{id:"model-selector",children:(0,m.jsx)(fY,{value:a.value,onValueChange:a.onChange,placeholder:"Select a model..."})}),b.error&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:b.error.message})]})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"The AI model used for this agent."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"variant-selector",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Variant"}),(0,m.jsx)(a$,{name:"variant",control:h,render:({field:a})=>(0,m.jsxs)("select",{id:"variant-selector",value:a.value,onChange:b=>a.onChange(b.target.value),className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-800 dark:bg-zinc-950",children:[(0,m.jsx)("option",{value:"",children:"Not set"}),(0,m.jsx)("option",{value:"max",children:"max"}),(0,m.jsx)("option",{value:"high",children:"high"}),(0,m.jsx)("option",{value:"medium",children:"medium"}),(0,m.jsx)("option",{value:"low",children:"low"}),(0,m.jsx)("option",{value:"xhigh",children:"xhigh"})]})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Model reasoning variant. Higher values mean more thinking."})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"temperature-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Temperature"}),(0,m.jsx)(a$,{name:"temperature",control:h,render:({field:a})=>(0,m.jsx)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:a.value.toFixed(1)})})]}),(0,m.jsx)(a$,{name:"temperature",control:h,render:({field:a})=>(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"temperature-slider",type:"range",min:0,max:2,step:.1,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Temperature slider"}),(0,m.jsx)("input",{type:"number",min:0,max:2,step:.1,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)||0),className:"w-16 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Temperature value"})]})}),(0,m.jsxs)("div",{className:"flex justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsx)("span",{children:"Precise (0)"}),(0,m.jsx)("span",{children:"Balanced (1)"}),(0,m.jsx)("span",{children:"Creative (2)"})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Controls randomness: lower values make responses more deterministic."})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"top-p-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Top P"}),(0,m.jsx)(a$,{name:"top_p",control:h,render:({field:a})=>(0,m.jsx)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:a.value.toFixed(2)})})]}),(0,m.jsx)(a$,{name:"top_p",control:h,render:({field:a})=>(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"top-p-slider",type:"range",min:0,max:1,step:.05,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Top P slider"}),(0,m.jsx)("input",{type:"number",min:0,max:1,step:.05,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)||0),className:"w-16 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Top P value"})]})}),(0,m.jsxs)("div",{className:"flex justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsx)("span",{children:"Diverse (0)"}),(0,m.jsx)("span",{children:"Default (1)"})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Controls nucleus sampling: lower values sample from more likely tokens."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"prompt-append",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Prompt Append"}),(0,m.jsx)(a$,{name:"prompt_append",control:h,render:({field:a})=>(0,m.jsx)("textarea",{id:"prompt-append",value:a.value,onChange:b=>a.onChange(b.target.value),rows:4,className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm resize-none dark:border-zinc-800 dark:bg-zinc-950",placeholder:"Additional system instructions to append..."})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Additional instructions appended to the system prompt."})]}),(0,m.jsx)("div",{className:"flex items-center justify-end gap-3 pt-2",children:(0,m.jsxs)("button",{type:"submit",disabled:k||p.isPending,className:"inline-flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-blue-600 dark:hover:bg-blue-500",children:[(k||p.isPending)&&(0,m.jsx)(ar,{className:"h-4 w-4 animate-spin","aria-hidden":"true"}),"Save Changes"]})})]})}let gb=[{key:"default",name:"Default",description:"Fallback configuration"},{key:"sisyphus",name:"Sisyphus",description:"Task execution agent"},{key:"hephaestus",name:"Hephaestus",description:"Build & automation"},{key:"prometheus",name:"Prometheus",description:"Planning agent"},{key:"oracle",name:"Oracle",description:"Knowledge & research"},{key:"metis",name:"Metis",description:"Strategy & consultation"},{key:"momus",name:"Momus",description:"Review & critique"},{key:"atlas",name:"Atlas",description:"Execution-focused"},{key:"librarian",name:"Librarian",description:"Documentation & exploration"},{key:"explore",name:"Explore",description:"Code navigation"}];function gc({open:a,onClose:b}){let[c,d]=n.useState("agents"),[e,f]=n.useState("default"),[g,h]=n.useState(""),i=n.useRef(null),{data:j}=E({queryKey:["opencode-config"],queryFn:async()=>{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch config");return a.json()},enabled:a}),{data:k}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models");if(!a.ok)throw Error("Failed to fetch models");return a.json()},enabled:a}),l=n.useMemo(()=>new Set(k?.models??[]),[k]),o=n.useCallback(a=>{let b=j?.agents?.[a];return b?.model?l.size>0&&!l.has(b.model)?"invalid":"ok":"unconfigured"},[j,l]),p=n.useMemo(()=>gb.filter(a=>"invalid"===o(a.key)).length,[o]);n.useEffect(()=>{if(!a)return;let c=a=>{"Escape"===a.key&&b()};return document.addEventListener("keydown",c),()=>document.removeEventListener("keydown",c)},[a,b]),n.useEffect(()=>{if(a){let a=window.getComputedStyle(document.body).overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=a}}},[a]),n.useEffect(()=>{a&&setTimeout(()=>i.current?.focus(),100)},[a]);let q=n.useMemo(()=>{if(!g.trim())return gb;let a=g.toLowerCase();return gb.filter(b=>b.name.toLowerCase().includes(a)||b.description.toLowerCase().includes(a))},[g]),r=gb.find(a=>a.key===e);return a?(0,m.jsxs)("div",{className:"fixed inset-0 z-50 flex flex-col bg-white dark:bg-zinc-950",children:[(0,m.jsxs)("header",{className:"flex h-16 items-center justify-between border-b border-zinc-200 px-6 dark:border-zinc-800",children:[(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("div",{className:"flex h-9 w-9 items-center justify-center rounded-lg bg-blue-600 text-white",children:(0,m.jsx)(ag,{className:"h-5 w-5"})}),(0,m.jsxs)("div",{children:[(0,m.jsx)("h1",{className:"text-lg font-semibold text-zinc-900 dark:text-zinc-100",children:"Agent Configuration"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Manage AI agent settings and preferences"})]})]}),(0,m.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-zinc-100 p-1 dark:bg-zinc-800",children:[(0,m.jsx)("button",{type:"button",onClick:()=>d("agents"),className:`rounded-md px-4 py-1.5 text-sm font-medium transition-colors ${"agents"===c?"bg-blue-600 text-white shadow-sm":"text-zinc-600 hover:bg-zinc-200 dark:text-zinc-400 dark:hover:bg-zinc-700"}`,children:"Agents"}),(0,m.jsx)("button",{type:"button",onClick:()=>d("categories"),className:`rounded-md px-4 py-1.5 text-sm font-medium transition-colors ${"categories"===c?"bg-blue-600 text-white shadow-sm":"text-zinc-600 hover:bg-zinc-200 dark:text-zinc-400 dark:hover:bg-zinc-700"}`,children:"Categories"}),(0,m.jsx)("button",{type:"button",onClick:()=>d("profiles"),className:`rounded-md px-4 py-1.5 text-sm font-medium transition-colors ${"profiles"===c?"bg-blue-600 text-white shadow-sm":"text-zinc-600 hover:bg-zinc-200 dark:text-zinc-400 dark:hover:bg-zinc-700"}`,children:"Profiles"})]}),(0,m.jsx)("button",{type:"button",onClick:b,className:"flex h-9 w-9 items-center justify-center rounded-lg text-zinc-500 transition-colors hover:bg-zinc-100 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-800 dark:hover:text-zinc-200","aria-label":"Close panel",children:(0,m.jsx)(ai,{className:"h-5 w-5"})})]}),"agents"===c?(0,m.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,m.jsxs)("aside",{className:"flex w-[280px] flex-col border-r border-zinc-200 bg-zinc-50/50 dark:border-zinc-800 dark:bg-zinc-900/20",children:[(0,m.jsx)("div",{className:"border-b border-zinc-200 p-4 dark:border-zinc-800",children:(0,m.jsxs)("div",{className:"relative",children:[(0,m.jsx)(aj,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-zinc-400"}),(0,m.jsx)("input",{ref:i,type:"text",value:g,onChange:a=>h(a.target.value),placeholder:"Search agents...",className:"h-10 w-full rounded-lg border border-zinc-200 bg-white pl-9 pr-4 text-sm text-zinc-900 placeholder:text-zinc-400 focus:border-blue-500 focus:outline-none focus:ring-1 focus:ring-blue-500 dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-100 dark:placeholder:text-zinc-600"})]})}),(0,m.jsxs)("nav",{className:"flex-1 overflow-y-auto p-2",children:[(0,m.jsx)("div",{className:"space-y-1",children:q.map(a=>{let b;return(0,m.jsxs)("button",{type:"button",onClick:()=>f(a.key),className:`flex w-full items-center gap-3 rounded-lg px-3 py-2.5 text-left transition-colors ${e===a.key?"bg-blue-600 text-white":"text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800"}`,children:[(0,m.jsx)("div",{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-md ${e===a.key?"bg-white/20":"bg-zinc-200 dark:bg-zinc-800"}`,children:(0,m.jsx)(ak,{className:`h-4 w-4 ${e===a.key?"text-white":"text-zinc-600 dark:text-zinc-400"}`})}),(0,m.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 truncate text-sm font-medium",children:[a.name,"unconfigured"===(b=o(a.key))?(0,m.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${e===a.key?"bg-zinc-300":"bg-zinc-400 dark:bg-zinc-500"}`,title:"Inherits category configuration"}):"invalid"===b?(0,m.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${e===a.key?"bg-amber-300":"bg-amber-500"}`,title:"Model not available"}):(0,m.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${e===a.key?"bg-emerald-300":"bg-emerald-500"}`,title:"Configured"})]}),(0,m.jsx)("div",{className:`truncate text-xs ${e===a.key?"text-blue-100":"text-zinc-500 dark:text-zinc-500"}`,children:a.description})]}),e===a.key&&(0,m.jsx)(al,{className:"h-4 w-4 shrink-0 text-blue-200"})]},a.key)})}),0===q.length&&(0,m.jsx)("div",{className:"py-8 text-center",children:(0,m.jsx)("p",{className:"text-sm text-zinc-500 dark:text-zinc-400",children:"No agents found"})})]}),(0,m.jsx)("div",{className:"border-t border-zinc-200 p-4 dark:border-zinc-800",children:(0,m.jsxs)("div",{className:"flex items-center justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsxs)("span",{className:"flex items-center gap-1.5",children:[gb.length," agents",p>0&&(0,m.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-amber-100 px-1.5 py-0.5 text-[10px] font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:[(0,m.jsx)(am,{className:"h-2.5 w-2.5"}),p," need attention"]})]}),(0,m.jsx)("kbd",{className:"rounded bg-zinc-200 px-1.5 py-0.5 font-mono dark:bg-zinc-800",children:"ESC"})]})})]}),(0,m.jsx)("main",{className:"flex-1 overflow-y-auto bg-white dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"mx-auto max-w-3xl p-8",children:[(0,m.jsxs)("div",{className:"mb-8 flex items-center gap-4",children:[(0,m.jsx)("div",{className:"flex h-16 w-16 items-center justify-center rounded-2xl bg-gradient-to-br from-blue-500 to-indigo-600 text-white shadow-lg",children:(0,m.jsx)(ak,{className:"h-8 w-8"})}),(0,m.jsxs)("div",{children:[(0,m.jsx)("h2",{className:"text-2xl font-bold text-zinc-900 dark:text-zinc-100",children:r?.name}),(0,m.jsx)("p",{className:"text-zinc-500 dark:text-zinc-400",children:r?.description})]})]}),(0,m.jsx)(ga,{agentName:e})]})})]}):"categories"===c?(0,m.jsx)("main",{className:"flex-1 overflow-y-auto bg-white dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"mx-auto max-w-4xl p-8",children:[(0,m.jsxs)("div",{className:"mb-8",children:[(0,m.jsx)("h2",{className:"text-2xl font-bold text-zinc-900 dark:text-zinc-100",children:"Categories"}),(0,m.jsx)("p",{className:"text-zinc-500 dark:text-zinc-400",children:"Manage agent categories and their configurations"})]}),(0,m.jsx)(f_,{})]})}):(0,m.jsx)("main",{className:"flex-1 overflow-y-auto bg-white dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"mx-auto max-w-4xl p-8",children:[(0,m.jsxs)("div",{className:"mb-8",children:[(0,m.jsx)("h2",{className:"text-2xl font-bold text-zinc-900 dark:text-zinc-100",children:"Profiles"}),(0,m.jsx)("p",{className:"text-zinc-500 dark:text-zinc-400",children:"Manage configuration profiles for different agent setups"})]}),(0,m.jsx)(f8,{})]})})]}):null}let gd=[{label:"1d",days:1},{label:"3d",days:3},{label:"7d",days:7},{label:"30d",days:30},{label:"All",days:0}],ge="opencode --port <PORT>";function gf(){let a,b,c,d,e,f,g,h,i,j;a=(0,A.useQueryClient)(),b=(0,n.useRef)(null),c=(0,n.useRef)(0),d=(0,n.useRef)(null),e=(0,n.useRef)(null),f=(0,n.useRef)(!1),g=(0,n.useRef)(!0),h=(0,n.useRef)(null),i=(0,n.useCallback)(()=>{d.current||(d.current=setTimeout(()=>{a.invalidateQueries({queryKey:["sessions"]}),d.current=null},500))},[a]),j=(0,n.useCallback)(b=>{let c="payload"in b?b.payload:b;if(!c?.type)return void i();let d=c.properties?.sessionID;["session.status","session.updated","session.created","session.deleted","question.asked","permission.asked","permission.updated","question.replied","question.rejected","permission.replied","session.archived"].includes(c.type)?a.setQueryData(["sessions"],a=>{if(!a?.sessions)return i(),a;switch(c.type){case"session.updated":case"session.created":{let b=c.properties?.info;if(!b)return i(),a;if(b.parentID){let c=!1,d=a.sessions.map(a=>{let d=a.children?.some(a=>a.id===b.id),e=a.id===b.parentID;if(!d&&!e)return a;c=!0;let f=a.children||[],g=f.find(a=>a.id===b.id),h=_({...g,...b,realTimeStatus:b.realTimeStatus??g?.realTimeStatus??"busy",waitingForUser:b.waitingForUser??g?.waitingForUser});return g?{...a,children:f.map(a=>a.id===b.id?h:a)}:{...a,children:[...f,h]}});if(!c)return i(),a;return{...a,sessions:d}}let d=a.sessions.find(a=>a.id===b.id);if(!d)return i(),{...a,sessions:[_(b),...a.sessions]};let e={...b,projectName:d.projectName,branch:d.branch,realTimeStatus:b.realTimeStatus??d.realTimeStatus,waitingForUser:b.waitingForUser??d.waitingForUser,children:d.children};return{...a,sessions:a.sessions.map(a=>a.id===b.id?e:a)}}case"session.deleted":{let b=c.properties?.info,d=b?.id??c.properties?.sessionID;if(!d)return i(),a;return{...a,sessions:a.sessions.filter(a=>a.id!==d)}}default:{if(!d)return i(),a;let b=a=>{switch(c.type){case"session.status":{let b=c.properties?.status?.type;if(!b)return a;let d=a.realTimeStatus,e=!a.parentID;return"retry"!==b||g.current||S("play-alert","Skipped playAlertSound() because muted","playAlertSound() failed",(a,b)=>{let c=a.createOscillator(),d=a.createGain();c.type="triangle",c.frequency.setValueAtTime(880,b),c.frequency.exponentialRampToValueAtTime(698,b+.25),d.gain.setValueAtTime(.3,b),d.gain.exponentialRampToValueAtTime(.001,b+.35),c.connect(d),d.connect(a.destination),c.start(b),c.stop(b+.35);let e=a.createOscillator(),f=a.createGain();e.type="triangle",e.frequency.setValueAtTime(698,b+.2),e.frequency.exponentialRampToValueAtTime(523,b+.45),f.gain.setValueAtTime(.25,b+.2),f.gain.exponentialRampToValueAtTime(.001,b+.5),e.connect(f),f.connect(a.destination),e.start(b+.2),e.stop(b+.5)}),"idle"!==b||g.current||a.parentID||"busy"!==d&&"retry"!==d||V(),"idle"===b&&$(a.id,!1),"retry"===b&&$(a.id,!0),"idle"===b&&e&&(a.children?.length||0)>0&&i(),{...a,realTimeStatus:b,waitingForUser:"retry"===b||"idle"!==b&&a.waitingForUser,children:a.children}}case"question.asked":case"permission.asked":return g.current||U(),$(d,!0),{...a,waitingForUser:!0};case"permission.updated":return i(),a;case"question.replied":case"question.rejected":case"permission.replied":return $(d,!1),{...a,waitingForUser:!1};case"session.archived":return{...a,time:{...a.time||{},archived:Date.now()}};default:return a}},e=!1,f=a.sessions.map(a=>a.id===d?(e=!0,b(a)):a.children?.some(a=>a.id===d)?(e=!0,"session.status"===c.type&&c.properties?.status?.type==="idle")?{...a,children:a.children.filter(a=>a.id!==d)}:{...a,children:a.children.map(a=>a.id===d?b(a):a)}:a);if(!e)return i(),a;return{...a,sessions:f}}}}):i()},[a,i]),(0,n.useEffect)(()=>(h.current=setTimeout(()=>{g.current=!1},3e3),()=>{h.current&&clearTimeout(h.current)}),[]),(0,n.useEffect)(()=>{let a=null,d=()=>{b.current&&(clearTimeout(b.current),b.current=null),e.current&&(clearTimeout(e.current),e.current=null),(a=new EventSource("/api/opencode-events")).onopen=()=>{c.current=0,f.current=!1,e.current=setTimeout(()=>{a&&(f.current=!0,a.close(),i(),d())},15e3)},a.onmessage=a=>{try{let b=JSON.parse(a.data);j(b),c.current=0}catch(a){console.error("Failed to parse SSE event:",a)}},a.onerror=()=>{if(a?.close(),e.current&&(clearTimeout(e.current),e.current=null),f.current){f.current=!1;return}c.current<5&&(b.current=setTimeout(()=>{c.current++,d()},1e3*Math.pow(2,c.current)))}};return d(),()=>{a?.close(),b.current&&(clearTimeout(b.current),b.current=null),e.current&&(clearTimeout(e.current),e.current=null)}},[j,i]);let[k,l]=(0,n.useState)(7),[o,p]=(0,n.useState)(()=>!1),[q,r]=(0,n.useState)([]),[s,t]=(0,n.useState)(!1),[u,v]=(0,n.useState)("idle"),[w,x]=(0,n.useState)(!1),y=(0,n.useRef)(null),z=(0,n.useRef)(null),B=(0,n.useMemo)(()=>Array.from(new Set(q.map(a=>a.projectName))),[q]),C=q.length>0,D=1===B.length?`${B[0]} has an OpenCode process without an exposed API port.`:`${B.length} projects have OpenCode processes without exposed API ports.`;(0,n.useEffect)(()=>{let a=()=>{T(),document.removeEventListener("click",a),document.removeEventListener("pointerdown",a),document.removeEventListener("keydown",a),document.removeEventListener("touchstart",a)};return document.addEventListener("click",a),document.addEventListener("pointerdown",a,{passive:!0}),document.addEventListener("keydown",a),document.addEventListener("touchstart",a,{passive:!0}),()=>{document.removeEventListener("click",a),document.removeEventListener("pointerdown",a),document.removeEventListener("keydown",a),document.removeEventListener("touchstart",a)}},[]),(0,n.useEffect)(()=>{if(!s||!C)return;let a=a=>{let b=a.target,c=z.current,d=y.current;c?.contains(b)||d?.contains(b)||t(!1)},b=a=>{"Escape"===a.key&&(t(!1),y.current?.focus())};return document.addEventListener("mousedown",a),document.addEventListener("keydown",b),()=>{document.removeEventListener("mousedown",a),document.removeEventListener("keydown",b)}},[C,s]);let E=async()=>{try{await navigator.clipboard.writeText(ge),v("copied"),setTimeout(()=>v("idle"),1500)}catch{v("failed"),setTimeout(()=>v("idle"),2e3)}};return(0,m.jsx)("div",{className:"min-h-screen bg-zinc-50 dark:bg-black",children:(0,m.jsxs)("main",{className:"h-screen flex flex-col",children:[(0,m.jsxs)("header",{className:"flex items-center justify-between px-4 py-4 border-b border-gray-200 dark:border-zinc-800",children:[(0,m.jsx)("h1",{className:"text-2xl font-semibold text-gray-900 dark:text-white",children:"VibePulse"}),(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("button",{type:"button",onClick:()=>{T();let a=!o;p(a),a||S("play-toggle-feedback","Skipped playToggleFeedbackSound() because muted","playToggleFeedbackSound() failed",(a,b)=>{let c=a.createOscillator(),d=a.createGain();c.type="sine",c.frequency.setValueAtTime(740,b),c.frequency.exponentialRampToValueAtTime(920,b+.1),d.gain.setValueAtTime(.13,b),d.gain.exponentialRampToValueAtTime(.001,b+.13),c.connect(d),d.connect(a.destination),c.start(b),c.stop(b+.13)})},className:`p-1.5 rounded-lg transition-all duration-150 ${o?"text-gray-400 dark:text-gray-500 hover:text-gray-600 dark:hover:text-gray-300 hover:bg-gray-100 dark:hover:bg-zinc-800":"text-blue-500 dark:text-blue-400 hover:text-blue-600 dark:hover:text-blue-300 hover:bg-blue-50 dark:hover:bg-blue-900/20"}`,title:o?"Unmute notifications":"Mute notifications",children:o?(0,m.jsxs)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:[(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5.586 15H4a1 1 0 01-1-1v-4a1 1 0 011-1h1.586l4.707-4.707C10.923 3.663 12 4.109 12 5v14c0 .891-1.077 1.337-1.707.707L5.586 15z"}),(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2"})]}):(0,m.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15.536 8.464a5 5 0 010 7.072M18.364 5.636a9 9 0 010 12.728M5.586 15H4a1 1 0 01-1-1v-4a1 1 0 011-1h1.586l4.707-4.707C10.923 3.663 12 4.109 12 5v14c0 .891-1.077 1.337-1.707.707L5.586 15z"})})}),C?(0,m.jsxs)("div",{className:"relative",children:[(0,m.jsx)("button",{ref:y,type:"button",onClick:()=>t(a=>!a),className:`p-1.5 rounded-lg transition-all duration-150 text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:bg-gray-100 dark:hover:bg-zinc-800 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 ${s?"bg-gray-100 dark:bg-zinc-800":""}`,"aria-label":"OpenCode process hint details","aria-haspopup":"dialog","aria-expanded":C&&s,"aria-controls":"process-hint-popover",children:(0,m.jsx)(af,{className:"h-3.5 w-3.5"})}),C&&s?(0,m.jsxs)("div",{id:"process-hint-popover",ref:z,role:"dialog","aria-label":"OpenCode process hints",className:"absolute right-0 top-9 z-30 w-80 rounded-lg border border-blue-200 bg-white p-3 shadow-xl dark:border-blue-900/40 dark:bg-zinc-900",children:[(0,m.jsx)("p",{className:"text-xs font-medium text-blue-900 dark:text-blue-200",children:D}),(0,m.jsx)("p",{className:"mt-1 text-[11px] leading-relaxed text-blue-800 dark:text-blue-300",children:"Sessions from these instances become visible once OpenCode starts with an exposed API port."}),(0,m.jsx)("div",{className:"mt-2 rounded-md bg-blue-50 px-2 py-1.5 dark:bg-blue-900/20",children:(0,m.jsx)("code",{className:"text-[11px] text-blue-900 dark:text-blue-200",children:ge})}),(0,m.jsxs)("div",{className:"mt-2 flex items-center justify-between gap-2",children:[(0,m.jsx)("span",{className:"text-[10px] text-blue-700 dark:text-blue-300",children:"VibePulse auto-detects active ports."}),(0,m.jsx)("button",{type:"button",onClick:E,className:"rounded-md border border-blue-200 px-2 py-1 text-[10px] font-medium text-blue-800 transition-colors hover:bg-blue-50 dark:border-blue-900/40 dark:text-blue-200 dark:hover:bg-blue-900/30",children:"copied"===u?"Copied":"failed"===u?"Copy Failed":"Copy"})]})]}):null]}):null,(0,m.jsx)("svg",{className:"w-4 h-4 text-gray-500 dark:text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})}),(0,m.jsx)("div",{className:"flex items-center gap-1 bg-gray-100 dark:bg-zinc-800 rounded-lg p-0.5",children:gd.map(a=>(0,m.jsx)("button",{type:"button",onClick:()=>l(a.days),className:`px-3 py-1 text-xs font-medium rounded-md transition-all duration-150 ${k===a.days?"bg-white dark:bg-zinc-600 text-gray-900 dark:text-white shadow-sm":"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200"}`,children:a.label},a.days))}),(0,m.jsx)(ah,{onClick:()=>x(!0)})]})]}),(0,m.jsx)(Z,{children:(0,m.jsx)(X,{filterDays:k,onProcessHintsChange:r})}),(0,m.jsx)(gc,{open:w,onClose:()=>x(!1)})]})})}a.s(["default",()=>gf],40777)}];
13
+ `,children:c?"Reset":b?"Active":"Apply"}),(0,m.jsxs)("div",{className:"flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity",children:[(0,m.jsx)("button",{type:"button",onClick:e,className:"p-1.5 rounded-md text-zinc-400 hover:text-zinc-700 hover:bg-zinc-100 dark:text-zinc-500 dark:hover:text-zinc-200 dark:hover:bg-zinc-800 transition-colors","aria-label":`Edit ${a.name}`,title:`Edit ${a.name}`,children:(0,m.jsxs)("svg",{className:"h-3.5 w-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,role:"img",children:[(0,m.jsx)("title",{children:"Edit"}),(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z"})]})}),!a.isBuiltIn&&!a.isDefault&&(0,m.jsx)("button",{type:"button",onClick:f,className:"p-1.5 rounded-md text-zinc-400 hover:text-red-600 hover:bg-red-50 dark:text-zinc-500 dark:hover:text-red-400 dark:hover:bg-red-900/20 transition-colors","aria-label":`Delete ${a.name}`,title:`Delete ${a.name}`,children:(0,m.jsxs)("svg",{className:"h-3.5 w-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,role:"img",children:[(0,m.jsx)("title",{children:"Delete"}),(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})]})})]})]})]})}let f5=af("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]),f6=af("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]),f7=["⚡","🔥","💎","🚀","🎯","💡","🔧","🎨","📊","🤖","👾","💻","⚙️","🔍","✨","🌟","🎭","🎪","🧩","🎲","📚","🔐","🛠️","⚡️","🌊","🔮","📡","🎸","🏆","🌈"];function f8({profile:a,initialConfig:b,onSave:c,onCancel:d}){let e=!!a,[f,g]=n.useState(null),[h,i]=n.useState(b||{agents:{}}),[j,k]=n.useState(b||{agents:{}});n.useEffect(()=>{b&&(i(b),k(b))},[b]);let[l,o]=n.useState(!1),{control:p,handleSubmit:q,watch:r,formState:{errors:s,isSubmitting:t}}=bs({defaultValues:{id:a?.id||"",name:a?.name||"",emoji:a?.emoji||"⚡",description:a?.description||""}}),u=r("name"),v=r("emoji");n.useEffect(()=>{if(f){let a=setTimeout(()=>g(null),3e3);return()=>clearTimeout(a)}},[f]);let w=async()=>{try{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch configuration");let b=await a.json(),c={agents:b.agents||{},categories:b.categories};i(c),g({type:"success",message:"Configuration imported successfully"})}catch{g({type:"error",message:"Failed to import configuration"})}},x=n.useMemo(()=>JSON.stringify(h)!==JSON.stringify(j),[h,j]),y=Object.keys(h.agents||{}).length,z=Object.keys(h.categories||{}).length;return(0,m.jsxs)("form",{onSubmit:q(b=>{let d=new Date().toISOString();c({profile:{id:e?a.id:b.id,name:b.name,emoji:b.emoji,description:b.description||void 0,createdAt:e?a.createdAt:d,updatedAt:d,isDefault:!!e&&a.isDefault,isBuiltIn:!!e&&a.isBuiltIn},config:h}),g({type:"success",message:`Profile ${e?"updated":"created"} successfully`})}),className:"space-y-6","aria-label":"Profile editor form",children:[f&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===f.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===f.type?(0,m.jsx)(au,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:f.message})]}),!e&&(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsxs)("label",{htmlFor:"profile-id",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:["Profile ID",(0,m.jsx)("span",{className:"ml-1 text-red-500",children:"*"})]}),(0,m.jsx)(a_,{name:"id",control:p,rules:{required:"Profile ID is required",pattern:{value:/^[a-zA-Z0-9_-]+$/,message:"Only alphanumeric characters, hyphens, and underscores allowed"}},render:({field:a})=>(0,m.jsx)("input",{id:"profile-id",type:"text",value:a.value,onChange:b=>a.onChange(b.target.value),placeholder:"e.g., my-custom-profile",className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-800 dark:bg-zinc-950"})}),s.id&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:s.id.message}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Unique identifier for this profile. Use only letters, numbers, hyphens, and underscores."})]}),e&&(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"profile-id-readonly",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Profile ID"}),(0,m.jsx)("input",{id:"profile-id-readonly",type:"text",value:a.id,disabled:!0,className:"w-full rounded-lg border border-zinc-200 bg-zinc-100 px-3 py-2 text-sm text-zinc-600 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-400"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Profile ID cannot be changed after creation."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsxs)("label",{htmlFor:"profile-name",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:["Name",(0,m.jsx)("span",{className:"ml-1 text-red-500",children:"*"})]}),(0,m.jsx)(a_,{name:"name",control:p,rules:{required:"Name is required",minLength:{value:1,message:"Name cannot be empty"}},render:({field:a})=>(0,m.jsx)("input",{id:"profile-name",type:"text",value:a.value,onChange:b=>a.onChange(b.target.value),placeholder:"e.g., My Custom Profile",className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-800 dark:bg-zinc-950"})}),s.name&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:s.name.message}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Display name for this profile."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Emoji Icon"}),(0,m.jsx)(a_,{name:"emoji",control:p,render:({field:a})=>(0,m.jsx)("div",{className:"flex flex-wrap gap-2",children:f7.map(b=>(0,m.jsx)("button",{type:"button",onClick:()=>a.onChange(b),className:`h-10 w-10 rounded-lg text-xl transition-all ${a.value===b?"bg-blue-100 ring-2 ring-blue-500 dark:bg-blue-900/30 dark:ring-blue-400":"bg-zinc-100 hover:bg-zinc-200 dark:bg-zinc-800 dark:hover:bg-zinc-700"}`,"aria-label":`Select ${b} emoji`,"aria-pressed":a.value===b,children:b},b))})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Choose an emoji to represent this profile."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"profile-description",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Description"}),(0,m.jsx)(a_,{name:"description",control:p,render:({field:a})=>(0,m.jsx)("textarea",{id:"profile-description",value:a.value,onChange:b=>a.onChange(b.target.value),rows:3,className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm resize-none dark:border-zinc-800 dark:bg-zinc-950",placeholder:"Optional description of this profile..."})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Optional description to help identify this profile."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Configuration"}),(0,m.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,m.jsxs)("button",{type:"button",onClick:w,className:"inline-flex items-center gap-2 rounded-lg border border-zinc-200 bg-white px-4 py-2 text-sm font-medium text-zinc-700 hover:bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800",children:[(0,m.jsx)(f5,{className:"h-4 w-4","aria-hidden":"true"}),"Import from Current Config"]}),e&&x&&(0,m.jsxs)("button",{type:"button",onClick:()=>{i(j),g({type:"success",message:"Configuration reset to original values"})},className:"inline-flex items-center gap-2 rounded-lg border border-zinc-200 bg-white px-4 py-2 text-sm font-medium text-zinc-700 hover:bg-zinc-50 hover:text-amber-600 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800 dark:hover:text-amber-400",children:[(0,m.jsx)(f6,{className:"h-4 w-4","aria-hidden":"true"}),"Reset to Original"]})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Import agent and category configurations from your current settings, or reset to the profile's original values."})]}),(0,m.jsxs)("div",{className:"rounded-lg border border-zinc-200 bg-zinc-50 p-4 dark:border-zinc-700 dark:bg-zinc-900",children:[(0,m.jsx)("h4",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100 mb-2",children:"Profile Preview"}),(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("span",{className:"text-3xl","aria-hidden":"true",children:v||"⚡"}),(0,m.jsxs)("div",{children:[(0,m.jsx)("p",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:u||"Untitled Profile"}),(0,m.jsxs)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:[y," agent",1!==y?"s":"",", ",z," categor",1!==z?"ies":"y"," configured"]})]})]})]}),(0,m.jsxs)("div",{className:"rounded-lg border border-zinc-200 dark:border-zinc-700 overflow-hidden",children:[(0,m.jsxs)("button",{type:"button",onClick:()=>o(!l),className:"w-full flex items-center justify-between p-4 hover:bg-zinc-50 dark:hover:bg-zinc-800/50 transition-colors","aria-expanded":l,children:[(0,m.jsx)("span",{className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Configuration Details"}),(0,m.jsx)(eS,{className:`h-4 w-4 text-zinc-500 transition-transform duration-200 ${l?"rotate-180":""}`,"aria-hidden":"true"})]}),l&&(0,m.jsxs)("div",{className:"border-t border-zinc-200 dark:border-zinc-700 p-4 space-y-4",children:[(0,m.jsxs)("div",{children:[(0,m.jsxs)("h5",{className:"text-xs font-semibold text-zinc-500 dark:text-zinc-400 uppercase tracking-wide mb-2",children:["Agents (",y,")"]}),0===y?(0,m.jsx)("p",{className:"text-sm text-zinc-400 dark:text-zinc-500 italic",children:"No agents configured"}):(0,m.jsx)("ul",{className:"space-y-1.5",children:Object.entries(h.agents||{}).map(([a,b])=>(0,m.jsxs)("li",{className:"text-sm text-zinc-700 dark:text-zinc-300 flex items-center gap-2",children:[(0,m.jsx)("span",{className:"font-medium text-zinc-900 dark:text-zinc-100 min-w-[80px]",children:a}),(0,m.jsx)("span",{className:"text-zinc-400",children:"→"}),(0,m.jsxs)("span",{className:"text-zinc-600 dark:text-zinc-400",children:[b.model,void 0!==b.temperature&&` temp: ${b.temperature}`]})]},a))})]}),(0,m.jsxs)("div",{children:[(0,m.jsxs)("h5",{className:"text-xs font-semibold text-zinc-500 dark:text-zinc-400 uppercase tracking-wide mb-2",children:["Categories (",z,")"]}),0===z?(0,m.jsx)("p",{className:"text-sm text-zinc-400 dark:text-zinc-500 italic",children:"No categories configured"}):(0,m.jsx)("ul",{className:"space-y-1.5",children:Object.entries(h.categories||{}).map(([a,b])=>(0,m.jsxs)("li",{className:"text-sm text-zinc-700 dark:text-zinc-300 flex items-center gap-2",children:[(0,m.jsx)("span",{className:"font-medium text-zinc-900 dark:text-zinc-100 min-w-[80px]",children:a}),(0,m.jsx)("span",{className:"text-zinc-400",children:"→"}),(0,m.jsxs)("span",{className:"text-zinc-600 dark:text-zinc-400",children:[b.model,b.variant&&` (${b.variant})`,void 0!==b.temperature&&` temp: ${b.temperature}`]})]},a))})]})]})]}),(0,m.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-2",children:[(0,m.jsx)("button",{type:"button",onClick:d,className:"inline-flex items-center gap-2 rounded-lg border border-zinc-200 bg-white px-4 py-2 text-sm font-medium text-zinc-700 hover:bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-300 dark:hover:bg-zinc-800",children:"Cancel"}),(0,m.jsxs)("button",{type:"submit",disabled:t||!u.trim(),className:"inline-flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-blue-600 dark:hover:bg-blue-500",children:[t&&(0,m.jsx)(as,{className:"h-4 w-4 animate-spin","aria-hidden":"true"}),e?"Save Changes":"Create Profile"]})]})]})}async function f9(){let a=new AbortController,b=setTimeout(()=>a.abort(),8e3);try{let b=await fetch("/api/profiles",{signal:a.signal});if(!b.ok)throw Error("Failed to fetch profiles");return b.json()}catch(a){if(a instanceof Error&&"AbortError"===a.name)throw Error("Loading profiles timed out. Please try again.");throw a}finally{clearTimeout(b)}}function ga({onSaveSuccess:a}){let b=(0,A.useQueryClient)(),[c,d]=n.useState(null),[e,f]=n.useState(void 0),[g,h]=n.useState(!1),[i,j]=n.useState(null),[k,l]=n.useState(null),{data:o,isLoading:p,isError:q,error:r}=E({queryKey:["profiles"],queryFn:f9,retry:!1});n.useEffect(()=>{o?.activeProfileId&&j(o.activeProfileId)},[o?.activeProfileId]),n.useEffect(()=>{if(k){let a=setTimeout(()=>l(null),3e3);return()=>clearTimeout(a)}},[k]);let s=ar({mutationFn:async a=>{let b=await fetch(`/api/profiles/${a}/apply`,{method:"POST"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to apply profile");return b.json()},onSuccess:(a,c)=>{b.invalidateQueries({queryKey:["profiles"]}),b.invalidateQueries({queryKey:["opencode-config"]}),j(c),l({type:"success",message:"Profile applied successfully"})},onError:a=>{l({type:"error",message:a.message})}}),t=ar({mutationFn:async({profile:a,config:b})=>{let c=await fetch("/api/profiles",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({profile:a,config:b})});if(!c.ok)throw Error((await c.json().catch(()=>({}))).error||"Failed to create profile");return c.json()},onSuccess:()=>{b.invalidateQueries({queryKey:["profiles"]}),l({type:"success",message:"Profile created successfully"}),h(!1),a?.()},onError:a=>{l({type:"error",message:a.message})}}),u=ar({mutationFn:async({id:a,profile:b,config:c})=>{let d=await fetch(`/api/profiles/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({profile:b,config:c})});if(!d.ok)throw Error((await d.json().catch(()=>({}))).error||"Failed to update profile");return d.json()},onSuccess:()=>{b.invalidateQueries({queryKey:["profiles"]}),l({type:"success",message:"Profile updated successfully"}),d(null),a?.()},onError:a=>{l({type:"error",message:a.message})}}),v=ar({mutationFn:async a=>{let b=await fetch(`/api/profiles/${a}`,{method:"DELETE"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to delete profile");return b.json()},onSuccess:()=>{b.invalidateQueries({queryKey:["profiles"]}),l({type:"success",message:"Profile deleted successfully"})},onError:a=>{l({type:"error",message:a.message})}}),w=async a=>{d(a),h(!1);try{let b=await fetch(`/api/profiles/${a.id}`);if(b.ok){let a=await b.json();f(a.config)}}catch{f(void 0)}};if(p)return(0,m.jsxs)("div",{className:"flex items-center justify-center py-12",children:[(0,m.jsx)(as,{className:"h-6 w-6 animate-spin text-zinc-400"}),(0,m.jsx)("span",{className:"ml-2 text-sm text-zinc-500 dark:text-zinc-400",children:"Loading profiles..."})]});if(q)return(0,m.jsx)("div",{className:"rounded-lg border border-red-200 bg-red-50 p-4 dark:border-red-800 dark:bg-red-900/20",children:(0,m.jsxs)("div",{className:"flex items-center gap-2",children:[(0,m.jsx)(at,{className:"h-5 w-5 text-red-600 dark:text-red-400"}),(0,m.jsxs)("div",{children:[(0,m.jsx)("p",{className:"text-sm font-medium text-red-800 dark:text-red-300",children:"Failed to load profiles"}),(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",children:r instanceof Error?r.message:"An unknown error occurred"})]})]})});let x=o?.profiles??[],y=o?.activeProfileId??null;return(0,m.jsxs)("div",{className:"space-y-4",children:[k&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===k.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===k.type?(0,m.jsx)(au,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:k.message})]}),c||g?(0,m.jsx)(f8,{profile:c??void 0,initialConfig:e,onSave:({profile:a,config:b})=>{g?t.mutate({profile:a,config:b}):c&&u.mutate({id:c.id,profile:a,config:b})},onCancel:()=>{d(null),f(void 0),h(!1)}}):(0,m.jsx)(f3,{profiles:x,activeProfileId:y,appliedProfileId:i,onApply:a=>{s.mutate(a)},onEdit:w,onDelete:a=>{v.mutate(a)},onCreateNew:()=>{h(!0),d(null)}})]})}let gb={sisyphus:["anthropic/claude-opus-4-6","glm-5","big-pickle"],prometheus:["anthropic/claude-opus-4-6","openai/gpt-5.4","google/gemini-3.1-pro"],metis:["anthropic/claude-opus-4-6","openai/gpt-5.4","google/gemini-3.1-pro"],atlas:["anthropic/claude-sonnet-4-6","openai/gpt-5.4"],hephaestus:["openai/gpt-5.3-codex"],oracle:["openai/gpt-5.4","google/gemini-3.1-pro","anthropic/claude-opus-4-6"],momus:["openai/gpt-5.4","anthropic/claude-opus-4-6","google/gemini-3.1-pro"],explore:["github-copilot/grok-code-fast-1","minimax-m2.5-free","anthropic/claude-haiku-4-5","opencode/gpt-5-nano"],librarian:["google/gemini-3-flash","minimax-m2.5-free","big-pickle"],default:["anthropic/claude-opus-4-6","openai/gpt-5.4"]};function gc({agentName:a="default",onSaveSuccess:b}){let c=(0,A.useQueryClient)(),[d,e]=n.useState(null),{data:f,isLoading:g}=E({queryKey:["opencode-config"],queryFn:async()=>{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch config");return a.json()}}),{control:h,handleSubmit:i,reset:j,formState:{isSubmitting:k}}=bs({defaultValues:{model:"",temperature:.7,top_p:1,variant:"",prompt_append:""}}),{data:l}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models");if(!a.ok)throw Error("Failed to fetch models");return a.json()}}),o=n.useMemo(()=>new Set(l?.models??[]),[l]);n.useEffect(()=>{if(f){let b=f.agents?.[a]||{};j({model:b.model||"",temperature:b.temperature??.7,top_p:b.top_p??1,variant:b.variant||"",prompt_append:b.prompt_append||""})}},[f,a,j]),n.useEffect(()=>{if(d){let a=setTimeout(()=>e(null),3e3);return()=>clearTimeout(a)}},[d]);let p=ar({mutationFn:async b=>{let c=await fetch("/api/opencode-config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agents:{[a]:b}})});if(!c.ok)throw Error((await c.json()).error||"Failed to save config");return c.json()},onSuccess:()=>{c.invalidateQueries({queryKey:["opencode-config"]}),e({type:"success",message:"Configuration saved successfully"}),b?.()},onError:a=>{e({type:"error",message:a.message})}}),q=f?.agents?.[a],r=!!q?.model,s=q?.model,t=s&&o.size>0&&!o.has(s),u=!s,v=gb[a]||gb.default;return g?(0,m.jsxs)("div",{className:"flex items-center justify-center py-12",children:[(0,m.jsx)(as,{className:"h-6 w-6 animate-spin text-zinc-400"}),(0,m.jsx)("span",{className:"ml-2 text-sm text-zinc-500",children:"Loading configuration..."})]}):(0,m.jsxs)("form",{onSubmit:i(a=>{p.mutate(a)}),className:"space-y-6","aria-label":"Agent configuration form",children:[r&&(0,m.jsx)("div",{className:"rounded-lg bg-blue-50 border border-blue-200 px-4 py-3 dark:bg-blue-900/20 dark:border-blue-800",children:(0,m.jsxs)("p",{className:"text-sm text-blue-800 dark:text-blue-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Preset applied:"})," This agent is configured with model ",(0,m.jsx)("span",{className:"font-mono bg-blue-100 dark:bg-blue-800 px-1.5 py-0.5 rounded",children:q.model}),q.variant&&(0,m.jsxs)("span",{children:[" (variant: ",q.variant,")"]})]})}),d&&(0,m.jsxs)("div",{role:"alert",className:`flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===d.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===d.type?(0,m.jsx)(au,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:d.message})]}),u&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-zinc-200 bg-zinc-50 px-4 py-3 dark:border-zinc-800 dark:bg-zinc-900/20",children:[(0,m.jsx)(at,{className:"mt-0.5 h-4 w-4 shrink-0 text-zinc-500 dark:text-zinc-400"}),(0,m.jsxs)("div",{className:"text-sm text-zinc-700 dark:text-zinc-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Using default fallback chain"})," — this agent will try models in priority order:",(0,m.jsx)("div",{className:"mt-2 flex flex-wrap items-center gap-1",children:v.map((a,b)=>(0,m.jsxs)(n.Fragment,{children:[(0,m.jsx)("code",{className:`rounded px-1.5 py-0.5 text-xs ${0===b?"bg-blue-100 text-blue-800 dark:bg-blue-900/50 dark:text-blue-200 font-medium":"bg-zinc-100 text-zinc-600 dark:bg-zinc-800 dark:text-zinc-400"}`,children:a}),b<v.length-1&&(0,m.jsx)("span",{className:"text-zinc-400 dark:text-zinc-500",children:"→"})]},a))}),(0,m.jsx)("p",{className:"mt-2 text-xs text-zinc-500 dark:text-zinc-400",children:"Select a model below to override the default behavior."})]})]}),t&&(0,m.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-amber-200 bg-amber-50 px-4 py-3 dark:border-amber-800 dark:bg-amber-900/20",children:[(0,m.jsx)(an,{className:"mt-0.5 h-4 w-4 shrink-0 text-amber-500 dark:text-amber-400"}),(0,m.jsxs)("p",{className:"text-sm text-amber-700 dark:text-amber-300",children:[(0,m.jsx)("span",{className:"font-medium",children:"Model unavailable"})," — ",(0,m.jsx)("code",{className:"rounded bg-amber-100 px-1 py-0.5 text-xs dark:bg-amber-800",children:s})," is missing from current providers. Please check your provider settings or select a different model."]})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"model-selector",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Model"}),(0,m.jsx)(a_,{name:"model",control:h,rules:{required:"Please select a model"},render:({field:a,fieldState:b})=>(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("div",{id:"model-selector",children:(0,m.jsx)(fZ,{value:a.value,onValueChange:a.onChange,placeholder:"Select a model..."})}),b.error&&(0,m.jsx)("p",{className:"text-xs text-red-600 dark:text-red-400",role:"alert",children:b.error.message})]})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"The AI model used for this agent."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"variant-selector",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Variant"}),(0,m.jsx)(a_,{name:"variant",control:h,render:({field:a})=>(0,m.jsxs)("select",{id:"variant-selector",value:a.value,onChange:b=>a.onChange(b.target.value),className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm dark:border-zinc-800 dark:bg-zinc-950",children:[(0,m.jsx)("option",{value:"",children:"Not set"}),(0,m.jsx)("option",{value:"max",children:"max"}),(0,m.jsx)("option",{value:"high",children:"high"}),(0,m.jsx)("option",{value:"medium",children:"medium"}),(0,m.jsx)("option",{value:"low",children:"low"}),(0,m.jsx)("option",{value:"xhigh",children:"xhigh"})]})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Model reasoning variant. Higher values mean more thinking."})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"temperature-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Temperature"}),(0,m.jsx)(a_,{name:"temperature",control:h,render:({field:a})=>(0,m.jsx)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:a.value.toFixed(1)})})]}),(0,m.jsx)(a_,{name:"temperature",control:h,render:({field:a})=>(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"temperature-slider",type:"range",min:0,max:2,step:.1,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Temperature slider"}),(0,m.jsx)("input",{type:"number",min:0,max:2,step:.1,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)||0),className:"w-16 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Temperature value"})]})}),(0,m.jsxs)("div",{className:"flex justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsx)("span",{children:"Precise (0)"}),(0,m.jsx)("span",{children:"Balanced (1)"}),(0,m.jsx)("span",{children:"Creative (2)"})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Controls randomness: lower values make responses more deterministic."})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"top-p-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Top P"}),(0,m.jsx)(a_,{name:"top_p",control:h,render:({field:a})=>(0,m.jsx)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:a.value.toFixed(2)})})]}),(0,m.jsx)(a_,{name:"top_p",control:h,render:({field:a})=>(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"top-p-slider",type:"range",min:0,max:1,step:.05,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Top P slider"}),(0,m.jsx)("input",{type:"number",min:0,max:1,step:.05,value:a.value,onChange:b=>a.onChange(parseFloat(b.target.value)||0),className:"w-16 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Top P value"})]})}),(0,m.jsxs)("div",{className:"flex justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsx)("span",{children:"Diverse (0)"}),(0,m.jsx)("span",{children:"Default (1)"})]}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Controls nucleus sampling: lower values sample from more likely tokens."})]}),(0,m.jsxs)("div",{className:"space-y-2",children:[(0,m.jsx)("label",{htmlFor:"prompt-append",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Prompt Append"}),(0,m.jsx)(a_,{name:"prompt_append",control:h,render:({field:a})=>(0,m.jsx)("textarea",{id:"prompt-append",value:a.value,onChange:b=>a.onChange(b.target.value),rows:4,className:"w-full rounded-lg border border-zinc-200 bg-white px-3 py-2 text-sm resize-none dark:border-zinc-800 dark:bg-zinc-950",placeholder:"Additional system instructions to append..."})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Additional instructions appended to the system prompt."})]}),(0,m.jsx)("div",{className:"flex items-center justify-end gap-3 pt-2",children:(0,m.jsxs)("button",{type:"submit",disabled:k||p.isPending,className:"inline-flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-blue-600 dark:hover:bg-blue-500",children:[(k||p.isPending)&&(0,m.jsx)(as,{className:"h-4 w-4 animate-spin","aria-hidden":"true"}),"Save Changes"]})})]})}let gd=af("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);function ge(){let a=(0,A.useQueryClient)(),[b,c]=n.useState(null),{data:d,isLoading:e}=E({queryKey:["opencode-config"],queryFn:async()=>{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch config");return a.json()}}),{control:f,handleSubmit:g,reset:h,formState:{isDirty:i,isSubmitting:j}}=bs({defaultValues:{stickyBusyDelaySeconds:25,sessionsRefreshIntervalSeconds:5}});n.useEffect(()=>{d&&h({stickyBusyDelaySeconds:"number"==typeof d.vibepulse?.stickyBusyDelayMs?Math.round(d.vibepulse.stickyBusyDelayMs/1e3):25,sessionsRefreshIntervalSeconds:"number"==typeof d.vibepulse?.sessionsRefreshIntervalMs?Math.round(d.vibepulse.sessionsRefreshIntervalMs/1e3):5})},[d,h]),n.useEffect(()=>{if(b){let a=setTimeout(()=>c(null),3e3);return()=>clearTimeout(a)}},[b]);let k=ar({mutationFn:async a=>{let b=await fetch("/api/opencode-config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({vibepulse:{stickyBusyDelayMs:1e3*a.stickyBusyDelaySeconds,sessionsRefreshIntervalMs:1e3*a.sessionsRefreshIntervalSeconds}})});if(!b.ok)throw Error((await b.json()).error||"Failed to save settings");return b.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["opencode-config"]}),c({type:"success",message:"Settings saved successfully"})},onError:a=>{c({type:"error",message:a.message})}});return e?(0,m.jsx)("div",{className:"flex h-40 items-center justify-center",children:(0,m.jsx)(as,{className:"h-6 w-6 animate-spin text-zinc-400"})}):(0,m.jsx)("form",{onSubmit:g(a=>{k.mutate(a)}),className:"space-y-6",children:(0,m.jsxs)("div",{className:"rounded-xl border border-zinc-200 bg-white p-6 shadow-sm dark:border-zinc-800 dark:bg-zinc-900",children:[(0,m.jsxs)("div",{className:"mb-6 flex items-center gap-3 border-b border-zinc-100 pb-4 dark:border-zinc-800",children:[(0,m.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-zinc-100 text-zinc-500 dark:bg-zinc-800 dark:text-zinc-400",children:(0,m.jsx)(ah,{className:"h-4 w-4"})}),(0,m.jsx)("h3",{className:"text-lg font-medium text-zinc-900 dark:text-zinc-100",children:"Application Settings"})]}),b&&(0,m.jsxs)("div",{role:"alert",className:`mb-6 flex items-center gap-2 rounded-lg px-4 py-3 text-sm ${"success"===b.type?"bg-emerald-50 text-emerald-800 dark:bg-emerald-900/20 dark:text-emerald-300":"bg-red-50 text-red-800 dark:bg-red-900/20 dark:text-red-300"}`,children:["success"===b.type?(0,m.jsx)(au,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}):(0,m.jsx)(at,{className:"h-4 w-4 shrink-0","aria-hidden":"true"}),(0,m.jsx)("span",{children:b.message})]}),(0,m.jsxs)("div",{className:"space-y-8",children:[(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"sticky-busy-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Sticky Busy Delay"}),(0,m.jsx)(a_,{name:"stickyBusyDelaySeconds",control:f,render:({field:a})=>(0,m.jsxs)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:[a.value,"s"]})})]}),(0,m.jsx)(a_,{name:"stickyBusyDelaySeconds",control:f,render:({field:a})=>(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"sticky-busy-slider",type:"range",min:0,max:60,step:1,value:a.value,onChange:b=>a.onChange(parseInt(b.target.value,10)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Sticky busy delay slider"}),(0,m.jsx)("input",{type:"number",min:0,max:300,step:1,value:a.value,onChange:b=>a.onChange(parseInt(b.target.value,10)||0),className:"w-20 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Sticky busy delay value"})]})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:'The duration to keep a session marked as "busy" after activity stops. This prevents the UI from flickering when agents pause briefly. Default is 25 seconds.'})]}),(0,m.jsxs)("div",{className:"space-y-3",children:[(0,m.jsxs)("div",{className:"flex items-center justify-between",children:[(0,m.jsx)("label",{htmlFor:"refresh-interval-slider",className:"text-sm font-medium text-zinc-900 dark:text-zinc-100",children:"Sessions Refresh Interval"}),(0,m.jsx)(a_,{name:"sessionsRefreshIntervalSeconds",control:f,render:({field:a})=>(0,m.jsxs)("span",{className:"rounded-md bg-zinc-100 px-2 py-0.5 text-xs font-medium text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300",children:[a.value,"s"]})})]}),(0,m.jsx)(a_,{name:"sessionsRefreshIntervalSeconds",control:f,render:({field:a})=>(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("input",{id:"refresh-interval-slider",type:"range",min:1,max:30,step:1,value:a.value,onChange:b=>a.onChange(parseInt(b.target.value,10)),className:"flex-1 h-2 cursor-pointer appearance-none rounded-lg bg-zinc-200 accent-blue-600 dark:bg-zinc-700","aria-label":"Sessions refresh interval slider"}),(0,m.jsx)("input",{type:"number",min:1,max:300,step:1,value:a.value,onChange:b=>a.onChange(parseInt(b.target.value,10)||1),className:"w-20 rounded-lg border border-zinc-200 bg-white px-2 py-1 text-center text-sm dark:border-zinc-800 dark:bg-zinc-950","aria-label":"Sessions refresh interval value"})]})}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"How often the board polls the server for session updates. Lower values provide more real-time feedback but increase server load. Default is 5 seconds."})]})]}),(0,m.jsx)("div",{className:"mt-8 flex justify-end border-t border-zinc-100 pt-6 dark:border-zinc-800",children:(0,m.jsxs)("button",{type:"submit",disabled:!i||j||k.isPending,className:"flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 text-sm font-medium text-white shadow-sm transition-colors hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 dark:hover:bg-blue-500 dark:focus:ring-offset-zinc-900",children:[j||k.isPending?(0,m.jsx)(as,{className:"h-4 w-4 animate-spin"}):(0,m.jsx)(gd,{className:"h-4 w-4"}),"Save Settings"]})})]})})}let gf=[{key:"default",name:"Default",description:"Fallback configuration"},{key:"sisyphus",name:"Sisyphus",description:"Task execution agent"},{key:"hephaestus",name:"Hephaestus",description:"Build & automation"},{key:"prometheus",name:"Prometheus",description:"Planning agent"},{key:"oracle",name:"Oracle",description:"Knowledge & research"},{key:"metis",name:"Metis",description:"Strategy & consultation"},{key:"momus",name:"Momus",description:"Review & critique"},{key:"atlas",name:"Atlas",description:"Execution-focused"},{key:"librarian",name:"Librarian",description:"Documentation & exploration"},{key:"explore",name:"Explore",description:"Code navigation"}];function gg({open:a,onClose:b}){let[c,d]=n.useState("general"),[e,f]=n.useState("default"),[g,h]=n.useState(""),i=n.useRef(null),{data:j}=E({queryKey:["opencode-config"],queryFn:async()=>{let a=await fetch("/api/opencode-config");if(!a.ok)throw Error("Failed to fetch config");return a.json()},enabled:a}),{data:k}=E({queryKey:["opencode-models"],queryFn:async()=>{let a=await fetch("/api/opencode-models");if(!a.ok)throw Error("Failed to fetch models");return a.json()},enabled:a}),l=n.useMemo(()=>new Set(k?.models??[]),[k]),o=n.useCallback(a=>{let b=j?.agents?.[a];return b?.model?l.size>0&&!l.has(b.model)?"invalid":"ok":"unconfigured"},[j,l]),p=n.useMemo(()=>gf.filter(a=>"invalid"===o(a.key)).length,[o]);n.useEffect(()=>{if(!a)return;let c=a=>{"Escape"===a.key&&b()};return document.addEventListener("keydown",c),()=>document.removeEventListener("keydown",c)},[a,b]),n.useEffect(()=>{if(a){let a=window.getComputedStyle(document.body).overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=a}}},[a]),n.useEffect(()=>{a&&setTimeout(()=>i.current?.focus(),100)},[a]);let q=n.useMemo(()=>{if(!g.trim())return gf;let a=g.toLowerCase();return gf.filter(b=>b.name.toLowerCase().includes(a)||b.description.toLowerCase().includes(a))},[g]),r=gf.find(a=>a.key===e);return a?(0,m.jsxs)("div",{className:"fixed inset-0 z-50 flex flex-col bg-white dark:bg-zinc-950",children:[(0,m.jsxs)("header",{className:"flex h-16 items-center justify-between border-b border-zinc-200 px-6 dark:border-zinc-800",children:[(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("div",{className:"flex h-9 w-9 items-center justify-center rounded-lg bg-blue-600 text-white",children:(0,m.jsx)(ah,{className:"h-5 w-5"})}),(0,m.jsxs)("div",{children:[(0,m.jsx)("h1",{className:"text-lg font-semibold text-zinc-900 dark:text-zinc-100",children:"Settings"}),(0,m.jsx)("p",{className:"text-xs text-zinc-500 dark:text-zinc-400",children:"Manage application and agent configuration"})]})]}),(0,m.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-zinc-100 p-1 dark:bg-zinc-800",children:[(0,m.jsx)("button",{type:"button",onClick:()=>d("general"),className:`rounded-md px-4 py-1.5 text-sm font-medium transition-colors ${"general"===c?"bg-blue-600 text-white shadow-sm":"text-zinc-600 hover:bg-zinc-200 dark:text-zinc-400 dark:hover:bg-zinc-700"}`,children:"General"}),(0,m.jsx)("button",{type:"button",onClick:()=>d("agents"),className:`rounded-md px-4 py-1.5 text-sm font-medium transition-colors ${"agents"===c?"bg-blue-600 text-white shadow-sm":"text-zinc-600 hover:bg-zinc-200 dark:text-zinc-400 dark:hover:bg-zinc-700"}`,children:"Agents"}),(0,m.jsx)("button",{type:"button",onClick:()=>d("categories"),className:`rounded-md px-4 py-1.5 text-sm font-medium transition-colors ${"categories"===c?"bg-blue-600 text-white shadow-sm":"text-zinc-600 hover:bg-zinc-200 dark:text-zinc-400 dark:hover:bg-zinc-700"}`,children:"Categories"}),(0,m.jsx)("button",{type:"button",onClick:()=>d("profiles"),className:`rounded-md px-4 py-1.5 text-sm font-medium transition-colors ${"profiles"===c?"bg-blue-600 text-white shadow-sm":"text-zinc-600 hover:bg-zinc-200 dark:text-zinc-400 dark:hover:bg-zinc-700"}`,children:"Profiles"})]}),(0,m.jsx)("button",{type:"button",onClick:b,className:"flex h-9 w-9 items-center justify-center rounded-lg text-zinc-500 transition-colors hover:bg-zinc-100 hover:text-zinc-700 dark:text-zinc-400 dark:hover:bg-zinc-800 dark:hover:text-zinc-200","aria-label":"Close panel",children:(0,m.jsx)(aj,{className:"h-5 w-5"})})]}),"general"===c?(0,m.jsx)("main",{className:"flex-1 overflow-y-auto bg-white dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"mx-auto max-w-4xl p-8",children:[(0,m.jsxs)("div",{className:"mb-8",children:[(0,m.jsx)("h2",{className:"text-2xl font-bold text-zinc-900 dark:text-zinc-100",children:"General Settings"}),(0,m.jsx)("p",{className:"text-zinc-500 dark:text-zinc-400",children:"Manage application-wide behavior and preferences"})]}),(0,m.jsx)(ge,{})]})}):"agents"===c?(0,m.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,m.jsxs)("aside",{className:"flex w-[280px] flex-col border-r border-zinc-200 bg-zinc-50/50 dark:border-zinc-800 dark:bg-zinc-900/20",children:[(0,m.jsx)("div",{className:"border-b border-zinc-200 p-4 dark:border-zinc-800",children:(0,m.jsxs)("div",{className:"relative",children:[(0,m.jsx)(ak,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-zinc-400"}),(0,m.jsx)("input",{ref:i,type:"text",value:g,onChange:a=>h(a.target.value),placeholder:"Search agents...",className:"h-10 w-full rounded-lg border border-zinc-200 bg-white pl-9 pr-4 text-sm text-zinc-900 placeholder:text-zinc-400 focus:border-blue-500 focus:outline-none focus:ring-1 focus:ring-blue-500 dark:border-zinc-800 dark:bg-zinc-950 dark:text-zinc-100 dark:placeholder:text-zinc-600"})]})}),(0,m.jsxs)("nav",{className:"flex-1 overflow-y-auto p-2",children:[(0,m.jsx)("div",{className:"space-y-1",children:q.map(a=>{let b;return(0,m.jsxs)("button",{type:"button",onClick:()=>f(a.key),className:`flex w-full items-center gap-3 rounded-lg px-3 py-2.5 text-left transition-colors ${e===a.key?"bg-blue-600 text-white":"text-zinc-700 hover:bg-zinc-100 dark:text-zinc-300 dark:hover:bg-zinc-800"}`,children:[(0,m.jsx)("div",{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-md ${e===a.key?"bg-white/20":"bg-zinc-200 dark:bg-zinc-800"}`,children:(0,m.jsx)(al,{className:`h-4 w-4 ${e===a.key?"text-white":"text-zinc-600 dark:text-zinc-400"}`})}),(0,m.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,m.jsxs)("div",{className:"flex items-center gap-2 truncate text-sm font-medium",children:[a.name,"unconfigured"===(b=o(a.key))?(0,m.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${e===a.key?"bg-zinc-300":"bg-zinc-400 dark:bg-zinc-500"}`,title:"Inherits category configuration"}):"invalid"===b?(0,m.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${e===a.key?"bg-amber-300":"bg-amber-500"}`,title:"Model not available"}):(0,m.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${e===a.key?"bg-emerald-300":"bg-emerald-500"}`,title:"Configured"})]}),(0,m.jsx)("div",{className:`truncate text-xs ${e===a.key?"text-blue-100":"text-zinc-500 dark:text-zinc-500"}`,children:a.description})]}),e===a.key&&(0,m.jsx)(am,{className:"h-4 w-4 shrink-0 text-blue-200"})]},a.key)})}),0===q.length&&(0,m.jsx)("div",{className:"py-8 text-center",children:(0,m.jsx)("p",{className:"text-sm text-zinc-500 dark:text-zinc-400",children:"No agents found"})})]}),(0,m.jsx)("div",{className:"border-t border-zinc-200 p-4 dark:border-zinc-800",children:(0,m.jsxs)("div",{className:"flex items-center justify-between text-xs text-zinc-500 dark:text-zinc-400",children:[(0,m.jsxs)("span",{className:"flex items-center gap-1.5",children:[gf.length," agents",p>0&&(0,m.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-amber-100 px-1.5 py-0.5 text-[10px] font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:[(0,m.jsx)(an,{className:"h-2.5 w-2.5"}),p," need attention"]})]}),(0,m.jsx)("kbd",{className:"rounded bg-zinc-200 px-1.5 py-0.5 font-mono dark:bg-zinc-800",children:"ESC"})]})})]}),(0,m.jsx)("main",{className:"flex-1 overflow-y-auto bg-white dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"mx-auto max-w-3xl p-8",children:[(0,m.jsxs)("div",{className:"mb-8 flex items-center gap-4",children:[(0,m.jsx)("div",{className:"flex h-16 w-16 items-center justify-center rounded-2xl bg-gradient-to-br from-blue-500 to-indigo-600 text-white shadow-lg",children:(0,m.jsx)(al,{className:"h-8 w-8"})}),(0,m.jsxs)("div",{children:[(0,m.jsx)("h2",{className:"text-2xl font-bold text-zinc-900 dark:text-zinc-100",children:r?.name}),(0,m.jsx)("p",{className:"text-zinc-500 dark:text-zinc-400",children:r?.description})]})]}),(0,m.jsx)(gc,{agentName:e})]})})]}):"categories"===c?(0,m.jsx)("main",{className:"flex-1 overflow-y-auto bg-white dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"mx-auto max-w-4xl p-8",children:[(0,m.jsxs)("div",{className:"mb-8",children:[(0,m.jsx)("h2",{className:"text-2xl font-bold text-zinc-900 dark:text-zinc-100",children:"Categories"}),(0,m.jsx)("p",{className:"text-zinc-500 dark:text-zinc-400",children:"Manage agent categories and their configurations"})]}),(0,m.jsx)(f0,{})]})}):(0,m.jsx)("main",{className:"flex-1 overflow-y-auto bg-white dark:bg-zinc-950",children:(0,m.jsxs)("div",{className:"mx-auto max-w-4xl p-8",children:[(0,m.jsxs)("div",{className:"mb-8",children:[(0,m.jsx)("h2",{className:"text-2xl font-bold text-zinc-900 dark:text-zinc-100",children:"Profiles"}),(0,m.jsx)("p",{className:"text-zinc-500 dark:text-zinc-400",children:"Manage configuration profiles for different agent setups"})]}),(0,m.jsx)(ga,{})]})})]}):null}let gh=[{label:"1d",days:1},{label:"3d",days:3},{label:"7d",days:7},{label:"30d",days:30},{label:"All",days:0}],gi="opencode --port <PORT>";function gj(){let a,b,c,d,e,f,g,h,i,j;a=(0,A.useQueryClient)(),b=(0,n.useRef)(null),c=(0,n.useRef)(0),d=(0,n.useRef)(null),e=(0,n.useRef)(null),f=(0,n.useRef)(!1),g=(0,n.useRef)(!0),h=(0,n.useRef)(null),i=(0,n.useCallback)(()=>{d.current||(d.current=setTimeout(()=>{a.invalidateQueries({queryKey:["sessions"]}),d.current=null},500))},[a]),j=(0,n.useCallback)(b=>{let c="payload"in b?b.payload:b;if(!c?.type)return void i();let d=c.properties?.sessionID;["session.status","session.updated","session.created","session.deleted","question.asked","permission.asked","permission.updated","question.replied","question.rejected","permission.replied","session.archived"].includes(c.type)?a.setQueryData(["sessions"],a=>{if(!a?.sessions)return i(),a;switch(c.type){case"session.updated":case"session.created":{let b=c.properties?.info;if(!b)return i(),a;if(b.parentID){let c=!1,d=a.sessions.map(a=>{let d=a.children?.some(a=>a.id===b.id),e=a.id===b.parentID;if(!d&&!e)return a;c=!0;let f=a.children||[],g=f.find(a=>a.id===b.id),h=aa({...g,...b,realTimeStatus:b.realTimeStatus??g?.realTimeStatus??"busy",waitingForUser:b.waitingForUser??g?.waitingForUser});return g?{...a,children:f.map(a=>a.id===b.id?h:a)}:{...a,children:[...f,h]}});if(!c)return i(),a;return{...a,sessions:d}}let d=a.sessions.find(a=>a.id===b.id);if(!d)return i(),{...a,sessions:[aa(b),...a.sessions]};let e={...b,projectName:d.projectName,branch:d.branch,realTimeStatus:b.realTimeStatus??d.realTimeStatus,waitingForUser:b.waitingForUser??d.waitingForUser,children:d.children};return{...a,sessions:a.sessions.map(a=>a.id===b.id?e:a)}}case"session.deleted":{let b=c.properties?.info,d=b?.id??c.properties?.sessionID;if(!d)return i(),a;return{...a,sessions:a.sessions.filter(a=>a.id!==d)}}default:{if(!d)return i(),a;let b=a=>{switch(c.type){case"session.status":{let b=c.properties?.status?.type;if(!b)return a;let d=a.realTimeStatus,e=!a.parentID;return"retry"!==b||g.current||T("play-alert","Skipped playAlertSound() because muted","playAlertSound() failed",(a,b)=>{let c=a.createOscillator(),d=a.createGain();c.type="triangle",c.frequency.setValueAtTime(880,b),c.frequency.exponentialRampToValueAtTime(698,b+.25),d.gain.setValueAtTime(.3,b),d.gain.exponentialRampToValueAtTime(.001,b+.35),c.connect(d),d.connect(a.destination),c.start(b),c.stop(b+.35);let e=a.createOscillator(),f=a.createGain();e.type="triangle",e.frequency.setValueAtTime(698,b+.2),e.frequency.exponentialRampToValueAtTime(523,b+.45),f.gain.setValueAtTime(.25,b+.2),f.gain.exponentialRampToValueAtTime(.001,b+.5),e.connect(f),f.connect(a.destination),e.start(b+.2),e.stop(b+.5)}),"idle"!==b||g.current||a.parentID||"busy"!==d&&"retry"!==d||W(),"idle"===b&&_(a.id,!1),"retry"===b&&_(a.id,!0),"idle"===b&&e&&(a.children?.length||0)>0&&i(),{...a,realTimeStatus:b,waitingForUser:"retry"===b||"idle"!==b&&a.waitingForUser,children:a.children}}case"question.asked":case"permission.asked":return g.current||V(),_(d,!0),{...a,waitingForUser:!0};case"permission.updated":return i(),a;case"question.replied":case"question.rejected":case"permission.replied":return _(d,!1),{...a,waitingForUser:!1};case"session.archived":return{...a,time:{...a.time||{},archived:Date.now()}};default:return a}},e=!1,f=a.sessions.map(a=>a.id===d?(e=!0,b(a)):a.children?.some(a=>a.id===d)?(e=!0,"session.status"===c.type&&c.properties?.status?.type==="idle")?{...a,children:a.children.filter(a=>a.id!==d)}:{...a,children:a.children.map(a=>a.id===d?b(a):a)}:a);if(!e)return i(),a;return{...a,sessions:f}}}}):i()},[a,i]),(0,n.useEffect)(()=>(h.current=setTimeout(()=>{g.current=!1},3e3),()=>{h.current&&clearTimeout(h.current)}),[]),(0,n.useEffect)(()=>{let a=null,d=()=>{b.current&&(clearTimeout(b.current),b.current=null),e.current&&(clearTimeout(e.current),e.current=null),(a=new EventSource("/api/opencode-events")).onopen=()=>{c.current=0,f.current=!1,e.current=setTimeout(()=>{a&&(f.current=!0,a.close(),i(),d())},15e3)},a.onmessage=a=>{try{let b=JSON.parse(a.data);j(b),c.current=0}catch(a){console.error("Failed to parse SSE event:",a)}},a.onerror=()=>{if(a?.close(),e.current&&(clearTimeout(e.current),e.current=null),f.current){f.current=!1;return}c.current<5&&(b.current=setTimeout(()=>{c.current++,d()},1e3*Math.pow(2,c.current)))}};return d(),()=>{a?.close(),b.current&&(clearTimeout(b.current),b.current=null),e.current&&(clearTimeout(e.current),e.current=null)}},[j,i]);let[k,l]=(0,n.useState)(7),[o,p]=(0,n.useState)(()=>!1),[q,r]=(0,n.useState)([]),[s,t]=(0,n.useState)(!1),[u,v]=(0,n.useState)("idle"),[w,x]=(0,n.useState)(!1),y=(0,n.useRef)(null),z=(0,n.useRef)(null),B=(0,n.useMemo)(()=>Array.from(new Set(q.map(a=>a.projectName))),[q]),C=q.length>0,D=1===B.length?`${B[0]} has an OpenCode process without an exposed API port.`:`${B.length} projects have OpenCode processes without exposed API ports.`;(0,n.useEffect)(()=>{let a=()=>{U(),document.removeEventListener("click",a),document.removeEventListener("pointerdown",a),document.removeEventListener("keydown",a),document.removeEventListener("touchstart",a)};return document.addEventListener("click",a),document.addEventListener("pointerdown",a,{passive:!0}),document.addEventListener("keydown",a),document.addEventListener("touchstart",a,{passive:!0}),()=>{document.removeEventListener("click",a),document.removeEventListener("pointerdown",a),document.removeEventListener("keydown",a),document.removeEventListener("touchstart",a)}},[]),(0,n.useEffect)(()=>{if(!s||!C)return;let a=a=>{let b=a.target,c=z.current,d=y.current;c?.contains(b)||d?.contains(b)||t(!1)},b=a=>{"Escape"===a.key&&(t(!1),y.current?.focus())};return document.addEventListener("mousedown",a),document.addEventListener("keydown",b),()=>{document.removeEventListener("mousedown",a),document.removeEventListener("keydown",b)}},[C,s]);let E=async()=>{try{await navigator.clipboard.writeText(gi),v("copied"),setTimeout(()=>v("idle"),1500)}catch{v("failed"),setTimeout(()=>v("idle"),2e3)}};return(0,m.jsx)("div",{className:"min-h-screen bg-zinc-50 dark:bg-black",children:(0,m.jsxs)("main",{className:"h-screen flex flex-col",children:[(0,m.jsxs)("header",{className:"flex items-center justify-between px-4 py-4 border-b border-gray-200 dark:border-zinc-800",children:[(0,m.jsx)("h1",{className:"text-2xl font-semibold text-gray-900 dark:text-white",children:"VibePulse"}),(0,m.jsxs)("div",{className:"flex items-center gap-3",children:[(0,m.jsx)("button",{type:"button",onClick:()=>{U();let a=!o;p(a),a||T("play-toggle-feedback","Skipped playToggleFeedbackSound() because muted","playToggleFeedbackSound() failed",(a,b)=>{let c=a.createOscillator(),d=a.createGain();c.type="sine",c.frequency.setValueAtTime(740,b),c.frequency.exponentialRampToValueAtTime(920,b+.1),d.gain.setValueAtTime(.13,b),d.gain.exponentialRampToValueAtTime(.001,b+.13),c.connect(d),d.connect(a.destination),c.start(b),c.stop(b+.13)})},className:`p-1.5 rounded-lg transition-all duration-150 ${o?"text-gray-400 dark:text-gray-500 hover:text-gray-600 dark:hover:text-gray-300 hover:bg-gray-100 dark:hover:bg-zinc-800":"text-blue-500 dark:text-blue-400 hover:text-blue-600 dark:hover:text-blue-300 hover:bg-blue-50 dark:hover:bg-blue-900/20"}`,title:o?"Unmute notifications":"Mute notifications",children:o?(0,m.jsxs)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:[(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5.586 15H4a1 1 0 01-1-1v-4a1 1 0 011-1h1.586l4.707-4.707C10.923 3.663 12 4.109 12 5v14c0 .891-1.077 1.337-1.707.707L5.586 15z"}),(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2"})]}):(0,m.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15.536 8.464a5 5 0 010 7.072M18.364 5.636a9 9 0 010 12.728M5.586 15H4a1 1 0 01-1-1v-4a1 1 0 011-1h1.586l4.707-4.707C10.923 3.663 12 4.109 12 5v14c0 .891-1.077 1.337-1.707.707L5.586 15z"})})}),C?(0,m.jsxs)("div",{className:"relative",children:[(0,m.jsx)("button",{ref:y,type:"button",onClick:()=>t(a=>!a),className:`p-1.5 rounded-lg transition-all duration-150 text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:bg-gray-100 dark:hover:bg-zinc-800 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 ${s?"bg-gray-100 dark:bg-zinc-800":""}`,"aria-label":"OpenCode process hint details","aria-haspopup":"dialog","aria-expanded":C&&s,"aria-controls":"process-hint-popover",children:(0,m.jsx)(ag,{className:"h-3.5 w-3.5"})}),C&&s?(0,m.jsxs)("div",{id:"process-hint-popover",ref:z,role:"dialog","aria-label":"OpenCode process hints",className:"absolute right-0 top-9 z-30 w-80 rounded-lg border border-blue-200 bg-white p-3 shadow-xl dark:border-blue-900/40 dark:bg-zinc-900",children:[(0,m.jsx)("p",{className:"text-xs font-medium text-blue-900 dark:text-blue-200",children:D}),(0,m.jsx)("p",{className:"mt-1 text-[11px] leading-relaxed text-blue-800 dark:text-blue-300",children:"Sessions from these instances become visible once OpenCode starts with an exposed API port."}),(0,m.jsx)("div",{className:"mt-2 rounded-md bg-blue-50 px-2 py-1.5 dark:bg-blue-900/20",children:(0,m.jsx)("code",{className:"text-[11px] text-blue-900 dark:text-blue-200",children:gi})}),(0,m.jsxs)("div",{className:"mt-2 flex items-center justify-between gap-2",children:[(0,m.jsx)("span",{className:"text-[10px] text-blue-700 dark:text-blue-300",children:"VibePulse auto-detects active ports."}),(0,m.jsx)("button",{type:"button",onClick:E,className:"rounded-md border border-blue-200 px-2 py-1 text-[10px] font-medium text-blue-800 transition-colors hover:bg-blue-50 dark:border-blue-900/40 dark:text-blue-200 dark:hover:bg-blue-900/30",children:"copied"===u?"Copied":"failed"===u?"Copy Failed":"Copy"})]})]}):null]}):null,(0,m.jsx)("svg",{className:"w-4 h-4 text-gray-500 dark:text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","aria-hidden":"true",children:(0,m.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})}),(0,m.jsx)("div",{className:"flex items-center gap-1 bg-gray-100 dark:bg-zinc-800 rounded-lg p-0.5",children:gh.map(a=>(0,m.jsx)("button",{type:"button",onClick:()=>l(a.days),className:`px-3 py-1 text-xs font-medium rounded-md transition-all duration-150 ${k===a.days?"bg-white dark:bg-zinc-600 text-gray-900 dark:text-white shadow-sm":"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200"}`,children:a.label},a.days))}),(0,m.jsx)(ai,{onClick:()=>x(!0)})]})]}),(0,m.jsx)($,{children:(0,m.jsx)(Y,{filterDays:k,onProcessHintsChange:r})}),(0,m.jsx)(gg,{open:w,onClose:()=>x(!1)})]})})}a.s(["default",()=>gj],40777)}];
15
14
 
16
15
  //# sourceMappingURL=src_app_page_tsx_a7111f3e._.js.map