larkup 0.1.29 → 0.1.30

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 (225) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +5 -5
  3. package/.next/diagnostics/route-bundle-stats.json +35 -35
  4. package/.next/fallback-build-manifest.json +3 -3
  5. package/.next/next-minimal-server.js.nft.json +1 -1
  6. package/.next/next-server.js.nft.json +1 -1
  7. package/.next/prerender-manifest.json +3 -3
  8. package/.next/required-server-files.js +4 -4
  9. package/.next/required-server-files.json +4 -4
  10. package/.next/server/app/_global-error/page/build-manifest.json +2 -2
  11. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  12. package/.next/server/app/_global-error.html +1 -1
  13. package/.next/server/app/_global-error.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  18. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/.next/server/app/_not-found/page/build-manifest.json +2 -2
  20. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  21. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  22. package/.next/server/app/_not-found.html +1 -1
  23. package/.next/server/app/_not-found.rsc +16 -16
  24. package/.next/server/app/_not-found.segments/_full.segment.rsc +16 -16
  25. package/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  26. package/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
  27. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  28. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  29. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  30. package/.next/server/app/analytics/page/build-manifest.json +2 -2
  31. package/.next/server/app/analytics/page.js.nft.json +1 -1
  32. package/.next/server/app/analytics/page_client-reference-manifest.js +1 -1
  33. package/.next/server/app/analytics.html +1 -1
  34. package/.next/server/app/analytics.rsc +17 -17
  35. package/.next/server/app/analytics.segments/_full.segment.rsc +17 -17
  36. package/.next/server/app/analytics.segments/_head.segment.rsc +4 -4
  37. package/.next/server/app/analytics.segments/_index.segment.rsc +11 -11
  38. package/.next/server/app/analytics.segments/_tree.segment.rsc +1 -1
  39. package/.next/server/app/analytics.segments/analytics/__PAGE__.segment.rsc +3 -3
  40. package/.next/server/app/analytics.segments/analytics.segment.rsc +3 -3
  41. package/.next/server/app/api/analytics/route.js.nft.json +1 -1
  42. package/.next/server/app/api/chat/route.js.nft.json +1 -1
  43. package/.next/server/app/api/chat/status/route.js.nft.json +1 -1
  44. package/.next/server/app/api/chat/suggestions/route.js.nft.json +1 -1
  45. package/.next/server/app/api/config/route.js.nft.json +1 -1
  46. package/.next/server/app/api/config/test/route.js.nft.json +1 -1
  47. package/.next/server/app/api/config/test-embedding/route.js.nft.json +1 -1
  48. package/.next/server/app/api/config/test-llm/route.js.nft.json +1 -1
  49. package/.next/server/app/api/config/test-provider/route.js +4 -4
  50. package/.next/server/app/api/config/test-provider/route.js.nft.json +1 -1
  51. package/.next/server/app/api/config/verify/route.js +3 -3
  52. package/.next/server/app/api/config/verify/route.js.nft.json +1 -1
  53. package/.next/server/app/api/connections/route.js.nft.json +1 -1
  54. package/.next/server/app/api/connections/webhook/route.js.nft.json +1 -1
  55. package/.next/server/app/api/demo/route.js.nft.json +1 -1
  56. package/.next/server/app/api/deploy/cloud-project/route.js.nft.json +1 -1
  57. package/.next/server/app/api/deploy/ssh/route.js.nft.json +1 -1
  58. package/.next/server/app/api/deployment/blob-setup/route.js.nft.json +1 -1
  59. package/.next/server/app/api/deployment/config/route.js.nft.json +1 -1
  60. package/.next/server/app/api/describe-image/route.js.nft.json +1 -1
  61. package/.next/server/app/api/doc-editor/edit/route.js.nft.json +1 -1
  62. package/.next/server/app/api/doc-editor/export/route.js.nft.json +1 -1
  63. package/.next/server/app/api/doc-editor/extract-text/route.js.nft.json +1 -1
  64. package/.next/server/app/api/doc-editor/parse/route.js.nft.json +1 -1
  65. package/.next/server/app/api/doc-editor/restore/route.js.nft.json +1 -1
  66. package/.next/server/app/api/document/sign/route.js.nft.json +1 -1
  67. package/.next/server/app/api/documents/route.js.nft.json +1 -1
  68. package/.next/server/app/api/firecrawl/local/route.js.nft.json +1 -1
  69. package/.next/server/app/api/index/route.js.nft.json +1 -1
  70. package/.next/server/app/api/integrations/notion/callback/route.js.nft.json +1 -1
  71. package/.next/server/app/api/integrations/notion/route.js.nft.json +1 -1
  72. package/.next/server/app/api/jobs/[id]/route.js.nft.json +1 -1
  73. package/.next/server/app/api/jobs/route.js.nft.json +1 -1
  74. package/.next/server/app/api/marketplace/[toolId]/route.js.nft.json +1 -1
  75. package/.next/server/app/api/marketplace/route.js.nft.json +1 -1
  76. package/.next/server/app/api/media/[id]/route.js.nft.json +1 -1
  77. package/.next/server/app/api/media/process/route.js.nft.json +1 -1
  78. package/.next/server/app/api/media/route.js.nft.json +1 -1
  79. package/.next/server/app/api/media/stream/route.js.nft.json +1 -1
  80. package/.next/server/app/api/models/route.js.nft.json +1 -1
  81. package/.next/server/app/api/parse-file/route.js.nft.json +1 -1
  82. package/.next/server/app/api/proxy/verify/route.js.nft.json +1 -1
  83. package/.next/server/app/api/sandbox/route.js.nft.json +1 -1
  84. package/.next/server/app/api/search/bing/route.js.nft.json +1 -1
  85. package/.next/server/app/api/search/brave/route.js.nft.json +1 -1
  86. package/.next/server/app/api/search/exa/route.js.nft.json +1 -1
  87. package/.next/server/app/api/search/google/route.js.nft.json +1 -1
  88. package/.next/server/app/api/search/route.js.nft.json +1 -1
  89. package/.next/server/app/api/search/tavily/route.js.nft.json +1 -1
  90. package/.next/server/app/api/search/verify/route.js.nft.json +1 -1
  91. package/.next/server/app/api/server/agent/route.js.nft.json +1 -1
  92. package/.next/server/app/api/server/download/route.js.nft.json +1 -1
  93. package/.next/server/app/api/server/generate/route.js.nft.json +1 -1
  94. package/.next/server/app/api/server/local/route.js.nft.json +1 -1
  95. package/.next/server/app/api/servers/route.js.nft.json +1 -1
  96. package/.next/server/app/api/tabular/query/route.js.nft.json +1 -1
  97. package/.next/server/app/api/tabular/route.js.nft.json +1 -1
  98. package/.next/server/app/api/upload-file/route.js.nft.json +1 -1
  99. package/.next/server/app/api/uploads/[...slug]/route.js.nft.json +1 -1
  100. package/.next/server/app/api/vector-stores/install/route.js.nft.json +1 -1
  101. package/.next/server/app/api/vector-stores/status/route.js.nft.json +1 -1
  102. package/.next/server/app/chat/page/build-manifest.json +2 -2
  103. package/.next/server/app/chat/page.js.nft.json +1 -1
  104. package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
  105. package/.next/server/app/chat.html +1 -1
  106. package/.next/server/app/chat.rsc +17 -17
  107. package/.next/server/app/chat.segments/_full.segment.rsc +17 -17
  108. package/.next/server/app/chat.segments/_head.segment.rsc +4 -4
  109. package/.next/server/app/chat.segments/_index.segment.rsc +11 -11
  110. package/.next/server/app/chat.segments/_tree.segment.rsc +1 -1
  111. package/.next/server/app/chat.segments/chat/__PAGE__.segment.rsc +3 -3
  112. package/.next/server/app/chat.segments/chat.segment.rsc +3 -3
  113. package/.next/server/app/data/page/build-manifest.json +2 -2
  114. package/.next/server/app/data/page.js.nft.json +1 -1
  115. package/.next/server/app/data/page_client-reference-manifest.js +1 -1
  116. package/.next/server/app/data.html +1 -1
  117. package/.next/server/app/data.rsc +17 -17
  118. package/.next/server/app/data.segments/_full.segment.rsc +17 -17
  119. package/.next/server/app/data.segments/_head.segment.rsc +4 -4
  120. package/.next/server/app/data.segments/_index.segment.rsc +11 -11
  121. package/.next/server/app/data.segments/_tree.segment.rsc +1 -1
  122. package/.next/server/app/data.segments/data/__PAGE__.segment.rsc +3 -3
  123. package/.next/server/app/data.segments/data.segment.rsc +3 -3
  124. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  125. package/.next/server/app/index.html +1 -1
  126. package/.next/server/app/index.rsc +16 -16
  127. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  128. package/.next/server/app/index.segments/_full.segment.rsc +16 -16
  129. package/.next/server/app/index.segments/_head.segment.rsc +4 -4
  130. package/.next/server/app/index.segments/_index.segment.rsc +11 -11
  131. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  132. package/.next/server/app/page/build-manifest.json +2 -2
  133. package/.next/server/app/page.js.nft.json +1 -1
  134. package/.next/server/app/page_client-reference-manifest.js +1 -1
  135. package/.next/server/app/settings/page/build-manifest.json +2 -2
  136. package/.next/server/app/settings/page/server-reference-manifest.json +3 -3
  137. package/.next/server/app/settings/page.js.nft.json +1 -1
  138. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  139. package/.next/server/app/settings.html +1 -1
  140. package/.next/server/app/settings.rsc +18 -18
  141. package/.next/server/app/settings.segments/_full.segment.rsc +18 -18
  142. package/.next/server/app/settings.segments/_head.segment.rsc +4 -4
  143. package/.next/server/app/settings.segments/_index.segment.rsc +11 -11
  144. package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  145. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +4 -4
  146. package/.next/server/app/settings.segments/settings.segment.rsc +3 -3
  147. package/.next/server/chunks/0598_next_dist_esm_build_templates_app-route_0kbcuk-.js +4 -3
  148. package/.next/server/chunks/0598_next_dist_esm_build_templates_app-route_1f4h7rr.js +1 -1
  149. package/.next/server/chunks/[root-of-the-server]__067hiof._.js +18 -6
  150. package/.next/server/chunks/[root-of-the-server]__0a_0ywc._.js +18 -6
  151. package/.next/server/chunks/[root-of-the-server]__0u17zp8._.js +18 -6
  152. package/.next/server/chunks/{[root-of-the-server]__1xuhh_i._.js → [root-of-the-server]__16jk_se._.js} +2 -2
  153. package/.next/server/chunks/[root-of-the-server]__1ahdfq9._.js +19 -7
  154. package/.next/server/chunks/[root-of-the-server]__1o3rcbz._.js +2 -1
  155. package/.next/server/chunks/{[root-of-the-server]__10gcb7d._.js → [root-of-the-server]__1qh2h5v._.js} +2 -2
  156. package/.next/server/chunks/[root-of-the-server]__1s9is1o._.js +2 -1
  157. package/.next/server/chunks/[root-of-the-server]__1vsvck0._.js +18 -6
  158. package/.next/server/chunks/[root-of-the-server]__1wy6wes._.js +1 -1
  159. package/.next/server/chunks/[root-of-the-server]__1zptg4z._.js +2 -1
  160. package/.next/server/chunks/packages_core_src_generator_server-runtime_ts_1_68l7t._.js +4 -4
  161. package/.next/server/chunks/packages_marketplace_src_125_g2p._.js +1 -1
  162. package/.next/server/chunks/ssr/{[root-of-the-server]__0wdatpx._.js → [root-of-the-server]__0m21fli._.js} +1 -1
  163. package/.next/server/chunks/ssr/{[root-of-the-server]__1r9ap67._.js → [root-of-the-server]__0t8ud_u._.js} +1 -1
  164. package/.next/server/chunks/ssr/{[root-of-the-server]__046ldu_._.js → [root-of-the-server]__0xyo3ni._.js} +1 -1
  165. package/.next/server/chunks/ssr/{_0k81--x._.js → _0ckxy33._.js} +2 -2
  166. package/.next/server/chunks/ssr/_169pdlf._.js +6 -6
  167. package/.next/server/chunks/ssr/_1hetwwu._.js +4 -3
  168. package/.next/server/chunks/ssr/_1iff9ia._.js +1 -1
  169. package/.next/server/chunks/ssr/_1yqlx1m._.js +1 -1
  170. package/.next/server/chunks/ssr/apps_web_components_analytics_analytics-dashboard_tsx_1056-z3._.js +1 -1
  171. package/.next/server/functions-config-manifest.json +3 -1
  172. package/.next/server/middleware-build-manifest.js +5 -5
  173. package/.next/server/pages/404.html +1 -1
  174. package/.next/server/pages/500.html +1 -1
  175. package/.next/server/server-reference-manifest.js +1 -1
  176. package/.next/server/server-reference-manifest.json +4 -4
  177. package/.next/static/chunks/{1z4nte07k3dt6.js → 1-afr-snks55m.js} +1 -1
  178. package/.next/static/chunks/{1dykihoo_1ae5.js → 1fz_0-qb5r5wd.js} +1 -1
  179. package/.next/static/chunks/{1sh7d5tt49x8b.js → 1uzf7x2okeuab.js} +6 -6
  180. package/.next/static/chunks/{3g_wl1fri6jb-.js → 21_6-9hjj2i68.js} +1 -1
  181. package/.next/static/chunks/{13kyiy7q3of41.js → 2jqjx4-rh414_.js} +1 -1
  182. package/.next/static/chunks/2jrpgzxyrmuqp.js +121 -0
  183. package/.next/static/chunks/390ds7l_plpmd.js +1 -0
  184. package/.next/static/chunks/{3een1tiktxr6a.js → 3zw6tgf7mxo39.js} +1 -1
  185. package/.next/static/chunks/{turbopack-2qt7vn_ocj4ao.js → turbopack-2gu-fmc6o5wkn.js} +1 -1
  186. package/CHANGELOG.md +12 -0
  187. package/app/api/chat/route.ts +1 -0
  188. package/app/api/chat/tools.ts +5 -1
  189. package/app/api/config/test-provider/route.ts +16 -18
  190. package/app/api/config/verify/route.ts +5 -7
  191. package/app/api/firecrawl/local/route.ts +1 -1
  192. package/app/api/jobs/route.ts +1 -2
  193. package/app/api/marketplace/[toolId]/route.ts +1 -0
  194. package/archive/redesign-v2/app/configure/page.tsx +53 -0
  195. package/archive/redesign-v2/app/demo/page.tsx +15 -0
  196. package/archive/redesign-v2/app/server/page.tsx +22 -0
  197. package/archive/redesign-v2/app/simple/chat/page.tsx +17 -0
  198. package/archive/redesign-v2/app/simple/docs/page.tsx +21 -0
  199. package/archive/redesign-v2/app/simple/settings/page.tsx +1104 -0
  200. package/archive/redesign-v2/app-routes/configure/page.tsx +53 -0
  201. package/archive/redesign-v2/app-routes/demo/page.tsx +15 -0
  202. package/archive/redesign-v2/app-routes/server/page.tsx +22 -0
  203. package/archive/redesign-v2/app-routes/simple/chat/page.tsx +17 -0
  204. package/archive/redesign-v2/app-routes/simple/docs/page.tsx +21 -0
  205. package/archive/redesign-v2/app-routes/simple/layout.tsx +9 -0
  206. package/archive/redesign-v2/app-routes/simple/settings/page.tsx +1104 -0
  207. package/archive/redesign-v2/components/app-sidebar.tsx +188 -0
  208. package/archive/redesign-v2/components/app-topnav.tsx +195 -0
  209. package/archive/redesign-v2/components/global-settings.tsx +288 -0
  210. package/archive/redesign-v2/components/simple/simple-sidebar.tsx +171 -0
  211. package/archive/redesign-v2/components/simple/simple-topnav.tsx +175 -0
  212. package/components/analytics/analytics-dashboard.tsx +1 -1
  213. package/components/data/firecrawl-notice.tsx +49 -98
  214. package/components/data/media-panel.tsx +0 -3
  215. package/components/data/scrape-panel.tsx +17 -1
  216. package/components/onboarding/welcome-screen.tsx +45 -15
  217. package/components/settings/general-section.tsx +15 -10
  218. package/components/settings/server-section.tsx +3 -3
  219. package/lib/error-formatter.ts +19 -4
  220. package/package.json +7 -7
  221. package/.next/static/chunks/01qmngac69n9j.js +0 -1
  222. package/.next/static/chunks/102b8vinedggz.js +0 -120
  223. /package/.next/static/{W6QdudzTPo_OVPpNt29f7 → Laf7YhpONHOZXSCw6POiL}/_buildManifest.js +0 -0
  224. /package/.next/static/{W6QdudzTPo_OVPpNt29f7 → Laf7YhpONHOZXSCw6POiL}/_clientMiddlewareManifest.js +0 -0
  225. /package/.next/static/{W6QdudzTPo_OVPpNt29f7 → Laf7YhpONHOZXSCw6POiL}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[612069,e=>{"use strict";var a=e.i(902157),t=e.i(750227);let o=process.env.LARKUP_HUB_URL??"https://hub.larkup.de",i=null;async function n(){let e={};for(let o of[t.default.resolve(process.cwd(),"packages","tools"),t.default.resolve(process.cwd(),"..","..","packages","tools"),t.default.resolve(process.cwd(),".larkup","tools","node_modules","@larkup"),t.default.resolve(process.cwd(),"..","..",".larkup","tools","node_modules","@larkup")])try{for(let i of(await a.promises.readdir(o,{withFileTypes:!0}))){if(!i.isDirectory())continue;let n=t.default.join(o,i.name,"tool.manifest.json");try{let t=await a.promises.readFile(n,"utf8"),o=JSON.parse(t);o.id&&(e[o.id]=o)}catch{}}}catch{}return e}async function r(e){try{let a=new AbortController,t=setTimeout(()=>a.abort(),5e3),i=await fetch(`${e??o}/v1/tools`,{signal:a.signal,headers:{Accept:"application/json"}});if(clearTimeout(t),!i.ok)return{};let n=await i.json(),r={};for(let e of n.tools??[])e.id&&(r[e.id]=e);return r}catch{return{}}}let s={"video-audio":{id:"video-audio",name:"Video & Audio",description:"Index video and audio files with transcription and frame analysis.",category:"media",version:"0.2.1",pricing:"free",emoji:"🎬",icon:"Film",packageName:"@larkup/tool-video-audio",installSize:"~15 MB",systemDeps:["ffmpeg"],author:"Larkup",capabilities:["video-indexing","audio-indexing","transcription","frame-extraction","youtube-import"],tags:["transcription","ffmpeg","video","audio","whisper"],downloads:0,repositoryUrl:"https://github.com/Larkup-AI/larkup-rag",license:"Apache-2.0",updatedAt:"2026-07-20",configSchema:[{key:"frameInterval",label:"Frame extraction interval (seconds)",type:"text",defaultValue:"10",help:"Baseline cadence for duration-aware coverage frames; scene changes and a reserved ending pass are added separately."},{key:"audioProvider",label:"Audio Provider",type:"select",help:"Choose the provider used only for audio and video transcription.",options:[{label:"OpenAI",value:"openai"},{label:"Groq",value:"groq"},{label:"Deepgram",value:"deepgram"},{label:"ElevenLabs",value:"elevenlabs"},{label:"Local Whisper",value:"local"}]},{key:"audioLanguage",label:"Transcription language",type:"text",defaultValue:"auto",help:"Use auto to infer Arabic from the media title and use provider detection otherwise. Enter a language code such as ar, ar-EG, en, or de to override it."},{key:"audioApiKey",label:"Audio API Key",type:"password",help:"Required for the selected audio provider and kept separate from the chat model key."}]},"clip-embeddings":{id:"clip-embeddings",name:"CLIP Image Search",description:"Direct image-to-image similarity search using CLIP/SigLIP embeddings.",category:"embedding",version:"0.1.0",pricing:"free",emoji:"🔍",icon:"ScanEye",packageName:"@larkup/tool-clip-embeddings",installSize:"~200 MB",author:"Larkup",capabilities:["clip-embeddings","image-similarity"],tags:["clip","siglip","image-search","visual-similarity"],downloads:0,repositoryUrl:"https://github.com/Larkup-AI/larkup-rag",license:"Apache-2.0",updatedAt:"2026-07-20",comingSoon:!0},"doc-editor":{id:"doc-editor",name:"Document Editor",description:"AI-powered form filling and document editing with Canvas-style live preview.",category:"utility",version:"0.2.3",pricing:"free",emoji:"📝",icon:"FileEdit",packageName:"@larkup/tool-doc-editor",installSize:"~5 MB",systemDeps:["docker"],author:"Larkup",capabilities:["document-editing","form-filling","document-preview"],tags:["pdf","docx","pptx","form","canvas","editor","fill"],downloads:0,repositoryUrl:"https://github.com/Larkup-AI/larkup-rag",license:"Apache-2.0",updatedAt:"2026-07-20"}};async function l(e){if(i)return i;let a={...s};return Object.assign(a,await n()),e?.skipHub||Object.assign(a,await r(e?.hubUrl)),i=a,a}async function c(){return Object.values(await l()).sort((e,a)=>e.name.localeCompare(a.name))}async function d(e){return(await l())[e]}async function u(e){return(await c()).filter(a=>a.capabilities.includes(e))}e.s(["getAllTools",0,c,"getToolById",0,d,"getToolsWithCapability",0,u,"invalidateRegistryCache",0,function(){i=null}],612069)},463857,e=>{"use strict";var a=e.i(902157),t=e.i(750227),o=e.i(874533),i=e.i(812057),n=e.i(612069);let r=(0,i.promisify)(o.exec);function s(){return t.default.join(process.cwd(),".larkup","tools")}function l(){return t.default.join(s(),"installed.json")}async function c(){await a.promises.mkdir(s(),{recursive:!0})}async function d(){try{let e=await a.promises.readFile(l(),"utf8"),t=JSON.parse(e);for(let e of(t.downloadCounts||(t.downloadCounts={}),t.tools??[]))e.packagePath&&!e.packageName&&(e.packageName=e.packagePath,delete e.packagePath),e.source||(e.source="local"),e.resolvedPath||(e.resolvedPath=e.packageName);return t}catch{return{tools:[],downloadCounts:{},updatedAt:new Date().toISOString()}}}async function u(e){await c(),e.updatedAt=new Date().toISOString(),await a.promises.writeFile(l(),JSON.stringify(e,null,2),"utf8")}async function p(){let e=[...(await d()).tools];for(let a of(process.env.LARKUP_BUNDLED_TOOLS??"").split(",").map(e=>e.trim()).filter(Boolean)){if(e.some(e=>e.id===a))continue;let t=await (0,n.getToolById)(a);t&&e.push({id:a,version:t.version,installedAt:"bundled",packageName:t.packageName,resolvedPath:t.packageName,source:"local",config:E(t)})}return e}async function f(e){return(await p()).some(a=>a.id===e)}async function m(e){return(await p()).find(a=>a.id===e)}async function g(){return(await d()).downloadCounts}async function w(e){let a=await (0,n.getToolById)(e);if(!a?.systemDeps?.length)return[];let t=h(),o=[];for(let e of a.systemDeps)if("docker"!==t||"docker"!==e)try{await r(`which ${e}`)}catch{o.push(e)}return o}function h(){let a=process.env.LARKUP_DEPLOYMENT_TARGET;return a&&["local","docker","serverless","sandbox"].includes(a)?a:process.env.VERCEL||process.env.AWS_LAMBDA_FUNCTION_NAME?"serverless":process.env.DOCKER_CONTAINER||function(){try{return e.r(902157).existsSync("/.dockerenv")}catch{return!1}}()?"docker":process.env.E2B_SANDBOX_ID||process.env.MODAL_TASK_ID?"sandbox":"local"}async function y(){let e=s(),o=t.default.join(e,"package.json");try{await a.promises.access(o)}catch{await c(),await a.promises.writeFile(o,JSON.stringify({name:"larkup-tools",version:"1.0.0",private:!0,description:"Isolated directory for installed Larkup marketplace tools."},null,2),"utf8")}}async function v(e,o,i,n){let l=s();switch(i){case"local":case"docker":{await y();let i=async e=>{let a=`npm install ${e} --prefix "${l}" --save --no-audit --no-fund`;n?.(`Running: npm install ${e}`);let{stderr:t}=await r(a,{cwd:l,timeout:12e4,env:{...process.env,NODE_ENV:"production"}});t&&!t.includes("npm warn")&&console.warn(`[marketplace] Install stderr: ${t}`)};try{await i(`${e}@${o}`)}catch(t){let a=t instanceof Error?t.message:"Install command failed";if(!a.includes("ETARGET")&&!a.includes("No matching version found"))throw Error(`Failed to install ${e}: ${a}`);n?.(`Catalog version ${o} is unavailable; installing the latest published version…`);try{await i(`${e}@latest`)}catch(t){let a=t instanceof Error?t.message:"Install command failed";throw Error(`Failed to install ${e}: ${a}`)}}let s=t.default.join(l,"node_modules",e);try{await a.promises.access(s)}catch{throw Error(`Package ${e} was installed but could not be found at ${s}`)}let c=JSON.parse(await a.promises.readFile(t.default.join(s,"package.json"),"utf8"));return{resolvedPath:s,version:c.version??o}}case"serverless":{n?.("Serverless environment detected — queuing for next deploy");let i=t.default.join(l,"pending-tools.json"),r={tools:[]};try{let e=await a.promises.readFile(i,"utf8");r=JSON.parse(e)}catch{}return r.tools.push({packageName:e,version:o}),await c(),await a.promises.writeFile(i,JSON.stringify(r,null,2),"utf8"),{resolvedPath:t.default.join(l,"node_modules",e),version:o}}case"sandbox":{n?.("Installing in sandbox environment"),await y();let a=`npm install ${e}@${o} --prefix "${l}" --save --no-audit --no-fund`;return await r(a,{cwd:l,timeout:12e4}),{resolvedPath:t.default.join(l,"node_modules",e),version:o}}default:throw Error(`Unsupported deployment target: ${i}`)}}async function k(e){let a=await (0,n.getToolById)(e);if(a)return a;throw Error(`Unknown tool: ${e}. Not found in local registry or Hub.`)}async function b(e){try{let{stdout:a}=await r("pnpm ls -r --depth -1 --json 2>/dev/null || true",{cwd:process.cwd(),timeout:1e4}),t=JSON.parse(a||"[]");return Array.isArray(t)&&t.some(a=>a.name===e)}catch{return!1}}async function A(e,a){let o=(t,o,i)=>{a?.({toolId:e,stage:t,percent:o,message:i})};try{let a,i;o("checking-deps",5,"Resolving tool manifest…");let r=await k(e);if(r.comingSoon)throw Error(`${r.name} is coming soon.`);o("checking-deps",15,"Checking system dependencies…");let s=await w(e);if(s.length>0){let e=`Missing system dependencies: ${s.join(", ")}. Please install them first.`;throw o("failed",0,e),Error(e)}let l=await b(r.packageName),p=h(),f=r.version;if(l){o("downloading",30,"Resolving workspace package…");try{let e=(()=>{let e=Error("Cannot find module as expression is too dynamic");throw e.code="MODULE_NOT_FOUND",e})();a=t.default.dirname(e)}catch{a=t.default.join(process.cwd(),"node_modules",r.packageName)}i="local",o("installing",60,"Workspace package resolved.")}else{o("downloading",30,`Downloading ${r.packageName}@${r.version}…`);let e=await v(r.packageName,r.version,p,e=>o("downloading",50,e));a=e.resolvedPath,f=e.version,i="sandbox"===p?"sandbox":"registry",o("installing",70,"Package installed.")}o("installing",80,"Registering tool…"),await c();let m=await d(),g=m.tools.findIndex(a=>a.id===e),y={id:e,version:f,installedAt:new Date().toISOString(),packageName:r.packageName,resolvedPath:a,source:i,config:E(r)};g>=0?m.tools[g]=y:m.tools.push(y),m.downloadCounts[e]=(m.downloadCounts[e]??0)+1,await u(m),I(e).catch(()=>{}),(0,n.invalidateRegistryCache)(),o("completed",100,"Installed successfully.")}catch(e){throw o("failed",0,e instanceof Error?e.message:"Installation failed."),e}}async function N(a){let t=await d(),o=t.tools.find(e=>e.id===a);if(t.tools=t.tools.filter(e=>e.id!==a),await u(t),o?.source==="registry"&&o.packageName)try{let e=s();await r(`npm uninstall ${o.packageName} --prefix "${e}"`,{cwd:e,timeout:3e4})}catch{}(0,n.invalidateRegistryCache)();let{unloadTool:i}=await e.A(484620);i(a)}async function I(e){let a=process.env.LARKUP_HUB_URL??"https://hub.larkup.de";try{let t=new AbortController,o=setTimeout(()=>t.abort(),3e3);await fetch(`${a}/v1/tools/${e}/installed`,{method:"POST",signal:t.signal,headers:{"Content-Type":"application/json"}}),clearTimeout(o)}catch{}}function E(e){let a={};for(let t of e.configSchema??[])void 0!==t.defaultValue&&(a[t.key]=t.defaultValue);return a}e.s(["getDownloadCounts",0,g,"getInstalledTool",0,m,"getInstalledTools",0,p,"installTool",0,A,"isToolInstalled",0,f,"uninstallTool",0,N])}];
1
+ module.exports=[612069,e=>{"use strict";var a=e.i(902157),t=e.i(750227);let o=process.env.LARKUP_HUB_URL??"https://hub.larkup.de",i=null;async function n(){let e={};for(let o of[t.default.resolve(process.cwd(),"packages","tools"),t.default.resolve(process.cwd(),"..","..","packages","tools"),t.default.resolve(process.cwd(),".larkup","tools","node_modules","@larkup"),t.default.resolve(process.cwd(),"..","..",".larkup","tools","node_modules","@larkup")])try{for(let i of(await a.promises.readdir(o,{withFileTypes:!0}))){if(!i.isDirectory())continue;let n=t.default.join(o,i.name,"tool.manifest.json");try{let t=await a.promises.readFile(n,"utf8"),o=JSON.parse(t);o.id&&(e[o.id]=o)}catch{}}}catch{}return e}async function r(e){try{let a=new AbortController,t=setTimeout(()=>a.abort(),5e3),i=await fetch(`${e??o}/v1/tools`,{signal:a.signal,headers:{Accept:"application/json"}});if(clearTimeout(t),!i.ok)return{};let n=await i.json(),r={};for(let e of n.tools??[])e.id&&(r[e.id]=e);return r}catch{return{}}}let s={"video-audio":{id:"video-audio",name:"Video & Audio",description:"Index video and audio files with transcription and frame analysis.",category:"media",version:"0.2.1",pricing:"free",emoji:"🎬",icon:"Film",packageName:"@larkup/tool-video-audio",installSize:"~15 MB",systemDeps:["ffmpeg"],author:"Larkup",capabilities:["video-indexing","audio-indexing","transcription","frame-extraction","youtube-import"],tags:["transcription","ffmpeg","video","audio","whisper"],downloads:0,repositoryUrl:"https://github.com/Larkup-AI/larkup-rag",license:"Apache-2.0",updatedAt:"2026-07-20",configSchema:[{key:"frameInterval",label:"Frame extraction interval (seconds)",type:"text",defaultValue:"10",help:"Baseline cadence for duration-aware coverage frames; scene changes and a reserved ending pass are added separately."},{key:"audioProvider",label:"Audio Provider",type:"select",help:"Choose the provider used only for audio and video transcription.",options:[{label:"OpenAI",value:"openai"},{label:"Groq",value:"groq"},{label:"Deepgram",value:"deepgram"},{label:"ElevenLabs",value:"elevenlabs"},{label:"Local Whisper",value:"local"}]},{key:"audioLanguage",label:"Transcription language",type:"text",defaultValue:"auto",help:"Use auto to infer Arabic from the media title and use provider detection otherwise. Enter a language code such as ar, ar-EG, en, or de to override it."},{key:"audioApiKey",label:"Audio API Key",type:"password",help:"Required for the selected audio provider and kept separate from the chat model key."}]},"clip-embeddings":{id:"clip-embeddings",name:"CLIP Image Search",description:"Direct image-to-image similarity search using CLIP/SigLIP embeddings.",category:"embedding",version:"0.1.0",pricing:"free",emoji:"🔍",icon:"ScanEye",packageName:"@larkup/tool-clip-embeddings",installSize:"~200 MB",author:"Larkup",capabilities:["clip-embeddings","image-similarity"],tags:["clip","siglip","image-search","visual-similarity"],downloads:0,repositoryUrl:"https://github.com/Larkup-AI/larkup-rag",license:"Apache-2.0",updatedAt:"2026-07-20",comingSoon:!0},"doc-editor":{id:"doc-editor",name:"Document Editor",description:"AI-powered form filling and document editing with Canvas-style live preview.",category:"utility",version:"0.2.3",pricing:"free",emoji:"📝",icon:"FileEdit",packageName:"@larkup/tool-doc-editor",installSize:"~5 MB",systemDeps:["docker"],author:"Larkup",capabilities:["document-editing","form-filling","document-preview"],tags:["pdf","docx","pptx","form","canvas","editor","fill"],downloads:0,repositoryUrl:"https://github.com/Larkup-AI/larkup-rag",license:"Apache-2.0",updatedAt:"2026-07-20"}};async function l(e){if(i)return i;let a={...s};return Object.assign(a,await n()),e?.skipHub||Object.assign(a,await r(e?.hubUrl)),i=a,a}async function c(){return Object.values(await l()).sort((e,a)=>e.name.localeCompare(a.name))}async function d(e){return(await l())[e]}async function u(e){return(await c()).filter(a=>a.capabilities.includes(e))}e.s(["getAllTools",0,c,"getToolById",0,d,"getToolsWithCapability",0,u,"invalidateRegistryCache",0,function(){i=null}],612069)},463857,e=>{"use strict";var a=e.i(902157),t=e.i(750227),o=e.i(874533),i=e.i(812057),n=e.i(612069);let r=(0,i.promisify)(o.exec);function s(){return t.default.join(process.cwd(),".larkup","tools")}function l(){return t.default.join(s(),"installed.json")}async function c(){await a.promises.mkdir(s(),{recursive:!0})}async function d(){try{let e=await a.promises.readFile(l(),"utf8"),t=JSON.parse(e);for(let e of(t.downloadCounts||(t.downloadCounts={}),t.tools??[]))e.packagePath&&!e.packageName&&(e.packageName=e.packagePath,delete e.packagePath),e.source||(e.source="local"),e.resolvedPath||(e.resolvedPath=e.packageName);return t}catch{return{tools:[],downloadCounts:{},updatedAt:new Date().toISOString()}}}async function u(e){await c(),e.updatedAt=new Date().toISOString(),await a.promises.writeFile(l(),JSON.stringify(e,null,2),"utf8")}async function p(){let e=[...(await d()).tools];for(let a of(process.env.LARKUP_BUNDLED_TOOLS??"").split(",").map(e=>e.trim()).filter(Boolean)){if(e.some(e=>e.id===a))continue;let t=await (0,n.getToolById)(a);t&&e.push({id:a,version:t.version,installedAt:"bundled",packageName:t.packageName,resolvedPath:t.packageName,source:"local",config:I(t)})}return e}async function f(e){return(await p()).some(a=>a.id===e)}async function m(e){return(await p()).find(a=>a.id===e)}async function g(){return(await d()).downloadCounts}async function w(e){let a=await (0,n.getToolById)(e);if(!a?.systemDeps?.length)return[];let t=h(),o=[];for(let e of a.systemDeps)if("docker"!==t||"docker"!==e)try{await r(`which ${e}`)}catch{o.push(e)}return o}function h(){let a=process.env.LARKUP_DEPLOYMENT_TARGET;return a&&["local","docker","serverless","sandbox"].includes(a)?a:process.env.VERCEL||process.env.AWS_LAMBDA_FUNCTION_NAME?"serverless":process.env.DOCKER_CONTAINER||function(){try{return e.r(902157).existsSync("/.dockerenv")}catch{return!1}}()?"docker":process.env.E2B_SANDBOX_ID||process.env.MODAL_TASK_ID?"sandbox":"local"}async function y(){let e=s(),o=t.default.join(e,"package.json");try{await a.promises.access(o)}catch{await c(),await a.promises.writeFile(o,JSON.stringify({name:"larkup-tools",version:"1.0.0",private:!0,description:"Isolated directory for installed Larkup marketplace tools."},null,2),"utf8")}}async function v(e,o,i,n){let l=s();switch(i){case"local":case"docker":{await y();let s=async e=>{let a=`npm install ${e} --prefix "${l}" --save --no-audit --no-fund`;n?.(`Running: npm install ${e}`);let{stderr:o}=await r(a,{cwd:l,timeout:"docker"===i?3e5:12e4,env:{...process.env,NODE_ENV:"production",HOME:process.env.HOME&&"/nonexistent"!==process.env.HOME?process.env.HOME:l,npm_config_cache:t.default.join(l,".npm-cache"),npm_config_update_notifier:"false"}});o&&!o.includes("npm warn")&&console.warn(`[marketplace] Install stderr: ${o}`)};try{await s(`${e}@${o}`)}catch(t){let a=t instanceof Error?t.message:"Install command failed";if(!a.includes("ETARGET")&&!a.includes("No matching version found"))throw Error(`Failed to install ${e}: ${a}`);n?.(`Catalog version ${o} is unavailable; installing the latest published version…`);try{await s(`${e}@latest`)}catch(t){let a=t instanceof Error?t.message:"Install command failed";throw Error(`Failed to install ${e}: ${a}`)}}let c=t.default.join(l,"node_modules",e);try{await a.promises.access(c)}catch{throw Error(`Package ${e} was installed but could not be found at ${c}`)}let d=JSON.parse(await a.promises.readFile(t.default.join(c,"package.json"),"utf8"));return{resolvedPath:c,version:d.version??o}}case"serverless":{n?.("Serverless environment detected — queuing for next deploy");let i=t.default.join(l,"pending-tools.json"),r={tools:[]};try{let e=await a.promises.readFile(i,"utf8");r=JSON.parse(e)}catch{}return r.tools.push({packageName:e,version:o}),await c(),await a.promises.writeFile(i,JSON.stringify(r,null,2),"utf8"),{resolvedPath:t.default.join(l,"node_modules",e),version:o}}case"sandbox":{n?.("Installing in sandbox environment"),await y();let a=`npm install ${e}@${o} --prefix "${l}" --save --no-audit --no-fund`;return await r(a,{cwd:l,timeout:12e4}),{resolvedPath:t.default.join(l,"node_modules",e),version:o}}default:throw Error(`Unsupported deployment target: ${i}`)}}async function k(e){let a=await (0,n.getToolById)(e);if(a)return a;throw Error(`Unknown tool: ${e}. Not found in local registry or Hub.`)}async function b(e){try{let{stdout:a}=await r("pnpm ls -r --depth -1 --json 2>/dev/null || true",{cwd:process.cwd(),timeout:1e4}),t=JSON.parse(a||"[]");return Array.isArray(t)&&t.some(a=>a.name===e)}catch{return!1}}async function A(e,a){let o=(t,o,i)=>{a?.({toolId:e,stage:t,percent:o,message:i})};try{let a,i;o("checking-deps",5,"Resolving tool manifest…");let r=await k(e);if(r.comingSoon)throw Error(`${r.name} is coming soon.`);o("checking-deps",15,"Checking system dependencies…");let s=await w(e);if(s.length>0){let e=`Missing system dependencies: ${s.join(", ")}. Please install them first.`;throw o("failed",0,e),Error(e)}let l=await b(r.packageName),p=h(),f=r.version;if(l){o("downloading",30,"Resolving workspace package…");try{let e=(()=>{let e=Error("Cannot find module as expression is too dynamic");throw e.code="MODULE_NOT_FOUND",e})();a=t.default.dirname(e)}catch{a=t.default.join(process.cwd(),"node_modules",r.packageName)}i="local",o("installing",60,"Workspace package resolved.")}else{o("downloading",30,`Downloading ${r.packageName}@${r.version}…`);let e=await v(r.packageName,r.version,p,e=>o("downloading",50,e));a=e.resolvedPath,f=e.version,i="sandbox"===p?"sandbox":"registry",o("installing",70,"Package installed.")}o("installing",80,"Registering tool…"),await c();let m=await d(),g=m.tools.findIndex(a=>a.id===e),y={id:e,version:f,installedAt:new Date().toISOString(),packageName:r.packageName,resolvedPath:a,source:i,config:I(r)};g>=0?m.tools[g]=y:m.tools.push(y),m.downloadCounts[e]=(m.downloadCounts[e]??0)+1,await u(m),E(e).catch(()=>{}),(0,n.invalidateRegistryCache)(),o("completed",100,"Installed successfully.")}catch(e){throw o("failed",0,e instanceof Error?e.message:"Installation failed."),e}}async function N(a){let t=await d(),o=t.tools.find(e=>e.id===a);if(t.tools=t.tools.filter(e=>e.id!==a),await u(t),o?.source==="registry"&&o.packageName)try{let e=s();await r(`npm uninstall ${o.packageName} --prefix "${e}"`,{cwd:e,timeout:3e4})}catch{}(0,n.invalidateRegistryCache)();let{unloadTool:i}=await e.A(484620);i(a)}async function E(e){let a=process.env.LARKUP_HUB_URL??"https://hub.larkup.de";try{let t=new AbortController,o=setTimeout(()=>t.abort(),3e3);await fetch(`${a}/v1/tools/${e}/installed`,{method:"POST",signal:t.signal,headers:{"Content-Type":"application/json"}}),clearTimeout(o)}catch{}}function I(e){let a={};for(let t of e.configSchema??[])void 0!==t.defaultValue&&(a[t.key]=t.defaultValue);return a}e.s(["getDownloadCounts",0,g,"getInstalledTool",0,m,"getInstalledTools",0,p,"installTool",0,A,"isToolInstalled",0,f,"uninstallTool",0,N])}];
2
2
 
3
3
  //# sourceMappingURL=packages_marketplace_src_125_g2p._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[918622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},120635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},440463,(a,b,c)=>{"use strict";b.exports=a.r(918622)},887556,(a,b,c)=>{"use strict";b.exports=a.r(440463).vendored["react-ssr"].React},360809,(a,b,c)=>{"use strict";b.exports=a.r(440463).vendored["react-ssr"].ReactJsxRuntime},199793,(a,b,c)=>{"use strict";b.exports=a.r(440463).vendored["react-ssr"].ReactDOM},104842,(a,b,c)=>{"use strict";b.exports=a.r(440463).vendored.contexts.AppRouterContext},527797,(a,b,c)=>{"use strict";b.exports=a.r(440463).vendored.contexts.HooksClientContext},641048,(a,b,c)=>{"use strict";b.exports=a.r(440463).vendored.contexts.ServerInsertedHtml},495580,(a,b,c)=>{"use strict";b.exports=a.r(440463).vendored["react-ssr"].ReactServerDOMTurbopackClient},816995,a=>{"use strict";let b=(0,a.i(326729).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);a.s(["ChevronLeft",0,b],816995)},426490,a=>{"use strict";let b=(0,a.i(326729).default)("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"}]]);a.s(["RotateCcw",0,b],426490)},566005,a=>{"use strict";let b=(0,a.i(326729).default)("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"}]]);a.s(["Settings",0,b],566005)},216615,a=>{"use strict";let b=(0,a.i(326729).default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);a.s(["ArrowUp",0,b],216615)},914053,a=>{a.v(b=>Promise.all(["server/chunks/ssr/node_modules__pnpm_0xqqdqu._.js"].map(b=>a.l(b))).then(()=>b(960091)))},69832,a=>{a.v(b=>Promise.all(["server/chunks/ssr/node_modules__pnpm_19epw40._.js"].map(b=>a.l(b))).then(()=>b(858630)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0wdatpx._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0m21fli._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[688947,(a,b,c)=>{b.exports=a.x("stream",()=>require("stream"))},491543,a=>{"use strict";let b=(0,a.i(326729).default)("zap",[["path",{d:"M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z",key:"1v7up4"}]]);a.s(["Zap",0,b],491543)},683389,a=>{a.v(b=>Promise.all(["server/chunks/ssr/apps_web_lib_pdf-images_ts_13-l5wa._.js","server/chunks/ssr/0uph_pdfjs-dist_build_pdf_mjs_0pn2q_y._.js"].map(b=>a.l(b))).then(()=>b(802183)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1r9ap67._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0t8ud_u._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[814747,(a,b,c)=>{b.exports=a.x("path",()=>require("path"))},522734,(a,b,c)=>{b.exports=a.x("fs",()=>require("fs"))},446786,(a,b,c)=>{b.exports=a.x("os",()=>require("os"))},418953,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={VercelOidcTokenError:()=>k};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);class k extends Error{constructor(a,b){super(a),this.name="VercelOidcTokenError",this.cause=b}toString(){return this.cause?`${this.name}: ${this.message}: ${this.cause}`:`${this.name}: ${this.message}`}}},858885,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={AccessTokenMissingError:()=>k,RefreshAccessTokenFailedError:()=>l};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);class k extends Error{constructor(){super("No authentication found. Please log in with the Vercel CLI (vercel login)."),this.name="AccessTokenMissingError"}}class l extends Error{constructor(a){super("Failed to refresh authentication token.",{cause:a}),this.name="RefreshAccessTokenFailedError"}}},396924,(a,b,c)=>{"use strict";var d=Object.create,e=Object.defineProperty,f=Object.getOwnPropertyDescriptor,g=Object.getOwnPropertyNames,h=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,j=(a,b,c,d)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of g(b))i.call(a,h)||h===c||e(a,h,{get:()=>b[h],enumerable:!(d=f(b,h))||d.enumerable});return a},k=(a,b,c)=>(c=null!=a?d(h(a)):{},j(!b&&a&&a.__esModule?c:e(c,"default",{value:a,enumerable:!0}),a)),l={},m={findRootDir:()=>s,getUserDataDir:()=>t};for(var n in m)e(l,n,{get:m[n],enumerable:!0});b.exports=j(e({},"__esModule",{value:!0}),l);var o=k(a.r(814747)),p=k(a.r(522734)),q=k(a.r(446786)),r=a.r(418953);function s(){try{let a=process.cwd();for(;a!==o.default.dirname(a);){let b=o.default.join(a,".vercel");if(p.default.existsSync(b))return a;a=o.default.dirname(a)}}catch(a){throw new r.VercelOidcTokenError("Token refresh only supported in node server environments")}return null}function t(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(q.default.platform()){case"darwin":return o.default.join(q.default.homedir(),"Library/Application Support");case"linux":return o.default.join(q.default.homedir(),".local/share");case"win32":if(process.env.LOCALAPPDATA)return process.env.LOCALAPPDATA;return null;default:return null}}},324766,(a,b,c)=>{"use strict";var d=Object.create,e=Object.defineProperty,f=Object.getOwnPropertyDescriptor,g=Object.getOwnPropertyNames,h=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,j=(a,b,c,d)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of g(b))i.call(a,h)||h===c||e(a,h,{get:()=>b[h],enumerable:!(d=f(b,h))||d.enumerable});return a},k=(a,b,c)=>(c=null!=a?d(h(a)):{},j(!b&&a&&a.__esModule?c:e(c,"default",{value:a,enumerable:!0}),a)),l={},m={isValidAccessToken:()=>u,readAuthConfig:()=>s,writeAuthConfig:()=>t};for(var n in m)e(l,n,{get:m[n],enumerable:!0});b.exports=j(e({},"__esModule",{value:!0}),l);var o=k(a.r(522734)),p=k(a.r(814747)),q=a.r(27593);function r(){let a=(0,q.getVercelDataDir)();if(!a)throw Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return p.join(a,"auth.json")}function s(){try{let a=r();if(!o.existsSync(a))return null;let b=o.readFileSync(a,"utf8");if(!b)return null;return JSON.parse(b)}catch(a){return null}}function t(a){let b=r(),c=p.dirname(b);o.existsSync(c)||o.mkdirSync(c,{mode:504,recursive:!0}),o.writeFileSync(b,JSON.stringify(a,null,2),{mode:384})}function u(a,b=0){if(!a.token)return!1;if("number"!=typeof a.expiresAt)return!0;let c=Math.floor(Date.now()/1e3);return a.expiresAt>=c+b/1e3}},561982,(a,b,c)=>{"use strict";var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={processTokenResponse:()=>p,refreshTokenRequest:()=>o};for(var j in i)d(h,j,{get:i[j],enumerable:!0});b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);var k=a.r(446786);let l=`@vercel/oidc node-${process.version} ${(0,k.platform)()} (${(0,k.arch)()}) ${(0,k.hostname)()}`,m=null;async function n(){if(m)return m;let a=await fetch("https://vercel.com/.well-known/openid-configuration",{headers:{"user-agent":l}});if(!a.ok)throw Error("Failed to discover OAuth endpoints");let b=await a.json();if(!b||"string"!=typeof b.token_endpoint)throw Error("Invalid OAuth discovery response");let c=b.token_endpoint;return m=c,c}async function o(a){let b=await n();return await fetch(b,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded","user-agent":l},body:new URLSearchParams({client_id:"cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp",grant_type:"refresh_token",...a})})}async function p(a){let b=await a.json();return a.ok?"object"!=typeof b||null===b?[Error("Invalid token response")]:"string"!=typeof b.access_token?[Error("Missing access_token in response")]:"Bearer"!==b.token_type?[Error("Invalid token_type in response")]:"number"!=typeof b.expires_in?[Error("Missing expires_in in response")]:[null,b]:[Error("object"==typeof b&&b&&"error"in b?String(b.error):"Token refresh failed")]}},27593,(a,b,c)=>{"use strict";var d=Object.create,e=Object.defineProperty,f=Object.getOwnPropertyDescriptor,g=Object.getOwnPropertyNames,h=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,j=(a,b,c,d)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of g(b))i.call(a,h)||h===c||e(a,h,{get:()=>b[h],enumerable:!(d=f(b,h))||d.enumerable});return a},k=(a,b,c)=>(c=null!=a?d(h(a)):{},j(!b&&a&&a.__esModule?c:e(c,"default",{value:a,enumerable:!0}),a)),l={},m={assertVercelOidcTokenResponse:()=>y,findProjectInfo:()=>z,getTokenPayload:()=>C,getVercelDataDir:()=>v,getVercelOidcToken:()=>x,getVercelToken:()=>w,isExpired:()=>D,loadToken:()=>B,saveToken:()=>A};for(var n in m)e(l,n,{get:m[n],enumerable:!0});b.exports=j(e({},"__esModule",{value:!0}),l);var o=k(a.r(814747)),p=k(a.r(522734)),q=a.r(418953),r=a.r(396924),s=a.r(324766),t=a.r(561982),u=a.r(858885);function v(){let a=(0,r.getUserDataDir)();return a?o.join(a,"com.vercel.cli"):null}async function w(a){let b=(0,s.readAuthConfig)();if(!b?.token)throw new u.AccessTokenMissingError;if((0,s.isValidAccessToken)(b,a?.expirationBufferMs))return b.token;if(!b.refreshToken)throw(0,s.writeAuthConfig)({}),new u.RefreshAccessTokenFailedError("No refresh token available");try{let a=await (0,t.refreshTokenRequest)({refresh_token:b.refreshToken}),[c,d]=await (0,t.processTokenResponse)(a);if(c||!d)throw(0,s.writeAuthConfig)({}),new u.RefreshAccessTokenFailedError(c);let e={token:d.access_token,expiresAt:Math.floor(Date.now()/1e3)+d.expires_in};return d.refresh_token&&(e.refreshToken=d.refresh_token),(0,s.writeAuthConfig)(e),e.token}catch(a){if((0,s.writeAuthConfig)({}),a instanceof u.AccessTokenMissingError||a instanceof u.RefreshAccessTokenFailedError)throw a;throw new u.RefreshAccessTokenFailedError(a)}}async function x(a,b,c){let d=`https://api.vercel.com/v1/projects/${b}/token?source=vercel-oidc-refresh${c?`&teamId=${c}`:""}`,e=await fetch(d,{method:"POST",headers:{Authorization:`Bearer ${a}`}});if(!e.ok)throw new q.VercelOidcTokenError(`Failed to refresh OIDC token: ${e.statusText}`);let f=await e.json();return y(f),f}function y(a){if(!a||"object"!=typeof a)throw TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!("token"in a)||"string"!=typeof a.token)throw TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}function z(){let a=(0,r.findRootDir)();if(!a)throw new q.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");let b=o.join(a,".vercel","project.json");if(!p.existsSync(b))throw new q.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");let c=JSON.parse(p.readFileSync(b,"utf8"));if("string"!=typeof c.projectId&&"string"!=typeof c.orgId)throw TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:c.projectId,teamId:c.orgId}}function A(a,b){let c=(0,r.getUserDataDir)();if(!c)throw new q.VercelOidcTokenError("Unable to find user data directory. Please reach out to Vercel support.");let d=o.join(c,"com.vercel.token",`${b}.json`),e=JSON.stringify(a);p.mkdirSync(o.dirname(d),{mode:504,recursive:!0}),p.writeFileSync(d,e),p.chmodSync(d,432)}function B(a){let b=(0,r.getUserDataDir)();if(!b)throw new q.VercelOidcTokenError("Unable to find user data directory. Please reach out to Vercel support.");let c=o.join(b,"com.vercel.token",`${a}.json`);if(!p.existsSync(c))return null;let d=JSON.parse(p.readFileSync(c,"utf8"));return y(d),d}function C(a){let b=a.split(".");if(3!==b.length)throw new q.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=c.padEnd(c.length+(4-c.length%4)%4,"=");return JSON.parse(Buffer.from(d,"base64").toString("utf8"))}function D(a,b=0){return 1e3*a.exp<Date.now()+b}},283551,a=>{a.v(a=>Promise.resolve().then(()=>a(27593)))},540256,a=>{a.v(b=>Promise.all(["server/chunks/ssr/15sd_@vercel_oidc_dist_token_18nx6en.js"].map(b=>a.l(b))).then(()=>b(921700)))},209124,a=>{a.v(b=>Promise.all(["server/chunks/ssr/0uph_pdfjs-dist_build_pdf_mjs_0pn2q_y._.js"].map(b=>a.l(b))).then(()=>b(531245)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__046ldu_._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0xyo3ni._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[610520,a=>{"use strict";let b=(0,a.i(326729).default)("message-circle",[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]]);a.s(["MessageCircle",0,b],610520)},94842,a=>{"use strict";var b,c,d=a.i(360809);a.s([],994089),a.i(994089);var e=a.i(887556),f=a.i(361823);let g=e.createContext(void 0);function h(a){let b=e.useContext(g);if(void 0===b&&!a)throw Error((0,f.default)(33));return b}let i=e.createContext(void 0);function j(a){let b=e.useContext(i);if(void 0===b&&!a)throw Error((0,f.default)(36));return b}var k=a.i(778868),l=a.i(705418);let m=e.forwardRef(function(a,b){let{render:c,className:d,style:e,...f}=a,{store:g}=j(),{arrowRef:i,side:m,align:n,arrowUncentered:o,arrowStyles:p}=h(),q=g.useState("open");return(0,k.useRenderElement)("div",a,{ref:[i,b],stateAttributesMapping:l.popupStateMapping,state:{open:q,side:m,align:n,uncentered:o},props:{style:p,"aria-hidden":!0,...f}})});var n=a.i(986301);let o=e.createContext(void 0);function p(a=!0){let b=e.useContext(o);if(void 0===b&&!a)throw Error((0,f.default)(25));return b}var q=a.i(4656);let r={...l.popupStateMapping,...n.transitionStatusMapping},s=e.forwardRef(function(a,b){let{render:c,className:d,style:e,...f}=a,{store:g}=j(),h=g.useState("open"),i=g.useState("mounted"),l=g.useState("transitionStatus"),m=g.useState("lastOpenChangeReason"),n=p();return(0,k.useRenderElement)("div",a,{ref:n?.backdropRef?[b,n.backdropRef]:b,state:{open:h,transitionStatus:l},stateAttributesMapping:r,props:[{role:"presentation",hidden:!i,style:{pointerEvents:m===q.REASONS.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},f]})});var t=a.i(228496);let u=e.createContext(void 0);var v=a.i(150186),w=a.i(320433),x=a.i(918268),y=a.i(588379);function z(a){let{closeOnClick:b,highlighted:c,id:d,nodeId:f,store:g,typingRef:h,itemRef:i,itemMetadata:j}=a,{events:k}=g.useState("floatingTreeRoot"),l=g.useState("open"),m=p(!0),n=void 0!==m;return e.useMemo(()=>({id:d,role:"menuitem",tabIndex:l&&c?0:-1,onKeyDown(a){" "===a.key&&h?.current&&a.preventDefault()},onMouseMove(a){f&&k.emit("itemhover",{nodeId:f,target:a.currentTarget})},onClick(a){b&&k.emit("close",{domEvent:a,reason:q.REASONS.itemPress})},onMouseUp(a){if(m){let b=m.initialCursorPointRef.current;if(m.initialCursorPointRef.current=null,n&&b&&1>=Math.abs(a.clientX-b.x)&&1>=Math.abs(a.clientY-b.y)||n&&!y.platform.os.mac&&2===a.button)return}i.current&&g.context.allowMouseUpTriggerRef.current&&(!n||2===a.button)&&(!j||"regular-item"===j.type)&&i.current.click()}}),[b,c,d,k,f,l,g,h,i,m,n,j])}let A={type:"regular-item"};function B(a){let{closeOnClick:b,disabled:c=!1,highlighted:d,id:f,store:g,typingRef:h=g.context.typingRef,nativeButton:i,itemMetadata:j,nodeId:k}=a,l=g.useState("disabled"),m=e.useRef(null),{getButtonProps:n,buttonRef:o}=(0,w.useButton)({disabled:c||l,focusableWhenDisabled:!0,native:i,composite:!0}),p=z({closeOnClick:b,highlighted:d,id:f,nodeId:k,store:g,typingRef:h,itemRef:m,itemMetadata:j}),q=e.useCallback(a=>(0,x.mergeProps)(p,{onMouseEnter(){"submenu-trigger"===j.type&&j.setActive()}},a,n),[p,n,j]),r=(0,v.useMergedRefs)(m,o);return e.useMemo(()=>({getItemProps:q,itemRef:r}),[q,r])}var C=a.i(881557),D=a.i(301857);let E=((b={}).checked="data-checked",b.unchecked="data-unchecked",b.disabled="data-disabled",b.highlighted="data-highlighted",b),F={checked:a=>a?{[E.checked]:""}:{[E.unchecked]:""},...n.transitionStatusMapping};var G=a.i(683273);let H=e.forwardRef(function(a,b){let{render:c,className:f,id:g,label:i,nativeButton:l=!1,disabled:m=!1,closeOnClick:n=!1,checked:o,defaultChecked:p,onCheckedChange:r,style:s,...v}=a,w=(0,C.useCompositeListItem)({label:i}),x=h(!0),y=(0,D.useBaseUiId)(g),{store:z}=j(),E=z.useState("isActive",w.index),H=z.useState("itemProps"),[I,J]=(0,t.useControlled)({controlled:o,default:p??!1,name:"MenuCheckboxItem",state:"checked"}),{getItemProps:K,itemRef:L}=B({closeOnClick:n,disabled:m,highlighted:E,id:y,store:z,nativeButton:l,nodeId:x?.context.nodeId,itemMetadata:A}),M=e.useMemo(()=>({disabled:m,highlighted:E,checked:I}),[m,E,I]),N=(0,k.useRenderElement)("div",a,{state:M,stateAttributesMapping:F,props:[H,{role:"menuitemcheckbox","aria-checked":I,onClick:function(a){let b=(0,G.createChangeEventDetails)(q.REASONS.itemPress,a.nativeEvent,void 0,{preventUnmountOnClose(){}});r?.(!I,b),b.isCanceled||J(a=>!a)}},v,K],ref:[L,b,w.ref]});return(0,d.jsx)(u.Provider,{value:M,children:N})});var I=a.i(359513),J=a.i(145160);let K=e.forwardRef(function(a,b){let{render:c,className:d,style:g,keepMounted:h=!1,...i}=a,j=function(){let a=e.useContext(u);if(void 0===a)throw Error((0,f.default)(30));return a}(),l=e.useRef(null),{transitionStatus:m,setMounted:n}=(0,I.useTransitionStatus)(j.checked);(0,J.useOpenChangeComplete)({open:j.checked,ref:l,onComplete(){j.checked||n(!1)}});let o={checked:j.checked,disabled:j.disabled,highlighted:j.highlighted,transitionStatus:m};return(0,k.useRenderElement)("span",a,{state:o,ref:[b,l],stateAttributesMapping:F,props:{"aria-hidden":!0,...i},enabled:h||j.checked})}),L=e.createContext(void 0),M=e.forwardRef(function(a,b){let{render:c,className:f,style:g,...h}=a,[i,j]=e.useState(void 0),l=(0,k.useRenderElement)("div",a,{ref:b,props:{role:"group","aria-labelledby":i,...h}});return(0,d.jsx)(L.Provider,{value:j,children:l})});var N=a.i(131182);let O=e.forwardRef(function(a,b){let{render:c,className:d,style:g,id:h,...i}=a,j=(0,D.useBaseUiId)(h),l=function(){let a=e.useContext(L);if(void 0===a)throw Error((0,f.default)(31));return a}();return(0,N.useIsoLayoutEffect)(()=>(l(j),()=>{l(void 0)}),[l,j]),(0,k.useRenderElement)("div",a,{ref:b,props:{id:j,role:"presentation",...i}})}),P=e.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,nativeButton:g=!1,disabled:i=!1,closeOnClick:l=!0,style:m,...n}=a,o=(0,C.useCompositeListItem)({label:f}),p=h(!0),q=(0,D.useBaseUiId)(e),{store:r}=j(),s=r.useState("isActive",o.index),t=r.useState("itemProps"),{getItemProps:u,itemRef:v}=B({closeOnClick:l,disabled:i,highlighted:s,id:q,store:r,nativeButton:g,nodeId:p?.context.nodeId,itemMetadata:A});return(0,k.useRenderElement)("div",a,{state:{disabled:i,highlighted:s},props:[t,n,u],ref:[v,b,o.ref]})}),Q=e.forwardRef(function(a,b){let{render:c,className:d,id:f,label:g,closeOnClick:i=!1,style:l,...m}=a,n=e.useRef(null),o=(0,C.useCompositeListItem)({label:g}),p=h(!0),q=p?.context.nodeId,r=(0,D.useBaseUiId)(f),{store:s}=j(),t=s.useState("isActive",o.index),u=s.useState("itemProps"),v=s.context.typingRef,{getButtonProps:y,buttonRef:A}=(0,w.useButton)({native:!1,composite:!0}),B=z({closeOnClick:i,highlighted:t,id:r,nodeId:q,store:s,typingRef:v,itemRef:n});return(0,k.useRenderElement)("a",a,{state:{highlighted:t},props:[u,m,function(a){return(0,x.mergeProps)(B,a,y)}],ref:[n,A,b,o.ref]})});var R=a.i(574752),S=a.i(530540),T=a.i(575837),U=a.i(796324),V=a.i(979507);let W={...l.popupStateMapping,...n.transitionStatusMapping},X=e.forwardRef(function(a,b){let{render:c,className:f,style:g,finalFocus:i,...l}=a,{store:m}=j(),{side:n,align:o}=h(),p=null!=(0,T.useToolbarRootContext)(!0),r=m.useState("open"),s=m.useState("transitionStatus"),t=m.useState("popupProps"),u=m.useState("mounted"),v=m.useState("instantType"),w=m.useState("activeTriggerElement"),x=m.useState("parent"),y=m.useState("lastOpenChangeReason"),z=m.useState("rootId"),A=m.useState("floatingRootContext"),B=m.useState("floatingTreeRoot"),C=m.useState("closeDelay"),D=m.useState("activeTriggerElement"),E=m.useState("hoverEnabled"),F=m.useState("disabled"),H=m.useState("openMethod"),I="context-menu"===x.type;(0,J.useOpenChangeComplete)({open:r,ref:m.context.popupRef,onComplete(){r&&m.context.onOpenChangeComplete?.(!0)}}),e.useEffect(()=>{function a(a){m.setOpen(!1,(0,G.createChangeEventDetails)(a.reason,a.domEvent))}return B.events.on("close",a),()=>{B.events.off("close",a)}},[B.events,m]),(0,S.useHoverFloatingInteraction)(A,{enabled:E&&!F&&!I&&"menubar"!==x.type,closeDelay:C});let K=e.useCallback(a=>{m.set("popupElement",a)},[m]),L={transitionStatus:s,side:n,align:o,open:r,nested:"menu"===x.type,instant:v},M=(0,k.useRenderElement)("div",a,{state:L,ref:[b,m.context.popupRef,K],stateAttributesMapping:W,props:[t,{onKeyDown(a){p&&U.COMPOSITE_KEYS.has(a.key)&&a.stopPropagation()}},(0,V.getDisabledMountTransitionStyles)(s),l,{"data-rootownerid":z}]}),N=void 0===x.type||I;return(w||"menubar"===x.type&&y!==q.REASONS.outsidePress)&&(N=!0),(0,d.jsx)(R.FloatingFocusManager,{context:A,openInteractionType:H,modal:I,disabled:!u,returnFocus:void 0===i?N:i,initialFocus:"menu"!==x.type,restoreFocus:!0,externalTree:"menubar"!==x.type?B:void 0,previousFocusableElement:D,nextFocusableElement:void 0===x.type?m.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:void 0===x.type?m.context.beforeContentFocusGuardRef:void 0,children:M})});var Y=a.i(426035);let Z=e.createContext(void 0),$=e.forwardRef(function(a,b){let{keepMounted:c=!1,...e}=a,{store:f}=j();return f.useState("mounted")||c?(0,d.jsx)(Z.Provider,{value:c,children:(0,d.jsx)(Y.FloatingPortal,{ref:b,...e})}):null});var _=a.i(522110),aa=a.i(725511),ab=a.i(525446),ac=a.i(267123),ad=a.i(79930),ae=a.i(990667),af=a.i(802903),ag=a.i(893519),ah=a.i(839694),ai=a.i(332885),aj=a.i(709706);let ak=e.forwardRef(function(a,b){let{anchor:c,positionMethod:h="absolute",className:i,render:k,side:l,align:m,sideOffset:n=0,alignOffset:o=0,collisionBoundary:r="clipping-ancestors",collisionPadding:s=5,arrowPadding:t=5,sticky:u=!1,disableAnchorTracking:v=!1,collisionAvoidance:w=af.DROPDOWN_COLLISION_AVOIDANCE,style:x,...y}=a,{store:z}=j(),A=function(){let a=e.useContext(Z);if(void 0===a)throw Error((0,f.default)(32));return a}(),B=p(!0),C=z.useState("parent"),D=z.useState("floatingRootContext"),E=z.useState("floatingTreeRoot"),F=z.useState("mounted"),H=z.useState("open"),I=z.useState("modal"),J=z.useState("openMethod"),K=z.useState("activeTriggerElement"),L=z.useState("transitionStatus"),M=z.useState("positionerElement"),O=z.useState("instantType"),P=z.useState("hasViewport"),Q=z.useState("lastOpenChangeReason"),R=z.useState("floatingNodeId"),S=z.useState("floatingParentNodeId"),T=D.useState("domReferenceElement"),U=e.useRef(null),V=(0,ah.useAnimationsFinished)(M,!1,!1),W=c,X=n,Y=o,$=m,ak=w;"context-menu"===C.type&&(W=c??C.context?.anchor,$=$??"start",l||"center"===$||(Y=a.alignOffset??2,X=a.sideOffset??-5));let al=l,am=$;"menu"===C.type?(al=al??"inline-end",am=am??"start",ak=a.collisionAvoidance??af.POPUP_COLLISION_AVOIDANCE):"menubar"===C.type&&(al=al??("vertical"===C.context.orientation?"inline-end":"bottom"),am=am??"start");let an="context-menu"===C.type,ao=(0,ac.useAnchorPositioning)({anchor:W,floatingRootContext:D,positionMethod:B?"fixed":h,mounted:F,side:al,sideOffset:X,align:am,alignOffset:Y,arrowPadding:an?0:t,collisionBoundary:r,collisionPadding:s,sticky:u,nodeId:R,keepMounted:A,disableAnchorTracking:v,collisionAvoidance:ak,shiftCrossAxis:an&&!("side"in ak&&"flip"===ak.side),externalTree:E,adaptiveOrigin:P?ag.adaptiveOrigin:void 0});e.useEffect(()=>{function a(a){a.open&&(a.parentNodeId===R&&z.set("hoverEnabled",!1),a.nodeId!==R&&a.parentNodeId===z.select("floatingParentNodeId")&&z.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.siblingOpen)))}return E.events.on("menuopenchange",a),()=>{E.events.off("menuopenchange",a)}},[z,E.events,R]),e.useEffect(()=>{if(null!=z.select("floatingParentNodeId"))return E.events.on("menuopenchange",a),()=>{E.events.off("menuopenchange",a)};function a(a){if(a.open||a.nodeId!==z.select("floatingParentNodeId"))return;let b=a.reason??q.REASONS.siblingOpen;z.setOpen(!1,(0,G.createChangeEventDetails)(b))}},[E.events,z]);let ap=(0,aa.useTimeout)();e.useEffect(()=>{H||ap.clear()},[H,ap]),e.useEffect(()=>{function a(a){if(H&&a.nodeId===z.select("floatingParentNodeId"))if(a.target&&K&&K!==a.target){let a=z.select("closeDelay");a>0?ap.isStarted()||ap.start(a,()=>{z.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.siblingOpen))}):z.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.siblingOpen))}else ap.clear()}return E.events.on("itemhover",a),()=>{E.events.off("itemhover",a)}},[E.events,H,K,z,ap]),e.useEffect(()=>{let a={open:H,nodeId:R,parentNodeId:S,reason:z.select("lastOpenChangeReason")};E.events.emit("menuopenchange",a)},[E.events,H,z,R,S]),(0,N.useIsoLayoutEffect)(()=>{let a=U.current;if(T&&(U.current=T),a&&T&&T!==a){z.set("instantType",void 0);let a=new AbortController;return V(()=>{z.set("instantType","trigger-change")},a.signal),()=>{a.abort()}}},[T,V,z]);let aq={open:H,side:ao.side,align:ao.align,anchorHidden:ao.anchorHidden,nested:"menu"===C.type,instant:O},ar="menubar"===C.type&&C.context.modal,as=I&&Q!==q.REASONS.triggerHover;(0,aj.useAnchoredPopupScrollLock)(H&&(ar||as),"touch"===J,M,K);let at=(0,ai.usePositioner)(a,aq,{styles:ao.positionerStyles,transitionStatus:L,props:y,refs:[b,z.useStateSetter("positionerElement")],hidden:!F,inert:!H}),au=F&&"menu"!==C.type&&("menubar"!==C.type&&I&&Q!==q.REASONS.triggerHover||"menubar"===C.type&&C.context.modal),av=null;return"menubar"===C.type?av=C.context.contentElement:void 0===C.type&&(av=K),(0,d.jsxs)(g.Provider,{value:ao,children:[au&&(0,d.jsx)(ae.InternalBackdrop,{ref:"context-menu"===C.type||"nested-context-menu"===C.type?C.context.internalBackdropRef:null,inert:(0,_.inertValue)(!H),cutout:av}),(0,d.jsx)(ab.FloatingNode,{id:R,children:(0,d.jsx)(ad.CompositeList,{elementsRef:z.context.itemDomElements,labelsRef:z.context.itemLabels,children:at})})]})});var al=a.i(64732);let am=e.createContext(void 0),an=e.memo(e.forwardRef(function(a,b){let{render:c,className:f,value:g,defaultValue:h,onValueChange:i,disabled:j=!1,style:l,"aria-labelledby":m,...n}=a,[o,p]=e.useState(void 0),[q,r]=(0,t.useControlled)({controlled:g,default:h,name:"MenuRadioGroup"}),s=(0,al.useStableCallback)((a,b)=>{i?.(a,b),b.isCanceled||r(a)}),u=(0,k.useRenderElement)("div",a,{state:{disabled:j},ref:b,props:{role:"group","aria-labelledby":m??o,"aria-disabled":j||void 0,...n}}),v=e.useMemo(()=>({value:q,setValue:s,disabled:j}),[q,s,j]);return(0,d.jsx)(L.Provider,{value:p,children:(0,d.jsx)(am.Provider,{value:v,children:u})})})),ao=e.createContext(void 0),ap=e.forwardRef(function(a,b){let{render:c,className:g,id:i,label:l,nativeButton:m=!1,disabled:n=!1,closeOnClick:o=!1,value:p,style:r,...s}=a,t=(0,C.useCompositeListItem)({label:l}),u=h(!0),v=(0,D.useBaseUiId)(i),{store:w}=j(),x=w.useState("isActive",t.index),y=w.useState("itemProps"),{value:z,setValue:E,disabled:H}=function(){let a=e.useContext(am);if(void 0===a)throw Error((0,f.default)(34));return a}(),I=H||n,J=z===p,{getItemProps:K,itemRef:L}=B({closeOnClick:o,disabled:I,highlighted:x,id:v,store:w,nativeButton:m,nodeId:u?.context.nodeId,itemMetadata:A}),M=e.useMemo(()=>({disabled:I,highlighted:x,checked:J}),[I,x,J]),N=(0,k.useRenderElement)("div",a,{state:M,stateAttributesMapping:F,props:[y,{role:"menuitemradio","aria-checked":J,onClick:function(a){E(p,(0,G.createChangeEventDetails)(q.REASONS.itemPress,a.nativeEvent,void 0,{preventUnmountOnClose(){}}))}},s,K],ref:[L,b,t.ref]});return(0,d.jsx)(ao.Provider,{value:M,children:N})}),aq=e.forwardRef(function(a,b){let{render:c,className:d,style:g,keepMounted:h=!1,...i}=a,j=function(){let a=e.useContext(ao);if(void 0===a)throw Error((0,f.default)(35));return a}(),l=e.useRef(null),{transitionStatus:m,setMounted:n}=(0,I.useTransitionStatus)(j.checked);(0,J.useOpenChangeComplete)({open:j.checked,ref:l,onComplete(){j.checked||n(!1)}});let o={checked:j.checked,disabled:j.disabled,highlighted:j.highlighted,transitionStatus:m};return(0,k.useRenderElement)("span",a,{state:o,stateAttributesMapping:F,ref:[b,l],props:{"aria-hidden":!0,...i},enabled:h||j.checked})});var ar=a.i(35081),as=a.i(434380),at=a.i(42821),au=a.i(33746),av=a.i(7558),aw=a.i(71114),ax=a.i(541466);let ay=e.createContext(null);function az(a){let b=e.useContext(ay);if(null===b&&!a)throw Error((0,f.default)(5));return b}var aA=a.i(216064),aB=a.i(160768),aC=a.i(36185),aD=a.i(536569),aE=a.i(925977),aF=a.i(464547),aG=a.i(99332),aH=a.i(19821);let aI={...aG.popupStoreSelectors,disabled:(0,aC.createSelector)(a=>"menubar"===a.parent.type&&a.parent.context.disabled||a.disabled),modal:(0,aC.createSelector)(a=>(void 0===a.parent.type||"context-menu"===a.parent.type)&&(a.modal??!0)),openMethod:(0,aC.createSelector)(a=>a.openMethod),allowMouseEnter:(0,aC.createSelector)(a=>a.allowMouseEnter),highlightItemOnHover:(0,aC.createSelector)(a=>a.highlightItemOnHover),stickIfOpen:(0,aC.createSelector)(a=>a.stickIfOpen),parent:(0,aC.createSelector)(a=>a.parent),rootId:(0,aC.createSelector)(a=>"menu"===a.parent.type?a.parent.store.select("rootId"):void 0!==a.parent.type?a.parent.context.rootId:a.rootId),activeIndex:(0,aC.createSelector)(a=>a.activeIndex),isActive:(0,aC.createSelector)((a,b)=>a.activeIndex===b),hoverEnabled:(0,aC.createSelector)(a=>a.hoverEnabled),instantType:(0,aC.createSelector)(a=>a.instantType),lastOpenChangeReason:(0,aC.createSelector)(a=>a.openChangeReason),floatingTreeRoot:(0,aC.createSelector)(a=>"menu"===a.parent.type?a.parent.store.select("floatingTreeRoot"):a.floatingTreeRoot),floatingNodeId:(0,aC.createSelector)(a=>a.floatingNodeId),floatingParentNodeId:(0,aC.createSelector)(a=>a.floatingParentNodeId),itemProps:(0,aC.createSelector)(a=>a.itemProps),closeDelay:(0,aC.createSelector)(a=>a.closeDelay),hasViewport:(0,aC.createSelector)(a=>a.hasViewport),keyboardEventRelay:(0,aC.createSelector)(a=>a.keyboardEventRelay?a.keyboardEventRelay:"menu"===a.parent.type?a.parent.store.select("keyboardEventRelay"):void 0)};class aJ extends aD.ReactStore{constructor(a){super({...{...(0,aG.createInitialPopupStoreState)(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,stickIfOpen:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new aF.FloatingTreeStore,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:as.EMPTY_OBJECT,keyboardEventRelay:void 0,closeDelay:0,hasViewport:!1},...a},{positionerRef:e.createRef(),popupRef:e.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:e.createRef(),beforeContentFocusGuardRef:e.createRef(),onOpenChangeComplete:void 0,triggerElements:new aH.PopupTriggerMap},aI),this.unsubscribeParentListener=this.observe("parent",a=>{if(this.unsubscribeParentListener?.(),"menu"===a.type){let b=a.store.select("rootId"),c=a.store.select("floatingTreeRoot"),d=a.store.select("keyboardEventRelay");this.unsubscribeParentListener=a.store.subscribe(()=>{let e=a.store.select("rootId"),f=a.store.select("floatingTreeRoot"),g=a.store.select("keyboardEventRelay");(b!==e||c!==f||d!==g)&&(b=e,c=f,d=g,this.notifyAll())}),this.context.allowMouseUpTriggerRef=a.store.context.allowMouseUpTriggerRef;return}void 0!==a.type&&(this.context.allowMouseUpTriggerRef=a.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(a,b){this.state.floatingRootContext.context.events.emit("setOpen",{open:a,eventDetails:b})}static useStore(a,b){let c=(0,aE.useRefWithInit)(()=>new aJ(b)).current;return a??c}unsubscribeParentListener=null}var aK=a.i(947394);let aL=e.createContext(void 0);function aM(){return e.useContext(aL)}let aN=(0,at.fastComponent)(function(a){let b,{children:c,open:f,onOpenChange:g,onOpenChangeComplete:h,defaultOpen:k=!1,disabled:l=!1,modal:m,loopFocus:n=!0,orientation:o="vertical",actionsRef:r,closeParentOnEsc:s=!1,handle:t,triggerId:u,defaultTriggerId:v=null,highlightItemOnHover:w=!0}=a,y=p(!0),z=j(!0),A=az(!0),B=aM(),C=e.useMemo(()=>B&&z?{type:"menu",store:z.store}:A?{type:"menubar",context:A}:y&&!z?{type:"context-menu",context:y}:{type:void 0},[y,z,A,B]),D=aJ.useStore(t?.store,{open:k,openProp:f,activeTriggerId:v,triggerIdProp:u,parent:C});(0,aK.useInitialOpenSync)(D,f,k,v),D.useControlledProp("openProp",f),D.useControlledProp("triggerIdProp",u),D.useContextCallback("onOpenChangeComplete",h);let E=(0,ar.useId)(),F=(0,ar.useId)(),H=D.useState("floatingTreeRoot"),I=(0,ab.useFloatingNodeId)(H),J=(0,ab.useFloatingParentNodeId)(),K=D.useState("open"),L=D.useState("activeTriggerElement"),M=D.useState("positionerElement"),O=D.useState("hoverEnabled"),P=D.useState("disabled"),Q=D.useState("lastOpenChangeReason"),R=D.useState("parent"),S=D.useState("activeIndex"),T=D.useState("payload"),U=D.useState("floatingParentNodeId"),V=e.useRef(null),W=e.useRef("context-menu"!==R.type),X=(0,aa.useTimeout)(),Y=e.useRef(!0),Z=(0,aa.useTimeout)(),$=null!=U,{openMethod:_,triggerProps:ac}=(0,aB.useOpenInteractionType)(K);D.useSyncedValues({disabled:l,highlightItemOnHover:w,modal:void 0===R.type?m:void 0,openMethod:_,rootId:E}),(0,aK.useImplicitActiveTrigger)(D);let{forceUnmount:ad}=(0,aK.useOpenStateTransitions)(K,D,()=>{D.update({allowMouseEnter:!1,stickIfOpen:!0})});(0,N.useIsoLayoutEffect)(()=>{y&&!z?D.update({parent:{type:"context-menu",context:y},floatingNodeId:I,floatingParentNodeId:J}):z&&D.update({floatingNodeId:I,floatingParentNodeId:J})},[y,z,I,J,D]),e.useEffect(()=>{if(K||(V.current=null),"context-menu"===R.type){if(!K){X.clear(),W.current=!1;return}X.start(500,()=>{W.current=!0})}},[X,K,R.type]),(0,N.useIsoLayoutEffect)(()=>{K||O||D.set("hoverEnabled",!0)},[K,O,D]);let ae=(0,al.useStableCallback)((a,b)=>{let c=b.reason;if(K===a&&b.trigger===L&&Q===c)return;let d=(0,aK.attachPreventUnmountOnClose)(b);if(a||null!=b.trigger||(b.trigger=L??void 0),g?.(a,b),b.isCanceled)return;D.state.floatingRootContext.dispatchOpenChange(a,b);let e=b.event;if(!1===a&&e?.type==="click"&&"touch"===e.pointerType&&!Y.current)return;a&&c===q.REASONS.triggerFocus?(Y.current=!1,Z.start(300,()=>{Y.current=!0})):(Y.current=!0,Z.clear());let f=(c===q.REASONS.triggerPress||c===q.REASONS.itemPress)&&0===e.detail&&e?.isTrusted,h=!a&&(c===q.REASONS.escapeKey||null==c),i={open:a,openChangeReason:c};V.current=b.event??null,(0,aK.setPopupOpenState)(i,a,b.trigger,d()),D.update(i),"menubar"===R.type&&(c===q.REASONS.triggerFocus||c===q.REASONS.focusOut||c===q.REASONS.triggerHover||c===q.REASONS.listNavigation||c===q.REASONS.siblingOpen)?D.set("instantType","group"):f||h?D.set("instantType",f?"click":"dismiss"):D.set("instantType",void 0)}),ag=(0,ax.useSyncedFloatingRootContext)({popupStore:D,floatingId:F,nested:null!=J,onOpenChange:ae}),ah=ag.context.events;e.useEffect(()=>{let a=({open:a,eventDetails:b})=>ae(a,b);return ah.on("setOpen",a),()=>{ah?.off("setOpen",a)}},[ah,ae]);let ai=e.useCallback(()=>{D.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.imperativeAction))},[D]);e.useImperativeHandle(r,()=>({unmount:ad,close:ai}),[ad,ai]),"context-menu"===R.type&&(b=R.context),e.useImperativeHandle(b?.positionerRef,()=>M,[M]),e.useImperativeHandle(b?.actionsRef,()=>({setOpen:ae}),[ae]);let aj=(0,au.useDismiss)(ag,{enabled:!P,bubbles:{escapeKey:s&&"menu"===R.type},outsidePress:()=>"context-menu"!==R.type||V.current?.type==="contextmenu"||W.current,externalTree:$?H:void 0}),ak=(0,aA.useDirection)(),am=e.useCallback(a=>{D.select("activeIndex")!==a&&D.set("activeIndex",a)},[D]),an=(0,av.useListNavigation)(ag,{enabled:!P,listRef:D.context.itemDomElements,activeIndex:S,nested:void 0!==R.type,loopFocus:n,orientation:o,parentOrientation:"menubar"===R.type?R.context.orientation:void 0,rtl:"rtl"===ak,disabledIndices:as.EMPTY_ARRAY,onNavigate:am,openOnArrowKeyDown:"context-menu"!==R.type,externalTree:$?H:void 0,focusItemOnHover:w}),ao=e.useCallback(a=>{D.context.typingRef.current=a},[D]),ap=(0,aw.useTypeahead)(ag,{enabled:!P,listRef:D.context.itemLabels,elementsRef:D.context.itemDomElements,activeIndex:S,resetMs:af.TYPEAHEAD_RESET_MS,onMatch:a=>{K&&a!==S&&D.set("activeIndex",a)},onTyping:ao}),aq=e.useMemo(()=>{let a=(0,x.mergeProps)(ap.reference,an.reference,aj.reference,{onMouseMove(){D.set("allowMouseEnter",!0)}},ac);return a["aria-haspopup"]="menu",a["aria-expanded"]=K,a},[D,ap.reference,an.reference,aj.reference,ac,K]),at=e.useMemo(()=>{let a=(0,x.mergeProps)(an.trigger,aj.trigger,ac);return a["aria-haspopup"]="menu",a["aria-expanded"]=!1,a},[an.trigger,aj.trigger,ac]),ay=e.useMemo(()=>(0,x.mergeProps)(aK.FOCUSABLE_POPUP_PROPS,{id:F,role:"menu","aria-labelledby":L?.id,onMouseMove(){D.set("allowMouseEnter",!0),"menu"===R.type&&D.set("hoverEnabled",!1)},onClick(){D.select("hoverEnabled")&&D.set("hoverEnabled",!1)},onKeyDown(a){let b=D.select("keyboardEventRelay");b&&!a.isPropagationStopped()&&b(a)}},ap.floating,an.floating,aj.floating),[L,F,R.type,D,ap.floating,an.floating,aj.floating]),aC=an.item??as.EMPTY_OBJECT;(0,aK.usePopupInteractionProps)(D,{floatingRootContext:ag,activeTriggerProps:aq,inactiveTriggerProps:at,popupProps:ay,itemProps:aC});let aD=e.useMemo(()=>({store:D,parent:C}),[D,C]),aE=(0,d.jsx)(i.Provider,{value:aD,children:"function"==typeof c?c({payload:T}):c});return void 0===R.type||"context-menu"===R.type?(0,d.jsx)(ab.FloatingTree,{externalTree:H,children:aE}):aE});var aO=a.i(200585),aP=a.i(531883),aQ=a.i(106743),aR=a.i(573618),aS=a.i(485055),aT=a.i(807757),aU=a.i(496378),aV=a.i(500318);function aW(a){let{render:b,className:c,style:d,state:e=as.EMPTY_OBJECT,props:f=as.EMPTY_ARRAY,refs:g=as.EMPTY_ARRAY,metadata:h,stateAttributesMapping:i,tag:j="div",...l}=a,{compositeProps:m,compositeRef:n}=(0,aV.useCompositeItem)({metadata:h});return(0,k.useRenderElement)(j,a,{state:e,ref:[...g,n],props:[m,...f,l],stateAttributesMapping:i})}var aX=a.i(193482),aY=a.i(95133),aZ=a.i(199793),a$=a.i(452447),a_=a.i(503801);let a0=(0,at.fastComponentRef)(function(a,b){let c,g,h,i,{render:m,className:n,style:o,disabled:r=!1,nativeButton:s=!0,id:t,openOnHover:u,delay:v=100,closeDelay:y=0,handle:z,payload:A,...B}=a,C=j(!0),E=z?.store??C?.store;if(!E)throw Error((0,f.default)(85));let F=(0,D.useBaseUiId)(t),H=E.useState("isTriggerActive",F),I=E.useState("floatingRootContext"),J=E.useState("isOpenedByTrigger",F),K=E.useState("triggerPopupId",F),L=e.useRef(null),M=(c=p(!0),g=j(!0),h=az(!0),e.useMemo(()=>h?{type:"menubar",context:h}:c&&!g?{type:"context-menu",context:c}:{type:void 0},[c,g,h])),O=(0,aX.useCompositeRootContext)(!0),P=(0,ab.useFloatingTree)(),Q=e.useMemo(()=>P??new aF.FloatingTreeStore,[P]),R=(0,ab.useFloatingNodeId)(Q),S=(0,ab.useFloatingParentNodeId)(),{registerTrigger:T,isMountedByThisTrigger:U}=(0,aK.useTriggerDataForwarding)(F,L,E,{payload:A,closeDelay:y,parent:M,floatingTreeRoot:Q,floatingNodeId:R,floatingParentNodeId:S,keyboardEventRelay:O?.relayKeyboardEvent}),V="menubar"===M.type,W=E.useState("disabled"),X=r||W||V&&M.context.disabled,{getButtonProps:Y,buttonRef:Z}=(0,w.useButton)({disabled:X,native:s});e.useEffect(()=>{J||void 0!==M.type||(E.context.allowMouseUpTriggerRef.current=!1)},[E,J,M.type]);let $=e.useRef(null),_=(0,aa.useTimeout)(),ac=(0,al.useStableCallback)(a=>{if(!$.current)return;_.clear(),E.context.allowMouseUpTriggerRef.current=!1;let b=a.target;if((0,aT.contains)($.current,b)||(0,aT.contains)(E.select("positionerElement"),b)||b===$.current||null!=b&&function a(b){return(0,aY.isHTMLElement)(b)&&b.hasAttribute("data-rootownerid")?b.getAttribute("data-rootownerid")??void 0:(0,aY.isLastTraversableNode)(b)?void 0:a((0,aY.getParentNode)(b))}(b)===E.select("rootId"))return;let c=(0,aU.getPseudoElementBounds)($.current);a.clientX>=c.left-2&&a.clientX<=c.right+2&&a.clientY>=c.top-2&&a.clientY<=c.bottom+2||Q.events.emit("close",{domEvent:a,reason:q.REASONS.cancelOpen})});e.useEffect(()=>{J&&E.select("lastOpenChangeReason")===q.REASONS.triggerHover&&(0,aO.ownerDocument)($.current).addEventListener("mouseup",ac,{once:!0})},[J,ac,E]);let ad=V&&M.context.hasSubmenuOpen,ae=u??ad,ag=(0,aS.useHoverReferenceInteraction)(I,{enabled:ae&&!X&&"context-menu"!==M.type&&(!V||ad&&!U),handleClose:(0,aP.safePolygon)({blockPointerEvents:!V}),mouseOnly:!0,move:!1,restMs:void 0===M.type?v:void 0,delay:{close:y},triggerElementRef:L,externalTree:Q,isActiveTrigger:H,isClosing:()=>"ending"===E.select("transitionStatus")}),ah=function(a,b){let c=(0,aa.useTimeout)(),[d,f]=e.useState(!1);return(0,N.useIsoLayoutEffect)(()=>{a&&"trigger-hover"===b?(f(!0),c.start(af.PATIENT_CLICK_THRESHOLD,()=>{f(!1)})):a||(c.clear(),f(!1))},[a,b,c]),d}(J,E.select("lastOpenChangeReason")),ai=(0,aQ.useClick)(I,{enabled:!X&&"context-menu"!==M.type,event:J&&V?"click":"mousedown",toggle:!0,ignoreMouse:!1,stickIfOpen:void 0===M.type&&ah}),aj=(0,aR.useFocus)(I,{enabled:!X&&ad}),ak=function(a){let{enabled:b=!0,mouseDownAction:c,open:d}=a,f=e.useRef(!1);return e.useMemo(()=>b?{onMouseDown:a=>{("open"===c&&!d||"close"===c&&d)&&(f.current=!0,(0,aO.ownerDocument)(a.currentTarget).addEventListener("click",()=>{f.current=!1},{once:!0}))},onClick:a=>{f.current&&(f.current=!1,a.preventBaseUIHandler())}}:as.EMPTY_OBJECT,[b,c,d])}({open:J,enabled:V,mouseDownAction:"open"}),am=e.useMemo(()=>(0,x.mergeProps)(aj.reference,ai.reference),[aj.reference,ai.reference]),an=E.useState("triggerProps",U),{preFocusGuardRef:ao,handlePreFocusGuardFocus:ap,handleFocusTargetFocus:aq}={preFocusGuardRef:i=e.useRef(null),handlePreFocusGuardFocus:function(a){aZ.flushSync(()=>{E.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.focusOut,a.nativeEvent,a.currentTarget))});let b=(0,a$.getTabbableBeforeElement)(i.current);b?.focus()},handleFocusTargetFocus:function(a){let b=E.select("positionerElement");if(b&&(0,a$.isOutsideEvent)(a,b))E.context.beforeContentFocusGuardRef.current?.focus();else{aZ.flushSync(()=>{E.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.focusOut,a.nativeEvent,a.currentTarget))});let c=(0,a$.getTabbableAfterElement)(E.context.triggerFocusTargetRef.current||L.current);for(;null!==c&&(0,aT.contains)(b,c);){let a=c;if((c=(0,a$.getNextTabbable)(c))===a)break}c?.focus()}}},ar={disabled:X,open:J},at=[$,b,Z,T,L],au=[am,ag??as.EMPTY_OBJECT,an,{"aria-haspopup":"menu","aria-controls":K,id:F,onMouseDown:a=>{E.select("open")||(_.start(200,()=>{E.context.allowMouseUpTriggerRef.current=!0}),(0,aO.ownerDocument)(a.currentTarget).addEventListener("mouseup",ac,{once:!0}))}},V?{role:"menuitem"}:{},ak,B,Y],av=(0,k.useRenderElement)("button",a,{enabled:!V,stateAttributesMapping:l.pressableTriggerOpenStateMapping,state:ar,ref:at,props:au});return V?(0,d.jsx)(aW,{tag:"button",render:m,className:n,style:o,state:ar,refs:at,props:au,stateAttributesMapping:l.pressableTriggerOpenStateMapping}):J?(0,d.jsxs)(e.Fragment,{children:[(0,d.jsx)(a_.FocusGuard,{ref:ao,onFocus:ap},`${F}-pre-focus-guard`),(0,d.jsx)(e.Fragment,{children:av},F),(0,d.jsx)(a_.FocusGuard,{ref:E.context.triggerFocusTargetRef,onFocus:aq},`${F}-post-focus-guard`)]}):(0,d.jsx)(e.Fragment,{children:av},F)});var a1=a.i(269354);let a2=((c={}).popupWidth="--popup-width",c.popupHeight="--popup-height",c),a3={activationDirection:a=>a?{"data-activation-direction":a}:null},a4=e.forwardRef(function(a,b){let{render:c,className:d,style:e,children:f,...g}=a,{store:i}=j(),{side:l}=h(),m=i.useState("instantType"),{children:n,state:o}=(0,a1.usePopupViewport)({store:i,side:l,cssVars:a2,children:f}),p={activationDirection:o.activationDirection,transitioning:o.transitioning,instant:m};return(0,k.useRenderElement)("div",a,{state:p,ref:b,props:[g,{children:n}],stateAttributesMapping:a3})});var a5=a.i(67854);let a6=e.forwardRef(function(a,b){let{render:c,className:d,style:g,label:i,id:m,nativeButton:n=!1,openOnHover:o=!0,delay:p=100,closeDelay:q=0,disabled:r=!1,...s}=a,t=(0,C.useCompositeListItem)({label:i}),u=h(),{store:v}=j(),w=(0,D.useBaseUiId)(m),x=v.useState("open"),y=v.useState("floatingRootContext"),z=v.useState("floatingTreeRoot"),A=v.useState("triggerPopupId",w),E=(0,aK.useTriggerRegistration)(w,v),F=e.useCallback(a=>{let b=E(a);return null!==a&&v.select("open")&&null==v.select("activeTriggerId")&&v.update({activeTriggerId:w,activeTriggerElement:a,closeDelay:q}),b},[E,q,v,w]),G=e.useRef(null),H=e.useCallback(a=>{G.current=a,v.set("activeTriggerElement",a)},[v]),I=aM();if(!I?.parentMenu)throw Error((0,f.default)(37));v.useSyncedValue("closeDelay",q);let J=I.parentMenu,K=v.useState("disabled"),L=J.useState("disabled"),M=r||K||L,N=J.useState("itemProps"),O=J.useState("isActive",t.index),P=e.useMemo(()=>({type:"submenu-trigger",setActive(){J.select("highlightItemOnHover")&&J.set("activeIndex",t.index)}}),[J,t.index]),{getItemProps:Q,itemRef:R}=B({closeOnClick:!1,disabled:M,highlighted:O,id:w,store:v,typingRef:J.context.typingRef,nativeButton:n,itemMetadata:P,nodeId:u?.context.nodeId}),S=v.useState("hoverEnabled"),T=(0,aS.useHoverReferenceInteraction)(y,{enabled:S&&o&&!M,handleClose:(0,aP.safePolygon)({blockPointerEvents:!0}),mouseOnly:!0,move:!0,restMs:p,delay:{open:p,close:q},shouldOpen:p>0?()=>J.select("allowMouseEnter"):void 0,triggerElementRef:G,externalTree:z,isClosing:()=>"ending"===v.select("transitionStatus")}),U=(0,aQ.useClick)(y,{enabled:!M,event:"mousedown",toggle:!o,ignoreMouse:o,stickIfOpen:!1}).reference??as.EMPTY_OBJECT,V=v.useState("triggerProps",!0);return delete V.id,(0,k.useRenderElement)("div",a,{state:{disabled:M,highlighted:O,open:x},stateAttributesMapping:l.triggerOpenStateMapping,props:[U,T,V,N,{"aria-controls":A,tabIndex:x||O?0:-1,onBlur(){O&&J.set("activeIndex",null)}},s,Q],ref:[b,t.ref,R,F,H]})});class a7{constructor(){this.store=new aJ}open(a){let b=a?this.store.context.triggerElements.getById(a):void 0;if(a&&!b)throw Error((0,f.default)(83,a));this.store.setOpen(!0,(0,G.createChangeEventDetails)("imperative-action",void 0,b))}close(){this.store.setOpen(!1,(0,G.createChangeEventDetails)("imperative-action",void 0,void 0))}get isOpen(){return this.store.select("open")}}a.s(["Arrow",0,m,"Backdrop",0,s,"CheckboxItem",0,H,"CheckboxItemIndicator",0,K,"Group",0,M,"GroupLabel",0,O,"Handle",0,a7,"Item",0,P,"LinkItem",0,Q,"Popup",0,X,"Portal",0,$,"Positioner",0,ak,"RadioGroup",0,an,"RadioItem",0,ap,"RadioItemIndicator",0,aq,"Root",0,aN,"Separator",()=>a5.Separator,"SubmenuRoot",0,function(a){let b=j().store,c=e.useMemo(()=>({parentMenu:b}),[b]);return(0,d.jsx)(aL.Provider,{value:c,children:(0,d.jsx)(aN,{...a})})},"SubmenuTrigger",0,a6,"Trigger",0,a0,"Viewport",0,a4,"createHandle",0,function(){return new a7}],94355);var a8=a.i(94355),a8=a8,a9=a.i(74192),ba=a.i(6966),ba=ba;function bb({align:a="start",alignOffset:b=0,side:c="bottom",sideOffset:e=4,className:f,...g}){return(0,d.jsx)(a8.Portal,{children:(0,d.jsx)(a8.Positioner,{className:"isolate z-50 outline-none",align:a,alignOffset:b,side:c,sideOffset:e,children:(0,d.jsx)(a8.Popup,{"data-slot":"dropdown-menu-content",className:(0,a9.cn)("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md bg-popover p-1 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95",f),...g})})})}a.i(453046),a.s(["DropdownMenu",0,function({...a}){return(0,d.jsx)(a8.Root,{"data-slot":"dropdown-menu",...a})},"DropdownMenuContent",0,bb,"DropdownMenuGroup",0,function({...a}){return(0,d.jsx)(a8.Group,{"data-slot":"dropdown-menu-group",...a})},"DropdownMenuItem",0,function({className:a,inset:b,variant:c="default",...e}){return(0,d.jsx)(a8.Item,{"data-slot":"dropdown-menu-item","data-inset":b,"data-variant":c,className:(0,a9.cn)("group/dropdown-menu-item relative flex cursor-pointer items-center gap-1.5 rounded-md px-1.5 py-1.5 text-sm outline-hidden select-none not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive"," hover:bg-background ",a),...e})},"DropdownMenuLabel",0,function({className:a,inset:b,...c}){return(0,d.jsx)(a8.GroupLabel,{"data-slot":"dropdown-menu-label","data-inset":b,className:(0,a9.cn)("px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7",a),...c})},"DropdownMenuSeparator",0,function({className:a,...b}){return(0,d.jsx)(a8.Separator,{"data-slot":"dropdown-menu-separator",className:(0,a9.cn)("-mx-1 my-1 h-px bg-border",a),...b})},"DropdownMenuSub",0,function({...a}){return(0,d.jsx)(a8.SubmenuRoot,{"data-slot":"dropdown-menu-sub",...a})},"DropdownMenuSubContent",0,function({align:a="start",alignOffset:b=-3,side:c="right",sideOffset:e=0,className:f,...g}){return(0,d.jsx)(bb,{"data-slot":"dropdown-menu-sub-content",className:(0,a9.cn)("w-auto min-w-[196px]! rounded-md bg-popover p-1 text-popover-foreground ring-1 ring-foreground/10 duration-100 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 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95","",f),align:a,alignOffset:b,side:c,sideOffset:e,...g})},"DropdownMenuSubTrigger",0,function({className:a,inset:b,children:c,...e}){return(0,d.jsxs)(a8.SubmenuTrigger,{"data-slot":"dropdown-menu-sub-trigger","data-inset":b,className:(0,a9.cn)("flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","h-8",a),...e,children:[c,(0,d.jsx)(ba.default,{className:"ml-auto"})]})},"DropdownMenuTrigger",0,function({...a}){return(0,d.jsx)(a8.Trigger,{"data-slot":"dropdown-menu-trigger",...a,className:(0,a9.cn)("cursor-pointer",a.className)})}],94842)},572727,a=>{"use strict";var b=a.i(360809),c=a.i(74192);let d={vercel_ai_gateway:{label:"Vercel AI Gateway",iconSrc:"/icons/vercel.svg",pillBg:"bg-white dark:bg-white text-white dark:text-black"},openai:{label:"OpenAI",iconSrc:"/icons/openai.svg",pillBg:"bg-neutral-100 dark:bg-neutral-800"},anthropic:{label:"Anthropic",iconSrc:"https://models.dev/logos/anthropic.svg",pillBg:"bg-amber-50 dark:bg-amber-950/40"},google:{label:"Google",iconSrc:"/icons/gemini.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},meta:{label:"Meta",iconSrc:"https://models.dev/logos/meta.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},mistral:{label:"Mistral",iconSrc:"/icons/mistral.svg",pillBg:"bg-amber-50 dark:bg-amber-950/40"},cohere:{label:"Cohere",iconSrc:"/icons/cohere.svg",pillBg:"bg-orange-50 dark:bg-orange-950/40"},deepseek:{label:"DeepSeek",iconSrc:"https://models.dev/logos/deepseek.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},amazon:{label:"Amazon",iconSrc:"/icons/aws.svg",pillBg:"bg-orange-50 dark:bg-orange-950/40"},xai:{label:"xAI",iconSrc:"https://models.dev/logos/xai.svg",pillBg:"bg-neutral-100 dark:bg-neutral-800"},perplexity:{label:"Perplexity",iconSrc:"https://models.dev/logos/perplexity.svg",pillBg:"bg-teal-50 dark:bg-teal-950/40"},alibaba:{label:"Alibaba",iconSrc:"https://models.dev/logos/alibaba.svg",pillBg:"bg-orange-50 dark:bg-orange-950/40"},groq:{label:"Groq",iconSrc:"https://models.dev/logos/groq.svg",pillBg:"bg-orange-50 dark:bg-orange-950/40"},"together-ai":{label:"Together AI",iconSrc:"https://models.dev/logos/together-ai.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},fireworks:{label:"Fireworks",iconSrc:"https://models.dev/logos/fireworks.svg",pillBg:"bg-purple-50 dark:bg-purple-950/40"},cerebras:{label:"Cerebras",iconSrc:"https://models.dev/logos/cerebras.svg",pillBg:"bg-green-50 dark:bg-green-950/40"},voyage:{label:"Voyage AI",iconSrc:"/icons/voyage-light.png",pillBg:"bg-slate-100 dark:bg-slate-800"},jina:{label:"Jina AI",iconSrc:"/icons/jina.svg",pillBg:"bg-rose-50 dark:bg-rose-950/40"},nomic:{label:"Nomic",iconSrc:"/icons/nomic.png",pillBg:"bg-teal-50 dark:bg-teal-950/40"},minimax:{label:"MiniMax",iconSrc:"https://models.dev/logos/minimax.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},elevenlabs:{label:"ElevenLabs",iconSrc:"https://models.dev/logos/elevenlabs.svg",pillBg:"bg-neutral-100 dark:bg-neutral-800"},custom:{label:"Custom",iconSrc:"/logo.png",pillBg:"bg-slate-100 dark:bg-slate-800"}};a.s(["PROVIDER_META",0,d,"ProviderIcon",0,function({src:a,alt:d,pillBg:e,size:f=20}){return(0,b.jsx)("span",{className:(0,c.cn)("inline-flex shrink-0 items-center justify-center rounded",e),style:{width:f,height:f},children:a?(0,b.jsx)("img",{src:a,alt:d,width:f-4,height:f-4,className:"object-contain",style:{maxWidth:f-4,maxHeight:f-4}}):null})},"getProviderMeta",0,function(a){return d[a]??{label:a.charAt(0).toUpperCase()+a.slice(1),iconSrc:`https://models.dev/logos/${a}.svg`,pillBg:"bg-slate-100 dark:bg-slate-800"}}])},207752,833489,a=>{"use strict";var b=a.i(326729);let c=(0,b.default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,c],207752);let d=(0,b.default)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);a.s(["EyeOff",0,d],833489)},4455,745975,a=>{"use strict";var b=a.i(360809),c=a.i(887556),d=a.i(635153),e=a.i(343578),f=a.i(541487),g=a.i(961644),h=a.i(888524),i=a.i(207752),j=a.i(833489),k=a.i(93718);let l=(0,a.i(326729).default)("cloud",[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]]);function m({onSave:a,type:e,onCancel:n}){let[o,p]=(0,c.useState)(""),[q,r]=(0,c.useState)(""),[s,t]=(0,c.useState)(!1),[u,v]=(0,c.useState)(""),[w,x]=(0,c.useState)(null),[y,z]=(0,c.useState)(!1),[A,B]=(0,c.useState)(!1),C=async()=>{if(!o||!u)return void d.toast.error("Base URL and Model Name are required");z(!0);try{if("embedding"===e){let a=await fetch("/api/config/test-embedding",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({baseUrl:o,apiKey:q,modelName:u})}),b=await a.json();if(!a.ok)throw Error(b.error||"Connection failed");x(b.dimensions),B(!0),d.toast.success(`Success! Detected ${b.dimensions} dimensions.`)}else{let a=await fetch("/api/config/verify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({chatProvider:"custom",chatApiKey:q,customChatModels:[{baseUrl:o,apiKey:q,modelName:u}]})}),b=await a.json();if(!a.ok)throw Error(b.error||"Connection failed");B(!0),d.toast.success("Success! Chat model connected.")}}catch(a){d.toast.error(a instanceof Error?a.message:"Test failed"),x(null),B(!1)}finally{z(!1)}};return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"grid gap-4 py-4",children:[(0,b.jsxs)("div",{className:"grid gap-2",children:[(0,b.jsx)(h.Label,{htmlFor:"baseUrl",children:"Base URL"}),(0,b.jsx)(g.Input,{id:"baseUrl",placeholder:"https://api.example.com/v1",value:o,onChange:a=>{p(a.target.value),B(!1)}})]}),(0,b.jsxs)("div",{className:"grid gap-2",children:[(0,b.jsx)(h.Label,{htmlFor:"apiKey",children:"API Key (Optional)"}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(g.Input,{id:"apiKey",type:s?"text":"password",placeholder:"sk-...",value:q,onChange:a=>{r(a.target.value),B(!1)},className:"pr-10"}),(0,b.jsx)("button",{type:"button",onClick:()=>t(!s),className:"absolute inset-y-0 right-0 flex items-center pr-3 text-muted-foreground hover:text-foreground",children:s?(0,b.jsx)(j.EyeOff,{className:"size-4"}):(0,b.jsx)(i.Eye,{className:"size-4"})})]})]}),(0,b.jsxs)("div",{className:"grid gap-2",children:[(0,b.jsx)(h.Label,{htmlFor:"modelName",children:"Model Name"}),(0,b.jsx)(g.Input,{id:"modelName",placeholder:"embedding"===e?"my-embedding-model":"my-chat-model",value:u,onChange:a=>{v(a.target.value),B(!1)}})]}),A&&(0,b.jsxs)("div",{className:"text-sm text-green-600 dark:text-green-400 font-medium",children:["✓ Connection verified ",w?`(${w} dimensions)`:""]})]}),(0,b.jsxs)("div",{className:"flex flex-row justify-between sm:justify-between items-center gap-2",children:[(0,b.jsxs)(f.Button,{variant:"outline",type:"button",onClick:C,disabled:y,children:[y?(0,b.jsx)(k.Loader2,{className:"size-4 animate-spin mr-2"}):(0,b.jsx)(l,{className:"size-4 mr-2"}),"Test Connection"]}),(0,b.jsxs)("div",{className:"flex gap-2",children:[n&&(0,b.jsx)(f.Button,{variant:"ghost",type:"button",onClick:n,children:"Cancel"}),(0,b.jsx)(f.Button,{className:"px-5",type:"button",onClick:()=>{o&&u&&A?a({baseUrl:o,apiKey:q,modelName:u,dimensions:w??void 0}):d.toast.error("Please test the connection first.")},disabled:!A,children:"Add Model"})]})]})]})}a.s(["Cloud",0,l],745975),a.s(["CustomModelForm",0,m,"CustomModelModal",0,function({open:a,onOpenChange:c,onSave:d,type:f}){return(0,b.jsx)(e.Dialog,{open:a,onOpenChange:c,children:(0,b.jsxs)(e.DialogContent,{className:"max-w-xl",children:[(0,b.jsxs)(e.DialogHeader,{children:[(0,b.jsxs)(e.DialogTitle,{children:["Custom ","embedding"===f?"Embedding":"Chat"," Model"]}),(0,b.jsxs)(e.DialogDescription,{children:["Connect an OpenAI-compatible ","embedding"===f?"embedding":"chat"," model."]})]}),(0,b.jsx)(m,{type:f,onSave:a=>{d(a),c(!1)}})]})})}],4455)}];
1
+ module.exports=[610520,a=>{"use strict";let b=(0,a.i(326729).default)("message-circle",[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]]);a.s(["MessageCircle",0,b],610520)},94842,a=>{"use strict";var b,c,d=a.i(360809);a.s([],994089),a.i(994089);var e=a.i(887556),f=a.i(361823);let g=e.createContext(void 0);function h(a){let b=e.useContext(g);if(void 0===b&&!a)throw Error((0,f.default)(33));return b}let i=e.createContext(void 0);function j(a){let b=e.useContext(i);if(void 0===b&&!a)throw Error((0,f.default)(36));return b}var k=a.i(778868),l=a.i(705418);let m=e.forwardRef(function(a,b){let{render:c,className:d,style:e,...f}=a,{store:g}=j(),{arrowRef:i,side:m,align:n,arrowUncentered:o,arrowStyles:p}=h(),q=g.useState("open");return(0,k.useRenderElement)("div",a,{ref:[i,b],stateAttributesMapping:l.popupStateMapping,state:{open:q,side:m,align:n,uncentered:o},props:{style:p,"aria-hidden":!0,...f}})});var n=a.i(986301);let o=e.createContext(void 0);function p(a=!0){let b=e.useContext(o);if(void 0===b&&!a)throw Error((0,f.default)(25));return b}var q=a.i(4656);let r={...l.popupStateMapping,...n.transitionStatusMapping},s=e.forwardRef(function(a,b){let{render:c,className:d,style:e,...f}=a,{store:g}=j(),h=g.useState("open"),i=g.useState("mounted"),l=g.useState("transitionStatus"),m=g.useState("lastOpenChangeReason"),n=p();return(0,k.useRenderElement)("div",a,{ref:n?.backdropRef?[b,n.backdropRef]:b,state:{open:h,transitionStatus:l},stateAttributesMapping:r,props:[{role:"presentation",hidden:!i,style:{pointerEvents:m===q.REASONS.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},f]})});var t=a.i(228496);let u=e.createContext(void 0);var v=a.i(150186),w=a.i(320433),x=a.i(918268),y=a.i(588379);function z(a){let{closeOnClick:b,highlighted:c,id:d,nodeId:f,store:g,typingRef:h,itemRef:i,itemMetadata:j}=a,{events:k}=g.useState("floatingTreeRoot"),l=g.useState("open"),m=p(!0),n=void 0!==m;return e.useMemo(()=>({id:d,role:"menuitem",tabIndex:l&&c?0:-1,onKeyDown(a){" "===a.key&&h?.current&&a.preventDefault()},onMouseMove(a){f&&k.emit("itemhover",{nodeId:f,target:a.currentTarget})},onClick(a){b&&k.emit("close",{domEvent:a,reason:q.REASONS.itemPress})},onMouseUp(a){if(m){let b=m.initialCursorPointRef.current;if(m.initialCursorPointRef.current=null,n&&b&&1>=Math.abs(a.clientX-b.x)&&1>=Math.abs(a.clientY-b.y)||n&&!y.platform.os.mac&&2===a.button)return}i.current&&g.context.allowMouseUpTriggerRef.current&&(!n||2===a.button)&&(!j||"regular-item"===j.type)&&i.current.click()}}),[b,c,d,k,f,l,g,h,i,m,n,j])}let A={type:"regular-item"};function B(a){let{closeOnClick:b,disabled:c=!1,highlighted:d,id:f,store:g,typingRef:h=g.context.typingRef,nativeButton:i,itemMetadata:j,nodeId:k}=a,l=g.useState("disabled"),m=e.useRef(null),{getButtonProps:n,buttonRef:o}=(0,w.useButton)({disabled:c||l,focusableWhenDisabled:!0,native:i,composite:!0}),p=z({closeOnClick:b,highlighted:d,id:f,nodeId:k,store:g,typingRef:h,itemRef:m,itemMetadata:j}),q=e.useCallback(a=>(0,x.mergeProps)(p,{onMouseEnter(){"submenu-trigger"===j.type&&j.setActive()}},a,n),[p,n,j]),r=(0,v.useMergedRefs)(m,o);return e.useMemo(()=>({getItemProps:q,itemRef:r}),[q,r])}var C=a.i(881557),D=a.i(301857);let E=((b={}).checked="data-checked",b.unchecked="data-unchecked",b.disabled="data-disabled",b.highlighted="data-highlighted",b),F={checked:a=>a?{[E.checked]:""}:{[E.unchecked]:""},...n.transitionStatusMapping};var G=a.i(683273);let H=e.forwardRef(function(a,b){let{render:c,className:f,id:g,label:i,nativeButton:l=!1,disabled:m=!1,closeOnClick:n=!1,checked:o,defaultChecked:p,onCheckedChange:r,style:s,...v}=a,w=(0,C.useCompositeListItem)({label:i}),x=h(!0),y=(0,D.useBaseUiId)(g),{store:z}=j(),E=z.useState("isActive",w.index),H=z.useState("itemProps"),[I,J]=(0,t.useControlled)({controlled:o,default:p??!1,name:"MenuCheckboxItem",state:"checked"}),{getItemProps:K,itemRef:L}=B({closeOnClick:n,disabled:m,highlighted:E,id:y,store:z,nativeButton:l,nodeId:x?.context.nodeId,itemMetadata:A}),M=e.useMemo(()=>({disabled:m,highlighted:E,checked:I}),[m,E,I]),N=(0,k.useRenderElement)("div",a,{state:M,stateAttributesMapping:F,props:[H,{role:"menuitemcheckbox","aria-checked":I,onClick:function(a){let b=(0,G.createChangeEventDetails)(q.REASONS.itemPress,a.nativeEvent,void 0,{preventUnmountOnClose(){}});r?.(!I,b),b.isCanceled||J(a=>!a)}},v,K],ref:[L,b,w.ref]});return(0,d.jsx)(u.Provider,{value:M,children:N})});var I=a.i(359513),J=a.i(145160);let K=e.forwardRef(function(a,b){let{render:c,className:d,style:g,keepMounted:h=!1,...i}=a,j=function(){let a=e.useContext(u);if(void 0===a)throw Error((0,f.default)(30));return a}(),l=e.useRef(null),{transitionStatus:m,setMounted:n}=(0,I.useTransitionStatus)(j.checked);(0,J.useOpenChangeComplete)({open:j.checked,ref:l,onComplete(){j.checked||n(!1)}});let o={checked:j.checked,disabled:j.disabled,highlighted:j.highlighted,transitionStatus:m};return(0,k.useRenderElement)("span",a,{state:o,ref:[b,l],stateAttributesMapping:F,props:{"aria-hidden":!0,...i},enabled:h||j.checked})}),L=e.createContext(void 0),M=e.forwardRef(function(a,b){let{render:c,className:f,style:g,...h}=a,[i,j]=e.useState(void 0),l=(0,k.useRenderElement)("div",a,{ref:b,props:{role:"group","aria-labelledby":i,...h}});return(0,d.jsx)(L.Provider,{value:j,children:l})});var N=a.i(131182);let O=e.forwardRef(function(a,b){let{render:c,className:d,style:g,id:h,...i}=a,j=(0,D.useBaseUiId)(h),l=function(){let a=e.useContext(L);if(void 0===a)throw Error((0,f.default)(31));return a}();return(0,N.useIsoLayoutEffect)(()=>(l(j),()=>{l(void 0)}),[l,j]),(0,k.useRenderElement)("div",a,{ref:b,props:{id:j,role:"presentation",...i}})}),P=e.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,nativeButton:g=!1,disabled:i=!1,closeOnClick:l=!0,style:m,...n}=a,o=(0,C.useCompositeListItem)({label:f}),p=h(!0),q=(0,D.useBaseUiId)(e),{store:r}=j(),s=r.useState("isActive",o.index),t=r.useState("itemProps"),{getItemProps:u,itemRef:v}=B({closeOnClick:l,disabled:i,highlighted:s,id:q,store:r,nativeButton:g,nodeId:p?.context.nodeId,itemMetadata:A});return(0,k.useRenderElement)("div",a,{state:{disabled:i,highlighted:s},props:[t,n,u],ref:[v,b,o.ref]})}),Q=e.forwardRef(function(a,b){let{render:c,className:d,id:f,label:g,closeOnClick:i=!1,style:l,...m}=a,n=e.useRef(null),o=(0,C.useCompositeListItem)({label:g}),p=h(!0),q=p?.context.nodeId,r=(0,D.useBaseUiId)(f),{store:s}=j(),t=s.useState("isActive",o.index),u=s.useState("itemProps"),v=s.context.typingRef,{getButtonProps:y,buttonRef:A}=(0,w.useButton)({native:!1,composite:!0}),B=z({closeOnClick:i,highlighted:t,id:r,nodeId:q,store:s,typingRef:v,itemRef:n});return(0,k.useRenderElement)("a",a,{state:{highlighted:t},props:[u,m,function(a){return(0,x.mergeProps)(B,a,y)}],ref:[n,A,b,o.ref]})});var R=a.i(574752),S=a.i(530540),T=a.i(575837),U=a.i(796324),V=a.i(979507);let W={...l.popupStateMapping,...n.transitionStatusMapping},X=e.forwardRef(function(a,b){let{render:c,className:f,style:g,finalFocus:i,...l}=a,{store:m}=j(),{side:n,align:o}=h(),p=null!=(0,T.useToolbarRootContext)(!0),r=m.useState("open"),s=m.useState("transitionStatus"),t=m.useState("popupProps"),u=m.useState("mounted"),v=m.useState("instantType"),w=m.useState("activeTriggerElement"),x=m.useState("parent"),y=m.useState("lastOpenChangeReason"),z=m.useState("rootId"),A=m.useState("floatingRootContext"),B=m.useState("floatingTreeRoot"),C=m.useState("closeDelay"),D=m.useState("activeTriggerElement"),E=m.useState("hoverEnabled"),F=m.useState("disabled"),H=m.useState("openMethod"),I="context-menu"===x.type;(0,J.useOpenChangeComplete)({open:r,ref:m.context.popupRef,onComplete(){r&&m.context.onOpenChangeComplete?.(!0)}}),e.useEffect(()=>{function a(a){m.setOpen(!1,(0,G.createChangeEventDetails)(a.reason,a.domEvent))}return B.events.on("close",a),()=>{B.events.off("close",a)}},[B.events,m]),(0,S.useHoverFloatingInteraction)(A,{enabled:E&&!F&&!I&&"menubar"!==x.type,closeDelay:C});let K=e.useCallback(a=>{m.set("popupElement",a)},[m]),L={transitionStatus:s,side:n,align:o,open:r,nested:"menu"===x.type,instant:v},M=(0,k.useRenderElement)("div",a,{state:L,ref:[b,m.context.popupRef,K],stateAttributesMapping:W,props:[t,{onKeyDown(a){p&&U.COMPOSITE_KEYS.has(a.key)&&a.stopPropagation()}},(0,V.getDisabledMountTransitionStyles)(s),l,{"data-rootownerid":z}]}),N=void 0===x.type||I;return(w||"menubar"===x.type&&y!==q.REASONS.outsidePress)&&(N=!0),(0,d.jsx)(R.FloatingFocusManager,{context:A,openInteractionType:H,modal:I,disabled:!u,returnFocus:void 0===i?N:i,initialFocus:"menu"!==x.type,restoreFocus:!0,externalTree:"menubar"!==x.type?B:void 0,previousFocusableElement:D,nextFocusableElement:void 0===x.type?m.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:void 0===x.type?m.context.beforeContentFocusGuardRef:void 0,children:M})});var Y=a.i(426035);let Z=e.createContext(void 0),$=e.forwardRef(function(a,b){let{keepMounted:c=!1,...e}=a,{store:f}=j();return f.useState("mounted")||c?(0,d.jsx)(Z.Provider,{value:c,children:(0,d.jsx)(Y.FloatingPortal,{ref:b,...e})}):null});var _=a.i(522110),aa=a.i(725511),ab=a.i(525446),ac=a.i(267123),ad=a.i(79930),ae=a.i(990667),af=a.i(802903),ag=a.i(893519),ah=a.i(839694),ai=a.i(332885),aj=a.i(709706);let ak=e.forwardRef(function(a,b){let{anchor:c,positionMethod:h="absolute",className:i,render:k,side:l,align:m,sideOffset:n=0,alignOffset:o=0,collisionBoundary:r="clipping-ancestors",collisionPadding:s=5,arrowPadding:t=5,sticky:u=!1,disableAnchorTracking:v=!1,collisionAvoidance:w=af.DROPDOWN_COLLISION_AVOIDANCE,style:x,...y}=a,{store:z}=j(),A=function(){let a=e.useContext(Z);if(void 0===a)throw Error((0,f.default)(32));return a}(),B=p(!0),C=z.useState("parent"),D=z.useState("floatingRootContext"),E=z.useState("floatingTreeRoot"),F=z.useState("mounted"),H=z.useState("open"),I=z.useState("modal"),J=z.useState("openMethod"),K=z.useState("activeTriggerElement"),L=z.useState("transitionStatus"),M=z.useState("positionerElement"),O=z.useState("instantType"),P=z.useState("hasViewport"),Q=z.useState("lastOpenChangeReason"),R=z.useState("floatingNodeId"),S=z.useState("floatingParentNodeId"),T=D.useState("domReferenceElement"),U=e.useRef(null),V=(0,ah.useAnimationsFinished)(M,!1,!1),W=c,X=n,Y=o,$=m,ak=w;"context-menu"===C.type&&(W=c??C.context?.anchor,$=$??"start",l||"center"===$||(Y=a.alignOffset??2,X=a.sideOffset??-5));let al=l,am=$;"menu"===C.type?(al=al??"inline-end",am=am??"start",ak=a.collisionAvoidance??af.POPUP_COLLISION_AVOIDANCE):"menubar"===C.type&&(al=al??("vertical"===C.context.orientation?"inline-end":"bottom"),am=am??"start");let an="context-menu"===C.type,ao=(0,ac.useAnchorPositioning)({anchor:W,floatingRootContext:D,positionMethod:B?"fixed":h,mounted:F,side:al,sideOffset:X,align:am,alignOffset:Y,arrowPadding:an?0:t,collisionBoundary:r,collisionPadding:s,sticky:u,nodeId:R,keepMounted:A,disableAnchorTracking:v,collisionAvoidance:ak,shiftCrossAxis:an&&!("side"in ak&&"flip"===ak.side),externalTree:E,adaptiveOrigin:P?ag.adaptiveOrigin:void 0});e.useEffect(()=>{function a(a){a.open&&(a.parentNodeId===R&&z.set("hoverEnabled",!1),a.nodeId!==R&&a.parentNodeId===z.select("floatingParentNodeId")&&z.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.siblingOpen)))}return E.events.on("menuopenchange",a),()=>{E.events.off("menuopenchange",a)}},[z,E.events,R]),e.useEffect(()=>{if(null!=z.select("floatingParentNodeId"))return E.events.on("menuopenchange",a),()=>{E.events.off("menuopenchange",a)};function a(a){if(a.open||a.nodeId!==z.select("floatingParentNodeId"))return;let b=a.reason??q.REASONS.siblingOpen;z.setOpen(!1,(0,G.createChangeEventDetails)(b))}},[E.events,z]);let ap=(0,aa.useTimeout)();e.useEffect(()=>{H||ap.clear()},[H,ap]),e.useEffect(()=>{function a(a){if(H&&a.nodeId===z.select("floatingParentNodeId"))if(a.target&&K&&K!==a.target){let a=z.select("closeDelay");a>0?ap.isStarted()||ap.start(a,()=>{z.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.siblingOpen))}):z.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.siblingOpen))}else ap.clear()}return E.events.on("itemhover",a),()=>{E.events.off("itemhover",a)}},[E.events,H,K,z,ap]),e.useEffect(()=>{let a={open:H,nodeId:R,parentNodeId:S,reason:z.select("lastOpenChangeReason")};E.events.emit("menuopenchange",a)},[E.events,H,z,R,S]),(0,N.useIsoLayoutEffect)(()=>{let a=U.current;if(T&&(U.current=T),a&&T&&T!==a){z.set("instantType",void 0);let a=new AbortController;return V(()=>{z.set("instantType","trigger-change")},a.signal),()=>{a.abort()}}},[T,V,z]);let aq={open:H,side:ao.side,align:ao.align,anchorHidden:ao.anchorHidden,nested:"menu"===C.type,instant:O},ar="menubar"===C.type&&C.context.modal,as=I&&Q!==q.REASONS.triggerHover;(0,aj.useAnchoredPopupScrollLock)(H&&(ar||as),"touch"===J,M,K);let at=(0,ai.usePositioner)(a,aq,{styles:ao.positionerStyles,transitionStatus:L,props:y,refs:[b,z.useStateSetter("positionerElement")],hidden:!F,inert:!H}),au=F&&"menu"!==C.type&&("menubar"!==C.type&&I&&Q!==q.REASONS.triggerHover||"menubar"===C.type&&C.context.modal),av=null;return"menubar"===C.type?av=C.context.contentElement:void 0===C.type&&(av=K),(0,d.jsxs)(g.Provider,{value:ao,children:[au&&(0,d.jsx)(ae.InternalBackdrop,{ref:"context-menu"===C.type||"nested-context-menu"===C.type?C.context.internalBackdropRef:null,inert:(0,_.inertValue)(!H),cutout:av}),(0,d.jsx)(ab.FloatingNode,{id:R,children:(0,d.jsx)(ad.CompositeList,{elementsRef:z.context.itemDomElements,labelsRef:z.context.itemLabels,children:at})})]})});var al=a.i(64732);let am=e.createContext(void 0),an=e.memo(e.forwardRef(function(a,b){let{render:c,className:f,value:g,defaultValue:h,onValueChange:i,disabled:j=!1,style:l,"aria-labelledby":m,...n}=a,[o,p]=e.useState(void 0),[q,r]=(0,t.useControlled)({controlled:g,default:h,name:"MenuRadioGroup"}),s=(0,al.useStableCallback)((a,b)=>{i?.(a,b),b.isCanceled||r(a)}),u=(0,k.useRenderElement)("div",a,{state:{disabled:j},ref:b,props:{role:"group","aria-labelledby":m??o,"aria-disabled":j||void 0,...n}}),v=e.useMemo(()=>({value:q,setValue:s,disabled:j}),[q,s,j]);return(0,d.jsx)(L.Provider,{value:p,children:(0,d.jsx)(am.Provider,{value:v,children:u})})})),ao=e.createContext(void 0),ap=e.forwardRef(function(a,b){let{render:c,className:g,id:i,label:l,nativeButton:m=!1,disabled:n=!1,closeOnClick:o=!1,value:p,style:r,...s}=a,t=(0,C.useCompositeListItem)({label:l}),u=h(!0),v=(0,D.useBaseUiId)(i),{store:w}=j(),x=w.useState("isActive",t.index),y=w.useState("itemProps"),{value:z,setValue:E,disabled:H}=function(){let a=e.useContext(am);if(void 0===a)throw Error((0,f.default)(34));return a}(),I=H||n,J=z===p,{getItemProps:K,itemRef:L}=B({closeOnClick:o,disabled:I,highlighted:x,id:v,store:w,nativeButton:m,nodeId:u?.context.nodeId,itemMetadata:A}),M=e.useMemo(()=>({disabled:I,highlighted:x,checked:J}),[I,x,J]),N=(0,k.useRenderElement)("div",a,{state:M,stateAttributesMapping:F,props:[y,{role:"menuitemradio","aria-checked":J,onClick:function(a){E(p,(0,G.createChangeEventDetails)(q.REASONS.itemPress,a.nativeEvent,void 0,{preventUnmountOnClose(){}}))}},s,K],ref:[L,b,t.ref]});return(0,d.jsx)(ao.Provider,{value:M,children:N})}),aq=e.forwardRef(function(a,b){let{render:c,className:d,style:g,keepMounted:h=!1,...i}=a,j=function(){let a=e.useContext(ao);if(void 0===a)throw Error((0,f.default)(35));return a}(),l=e.useRef(null),{transitionStatus:m,setMounted:n}=(0,I.useTransitionStatus)(j.checked);(0,J.useOpenChangeComplete)({open:j.checked,ref:l,onComplete(){j.checked||n(!1)}});let o={checked:j.checked,disabled:j.disabled,highlighted:j.highlighted,transitionStatus:m};return(0,k.useRenderElement)("span",a,{state:o,stateAttributesMapping:F,ref:[b,l],props:{"aria-hidden":!0,...i},enabled:h||j.checked})});var ar=a.i(35081),as=a.i(434380),at=a.i(42821),au=a.i(33746),av=a.i(7558),aw=a.i(71114),ax=a.i(541466);let ay=e.createContext(null);function az(a){let b=e.useContext(ay);if(null===b&&!a)throw Error((0,f.default)(5));return b}var aA=a.i(216064),aB=a.i(160768),aC=a.i(36185),aD=a.i(536569),aE=a.i(925977),aF=a.i(464547),aG=a.i(99332),aH=a.i(19821);let aI={...aG.popupStoreSelectors,disabled:(0,aC.createSelector)(a=>"menubar"===a.parent.type&&a.parent.context.disabled||a.disabled),modal:(0,aC.createSelector)(a=>(void 0===a.parent.type||"context-menu"===a.parent.type)&&(a.modal??!0)),openMethod:(0,aC.createSelector)(a=>a.openMethod),allowMouseEnter:(0,aC.createSelector)(a=>a.allowMouseEnter),highlightItemOnHover:(0,aC.createSelector)(a=>a.highlightItemOnHover),stickIfOpen:(0,aC.createSelector)(a=>a.stickIfOpen),parent:(0,aC.createSelector)(a=>a.parent),rootId:(0,aC.createSelector)(a=>"menu"===a.parent.type?a.parent.store.select("rootId"):void 0!==a.parent.type?a.parent.context.rootId:a.rootId),activeIndex:(0,aC.createSelector)(a=>a.activeIndex),isActive:(0,aC.createSelector)((a,b)=>a.activeIndex===b),hoverEnabled:(0,aC.createSelector)(a=>a.hoverEnabled),instantType:(0,aC.createSelector)(a=>a.instantType),lastOpenChangeReason:(0,aC.createSelector)(a=>a.openChangeReason),floatingTreeRoot:(0,aC.createSelector)(a=>"menu"===a.parent.type?a.parent.store.select("floatingTreeRoot"):a.floatingTreeRoot),floatingNodeId:(0,aC.createSelector)(a=>a.floatingNodeId),floatingParentNodeId:(0,aC.createSelector)(a=>a.floatingParentNodeId),itemProps:(0,aC.createSelector)(a=>a.itemProps),closeDelay:(0,aC.createSelector)(a=>a.closeDelay),hasViewport:(0,aC.createSelector)(a=>a.hasViewport),keyboardEventRelay:(0,aC.createSelector)(a=>a.keyboardEventRelay?a.keyboardEventRelay:"menu"===a.parent.type?a.parent.store.select("keyboardEventRelay"):void 0)};class aJ extends aD.ReactStore{constructor(a){super({...{...(0,aG.createInitialPopupStoreState)(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,stickIfOpen:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new aF.FloatingTreeStore,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:as.EMPTY_OBJECT,keyboardEventRelay:void 0,closeDelay:0,hasViewport:!1},...a},{positionerRef:e.createRef(),popupRef:e.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:e.createRef(),beforeContentFocusGuardRef:e.createRef(),onOpenChangeComplete:void 0,triggerElements:new aH.PopupTriggerMap},aI),this.unsubscribeParentListener=this.observe("parent",a=>{if(this.unsubscribeParentListener?.(),"menu"===a.type){let b=a.store.select("rootId"),c=a.store.select("floatingTreeRoot"),d=a.store.select("keyboardEventRelay");this.unsubscribeParentListener=a.store.subscribe(()=>{let e=a.store.select("rootId"),f=a.store.select("floatingTreeRoot"),g=a.store.select("keyboardEventRelay");(b!==e||c!==f||d!==g)&&(b=e,c=f,d=g,this.notifyAll())}),this.context.allowMouseUpTriggerRef=a.store.context.allowMouseUpTriggerRef;return}void 0!==a.type&&(this.context.allowMouseUpTriggerRef=a.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(a,b){this.state.floatingRootContext.context.events.emit("setOpen",{open:a,eventDetails:b})}static useStore(a,b){let c=(0,aE.useRefWithInit)(()=>new aJ(b)).current;return a??c}unsubscribeParentListener=null}var aK=a.i(947394);let aL=e.createContext(void 0);function aM(){return e.useContext(aL)}let aN=(0,at.fastComponent)(function(a){let b,{children:c,open:f,onOpenChange:g,onOpenChangeComplete:h,defaultOpen:k=!1,disabled:l=!1,modal:m,loopFocus:n=!0,orientation:o="vertical",actionsRef:r,closeParentOnEsc:s=!1,handle:t,triggerId:u,defaultTriggerId:v=null,highlightItemOnHover:w=!0}=a,y=p(!0),z=j(!0),A=az(!0),B=aM(),C=e.useMemo(()=>B&&z?{type:"menu",store:z.store}:A?{type:"menubar",context:A}:y&&!z?{type:"context-menu",context:y}:{type:void 0},[y,z,A,B]),D=aJ.useStore(t?.store,{open:k,openProp:f,activeTriggerId:v,triggerIdProp:u,parent:C});(0,aK.useInitialOpenSync)(D,f,k,v),D.useControlledProp("openProp",f),D.useControlledProp("triggerIdProp",u),D.useContextCallback("onOpenChangeComplete",h);let E=(0,ar.useId)(),F=(0,ar.useId)(),H=D.useState("floatingTreeRoot"),I=(0,ab.useFloatingNodeId)(H),J=(0,ab.useFloatingParentNodeId)(),K=D.useState("open"),L=D.useState("activeTriggerElement"),M=D.useState("positionerElement"),O=D.useState("hoverEnabled"),P=D.useState("disabled"),Q=D.useState("lastOpenChangeReason"),R=D.useState("parent"),S=D.useState("activeIndex"),T=D.useState("payload"),U=D.useState("floatingParentNodeId"),V=e.useRef(null),W=e.useRef("context-menu"!==R.type),X=(0,aa.useTimeout)(),Y=e.useRef(!0),Z=(0,aa.useTimeout)(),$=null!=U,{openMethod:_,triggerProps:ac}=(0,aB.useOpenInteractionType)(K);D.useSyncedValues({disabled:l,highlightItemOnHover:w,modal:void 0===R.type?m:void 0,openMethod:_,rootId:E}),(0,aK.useImplicitActiveTrigger)(D);let{forceUnmount:ad}=(0,aK.useOpenStateTransitions)(K,D,()=>{D.update({allowMouseEnter:!1,stickIfOpen:!0})});(0,N.useIsoLayoutEffect)(()=>{y&&!z?D.update({parent:{type:"context-menu",context:y},floatingNodeId:I,floatingParentNodeId:J}):z&&D.update({floatingNodeId:I,floatingParentNodeId:J})},[y,z,I,J,D]),e.useEffect(()=>{if(K||(V.current=null),"context-menu"===R.type){if(!K){X.clear(),W.current=!1;return}X.start(500,()=>{W.current=!0})}},[X,K,R.type]),(0,N.useIsoLayoutEffect)(()=>{K||O||D.set("hoverEnabled",!0)},[K,O,D]);let ae=(0,al.useStableCallback)((a,b)=>{let c=b.reason;if(K===a&&b.trigger===L&&Q===c)return;let d=(0,aK.attachPreventUnmountOnClose)(b);if(a||null!=b.trigger||(b.trigger=L??void 0),g?.(a,b),b.isCanceled)return;D.state.floatingRootContext.dispatchOpenChange(a,b);let e=b.event;if(!1===a&&e?.type==="click"&&"touch"===e.pointerType&&!Y.current)return;a&&c===q.REASONS.triggerFocus?(Y.current=!1,Z.start(300,()=>{Y.current=!0})):(Y.current=!0,Z.clear());let f=(c===q.REASONS.triggerPress||c===q.REASONS.itemPress)&&0===e.detail&&e?.isTrusted,h=!a&&(c===q.REASONS.escapeKey||null==c),i={open:a,openChangeReason:c};V.current=b.event??null,(0,aK.setPopupOpenState)(i,a,b.trigger,d()),D.update(i),"menubar"===R.type&&(c===q.REASONS.triggerFocus||c===q.REASONS.focusOut||c===q.REASONS.triggerHover||c===q.REASONS.listNavigation||c===q.REASONS.siblingOpen)?D.set("instantType","group"):f||h?D.set("instantType",f?"click":"dismiss"):D.set("instantType",void 0)}),ag=(0,ax.useSyncedFloatingRootContext)({popupStore:D,floatingId:F,nested:null!=J,onOpenChange:ae}),ah=ag.context.events;e.useEffect(()=>{let a=({open:a,eventDetails:b})=>ae(a,b);return ah.on("setOpen",a),()=>{ah?.off("setOpen",a)}},[ah,ae]);let ai=e.useCallback(()=>{D.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.imperativeAction))},[D]);e.useImperativeHandle(r,()=>({unmount:ad,close:ai}),[ad,ai]),"context-menu"===R.type&&(b=R.context),e.useImperativeHandle(b?.positionerRef,()=>M,[M]),e.useImperativeHandle(b?.actionsRef,()=>({setOpen:ae}),[ae]);let aj=(0,au.useDismiss)(ag,{enabled:!P,bubbles:{escapeKey:s&&"menu"===R.type},outsidePress:()=>"context-menu"!==R.type||V.current?.type==="contextmenu"||W.current,externalTree:$?H:void 0}),ak=(0,aA.useDirection)(),am=e.useCallback(a=>{D.select("activeIndex")!==a&&D.set("activeIndex",a)},[D]),an=(0,av.useListNavigation)(ag,{enabled:!P,listRef:D.context.itemDomElements,activeIndex:S,nested:void 0!==R.type,loopFocus:n,orientation:o,parentOrientation:"menubar"===R.type?R.context.orientation:void 0,rtl:"rtl"===ak,disabledIndices:as.EMPTY_ARRAY,onNavigate:am,openOnArrowKeyDown:"context-menu"!==R.type,externalTree:$?H:void 0,focusItemOnHover:w}),ao=e.useCallback(a=>{D.context.typingRef.current=a},[D]),ap=(0,aw.useTypeahead)(ag,{enabled:!P,listRef:D.context.itemLabels,elementsRef:D.context.itemDomElements,activeIndex:S,resetMs:af.TYPEAHEAD_RESET_MS,onMatch:a=>{K&&a!==S&&D.set("activeIndex",a)},onTyping:ao}),aq=e.useMemo(()=>{let a=(0,x.mergeProps)(ap.reference,an.reference,aj.reference,{onMouseMove(){D.set("allowMouseEnter",!0)}},ac);return a["aria-haspopup"]="menu",a["aria-expanded"]=K,a},[D,ap.reference,an.reference,aj.reference,ac,K]),at=e.useMemo(()=>{let a=(0,x.mergeProps)(an.trigger,aj.trigger,ac);return a["aria-haspopup"]="menu",a["aria-expanded"]=!1,a},[an.trigger,aj.trigger,ac]),ay=e.useMemo(()=>(0,x.mergeProps)(aK.FOCUSABLE_POPUP_PROPS,{id:F,role:"menu","aria-labelledby":L?.id,onMouseMove(){D.set("allowMouseEnter",!0),"menu"===R.type&&D.set("hoverEnabled",!1)},onClick(){D.select("hoverEnabled")&&D.set("hoverEnabled",!1)},onKeyDown(a){let b=D.select("keyboardEventRelay");b&&!a.isPropagationStopped()&&b(a)}},ap.floating,an.floating,aj.floating),[L,F,R.type,D,ap.floating,an.floating,aj.floating]),aC=an.item??as.EMPTY_OBJECT;(0,aK.usePopupInteractionProps)(D,{floatingRootContext:ag,activeTriggerProps:aq,inactiveTriggerProps:at,popupProps:ay,itemProps:aC});let aD=e.useMemo(()=>({store:D,parent:C}),[D,C]),aE=(0,d.jsx)(i.Provider,{value:aD,children:"function"==typeof c?c({payload:T}):c});return void 0===R.type||"context-menu"===R.type?(0,d.jsx)(ab.FloatingTree,{externalTree:H,children:aE}):aE});var aO=a.i(200585),aP=a.i(531883),aQ=a.i(106743),aR=a.i(573618),aS=a.i(485055),aT=a.i(807757),aU=a.i(496378),aV=a.i(500318);function aW(a){let{render:b,className:c,style:d,state:e=as.EMPTY_OBJECT,props:f=as.EMPTY_ARRAY,refs:g=as.EMPTY_ARRAY,metadata:h,stateAttributesMapping:i,tag:j="div",...l}=a,{compositeProps:m,compositeRef:n}=(0,aV.useCompositeItem)({metadata:h});return(0,k.useRenderElement)(j,a,{state:e,ref:[...g,n],props:[m,...f,l],stateAttributesMapping:i})}var aX=a.i(193482),aY=a.i(95133),aZ=a.i(199793),a$=a.i(452447),a_=a.i(503801);let a0=(0,at.fastComponentRef)(function(a,b){let c,g,h,i,{render:m,className:n,style:o,disabled:r=!1,nativeButton:s=!0,id:t,openOnHover:u,delay:v=100,closeDelay:y=0,handle:z,payload:A,...B}=a,C=j(!0),E=z?.store??C?.store;if(!E)throw Error((0,f.default)(85));let F=(0,D.useBaseUiId)(t),H=E.useState("isTriggerActive",F),I=E.useState("floatingRootContext"),J=E.useState("isOpenedByTrigger",F),K=E.useState("triggerPopupId",F),L=e.useRef(null),M=(c=p(!0),g=j(!0),h=az(!0),e.useMemo(()=>h?{type:"menubar",context:h}:c&&!g?{type:"context-menu",context:c}:{type:void 0},[c,g,h])),O=(0,aX.useCompositeRootContext)(!0),P=(0,ab.useFloatingTree)(),Q=e.useMemo(()=>P??new aF.FloatingTreeStore,[P]),R=(0,ab.useFloatingNodeId)(Q),S=(0,ab.useFloatingParentNodeId)(),{registerTrigger:T,isMountedByThisTrigger:U}=(0,aK.useTriggerDataForwarding)(F,L,E,{payload:A,closeDelay:y,parent:M,floatingTreeRoot:Q,floatingNodeId:R,floatingParentNodeId:S,keyboardEventRelay:O?.relayKeyboardEvent}),V="menubar"===M.type,W=E.useState("disabled"),X=r||W||V&&M.context.disabled,{getButtonProps:Y,buttonRef:Z}=(0,w.useButton)({disabled:X,native:s});e.useEffect(()=>{J||void 0!==M.type||(E.context.allowMouseUpTriggerRef.current=!1)},[E,J,M.type]);let $=e.useRef(null),_=(0,aa.useTimeout)(),ac=(0,al.useStableCallback)(a=>{if(!$.current)return;_.clear(),E.context.allowMouseUpTriggerRef.current=!1;let b=a.target;if((0,aT.contains)($.current,b)||(0,aT.contains)(E.select("positionerElement"),b)||b===$.current||null!=b&&function a(b){return(0,aY.isHTMLElement)(b)&&b.hasAttribute("data-rootownerid")?b.getAttribute("data-rootownerid")??void 0:(0,aY.isLastTraversableNode)(b)?void 0:a((0,aY.getParentNode)(b))}(b)===E.select("rootId"))return;let c=(0,aU.getPseudoElementBounds)($.current);a.clientX>=c.left-2&&a.clientX<=c.right+2&&a.clientY>=c.top-2&&a.clientY<=c.bottom+2||Q.events.emit("close",{domEvent:a,reason:q.REASONS.cancelOpen})});e.useEffect(()=>{J&&E.select("lastOpenChangeReason")===q.REASONS.triggerHover&&(0,aO.ownerDocument)($.current).addEventListener("mouseup",ac,{once:!0})},[J,ac,E]);let ad=V&&M.context.hasSubmenuOpen,ae=u??ad,ag=(0,aS.useHoverReferenceInteraction)(I,{enabled:ae&&!X&&"context-menu"!==M.type&&(!V||ad&&!U),handleClose:(0,aP.safePolygon)({blockPointerEvents:!V}),mouseOnly:!0,move:!1,restMs:void 0===M.type?v:void 0,delay:{close:y},triggerElementRef:L,externalTree:Q,isActiveTrigger:H,isClosing:()=>"ending"===E.select("transitionStatus")}),ah=function(a,b){let c=(0,aa.useTimeout)(),[d,f]=e.useState(!1);return(0,N.useIsoLayoutEffect)(()=>{a&&"trigger-hover"===b?(f(!0),c.start(af.PATIENT_CLICK_THRESHOLD,()=>{f(!1)})):a||(c.clear(),f(!1))},[a,b,c]),d}(J,E.select("lastOpenChangeReason")),ai=(0,aQ.useClick)(I,{enabled:!X&&"context-menu"!==M.type,event:J&&V?"click":"mousedown",toggle:!0,ignoreMouse:!1,stickIfOpen:void 0===M.type&&ah}),aj=(0,aR.useFocus)(I,{enabled:!X&&ad}),ak=function(a){let{enabled:b=!0,mouseDownAction:c,open:d}=a,f=e.useRef(!1);return e.useMemo(()=>b?{onMouseDown:a=>{("open"===c&&!d||"close"===c&&d)&&(f.current=!0,(0,aO.ownerDocument)(a.currentTarget).addEventListener("click",()=>{f.current=!1},{once:!0}))},onClick:a=>{f.current&&(f.current=!1,a.preventBaseUIHandler())}}:as.EMPTY_OBJECT,[b,c,d])}({open:J,enabled:V,mouseDownAction:"open"}),am=e.useMemo(()=>(0,x.mergeProps)(aj.reference,ai.reference),[aj.reference,ai.reference]),an=E.useState("triggerProps",U),{preFocusGuardRef:ao,handlePreFocusGuardFocus:ap,handleFocusTargetFocus:aq}={preFocusGuardRef:i=e.useRef(null),handlePreFocusGuardFocus:function(a){aZ.flushSync(()=>{E.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.focusOut,a.nativeEvent,a.currentTarget))});let b=(0,a$.getTabbableBeforeElement)(i.current);b?.focus()},handleFocusTargetFocus:function(a){let b=E.select("positionerElement");if(b&&(0,a$.isOutsideEvent)(a,b))E.context.beforeContentFocusGuardRef.current?.focus();else{aZ.flushSync(()=>{E.setOpen(!1,(0,G.createChangeEventDetails)(q.REASONS.focusOut,a.nativeEvent,a.currentTarget))});let c=(0,a$.getTabbableAfterElement)(E.context.triggerFocusTargetRef.current||L.current);for(;null!==c&&(0,aT.contains)(b,c);){let a=c;if((c=(0,a$.getNextTabbable)(c))===a)break}c?.focus()}}},ar={disabled:X,open:J},at=[$,b,Z,T,L],au=[am,ag??as.EMPTY_OBJECT,an,{"aria-haspopup":"menu","aria-controls":K,id:F,onMouseDown:a=>{E.select("open")||(_.start(200,()=>{E.context.allowMouseUpTriggerRef.current=!0}),(0,aO.ownerDocument)(a.currentTarget).addEventListener("mouseup",ac,{once:!0}))}},V?{role:"menuitem"}:{},ak,B,Y],av=(0,k.useRenderElement)("button",a,{enabled:!V,stateAttributesMapping:l.pressableTriggerOpenStateMapping,state:ar,ref:at,props:au});return V?(0,d.jsx)(aW,{tag:"button",render:m,className:n,style:o,state:ar,refs:at,props:au,stateAttributesMapping:l.pressableTriggerOpenStateMapping}):J?(0,d.jsxs)(e.Fragment,{children:[(0,d.jsx)(a_.FocusGuard,{ref:ao,onFocus:ap},`${F}-pre-focus-guard`),(0,d.jsx)(e.Fragment,{children:av},F),(0,d.jsx)(a_.FocusGuard,{ref:E.context.triggerFocusTargetRef,onFocus:aq},`${F}-post-focus-guard`)]}):(0,d.jsx)(e.Fragment,{children:av},F)});var a1=a.i(269354);let a2=((c={}).popupWidth="--popup-width",c.popupHeight="--popup-height",c),a3={activationDirection:a=>a?{"data-activation-direction":a}:null},a4=e.forwardRef(function(a,b){let{render:c,className:d,style:e,children:f,...g}=a,{store:i}=j(),{side:l}=h(),m=i.useState("instantType"),{children:n,state:o}=(0,a1.usePopupViewport)({store:i,side:l,cssVars:a2,children:f}),p={activationDirection:o.activationDirection,transitioning:o.transitioning,instant:m};return(0,k.useRenderElement)("div",a,{state:p,ref:b,props:[g,{children:n}],stateAttributesMapping:a3})});var a5=a.i(67854);let a6=e.forwardRef(function(a,b){let{render:c,className:d,style:g,label:i,id:m,nativeButton:n=!1,openOnHover:o=!0,delay:p=100,closeDelay:q=0,disabled:r=!1,...s}=a,t=(0,C.useCompositeListItem)({label:i}),u=h(),{store:v}=j(),w=(0,D.useBaseUiId)(m),x=v.useState("open"),y=v.useState("floatingRootContext"),z=v.useState("floatingTreeRoot"),A=v.useState("triggerPopupId",w),E=(0,aK.useTriggerRegistration)(w,v),F=e.useCallback(a=>{let b=E(a);return null!==a&&v.select("open")&&null==v.select("activeTriggerId")&&v.update({activeTriggerId:w,activeTriggerElement:a,closeDelay:q}),b},[E,q,v,w]),G=e.useRef(null),H=e.useCallback(a=>{G.current=a,v.set("activeTriggerElement",a)},[v]),I=aM();if(!I?.parentMenu)throw Error((0,f.default)(37));v.useSyncedValue("closeDelay",q);let J=I.parentMenu,K=v.useState("disabled"),L=J.useState("disabled"),M=r||K||L,N=J.useState("itemProps"),O=J.useState("isActive",t.index),P=e.useMemo(()=>({type:"submenu-trigger",setActive(){J.select("highlightItemOnHover")&&J.set("activeIndex",t.index)}}),[J,t.index]),{getItemProps:Q,itemRef:R}=B({closeOnClick:!1,disabled:M,highlighted:O,id:w,store:v,typingRef:J.context.typingRef,nativeButton:n,itemMetadata:P,nodeId:u?.context.nodeId}),S=v.useState("hoverEnabled"),T=(0,aS.useHoverReferenceInteraction)(y,{enabled:S&&o&&!M,handleClose:(0,aP.safePolygon)({blockPointerEvents:!0}),mouseOnly:!0,move:!0,restMs:p,delay:{open:p,close:q},shouldOpen:p>0?()=>J.select("allowMouseEnter"):void 0,triggerElementRef:G,externalTree:z,isClosing:()=>"ending"===v.select("transitionStatus")}),U=(0,aQ.useClick)(y,{enabled:!M,event:"mousedown",toggle:!o,ignoreMouse:o,stickIfOpen:!1}).reference??as.EMPTY_OBJECT,V=v.useState("triggerProps",!0);return delete V.id,(0,k.useRenderElement)("div",a,{state:{disabled:M,highlighted:O,open:x},stateAttributesMapping:l.triggerOpenStateMapping,props:[U,T,V,N,{"aria-controls":A,tabIndex:x||O?0:-1,onBlur(){O&&J.set("activeIndex",null)}},s,Q],ref:[b,t.ref,R,F,H]})});class a7{constructor(){this.store=new aJ}open(a){let b=a?this.store.context.triggerElements.getById(a):void 0;if(a&&!b)throw Error((0,f.default)(83,a));this.store.setOpen(!0,(0,G.createChangeEventDetails)("imperative-action",void 0,b))}close(){this.store.setOpen(!1,(0,G.createChangeEventDetails)("imperative-action",void 0,void 0))}get isOpen(){return this.store.select("open")}}a.s(["Arrow",0,m,"Backdrop",0,s,"CheckboxItem",0,H,"CheckboxItemIndicator",0,K,"Group",0,M,"GroupLabel",0,O,"Handle",0,a7,"Item",0,P,"LinkItem",0,Q,"Popup",0,X,"Portal",0,$,"Positioner",0,ak,"RadioGroup",0,an,"RadioItem",0,ap,"RadioItemIndicator",0,aq,"Root",0,aN,"Separator",()=>a5.Separator,"SubmenuRoot",0,function(a){let b=j().store,c=e.useMemo(()=>({parentMenu:b}),[b]);return(0,d.jsx)(aL.Provider,{value:c,children:(0,d.jsx)(aN,{...a})})},"SubmenuTrigger",0,a6,"Trigger",0,a0,"Viewport",0,a4,"createHandle",0,function(){return new a7}],94355);var a8=a.i(94355),a8=a8,a9=a.i(74192),ba=a.i(6966),ba=ba;function bb({align:a="start",alignOffset:b=0,side:c="bottom",sideOffset:e=4,className:f,...g}){return(0,d.jsx)(a8.Portal,{children:(0,d.jsx)(a8.Positioner,{className:"isolate z-50 outline-none",align:a,alignOffset:b,side:c,sideOffset:e,children:(0,d.jsx)(a8.Popup,{"data-slot":"dropdown-menu-content",className:(0,a9.cn)("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md bg-popover p-1 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95",f),...g})})})}a.i(453046),a.s(["DropdownMenu",0,function({...a}){return(0,d.jsx)(a8.Root,{"data-slot":"dropdown-menu",...a})},"DropdownMenuContent",0,bb,"DropdownMenuGroup",0,function({...a}){return(0,d.jsx)(a8.Group,{"data-slot":"dropdown-menu-group",...a})},"DropdownMenuItem",0,function({className:a,inset:b,variant:c="default",...e}){return(0,d.jsx)(a8.Item,{"data-slot":"dropdown-menu-item","data-inset":b,"data-variant":c,className:(0,a9.cn)("group/dropdown-menu-item relative flex cursor-pointer items-center gap-1.5 rounded-md px-1.5 py-1.5 text-sm outline-hidden select-none not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive"," hover:bg-background ",a),...e})},"DropdownMenuLabel",0,function({className:a,inset:b,...c}){return(0,d.jsx)(a8.GroupLabel,{"data-slot":"dropdown-menu-label","data-inset":b,className:(0,a9.cn)("px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7",a),...c})},"DropdownMenuSeparator",0,function({className:a,...b}){return(0,d.jsx)(a8.Separator,{"data-slot":"dropdown-menu-separator",className:(0,a9.cn)("-mx-1 my-1 h-px bg-border",a),...b})},"DropdownMenuSub",0,function({...a}){return(0,d.jsx)(a8.SubmenuRoot,{"data-slot":"dropdown-menu-sub",...a})},"DropdownMenuSubContent",0,function({align:a="start",alignOffset:b=-3,side:c="right",sideOffset:e=0,className:f,...g}){return(0,d.jsx)(bb,{"data-slot":"dropdown-menu-sub-content",className:(0,a9.cn)("w-auto min-w-[196px]! rounded-md bg-popover p-1 text-popover-foreground ring-1 ring-foreground/10 duration-100 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 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95","",f),align:a,alignOffset:b,side:c,sideOffset:e,...g})},"DropdownMenuSubTrigger",0,function({className:a,inset:b,children:c,...e}){return(0,d.jsxs)(a8.SubmenuTrigger,{"data-slot":"dropdown-menu-sub-trigger","data-inset":b,className:(0,a9.cn)("flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","h-8",a),...e,children:[c,(0,d.jsx)(ba.default,{className:"ml-auto"})]})},"DropdownMenuTrigger",0,function({...a}){return(0,d.jsx)(a8.Trigger,{"data-slot":"dropdown-menu-trigger",...a,className:(0,a9.cn)("cursor-pointer",a.className)})}],94842)},207752,833489,a=>{"use strict";var b=a.i(326729);let c=(0,b.default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,c],207752);let d=(0,b.default)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);a.s(["EyeOff",0,d],833489)},572727,745975,4455,a=>{"use strict";var b=a.i(360809),c=a.i(74192);let d={vercel_ai_gateway:{label:"Vercel AI Gateway",iconSrc:"/icons/vercel.svg",pillBg:"bg-white dark:bg-white text-white dark:text-black"},openai:{label:"OpenAI",iconSrc:"/icons/openai.svg",pillBg:"bg-neutral-100 dark:bg-neutral-800"},anthropic:{label:"Anthropic",iconSrc:"https://models.dev/logos/anthropic.svg",pillBg:"bg-amber-50 dark:bg-amber-950/40"},google:{label:"Google",iconSrc:"/icons/gemini.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},meta:{label:"Meta",iconSrc:"https://models.dev/logos/meta.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},mistral:{label:"Mistral",iconSrc:"/icons/mistral.svg",pillBg:"bg-amber-50 dark:bg-amber-950/40"},cohere:{label:"Cohere",iconSrc:"/icons/cohere.svg",pillBg:"bg-orange-50 dark:bg-orange-950/40"},deepseek:{label:"DeepSeek",iconSrc:"https://models.dev/logos/deepseek.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},amazon:{label:"Amazon",iconSrc:"/icons/aws.svg",pillBg:"bg-orange-50 dark:bg-orange-950/40"},xai:{label:"xAI",iconSrc:"https://models.dev/logos/xai.svg",pillBg:"bg-neutral-100 dark:bg-neutral-800"},perplexity:{label:"Perplexity",iconSrc:"https://models.dev/logos/perplexity.svg",pillBg:"bg-teal-50 dark:bg-teal-950/40"},alibaba:{label:"Alibaba",iconSrc:"https://models.dev/logos/alibaba.svg",pillBg:"bg-orange-50 dark:bg-orange-950/40"},groq:{label:"Groq",iconSrc:"https://models.dev/logos/groq.svg",pillBg:"bg-orange-50 dark:bg-orange-950/40"},"together-ai":{label:"Together AI",iconSrc:"https://models.dev/logos/together-ai.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},fireworks:{label:"Fireworks",iconSrc:"https://models.dev/logos/fireworks.svg",pillBg:"bg-purple-50 dark:bg-purple-950/40"},cerebras:{label:"Cerebras",iconSrc:"https://models.dev/logos/cerebras.svg",pillBg:"bg-green-50 dark:bg-green-950/40"},voyage:{label:"Voyage AI",iconSrc:"/icons/voyage-light.png",pillBg:"bg-slate-100 dark:bg-slate-800"},jina:{label:"Jina AI",iconSrc:"/icons/jina.svg",pillBg:"bg-rose-50 dark:bg-rose-950/40"},nomic:{label:"Nomic",iconSrc:"/icons/nomic.png",pillBg:"bg-teal-50 dark:bg-teal-950/40"},minimax:{label:"MiniMax",iconSrc:"https://models.dev/logos/minimax.svg",pillBg:"bg-blue-50 dark:bg-blue-950/40"},elevenlabs:{label:"ElevenLabs",iconSrc:"https://models.dev/logos/elevenlabs.svg",pillBg:"bg-neutral-100 dark:bg-neutral-800"},custom:{label:"Custom",iconSrc:"/logo.png",pillBg:"bg-slate-100 dark:bg-slate-800"}};a.s(["PROVIDER_META",0,d,"ProviderIcon",0,function({src:a,alt:d,pillBg:e,size:f=20}){return(0,b.jsx)("span",{className:(0,c.cn)("inline-flex shrink-0 items-center justify-center rounded",e),style:{width:f,height:f},children:a?(0,b.jsx)("img",{src:a,alt:d,width:f-4,height:f-4,className:"object-contain",style:{maxWidth:f-4,maxHeight:f-4}}):null})},"getProviderMeta",0,function(a){return d[a]??{label:a.charAt(0).toUpperCase()+a.slice(1),iconSrc:`https://models.dev/logos/${a}.svg`,pillBg:"bg-slate-100 dark:bg-slate-800"}}],572727);var e=a.i(887556),f=a.i(635153),g=a.i(343578),h=a.i(541487),i=a.i(961644),j=a.i(888524),k=a.i(207752),l=a.i(833489),m=a.i(93718);let n=(0,a.i(326729).default)("cloud",[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]]);function o({onSave:a,type:c,onCancel:d}){let[g,p]=(0,e.useState)(""),[q,r]=(0,e.useState)(""),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)(""),[w,x]=(0,e.useState)(null),[y,z]=(0,e.useState)(!1),[A,B]=(0,e.useState)(!1),C=async()=>{if(!g||!u)return void f.toast.error("Base URL and Model Name are required");z(!0);try{if("embedding"===c){let a=await fetch("/api/config/test-embedding",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({baseUrl:g,apiKey:q,modelName:u})}),b=await a.json();if(!a.ok)throw Error(b.error||"Connection failed");x(b.dimensions),B(!0),f.toast.success(`Success! Detected ${b.dimensions} dimensions.`)}else{let a=await fetch("/api/config/verify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({chatProvider:"custom",chatApiKey:q,customChatModels:[{baseUrl:g,apiKey:q,modelName:u}]})}),b=await a.json();if(!a.ok)throw Error(b.error||"Connection failed");B(!0),f.toast.success("Success! Chat model connected.")}}catch(a){f.toast.error(a instanceof Error?a.message:"Test failed"),x(null),B(!1)}finally{z(!1)}};return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"grid gap-4 py-4",children:[(0,b.jsxs)("div",{className:"grid gap-2",children:[(0,b.jsx)(j.Label,{htmlFor:"baseUrl",children:"Base URL"}),(0,b.jsx)(i.Input,{id:"baseUrl",placeholder:"https://api.example.com/v1",value:g,onChange:a=>{p(a.target.value),B(!1)}})]}),(0,b.jsxs)("div",{className:"grid gap-2",children:[(0,b.jsx)(j.Label,{htmlFor:"apiKey",children:"API Key (Optional)"}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(i.Input,{id:"apiKey",type:s?"text":"password",placeholder:"sk-...",value:q,onChange:a=>{r(a.target.value),B(!1)},className:"pr-10"}),(0,b.jsx)("button",{type:"button",onClick:()=>t(!s),className:"absolute inset-y-0 right-0 flex items-center pr-3 text-muted-foreground hover:text-foreground",children:s?(0,b.jsx)(l.EyeOff,{className:"size-4"}):(0,b.jsx)(k.Eye,{className:"size-4"})})]})]}),(0,b.jsxs)("div",{className:"grid gap-2",children:[(0,b.jsx)(j.Label,{htmlFor:"modelName",children:"Model Name"}),(0,b.jsx)(i.Input,{id:"modelName",placeholder:"embedding"===c?"my-embedding-model":"my-chat-model",value:u,onChange:a=>{v(a.target.value),B(!1)}})]}),A&&(0,b.jsxs)("div",{className:"text-sm text-green-600 dark:text-green-400 font-medium",children:["✓ Connection verified ",w?`(${w} dimensions)`:""]})]}),(0,b.jsxs)("div",{className:"flex flex-row justify-between sm:justify-between items-center gap-2",children:[(0,b.jsxs)(h.Button,{variant:"outline",type:"button",onClick:C,disabled:y,children:[y?(0,b.jsx)(m.Loader2,{className:"size-4 animate-spin mr-2"}):(0,b.jsx)(n,{className:"size-4 mr-2"}),"Test Connection"]}),(0,b.jsxs)("div",{className:"flex gap-2",children:[d&&(0,b.jsx)(h.Button,{variant:"ghost",type:"button",onClick:d,children:"Cancel"}),(0,b.jsx)(h.Button,{className:"px-5",type:"button",onClick:()=>{g&&u&&A?a({baseUrl:g,apiKey:q,modelName:u,dimensions:w??void 0}):f.toast.error("Please test the connection first.")},disabled:!A,children:"Add Model"})]})]})]})}a.s(["Cloud",0,n],745975),a.s(["CustomModelForm",0,o,"CustomModelModal",0,function({open:a,onOpenChange:c,onSave:d,type:e}){return(0,b.jsx)(g.Dialog,{open:a,onOpenChange:c,children:(0,b.jsxs)(g.DialogContent,{className:"max-w-xl",children:[(0,b.jsxs)(g.DialogHeader,{children:[(0,b.jsxs)(g.DialogTitle,{children:["Custom ","embedding"===e?"Embedding":"Chat"," Model"]}),(0,b.jsxs)(g.DialogDescription,{children:["Connect an OpenAI-compatible ","embedding"===e?"embedding":"chat"," model."]})]}),(0,b.jsx)(o,{type:e,onSave:a=>{d(a),c(!1)}})]})})}],4455)}];
2
2
 
3
- //# sourceMappingURL=_0k81--x._.js.map
3
+ //# sourceMappingURL=_0ckxy33._.js.map