thursday-agent 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/prerender-manifest.json +3 -3
  4. package/.next/server/app/_global-error.html +1 -1
  5. package/.next/server/app/_global-error.rsc +1 -1
  6. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  9. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  10. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/_not-found.html +1 -1
  12. package/.next/server/app/_not-found.rsc +2 -2
  13. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  14. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  15. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  16. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  17. package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
  18. package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
  19. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  20. package/.next/server/app/api/bot/task/[id]/route.js.nft.json +1 -1
  21. package/.next/server/app/api/bot/task/route.js.nft.json +1 -1
  22. package/.next/server/app/api/config/route.js.nft.json +1 -1
  23. package/.next/server/app/api/events/route.js.nft.json +1 -1
  24. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  25. package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
  26. package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -1
  27. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  28. package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
  29. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  30. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  31. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  32. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  33. package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
  34. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  35. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  36. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  37. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  38. package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
  39. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  40. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  41. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +1 -1
  42. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  43. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  44. package/.next/server/app/page/server-reference-manifest.json +40 -40
  45. package/.next/server/app/page.js +2 -2
  46. package/.next/server/app/page.js.nft.json +1 -1
  47. package/.next/server/app/page_client-reference-manifest.js +1 -1
  48. package/.next/server/chunks/[root-of-the-server]__02va5wz._.js +1 -1
  49. package/.next/server/chunks/[root-of-the-server]__0ls6_8y._.js +4 -4
  50. package/.next/server/chunks/[root-of-the-server]__0ncs9uu._.js +1 -1
  51. package/.next/server/chunks/[root-of-the-server]__1-ga0kh._.js +2 -2
  52. package/.next/server/chunks/[root-of-the-server]__1_04mcf._.js +2 -2
  53. package/.next/server/chunks/[root-of-the-server]__1anc1p9._.js +1 -1
  54. package/.next/server/chunks/[root-of-the-server]__1ccon1w._.js +3 -3
  55. package/.next/server/chunks/[root-of-the-server]__1orn-5b._.js +4 -3
  56. package/.next/server/chunks/[root-of-the-server]__1wa1k7r._.js +3 -3
  57. package/.next/server/chunks/_0-fjql4._.js +5 -5
  58. package/.next/server/chunks/_00xh_q0._.js +3 -5
  59. package/.next/server/chunks/_05h2cii._.js +1 -1
  60. package/.next/server/chunks/_0fzqt2y._.js +48 -44
  61. package/.next/server/chunks/_0mecv0f._.js +5 -5
  62. package/.next/server/chunks/_0mh8j4m._.js +1 -1
  63. package/.next/server/chunks/_0wp4le3._.js +1 -1
  64. package/.next/server/chunks/_0y5fg-x._.js +1 -1
  65. package/.next/server/chunks/_1230wbx._.js +3 -3
  66. package/.next/server/chunks/_15hq89o._.js +1 -1
  67. package/.next/server/chunks/{_03kp0jp._.js → _1c78vw5._.js} +58 -56
  68. package/.next/server/chunks/_1j8k_j5._.js +1 -1
  69. package/.next/server/chunks/_1krd9rf._.js +1 -1
  70. package/.next/server/chunks/_1php4eq._.js +1 -1
  71. package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
  72. package/.next/server/chunks/features_1qf3cei._.js +1 -1
  73. package/.next/server/chunks/features_memory_1uqvksn._.js +2 -2
  74. package/.next/server/chunks/ssr/[root-of-the-server]__092knlj._.js +3 -0
  75. package/.next/server/chunks/ssr/{[root-of-the-server]__1eh7hid._.js → [root-of-the-server]__0s9dq5u._.js} +1 -1
  76. package/.next/server/chunks/ssr/{[root-of-the-server]__1cyjywu._.js → [root-of-the-server]__0s9l2sv._.js} +1 -1
  77. package/.next/server/chunks/ssr/{[root-of-the-server]__0zkv7z_._.js → [root-of-the-server]__0xsog8n._.js} +2 -2
  78. package/.next/server/chunks/ssr/[root-of-the-server]__10-dz5o._.js +13 -9
  79. package/.next/server/chunks/ssr/[root-of-the-server]__1gtlw6v._.js +2 -2
  80. package/.next/server/chunks/ssr/[root-of-the-server]__1mzi-ju._.js +1 -1
  81. package/.next/server/chunks/ssr/[root-of-the-server]__1ox7hbk._.js +1 -1
  82. package/.next/server/chunks/ssr/{[root-of-the-server]__0_69wqr._.js → [root-of-the-server]__202p40z._.js} +1 -1
  83. package/.next/server/chunks/ssr/_001_ms1._.js +1 -1
  84. package/.next/server/chunks/ssr/{_0c-ql2m._.js → _0fz4mf_._.js} +2 -2
  85. package/.next/server/chunks/ssr/{_07uchnc._.js → _0gb4gmf._.js} +2 -2
  86. package/.next/server/chunks/ssr/_0i_6q1w._.js +2 -2
  87. package/.next/server/chunks/ssr/{_20kd_n0._.js → _0ilna52._.js} +3 -3
  88. package/.next/server/chunks/ssr/{_0mo2w06._.js → _0n3toaw._.js} +2 -2
  89. package/.next/server/chunks/ssr/{_0mb8zc8._.js → _0s99bgb._.js} +2 -2
  90. package/.next/server/chunks/ssr/_0zcjrbg._.js +3 -0
  91. package/.next/server/chunks/ssr/{_13z3f85._.js → _1-_etts._.js} +2 -2
  92. package/.next/server/chunks/ssr/_13fke0x._.js +1 -1
  93. package/.next/server/chunks/ssr/{_01_6m32._.js → _1b2mjwr._.js} +2 -2
  94. package/.next/server/chunks/ssr/{_1eoqg_g._.js → _1f-dg-6._.js} +2 -2
  95. package/.next/server/chunks/ssr/{_0y0tiht._.js → _1fojd41._.js} +3 -3
  96. package/.next/server/chunks/ssr/_1gd8q8l._.js +3 -0
  97. package/.next/server/chunks/ssr/{_1xvgn77._.js → _1h0rw11._.js} +2 -2
  98. package/.next/server/chunks/ssr/_1jhd09t._.js +3 -0
  99. package/.next/server/chunks/ssr/{_0u2jv_x._.js → _1lz_cq2._.js} +46 -44
  100. package/.next/server/chunks/ssr/{_0kbkmar._.js → _1nnsk7z._.js} +2 -2
  101. package/.next/server/chunks/ssr/_1sji22n._.js +1 -1
  102. package/.next/server/chunks/ssr/_1vyd1ji._.js +1 -1
  103. package/.next/server/chunks/ssr/features_config_components_config-setting_tsx_0xfwqdg._.js +1 -1
  104. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
  105. package/.next/server/chunks/ssr/{node_modules_0z5tsu8._.js → node_modules_00etblx._.js} +1 -1
  106. package/.next/server/chunks/ssr/{node_modules_1h4a4pp._.js → node_modules_04jf_m8._.js} +1 -1
  107. package/.next/server/chunks/ssr/{node_modules_0h5hnr1._.js → node_modules_08dhkiq._.js} +1 -1
  108. package/.next/server/chunks/ssr/{node_modules_1vqb6po._.js → node_modules_0940ns5._.js} +1 -1
  109. package/.next/server/chunks/ssr/{node_modules_1i7u1ia._.js → node_modules_09q35v_._.js} +1 -1
  110. package/.next/server/chunks/ssr/{node_modules_124bue5._.js → node_modules_0_-_a--._.js} +1 -1
  111. package/.next/server/chunks/ssr/{node_modules_0h7u60n._.js → node_modules_0arus10._.js} +1 -1
  112. package/.next/server/chunks/ssr/{node_modules_0rjg6t1._.js → node_modules_0b__sgl._.js} +1 -1
  113. package/.next/server/chunks/ssr/{node_modules_113tz0l._.js → node_modules_0cxaxk9._.js} +1 -1
  114. package/.next/server/chunks/ssr/{node_modules_0lm7_vm._.js → node_modules_0g7fzk3._.js} +1 -1
  115. package/.next/server/chunks/ssr/{node_modules_0h50b8n._.js → node_modules_0had7xd._.js} +1 -1
  116. package/.next/server/chunks/ssr/{node_modules_1-hc6uv._.js → node_modules_0pvd7q-._.js} +1 -1
  117. package/.next/server/chunks/ssr/{node_modules_1bc7gu8._.js → node_modules_0yugy6m._.js} +1 -1
  118. package/.next/server/chunks/ssr/{node_modules_0y_cded._.js → node_modules_14om4ar._.js} +1 -1
  119. package/.next/server/chunks/ssr/{node_modules_0zp9r92._.js → node_modules_14q6g4n._.js} +1 -1
  120. package/.next/server/chunks/ssr/{node_modules_0eu1va6._.js → node_modules_198nmll._.js} +1 -1
  121. package/.next/server/chunks/ssr/{node_modules_1t9cyee._.js → node_modules_1_pc9kq._.js} +1 -1
  122. package/.next/server/chunks/ssr/{node_modules_063xwpp._.js → node_modules_1aaxuef._.js} +1 -1
  123. package/.next/server/chunks/ssr/{node_modules_0bvraul._.js → node_modules_1cx_ql6._.js} +1 -1
  124. package/.next/server/chunks/ssr/{node_modules_1xx28h1._.js → node_modules_1cz2hle._.js} +1 -1
  125. package/.next/server/chunks/ssr/{node_modules_1l0qtdu._.js → node_modules_1efrqxi._.js} +1 -1
  126. package/.next/server/chunks/ssr/{node_modules_1juq3hs._.js → node_modules_1eg7m6c._.js} +1 -1
  127. package/.next/server/chunks/ssr/{node_modules_1_n3ztw._.js → node_modules_1gdh31p._.js} +1 -1
  128. package/.next/server/chunks/ssr/{node_modules_0mwym0g._.js → node_modules_1hpopmo._.js} +1 -1
  129. package/.next/server/chunks/ssr/{node_modules_1bgb6-f._.js → node_modules_1qpjvy5._.js} +1 -1
  130. package/.next/server/chunks/ssr/{node_modules_1uuj9x1._.js → node_modules_1vh5ntv._.js} +1 -1
  131. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0d3skpl._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1b748ic._.js} +1 -1
  132. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0i44kk5._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1z4hm5e._.js} +1 -1
  133. package/.next/server/chunks/ssr/{node_modules_@vercel_oidc_dist_0qe30a_._.js → node_modules_@vercel_oidc_dist_06mk8id._.js} +1 -1
  134. package/.next/server/middleware-build-manifest.js +3 -3
  135. package/.next/server/pages/404.html +1 -1
  136. package/.next/server/pages/500.html +1 -1
  137. package/.next/server/server-reference-manifest.js +1 -1
  138. package/.next/server/server-reference-manifest.json +41 -41
  139. package/.next/static/chunks/00rd4-v8r7axp.js +1 -0
  140. package/.next/static/chunks/{0tmgrnlje14-s.js → 08qe4as2q428z.js} +2 -2
  141. package/.next/static/chunks/{3ok9_x74rip3v.js → 0fl3gwe4-l6tz.js} +1 -1
  142. package/.next/static/chunks/{2a0k6jlq0_v1u.js → 0gnqdjn2lvdad.js} +2 -2
  143. package/.next/static/chunks/{1okqiww3pnwka.js → 0hwap1-p0m5sa.js} +1 -1
  144. package/.next/static/chunks/{1ekc7ul556kbl.js → 0w52rrrmuj9r9.js} +1 -1
  145. package/.next/static/chunks/{3agpgkwaa321p.js → 0wcprt5ot5she.js} +1 -1
  146. package/.next/static/chunks/{3xpbkl66ssib5.js → 15m575979un5f.js} +6 -6
  147. package/.next/static/chunks/{2fzs9fm8yarvq.js → 17p6tk6k88dq6.js} +1 -1
  148. package/.next/static/chunks/{26-pr2c9ro222.js → 1jd09sxcjddu1.js} +1 -1
  149. package/.next/static/chunks/{280t0_e99i276.js → 1w73ece_6bheu.js} +1 -1
  150. package/.next/static/chunks/{1grhjo7a5a0_-.js → 214ya3n5gxeih.js} +1 -1
  151. package/.next/static/chunks/22_zkas21rpna.js +1 -0
  152. package/.next/static/chunks/{0x79tx04dxbpp.js → 2u7xt6mxg44lf.js} +1 -1
  153. package/.next/static/chunks/{17donp69y4do7.js → 39j0fvpybzabl.js} +8 -8
  154. package/.next/static/chunks/{28cizcdaabd4h.js → 3akmqm77muj4-.js} +1 -1
  155. package/.next/static/chunks/3cq5g494yuke8.css +1 -0
  156. package/.next/static/chunks/3woj-xd7ki5_i.js +1 -0
  157. package/.next/static/chunks/{3cfi_q6d_wtci.js → 3zmcsnuo25zvq.js} +1 -1
  158. package/README.md +46 -23
  159. package/app/api/events/app-event.ts +0 -2
  160. package/bin/port.mjs +65 -0
  161. package/bin/thursday.mjs +2 -33
  162. package/docs/how-it-works.md +11 -7
  163. package/docs/images/face-dark.png +0 -0
  164. package/docs/images/face-light.png +0 -0
  165. package/docs/images/keeps-going.png +0 -0
  166. package/features/ai/chatgpt.ts +42 -20
  167. package/features/ai/load-tools.ts +20 -14
  168. package/features/ai/prompts/bot.prompt.ts +90 -88
  169. package/features/ai/prompts/thursday.prompt.ts +48 -41
  170. package/features/ai/tools/memory.tool.ts +65 -62
  171. package/features/ai/tools/tool-name.ts +0 -1
  172. package/features/ai/tools/workspace.tool.ts +3 -0
  173. package/features/bot/bot.action.ts +6 -1
  174. package/features/bot/bot.run.ts +11 -7
  175. package/features/bot/bot.runner.ts +34 -16
  176. package/features/bot/bot.schema.ts +25 -0
  177. package/features/bot/components/bot-room.tsx +57 -4
  178. package/features/bot/components/bot-tool.tsx +0 -1
  179. package/features/bot/task.query.ts +25 -6
  180. package/features/bot/task.store.ts +23 -4
  181. package/features/memory/components/memory-edit.tsx +7 -5
  182. package/features/thursday/components/thursday.tsx +0 -3
  183. package/features/thursday/tool-line.ts +0 -1
  184. package/features/thursday/use-thursday.ts +1 -1
  185. package/package.json +1 -1
  186. package/.next/server/chunks/ssr/[root-of-the-server]__1pduf5n._.js +0 -3
  187. package/.next/server/chunks/ssr/_14_lw10._.js +0 -3
  188. package/.next/server/chunks/ssr/_1spzm8z._.js +0 -3
  189. package/.next/server/chunks/ssr/lib_date-like_ts_02is0pw._.js +0 -3
  190. package/.next/static/chunks/0xzgvc0fkdb6t.js +0 -1
  191. package/.next/static/chunks/14hgtsjg-kael.css +0 -1
  192. package/.next/static/chunks/2hw2f6zmt7fmt.js +0 -1
  193. package/.next/static/chunks/3111pj5wnjgos.js +0 -1
  194. package/features/memory/components/memory-view.tsx +0 -84
  195. /package/.next/static/{x1cCqY0kWpR_VcYx_lWO5 → kaTO0UHqF1bMnWgCDik2f}/_buildManifest.js +0 -0
  196. /package/.next/static/{x1cCqY0kWpR_VcYx_lWO5 → kaTO0UHqF1bMnWgCDik2f}/_clientMiddlewareManifest.js +0 -0
  197. /package/.next/static/{x1cCqY0kWpR_VcYx_lWO5 → kaTO0UHqF1bMnWgCDik2f}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,805995,e=>{"use strict";var t=e.i(843476),n=e.i(493801),i=e.i(456420);let s={name:"audio-lines",size:24,node:[["path",{d:"M2 10v3",key:"1fnikh"}],["path",{d:"M6 6v11",key:"11sgs0"}],["path",{d:"M10 3v18",key:"yhl04a"}],["path",{d:"M14 8v7",key:"3a1oy3"}],["path",{d:"M18 5v13",key:"123xd1"}],["path",{d:"M22 10v3",key:"154ddg"}]]};s.node;let r=(0,i.default)(s),o={name:"captions",size:24,node:[["rect",{width:"18",height:"14",x:"3",y:"5",rx:"2",ry:"2",key:"12ruh7"}],["path",{d:"M7 15h4M15 15h2M7 11h2M13 11h4",key:"1ueiar"}]],aliases:["subtitles"]};o.node;let a=(0,i.default)(o);var l=e.i(689664),d=e.i(867927);let c={name:"clapperboard",size:24,node:[["path",{d:"m12.296 3.464 3.02 3.956",key:"qash78"}],["path",{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z",key:"1h7j8b"}],["path",{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"4lm6w1"}],["path",{d:"m6.18 5.276 3.1 3.899",key:"zjj9t3"}]]};c.node;let u=(0,i.default)(c);var m=e.i(815170),f=e.i(758925),g=e.i(566595),h=e.i(466787),x=e.i(271645),y=e.i(798120),p=e.i(167881),k=e.i(23750),v=e.i(917162),j=e.i(671428),b=e.i(412294),S=e.i(146538),N=e.i(968978),w=e.i(265402),C=e.i(635963),M=e.i(95187);let I=(0,M.createServerReference)("7f9bc624b9c7f137e24cde3bf2bd49ab2a3d39404c",M.callServer,void 0,M.findSourceMapURL,"removeConfigAction");var A=e.i(344974),D=e.i(992112),K=e.i(895836),T=e.i(609856),R=e.i(283653),z=e.i(647163);let $={[D.EXA_API_KEY]:g.Search},q={image:m.Image,video:u,speech:r,transcription:a};function O({section:e}){let{data:n,isLoading:i,error:s}=(0,R.useServerRoute)(y.queryKey.config);if(i)return(0,t.jsx)(K.SettingSkeleton,{rows:4});if(s)return(0,t.jsx)(K.SettingError,{message:s.message});let r=e=>(0,D.isConfigSet)(n,e),o=e=>n?.find(t=>t.key===e)?.value,a=D.CONFIG_GROUPS.filter(t=>t.section===e),l=a.flatMap(e=>e.entries);return(0,t.jsx)(K.SettingScreen,{footer:(0,t.jsx)(K.SettingRailNote,{children:"keys"===e?(0,t.jsxs)(t.Fragment,{children:[l.filter(e=>r(e.key)).length," of"," ",l.length," set",a.some(e=>!(0,D.groupSatisfied)(e,r))?" · a call needs one voice key":" · your keys stay on this machine"]}):(0,t.jsxs)(t.Fragment,{children:[l.length," of ",l.length," resolved ·"," ",l.filter(e=>o(e.key)).length," pinned"]})}),children:a.map(e=>(0,t.jsx)(K.SettingGroup,{label:e.title,hint:e.hint,right:(0,t.jsx)(F,{group:e,isSet:r}),children:(0,t.jsx)(K.SettingItems,{children:e.entries.map(n=>n.choices?(0,t.jsx)(H,{entry:n,choices:n.choices,value:o(n.key),isSet:r},n.key):(0,t.jsx)(B,{entry:n,set:r(n.key),needed:!(0,D.groupSatisfied)(e,r)},n.key))})},e.id))})}function F({group:e,isSet:n}){return"none"===e.require?null:(0,D.groupSatisfied)(e,n)?(0,t.jsxs)("span",{className:"flex items-center gap-1 font-mono text-[11px] text-muted-foreground",children:[(0,t.jsx)(l.Check,{className:"size-3"}),"ready"]}):(0,t.jsxs)("span",{className:(0,z.cn)("flex items-center gap-1 font-mono text-[11px]",z.WAITING_INK),children:[(0,t.jsx)(h.TriangleAlert,{className:"size-3"}),e.note??"Required"]})}function B({entry:e,set:n,needed:i}){let s=_(e,n),r=W(e,n),o=U(e,n),a=r.data?E(r.data):P(n,i,s.data,e.signIn);return(0,t.jsxs)("button",{type:"button",onClick:()=>{var i,s,r;return e.signIn?(i=e,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(Q,{entry:i,onDone:e})})):(s=e,r=n,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(V,{entry:s,set:r,onDone:e})}))},className:"group flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-8 shrink-0 place-items-center rounded-lg bg-muted/60",children:(0,t.jsx)(Y,{entry:e})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsx)("span",{className:"block truncate font-mono text-xs text-muted-foreground",children:e.signIn?n?L(r.data,o):"sign in with your account":e.key})]}),s.isLoading||r.isLoading?(0,t.jsx)(j.Skeleton,{className:"h-3 w-20 shrink-0"}):(0,t.jsxs)("span",{className:(0,z.cn)("flex shrink-0 items-center gap-1.5 font-mono text-xs",a.ink),children:[a.warn?(0,t.jsx)(h.TriangleAlert,{className:"size-3"}):n&&(0,t.jsx)(l.Check,{className:"size-3"}),a.text]}),(0,t.jsx)(d.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}let G=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"});function P(e,t,n,i){return e?n?"refused"in n?{text:"Key refused",ink:"text-destructive",warn:!0}:{text:`${G.format(n.balance)} left`,ink:n.low?z.WAITING_INK:"text-muted-foreground",warn:n.low}:{text:i?"Signed in":"Set",ink:"text-muted-foreground",warn:!1}:t?{text:"Needed",ink:z.WAITING_INK,warn:!0}:{text:i?"Signed out":"Not set",ink:"text-muted-foreground/60",warn:!1}}function _(e,t){return(0,R.useServerRoute)(t&&"vercel-ai-gateway"===e.provider?y.queryKey.gatewayCredits:null)}function U(e,t){let{data:n}=(0,R.useServerRoute)(t&&e.signIn?y.queryKey.llmModel:null);return n?.find(t=>t.id===e.provider)?.plan??null}function W(e,t){return(0,R.useServerRoute)(t&&e.signIn?y.queryKey.subscriptionUsage:null)}function E(e){return"refused"in e?{text:"Sign-in refused",ink:"text-destructive",warn:!0}:{text:e.spent?"Limit reached":`${e.usedPercent}% used`,ink:e.high?z.WAITING_INK:"text-muted-foreground",warn:e.high}}function L(e,t){let i=!e||"refused"in e?null:e,s=`${i?.plan??t??"unknown"} plan`;return i?.resetsAt?`${s} \xb7 resets in ${(0,n.formatDistanceToNowStrict)(new Date(i.resetsAt))}`:s}function Y({entry:e}){if(e.provider)return(0,t.jsx)(N.ProviderIcon,{provider:e.provider,className:"size-4"});let n=$[e.key]??f.KeyRound;return(0,t.jsx)(n,{className:"size-4 text-muted-foreground"})}function H({entry:e,choices:n,value:i,isSet:s}){let r=n.find(e=>e.value===i),o=n.filter(e=>s(e.needs)),a=i&&!r?i:null,l=e.kind?q[e.kind]:C.BotsMark;return(0,t.jsxs)("button",{type:"button",onClick:()=>{var i,s,r;return e.kind||e.text?(i=e,v.notify.component({className:"sm:max-w-lg",renderer:({close:e})=>(0,t.jsx)(X,{entry:i,onDone:e})})):(s=e,r=n,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(J,{entry:s,choices:r,onDone:e})}))},className:"group flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-8 shrink-0 place-items-center rounded-lg bg-muted/60",children:(0,t.jsx)(l,{className:"size-4 text-muted-foreground"})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-1",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[!r&&!a&&(0,t.jsx)("span",{className:(0,z.cn)("shrink-0 rounded-[5px] border border-border/60 px-1 font-mono text-[10px]",e.kind?z.WAITING_INK:"text-muted-foreground"),children:e.kind?"off":"auto"}),(0,t.jsx)("span",{className:"truncate font-mono text-xs text-muted-foreground",children:r?.label??a??(e.kind?"Not offered to bots until you pick one":o[0]?.label??"No key for any of these yet")})]})]}),(0,t.jsx)(d.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}function X({entry:e,onDone:n}){let{data:i}=(0,R.useServerRoute)(y.queryKey.config),s=i?.find(t=>t.key===e.key)?.value,[r,o]=(0,x.useState)(()=>{let t=e.text?(0,w.parseTextModel)(s):(0,w.parseMediaModel)(s);return{provider:t?.provider??null,model:t?.model??""}}),a=()=>{(0,R.revalidate)(y.queryKey.config),n()},[l]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} saved`,onOk:a}),[d,c]=(0,T.useServerAction)(I,{okMessage:e.kind?`${e.label} switched off`:`${e.label} back to automatic`,onOk:a});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:e.hint,footer:(0,t.jsxs)(t.Fragment,{children:[s&&(0,t.jsx)(p.Button,{variant:"ghost",loading:c,onClick:()=>d(e.key),children:e.kind?"Turn off":"Automatic"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:n,children:"Close"})]}),children:(0,t.jsx)(S.ModelPicker,{kind:e.kind,provider:r.provider,model:r.model,onChange:t=>{o(t),t.model.trim()&&l(e.key,`${t.provider}/${t.model.trim()}`)}})})}function J({entry:e,choices:n,onDone:i}){let{data:s}=(0,R.useServerRoute)(y.queryKey.config),r=s?.find(t=>t.key===e.key)?.value,o=()=>{(0,R.revalidate)(y.queryKey.config),i()},[a,l]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} saved`,onOk:o}),[d,c]=(0,T.useServerAction)(I,{okMessage:e.kind?`${e.label} switched off`:`${e.label} back to automatic`,onOk:o});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:e.hint,footer:(0,t.jsxs)(t.Fragment,{children:[r&&(0,t.jsx)(p.Button,{variant:"ghost",loading:c,onClick:()=>d(e.key),children:e.kind?"Turn off":"Automatic"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:i,children:"Close"})]}),children:(0,t.jsx)(K.SettingChoiceRows,{options:n.map(e=>({value:e.value,label:e.label,disabled:!(0,D.isConfigSet)(s,e.needs)&&`needs ${e.needs}`})),value:r,onChange:t=>a(e.key,t),disabled:l})})}function Q({entry:e,onDone:n}){let{data:i}=(0,R.useServerRoute)(y.queryKey.config),s=(0,D.isConfigSet)(i,e.key),r=U(e,s),o=W(e,s),a=o.data?E(o.data):null,[l,d]=(0,T.useServerAction)(I,{okMessage:`Signed out of ${e.label}`,onOk:()=>{(0,R.revalidate)(y.queryKey.config),(0,R.revalidate)(y.queryKey.llmModel),n()}});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:s?(0,t.jsxs)(t.Fragment,{children:["Signed in ·"," ",(0,t.jsx)("span",{className:"font-mono",children:L(o.data,r)}),a&&(0,t.jsxs)(t.Fragment,{children:[" · ",(0,t.jsx)("span",{className:(0,z.cn)("font-mono",a.ink),children:a.text})]})]}):"Sign in with your ChatGPT account instead of a key",footer:(0,t.jsxs)(t.Fragment,{children:[s&&(0,t.jsx)(p.Button,{variant:"ghost",loading:d,onClick:()=>l(e.key),children:"Sign out"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:n,children:s?"Close":"Cancel"}),!s&&(0,t.jsx)(b.ChatGptSignIn,{})]}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(K.SettingNote,{children:s?"Bots on this subscription spend your plan's usage, not a key. When it runs out, the job stops and says when it resets.":"The sign-in opens in its own window. Approve it there, and this turns to signed in by itself."}),o.data&&"refused"in o.data&&(0,t.jsx)(K.SettingNote,{className:"wrap-break-word text-destructive",children:o.data.refused})]})})}function V({entry:e,set:n,onDone:i}){let[s,r]=(0,x.useState)(""),{data:o}=_(e,n),a=o?P(n,!1,o):null,l=()=>{(0,R.revalidate)(y.queryKey.config),(0,R.revalidate)(y.queryKey.llmModel)},[d,c]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} key saved`,onOk:()=>{l(),i()}}),[u,m]=(0,T.useServerAction)(I,{okMessage:`${e.label} key removed`,onOk:()=>{l(),i()}});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"font-mono",children:e.key}),e.hint&&(0,t.jsxs)(t.Fragment,{children:[" · ",e.hint]}),a&&(0,t.jsxs)(t.Fragment,{children:[" · ",(0,t.jsx)("span",{className:(0,z.cn)("font-mono",a.ink),children:a.text})]})]}),footer:(0,t.jsxs)(t.Fragment,{children:[n&&(0,t.jsx)(p.Button,{variant:"ghost",loading:m,onClick:()=>u(e.key),children:"Remove"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:i,children:"Cancel"}),(0,t.jsx)(p.Button,{loading:c,disabled:s.trim().length<8,onClick:()=>d(e.key,s),children:n?"Replace":"Save"})]}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(k.Input,{value:s,onChange:e=>r(e.target.value),onKeyDown:t=>{"Enter"===t.key&&s.trim().length>=8&&d(e.key,s)},placeholder:n?"New value — replaces the current key":e.key,spellCheck:!1,type:"password",autoFocus:!0}),o&&"refused"in o&&(0,t.jsx)(K.SettingNote,{className:"wrap-break-word text-destructive",children:o.refused})]})})}e.s(["ConfigGroups",0,O,"ConfigSetting",0,function(){return(0,t.jsx)(O,{section:"keys"})}],805995)},855783,e=>{"use strict";var t=e.i(843476),n=e.i(805995);e.s(["ModelsSetting",0,function(){return(0,t.jsx)(n.ConfigGroups,{section:"models"})}])},493801,e=>{"use strict";var t=e.i(24708),n=e.i(55545),i=e.i(455024),s=e.i(99151),r=e.i(845110),o=e.i(281092),a=e.i(234662);e.s(["formatDistanceToNowStrict",0,function(e,l){return function(e,t,l){var d;let c,u,m=(0,i.getDefaultOptions)(),f=l?.locale??m.locale??n.defaultLocale,g=(u=(0,o.toDate)(e)-(0,o.toDate)(t))<0?-1:u>0?1:u;if(isNaN(g))throw RangeError("Invalid time value");let h=Object.assign({},l,{addSuffix:l?.addSuffix,comparison:g}),[x,y]=(0,r.normalizeDates)(l?.in,...g>0?[t,e]:[e,t]),p=(d=l?.roundingMethod??"round",e=>{let t=(d?Math[d]:Math.trunc)(e);return 0===t?0:t}),k=y.getTime()-x.getTime(),v=k/a.millisecondsInMinute,j=(k-((0,s.getTimezoneOffsetInMilliseconds)(y)-(0,s.getTimezoneOffsetInMilliseconds)(x)))/a.millisecondsInMinute,b=l?.unit;if("second"===(c=b||(v<1?"second":v<60?"minute":v<a.minutesInDay?"hour":j<a.minutesInMonth?"day":j<a.minutesInYear?"month":"year"))){let e=p(k/1e3);return f.formatDistance("xSeconds",e,h)}if("minute"===c){let e=p(v);return f.formatDistance("xMinutes",e,h)}if("hour"===c){let e=p(v/60);return f.formatDistance("xHours",e,h)}if("day"===c){let e=p(j/a.minutesInDay);return f.formatDistance("xDays",e,h)}if("month"===c){let e=p(j/a.minutesInMonth);return 12===e&&"month"!==b?f.formatDistance("xYears",1,h):f.formatDistance("xMonths",e,h)}else{let e=p(j/a.minutesInYear);return f.formatDistance("xYears",e,h)}}(e,(0,t.constructNow)(e),l)}],493801)},466787,e=>{"use strict";var t=e.i(755566);e.s(["TriangleAlert",()=>t.default])}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,805995,e=>{"use strict";var t=e.i(843476),n=e.i(493801),i=e.i(456420);let s={name:"audio-lines",size:24,node:[["path",{d:"M2 10v3",key:"1fnikh"}],["path",{d:"M6 6v11",key:"11sgs0"}],["path",{d:"M10 3v18",key:"yhl04a"}],["path",{d:"M14 8v7",key:"3a1oy3"}],["path",{d:"M18 5v13",key:"123xd1"}],["path",{d:"M22 10v3",key:"154ddg"}]]};s.node;let r=(0,i.default)(s),o={name:"captions",size:24,node:[["rect",{width:"18",height:"14",x:"3",y:"5",rx:"2",ry:"2",key:"12ruh7"}],["path",{d:"M7 15h4M15 15h2M7 11h2M13 11h4",key:"1ueiar"}]],aliases:["subtitles"]};o.node;let a=(0,i.default)(o);var l=e.i(689664),d=e.i(867927);let c={name:"clapperboard",size:24,node:[["path",{d:"m12.296 3.464 3.02 3.956",key:"qash78"}],["path",{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z",key:"1h7j8b"}],["path",{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"4lm6w1"}],["path",{d:"m6.18 5.276 3.1 3.899",key:"zjj9t3"}]]};c.node;let u=(0,i.default)(c);var m=e.i(815170),g=e.i(758925),f=e.i(566595),h=e.i(466787),x=e.i(271645),y=e.i(798120),p=e.i(167881),k=e.i(23750),v=e.i(917162),j=e.i(671428),S=e.i(412294),N=e.i(146538),b=e.i(968978),w=e.i(265402),C=e.i(635963),M=e.i(95187);let I=(0,M.createServerReference)("7fa4730e940da24972c78a6934ce626fdecd092165",M.callServer,void 0,M.findSourceMapURL,"removeConfigAction");var A=e.i(905871),D=e.i(992112),K=e.i(895836),T=e.i(609856),R=e.i(283653),z=e.i(647163);let $={[D.EXA_API_KEY]:f.Search},q={image:m.Image,video:u,speech:r,transcription:a};function O({section:e}){let{data:n,isLoading:i,error:s}=(0,R.useServerRoute)(y.queryKey.config);if(i)return(0,t.jsx)(K.SettingSkeleton,{rows:4});if(s)return(0,t.jsx)(K.SettingError,{message:s.message});let r=e=>(0,D.isConfigSet)(n,e),o=e=>n?.find(t=>t.key===e)?.value,a=D.CONFIG_GROUPS.filter(t=>t.section===e),l=a.flatMap(e=>e.entries);return(0,t.jsx)(K.SettingScreen,{footer:(0,t.jsx)(K.SettingRailNote,{children:"keys"===e?(0,t.jsxs)(t.Fragment,{children:[l.filter(e=>r(e.key)).length," of"," ",l.length," set",a.some(e=>!(0,D.groupSatisfied)(e,r))?" · a call needs one voice key":" · your keys stay on this machine"]}):(0,t.jsxs)(t.Fragment,{children:[l.length," of ",l.length," resolved ·"," ",l.filter(e=>o(e.key)).length," pinned"]})}),children:a.map(e=>(0,t.jsx)(K.SettingGroup,{label:e.title,hint:e.hint,right:(0,t.jsx)(F,{group:e,isSet:r}),children:(0,t.jsx)(K.SettingItems,{children:e.entries.map(n=>n.choices?(0,t.jsx)(H,{entry:n,choices:n.choices,value:o(n.key),isSet:r},n.key):(0,t.jsx)(B,{entry:n,set:r(n.key),needed:!(0,D.groupSatisfied)(e,r)},n.key))})},e.id))})}function F({group:e,isSet:n}){return"none"===e.require?null:(0,D.groupSatisfied)(e,n)?(0,t.jsxs)("span",{className:"flex items-center gap-1 font-mono text-[11px] text-muted-foreground",children:[(0,t.jsx)(l.Check,{className:"size-3"}),"ready"]}):(0,t.jsxs)("span",{className:(0,z.cn)("flex items-center gap-1 font-mono text-[11px]",z.WAITING_INK),children:[(0,t.jsx)(h.TriangleAlert,{className:"size-3"}),e.note??"Required"]})}function B({entry:e,set:n,needed:i}){let s=_(e,n),r=W(e,n),o=U(e,n),a=r.data?E(r.data):P(n,i,s.data,e.signIn);return(0,t.jsxs)("button",{type:"button",onClick:()=>{var i,s,r;return e.signIn?(i=e,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(Q,{entry:i,onDone:e})})):(s=e,r=n,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(V,{entry:s,set:r,onDone:e})}))},className:"group flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-8 shrink-0 place-items-center rounded-lg bg-muted/60",children:(0,t.jsx)(Y,{entry:e})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsx)("span",{className:"block truncate font-mono text-xs text-muted-foreground",children:e.signIn?n?L(r.data,o):"sign in with your account":e.key})]}),s.isLoading||r.isLoading?(0,t.jsx)(j.Skeleton,{className:"h-3 w-20 shrink-0"}):(0,t.jsxs)("span",{className:(0,z.cn)("flex shrink-0 items-center gap-1.5 font-mono text-xs",a.ink),children:[a.warn?(0,t.jsx)(h.TriangleAlert,{className:"size-3"}):n&&(0,t.jsx)(l.Check,{className:"size-3"}),a.text]}),(0,t.jsx)(d.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}let G=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"});function P(e,t,n,i){return e?n?"refused"in n?{text:"Key refused",ink:"text-destructive",warn:!0}:{text:`${G.format(n.balance)} left`,ink:n.low?z.WAITING_INK:"text-muted-foreground",warn:n.low}:{text:i?"Signed in":"Set",ink:"text-muted-foreground",warn:!1}:t?{text:"Needed",ink:z.WAITING_INK,warn:!0}:{text:i?"Signed out":"Not set",ink:"text-muted-foreground/60",warn:!1}}function _(e,t){return(0,R.useServerRoute)(t&&"vercel-ai-gateway"===e.provider?y.queryKey.gatewayCredits:null)}function U(e,t){let{data:n}=(0,R.useServerRoute)(t&&e.signIn?y.queryKey.llmModel:null);return n?.find(t=>t.id===e.provider)?.plan??null}function W(e,t){return(0,R.useServerRoute)(t&&e.signIn?y.queryKey.subscriptionUsage:null)}function E(e){return"refused"in e?{text:"Sign-in refused",ink:"text-destructive",warn:!0}:{text:e.spent?"Limit reached":`${e.usedPercent}% used`,ink:e.high?z.WAITING_INK:"text-muted-foreground",warn:e.high}}function L(e,t){let i=!e||"refused"in e?null:e,s=`${i?.plan??t??"unknown"} plan`;return i?.resetsAt?`${s} \xb7 resets in ${(0,n.formatDistanceToNowStrict)(new Date(i.resetsAt))}`:s}function Y({entry:e}){if(e.provider)return(0,t.jsx)(b.ProviderIcon,{provider:e.provider,className:"size-4"});let n=$[e.key]??g.KeyRound;return(0,t.jsx)(n,{className:"size-4 text-muted-foreground"})}function H({entry:e,choices:n,value:i,isSet:s}){let r=n.find(e=>e.value===i),o=n.filter(e=>s(e.needs)),a=i&&!r?i:null,l=e.kind?q[e.kind]:C.BotsMark;return(0,t.jsxs)("button",{type:"button",onClick:()=>{var i,s,r;return e.kind||e.text?(i=e,v.notify.component({className:"sm:max-w-lg",renderer:({close:e})=>(0,t.jsx)(X,{entry:i,onDone:e})})):(s=e,r=n,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(J,{entry:s,choices:r,onDone:e})}))},className:"group flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-8 shrink-0 place-items-center rounded-lg bg-muted/60",children:(0,t.jsx)(l,{className:"size-4 text-muted-foreground"})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-1",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[!r&&!a&&(0,t.jsx)("span",{className:(0,z.cn)("shrink-0 rounded-[5px] border border-border/60 px-1 font-mono text-[10px]",e.kind?z.WAITING_INK:"text-muted-foreground"),children:e.kind?"off":"auto"}),(0,t.jsx)("span",{className:"truncate font-mono text-xs text-muted-foreground",children:r?.label??a??(e.kind?"Not offered to bots until you pick one":o[0]?.label??"No key for any of these yet")})]})]}),(0,t.jsx)(d.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}function X({entry:e,onDone:n}){let{data:i}=(0,R.useServerRoute)(y.queryKey.config),s=i?.find(t=>t.key===e.key)?.value,[r,o]=(0,x.useState)(()=>{let t=e.text?(0,w.parseTextModel)(s):(0,w.parseMediaModel)(s);return{provider:t?.provider??null,model:t?.model??""}}),a=()=>{(0,R.revalidate)(y.queryKey.config),n()},[l]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} saved`,onOk:a}),[d,c]=(0,T.useServerAction)(I,{okMessage:e.kind?`${e.label} switched off`:`${e.label} back to automatic`,onOk:a});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:e.hint,footer:(0,t.jsxs)(t.Fragment,{children:[s&&(0,t.jsx)(p.Button,{variant:"ghost",loading:c,onClick:()=>d(e.key),children:e.kind?"Turn off":"Automatic"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:n,children:"Close"})]}),children:(0,t.jsx)(N.ModelPicker,{kind:e.kind,provider:r.provider,model:r.model,onChange:t=>{o(t),t.model.trim()&&l(e.key,`${t.provider}/${t.model.trim()}`)}})})}function J({entry:e,choices:n,onDone:i}){let{data:s}=(0,R.useServerRoute)(y.queryKey.config),r=s?.find(t=>t.key===e.key)?.value,o=()=>{(0,R.revalidate)(y.queryKey.config),i()},[a,l]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} saved`,onOk:o}),[d,c]=(0,T.useServerAction)(I,{okMessage:e.kind?`${e.label} switched off`:`${e.label} back to automatic`,onOk:o});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:e.hint,footer:(0,t.jsxs)(t.Fragment,{children:[r&&(0,t.jsx)(p.Button,{variant:"ghost",loading:c,onClick:()=>d(e.key),children:e.kind?"Turn off":"Automatic"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:i,children:"Close"})]}),children:(0,t.jsx)(K.SettingChoiceRows,{options:n.map(e=>({value:e.value,label:e.label,disabled:!(0,D.isConfigSet)(s,e.needs)&&`needs ${e.needs}`})),value:r,onChange:t=>a(e.key,t),disabled:l})})}function Q({entry:e,onDone:n}){let{data:i}=(0,R.useServerRoute)(y.queryKey.config),s=(0,D.isConfigSet)(i,e.key),r=U(e,s),o=W(e,s),a=o.data?E(o.data):null,[l,d]=(0,T.useServerAction)(I,{okMessage:`Signed out of ${e.label}`,onOk:()=>{(0,R.revalidate)(y.queryKey.config),(0,R.revalidate)(y.queryKey.llmModel),n()}});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:s?(0,t.jsxs)(t.Fragment,{children:["Signed in ·"," ",(0,t.jsx)("span",{className:"font-mono",children:L(o.data,r)}),a&&(0,t.jsxs)(t.Fragment,{children:[" · ",(0,t.jsx)("span",{className:(0,z.cn)("font-mono",a.ink),children:a.text})]})]}):"Sign in with your ChatGPT account instead of a key",footer:(0,t.jsxs)(t.Fragment,{children:[s&&(0,t.jsx)(p.Button,{variant:"ghost",loading:d,onClick:()=>l(e.key),children:"Sign out"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:n,children:s?"Close":"Cancel"}),!s&&(0,t.jsx)(S.ChatGptSignIn,{})]}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(K.SettingNote,{children:s?"Bots on this subscription spend your plan's usage, not a key. When it runs out, the job stops and says when it resets.":"The sign-in opens in its own window. Approve it there, and this turns to signed in by itself."}),o.data&&"refused"in o.data&&(0,t.jsx)(K.SettingNote,{className:"wrap-break-word text-destructive",children:o.data.refused})]})})}function V({entry:e,set:n,onDone:i}){let[s,r]=(0,x.useState)(""),{data:o}=_(e,n),a=o?P(n,!1,o):null,l=()=>{(0,R.revalidate)(y.queryKey.config),(0,R.revalidate)(y.queryKey.llmModel)},[d,c]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} key saved`,onOk:()=>{l(),i()}}),[u,m]=(0,T.useServerAction)(I,{okMessage:`${e.label} key removed`,onOk:()=>{l(),i()}});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"font-mono",children:e.key}),e.hint&&(0,t.jsxs)(t.Fragment,{children:[" · ",e.hint]}),a&&(0,t.jsxs)(t.Fragment,{children:[" · ",(0,t.jsx)("span",{className:(0,z.cn)("font-mono",a.ink),children:a.text})]})]}),footer:(0,t.jsxs)(t.Fragment,{children:[n&&(0,t.jsx)(p.Button,{variant:"ghost",loading:m,onClick:()=>u(e.key),children:"Remove"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:i,children:"Cancel"}),(0,t.jsx)(p.Button,{loading:c,disabled:s.trim().length<8,onClick:()=>d(e.key,s),children:n?"Replace":"Save"})]}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(k.Input,{value:s,onChange:e=>r(e.target.value),onKeyDown:t=>{"Enter"===t.key&&s.trim().length>=8&&d(e.key,s)},placeholder:n?"New value — replaces the current key":e.key,spellCheck:!1,type:"password",autoFocus:!0}),o&&"refused"in o&&(0,t.jsx)(K.SettingNote,{className:"wrap-break-word text-destructive",children:o.refused})]})})}e.s(["ConfigGroups",0,O,"ConfigSetting",0,function(){return(0,t.jsx)(O,{section:"keys"})}],805995)},855783,e=>{"use strict";var t=e.i(843476),n=e.i(805995);e.s(["ModelsSetting",0,function(){return(0,t.jsx)(n.ConfigGroups,{section:"models"})}])},493801,e=>{"use strict";var t=e.i(24708),n=e.i(55545),i=e.i(455024),s=e.i(99151),r=e.i(845110),o=e.i(281092),a=e.i(234662);e.s(["formatDistanceToNowStrict",0,function(e,l){return function(e,t,l){var d;let c,u,m=(0,i.getDefaultOptions)(),g=l?.locale??m.locale??n.defaultLocale,f=(u=(0,o.toDate)(e)-(0,o.toDate)(t))<0?-1:u>0?1:u;if(isNaN(f))throw RangeError("Invalid time value");let h=Object.assign({},l,{addSuffix:l?.addSuffix,comparison:f}),[x,y]=(0,r.normalizeDates)(l?.in,...f>0?[t,e]:[e,t]),p=(d=l?.roundingMethod??"round",e=>{let t=(d?Math[d]:Math.trunc)(e);return 0===t?0:t}),k=y.getTime()-x.getTime(),v=k/a.millisecondsInMinute,j=(k-((0,s.getTimezoneOffsetInMilliseconds)(y)-(0,s.getTimezoneOffsetInMilliseconds)(x)))/a.millisecondsInMinute,S=l?.unit;if("second"===(c=S||(v<1?"second":v<60?"minute":v<a.minutesInDay?"hour":j<a.minutesInMonth?"day":j<a.minutesInYear?"month":"year"))){let e=p(k/1e3);return g.formatDistance("xSeconds",e,h)}if("minute"===c){let e=p(v);return g.formatDistance("xMinutes",e,h)}if("hour"===c){let e=p(v/60);return g.formatDistance("xHours",e,h)}if("day"===c){let e=p(j/a.minutesInDay);return g.formatDistance("xDays",e,h)}if("month"===c){let e=p(j/a.minutesInMonth);return 12===e&&"month"!==S?g.formatDistance("xYears",1,h):g.formatDistance("xMonths",e,h)}else{let e=p(j/a.minutesInYear);return g.formatDistance("xYears",e,h)}}(e,(0,t.constructNow)(e),l)}],493801)},466787,e=>{"use strict";var t=e.i(755566);e.s(["TriangleAlert",()=>t.default])}]);
@@ -1,2 +1,2 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,507906,e=>{"use strict";var t,n,r,o,a,i,l,s,c=e.i(843476),u=e.i(689664),d=e.i(867927),f=e.i(456420);let m={name:"circle-alert",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],aliases:["alert-circle"]};m.node;let p=(0,f.default)(m);var h=e.i(569644),v=e.i(779266),g=e.i(77071),x=e.i(759659),b=e.i(747925),y=e.i(263676),w=e.i(271645),E=e.i(798120),j=e.i(167881),k=/[\\\/_+.#"@\[\(\{&]/,S=/[\\\/_+.#"@\[\(\{&]/g,N=/[\s-]/,C=/[\s-]/g;function A(e){return e.toLowerCase().replace(C," ")}var R=Object.defineProperty,O=(e,t)=>R(e,"name",{value:t,configurable:!0}),P=!!("u">typeof window&&window.document&&window.document.createElement);function M(e,t,{checkForDefaultPrevented:n=!0}={}){return O(function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)},"handleEvent")}function D(e){if(!P)throw Error("Cannot access document outside of the DOM");return e?.ownerDocument??document}function I(e){return"IFRAME"===e.tagName}O(M,"composeEventHandlers"),O(function(e){if(!P)throw Error("Cannot access window outside of the DOM");return e?.ownerDocument?.defaultView??window},"getOwnerWindow"),O(D,"getOwnerDocument"),O(function e(t,n=!1){let{activeElement:r}=D(t);if(!r?.nodeName)return null;if(I(r)&&r.contentDocument)return e(r.contentDocument.body,n);if(n){let e=r.getAttribute("aria-activedescendant");if(e){let t=D(r).getElementById(e);if(t)return t}}return r},"getActiveElement"),O(I,"isFrame");var T=Object.defineProperty,L=(e,t)=>T(e,"name",{value:t,configurable:!0});function _(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function F(...e){return t=>{let n=!1,r=e.map(e=>{let r=_(e,t);return n||"function"!=typeof r||(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];"function"==typeof n?n():_(e[t],null)}}}}function B(...e){return w.useCallback(F(...e),e)}L(_,"setRef"),L(F,"composeRefs"),L(B,"useComposedRefs");var $=Object.defineProperty,z=(e,t)=>$(e,"name",{value:t,configurable:!0});function W(e,t=[]){let n=[];function r(t,r){let o=w.createContext(r);o.displayName=t+"Context";let a=n.length;n=[...n,r];let i=z(t=>{let{scope:n,children:r,...i}=t,l=n?.[e]?.[a]||o,s=w.useMemo(()=>i,Object.values(i));return(0,c.jsx)(l.Provider,{value:s,children:r})},"Provider");function l(n,i,s={}){let{optional:c=!1}=s,u=i?.[e]?.[a]||o,d=w.useContext(u);if(d)return d;if(void 0!==r)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return i.displayName=t+"Provider",z(l,"useContext"),[i,l]}z(r,"createContext");let o=z(()=>{let t=n.map(e=>w.createContext(e));return z(function(n){let r=n?.[e]||t;return w.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},"useScope")},"createScope");return o.scopeName=e,[r,K(o,...t)]}function K(...e){let t=e[0];if(1===e.length)return t;let n=z(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return z(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let o=n(e)[`__scope${r}`];return{...t,...o}},{});return w.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}z(function(e,t){let n=w.createContext(t);n.displayName=e+"Context";let r=z(e=>{let{children:t,...r}=e,o=w.useMemo(()=>r,Object.values(r));return(0,c.jsx)(n.Provider,{value:o,children:t})},"Provider");function o(r,a={}){let{optional:i=!1}=a,l=w.useContext(n);if(l)return l;if(void 0!==t)return t;if(!i)throw Error(`\`${r}\` must be used within \`${e}\``)}return r.displayName=e+"Provider",z(o,"useContext"),[r,o]},"createContext"),z(W,"createContextScope"),z(K,"composeContextScopes");var U=globalThis?.document?w.useLayoutEffect:()=>{},V=Object.defineProperty,q=w[" useId ".trim().toString()]||(()=>void 0),H=0;function X(e){let[t,n]=w.useState(q());return U(()=>{e||n(e=>e??String(H++))},[e]),e||(t?`radix-${t}`:"")}V(X,"name",{value:"useId",configurable:!0});var Y=Object.defineProperty,G=w[" useEffectEvent ".trim().toString()],Z=w[" useInsertionEffect ".trim().toString()];function J(e){if("function"==typeof G)return G(e);let t=w.useRef(()=>{throw Error("Cannot call an event handler while rendering.")});return"function"==typeof Z?Z(()=>{t.current=e}):U(()=>{t.current=e}),w.useMemo(()=>(...e)=>t.current?.(...e),[])}Y(J,"name",{value:"useEffectEvent",configurable:!0});var Q=Object.defineProperty,ee=(e,t)=>Q(e,"name",{value:t,configurable:!0}),et=w[" useInsertionEffect ".trim().toString()]||U;function en({prop:e,defaultProp:t,onChange:n=ee(()=>{},"onChange"),caller:r}){let[o,a,i]=er({defaultProp:t,onChange:n}),l=void 0!==e,s=l?e:o;return[s,w.useCallback(t=>{if(l){let n=eo(t)?t(e):t;n!==e&&i.current?.(n)}else a(t)},[l,e,a,i])]}function er({defaultProp:e,onChange:t}){let[n,r]=w.useState(e),o=w.useRef(n),a=w.useRef(t);return et(()=>{a.current=t},[t]),w.useEffect(()=>{o.current!==n&&(a.current?.(n),o.current=n)},[n,o]),[n,r,a]}function eo(e){return"function"==typeof e}ee(en,"useControllableState"),ee(er,"useUncontrolledState"),ee(eo,"isFunction");var ea=Symbol("RADIX:SYNC_STATE");ee(function(e,t,n,r){let{prop:o,defaultProp:a,onChange:i,caller:l}=t,s=void 0!==o,c=J(i),u=[{...n,state:a}];r&&u.push(r);let[d,f]=w.useReducer((t,n)=>{if(n.type===ea)return{...t,state:n.state};let r=e(t,n);return s&&!Object.is(r.state,t.state)&&c(r.state),r},...u),m=d.state,p=w.useRef(m);w.useEffect(()=>{p.current!==m&&(p.current=m,s||c(m))},[m,p,s]);let h=w.useMemo(()=>void 0!==o?{...d,state:o}:d,[d,o]);return w.useEffect(()=>{s&&!Object.is(o,d.state)&&f({type:ea,state:o})},[o,d.state,s]),[h,f]},"useControllableStateReducer");var ei=e.i(174080),el=Object.defineProperty,es=(e,t)=>el(e,"name",{value:t,configurable:!0});function ec(e){let t=w.forwardRef((t,n)=>{let{children:r,...o}=t,a=null,i=!1,l=[];ev(r)&&"function"==typeof ey&&(r=ey(r._payload)),w.Children.forEach(r,e=>{if(ep(e)){i=!0;let t="child"in e.props?e.props.child:e.props.children;ev(t)&&"function"==typeof ey&&(t=ey(t._payload)),a=ed(e,t),l.push(a?.props?.children)}else l.push(e)}),a?a=w.cloneElement(a,void 0,l):!i&&1===w.Children.count(r)&&w.isValidElement(r)&&(a=r);let s=a?em(a):void 0,c=B(n,s);if(!a){if(r||0===r)throw Error(i?eb(e):ex(e));return r}let u=ef(o,a.props??{});return a.type!==w.Fragment&&(u.ref=n?c:s),w.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}es(ec,"createSlot");var eu=Symbol.for("radix.slottable");es(function(e){let t=es(e=>"child"in e?e.children(e.child):e.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=eu,t},"createSlottable");var ed=es((e,t)=>{if("child"in e.props){let t=e.props.child;return w.isValidElement(t)?w.cloneElement(t,void 0,e.props.children(t.props.children)):null}return w.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function ef(e,t){let n={...t};for(let r in t){let o=e[r],a=t[r];/^on[A-Z]/.test(r)?o&&a?n[r]=(...e)=>{let t=a(...e);return o(...e),t}:o&&(n[r]=o):"style"===r?n[r]={...o,...a}:"className"===r&&(n[r]=[o,a].filter(Boolean).join(" "))}return{...e,...n}}function em(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(n=(t=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning)?e.props.ref:e.props.ref||e.ref}function ep(e){return w.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===eu}es(ef,"mergeProps"),es(em,"getElementRef"),es(ep,"isSlottable");var eh=Symbol.for("react.lazy");function ev(e){return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===eh&&"_payload"in e&&eg(e._payload)}function eg(e){return"object"==typeof e&&null!==e&&"then"in e}es(ev,"isLazyComponent"),es(eg,"isPromiseLike");var ex=es(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),eb=es(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),ey=w[" use ".trim().toString()],ew=Object.defineProperty,eE=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let n=ec(`Primitive.${t}`),r=w.forwardRef((e,r)=>{let{asChild:o,...a}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,c.jsx)(o?n:t,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function ej(e,t){e&&ei.flushSync(()=>e.dispatchEvent(t))}function ek(e){let t=w.useRef(e);return w.useEffect(()=>{t.current=e}),w.useMemo(()=>(...e)=>t.current?.(...e),[])}ew(ej,"name",{value:"dispatchDiscreteCustomEvent",configurable:!0}),(0,Object.defineProperty)(ek,"name",{value:"useCallbackRef",configurable:!0});var eS=Object.defineProperty,eN=(e,t)=>eS(e,"name",{value:t,configurable:!0}),eC="dismissableLayer.update",eA=w.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),eR=w.forwardRef(eN(function(e,t){let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:o,onPointerDownOutside:a,onFocusOutside:i,onInteractOutside:s,onDismiss:u,...d}=e,f=w.useContext(eA),[m,p]=w.useState(null),h=m?.ownerDocument??globalThis?.document,[,v]=w.useState({}),g=B(t,p),x=Array.from(f.layers),[b]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),y=b?x.indexOf(b):-1,E=m?x.indexOf(m):-1,j=f.layersWithOutsidePointerEventsDisabled.size>0,k=E>=y,S=w.useRef(!1),N=eM(e=>{a?.(e),s?.(e),e.defaultPrevented||u?.()},{ownerDocument:h,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:S,dismissableSurfaces:f.dismissableSurfaces,shouldHandlePointerDownOutside:w.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...f.branches].some(t=>t.contains(e));return k&&!t},[f.branches,k])}),C=eD(e=>{if(r&&S.current)return;let t=e.target;![...f.branches].some(e=>e.contains(t))&&(i?.(e),s?.(e),e.defaultPrevented||u?.())},h),A=!!m&&E===x.length-1,R=ek(e=>{"Escape"===e.key&&(o?.(e),!e.defaultPrevented&&u&&(e.preventDefault(),u()))});return w.useEffect(()=>{if(A)return h.addEventListener("keydown",R,{capture:!0}),()=>h.removeEventListener("keydown",R,{capture:!0})},[h,A,R]),w.useEffect(()=>{if(m)return n&&(0===f.layersWithOutsidePointerEventsDisabled.size&&(l=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(m)),f.layers.add(m),eI(),()=>{n&&(f.layersWithOutsidePointerEventsDisabled.delete(m),0===f.layersWithOutsidePointerEventsDisabled.size&&(h.body.style.pointerEvents=l))}},[m,h,n,f]),w.useEffect(()=>()=>{m&&(f.layers.delete(m),f.layersWithOutsidePointerEventsDisabled.delete(m),eI())},[m,f]),w.useEffect(()=>{let e=eN(()=>v({}),"handleUpdate");return document.addEventListener(eC,e),()=>document.removeEventListener(eC,e)},[]),(0,c.jsx)(eE.div,{...d,ref:g,style:{pointerEvents:j?k?"auto":"none":void 0,...e.style},onFocusCapture:M(e.onFocusCapture,C.onFocusCapture),onBlurCapture:M(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:M(e.onPointerDownCapture,N.onPointerDownCapture)})},"DismissableLayer"));function eO(){let e=w.useContext(eA),[t,n]=w.useState(null);return w.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}eN(eO,"useDismissableLayerSurface");var eP=eN(()=>!0,"IS_TRUE");function eM(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:a,shouldHandlePointerDownOutside:i=eP}=t,l=ek(e),s=w.useRef(!1),c=w.useRef(!1),u=w.useRef(new Map),d=w.useRef(()=>{});return w.useEffect(()=>{function e(){c.current=!1,o.current=!1,u.current.clear()}function t(){return Array.from(u.current.values()).some(Boolean)}function f(e){if(!c.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),"click"===e.type&&window.setTimeout(()=>{c.current&&d.current()},0)}function m(e){c.current&&u.current.set(e.type,!1)}eN(e,"resetOutsideInteraction"),eN(t,"isOutsideInteractionIntercepted"),eN(f,"handleInteractionCapture"),eN(m,"handleInteractionBubble");let p=eN(a=>{if(a.target&&!s.current){let f=function(){n.removeEventListener("click",d.current);let r=t();e(),r||eT("dismissableLayer.pointerDownOutside",l,m,{discrete:!0})};if(eN(f,"handleAndDispatchPointerDownOutsideEvent"),!i(a.target)){n.removeEventListener("click",d.current),e(),s.current=!1;return}let m={originalEvent:a};c.current=!0,o.current=r&&0===a.button,u.current.clear(),r&&0===a.button?(n.removeEventListener("click",d.current),d.current=f,n.addEventListener("click",d.current,{once:!0})):f()}else n.removeEventListener("click",d.current),e();s.current=!1},"handlePointerDown"),h=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(let e of h)n.addEventListener(e,f,!0),n.addEventListener(e,m);let v=window.setTimeout(()=>{n.addEventListener("pointerdown",p)},0);return()=>{for(let e of(window.clearTimeout(v),n.removeEventListener("pointerdown",p),n.removeEventListener("click",d.current),h))n.removeEventListener(e,f,!0),n.removeEventListener(e,m)}},[n,l,r,o,a,i]),{onPointerDownCapture:eN(()=>s.current=!0,"onPointerDownCapture")}}function eD(e,t=globalThis?.document){let n=ek(e),r=w.useRef(!1);return w.useEffect(()=>{let e=eN(e=>{e.target&&!r.current&&eT("dismissableLayer.focusOutside",n,{originalEvent:e},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",e),()=>t.removeEventListener("focusin",e)},[t,n]),{onFocusCapture:eN(()=>r.current=!0,"onFocusCapture"),onBlurCapture:eN(()=>r.current=!1,"onBlurCapture")}}function eI(){let e=new CustomEvent(eC);document.dispatchEvent(e)}function eT(e,t,n,{discrete:r}){let o=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?ej(o,a):o.dispatchEvent(a)}eN(eM,"usePointerDownOutside"),eN(eD,"useFocusOutside"),eN(eI,"dispatchUpdate"),eN(eT,"handleAndDispatchCustomEvent");var eL=Object.defineProperty,e_=(e,t)=>eL(e,"name",{value:t,configurable:!0}),eF="focusScope.autoFocusOnMount",eB="focusScope.autoFocusOnUnmount",e$={bubbles:!1,cancelable:!0},ez=w.forwardRef(e_(function(e,t){let{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:a,...i}=e,[l,s]=w.useState(null),u=ek(o),d=ek(a),f=w.useRef(null),m=B(t,s),p=w.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;w.useEffect(()=>{if(r){let e=function(e){if(p.paused||!l)return;let t=e.target;l.contains(t)?f.current=t:eX(f.current,{select:!0})},t=function(e){if(p.paused||!l)return;let t=e.relatedTarget;null!==t&&(l.contains(t)||eX(f.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&eX(l)};e_(e,"handleFocusIn"),e_(t,"handleFocusOut"),e_(n,"handleMutations"),document.addEventListener("focusin",e),document.addEventListener("focusout",t);let r=new MutationObserver(n);return l&&r.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),r.disconnect()}}},[r,l,p.paused]),w.useEffect(()=>{if(l){eY.add(p);let e=document.activeElement;if(!l.contains(e)){let t=new CustomEvent(eF,e$);l.addEventListener(eF,u),l.dispatchEvent(t),t.defaultPrevented||(eW(eJ(eU(l)),{select:!0}),document.activeElement===e&&eX(l))}return()=>{l.removeEventListener(eF,u),setTimeout(()=>{let t=new CustomEvent(eB,e$);l.addEventListener(eB,d),l.dispatchEvent(t),t.defaultPrevented||eX(e??document.body,{select:!0}),l.removeEventListener(eB,d),eY.remove(p)},0)}}},[l,u,d,p]);let h=w.useCallback(e=>{if(!n&&!r||p.paused)return;let t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,o=document.activeElement;if(t&&o){let t=e.currentTarget,[r,a]=eK(t);r&&a?e.shiftKey||o!==a?e.shiftKey&&o===r&&(e.preventDefault(),n&&eX(a,{select:!0})):(e.preventDefault(),n&&eX(r,{select:!0})):o===t&&e.preventDefault()}},[n,r,p.paused]);return(0,c.jsx)(eE.div,{tabIndex:-1,...i,ref:m,onKeyDown:h})},"FocusScope"));function eW(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(eX(r,{select:t}),document.activeElement!==n)return}function eK(e){let t=eU(e);return[eV(t,e),eV(t.reverse(),e)]}function eU(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e_(e=>{let t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;n.nextNode();)t.push(n.currentNode);return t}function eV(e,t){let n="function"==typeof t.checkVisibility&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):eq(r,{upTo:t})))return r}function eq(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e&&(void 0===t||e!==t);){if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}function eH(e){return e instanceof HTMLInputElement&&"select"in e}function eX(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&eH(e)&&t&&e.select()}}e_(eW,"focusFirst"),e_(eK,"getTabbableEdges"),e_(eU,"getTabbableCandidates"),e_(eV,"findVisible"),e_(eq,"isHidden"),e_(eH,"isSelectableInput"),e_(eX,"focus");var eY=eG();function eG(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),(e=eZ(e,t)).unshift(t)},remove(t){e=eZ(e,t),e[0]?.resume()}}}function eZ(e,t){let n=[...e],r=n.indexOf(t);return -1!==r&&n.splice(r,1),n}function eJ(e){return e.filter(e=>"A"!==e.tagName)}e_(eG,"createFocusScopesStack"),e_(eZ,"arrayRemove"),e_(eJ,"removeLinks");var eQ=Object.defineProperty,e0=w.forwardRef(eQ(function(e,t){let{container:n,...r}=e,[o,a]=w.useState(!1);U(()=>a(!0),[]);let i=n||o&&globalThis?.document?.body;return i?ei.createPortal((0,c.jsx)(eE.div,{...r,ref:t}),i):null},"name",{value:"Portal",configurable:!0})),e1=Object.defineProperty,e2=(e,t)=>e1(e,"name",{value:t,configurable:!0});function e5(e,t){return w.useReducer((e,n)=>t[e][n]??e,e)}e2(e5,"useStateMachine");var e3=e2(e=>{let{present:t,children:n}=e,r=e6(t),o="function"==typeof n?n({present:r.isPresent}):w.Children.only(n),a=e7(r.ref,e4(o));return"function"==typeof n||r.isPresent?w.cloneElement(o,{ref:a}):null},"Presence");function e6(e){let[t,n]=w.useState(),r=w.useRef(null),o=w.useRef(e),a=w.useRef("none"),i=w.useRef(void 0),[l,s]=e5(e?"mounted":"unmounted",{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return w.useEffect(()=>{"mounted"===l?(a.current=i.current??e8(r.current),i.current=void 0):a.current="none"},[l]),U(()=>{let t=r.current,n=o.current;if(n!==e){let r=a.current,l=e8(t);e?(i.current=l,s("MOUNT")):"none"===l||t?.display==="none"?s("UNMOUNT"):n&&r!==l?s("ANIMATION_OUT"):s("UNMOUNT"),o.current=e}},[e,s]),U(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,i=e2(a=>{let i=e8(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&i&&(s("ANIMATION_END"),!o.current)){let r=t.style.animationFillMode;t.style.animationFillMode="forwards",e=n.setTimeout(()=>{"forwards"===t.style.animationFillMode&&(t.style.animationFillMode=r)})}},"handleAnimationEnd"),l=e2(e=>{e.target===t&&(a.current=e8(r.current))},"handleAnimationStart");return t.addEventListener("animationstart",l),t.addEventListener("animationcancel",i),t.addEventListener("animationend",i),()=>{n.clearTimeout(e),t.removeEventListener("animationstart",l),t.removeEventListener("animationcancel",i),t.removeEventListener("animationend",i)}}s("ANIMATION_END")},[t,s]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:w.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,i.current=e8(t)}else r.current=null;n(e)},[])}}function e9(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function e7(...e){let t=w.useRef(e);return t.current=e,w.useCallback(e=>{let n=t.current,r=!1,o=n.map(t=>{let n=e9(t,e);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let e=0;e<o.length;e++){let t=o[e];"function"==typeof t?t():e9(n[e],null)}}},[])}function e8(e){return e?.animationName||"none"}function e4(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(n=(t=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning)?e.props.ref:e.props.ref||e.ref}e2(e6,"usePresence"),e2(e9,"setRef"),e2(e7,"useStableComposedRefs"),e2(e8,"getAnimationName"),e2(e4,"getElementRef");var te=Object.defineProperty,tt=(e,t)=>te(e,"name",{value:t,configurable:!0}),tn=0,tr=null;function to(){w.useEffect(()=>{tr||(tr={start:ta(),end:ta()});let{start:e,end:t}=tr;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),tn++,()=>{1===tn&&(tr?.start.remove(),tr?.end.remove(),tr=null),tn=Math.max(0,tn-1)}},[])}function ta(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}tt(function(e){return to(),e.children},"FocusGuards"),tt(to,"useFocusGuards"),tt(ta,"createFocusGuard");var ti=function(){return(ti=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function tl(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)0>t.indexOf(r[o])&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}var ts=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),tc="width-before-scroll-bar";function tu(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var td="u">typeof window?w.useLayoutEffect:w.useEffect,tf=new WeakMap,tm=(void 0===t&&(t={}),(void 0===n&&(n=function(e){return e}),r=[],o=!1,a={read:function(){if(o)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:null},useMedium:function(e){var t=n(e,o);return r.push(t),function(){r=r.filter(function(e){return e!==t})}},assignSyncMedium:function(e){for(o=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){o=!0;var t=[];if(r.length){var n=r;r=[],n.forEach(e),t=r}var a=function(){var n=t;t=[],n.forEach(e)},i=function(){return Promise.resolve().then(a)};i(),r={push:function(e){t.push(e),i()},filter:function(e){return t=t.filter(e),r}}}}).options=ti({async:!0,ssr:!1},t),a),tp=function(){},th=w.forwardRef(function(e,t){var n,r,o,a,i=w.useRef(null),l=w.useState({onScrollCapture:tp,onWheelCapture:tp,onTouchMoveCapture:tp}),s=l[0],c=l[1],u=e.forwardProps,d=e.children,f=e.className,m=e.removeScrollBar,p=e.enabled,h=e.shards,v=e.sideCar,g=e.noRelative,x=e.noIsolation,b=e.inert,y=e.allowPinchZoom,E=e.as,j=e.gapMode,k=tl(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=(n=[i,t],r=function(e){return n.forEach(function(t){return tu(t,e)})},(o=(0,w.useState)(function(){return{value:null,callback:r,facade:{get current(){return o.value},set current(value){var e=o.value;e!==value&&(o.value=value,o.callback(value,e))}}}})[0]).callback=r,a=o.facade,td(function(){var e=tf.get(a);if(e){var t=new Set(e),r=new Set(n),o=a.current;t.forEach(function(e){r.has(e)||tu(e,null)}),r.forEach(function(e){t.has(e)||tu(e,o)})}tf.set(a,n)},[n]),a),N=ti(ti({},k),s);return w.createElement(w.Fragment,null,p&&w.createElement(v,{sideCar:tm,removeScrollBar:m,shards:h,noRelative:g,noIsolation:x,inert:b,setCallbacks:c,allowPinchZoom:!!y,lockRef:i,gapMode:j}),u?w.cloneElement(w.Children.only(d),ti(ti({},N),{ref:S})):w.createElement(void 0===E?"div":E,ti({},N,{className:f,ref:S}),d))});th.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},th.classNames={fullWidth:tc,zeroRight:ts};var tv=function(e){var t=e.sideCar,n=tl(e,["sideCar"]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error("Sidecar medium not found");return w.createElement(r,ti({},n))};tv.isSideCarExport=!0;var tg=function(){var e=0,t=null;return{add:function(n){if(0==e&&(t=function(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=s||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return t&&e.setAttribute("nonce",t),e}())){var r,o;(r=t).styleSheet?r.styleSheet.cssText=n:r.appendChild(document.createTextNode(n)),o=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(o)}e++},remove:function(){--e||!t||(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},tx=function(){var e=tg();return function(t,n){w.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},tb=function(){var e=tx();return function(t){return e(t.styles,t.dynamic),null}},ty={left:0,top:0,right:0,gap:0},tw=function(e){return parseInt(e||"",10)||0},tE=function(e){var t=window.getComputedStyle(document.body),n=t["padding"===e?"paddingLeft":"marginLeft"],r=t["padding"===e?"paddingTop":"marginTop"],o=t["padding"===e?"paddingRight":"marginRight"];return[tw(n),tw(r),tw(o)]},tj=function(e){if(void 0===e&&(e="margin"),"u"<typeof window)return ty;var t=tE(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},tk=tb(),tS="data-scroll-locked",tN=function(e,t,n,r){var o=e.left,a=e.top,i=e.right,l=e.gap;return void 0===n&&(n="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(r,";\n padding-right: ").concat(l,"px ").concat(r,";\n }\n body[").concat(tS,"] {\n overflow: hidden ").concat(r,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(r,";"),"margin"===n&&"\n padding-left: ".concat(o,"px;\n padding-top: ").concat(a,"px;\n padding-right: ").concat(i,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(l,"px ").concat(r,";\n "),"padding"===n&&"padding-right: ".concat(l,"px ").concat(r,";")].filter(Boolean).join(""),"\n }\n \n .").concat(ts," {\n right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(tc," {\n margin-right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(ts," .").concat(ts," {\n right: 0 ").concat(r,";\n }\n \n .").concat(tc," .").concat(tc," {\n margin-right: 0 ").concat(r,";\n }\n \n body[").concat(tS,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(l,"px;\n }\n")},tC=function(){var e=parseInt(document.body.getAttribute(tS)||"0",10);return isFinite(e)?e:0},tA=function(){w.useEffect(function(){return document.body.setAttribute(tS,(tC()+1).toString()),function(){var e=tC()-1;e<=0?document.body.removeAttribute(tS):document.body.setAttribute(tS,e.toString())}},[])},tR=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=void 0===r?"margin":r;tA();var a=w.useMemo(function(){return tj(o)},[o]);return w.createElement(tk,{styles:tN(a,!t,o,n?"":"!important")})},tO=!1;if("u">typeof window)try{var tP=Object.defineProperty({},"passive",{get:function(){return tO=!0,!0}});window.addEventListener("test",tP,tP),window.removeEventListener("test",tP,tP)}catch(e){tO=!1}var tM=!!tO&&{passive:!1},tD=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return"hidden"!==n[t]&&(n.overflowY!==n.overflowX||"TEXTAREA"===e.tagName||"visible"!==n[t])},tI=function(e,t){var n=t.ownerDocument,r=t;do{if("u">typeof ShadowRoot&&r instanceof ShadowRoot&&(r=r.host),tT(e,r)){var o=tL(e,r);if(o[1]>o[2])return!0}r=r.parentNode}while(r&&r!==n.body)return!1},tT=function(e,t){return"v"===e?tD(t,"overflowY"):tD(t,"overflowX")},tL=function(e,t){return"v"===e?[t.scrollTop,t.scrollHeight,t.clientHeight]:[t.scrollLeft,t.scrollWidth,t.clientWidth]},t_=function(e,t,n,r,o){var a,i=(a=window.getComputedStyle(t).direction,"h"===e&&"rtl"===a?-1:1),l=i*r,s=n.target,c=t.contains(s),u=!1,d=l>0,f=0,m=0;do{if(!s)break;var p=tL(e,s),h=p[0],v=p[1]-p[2]-i*h;(h||v)&&tT(e,s)&&(f+=v,m+=h);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s))return d&&(o&&1>Math.abs(f)||!o&&l>f)?u=!0:!d&&(o&&1>Math.abs(m)||!o&&-l>m)&&(u=!0),u},tF=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},tB=function(e){return[e.deltaX,e.deltaY]},t$=function(e){return e&&"current"in e?e.current:e},tz=0,tW=[];let tK=(i=function(e){var t=w.useRef([]),n=w.useRef([0,0]),r=w.useRef(),o=w.useState(tz++)[0],a=w.useState(tb)[0],i=w.useRef(e);w.useEffect(function(){i.current=e},[e]),w.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=(function(e,t,n){if(n||2==arguments.length)for(var r,o=0,a=t.length;o<a;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))})([e.lockRef.current],(e.shards||[]).map(t$),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach(function(e){return e.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=w.useCallback(function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!i.current.allowPinchZoom;var o,a=tF(e),l=n.current,s="deltaX"in e?e.deltaX:l[0]-a[0],c="deltaY"in e?e.deltaY:l[1]-a[1],u=e.target,d=Math.abs(s)>Math.abs(c)?"h":"v";if("touches"in e&&"h"===d&&"range"===u.type)return!1;var f=window.getSelection(),m=f&&f.anchorNode;if(m&&(m===u||m.contains(u)))return!1;var p=tI(d,u);if(!p)return!0;if(p?o=d:(o="v"===d?"h":"v",p=tI(d,u)),!p)return!1;if(!r.current&&"changedTouches"in e&&(s||c)&&(r.current=o),!o)return!0;var h=r.current||o;return t_(h,t,e,"h"===h?s:c,!0)},[]),s=w.useCallback(function(e){if(tW.length&&tW[tW.length-1]===a){var n="deltaY"in e?tB(e):tF(e),r=t.current.filter(function(t){var r;return t.name===e.type&&(t.target===e.target||e.target===t.shadowParent)&&(r=t.delta,r[0]===n[0]&&r[1]===n[1])})[0];if(r&&r.should){e.cancelable&&e.preventDefault();return}if(!r){var o=(i.current.shards||[]).map(t$).filter(Boolean).filter(function(t){return t.contains(e.target)});(o.length>0?l(e,o[0]):!i.current.noIsolation)&&e.cancelable&&e.preventDefault()}}},[]),c=w.useCallback(function(e,n,r,o){var a={name:e,delta:n,target:r,should:o,shadowParent:function(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=w.useCallback(function(e){n.current=tF(e),r.current=void 0},[]),d=w.useCallback(function(t){c(t.type,tB(t),t.target,l(t,e.lockRef.current))},[]),f=w.useCallback(function(t){c(t.type,tF(t),t.target,l(t,e.lockRef.current))},[]);w.useEffect(function(){return tW.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener("wheel",s,tM),document.addEventListener("touchmove",s,tM),document.addEventListener("touchstart",u,tM),function(){tW=tW.filter(function(e){return e!==a}),document.removeEventListener("wheel",s,tM),document.removeEventListener("touchmove",s,tM),document.removeEventListener("touchstart",u,tM)}},[]);var m=e.removeScrollBar,p=e.inert;return w.createElement(w.Fragment,null,p?w.createElement(a,{styles:"\n .block-interactivity-".concat(o," {pointer-events: none;}\n .allow-interactivity-").concat(o," {pointer-events: all;}\n")}):null,m?w.createElement(tR,{noRelative:e.noRelative,gapMode:e.gapMode}):null)},tm.useMedium(i),tv);var tU=w.forwardRef(function(e,t){return w.createElement(th,ti({},e,{ref:t,sideCar:tK}))});tU.classNames=th.classNames;var tV=new WeakMap,tq=new WeakMap,tH={},tX=0,tY=function(e){return e&&(e.host||tY(e.parentNode))},tG=function(e,t,n,r){var o=(Array.isArray(e)?e:[e]).map(function(e){if(t.contains(e))return e;var n=tY(e);return n&&t.contains(n)?n:(console.error("aria-hidden",e,"in not contained inside",t,". Doing nothing"),null)}).filter(function(e){return!!e});tH[n]||(tH[n]=new WeakMap);var a=tH[n],i=[],l=new Set,s=new Set(o),c=function(e){!e||l.has(e)||(l.add(e),c(e.parentNode))};o.forEach(c);var u=function(e){!e||s.has(e)||Array.prototype.forEach.call(e.children,function(e){if(l.has(e))u(e);else try{var t=e.getAttribute(r),o=null!==t&&"false"!==t,s=(tV.get(e)||0)+1,c=(a.get(e)||0)+1;tV.set(e,s),a.set(e,c),i.push(e),1===s&&o&&tq.set(e,!0),1===c&&e.setAttribute(n,"true"),o||e.setAttribute(r,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}})};return u(t),l.clear(),tX++,function(){i.forEach(function(e){var t=tV.get(e)-1,o=a.get(e)-1;tV.set(e,t),a.set(e,o),t||(tq.has(e)||e.removeAttribute(r),tq.delete(e)),o||e.removeAttribute(n)}),--tX||(tV=new WeakMap,tV=new WeakMap,tq=new WeakMap,tH={})}},tZ=function(e,t,n){void 0===n&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=t||("u"<typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),tG(r,o,n,"aria-hidden")):function(){return null}},tJ=Object.defineProperty,tQ=(e,t)=>tJ(e,"name",{value:t,configurable:!0}),t0="Dialog",[t1,t2]=W(t0),[t5,t3]=t1(t0),t6=tQ(e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:a,modal:i=!0}=e,l=w.useRef(null),s=w.useRef(null),[u,d]=en({prop:r,defaultProp:o??!1,onChange:a,caller:t0}),[f,m]=w.useState(0),[p,h]=w.useState(0);return(0,c.jsx)(t5,{scope:t,triggerRef:l,contentRef:s,contentId:X(),titleId:X(),descriptionId:X(),titlePresent:f>0,descriptionPresent:p>0,setTitleCount:m,setDescriptionCount:h,open:u,onOpenChange:d,onOpenToggle:w.useCallback(()=>d(e=>!e),[d]),modal:i,children:n})},"Dialog"),t9="DialogPortal",[t7,t8]=t1(t9,{forceMount:void 0}),t4=tQ(e=>{let{__scopeDialog:t,forceMount:n,children:r,container:o}=e,a=t3(t9,t);return(0,c.jsx)(t7,{scope:t,forceMount:n,children:w.Children.map(r,e=>(0,c.jsx)(e3,{present:n||a.open,children:(0,c.jsx)(e0,{asChild:!0,container:o,children:e})}))})},"DialogPortal"),ne="DialogOverlay",nt=w.forwardRef(tQ(function(e,t){let n=t8(ne,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=t3(ne,e.__scopeDialog);return a.modal?(0,c.jsx)(e3,{present:r||a.open,children:(0,c.jsx)(nr,{...o,ref:t})}):null},"DialogOverlay")),nn=ec("DialogOverlay.RemoveScroll"),nr=w.forwardRef(tQ(function(e,t){let{__scopeDialog:n,...r}=e,o=t3(ne,n),a=B(t,eO());return(0,c.jsx)(tU,{as:nn,allowPinchZoom:!0,shards:[o.contentRef],children:(0,c.jsx)(eE.div,{"data-state":nc(o.open),...r,ref:a,style:{pointerEvents:"auto",...r.style}})})},"DialogOverlayImpl")),no="DialogContent",na=w.forwardRef(tQ(function(e,t){let n=t8(no,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=t3(no,e.__scopeDialog);return(0,c.jsx)(e3,{present:r||a.open,children:a.modal?(0,c.jsx)(ni,{...o,ref:t}):(0,c.jsx)(nl,{...o,ref:t})})},"DialogContent")),ni=w.forwardRef(tQ(function(e,t){let n=t3(no,e.__scopeDialog),r=w.useRef(null),o=B(t,n.contentRef,r);return w.useEffect(()=>{let e=r.current;if(e)return tZ(e)},[]),(0,c.jsx)(ns,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:M(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:M(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:M(e.onFocusOutside,e=>e.preventDefault())})},"DialogContentModal")),nl=w.forwardRef(tQ(function(e,t){let n=t3(no,e.__scopeDialog),r=w.useRef(!1),o=w.useRef(!1);return(0,c.jsx)(ns,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,"pointerdown"===t.detail.originalEvent.type&&(o.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&o.current&&t.preventDefault()}})},"DialogContentNonModal")),ns=w.forwardRef(tQ(function(e,t){let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:a,...i}=e,l=t3(no,n);return to(),(0,c.jsx)(c.Fragment,{children:(0,c.jsx)(ez,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:a,children:(0,c.jsx)(eR,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionPresent?l.descriptionId:void 0,"aria-labelledby":l.titlePresent?l.titleId:void 0,"data-state":nc(l.open),...i,ref:t,deferPointerDownOutside:!0,onDismiss:()=>l.onOpenChange(!1)})})})},"DialogContentImpl"));function nc(e){return e?"open":"closed"}tQ(nc,"getState");var nu='[cmdk-group=""]',nd='[cmdk-group-items=""]',nf='[cmdk-item=""]',nm=`${nf}:not([aria-disabled="true"])`,np="cmdk-item-select",nh="data-value",nv=(e,t,n)=>{var r;return r=e,function e(t,n,r,o,a,i,l){if(i===n.length)return a===t.length?1:.99;var s=`${a},${i}`;if(void 0!==l[s])return l[s];for(var c,u,d,f,m=o.charAt(i),p=r.indexOf(m,a),h=0;p>=0;)(c=e(t,n,r,o,p+1,i+1,l))>h&&(p===a?c*=1:k.test(t.charAt(p-1))?(c*=.8,(d=t.slice(a,p-1).match(S))&&a>0&&(c*=Math.pow(.999,d.length))):N.test(t.charAt(p-1))?(c*=.9,(f=t.slice(a,p-1).match(C))&&a>0&&(c*=Math.pow(.999,f.length))):(c*=.17,a>0&&(c*=Math.pow(.999,p-a))),t.charAt(p)!==n.charAt(i)&&(c*=.9999)),(c<.1&&r.charAt(p-1)===o.charAt(i+1)||o.charAt(i+1)===o.charAt(i)&&r.charAt(p-1)!==o.charAt(i))&&.1*(u=e(t,n,r,o,p+1,i+2,l))>c&&(c=.1*u),c>h&&(h=c),p=r.indexOf(m,p+1);return l[s]=h,h}(r=n&&n.length>0?`${r+" "+n.join(" ")}`:r,t,A(r),A(t),0,0,{})},ng=w.createContext(void 0),nx=w.createContext(void 0),nb=w.createContext(void 0),ny=w.forwardRef((e,t)=>{let n=nO(()=>{var t,n;return{search:"",value:null!=(n=null!=(t=e.value)?t:e.defaultValue)?n:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),r=nO(()=>new Set),o=nO(()=>new Map),a=nO(()=>new Map),i=nO(()=>new Set),l=nA(e),{label:s,children:c,value:u,onValueChange:d,filter:f,shouldFilter:m,loop:p,disablePointerSelection:h=!1,vimBindings:v=!0,...g}=e,x=X(),b=X(),y=X(),E=w.useRef(null),j=nD();nR(()=>{if(void 0!==u){let e=u.trim();n.current.value=e,k.emit()}},[u]),nR(()=>{j(6,O)},[]);let k=w.useMemo(()=>({subscribe:e=>(i.current.add(e),()=>i.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var o,a,i,s;if(!Object.is(n.current[e],t)){if(n.current[e]=t,"search"===e)R(),C(),j(1,A);else if("value"===e){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let e=document.getElementById(y);e?e.focus():null==(o=document.getElementById(x))||o.focus()}if(j(7,()=>{var e;n.current.selectedItemId=null==(e=P())?void 0:e.id,k.emit()}),r||j(5,O),(null==(a=l.current)?void 0:a.value)!==void 0){null==(s=(i=l.current).onValueChange)||s.call(i,null!=t?t:"");return}}k.emit()}},emit:()=>{i.current.forEach(e=>e())}}),[]),S=w.useMemo(()=>({value:(e,t,r)=>{var o;t!==(null==(o=a.current.get(e))?void 0:o.value)&&(a.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,N(t,r)),j(2,()=>{C(),k.emit()}))},item:(e,t)=>(r.current.add(e),t&&(o.current.has(t)?o.current.get(t).add(e):o.current.set(t,new Set([e]))),j(3,()=>{R(),C(),n.current.value||A(),k.emit()}),()=>{a.current.delete(e),r.current.delete(e),n.current.filtered.items.delete(e);let t=P();j(4,()=>{R(),(null==t?void 0:t.getAttribute("id"))===e&&A(),k.emit()})}),group:e=>(o.current.has(e)||o.current.set(e,new Set),()=>{a.current.delete(e),o.current.delete(e)}),filter:()=>l.current.shouldFilter,label:s||e["aria-label"],getDisablePointerSelection:()=>l.current.disablePointerSelection,listId:x,inputId:y,labelId:b,listInnerRef:E}),[]);function N(e,t){var r,o;let a=null!=(o=null==(r=l.current)?void 0:r.filter)?o:nv;return e?a(e,n.current.search,t):0}function C(){if(!n.current.search||!1===l.current.shouldFilter)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=o.current.get(n),a=0;r.forEach(t=>{a=Math.max(e.get(t),a)}),t.push([n,a])});let r=E.current;M().sort((t,n)=>{var r,o;let a=t.getAttribute("id"),i=n.getAttribute("id");return(null!=(r=e.get(i))?r:0)-(null!=(o=e.get(a))?o:0)}).forEach(e=>{let t=e.closest(nd);t?t.appendChild(e.parentElement===t?e:e.closest(`${nd} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${nd} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{var t;let n=null==(t=E.current)?void 0:t.querySelector(`${nu}[${nh}="${encodeURIComponent(e[0])}"]`);null==n||n.parentElement.appendChild(n)})}function A(){let e=M().find(e=>"true"!==e.getAttribute("aria-disabled")),t=null==e?void 0:e.getAttribute(nh);k.setState("value",t||void 0)}function R(){var e,t,i,s;if(!n.current.search||!1===l.current.shouldFilter){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let c=0;for(let o of r.current){let r=N(null!=(t=null==(e=a.current.get(o))?void 0:e.value)?t:"",null!=(s=null==(i=a.current.get(o))?void 0:i.keywords)?s:[]);n.current.filtered.items.set(o,r),r>0&&c++}for(let[e,t]of o.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=c}function O(){var e,t,n;let r=P();r&&((null==(e=r.parentElement)?void 0:e.firstChild)===r&&(null==(n=null==(t=r.closest(nu))?void 0:t.querySelector('[cmdk-group-heading=""]'))||n.scrollIntoView({block:"nearest"})),r.scrollIntoView({block:"nearest"}))}function P(){var e;return null==(e=E.current)?void 0:e.querySelector(`${nf}[aria-selected="true"]`)}function M(){var e;return Array.from((null==(e=E.current)?void 0:e.querySelectorAll(nm))||[])}function D(e){let t=M()[e];t&&k.setState("value",t.getAttribute(nh))}function I(e){var t;let n=P(),r=M(),o=r.findIndex(e=>e===n),a=r[o+e];null!=(t=l.current)&&t.loop&&(a=o+e<0?r[r.length-1]:o+e===r.length?r[0]:r[o+e]),a&&k.setState("value",a.getAttribute(nh))}function T(e){let t=P(),n=null==t?void 0:t.closest(nu),r;for(;n&&!r;)r=null==(n=e>0?function(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}(n,nu):function(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}(n,nu))?void 0:n.querySelector(nm);r?k.setState("value",r.getAttribute(nh)):I(e)}let L=()=>D(M().length-1),_=e=>{e.preventDefault(),e.metaKey?L():e.altKey?T(1):I(1)},F=e=>{e.preventDefault(),e.metaKey?D(0):e.altKey?T(-1):I(-1)};return w.createElement(eE.div,{ref:t,tabIndex:-1,...g,"cmdk-root":"",onKeyDown:e=>{var t;null==(t=g.onKeyDown)||t.call(g,e);let n=e.nativeEvent.isComposing||229===e.keyCode;if(!(e.defaultPrevented||n))switch(e.key){case"n":case"j":v&&e.ctrlKey&&_(e);break;case"ArrowDown":_(e);break;case"p":case"k":v&&e.ctrlKey&&F(e);break;case"ArrowUp":F(e);break;case"Home":e.preventDefault(),D(0);break;case"End":e.preventDefault(),L();break;case"Enter":{e.preventDefault();let t=P();if(t){let e=new Event(np);t.dispatchEvent(e)}}}}},w.createElement("label",{"cmdk-label":"",htmlFor:S.inputId,id:S.labelId,style:nT},s),nI(e,e=>w.createElement(nx.Provider,{value:k},w.createElement(ng.Provider,{value:S},e))))}),nw=w.forwardRef((e,t)=>{var n,r;let o=X(),a=w.useRef(null),i=w.useContext(nb),l=w.useContext(ng),s=nA(e),c=null!=(r=null==(n=s.current)?void 0:n.forceMount)?r:null==i?void 0:i.forceMount;nR(()=>{if(!c)return l.item(o,null==i?void 0:i.id)},[c]);let u=nM(o,a,[e.value,e.children,a],e.keywords),d=w.useContext(nx),f=nP(e=>e.value&&e.value===u.current),m=nP(e=>!!c||!1===l.filter()||!e.search||e.filtered.items.get(o)>0);function p(){var e,t;h(),null==(t=(e=s.current).onSelect)||t.call(e,u.current)}function h(){d.setState("value",u.current,!0)}if(w.useEffect(()=>{let t=a.current;if(!(!t||e.disabled))return t.addEventListener(np,p),()=>t.removeEventListener(np,p)},[m,e.onSelect,e.disabled]),!m)return null;let{disabled:v,value:g,onSelect:x,forceMount:b,keywords:y,...E}=e;return w.createElement(eE.div,{ref:F(a,t),...E,id:o,"cmdk-item":"",role:"option","aria-disabled":!!v,"aria-selected":!!f,"data-disabled":!!v,"data-selected":!!f,onPointerMove:v||l.getDisablePointerSelection()?void 0:h,onClick:v?void 0:p},e.children)}),nE=w.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:o,...a}=e,i=X(),l=w.useRef(null),s=w.useRef(null),c=X(),u=w.useContext(ng),d=nP(e=>!!o||!1===u.filter()||!e.search||e.filtered.groups.has(i));nR(()=>u.group(i),[]),nM(i,l,[e.value,e.heading,s]);let f=w.useMemo(()=>({id:i,forceMount:o}),[o]);return w.createElement(eE.div,{ref:F(l,t),...a,"cmdk-group":"",role:"presentation",hidden:!d||void 0},n&&w.createElement("div",{ref:s,"cmdk-group-heading":"","aria-hidden":!0,id:c},n),nI(e,e=>w.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?c:void 0},w.createElement(nb.Provider,{value:f},e))))}),nj=w.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,o=w.useRef(null),a=nP(e=>!e.search);return n||a?w.createElement(eE.div,{ref:F(o,t),...r,"cmdk-separator":"",role:"separator"}):null}),nk=w.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,o=null!=e.value,a=w.useContext(nx),i=nP(e=>e.search),l=nP(e=>e.selectedItemId),s=w.useContext(ng);return w.useEffect(()=>{null!=e.value&&a.setState("search",e.value)},[e.value]),w.createElement(eE.input,{ref:t,...r,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":s.listId,"aria-labelledby":s.labelId,"aria-activedescendant":l,id:s.inputId,type:"text",value:o?e.value:i,onChange:e=>{o||a.setState("search",e.target.value),null==n||n(e.target.value)}})}),nS=w.forwardRef((e,t)=>{let{children:n,label:r="Suggestions",...o}=e,a=w.useRef(null),i=w.useRef(null),l=nP(e=>e.selectedItemId),s=w.useContext(ng);return w.useEffect(()=>{if(i.current&&a.current){let e=i.current,t=a.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty("--cmdk-list-height",n.toFixed(1)+"px")})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),w.createElement(eE.div,{ref:F(a,t),...o,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":l,"aria-label":r,id:s.listId},nI(e,e=>w.createElement("div",{ref:F(i,s.listInnerRef),"cmdk-list-sizer":""},e)))}),nN=w.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:o,contentClassName:a,container:i,...l}=e;return w.createElement(t6,{open:n,onOpenChange:r},w.createElement(t4,{container:i},w.createElement(nt,{"cmdk-overlay":"",className:o}),w.createElement(na,{"aria-label":e.label,"cmdk-dialog":"",className:a},w.createElement(ny,{ref:t,...l}))))}),nC=Object.assign(ny,{List:nS,Item:nw,Input:nk,Group:nE,Separator:nj,Dialog:nN,Empty:w.forwardRef((e,t)=>nP(e=>0===e.filtered.count)?w.createElement(eE.div,{ref:t,...e,"cmdk-empty":"",role:"presentation"}):null),Loading:w.forwardRef((e,t)=>{let{progress:n,children:r,label:o="Loading...",...a}=e;return w.createElement(eE.div,{ref:t,...a,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":o},nI(e,e=>w.createElement("div",{"aria-hidden":!0},e)))})});function nA(e){let t=w.useRef(e);return nR(()=>{t.current=e}),t}var nR="u"<typeof window?w.useEffect:w.useLayoutEffect;function nO(e){let t=w.useRef();return void 0===t.current&&(t.current=e()),t}function nP(e){let t=w.useContext(nx),n=()=>e(t.snapshot());return w.useSyncExternalStore(t.subscribe,n,n)}function nM(e,t,n,r=[]){let o=w.useRef(),a=w.useContext(ng);return nR(()=>{var i;let l=(()=>{var e;for(let t of n){if("string"==typeof t)return t.trim();if("object"==typeof t&&"current"in t)return t.current?null==(e=t.current.textContent)?void 0:e.trim():o.current}})(),s=r.map(e=>e.trim());a.value(e,l,s),null==(i=t.current)||i.setAttribute(nh,l),o.current=l}),o}var nD=()=>{let[e,t]=w.useState(),n=nO(()=>new Map);return nR(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function nI({asChild:e,children:t},n){let r;return e&&w.isValidElement(t)?w.cloneElement("function"==typeof(r=t.type)?r(t.props):"render"in r?r.render(t.props):t,{ref:t.ref},n(t.props.children)):n(t)}var nT={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"},nL=e.i(593698),n_=e.i(630299),n_=n_;e.i(630374);var nF=e.i(225913),nB=e.i(23750),n$=e.i(184762),nz=e.i(647163);function nW({className:e,...t}){return(0,c.jsx)("div",{"data-slot":"input-group",role:"group",className:(0,nz.cn)("group/input-group relative flex h-8 w-full min-w-0 items-center rounded-lg border border-input transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-disabled:bg-input/50 has-disabled:opacity-50 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-disabled:bg-input/80 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",e),...t})}let nK=(0,nF.cva)("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4",{variants:{align:{"inline-start":"order-first pl-2 has-[>button]:ml-[-0.3rem] has-[>kbd]:ml-[-0.15rem]","inline-end":"order-last pr-2 has-[>button]:mr-[-0.3rem] has-[>kbd]:mr-[-0.15rem]","block-start":"order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2","block-end":"order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"}},defaultVariants:{align:"inline-start"}});function nU({className:e,align:t="inline-start",...n}){return(0,c.jsx)("div",{role:"group","data-slot":"input-group-addon","data-align":t,className:(0,nz.cn)(nK({align:t}),e),onClick:e=>{e.target.closest("button")||e.currentTarget.parentElement?.querySelector("input")?.focus()},...n})}function nV({className:e,...t}){return(0,c.jsx)("span",{className:(0,nz.cn)("flex items-center gap-2 text-sm text-muted-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",e),...t})}function nq({className:e,...t}){return(0,c.jsx)(nB.Input,{"data-slot":"input-group-control",className:(0,nz.cn)("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent",e),...t})}function nH({className:e,...t}){return(0,c.jsx)(nC,{"data-slot":"command",className:(0,nz.cn)("flex size-full flex-col overflow-hidden rounded-xl! bg-popover p-1 text-popover-foreground",e),...t})}function nX({className:e,...t}){return(0,c.jsx)("div",{"data-slot":"command-input-wrapper",className:"p-1 pb-0",children:(0,c.jsxs)(nW,{className:"h-8! rounded-lg! border-input/30 bg-input/30 shadow-none! *:data-[slot=input-group-addon]:pl-2!",children:[(0,c.jsx)(nC.Input,{"data-slot":"command-input",className:(0,nz.cn)("w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",e),...t}),(0,c.jsx)(nU,{children:(0,c.jsx)(n_.default,{className:"size-4 shrink-0 opacity-50"})})]})})}function nY({className:e,...t}){return(0,c.jsx)(nC.List,{"data-slot":"command-list",className:(0,nz.cn)("no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none",e),...t})}function nG({className:e,...t}){return(0,c.jsx)(nC.Empty,{"data-slot":"command-empty",className:(0,nz.cn)("py-6 text-center text-sm",e),...t})}function nZ({className:e,...t}){return(0,c.jsx)(nC.Group,{"data-slot":"command-group",className:(0,nz.cn)("overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground",e),...t})}function nJ({className:e,children:t,...n}){return(0,c.jsxs)(nC.Item,{"data-slot":"command-item",className:(0,nz.cn)("group/command-item relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none in-data-[slot=dialog-content]:rounded-lg! data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-selected:*:[svg]:text-foreground",e),...n,children:[t,(0,c.jsx)(nL.CheckIcon,{className:"ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100"})]})}(0,nF.cva)("flex items-center gap-2 text-sm shadow-none",{variants:{size:{xs:"h-6 gap-1 rounded-[calc(var(--radius)-3px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5",sm:"","icon-xs":"size-6 rounded-[calc(var(--radius)-3px)] p-0 has-[>svg]:p-0","icon-sm":"size-8 p-0 has-[>svg]:p-0"}},defaultVariants:{size:"xs"}});var nQ=e.i(917162),n0=e.i(660302),n1=e.i(671428),n2=e.i(319036),n5=e.i(41533),n3=e.i(146538),n6=e.i(265402),n9=e.i(95187);let n7=(0,n9.createServerReference)("7fa56dad6d8a2bc8e9fc327be0fad0827edc696eae",n9.callServer,void 0,n9.findSourceMapURL,"createBotAction");var n8=e.i(730281);let n4=(0,n9.createServerReference)("7f74ef3be000997b6c5ad71b82e000a986cfde753a",n9.callServer,void 0,n9.findSourceMapURL,"deleteBotAction"),re=(0,n9.createServerReference)("7fb8ea5c85b220f5ff05764cb61851edf3871e8663",n9.callServer,void 0,n9.findSourceMapURL,"setBotMemoryOnAction"),rt=(0,n9.createServerReference)("7fd5c4f6e679d30ce1d78bbf71c52bcd215ebfc1ac",n9.callServer,void 0,n9.findSourceMapURL,"updateBotAction");var rn=e.i(451888),rr=e.i(463625),ro=e.i(635963),ra=e.i(519029),ri=e.i(992112),rl=e.i(895836),rs=e.i(989409),rc=e.i(621285),ru=e.i(616172),rd=e.i(586930),rf=e.i(555085),rm=e.i(333999),rp=e.i(245629),rh=e.i(981203),rv=e.i(609856),rg=e.i(283653),rx=e.i(864723);let rb=" new";function ry({bot:e,job:t,active:n,onPick:r}){var o,a,i;let l=(o=t,a=e.lastJobAt,i=e.disabled,o?.status==="waiting"?{text:"waiting on you",shine:!0,amber:!0}:o?.status==="running"?{text:`working \xb7 ${o.label}`,shine:!0}:i?{text:"off"}:o?{text:`idle \xb7 last job ${rw(o.updatedAt)}`}:a?{text:`idle \xb7 last job ${rw(a)}`}:{text:"idle · no jobs yet"});return(0,c.jsxs)("button",{type:"button",onClick:r,className:(0,nz.cn)("mx-2 flex items-center gap-2.5 rounded-md px-2 py-2 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",n?"bg-secondary":"hover:bg-muted/60"),children:[(0,c.jsx)(ro.BotMark,{size:32,...rA(e.name,e.icon),state:t?.status==="running"?"thinking":"idle",notify:t?.status==="waiting",className:(0,nz.cn)("shrink-0",e.disabled&&"opacity-45")}),(0,c.jsxs)("span",{className:(0,nz.cn)("min-w-0 flex-1 space-y-0.5",e.disabled&&"opacity-45"),children:[(0,c.jsx)("span",{className:(0,nz.cn)("block truncate text-[13px]",n?"font-medium":"text-foreground/90"),children:e.name}),l.shine?(0,c.jsx)(n0.ShinyText,{text:l.text,tone:l.amber?"waiting":"muted",className:"block truncate font-mono text-[11px] leading-4"}):(0,c.jsx)("span",{className:"block truncate font-mono text-[11px] leading-4 text-muted-foreground",children:l.text})]})]})}function rw(e){let t=(0,rp.shortAgo)(e);return"now"===t?"just now":`${t} ago`}function rE(e,t,n){let[r,o]=(0,w.useState)(new Set),[a,i]=(0,rv.useServerAction)(n8.createSeedBotsAction,{onOk:e=>{(0,rg.revalidate)(E.queryKey.bot),n(e.created[0]??null)}}),{data:l}=(0,rg.useServerRoute)(E.queryKey.config),s=rr.BOT_SEEDS.filter(t=>!e.has(t.name)),c=s.filter(e=>!r.has(e.name));return{isSet:e=>(0,ri.isConfigSet)(l,e),adding:i,addable:s,wanted:c,ticked:t=>e.has(t.name)||!r.has(t.name),toggle:e=>o(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),submit:()=>a(c.map(e=>({name:e.name,color:t[rr.BOT_SEEDS.indexOf(e)]})))}}function rj({have:e,inks:t,picks:n}){return(0,c.jsx)("div",{className:"flex flex-col gap-2",children:rr.BOT_SEEDS.map((r,o)=>{var a;let i,l=e.has(r.name),s=n.ticked(r),d=(a=n.isSet,(i=(r.requires??[]).filter(e=>!a(ri.MEDIA_MODEL_KEYS[e]))).length?`needs ${i.map(ri.mediaModelWords).join(" and ")}`:null);return(0,c.jsx)("div",{className:(0,nz.cn)("rounded-xl ring-1 transition-colors",l?"opacity-45 ring-border/60":s?"ring-foreground":"ring-border/60"),children:(0,c.jsxs)("button",{type:"button",disabled:l||n.adding,"aria-pressed":s,onClick:()=>n.toggle(r.name),className:"flex w-full items-center gap-3 rounded-xl px-3.5 py-2.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-default",children:[(0,c.jsx)(ro.BotMark,{size:28,...rA(r.name,r.icon),color:t[o],className:(0,nz.cn)("shrink-0 transition-opacity",!s&&"opacity-35")}),(0,c.jsxs)("span",{className:"min-w-0 flex-1 space-y-px",children:[(0,c.jsx)("span",{className:"block text-[14px] leading-[18px] font-medium",children:r.name}),(0,c.jsx)("span",{className:"block truncate text-[12px] leading-[17px] text-muted-foreground",children:r.hint})]}),l?(0,c.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground",children:"already added"}):d?(0,c.jsxs)("span",{className:(0,nz.cn)("flex shrink-0 items-center gap-1.5 font-mono text-[11px]",nz.WAITING_INK),children:[(0,c.jsx)(p,{className:"size-3"}),d]}):null,(0,c.jsx)("span",{className:(0,nz.cn)("grid size-5 shrink-0 place-items-center rounded-full transition-colors",s?"bg-foreground text-background":"ring-1 ring-border/60 ring-inset"),children:s&&(0,c.jsx)(u.Check,{className:"size-3"})})]})},r.name)})})}function rk({picks:e,onCancel:t}){return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(j.Button,{variant:"ghost",onClick:t,children:"Cancel"}),(0,c.jsxs)(j.Button,{loading:e.adding,disabled:0===e.wanted.length,onClick:e.submit,children:[(0,c.jsx)(g.Plus,{}),1===e.wanted.length?`Add ${e.wanted[0].name}`:`Add ${e.wanted.length} bots`]})]})}function rS({have:e,inks:t,onDone:n}){let r=rE(e,t,n);return(0,c.jsxs)("div",{className:"flex min-h-full flex-col",children:[(0,c.jsx)("div",{className:"flex h-11 shrink-0 items-center border-b border-border/60 px-4 font-mono text-[11px] text-muted-foreground",children:"Ready-made"}),(0,c.jsxs)("div",{className:"px-8 pt-7 pb-1",children:[(0,c.jsx)("h3",{className:"text-[17px] font-medium tracking-tight",children:"Bots you can add"}),(0,c.jsx)("p",{className:"mt-1.5 max-w-lg text-[13px] leading-relaxed text-muted-foreground break-keep",children:"Each one is a starting point — rename it, re-prompt it, give it a model of its own. What a bot needs before it can work stands on its row; until then it runs on the app default model."})]}),(0,c.jsx)("div",{className:"px-8 pt-4",children:(0,c.jsx)(rj,{have:e,inks:t,picks:r})}),(0,c.jsxs)("div",{className:"mt-auto flex items-center gap-3 border-t border-border/60 px-8 py-4",children:[(0,c.jsx)("span",{className:"flex-1 font-mono text-[11px] text-muted-foreground",children:0===r.wanted.length?"nothing ticked":`${r.wanted.length} of ${r.addable.length} ticked`}),(0,c.jsx)(rk,{picks:r,onCancel:()=>n(null)})]})]})}function rN({have:e,inks:t,onDone:n}){let r=rE(e,t,n);return(0,c.jsx)(rl.SettingDialogContent,{title:"Bots you can add",description:"Each one is a starting point — rename it, re-prompt it, give it a model of its own. What a bot needs before it can work stands on its row.",footer:(0,c.jsx)(rk,{picks:r,onCancel:()=>n(null)}),children:(0,c.jsx)(rj,{have:e,inks:t,picks:r})})}function rC({missing:e,inks:t,have:n,onDone:r}){return(0,c.jsxs)("button",{type:"button",title:"Ready-made bots","aria-label":`Ready-made bots, ${e.length} on offer`,onClick:()=>nQ.notify.component({className:"sm:max-w-xl",renderer:({close:e})=>(0,c.jsx)(rN,{have:n,inks:t,onDone:t=>{e(),r(t)}})}),className:"flex shrink-0 items-center gap-1 rounded-md px-1.5 py-1 text-muted-foreground outline-none transition-colors hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,c.jsx)(g.Plus,{className:"size-3 shrink-0"}),e.map((n,r)=>(0,c.jsx)("span",{className:(0,nz.cn)("block",r>0&&"-ml-1.5"),style:{zIndex:e.length-r},children:(0,c.jsx)(ro.BotMark,{size:20,...rA(n.name,n.icon),color:t[rr.BOT_SEEDS.indexOf(n)],notify:!1})},n.name))]})}function rA(e,t){return{seed:e||"bot",color:t?.color,shape:t?.shape,outline:t?.outline}}function rR({bot:e,jobs:t,onDone:n,onCancel:r}){let[o,a]=(0,rm.useObjectState)(()=>({name:e?.name??"",description:e?.description??"",systemPrompt:e?.systemPrompt??"",icon:e?.icon??(0,rn.randomBotIcon)(),provider:e?.provider??null,model:e?.model??"",compactAt:e?.compactAt?String(e.compactAt/1e3):"",toolIds:e?.tools.map(e=>e.id)??[]})),{name:i,description:l,systemPrompt:s,icon:u,provider:d,model:f,compactAt:m,toolIds:p}=o,[h,v]=(0,w.useState)(!!e?.compactAt),g=(0,rg.useServerRoute)(E.queryKey.modelCatalog),b=(e,t)=>e&&t.trim()?(0,n6.contextWindowOf)(e,t.trim(),g.data):null,y=b(d,f),k=d&&f.trim()?rT(y)/1e3:null,S=h?m:null===k?"":String(k),[N]=(0,rv.useServerAction)(rt,{onOk:()=>(0,rg.revalidate)(E.queryKey.bot)}),C=t=>{e&&N(e.name,t)},[A,R,,O]=(0,rv.useServerAction)(n7,{errorMessage:!1,okMessage:"Bot created",onOk:e=>{(0,rg.revalidate)(E.queryKey.bot),n(e.name)}}),[P,M]=(0,rv.useServerAction)(n4,{okMessage:"Bot deleted",onOk:()=>{(0,rg.revalidate)(E.queryKey.bot),n(null)}}),D=i.trim()&&l.trim()&&d&&f.trim()&&!R,I=async()=>{!e||await nQ.notify.confirm({title:`Delete ${e.name}?`,description:"The agent can no longer hand work to it.",okText:"Delete",destructive:!0})&&P(e.name)};return(0,c.jsxs)("div",{className:"flex min-h-full flex-col",children:[(0,c.jsxs)("div",{className:"flex h-11 shrink-0 items-center gap-2 border-b border-border/60 px-4",children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-muted-foreground",children:e?e.name:"New bot"}),e&&(0,c.jsxs)(c.Fragment,{children:[e.disabled&&(0,c.jsx)("span",{className:"font-mono text-[10px] text-muted-foreground",children:"off"}),(0,c.jsx)(n2.Switch,{checked:!e.disabled,onCheckedChange:e=>C({disabled:!e}),"aria-label":`${e.name} on or off`,className:"mr-1 shrink-0"}),(0,c.jsx)(j.Button,{size:"icon-sm",variant:"ghost",loading:M,"aria-label":"Delete this bot",onClick:I,className:"text-muted-foreground hover:text-destructive",children:(0,c.jsx)(x.Trash2,{})})]})]}),(0,c.jsxs)("div",{className:"flex-1 space-y-5 p-6",children:[(0,c.jsx)(rF,{name:i,icon:u,onChange:e=>{a({icon:e}),C({icon:e})}}),(0,c.jsxs)(rL,{label:"Name",children:[e?(0,c.jsx)("p",{className:"truncate text-sm leading-8 font-medium",children:e.name}):(0,c.jsx)(nB.Input,{value:i,onChange:e=>a({name:e.target.value}),placeholder:"researcher",spellCheck:!1,maxLength:rh.COMMON_VALIDATE.name.max,autoFocus:!0}),(0,c.jsx)("p",{className:"text-xs text-muted-foreground",children:e?`What ${n5.APP_NAME} calls it when she hands it work. Fixed once the bot is made.`:`What ${n5.APP_NAME} calls it when she hands it work. Up to ${rh.COMMON_VALIDATE.name.max} characters, and it can’t be renamed later.`})]}),(0,c.jsxs)(rL,{label:"Description",children:[(0,c.jsx)(nB.Input,{value:l,onChange:e=>a({description:e.target.value}),onBlur:()=>{let t=l.trim();e&&t&&t!==e.description&&C({description:t})},placeholder:"Searches the web and answers",maxLength:rh.COMMON_VALIDATE.description.max}),(0,c.jsxs)("p",{className:"text-xs text-muted-foreground",children:["The one line ",n5.APP_NAME," and the other bots read when they decide who gets a job."]})]}),(0,c.jsx)(rL,{label:"Runs on",children:(0,c.jsx)(n3.ModelPicker,{provider:d,model:f,onChange:e=>{a({provider:e.provider,model:e.model}),v(!1),e.model&&C({...e,compactAt:rT(b(e.provider,e.model))})}})}),(0,c.jsxs)(rL,{label:"Compacts at",children:[(0,c.jsxs)(nW,{children:[(0,c.jsx)(nq,{inputMode:"decimal",value:S,placeholder:f.trim()?"":"Pick a model first",onChange:e=>{v(!0),a({compactAt:e.target.value})},onBlur:()=>{if(!h)return;let e=rI(m);null===e?v(!1):a({compactAt:String(e/1e3)}),C({compactAt:e??(f.trim()?rT(y):null)})}}),(0,c.jsx)(nU,{align:"inline-end",children:(0,c.jsx)(nV,{children:"k tokens"})})]}),(0,c.jsx)("p",{className:"text-xs text-muted-foreground",children:function(e){if(!e.model)return"Filled in from the model once one is picked.";let t=rT(e.window),n="A job summarizes itself here and carries on.";return null!==e.shown&&e.shown!==t?`Set by hand. Picking a model fills in its own again. ${n}`:e.window?`${Math.round(100*n5.BOT_RUN.compactHeadroom)}% of this model's ${(e.window/1e3).toLocaleString()}k context window. ${n}`:`This model's context window is unknown, so the default is filled in. ${n}`}({model:f.trim(),window:y,shown:rI(S)})})]}),(0,c.jsx)(rL,{label:"Tools",children:(0,c.jsx)(rB,{selected:p,onChange:e=>{a({toolIds:e}),C({toolIds:e})}})}),(0,c.jsxs)(rL,{label:"Prompt",children:[(0,c.jsx)(n$.Textarea,{value:s,onChange:e=>a({systemPrompt:e.target.value}),onBlur:()=>{let t=s.trim();e&&t!==(e.systemPrompt??"")&&C({systemPrompt:t})},placeholder:`How it should work (optional). e.g.
2
- Search the web, answer with a short summary and links.`,maxLength:rh.COMMON_VALIDATE.prompt.max,className:"max-h-48 min-h-24 resize-none overflow-y-auto text-sm"}),s.length>0&&(0,c.jsxs)("p",{className:"text-right font-mono text-[10px] text-muted-foreground",children:[s.length,"/",rh.COMMON_VALIDATE.prompt.max]})]}),e&&(0,c.jsx)(rO,{bot:e.name}),e&&(0,c.jsx)(r_,{jobs:t}),!e&&(0,c.jsxs)("div",{className:"flex items-center justify-end gap-2 pt-1",children:[(0,c.jsx)(j.Button,{variant:"ghost",onClick:r,children:"Cancel"}),(0,c.jsx)(j.Button,{loading:R,disabled:!D,onClick:()=>{D&&d&&A({name:i.trim(),description:l.trim(),systemPrompt:s.trim()||void 0,icon:u,provider:d,model:f.trim(),compactAt:h?rI(m):rT(y),toolIds:p})},children:"Create"})]}),O&&(0,c.jsx)("p",{className:"font-mono text-xs text-destructive",children:O})]})]})}function rO({bot:e}){let t=E.queryKey.botMemoryFiles(e),{data:n,isLoading:r}=(0,rg.useServerRoute)(t),[o,a]=(0,w.useState)(null),[i]=(0,rv.useServerAction)(rf.openFileAction),[l,s]=(0,rv.useServerAction)(rd.deleteWorkspaceFileAction,{okMessage:"File deleted",onOk:()=>{a(null),(0,rg.revalidate)(t),(0,rg.revalidate)(E.queryKey.workspace)}}),u=async t=>{await nQ.notify.confirm({title:`Delete ${t.file}?`,description:`It is deleted from disk for good, and ${e}'s next job starts without it.`,okText:"Delete",destructive:!0})&&l(t.path)};return(0,c.jsxs)("div",{className:"pt-1",children:[(0,c.jsxs)("div",{className:"flex h-6 items-center",children:[(0,c.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:"Memory"}),(0,c.jsx)("span",{className:"flex-1"}),n&&n.total>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{className:"pr-1 font-mono text-[11px] text-muted-foreground tabular-nums",children:1===n.total?"1 file":`${n.total} files`}),(0,c.jsxs)("button",{type:"button",title:"Show in the file manager",onClick:()=>i(n.folder),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)(h.FolderOpen,{className:"size-3"}),"Folder"]})]})]}),r?(0,c.jsx)("div",{className:"flex h-9 items-center border-t border-border/60",children:(0,c.jsx)(n1.Skeleton,{className:"h-3 w-56"})}):n?.entries.length?n.entries.map(e=>{let t=o===e.path;return(0,c.jsxs)("div",{className:"border-t border-border/60",children:[(0,c.jsxs)("button",{type:"button","aria-expanded":t,onClick:()=>a(t?null:e.path),className:"flex h-9 w-full items-center gap-3 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)("span",{className:(0,nz.cn)("min-w-0 flex-1 truncate",t&&"font-medium"),children:e.line||e.file}),(0,c.jsx)("span",{className:"w-36 shrink-0 truncate font-mono text-[11px] text-muted-foreground",children:e.file}),(0,c.jsx)("span",{className:"w-28 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:(0,rp.whenOf)(e.at)}),(0,c.jsx)(d.ChevronRight,{className:(0,nz.cn)("size-3 shrink-0 text-muted-foreground transition-transform",t&&"rotate-90")})]}),t&&(0,c.jsxs)("div",{className:"flex items-start gap-3",children:[(0,c.jsx)("div",{className:"max-h-96 min-w-0 flex-1 overflow-y-auto",children:(0,c.jsx)(rP,{path:e.path})}),(0,c.jsx)(j.Button,{size:"icon-sm",variant:"ghost","aria-label":`Delete ${e.file}`,loading:s,onClick:()=>u(e),className:"text-muted-foreground hover:text-destructive",children:(0,c.jsx)(x.Trash2,{})})]})]},e.path)}):(0,c.jsx)("p",{className:"py-2 text-[13px] text-muted-foreground",children:"Nothing kept yet."})]})}function rP({path:e}){let{content:t,failure:n,truncated:r}=(0,rc.useFileText)(e);if(n)return(0,c.jsx)("p",{className:"pb-3 font-mono text-xs text-destructive",children:n});if(null===t)return(0,c.jsxs)("div",{className:"space-y-2 pb-3",children:[(0,c.jsx)(n1.Skeleton,{className:"h-4 w-5/6"}),(0,c.jsx)(n1.Skeleton,{className:"h-4 w-2/3"})]});let o=(0,ru.viewKindOf)(e);return(0,c.jsx)(rc.FileBody,{kind:o,content:"markdown"===o?rM(t):t,truncated:r,where:"inline"})}let rM=e=>e.replace(/^---\n[\s\S]*?\n---\n/,"").replace(/^\s*#[^\n]*\n?/,"");function rD({bot:e}){let{data:t,mutate:n}=(0,rg.useServerRoute)(E.queryKey.botMemory),[r]=(0,rv.useServerAction)(re,{onOk:()=>(0,rg.revalidate)(E.queryKey.botMemory)}),o=e?e.tokens.input+e.tokens.output:0;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(rl.SettingRailNote,{children:e?(0,c.jsxs)("span",{className:"font-mono text-[11px]",children:[e.name,e.disabled&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),"off"]}),(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),(0,c.jsx)("span",{title:`in ${(0,nz.formatCount)(e.tokens.input)} \xb7 out ${(0,nz.formatCount)(e.tokens.output)}`,children:o>0?`${(0,nz.formatCount)(o)} tokens`:"no tokens yet"}),(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),"since ",(0,rp.whenOf)(e.createdAt)]}):"Becomes a bot once it has a name and a model"}),(0,c.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:"Bots keep their own memory"}),(0,c.jsx)(n2.Switch,{checked:t??!0,disabled:void 0===t,onCheckedChange:e=>{n(e,!1),r(e)},"aria-label":"Bots keep their own memory"})]})}function rI(e){let t=Number(e.replace(/[^0-9.]/g,""));return Number.isFinite(t)&&t>0?Math.round(1e3*t):null}let rT=e=>1e3*Math.round((0,n6.compactAtFor)(e)/1e3);function rL({label:e,children:t}){return(0,c.jsxs)("div",{className:"flex gap-3",children:[(0,c.jsx)("span",{className:"w-20 shrink-0 pt-2 font-mono text-xs text-muted-foreground",children:e}),(0,c.jsx)("div",{className:"min-w-0 flex-1 space-y-1.5",children:t})]})}function r_({jobs:e}){return(0,c.jsxs)("div",{className:"pt-1",children:[(0,c.jsxs)("div",{className:"flex h-6 items-center",children:[(0,c.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:"Recent"}),(0,c.jsx)("span",{className:"flex-1"}),(0,c.jsxs)("button",{type:"button",onClick:()=>(0,rs.openSettings)("tasks"),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)(v.History,{className:"size-3"}),"History"]})]}),0===e.length?(0,c.jsx)("p",{className:"py-2 text-[13px] text-muted-foreground",children:"Nothing handed over yet."}):e.map(e=>{let t=function(e){switch(e.status){case"waiting":return{text:"waiting on you",tone:nz.WAITING_INK};case"running":return{text:"working",tone:"text-muted-foreground"};case"failed":return{text:"failed",tone:"text-destructive"};default:return{text:"done",tone:"text-muted-foreground"}}}(e);return(0,c.jsxs)("div",{className:"flex h-9 items-center gap-3 border-t border-border/60 text-[13px]",children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.label}),"running"===e.status?(0,c.jsx)(n0.ShinyText,{text:t.text,className:"shrink-0 font-mono text-[11px]"}):(0,c.jsx)("span",{className:(0,nz.cn)("shrink-0 font-mono text-[11px]",t.tone),children:t.text}),(0,c.jsx)("span",{className:"w-28 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:(0,rp.whenOf)(e.updatedAt)})]},e.id)})]})}function rF({name:e,icon:t,onChange:n}){return(0,c.jsxs)("div",{className:"flex flex-col items-center gap-4 pt-3 pb-2",children:[(0,c.jsx)(ro.BotMark,{size:112,...rA(e,t),className:"shrink-0"}),(0,c.jsx)(ra.MarkPalette,{color:t.color,themePicked:t.color===rx.MARK_SYSTEM,onTheme:()=>n({...t,color:rx.MARK_SYSTEM}),onPick:e=>n({...t,color:t.color===e?void 0:e})}),(0,c.jsxs)("div",{className:"flex gap-1",children:[rx.MARK_SHAPES.map(e=>(0,c.jsx)("button",{type:"button",onClick:()=>n({...t,shape:t.shape===e?void 0:e}),className:(0,nz.cn)("rounded-md px-2 py-1 font-mono text-[11px] capitalize transition-colors",t.shape===e?"bg-foreground text-background":"bg-muted text-muted-foreground hover:text-foreground"),children:e},e)),(0,c.jsx)("span",{className:"mx-1 w-px self-stretch bg-border/60"}),(0,c.jsx)("button",{type:"button",onClick:()=>n({...t,outline:!t.outline||void 0}),className:(0,nz.cn)("rounded-md px-2 py-1 font-mono text-[11px] transition-colors",t.outline?"bg-foreground text-background":"bg-muted text-muted-foreground hover:text-foreground"),children:"outline"})]})]})}function rB({selected:e,onChange:t}){let{data:n=[]}=(0,rg.useServerRoute)(E.queryKey.mcpTools),[r,o]=(0,w.useState)(!1),a=e.length>=rn.MAX_PINNED_TOOLS,i=[...new Set(n.map(e=>e.serverName))],l=e.map(e=>n.find(t=>t.id===e)).filter(e=>!!e),s=r?l:l.slice(0,4),d=l.length-s.length,f=n=>t(e.includes(n)?e.filter(e=>e!==n):[...e,n]);return 0===n.length?(0,c.jsx)("p",{className:"pt-1.5 text-xs text-muted-foreground",children:"Nothing to pin — connect an MCP server first (Settings › Connectors)."}):(0,c.jsxs)("div",{className:"space-y-2",children:[(0,c.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,c.jsx)(j.Button,{size:"icon-sm",variant:r?"secondary":"outline",onClick:()=>o(!r),"aria-label":"Pick tools",className:"border-dashed",children:(0,c.jsx)(b.Wrench,{})}),s.map(e=>(0,c.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-muted py-1 pr-1.5 pl-2.5 font-mono text-[11px]",children:[e.name,(0,c.jsx)("button",{type:"button","aria-label":`Unpin ${e.name}`,onClick:()=>f(e.id),className:"rounded-full p-0.5 text-muted-foreground transition-colors hover:bg-foreground/10 hover:text-foreground",children:(0,c.jsx)(y.X,{className:"size-3"})})]},e.id)),d>0&&(0,c.jsxs)("button",{type:"button",onClick:()=>o(!0),className:"rounded-full bg-muted px-2.5 py-1 font-mono text-[11px] text-muted-foreground transition-colors hover:text-foreground",children:["+",d]}),0===l.length&&(0,c.jsx)("span",{className:"text-xs text-muted-foreground",children:"Loaded from the start — everything else stays searchable"}),(0,c.jsx)("span",{className:"flex-1"}),(0,c.jsxs)("span",{className:(0,nz.cn)("font-mono text-[11px] text-muted-foreground",a&&"text-foreground"),children:[e.length,"/",rn.MAX_PINNED_TOOLS]})]}),r&&(0,c.jsxs)(nH,{className:"rounded-lg border border-input",children:[(0,c.jsx)(nX,{placeholder:"Search tools"}),(0,c.jsxs)(nY,{className:"max-h-44",children:[(0,c.jsx)(nG,{children:"Nothing matches"}),i.map(t=>(0,c.jsx)(nZ,{heading:t,children:n.filter(e=>e.serverName===t).map(t=>{let n=e.includes(t.id);return(0,c.jsxs)(nJ,{value:`${t.serverName}/${t.name}`,disabled:!n&&a,onSelect:()=>f(t.id),children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-xs",children:t.name}),n&&(0,c.jsx)(u.Check,{className:"size-3.5 shrink-0"})]},t.id)})},t))]})]})]})}e.s(["BotSetting",0,function(){let{data:e,isLoading:t,error:n}=(0,rg.useServerRoute)(E.queryKey.bot),r=e??[],{data:o}=(0,rg.useServerRoute)(E.queryKey.taskHistory(null)),a=o??[],[i,l]=(0,w.useState)(null),[s]=(0,w.useState)(rr.rollSeedColors);if(t)return(0,c.jsx)(rl.SettingPanesSkeleton,{});if(n)return(0,c.jsx)(rl.SettingError,{message:n.message});let u=i===rb,d=r.filter(e=>!e.disabled).length,f=new Set(r.map(e=>e.name)),m=rr.BOT_SEEDS.filter(e=>!f.has(e.name)),p=u?null:r.find(e=>e.name===i)??r[0]??null;return(0,c.jsx)(rl.SettingPanes,{footer:0===r.length?null:(0,c.jsx)(rD,{bot:p}),left:(0,c.jsxs)("div",{className:"flex flex-col py-2",children:[(0,c.jsxs)("div",{className:"mx-2 mb-1 flex items-center gap-1",children:[(0,c.jsxs)("button",{type:"button",onClick:()=>l(rb),className:(0,nz.cn)("flex flex-1 items-center gap-2 rounded-md px-2 py-1.5 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",u?"bg-secondary text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[(0,c.jsx)(g.Plus,{className:"size-3.5 shrink-0"}),"New bot"]}),r.length>0&&m.length>0&&(0,c.jsx)(rC,{missing:m,inks:s,have:f,onDone:e=>l(e)})]}),r.map(e=>(0,c.jsx)(ry,{bot:e,job:a.find(t=>t.bot===e.name)??null,active:!u&&e.name===p?.name,onPick:()=>l(e.name)},e.name)),d>n5.PROMPT_CROWDED.bots&&(0,c.jsxs)(rl.SettingNote,{className:"mx-3 mt-2 leading-relaxed",children:[d," bots are on. Each is a line in every prompt, and one more for Thursday to choose between."]})]}),right:u?(0,c.jsx)(rR,{jobs:[],onDone:e=>l(e),onCancel:()=>l(null)},"new"):p?(0,c.jsx)(rR,{bot:p,jobs:a.filter(e=>e.bot===p.name).slice(0,3),onDone:()=>l(null)},p.name):m.length>0?(0,c.jsx)(rS,{have:f,inks:s,onDone:e=>l(e)}):(0,c.jsxs)("div",{className:"space-y-4 p-8",children:[(0,c.jsx)("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"The agent talks; bots do the rest — search the web, draft a reply, check a schedule. Give one a job and a model, and work gets handed over mid-call while the conversation keeps going."}),(0,c.jsxs)(j.Button,{variant:"outline",onClick:()=>l(rb),children:[(0,c.jsx)(g.Plus,{}),"New bot"]})]})})}],507906)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,507906,e=>{"use strict";var t,n,r,o,a,i,l,s,c=e.i(843476),u=e.i(689664),d=e.i(867927),f=e.i(456420);let m={name:"circle-alert",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],aliases:["alert-circle"]};m.node;let p=(0,f.default)(m);var h=e.i(569644),v=e.i(779266),g=e.i(77071),x=e.i(759659),b=e.i(747925),y=e.i(263676),w=e.i(271645),E=e.i(798120),j=e.i(167881),k=/[\\\/_+.#"@\[\(\{&]/,S=/[\\\/_+.#"@\[\(\{&]/g,N=/[\s-]/,C=/[\s-]/g;function A(e){return e.toLowerCase().replace(C," ")}var R=Object.defineProperty,O=(e,t)=>R(e,"name",{value:t,configurable:!0}),P=!!("u">typeof window&&window.document&&window.document.createElement);function M(e,t,{checkForDefaultPrevented:n=!0}={}){return O(function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)},"handleEvent")}function D(e){if(!P)throw Error("Cannot access document outside of the DOM");return e?.ownerDocument??document}function I(e){return"IFRAME"===e.tagName}O(M,"composeEventHandlers"),O(function(e){if(!P)throw Error("Cannot access window outside of the DOM");return e?.ownerDocument?.defaultView??window},"getOwnerWindow"),O(D,"getOwnerDocument"),O(function e(t,n=!1){let{activeElement:r}=D(t);if(!r?.nodeName)return null;if(I(r)&&r.contentDocument)return e(r.contentDocument.body,n);if(n){let e=r.getAttribute("aria-activedescendant");if(e){let t=D(r).getElementById(e);if(t)return t}}return r},"getActiveElement"),O(I,"isFrame");var T=Object.defineProperty,L=(e,t)=>T(e,"name",{value:t,configurable:!0});function _(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function F(...e){return t=>{let n=!1,r=e.map(e=>{let r=_(e,t);return n||"function"!=typeof r||(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];"function"==typeof n?n():_(e[t],null)}}}}function B(...e){return w.useCallback(F(...e),e)}L(_,"setRef"),L(F,"composeRefs"),L(B,"useComposedRefs");var $=Object.defineProperty,z=(e,t)=>$(e,"name",{value:t,configurable:!0});function W(e,t=[]){let n=[];function r(t,r){let o=w.createContext(r);o.displayName=t+"Context";let a=n.length;n=[...n,r];let i=z(t=>{let{scope:n,children:r,...i}=t,l=n?.[e]?.[a]||o,s=w.useMemo(()=>i,Object.values(i));return(0,c.jsx)(l.Provider,{value:s,children:r})},"Provider");function l(n,i,s={}){let{optional:c=!1}=s,u=i?.[e]?.[a]||o,d=w.useContext(u);if(d)return d;if(void 0!==r)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return i.displayName=t+"Provider",z(l,"useContext"),[i,l]}z(r,"createContext");let o=z(()=>{let t=n.map(e=>w.createContext(e));return z(function(n){let r=n?.[e]||t;return w.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},"useScope")},"createScope");return o.scopeName=e,[r,K(o,...t)]}function K(...e){let t=e[0];if(1===e.length)return t;let n=z(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return z(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let o=n(e)[`__scope${r}`];return{...t,...o}},{});return w.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}z(function(e,t){let n=w.createContext(t);n.displayName=e+"Context";let r=z(e=>{let{children:t,...r}=e,o=w.useMemo(()=>r,Object.values(r));return(0,c.jsx)(n.Provider,{value:o,children:t})},"Provider");function o(r,a={}){let{optional:i=!1}=a,l=w.useContext(n);if(l)return l;if(void 0!==t)return t;if(!i)throw Error(`\`${r}\` must be used within \`${e}\``)}return r.displayName=e+"Provider",z(o,"useContext"),[r,o]},"createContext"),z(W,"createContextScope"),z(K,"composeContextScopes");var U=globalThis?.document?w.useLayoutEffect:()=>{},V=Object.defineProperty,q=w[" useId ".trim().toString()]||(()=>void 0),H=0;function X(e){let[t,n]=w.useState(q());return U(()=>{e||n(e=>e??String(H++))},[e]),e||(t?`radix-${t}`:"")}V(X,"name",{value:"useId",configurable:!0});var Y=Object.defineProperty,G=w[" useEffectEvent ".trim().toString()],Z=w[" useInsertionEffect ".trim().toString()];function J(e){if("function"==typeof G)return G(e);let t=w.useRef(()=>{throw Error("Cannot call an event handler while rendering.")});return"function"==typeof Z?Z(()=>{t.current=e}):U(()=>{t.current=e}),w.useMemo(()=>(...e)=>t.current?.(...e),[])}Y(J,"name",{value:"useEffectEvent",configurable:!0});var Q=Object.defineProperty,ee=(e,t)=>Q(e,"name",{value:t,configurable:!0}),et=w[" useInsertionEffect ".trim().toString()]||U;function en({prop:e,defaultProp:t,onChange:n=ee(()=>{},"onChange"),caller:r}){let[o,a,i]=er({defaultProp:t,onChange:n}),l=void 0!==e,s=l?e:o;return[s,w.useCallback(t=>{if(l){let n=eo(t)?t(e):t;n!==e&&i.current?.(n)}else a(t)},[l,e,a,i])]}function er({defaultProp:e,onChange:t}){let[n,r]=w.useState(e),o=w.useRef(n),a=w.useRef(t);return et(()=>{a.current=t},[t]),w.useEffect(()=>{o.current!==n&&(a.current?.(n),o.current=n)},[n,o]),[n,r,a]}function eo(e){return"function"==typeof e}ee(en,"useControllableState"),ee(er,"useUncontrolledState"),ee(eo,"isFunction");var ea=Symbol("RADIX:SYNC_STATE");ee(function(e,t,n,r){let{prop:o,defaultProp:a,onChange:i,caller:l}=t,s=void 0!==o,c=J(i),u=[{...n,state:a}];r&&u.push(r);let[d,f]=w.useReducer((t,n)=>{if(n.type===ea)return{...t,state:n.state};let r=e(t,n);return s&&!Object.is(r.state,t.state)&&c(r.state),r},...u),m=d.state,p=w.useRef(m);w.useEffect(()=>{p.current!==m&&(p.current=m,s||c(m))},[m,p,s]);let h=w.useMemo(()=>void 0!==o?{...d,state:o}:d,[d,o]);return w.useEffect(()=>{s&&!Object.is(o,d.state)&&f({type:ea,state:o})},[o,d.state,s]),[h,f]},"useControllableStateReducer");var ei=e.i(174080),el=Object.defineProperty,es=(e,t)=>el(e,"name",{value:t,configurable:!0});function ec(e){let t=w.forwardRef((t,n)=>{let{children:r,...o}=t,a=null,i=!1,l=[];ev(r)&&"function"==typeof ey&&(r=ey(r._payload)),w.Children.forEach(r,e=>{if(ep(e)){i=!0;let t="child"in e.props?e.props.child:e.props.children;ev(t)&&"function"==typeof ey&&(t=ey(t._payload)),a=ed(e,t),l.push(a?.props?.children)}else l.push(e)}),a?a=w.cloneElement(a,void 0,l):!i&&1===w.Children.count(r)&&w.isValidElement(r)&&(a=r);let s=a?em(a):void 0,c=B(n,s);if(!a){if(r||0===r)throw Error(i?eb(e):ex(e));return r}let u=ef(o,a.props??{});return a.type!==w.Fragment&&(u.ref=n?c:s),w.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}es(ec,"createSlot");var eu=Symbol.for("radix.slottable");es(function(e){let t=es(e=>"child"in e?e.children(e.child):e.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=eu,t},"createSlottable");var ed=es((e,t)=>{if("child"in e.props){let t=e.props.child;return w.isValidElement(t)?w.cloneElement(t,void 0,e.props.children(t.props.children)):null}return w.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function ef(e,t){let n={...t};for(let r in t){let o=e[r],a=t[r];/^on[A-Z]/.test(r)?o&&a?n[r]=(...e)=>{let t=a(...e);return o(...e),t}:o&&(n[r]=o):"style"===r?n[r]={...o,...a}:"className"===r&&(n[r]=[o,a].filter(Boolean).join(" "))}return{...e,...n}}function em(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(n=(t=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning)?e.props.ref:e.props.ref||e.ref}function ep(e){return w.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===eu}es(ef,"mergeProps"),es(em,"getElementRef"),es(ep,"isSlottable");var eh=Symbol.for("react.lazy");function ev(e){return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===eh&&"_payload"in e&&eg(e._payload)}function eg(e){return"object"==typeof e&&null!==e&&"then"in e}es(ev,"isLazyComponent"),es(eg,"isPromiseLike");var ex=es(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),eb=es(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),ey=w[" use ".trim().toString()],ew=Object.defineProperty,eE=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let n=ec(`Primitive.${t}`),r=w.forwardRef((e,r)=>{let{asChild:o,...a}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,c.jsx)(o?n:t,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function ej(e,t){e&&ei.flushSync(()=>e.dispatchEvent(t))}function ek(e){let t=w.useRef(e);return w.useEffect(()=>{t.current=e}),w.useMemo(()=>(...e)=>t.current?.(...e),[])}ew(ej,"name",{value:"dispatchDiscreteCustomEvent",configurable:!0}),(0,Object.defineProperty)(ek,"name",{value:"useCallbackRef",configurable:!0});var eS=Object.defineProperty,eN=(e,t)=>eS(e,"name",{value:t,configurable:!0}),eC="dismissableLayer.update",eA=w.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),eR=w.forwardRef(eN(function(e,t){let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:o,onPointerDownOutside:a,onFocusOutside:i,onInteractOutside:s,onDismiss:u,...d}=e,f=w.useContext(eA),[m,p]=w.useState(null),h=m?.ownerDocument??globalThis?.document,[,v]=w.useState({}),g=B(t,p),x=Array.from(f.layers),[b]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),y=b?x.indexOf(b):-1,E=m?x.indexOf(m):-1,j=f.layersWithOutsidePointerEventsDisabled.size>0,k=E>=y,S=w.useRef(!1),N=eM(e=>{a?.(e),s?.(e),e.defaultPrevented||u?.()},{ownerDocument:h,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:S,dismissableSurfaces:f.dismissableSurfaces,shouldHandlePointerDownOutside:w.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...f.branches].some(t=>t.contains(e));return k&&!t},[f.branches,k])}),C=eD(e=>{if(r&&S.current)return;let t=e.target;![...f.branches].some(e=>e.contains(t))&&(i?.(e),s?.(e),e.defaultPrevented||u?.())},h),A=!!m&&E===x.length-1,R=ek(e=>{"Escape"===e.key&&(o?.(e),!e.defaultPrevented&&u&&(e.preventDefault(),u()))});return w.useEffect(()=>{if(A)return h.addEventListener("keydown",R,{capture:!0}),()=>h.removeEventListener("keydown",R,{capture:!0})},[h,A,R]),w.useEffect(()=>{if(m)return n&&(0===f.layersWithOutsidePointerEventsDisabled.size&&(l=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(m)),f.layers.add(m),eI(),()=>{n&&(f.layersWithOutsidePointerEventsDisabled.delete(m),0===f.layersWithOutsidePointerEventsDisabled.size&&(h.body.style.pointerEvents=l))}},[m,h,n,f]),w.useEffect(()=>()=>{m&&(f.layers.delete(m),f.layersWithOutsidePointerEventsDisabled.delete(m),eI())},[m,f]),w.useEffect(()=>{let e=eN(()=>v({}),"handleUpdate");return document.addEventListener(eC,e),()=>document.removeEventListener(eC,e)},[]),(0,c.jsx)(eE.div,{...d,ref:g,style:{pointerEvents:j?k?"auto":"none":void 0,...e.style},onFocusCapture:M(e.onFocusCapture,C.onFocusCapture),onBlurCapture:M(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:M(e.onPointerDownCapture,N.onPointerDownCapture)})},"DismissableLayer"));function eO(){let e=w.useContext(eA),[t,n]=w.useState(null);return w.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}eN(eO,"useDismissableLayerSurface");var eP=eN(()=>!0,"IS_TRUE");function eM(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:a,shouldHandlePointerDownOutside:i=eP}=t,l=ek(e),s=w.useRef(!1),c=w.useRef(!1),u=w.useRef(new Map),d=w.useRef(()=>{});return w.useEffect(()=>{function e(){c.current=!1,o.current=!1,u.current.clear()}function t(){return Array.from(u.current.values()).some(Boolean)}function f(e){if(!c.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),"click"===e.type&&window.setTimeout(()=>{c.current&&d.current()},0)}function m(e){c.current&&u.current.set(e.type,!1)}eN(e,"resetOutsideInteraction"),eN(t,"isOutsideInteractionIntercepted"),eN(f,"handleInteractionCapture"),eN(m,"handleInteractionBubble");let p=eN(a=>{if(a.target&&!s.current){let f=function(){n.removeEventListener("click",d.current);let r=t();e(),r||eT("dismissableLayer.pointerDownOutside",l,m,{discrete:!0})};if(eN(f,"handleAndDispatchPointerDownOutsideEvent"),!i(a.target)){n.removeEventListener("click",d.current),e(),s.current=!1;return}let m={originalEvent:a};c.current=!0,o.current=r&&0===a.button,u.current.clear(),r&&0===a.button?(n.removeEventListener("click",d.current),d.current=f,n.addEventListener("click",d.current,{once:!0})):f()}else n.removeEventListener("click",d.current),e();s.current=!1},"handlePointerDown"),h=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(let e of h)n.addEventListener(e,f,!0),n.addEventListener(e,m);let v=window.setTimeout(()=>{n.addEventListener("pointerdown",p)},0);return()=>{for(let e of(window.clearTimeout(v),n.removeEventListener("pointerdown",p),n.removeEventListener("click",d.current),h))n.removeEventListener(e,f,!0),n.removeEventListener(e,m)}},[n,l,r,o,a,i]),{onPointerDownCapture:eN(()=>s.current=!0,"onPointerDownCapture")}}function eD(e,t=globalThis?.document){let n=ek(e),r=w.useRef(!1);return w.useEffect(()=>{let e=eN(e=>{e.target&&!r.current&&eT("dismissableLayer.focusOutside",n,{originalEvent:e},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",e),()=>t.removeEventListener("focusin",e)},[t,n]),{onFocusCapture:eN(()=>r.current=!0,"onFocusCapture"),onBlurCapture:eN(()=>r.current=!1,"onBlurCapture")}}function eI(){let e=new CustomEvent(eC);document.dispatchEvent(e)}function eT(e,t,n,{discrete:r}){let o=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?ej(o,a):o.dispatchEvent(a)}eN(eM,"usePointerDownOutside"),eN(eD,"useFocusOutside"),eN(eI,"dispatchUpdate"),eN(eT,"handleAndDispatchCustomEvent");var eL=Object.defineProperty,e_=(e,t)=>eL(e,"name",{value:t,configurable:!0}),eF="focusScope.autoFocusOnMount",eB="focusScope.autoFocusOnUnmount",e$={bubbles:!1,cancelable:!0},ez=w.forwardRef(e_(function(e,t){let{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:a,...i}=e,[l,s]=w.useState(null),u=ek(o),d=ek(a),f=w.useRef(null),m=B(t,s),p=w.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;w.useEffect(()=>{if(r){let e=function(e){if(p.paused||!l)return;let t=e.target;l.contains(t)?f.current=t:eX(f.current,{select:!0})},t=function(e){if(p.paused||!l)return;let t=e.relatedTarget;null!==t&&(l.contains(t)||eX(f.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&eX(l)};e_(e,"handleFocusIn"),e_(t,"handleFocusOut"),e_(n,"handleMutations"),document.addEventListener("focusin",e),document.addEventListener("focusout",t);let r=new MutationObserver(n);return l&&r.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),r.disconnect()}}},[r,l,p.paused]),w.useEffect(()=>{if(l){eY.add(p);let e=document.activeElement;if(!l.contains(e)){let t=new CustomEvent(eF,e$);l.addEventListener(eF,u),l.dispatchEvent(t),t.defaultPrevented||(eW(eJ(eU(l)),{select:!0}),document.activeElement===e&&eX(l))}return()=>{l.removeEventListener(eF,u),setTimeout(()=>{let t=new CustomEvent(eB,e$);l.addEventListener(eB,d),l.dispatchEvent(t),t.defaultPrevented||eX(e??document.body,{select:!0}),l.removeEventListener(eB,d),eY.remove(p)},0)}}},[l,u,d,p]);let h=w.useCallback(e=>{if(!n&&!r||p.paused)return;let t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,o=document.activeElement;if(t&&o){let t=e.currentTarget,[r,a]=eK(t);r&&a?e.shiftKey||o!==a?e.shiftKey&&o===r&&(e.preventDefault(),n&&eX(a,{select:!0})):(e.preventDefault(),n&&eX(r,{select:!0})):o===t&&e.preventDefault()}},[n,r,p.paused]);return(0,c.jsx)(eE.div,{tabIndex:-1,...i,ref:m,onKeyDown:h})},"FocusScope"));function eW(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(eX(r,{select:t}),document.activeElement!==n)return}function eK(e){let t=eU(e);return[eV(t,e),eV(t.reverse(),e)]}function eU(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e_(e=>{let t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;n.nextNode();)t.push(n.currentNode);return t}function eV(e,t){let n="function"==typeof t.checkVisibility&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):eq(r,{upTo:t})))return r}function eq(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e&&(void 0===t||e!==t);){if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}function eH(e){return e instanceof HTMLInputElement&&"select"in e}function eX(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&eH(e)&&t&&e.select()}}e_(eW,"focusFirst"),e_(eK,"getTabbableEdges"),e_(eU,"getTabbableCandidates"),e_(eV,"findVisible"),e_(eq,"isHidden"),e_(eH,"isSelectableInput"),e_(eX,"focus");var eY=eG();function eG(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),(e=eZ(e,t)).unshift(t)},remove(t){e=eZ(e,t),e[0]?.resume()}}}function eZ(e,t){let n=[...e],r=n.indexOf(t);return -1!==r&&n.splice(r,1),n}function eJ(e){return e.filter(e=>"A"!==e.tagName)}e_(eG,"createFocusScopesStack"),e_(eZ,"arrayRemove"),e_(eJ,"removeLinks");var eQ=Object.defineProperty,e0=w.forwardRef(eQ(function(e,t){let{container:n,...r}=e,[o,a]=w.useState(!1);U(()=>a(!0),[]);let i=n||o&&globalThis?.document?.body;return i?ei.createPortal((0,c.jsx)(eE.div,{...r,ref:t}),i):null},"name",{value:"Portal",configurable:!0})),e1=Object.defineProperty,e2=(e,t)=>e1(e,"name",{value:t,configurable:!0});function e3(e,t){return w.useReducer((e,n)=>t[e][n]??e,e)}e2(e3,"useStateMachine");var e5=e2(e=>{let{present:t,children:n}=e,r=e6(t),o="function"==typeof n?n({present:r.isPresent}):w.Children.only(n),a=e4(r.ref,e7(o));return"function"==typeof n||r.isPresent?w.cloneElement(o,{ref:a}):null},"Presence");function e6(e){let[t,n]=w.useState(),r=w.useRef(null),o=w.useRef(e),a=w.useRef("none"),i=w.useRef(void 0),[l,s]=e3(e?"mounted":"unmounted",{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return w.useEffect(()=>{"mounted"===l?(a.current=i.current??e8(r.current),i.current=void 0):a.current="none"},[l]),U(()=>{let t=r.current,n=o.current;if(n!==e){let r=a.current,l=e8(t);e?(i.current=l,s("MOUNT")):"none"===l||t?.display==="none"?s("UNMOUNT"):n&&r!==l?s("ANIMATION_OUT"):s("UNMOUNT"),o.current=e}},[e,s]),U(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,i=e2(a=>{let i=e8(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&i&&(s("ANIMATION_END"),!o.current)){let r=t.style.animationFillMode;t.style.animationFillMode="forwards",e=n.setTimeout(()=>{"forwards"===t.style.animationFillMode&&(t.style.animationFillMode=r)})}},"handleAnimationEnd"),l=e2(e=>{e.target===t&&(a.current=e8(r.current))},"handleAnimationStart");return t.addEventListener("animationstart",l),t.addEventListener("animationcancel",i),t.addEventListener("animationend",i),()=>{n.clearTimeout(e),t.removeEventListener("animationstart",l),t.removeEventListener("animationcancel",i),t.removeEventListener("animationend",i)}}s("ANIMATION_END")},[t,s]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:w.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,i.current=e8(t)}else r.current=null;n(e)},[])}}function e9(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function e4(...e){let t=w.useRef(e);return t.current=e,w.useCallback(e=>{let n=t.current,r=!1,o=n.map(t=>{let n=e9(t,e);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let e=0;e<o.length;e++){let t=o[e];"function"==typeof t?t():e9(n[e],null)}}},[])}function e8(e){return e?.animationName||"none"}function e7(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(n=(t=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning)?e.props.ref:e.props.ref||e.ref}e2(e6,"usePresence"),e2(e9,"setRef"),e2(e4,"useStableComposedRefs"),e2(e8,"getAnimationName"),e2(e7,"getElementRef");var te=Object.defineProperty,tt=(e,t)=>te(e,"name",{value:t,configurable:!0}),tn=0,tr=null;function to(){w.useEffect(()=>{tr||(tr={start:ta(),end:ta()});let{start:e,end:t}=tr;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),tn++,()=>{1===tn&&(tr?.start.remove(),tr?.end.remove(),tr=null),tn=Math.max(0,tn-1)}},[])}function ta(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}tt(function(e){return to(),e.children},"FocusGuards"),tt(to,"useFocusGuards"),tt(ta,"createFocusGuard");var ti=function(){return(ti=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function tl(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)0>t.indexOf(r[o])&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}var ts=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),tc="width-before-scroll-bar";function tu(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var td="u">typeof window?w.useLayoutEffect:w.useEffect,tf=new WeakMap,tm=(void 0===t&&(t={}),(void 0===n&&(n=function(e){return e}),r=[],o=!1,a={read:function(){if(o)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:null},useMedium:function(e){var t=n(e,o);return r.push(t),function(){r=r.filter(function(e){return e!==t})}},assignSyncMedium:function(e){for(o=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){o=!0;var t=[];if(r.length){var n=r;r=[],n.forEach(e),t=r}var a=function(){var n=t;t=[],n.forEach(e)},i=function(){return Promise.resolve().then(a)};i(),r={push:function(e){t.push(e),i()},filter:function(e){return t=t.filter(e),r}}}}).options=ti({async:!0,ssr:!1},t),a),tp=function(){},th=w.forwardRef(function(e,t){var n,r,o,a,i=w.useRef(null),l=w.useState({onScrollCapture:tp,onWheelCapture:tp,onTouchMoveCapture:tp}),s=l[0],c=l[1],u=e.forwardProps,d=e.children,f=e.className,m=e.removeScrollBar,p=e.enabled,h=e.shards,v=e.sideCar,g=e.noRelative,x=e.noIsolation,b=e.inert,y=e.allowPinchZoom,E=e.as,j=e.gapMode,k=tl(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=(n=[i,t],r=function(e){return n.forEach(function(t){return tu(t,e)})},(o=(0,w.useState)(function(){return{value:null,callback:r,facade:{get current(){return o.value},set current(value){var e=o.value;e!==value&&(o.value=value,o.callback(value,e))}}}})[0]).callback=r,a=o.facade,td(function(){var e=tf.get(a);if(e){var t=new Set(e),r=new Set(n),o=a.current;t.forEach(function(e){r.has(e)||tu(e,null)}),r.forEach(function(e){t.has(e)||tu(e,o)})}tf.set(a,n)},[n]),a),N=ti(ti({},k),s);return w.createElement(w.Fragment,null,p&&w.createElement(v,{sideCar:tm,removeScrollBar:m,shards:h,noRelative:g,noIsolation:x,inert:b,setCallbacks:c,allowPinchZoom:!!y,lockRef:i,gapMode:j}),u?w.cloneElement(w.Children.only(d),ti(ti({},N),{ref:S})):w.createElement(void 0===E?"div":E,ti({},N,{className:f,ref:S}),d))});th.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},th.classNames={fullWidth:tc,zeroRight:ts};var tv=function(e){var t=e.sideCar,n=tl(e,["sideCar"]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error("Sidecar medium not found");return w.createElement(r,ti({},n))};tv.isSideCarExport=!0;var tg=function(){var e=0,t=null;return{add:function(n){if(0==e&&(t=function(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=s||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return t&&e.setAttribute("nonce",t),e}())){var r,o;(r=t).styleSheet?r.styleSheet.cssText=n:r.appendChild(document.createTextNode(n)),o=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(o)}e++},remove:function(){--e||!t||(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},tx=function(){var e=tg();return function(t,n){w.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},tb=function(){var e=tx();return function(t){return e(t.styles,t.dynamic),null}},ty={left:0,top:0,right:0,gap:0},tw=function(e){return parseInt(e||"",10)||0},tE=function(e){var t=window.getComputedStyle(document.body),n=t["padding"===e?"paddingLeft":"marginLeft"],r=t["padding"===e?"paddingTop":"marginTop"],o=t["padding"===e?"paddingRight":"marginRight"];return[tw(n),tw(r),tw(o)]},tj=function(e){if(void 0===e&&(e="margin"),"u"<typeof window)return ty;var t=tE(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},tk=tb(),tS="data-scroll-locked",tN=function(e,t,n,r){var o=e.left,a=e.top,i=e.right,l=e.gap;return void 0===n&&(n="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(r,";\n padding-right: ").concat(l,"px ").concat(r,";\n }\n body[").concat(tS,"] {\n overflow: hidden ").concat(r,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(r,";"),"margin"===n&&"\n padding-left: ".concat(o,"px;\n padding-top: ").concat(a,"px;\n padding-right: ").concat(i,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(l,"px ").concat(r,";\n "),"padding"===n&&"padding-right: ".concat(l,"px ").concat(r,";")].filter(Boolean).join(""),"\n }\n \n .").concat(ts," {\n right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(tc," {\n margin-right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(ts," .").concat(ts," {\n right: 0 ").concat(r,";\n }\n \n .").concat(tc," .").concat(tc," {\n margin-right: 0 ").concat(r,";\n }\n \n body[").concat(tS,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(l,"px;\n }\n")},tC=function(){var e=parseInt(document.body.getAttribute(tS)||"0",10);return isFinite(e)?e:0},tA=function(){w.useEffect(function(){return document.body.setAttribute(tS,(tC()+1).toString()),function(){var e=tC()-1;e<=0?document.body.removeAttribute(tS):document.body.setAttribute(tS,e.toString())}},[])},tR=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=void 0===r?"margin":r;tA();var a=w.useMemo(function(){return tj(o)},[o]);return w.createElement(tk,{styles:tN(a,!t,o,n?"":"!important")})},tO=!1;if("u">typeof window)try{var tP=Object.defineProperty({},"passive",{get:function(){return tO=!0,!0}});window.addEventListener("test",tP,tP),window.removeEventListener("test",tP,tP)}catch(e){tO=!1}var tM=!!tO&&{passive:!1},tD=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return"hidden"!==n[t]&&(n.overflowY!==n.overflowX||"TEXTAREA"===e.tagName||"visible"!==n[t])},tI=function(e,t){var n=t.ownerDocument,r=t;do{if("u">typeof ShadowRoot&&r instanceof ShadowRoot&&(r=r.host),tT(e,r)){var o=tL(e,r);if(o[1]>o[2])return!0}r=r.parentNode}while(r&&r!==n.body)return!1},tT=function(e,t){return"v"===e?tD(t,"overflowY"):tD(t,"overflowX")},tL=function(e,t){return"v"===e?[t.scrollTop,t.scrollHeight,t.clientHeight]:[t.scrollLeft,t.scrollWidth,t.clientWidth]},t_=function(e,t,n,r,o){var a,i=(a=window.getComputedStyle(t).direction,"h"===e&&"rtl"===a?-1:1),l=i*r,s=n.target,c=t.contains(s),u=!1,d=l>0,f=0,m=0;do{if(!s)break;var p=tL(e,s),h=p[0],v=p[1]-p[2]-i*h;(h||v)&&tT(e,s)&&(f+=v,m+=h);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s))return d&&(o&&1>Math.abs(f)||!o&&l>f)?u=!0:!d&&(o&&1>Math.abs(m)||!o&&-l>m)&&(u=!0),u},tF=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},tB=function(e){return[e.deltaX,e.deltaY]},t$=function(e){return e&&"current"in e?e.current:e},tz=0,tW=[];let tK=(i=function(e){var t=w.useRef([]),n=w.useRef([0,0]),r=w.useRef(),o=w.useState(tz++)[0],a=w.useState(tb)[0],i=w.useRef(e);w.useEffect(function(){i.current=e},[e]),w.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=(function(e,t,n){if(n||2==arguments.length)for(var r,o=0,a=t.length;o<a;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))})([e.lockRef.current],(e.shards||[]).map(t$),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach(function(e){return e.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=w.useCallback(function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!i.current.allowPinchZoom;var o,a=tF(e),l=n.current,s="deltaX"in e?e.deltaX:l[0]-a[0],c="deltaY"in e?e.deltaY:l[1]-a[1],u=e.target,d=Math.abs(s)>Math.abs(c)?"h":"v";if("touches"in e&&"h"===d&&"range"===u.type)return!1;var f=window.getSelection(),m=f&&f.anchorNode;if(m&&(m===u||m.contains(u)))return!1;var p=tI(d,u);if(!p)return!0;if(p?o=d:(o="v"===d?"h":"v",p=tI(d,u)),!p)return!1;if(!r.current&&"changedTouches"in e&&(s||c)&&(r.current=o),!o)return!0;var h=r.current||o;return t_(h,t,e,"h"===h?s:c,!0)},[]),s=w.useCallback(function(e){if(tW.length&&tW[tW.length-1]===a){var n="deltaY"in e?tB(e):tF(e),r=t.current.filter(function(t){var r;return t.name===e.type&&(t.target===e.target||e.target===t.shadowParent)&&(r=t.delta,r[0]===n[0]&&r[1]===n[1])})[0];if(r&&r.should){e.cancelable&&e.preventDefault();return}if(!r){var o=(i.current.shards||[]).map(t$).filter(Boolean).filter(function(t){return t.contains(e.target)});(o.length>0?l(e,o[0]):!i.current.noIsolation)&&e.cancelable&&e.preventDefault()}}},[]),c=w.useCallback(function(e,n,r,o){var a={name:e,delta:n,target:r,should:o,shadowParent:function(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=w.useCallback(function(e){n.current=tF(e),r.current=void 0},[]),d=w.useCallback(function(t){c(t.type,tB(t),t.target,l(t,e.lockRef.current))},[]),f=w.useCallback(function(t){c(t.type,tF(t),t.target,l(t,e.lockRef.current))},[]);w.useEffect(function(){return tW.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener("wheel",s,tM),document.addEventListener("touchmove",s,tM),document.addEventListener("touchstart",u,tM),function(){tW=tW.filter(function(e){return e!==a}),document.removeEventListener("wheel",s,tM),document.removeEventListener("touchmove",s,tM),document.removeEventListener("touchstart",u,tM)}},[]);var m=e.removeScrollBar,p=e.inert;return w.createElement(w.Fragment,null,p?w.createElement(a,{styles:"\n .block-interactivity-".concat(o," {pointer-events: none;}\n .allow-interactivity-").concat(o," {pointer-events: all;}\n")}):null,m?w.createElement(tR,{noRelative:e.noRelative,gapMode:e.gapMode}):null)},tm.useMedium(i),tv);var tU=w.forwardRef(function(e,t){return w.createElement(th,ti({},e,{ref:t,sideCar:tK}))});tU.classNames=th.classNames;var tV=new WeakMap,tq=new WeakMap,tH={},tX=0,tY=function(e){return e&&(e.host||tY(e.parentNode))},tG=function(e,t,n,r){var o=(Array.isArray(e)?e:[e]).map(function(e){if(t.contains(e))return e;var n=tY(e);return n&&t.contains(n)?n:(console.error("aria-hidden",e,"in not contained inside",t,". Doing nothing"),null)}).filter(function(e){return!!e});tH[n]||(tH[n]=new WeakMap);var a=tH[n],i=[],l=new Set,s=new Set(o),c=function(e){!e||l.has(e)||(l.add(e),c(e.parentNode))};o.forEach(c);var u=function(e){!e||s.has(e)||Array.prototype.forEach.call(e.children,function(e){if(l.has(e))u(e);else try{var t=e.getAttribute(r),o=null!==t&&"false"!==t,s=(tV.get(e)||0)+1,c=(a.get(e)||0)+1;tV.set(e,s),a.set(e,c),i.push(e),1===s&&o&&tq.set(e,!0),1===c&&e.setAttribute(n,"true"),o||e.setAttribute(r,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}})};return u(t),l.clear(),tX++,function(){i.forEach(function(e){var t=tV.get(e)-1,o=a.get(e)-1;tV.set(e,t),a.set(e,o),t||(tq.has(e)||e.removeAttribute(r),tq.delete(e)),o||e.removeAttribute(n)}),--tX||(tV=new WeakMap,tV=new WeakMap,tq=new WeakMap,tH={})}},tZ=function(e,t,n){void 0===n&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=t||("u"<typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),tG(r,o,n,"aria-hidden")):function(){return null}},tJ=Object.defineProperty,tQ=(e,t)=>tJ(e,"name",{value:t,configurable:!0}),t0="Dialog",[t1,t2]=W(t0),[t3,t5]=t1(t0),t6=tQ(e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:a,modal:i=!0}=e,l=w.useRef(null),s=w.useRef(null),[u,d]=en({prop:r,defaultProp:o??!1,onChange:a,caller:t0}),[f,m]=w.useState(0),[p,h]=w.useState(0);return(0,c.jsx)(t3,{scope:t,triggerRef:l,contentRef:s,contentId:X(),titleId:X(),descriptionId:X(),titlePresent:f>0,descriptionPresent:p>0,setTitleCount:m,setDescriptionCount:h,open:u,onOpenChange:d,onOpenToggle:w.useCallback(()=>d(e=>!e),[d]),modal:i,children:n})},"Dialog"),t9="DialogPortal",[t4,t8]=t1(t9,{forceMount:void 0}),t7=tQ(e=>{let{__scopeDialog:t,forceMount:n,children:r,container:o}=e,a=t5(t9,t);return(0,c.jsx)(t4,{scope:t,forceMount:n,children:w.Children.map(r,e=>(0,c.jsx)(e5,{present:n||a.open,children:(0,c.jsx)(e0,{asChild:!0,container:o,children:e})}))})},"DialogPortal"),ne="DialogOverlay",nt=w.forwardRef(tQ(function(e,t){let n=t8(ne,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=t5(ne,e.__scopeDialog);return a.modal?(0,c.jsx)(e5,{present:r||a.open,children:(0,c.jsx)(nr,{...o,ref:t})}):null},"DialogOverlay")),nn=ec("DialogOverlay.RemoveScroll"),nr=w.forwardRef(tQ(function(e,t){let{__scopeDialog:n,...r}=e,o=t5(ne,n),a=B(t,eO());return(0,c.jsx)(tU,{as:nn,allowPinchZoom:!0,shards:[o.contentRef],children:(0,c.jsx)(eE.div,{"data-state":nc(o.open),...r,ref:a,style:{pointerEvents:"auto",...r.style}})})},"DialogOverlayImpl")),no="DialogContent",na=w.forwardRef(tQ(function(e,t){let n=t8(no,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=t5(no,e.__scopeDialog);return(0,c.jsx)(e5,{present:r||a.open,children:a.modal?(0,c.jsx)(ni,{...o,ref:t}):(0,c.jsx)(nl,{...o,ref:t})})},"DialogContent")),ni=w.forwardRef(tQ(function(e,t){let n=t5(no,e.__scopeDialog),r=w.useRef(null),o=B(t,n.contentRef,r);return w.useEffect(()=>{let e=r.current;if(e)return tZ(e)},[]),(0,c.jsx)(ns,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:M(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:M(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:M(e.onFocusOutside,e=>e.preventDefault())})},"DialogContentModal")),nl=w.forwardRef(tQ(function(e,t){let n=t5(no,e.__scopeDialog),r=w.useRef(!1),o=w.useRef(!1);return(0,c.jsx)(ns,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,"pointerdown"===t.detail.originalEvent.type&&(o.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&o.current&&t.preventDefault()}})},"DialogContentNonModal")),ns=w.forwardRef(tQ(function(e,t){let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:a,...i}=e,l=t5(no,n);return to(),(0,c.jsx)(c.Fragment,{children:(0,c.jsx)(ez,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:a,children:(0,c.jsx)(eR,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionPresent?l.descriptionId:void 0,"aria-labelledby":l.titlePresent?l.titleId:void 0,"data-state":nc(l.open),...i,ref:t,deferPointerDownOutside:!0,onDismiss:()=>l.onOpenChange(!1)})})})},"DialogContentImpl"));function nc(e){return e?"open":"closed"}tQ(nc,"getState");var nu='[cmdk-group=""]',nd='[cmdk-group-items=""]',nf='[cmdk-item=""]',nm=`${nf}:not([aria-disabled="true"])`,np="cmdk-item-select",nh="data-value",nv=(e,t,n)=>{var r;return r=e,function e(t,n,r,o,a,i,l){if(i===n.length)return a===t.length?1:.99;var s=`${a},${i}`;if(void 0!==l[s])return l[s];for(var c,u,d,f,m=o.charAt(i),p=r.indexOf(m,a),h=0;p>=0;)(c=e(t,n,r,o,p+1,i+1,l))>h&&(p===a?c*=1:k.test(t.charAt(p-1))?(c*=.8,(d=t.slice(a,p-1).match(S))&&a>0&&(c*=Math.pow(.999,d.length))):N.test(t.charAt(p-1))?(c*=.9,(f=t.slice(a,p-1).match(C))&&a>0&&(c*=Math.pow(.999,f.length))):(c*=.17,a>0&&(c*=Math.pow(.999,p-a))),t.charAt(p)!==n.charAt(i)&&(c*=.9999)),(c<.1&&r.charAt(p-1)===o.charAt(i+1)||o.charAt(i+1)===o.charAt(i)&&r.charAt(p-1)!==o.charAt(i))&&.1*(u=e(t,n,r,o,p+1,i+2,l))>c&&(c=.1*u),c>h&&(h=c),p=r.indexOf(m,p+1);return l[s]=h,h}(r=n&&n.length>0?`${r+" "+n.join(" ")}`:r,t,A(r),A(t),0,0,{})},ng=w.createContext(void 0),nx=w.createContext(void 0),nb=w.createContext(void 0),ny=w.forwardRef((e,t)=>{let n=nO(()=>{var t,n;return{search:"",value:null!=(n=null!=(t=e.value)?t:e.defaultValue)?n:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),r=nO(()=>new Set),o=nO(()=>new Map),a=nO(()=>new Map),i=nO(()=>new Set),l=nA(e),{label:s,children:c,value:u,onValueChange:d,filter:f,shouldFilter:m,loop:p,disablePointerSelection:h=!1,vimBindings:v=!0,...g}=e,x=X(),b=X(),y=X(),E=w.useRef(null),j=nD();nR(()=>{if(void 0!==u){let e=u.trim();n.current.value=e,k.emit()}},[u]),nR(()=>{j(6,O)},[]);let k=w.useMemo(()=>({subscribe:e=>(i.current.add(e),()=>i.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var o,a,i,s;if(!Object.is(n.current[e],t)){if(n.current[e]=t,"search"===e)R(),C(),j(1,A);else if("value"===e){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let e=document.getElementById(y);e?e.focus():null==(o=document.getElementById(x))||o.focus()}if(j(7,()=>{var e;n.current.selectedItemId=null==(e=P())?void 0:e.id,k.emit()}),r||j(5,O),(null==(a=l.current)?void 0:a.value)!==void 0){null==(s=(i=l.current).onValueChange)||s.call(i,null!=t?t:"");return}}k.emit()}},emit:()=>{i.current.forEach(e=>e())}}),[]),S=w.useMemo(()=>({value:(e,t,r)=>{var o;t!==(null==(o=a.current.get(e))?void 0:o.value)&&(a.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,N(t,r)),j(2,()=>{C(),k.emit()}))},item:(e,t)=>(r.current.add(e),t&&(o.current.has(t)?o.current.get(t).add(e):o.current.set(t,new Set([e]))),j(3,()=>{R(),C(),n.current.value||A(),k.emit()}),()=>{a.current.delete(e),r.current.delete(e),n.current.filtered.items.delete(e);let t=P();j(4,()=>{R(),(null==t?void 0:t.getAttribute("id"))===e&&A(),k.emit()})}),group:e=>(o.current.has(e)||o.current.set(e,new Set),()=>{a.current.delete(e),o.current.delete(e)}),filter:()=>l.current.shouldFilter,label:s||e["aria-label"],getDisablePointerSelection:()=>l.current.disablePointerSelection,listId:x,inputId:y,labelId:b,listInnerRef:E}),[]);function N(e,t){var r,o;let a=null!=(o=null==(r=l.current)?void 0:r.filter)?o:nv;return e?a(e,n.current.search,t):0}function C(){if(!n.current.search||!1===l.current.shouldFilter)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=o.current.get(n),a=0;r.forEach(t=>{a=Math.max(e.get(t),a)}),t.push([n,a])});let r=E.current;M().sort((t,n)=>{var r,o;let a=t.getAttribute("id"),i=n.getAttribute("id");return(null!=(r=e.get(i))?r:0)-(null!=(o=e.get(a))?o:0)}).forEach(e=>{let t=e.closest(nd);t?t.appendChild(e.parentElement===t?e:e.closest(`${nd} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${nd} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{var t;let n=null==(t=E.current)?void 0:t.querySelector(`${nu}[${nh}="${encodeURIComponent(e[0])}"]`);null==n||n.parentElement.appendChild(n)})}function A(){let e=M().find(e=>"true"!==e.getAttribute("aria-disabled")),t=null==e?void 0:e.getAttribute(nh);k.setState("value",t||void 0)}function R(){var e,t,i,s;if(!n.current.search||!1===l.current.shouldFilter){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let c=0;for(let o of r.current){let r=N(null!=(t=null==(e=a.current.get(o))?void 0:e.value)?t:"",null!=(s=null==(i=a.current.get(o))?void 0:i.keywords)?s:[]);n.current.filtered.items.set(o,r),r>0&&c++}for(let[e,t]of o.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=c}function O(){var e,t,n;let r=P();r&&((null==(e=r.parentElement)?void 0:e.firstChild)===r&&(null==(n=null==(t=r.closest(nu))?void 0:t.querySelector('[cmdk-group-heading=""]'))||n.scrollIntoView({block:"nearest"})),r.scrollIntoView({block:"nearest"}))}function P(){var e;return null==(e=E.current)?void 0:e.querySelector(`${nf}[aria-selected="true"]`)}function M(){var e;return Array.from((null==(e=E.current)?void 0:e.querySelectorAll(nm))||[])}function D(e){let t=M()[e];t&&k.setState("value",t.getAttribute(nh))}function I(e){var t;let n=P(),r=M(),o=r.findIndex(e=>e===n),a=r[o+e];null!=(t=l.current)&&t.loop&&(a=o+e<0?r[r.length-1]:o+e===r.length?r[0]:r[o+e]),a&&k.setState("value",a.getAttribute(nh))}function T(e){let t=P(),n=null==t?void 0:t.closest(nu),r;for(;n&&!r;)r=null==(n=e>0?function(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}(n,nu):function(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}(n,nu))?void 0:n.querySelector(nm);r?k.setState("value",r.getAttribute(nh)):I(e)}let L=()=>D(M().length-1),_=e=>{e.preventDefault(),e.metaKey?L():e.altKey?T(1):I(1)},F=e=>{e.preventDefault(),e.metaKey?D(0):e.altKey?T(-1):I(-1)};return w.createElement(eE.div,{ref:t,tabIndex:-1,...g,"cmdk-root":"",onKeyDown:e=>{var t;null==(t=g.onKeyDown)||t.call(g,e);let n=e.nativeEvent.isComposing||229===e.keyCode;if(!(e.defaultPrevented||n))switch(e.key){case"n":case"j":v&&e.ctrlKey&&_(e);break;case"ArrowDown":_(e);break;case"p":case"k":v&&e.ctrlKey&&F(e);break;case"ArrowUp":F(e);break;case"Home":e.preventDefault(),D(0);break;case"End":e.preventDefault(),L();break;case"Enter":{e.preventDefault();let t=P();if(t){let e=new Event(np);t.dispatchEvent(e)}}}}},w.createElement("label",{"cmdk-label":"",htmlFor:S.inputId,id:S.labelId,style:nT},s),nI(e,e=>w.createElement(nx.Provider,{value:k},w.createElement(ng.Provider,{value:S},e))))}),nw=w.forwardRef((e,t)=>{var n,r;let o=X(),a=w.useRef(null),i=w.useContext(nb),l=w.useContext(ng),s=nA(e),c=null!=(r=null==(n=s.current)?void 0:n.forceMount)?r:null==i?void 0:i.forceMount;nR(()=>{if(!c)return l.item(o,null==i?void 0:i.id)},[c]);let u=nM(o,a,[e.value,e.children,a],e.keywords),d=w.useContext(nx),f=nP(e=>e.value&&e.value===u.current),m=nP(e=>!!c||!1===l.filter()||!e.search||e.filtered.items.get(o)>0);function p(){var e,t;h(),null==(t=(e=s.current).onSelect)||t.call(e,u.current)}function h(){d.setState("value",u.current,!0)}if(w.useEffect(()=>{let t=a.current;if(!(!t||e.disabled))return t.addEventListener(np,p),()=>t.removeEventListener(np,p)},[m,e.onSelect,e.disabled]),!m)return null;let{disabled:v,value:g,onSelect:x,forceMount:b,keywords:y,...E}=e;return w.createElement(eE.div,{ref:F(a,t),...E,id:o,"cmdk-item":"",role:"option","aria-disabled":!!v,"aria-selected":!!f,"data-disabled":!!v,"data-selected":!!f,onPointerMove:v||l.getDisablePointerSelection()?void 0:h,onClick:v?void 0:p},e.children)}),nE=w.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:o,...a}=e,i=X(),l=w.useRef(null),s=w.useRef(null),c=X(),u=w.useContext(ng),d=nP(e=>!!o||!1===u.filter()||!e.search||e.filtered.groups.has(i));nR(()=>u.group(i),[]),nM(i,l,[e.value,e.heading,s]);let f=w.useMemo(()=>({id:i,forceMount:o}),[o]);return w.createElement(eE.div,{ref:F(l,t),...a,"cmdk-group":"",role:"presentation",hidden:!d||void 0},n&&w.createElement("div",{ref:s,"cmdk-group-heading":"","aria-hidden":!0,id:c},n),nI(e,e=>w.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?c:void 0},w.createElement(nb.Provider,{value:f},e))))}),nj=w.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,o=w.useRef(null),a=nP(e=>!e.search);return n||a?w.createElement(eE.div,{ref:F(o,t),...r,"cmdk-separator":"",role:"separator"}):null}),nk=w.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,o=null!=e.value,a=w.useContext(nx),i=nP(e=>e.search),l=nP(e=>e.selectedItemId),s=w.useContext(ng);return w.useEffect(()=>{null!=e.value&&a.setState("search",e.value)},[e.value]),w.createElement(eE.input,{ref:t,...r,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":s.listId,"aria-labelledby":s.labelId,"aria-activedescendant":l,id:s.inputId,type:"text",value:o?e.value:i,onChange:e=>{o||a.setState("search",e.target.value),null==n||n(e.target.value)}})}),nS=w.forwardRef((e,t)=>{let{children:n,label:r="Suggestions",...o}=e,a=w.useRef(null),i=w.useRef(null),l=nP(e=>e.selectedItemId),s=w.useContext(ng);return w.useEffect(()=>{if(i.current&&a.current){let e=i.current,t=a.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty("--cmdk-list-height",n.toFixed(1)+"px")})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),w.createElement(eE.div,{ref:F(a,t),...o,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":l,"aria-label":r,id:s.listId},nI(e,e=>w.createElement("div",{ref:F(i,s.listInnerRef),"cmdk-list-sizer":""},e)))}),nN=w.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:o,contentClassName:a,container:i,...l}=e;return w.createElement(t6,{open:n,onOpenChange:r},w.createElement(t7,{container:i},w.createElement(nt,{"cmdk-overlay":"",className:o}),w.createElement(na,{"aria-label":e.label,"cmdk-dialog":"",className:a},w.createElement(ny,{ref:t,...l}))))}),nC=Object.assign(ny,{List:nS,Item:nw,Input:nk,Group:nE,Separator:nj,Dialog:nN,Empty:w.forwardRef((e,t)=>nP(e=>0===e.filtered.count)?w.createElement(eE.div,{ref:t,...e,"cmdk-empty":"",role:"presentation"}):null),Loading:w.forwardRef((e,t)=>{let{progress:n,children:r,label:o="Loading...",...a}=e;return w.createElement(eE.div,{ref:t,...a,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":o},nI(e,e=>w.createElement("div",{"aria-hidden":!0},e)))})});function nA(e){let t=w.useRef(e);return nR(()=>{t.current=e}),t}var nR="u"<typeof window?w.useEffect:w.useLayoutEffect;function nO(e){let t=w.useRef();return void 0===t.current&&(t.current=e()),t}function nP(e){let t=w.useContext(nx),n=()=>e(t.snapshot());return w.useSyncExternalStore(t.subscribe,n,n)}function nM(e,t,n,r=[]){let o=w.useRef(),a=w.useContext(ng);return nR(()=>{var i;let l=(()=>{var e;for(let t of n){if("string"==typeof t)return t.trim();if("object"==typeof t&&"current"in t)return t.current?null==(e=t.current.textContent)?void 0:e.trim():o.current}})(),s=r.map(e=>e.trim());a.value(e,l,s),null==(i=t.current)||i.setAttribute(nh,l),o.current=l}),o}var nD=()=>{let[e,t]=w.useState(),n=nO(()=>new Map);return nR(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function nI({asChild:e,children:t},n){let r;return e&&w.isValidElement(t)?w.cloneElement("function"==typeof(r=t.type)?r(t.props):"render"in r?r.render(t.props):t,{ref:t.ref},n(t.props.children)):n(t)}var nT={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"},nL=e.i(593698),n_=e.i(630299),n_=n_;e.i(630374);var nF=e.i(225913),nB=e.i(23750),n$=e.i(184762),nz=e.i(647163);function nW({className:e,...t}){return(0,c.jsx)("div",{"data-slot":"input-group",role:"group",className:(0,nz.cn)("group/input-group relative flex h-8 w-full min-w-0 items-center rounded-lg border border-input transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-disabled:bg-input/50 has-disabled:opacity-50 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-disabled:bg-input/80 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",e),...t})}let nK=(0,nF.cva)("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4",{variants:{align:{"inline-start":"order-first pl-2 has-[>button]:ml-[-0.3rem] has-[>kbd]:ml-[-0.15rem]","inline-end":"order-last pr-2 has-[>button]:mr-[-0.3rem] has-[>kbd]:mr-[-0.15rem]","block-start":"order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2","block-end":"order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"}},defaultVariants:{align:"inline-start"}});function nU({className:e,align:t="inline-start",...n}){return(0,c.jsx)("div",{role:"group","data-slot":"input-group-addon","data-align":t,className:(0,nz.cn)(nK({align:t}),e),onClick:e=>{e.target.closest("button")||e.currentTarget.parentElement?.querySelector("input")?.focus()},...n})}function nV({className:e,...t}){return(0,c.jsx)("span",{className:(0,nz.cn)("flex items-center gap-2 text-sm text-muted-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",e),...t})}function nq({className:e,...t}){return(0,c.jsx)(nB.Input,{"data-slot":"input-group-control",className:(0,nz.cn)("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent",e),...t})}function nH({className:e,...t}){return(0,c.jsx)(nC,{"data-slot":"command",className:(0,nz.cn)("flex size-full flex-col overflow-hidden rounded-xl! bg-popover p-1 text-popover-foreground",e),...t})}function nX({className:e,...t}){return(0,c.jsx)("div",{"data-slot":"command-input-wrapper",className:"p-1 pb-0",children:(0,c.jsxs)(nW,{className:"h-8! rounded-lg! border-input/30 bg-input/30 shadow-none! *:data-[slot=input-group-addon]:pl-2!",children:[(0,c.jsx)(nC.Input,{"data-slot":"command-input",className:(0,nz.cn)("w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",e),...t}),(0,c.jsx)(nU,{children:(0,c.jsx)(n_.default,{className:"size-4 shrink-0 opacity-50"})})]})})}function nY({className:e,...t}){return(0,c.jsx)(nC.List,{"data-slot":"command-list",className:(0,nz.cn)("no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none",e),...t})}function nG({className:e,...t}){return(0,c.jsx)(nC.Empty,{"data-slot":"command-empty",className:(0,nz.cn)("py-6 text-center text-sm",e),...t})}function nZ({className:e,...t}){return(0,c.jsx)(nC.Group,{"data-slot":"command-group",className:(0,nz.cn)("overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground",e),...t})}function nJ({className:e,children:t,...n}){return(0,c.jsxs)(nC.Item,{"data-slot":"command-item",className:(0,nz.cn)("group/command-item relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none in-data-[slot=dialog-content]:rounded-lg! data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-selected:*:[svg]:text-foreground",e),...n,children:[t,(0,c.jsx)(nL.CheckIcon,{className:"ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100"})]})}(0,nF.cva)("flex items-center gap-2 text-sm shadow-none",{variants:{size:{xs:"h-6 gap-1 rounded-[calc(var(--radius)-3px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5",sm:"","icon-xs":"size-6 rounded-[calc(var(--radius)-3px)] p-0 has-[>svg]:p-0","icon-sm":"size-8 p-0 has-[>svg]:p-0"}},defaultVariants:{size:"xs"}});var nQ=e.i(917162),n0=e.i(660302),n1=e.i(671428),n2=e.i(319036),n3=e.i(41533),n5=e.i(146538),n6=e.i(265402),n9=e.i(95187);let n4=(0,n9.createServerReference)("7f92929bc39d14cb18c0edd6f885396687b8da365f",n9.callServer,void 0,n9.findSourceMapURL,"createBotAction");var n8=e.i(461569);let n7=(0,n9.createServerReference)("7ffed7b5e60bbcaf20bf9d4e80219a52cbf8e96ebb",n9.callServer,void 0,n9.findSourceMapURL,"deleteBotAction"),re=(0,n9.createServerReference)("7f50fd90d67f93e3cc1ef2f4549305a687fdfd71e1",n9.callServer,void 0,n9.findSourceMapURL,"setBotMemoryOnAction"),rt=(0,n9.createServerReference)("7fb76f58c3bde6fe281cdcec4c154f5f9ba480cb29",n9.callServer,void 0,n9.findSourceMapURL,"updateBotAction");var rn=e.i(451888),rr=e.i(463625),ro=e.i(635963),ra=e.i(519029),ri=e.i(992112),rl=e.i(895836),rs=e.i(989409),rc=e.i(621285),ru=e.i(616172),rd=e.i(863605),rf=e.i(177373),rm=e.i(333999),rp=e.i(245629),rh=e.i(981203),rv=e.i(609856),rg=e.i(283653),rx=e.i(864723);let rb=" new";function ry({bot:e,job:t,active:n,onPick:r}){var o,a,i;let l=(o=t,a=e.lastJobAt,i=e.disabled,o?.status==="waiting"?{text:"waiting on you",shine:!0,amber:!0}:o?.status==="running"?{text:`working \xb7 ${o.label}`,shine:!0}:i?{text:"off"}:o?{text:`idle \xb7 last job ${rw(o.updatedAt)}`}:a?{text:`idle \xb7 last job ${rw(a)}`}:{text:"idle · no jobs yet"});return(0,c.jsxs)("button",{type:"button",onClick:r,className:(0,nz.cn)("mx-2 flex items-center gap-2.5 rounded-md px-2 py-2 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",n?"bg-secondary":"hover:bg-muted/60"),children:[(0,c.jsx)(ro.BotMark,{size:32,...rA(e.name,e.icon),state:t?.status==="running"?"thinking":"idle",notify:t?.status==="waiting",className:(0,nz.cn)("shrink-0",e.disabled&&"opacity-45")}),(0,c.jsxs)("span",{className:(0,nz.cn)("min-w-0 flex-1 space-y-0.5",e.disabled&&"opacity-45"),children:[(0,c.jsx)("span",{className:(0,nz.cn)("block truncate text-[13px]",n?"font-medium":"text-foreground/90"),children:e.name}),l.shine?(0,c.jsx)(n0.ShinyText,{text:l.text,tone:l.amber?"waiting":"muted",className:"block truncate font-mono text-[11px] leading-4"}):(0,c.jsx)("span",{className:"block truncate font-mono text-[11px] leading-4 text-muted-foreground",children:l.text})]})]})}function rw(e){let t=(0,rp.shortAgo)(e);return"now"===t?"just now":`${t} ago`}function rE(e,t,n){let[r,o]=(0,w.useState)(new Set),[a,i]=(0,rv.useServerAction)(n8.createSeedBotsAction,{onOk:e=>{(0,rg.revalidate)(E.queryKey.bot),n(e.created[0]??null)}}),{data:l}=(0,rg.useServerRoute)(E.queryKey.config),s=rr.BOT_SEEDS.filter(t=>!e.has(t.name)),c=s.filter(e=>!r.has(e.name));return{isSet:e=>(0,ri.isConfigSet)(l,e),adding:i,addable:s,wanted:c,ticked:t=>e.has(t.name)||!r.has(t.name),toggle:e=>o(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),submit:()=>a(c.map(e=>({name:e.name,color:t[rr.BOT_SEEDS.indexOf(e)]})))}}function rj({have:e,inks:t,picks:n}){return(0,c.jsx)("div",{className:"flex flex-col gap-2",children:rr.BOT_SEEDS.map((r,o)=>{var a;let i,l=e.has(r.name),s=n.ticked(r),d=(a=n.isSet,(i=(r.requires??[]).filter(e=>!a(ri.MEDIA_MODEL_KEYS[e]))).length?`needs ${i.map(ri.mediaModelWords).join(" and ")}`:null);return(0,c.jsx)("div",{className:(0,nz.cn)("rounded-xl ring-1 transition-colors",l?"opacity-45 ring-border/60":s?"ring-foreground":"ring-border/60"),children:(0,c.jsxs)("button",{type:"button",disabled:l||n.adding,"aria-pressed":s,onClick:()=>n.toggle(r.name),className:"flex w-full items-center gap-3 rounded-xl px-3.5 py-2.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-default",children:[(0,c.jsx)(ro.BotMark,{size:28,...rA(r.name,r.icon),color:t[o],className:(0,nz.cn)("shrink-0 transition-opacity",!s&&"opacity-35")}),(0,c.jsxs)("span",{className:"min-w-0 flex-1 space-y-px",children:[(0,c.jsx)("span",{className:"block text-[14px] leading-[18px] font-medium",children:r.name}),(0,c.jsx)("span",{className:"block truncate text-[12px] leading-[17px] text-muted-foreground",children:r.hint})]}),l?(0,c.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground",children:"already added"}):d?(0,c.jsxs)("span",{className:(0,nz.cn)("flex shrink-0 items-center gap-1.5 font-mono text-[11px]",nz.WAITING_INK),children:[(0,c.jsx)(p,{className:"size-3"}),d]}):null,(0,c.jsx)("span",{className:(0,nz.cn)("grid size-5 shrink-0 place-items-center rounded-full transition-colors",s?"bg-foreground text-background":"ring-1 ring-border/60 ring-inset"),children:s&&(0,c.jsx)(u.Check,{className:"size-3"})})]})},r.name)})})}function rk({picks:e,onCancel:t}){return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(j.Button,{variant:"ghost",onClick:t,children:"Cancel"}),(0,c.jsxs)(j.Button,{loading:e.adding,disabled:0===e.wanted.length,onClick:e.submit,children:[(0,c.jsx)(g.Plus,{}),1===e.wanted.length?`Add ${e.wanted[0].name}`:`Add ${e.wanted.length} bots`]})]})}function rS({have:e,inks:t,onDone:n}){let r=rE(e,t,n);return(0,c.jsxs)("div",{className:"flex min-h-full flex-col",children:[(0,c.jsx)("div",{className:"flex h-11 shrink-0 items-center border-b border-border/60 px-4 font-mono text-[11px] text-muted-foreground",children:"Ready-made"}),(0,c.jsxs)("div",{className:"px-8 pt-7 pb-1",children:[(0,c.jsx)("h3",{className:"text-[17px] font-medium tracking-tight",children:"Bots you can add"}),(0,c.jsx)("p",{className:"mt-1.5 max-w-lg text-[13px] leading-relaxed text-muted-foreground break-keep",children:"Each one is a starting point — rename it, re-prompt it, give it a model of its own. What a bot needs before it can work stands on its row; until then it runs on the app default model."})]}),(0,c.jsx)("div",{className:"px-8 pt-4",children:(0,c.jsx)(rj,{have:e,inks:t,picks:r})}),(0,c.jsxs)("div",{className:"mt-auto flex items-center gap-3 border-t border-border/60 px-8 py-4",children:[(0,c.jsx)("span",{className:"flex-1 font-mono text-[11px] text-muted-foreground",children:0===r.wanted.length?"nothing ticked":`${r.wanted.length} of ${r.addable.length} ticked`}),(0,c.jsx)(rk,{picks:r,onCancel:()=>n(null)})]})]})}function rN({have:e,inks:t,onDone:n}){let r=rE(e,t,n);return(0,c.jsx)(rl.SettingDialogContent,{title:"Bots you can add",description:"Each one is a starting point — rename it, re-prompt it, give it a model of its own. What a bot needs before it can work stands on its row.",footer:(0,c.jsx)(rk,{picks:r,onCancel:()=>n(null)}),children:(0,c.jsx)(rj,{have:e,inks:t,picks:r})})}function rC({missing:e,inks:t,have:n,onDone:r}){return(0,c.jsxs)("button",{type:"button",title:"Ready-made bots","aria-label":`Ready-made bots, ${e.length} on offer`,onClick:()=>nQ.notify.component({className:"sm:max-w-xl",renderer:({close:e})=>(0,c.jsx)(rN,{have:n,inks:t,onDone:t=>{e(),r(t)}})}),className:"flex shrink-0 items-center gap-1 rounded-md px-1.5 py-1 text-muted-foreground outline-none transition-colors hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,c.jsx)(g.Plus,{className:"size-3 shrink-0"}),e.map((n,r)=>(0,c.jsx)("span",{className:(0,nz.cn)("block",r>0&&"-ml-1.5"),style:{zIndex:e.length-r},children:(0,c.jsx)(ro.BotMark,{size:20,...rA(n.name,n.icon),color:t[rr.BOT_SEEDS.indexOf(n)],notify:!1})},n.name))]})}function rA(e,t){return{seed:e||"bot",color:t?.color,shape:t?.shape,outline:t?.outline}}function rR({bot:e,jobs:t,onDone:n,onCancel:r}){let[o,a]=(0,rm.useObjectState)(()=>({name:e?.name??"",description:e?.description??"",systemPrompt:e?.systemPrompt??"",icon:e?.icon??(0,rn.randomBotIcon)(),provider:e?.provider??null,model:e?.model??"",compactAt:e?.compactAt?String(e.compactAt/1e3):"",toolIds:e?.tools.map(e=>e.id)??[]})),{name:i,description:l,systemPrompt:s,icon:u,provider:d,model:f,compactAt:m,toolIds:p}=o,[h,v]=(0,w.useState)(!!e?.compactAt),g=(0,rg.useServerRoute)(E.queryKey.modelCatalog),b=(e,t)=>e&&t.trim()?(0,n6.contextWindowOf)(e,t.trim(),g.data):null,y=b(d,f),k=d&&f.trim()?rT(y)/1e3:null,S=h?m:null===k?"":String(k),[N]=(0,rv.useServerAction)(rt,{onOk:()=>(0,rg.revalidate)(E.queryKey.bot)}),C=t=>{e&&N(e.name,t)},[A,R,,O]=(0,rv.useServerAction)(n4,{errorMessage:!1,okMessage:"Bot created",onOk:e=>{(0,rg.revalidate)(E.queryKey.bot),n(e.name)}}),[P,M]=(0,rv.useServerAction)(n7,{okMessage:"Bot deleted",onOk:()=>{(0,rg.revalidate)(E.queryKey.bot),n(null)}}),D=i.trim()&&l.trim()&&d&&f.trim()&&!R,I=async()=>{!e||await nQ.notify.confirm({title:`Delete ${e.name}?`,description:"The agent can no longer hand work to it.",okText:"Delete",destructive:!0})&&P(e.name)};return(0,c.jsxs)("div",{className:"flex min-h-full flex-col",children:[(0,c.jsxs)("div",{className:"flex h-11 shrink-0 items-center gap-2 border-b border-border/60 px-4",children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-muted-foreground",children:e?e.name:"New bot"}),e&&(0,c.jsxs)(c.Fragment,{children:[e.disabled&&(0,c.jsx)("span",{className:"font-mono text-[10px] text-muted-foreground",children:"off"}),(0,c.jsx)(n2.Switch,{checked:!e.disabled,onCheckedChange:e=>C({disabled:!e}),"aria-label":`${e.name} on or off`,className:"mr-1 shrink-0"}),(0,c.jsx)(j.Button,{size:"icon-sm",variant:"ghost",loading:M,"aria-label":"Delete this bot",onClick:I,className:"text-muted-foreground hover:text-destructive",children:(0,c.jsx)(x.Trash2,{})})]})]}),(0,c.jsxs)("div",{className:"flex-1 space-y-5 p-6",children:[(0,c.jsx)(rF,{name:i,icon:u,onChange:e=>{a({icon:e}),C({icon:e})}}),(0,c.jsxs)(rL,{label:"Name",children:[e?(0,c.jsx)("p",{className:"truncate text-sm leading-8 font-medium",children:e.name}):(0,c.jsx)(nB.Input,{value:i,onChange:e=>a({name:e.target.value}),placeholder:"researcher",spellCheck:!1,maxLength:rh.COMMON_VALIDATE.name.max,autoFocus:!0}),(0,c.jsx)("p",{className:"text-xs text-muted-foreground",children:e?`What ${n3.APP_NAME} calls it when she hands it work. Fixed once the bot is made.`:`What ${n3.APP_NAME} calls it when she hands it work. Up to ${rh.COMMON_VALIDATE.name.max} characters, and it can’t be renamed later.`})]}),(0,c.jsxs)(rL,{label:"Description",children:[(0,c.jsx)(nB.Input,{value:l,onChange:e=>a({description:e.target.value}),onBlur:()=>{let t=l.trim();e&&t&&t!==e.description&&C({description:t})},placeholder:"Searches the web and answers",maxLength:rh.COMMON_VALIDATE.description.max}),(0,c.jsxs)("p",{className:"text-xs text-muted-foreground",children:["The one line ",n3.APP_NAME," and the other bots read when they decide who gets a job."]})]}),(0,c.jsx)(rL,{label:"Runs on",children:(0,c.jsx)(n5.ModelPicker,{provider:d,model:f,onChange:e=>{a({provider:e.provider,model:e.model}),v(!1),e.model&&C({...e,compactAt:rT(b(e.provider,e.model))})}})}),(0,c.jsxs)(rL,{label:"Compacts at",children:[(0,c.jsxs)(nW,{children:[(0,c.jsx)(nq,{inputMode:"decimal",value:S,placeholder:f.trim()?"":"Pick a model first",onChange:e=>{v(!0),a({compactAt:e.target.value})},onBlur:()=>{if(!h)return;let e=rI(m);null===e?v(!1):a({compactAt:String(e/1e3)}),C({compactAt:e??(f.trim()?rT(y):null)})}}),(0,c.jsx)(nU,{align:"inline-end",children:(0,c.jsx)(nV,{children:"k tokens"})})]}),(0,c.jsx)("p",{className:"text-xs text-muted-foreground",children:function(e){if(!e.model)return"Filled in from the model once one is picked.";let t=rT(e.window),n="A job summarizes itself here and carries on.";return null!==e.shown&&e.shown!==t?`Set by hand. Picking a model fills in its own again. ${n}`:e.window?`${Math.round(100*n3.BOT_RUN.compactHeadroom)}% of this model's ${(e.window/1e3).toLocaleString()}k context window. ${n}`:`This model's context window is unknown, so the default is filled in. ${n}`}({model:f.trim(),window:y,shown:rI(S)})})]}),(0,c.jsx)(rL,{label:"Tools",children:(0,c.jsx)(rB,{selected:p,onChange:e=>{a({toolIds:e}),C({toolIds:e})}})}),(0,c.jsxs)(rL,{label:"Prompt",children:[(0,c.jsx)(n$.Textarea,{value:s,onChange:e=>a({systemPrompt:e.target.value}),onBlur:()=>{let t=s.trim();e&&t!==(e.systemPrompt??"")&&C({systemPrompt:t})},placeholder:`How it should work (optional). e.g.
2
+ Search the web, answer with a short summary and links.`,maxLength:rh.COMMON_VALIDATE.prompt.max,className:"max-h-48 min-h-24 resize-none overflow-y-auto text-sm"}),s.length>0&&(0,c.jsxs)("p",{className:"text-right font-mono text-[10px] text-muted-foreground",children:[s.length,"/",rh.COMMON_VALIDATE.prompt.max]})]}),e&&(0,c.jsx)(rO,{bot:e.name}),e&&(0,c.jsx)(r_,{jobs:t}),!e&&(0,c.jsxs)("div",{className:"flex items-center justify-end gap-2 pt-1",children:[(0,c.jsx)(j.Button,{variant:"ghost",onClick:r,children:"Cancel"}),(0,c.jsx)(j.Button,{loading:R,disabled:!D,onClick:()=>{D&&d&&A({name:i.trim(),description:l.trim(),systemPrompt:s.trim()||void 0,icon:u,provider:d,model:f.trim(),compactAt:h?rI(m):rT(y),toolIds:p})},children:"Create"})]}),O&&(0,c.jsx)("p",{className:"font-mono text-xs text-destructive",children:O})]})]})}function rO({bot:e}){let t=E.queryKey.botMemoryFiles(e),{data:n,isLoading:r}=(0,rg.useServerRoute)(t),[o,a]=(0,w.useState)(null),[i]=(0,rv.useServerAction)(rf.openFileAction),[l,s]=(0,rv.useServerAction)(rd.deleteWorkspaceFileAction,{okMessage:"File deleted",onOk:()=>{a(null),(0,rg.revalidate)(t),(0,rg.revalidate)(E.queryKey.workspace)}}),u=async t=>{await nQ.notify.confirm({title:`Delete ${t.file}?`,description:`It is deleted from disk for good, and ${e}'s next job starts without it.`,okText:"Delete",destructive:!0})&&l(t.path)};return(0,c.jsxs)("div",{className:"pt-1",children:[(0,c.jsxs)("div",{className:"flex h-6 items-center",children:[(0,c.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:"Memory"}),(0,c.jsx)("span",{className:"flex-1"}),n&&n.total>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{className:"pr-1 font-mono text-[11px] text-muted-foreground tabular-nums",children:1===n.total?"1 file":`${n.total} files`}),(0,c.jsxs)("button",{type:"button",title:"Show in the file manager",onClick:()=>i(n.folder),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)(h.FolderOpen,{className:"size-3"}),"Folder"]})]})]}),r?(0,c.jsx)("div",{className:"flex h-9 items-center border-t border-border/60",children:(0,c.jsx)(n1.Skeleton,{className:"h-3 w-56"})}):n?.entries.length?n.entries.map(e=>{let t=o===e.path;return(0,c.jsxs)("div",{className:"border-t border-border/60",children:[(0,c.jsxs)("button",{type:"button","aria-expanded":t,onClick:()=>a(t?null:e.path),className:"flex h-9 w-full items-center gap-3 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)("span",{className:(0,nz.cn)("min-w-0 flex-1 truncate",t&&"font-medium"),children:e.line||e.file}),(0,c.jsx)("span",{className:"w-36 shrink-0 truncate font-mono text-[11px] text-muted-foreground",children:e.file}),(0,c.jsx)("span",{className:"w-28 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:(0,rp.whenOf)(e.at)}),(0,c.jsx)(d.ChevronRight,{className:(0,nz.cn)("size-3 shrink-0 text-muted-foreground transition-transform",t&&"rotate-90")})]}),t&&(0,c.jsxs)("div",{className:"flex items-start gap-3",children:[(0,c.jsx)("div",{className:"max-h-96 min-w-0 flex-1 overflow-y-auto",children:(0,c.jsx)(rP,{path:e.path})}),(0,c.jsx)(j.Button,{size:"icon-sm",variant:"ghost","aria-label":`Delete ${e.file}`,loading:s,onClick:()=>u(e),className:"text-muted-foreground hover:text-destructive",children:(0,c.jsx)(x.Trash2,{})})]})]},e.path)}):(0,c.jsx)("p",{className:"py-2 text-[13px] text-muted-foreground",children:"Nothing kept yet."})]})}function rP({path:e}){let{content:t,failure:n,truncated:r}=(0,rc.useFileText)(e);if(n)return(0,c.jsx)("p",{className:"pb-3 font-mono text-xs text-destructive",children:n});if(null===t)return(0,c.jsxs)("div",{className:"space-y-2 pb-3",children:[(0,c.jsx)(n1.Skeleton,{className:"h-4 w-5/6"}),(0,c.jsx)(n1.Skeleton,{className:"h-4 w-2/3"})]});let o=(0,ru.viewKindOf)(e);return(0,c.jsx)(rc.FileBody,{kind:o,content:"markdown"===o?rM(t):t,truncated:r,where:"inline"})}let rM=e=>e.replace(/^---\n[\s\S]*?\n---\n/,"").replace(/^\s*#[^\n]*\n?/,"");function rD({bot:e}){let{data:t,mutate:n}=(0,rg.useServerRoute)(E.queryKey.botMemory),[r]=(0,rv.useServerAction)(re,{onOk:()=>(0,rg.revalidate)(E.queryKey.botMemory)}),o=e?e.tokens.input+e.tokens.output:0;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(rl.SettingRailNote,{children:e?(0,c.jsxs)("span",{className:"font-mono text-[11px]",children:[e.name,e.disabled&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),"off"]}),(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),(0,c.jsx)("span",{title:`in ${(0,nz.formatCount)(e.tokens.input)} \xb7 out ${(0,nz.formatCount)(e.tokens.output)}`,children:o>0?`${(0,nz.formatCount)(o)} tokens`:"no tokens yet"}),(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),"since ",(0,rp.whenOf)(e.createdAt)]}):"Becomes a bot once it has a name and a model"}),(0,c.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:"Bots keep their own memory"}),(0,c.jsx)(n2.Switch,{checked:t??!0,disabled:void 0===t,onCheckedChange:e=>{n(e,!1),r(e)},"aria-label":"Bots keep their own memory"})]})}function rI(e){let t=Number(e.replace(/[^0-9.]/g,""));return Number.isFinite(t)&&t>0?Math.round(1e3*t):null}let rT=e=>1e3*Math.round((0,n6.compactAtFor)(e)/1e3);function rL({label:e,children:t}){return(0,c.jsxs)("div",{className:"flex gap-3",children:[(0,c.jsx)("span",{className:"w-20 shrink-0 pt-2 font-mono text-xs text-muted-foreground",children:e}),(0,c.jsx)("div",{className:"min-w-0 flex-1 space-y-1.5",children:t})]})}function r_({jobs:e}){return(0,c.jsxs)("div",{className:"pt-1",children:[(0,c.jsxs)("div",{className:"flex h-6 items-center",children:[(0,c.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:"Recent"}),(0,c.jsx)("span",{className:"flex-1"}),(0,c.jsxs)("button",{type:"button",onClick:()=>(0,rs.openSettings)("tasks"),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)(v.History,{className:"size-3"}),"History"]})]}),0===e.length?(0,c.jsx)("p",{className:"py-2 text-[13px] text-muted-foreground",children:"Nothing handed over yet."}):e.map(e=>{let t=function(e){switch(e.status){case"waiting":return{text:"waiting on you",tone:nz.WAITING_INK};case"running":return{text:"working",tone:"text-muted-foreground"};case"failed":return{text:"failed",tone:"text-destructive"};default:return{text:"done",tone:"text-muted-foreground"}}}(e);return(0,c.jsxs)("div",{className:"flex h-9 items-center gap-3 border-t border-border/60 text-[13px]",children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.label}),"running"===e.status?(0,c.jsx)(n0.ShinyText,{text:t.text,className:"shrink-0 font-mono text-[11px]"}):(0,c.jsx)("span",{className:(0,nz.cn)("shrink-0 font-mono text-[11px]",t.tone),children:t.text}),(0,c.jsx)("span",{className:"w-28 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:(0,rp.whenOf)(e.updatedAt)})]},e.id)})]})}function rF({name:e,icon:t,onChange:n}){return(0,c.jsxs)("div",{className:"flex flex-col items-center gap-4 pt-3 pb-2",children:[(0,c.jsx)(ro.BotMark,{size:112,...rA(e,t),className:"shrink-0"}),(0,c.jsx)(ra.MarkPalette,{color:t.color,themePicked:t.color===rx.MARK_SYSTEM,onTheme:()=>n({...t,color:rx.MARK_SYSTEM}),onPick:e=>n({...t,color:t.color===e?void 0:e})}),(0,c.jsxs)("div",{className:"flex gap-1",children:[rx.MARK_SHAPES.map(e=>(0,c.jsx)("button",{type:"button",onClick:()=>n({...t,shape:t.shape===e?void 0:e}),className:(0,nz.cn)("rounded-md px-2 py-1 font-mono text-[11px] capitalize transition-colors",t.shape===e?"bg-foreground text-background":"bg-muted text-muted-foreground hover:text-foreground"),children:e},e)),(0,c.jsx)("span",{className:"mx-1 w-px self-stretch bg-border/60"}),(0,c.jsx)("button",{type:"button",onClick:()=>n({...t,outline:!t.outline||void 0}),className:(0,nz.cn)("rounded-md px-2 py-1 font-mono text-[11px] transition-colors",t.outline?"bg-foreground text-background":"bg-muted text-muted-foreground hover:text-foreground"),children:"outline"})]})]})}function rB({selected:e,onChange:t}){let{data:n=[]}=(0,rg.useServerRoute)(E.queryKey.mcpTools),[r,o]=(0,w.useState)(!1),a=e.length>=rn.MAX_PINNED_TOOLS,i=[...new Set(n.map(e=>e.serverName))],l=e.map(e=>n.find(t=>t.id===e)).filter(e=>!!e),s=r?l:l.slice(0,4),d=l.length-s.length,f=n=>t(e.includes(n)?e.filter(e=>e!==n):[...e,n]);return 0===n.length?(0,c.jsx)("p",{className:"pt-1.5 text-xs text-muted-foreground",children:"Nothing to pin — connect an MCP server first (Settings › Connectors)."}):(0,c.jsxs)("div",{className:"space-y-2",children:[(0,c.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,c.jsx)(j.Button,{size:"icon-sm",variant:r?"secondary":"outline",onClick:()=>o(!r),"aria-label":"Pick tools",className:"border-dashed",children:(0,c.jsx)(b.Wrench,{})}),s.map(e=>(0,c.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-muted py-1 pr-1.5 pl-2.5 font-mono text-[11px]",children:[e.name,(0,c.jsx)("button",{type:"button","aria-label":`Unpin ${e.name}`,onClick:()=>f(e.id),className:"rounded-full p-0.5 text-muted-foreground transition-colors hover:bg-foreground/10 hover:text-foreground",children:(0,c.jsx)(y.X,{className:"size-3"})})]},e.id)),d>0&&(0,c.jsxs)("button",{type:"button",onClick:()=>o(!0),className:"rounded-full bg-muted px-2.5 py-1 font-mono text-[11px] text-muted-foreground transition-colors hover:text-foreground",children:["+",d]}),0===l.length&&(0,c.jsx)("span",{className:"text-xs text-muted-foreground",children:"Loaded from the start — everything else stays searchable"}),(0,c.jsx)("span",{className:"flex-1"}),(0,c.jsxs)("span",{className:(0,nz.cn)("font-mono text-[11px] text-muted-foreground",a&&"text-foreground"),children:[e.length,"/",rn.MAX_PINNED_TOOLS]})]}),r&&(0,c.jsxs)(nH,{className:"rounded-lg border border-input",children:[(0,c.jsx)(nX,{placeholder:"Search tools"}),(0,c.jsxs)(nY,{className:"max-h-44",children:[(0,c.jsx)(nG,{children:"Nothing matches"}),i.map(t=>(0,c.jsx)(nZ,{heading:t,children:n.filter(e=>e.serverName===t).map(t=>{let n=e.includes(t.id);return(0,c.jsxs)(nJ,{value:`${t.serverName}/${t.name}`,disabled:!n&&a,onSelect:()=>f(t.id),children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-xs",children:t.name}),n&&(0,c.jsx)(u.Check,{className:"size-3.5 shrink-0"})]},t.id)})},t))]})]})]})}e.s(["BotSetting",0,function(){let{data:e,isLoading:t,error:n}=(0,rg.useServerRoute)(E.queryKey.bot),r=e??[],{data:o}=(0,rg.useServerRoute)(E.queryKey.taskHistory(null)),a=o??[],[i,l]=(0,w.useState)(null),[s]=(0,w.useState)(rr.rollSeedColors);if(t)return(0,c.jsx)(rl.SettingPanesSkeleton,{});if(n)return(0,c.jsx)(rl.SettingError,{message:n.message});let u=i===rb,d=r.filter(e=>!e.disabled).length,f=new Set(r.map(e=>e.name)),m=rr.BOT_SEEDS.filter(e=>!f.has(e.name)),p=u?null:r.find(e=>e.name===i)??r[0]??null;return(0,c.jsx)(rl.SettingPanes,{footer:0===r.length?null:(0,c.jsx)(rD,{bot:p}),left:(0,c.jsxs)("div",{className:"flex flex-col py-2",children:[(0,c.jsxs)("div",{className:"mx-2 mb-1 flex items-center gap-1",children:[(0,c.jsxs)("button",{type:"button",onClick:()=>l(rb),className:(0,nz.cn)("flex flex-1 items-center gap-2 rounded-md px-2 py-1.5 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",u?"bg-secondary text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[(0,c.jsx)(g.Plus,{className:"size-3.5 shrink-0"}),"New bot"]}),r.length>0&&m.length>0&&(0,c.jsx)(rC,{missing:m,inks:s,have:f,onDone:e=>l(e)})]}),r.map(e=>(0,c.jsx)(ry,{bot:e,job:a.find(t=>t.bot===e.name)??null,active:!u&&e.name===p?.name,onPick:()=>l(e.name)},e.name)),d>n3.PROMPT_CROWDED.bots&&(0,c.jsxs)(rl.SettingNote,{className:"mx-3 mt-2 leading-relaxed",children:[d," bots are on. Each is a line in every prompt, and one more for Thursday to choose between."]})]}),right:u?(0,c.jsx)(rR,{jobs:[],onDone:e=>l(e),onCancel:()=>l(null)},"new"):p?(0,c.jsx)(rR,{bot:p,jobs:a.filter(e=>e.bot===p.name).slice(0,3),onDone:()=>l(null)},p.name):m.length>0?(0,c.jsx)(rS,{have:f,inks:s,onDone:e=>l(e)}):(0,c.jsxs)("div",{className:"space-y-4 p-8",children:[(0,c.jsx)("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"The agent talks; bots do the rest — search the web, draft a reply, check a schedule. Give one a job and a model, and work gets handed over mid-call while the conversation keeps going."}),(0,c.jsxs)(j.Button,{variant:"outline",onClick:()=>l(rb),children:[(0,c.jsx)(g.Plus,{}),"New bot"]})]})})}],507906)}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,107941,e=>{"use strict";var t=e.i(843476),i=e.i(24071),n=e.i(867927),s=e.i(482022),r=e.i(829600),a=e.i(434322),o=e.i(905015),l=e.i(226091),d=e.i(726067),c=e.i(569644),u=e.i(815170),x=e.i(51921),m=e.i(650639),h=e.i(759659),f=e.i(438583),p=e.i(271645),g=e.i(798120),v=e.i(167881),y=e.i(917162),k=e.i(41533),j=e.i(895836),b=e.i(621285),w=e.i(586930),N=e.i(95187);let S=(0,N.createServerReference)("7f8836b516d90511f9ac2025e946c291a9cd0d8174",N.callServer,void 0,N.findSourceMapURL,"emptyScratchAction");var F=e.i(555085),C=e.i(245629),A=e.i(609856),z=e.i(283653),R=e.i(647163);let M={markdown:l.FileText,csv:m.Sheet,json:o.FileJson,text:l.FileText,frame:a.FileCode2,image:u.Image,audio:x.Music,video:f.Video,none:r.File};function $({label:e,rows:i,children:n}){return 0===i.length?null:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"px-3 pt-3 pb-1 font-mono text-[10px] text-muted-foreground/60",children:e}),n]})}function E({entry:e,active:i,onPick:s}){let r="dir"===e.kind?d.Folder:M[e.view];return(0,t.jsxs)("button",{type:"button",onClick:s,title:"file"===e.kind?`${e.name} \xb7 ${(0,C.shortAgo)(e.at)}`:e.name,className:(0,R.cn)("mx-2 flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",i?"bg-secondary font-medium text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[(0,t.jsx)(r,{className:"size-3.5 shrink-0 opacity-70"}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.name}),"file"===e.kind?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/75",children:(0,R.formatBytes)(e.bytes)}),(0,t.jsx)("span",{className:"w-3.5 shrink-0"})]}):(0,t.jsx)(n.ChevronRight,{className:"size-3.5 shrink-0 text-muted-foreground/50"})]})}function O({empty:e,onReveal:i}){return(0,t.jsxs)("div",{className:"space-y-4 p-8",children:[e?(0,t.jsxs)("p",{className:"max-w-lg text-sm leading-relaxed text-muted-foreground",children:["Nothing here yet. What a bot writes during a call lands in"," ",(0,t.jsx)("span",{className:"font-mono text-[13px] text-foreground",children:"artifacts/"})," ","— a page, a table, a picture — and shows up here to open."]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"Pick a file on the left."}),(0,t.jsx)("p",{className:"max-w-lg text-sm leading-relaxed text-muted-foreground",children:"Only what the app can open is listed — a page, a table, a picture, a note. Installed packages and tool leftovers are left out, and no folder is measured, so a folder opens as fast as it lists. Reveal folder for everything else."})]}),(0,t.jsxs)(v.Button,{variant:"outline",onClick:i,children:[(0,t.jsx)(c.FolderOpen,{}),"Reveal folder"]})]})}function P({file:e,onGone:i}){let n=e.path,[r]=(0,A.useServerAction)(F.openFileAction),[a,o]=(0,A.useServerAction)(w.deleteWorkspaceFileAction,{okMessage:"File deleted",onOk:()=>{(0,z.revalidate)(g.queryKey.workspace),i()}}),l=async()=>{await y.notify.confirm({title:`Delete ${n.split("/").pop()}?`,description:"It is deleted from disk for good.",okText:"Delete",destructive:!0})&&a(n)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-3 border-b border-border/60 px-6 py-2",children:[(0,t.jsx)(V,{path:n}),(0,t.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/70",children:[(0,R.formatBytes)(e.bytes)," · ",(0,C.shortAgo)(e.at)]}),(0,t.jsx)("a",{href:g.queryKey.fileView(n),target:"_blank",rel:"noreferrer","aria-label":"Open in a new tab",className:"grid size-7 shrink-0 place-items-center rounded-md text-muted-foreground outline-none transition-colors hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(s.ExternalLink,{className:"size-4"})}),(0,t.jsx)(v.Button,{size:"icon-sm",variant:"ghost","aria-label":"Reveal in the file manager",className:"text-muted-foreground",onClick:()=>r(n),children:(0,t.jsx)(c.FolderOpen,{})}),(0,t.jsx)(v.Button,{size:"icon-sm",variant:"ghost","aria-label":"Delete",loading:o,className:"text-muted-foreground",onClick:l,children:(0,t.jsx)(h.Trash2,{})})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-auto",children:(0,t.jsx)(b.FilePreview,{path:n,bytes:e.bytes})})]})}function V({path:e}){let i=["workspace",...e.split("/").filter(Boolean)];return(0,t.jsx)("span",{className:"flex min-w-0 flex-1 items-center gap-1 font-mono text-[11px] text-muted-foreground",children:i.map((e,s)=>(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1",children:[s>0&&(0,t.jsx)(n.ChevronRight,{className:"size-3 shrink-0 opacity-50"}),(0,t.jsx)("span",{className:(0,R.cn)("truncate",s===i.length-1&&"text-foreground"),children:e})]},`${s}-${e}`))})}e.s(["WorkspaceSetting",0,function(){let[e,n]=(0,p.useState)(""),[s,r]=(0,p.useState)(k.WORKSPACE_VIEW.rows),[a,o]=(0,p.useState)(null),[l,d]=(0,p.useState)(""),{data:u,isLoading:x,error:m}=(0,z.useServerRoute)(g.queryKey.workspaceFolder(e,s),{keepPreviousData:!0}),h=e=>{n(e),r(k.WORKSPACE_VIEW.rows)},[f,b]=(0,A.useServerAction)(S,{okMessage:"Scratch emptied",onOk:()=>(0,z.revalidate)(g.queryKey.workspace)}),[w]=(0,A.useServerAction)(F.openFileAction),N=async()=>{await y.notify.confirm({title:"Empty scratch?",description:"Everything under scratch/ is deleted for good. artifacts/ and projects/ are untouched.",okText:"Empty",destructive:!0})&&f()};if(x)return(0,t.jsx)(j.SettingPanesSkeleton,{});if(m)return(0,t.jsx)(j.SettingError,{message:m.message});let C=u?.entries??[],R=u?.total??0,M=l.trim().toLowerCase(),V=M?C.filter(e=>e.name.toLowerCase().includes(M)):C,W=V.filter(e=>"dir"===e.kind),B=V.filter(e=>"file"===e.kind),K=C.find(e=>"file"===e.kind&&e.path===a?.path)??a;return(0,t.jsx)(j.SettingPanes,{footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(j.SettingRailNote,{children:(0,t.jsxs)("span",{className:"font-mono",children:[(0,t.jsx)("span",{className:"font-medium text-foreground",children:`.ai-workspace${e?`/${e}`:""}`}),` \xb7 ${function(e,t){let i=e.filter(e=>"dir"===e.kind).length,n=e.length-i,s=[i&&`${i} ${1===i?"folder":"folders"}`,n&&`${n} ${1===n?"file":"files"}`].filter(Boolean);if(!s.length)return"empty";let r=s.join(" · ");return t>e.length?`${r} of ${t.toLocaleString("en")}`:r}(C,R)}`]})}),(0,t.jsxs)(v.Button,{variant:"outline",size:"sm",onClick:()=>w(e||"."),children:[(0,t.jsx)(c.FolderOpen,{}),"Reveal folder"]}),(0,t.jsx)(v.Button,{variant:"outline",size:"sm",loading:b,onClick:N,className:"text-destructive hover:text-destructive",children:"Empty scratch"})]}),left:(0,t.jsxs)("div",{className:"flex flex-col py-2",children:[(0,t.jsx)(j.SettingFilter,{value:l,onChange:d,placeholder:"Filter this folder",className:"mx-2 mb-1.5 w-auto"}),e&&(0,t.jsxs)("button",{type:"button",onClick:()=>h(e.split("/").slice(0,-1).join("/")),className:"mx-2 mb-1 flex items-center gap-1 rounded-md px-2 py-1 text-left font-mono text-[11px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)(i.ChevronLeft,{className:"size-3 shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:e.split("/").slice(0,-1).pop()??"workspace"})]}),0===V.length?(0,t.jsx)("p",{className:"px-4 py-3 text-xs text-muted-foreground/60",children:M?"Nothing matches":"Empty folder"}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)($,{label:"folders",rows:W,children:W.map(e=>(0,t.jsx)(E,{entry:e,onPick:()=>h(e.path)},e.path))}),(0,t.jsx)($,{label:"files",rows:B,children:B.map(e=>(0,t.jsx)(E,{entry:e,active:e.path===a?.path,onPick:()=>"file"===e.kind&&o(e)},e.path))})]}),R>C.length&&(0,t.jsx)("button",{type:"button",onClick:()=>r(s+k.WORKSPACE_VIEW.rows),className:"mx-2 mt-2 rounded-md px-2 py-1.5 text-left font-mono text-[11px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:`Show ${Math.min(k.WORKSPACE_VIEW.rows,R-C.length)} more of ${R.toLocaleString("en")}`})]}),right:K?.kind==="file"?(0,t.jsx)(P,{file:K,onGone:()=>o(null)},K.path):(0,t.jsx)(O,{empty:!e&&0===C.length,onReveal:()=>w(".")})})}],107941)},586930,e=>{"use strict";var t=e.i(95187);let i=(0,t.createServerReference)("7f194293e4c1ab83ed63877cc9d8b7aebf42b46bb8",t.callServer,void 0,t.findSourceMapURL,"deleteWorkspaceFileAction");e.s(["deleteWorkspaceFileAction",0,i])},434322,51921,650639,438583,e=>{"use strict";var t=e.i(456420);let i={name:"file-code-corner",size:24,node:[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]],aliases:["file-code-2"]};i.node;let n=(0,t.default)(i);e.s(["FileCode2",0,n],434322);let s={name:"music",size:24,node:[["path",{d:"M9 18V5l12-2v13",key:"1jmyc2"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["circle",{cx:"18",cy:"16",r:"3",key:"1hluhg"}]]};s.node;let r=(0,t.default)(s);e.s(["Music",0,r],51921);let a={name:"sheet",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["line",{x1:"3",x2:"21",y1:"9",y2:"9",key:"1vqk6q"}],["line",{x1:"3",x2:"21",y1:"15",y2:"15",key:"o2sbyz"}],["line",{x1:"9",x2:"9",y1:"9",y2:"21",key:"1ib60c"}],["line",{x1:"15",x2:"15",y1:"9",y2:"21",key:"1n26ft"}]]};a.node;let o=(0,t.default)(a);e.s(["Sheet",0,o],650639);let l={name:"video",size:24,node:[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]]};l.node;let d=(0,t.default)(l);e.s(["Video",0,d],438583)},726067,e=>{"use strict";var t=e.i(456420);let i={name:"folder",size:24,node:[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]};i.node;let n=(0,t.default)(i);e.s(["Folder",0,n],726067)},759659,e=>{"use strict";var t=e.i(456420);let i={name:"trash",size:24,node:[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],aliases:["trash-2"]};i.node;let n=(0,t.default)(i);e.s(["Trash2",0,n],759659)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,107941,e=>{"use strict";var t=e.i(843476),i=e.i(24071),n=e.i(867927),s=e.i(482022),r=e.i(829600),a=e.i(434322),o=e.i(905015),l=e.i(226091),d=e.i(726067),c=e.i(569644),u=e.i(815170),x=e.i(51921),m=e.i(650639),h=e.i(759659),f=e.i(438583),p=e.i(271645),g=e.i(798120),v=e.i(167881),y=e.i(917162),k=e.i(41533),j=e.i(895836),b=e.i(621285),w=e.i(863605),N=e.i(95187);let S=(0,N.createServerReference)("7f1261b41219e5808ae0097ce1333efd5b440b6888",N.callServer,void 0,N.findSourceMapURL,"emptyScratchAction");var F=e.i(177373),C=e.i(245629),A=e.i(609856),z=e.i(283653),R=e.i(647163);let M={markdown:l.FileText,csv:m.Sheet,json:o.FileJson,text:l.FileText,frame:a.FileCode2,image:u.Image,audio:x.Music,video:f.Video,none:r.File};function $({label:e,rows:i,children:n}){return 0===i.length?null:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"px-3 pt-3 pb-1 font-mono text-[10px] text-muted-foreground/60",children:e}),n]})}function E({entry:e,active:i,onPick:s}){let r="dir"===e.kind?d.Folder:M[e.view];return(0,t.jsxs)("button",{type:"button",onClick:s,title:"file"===e.kind?`${e.name} \xb7 ${(0,C.shortAgo)(e.at)}`:e.name,className:(0,R.cn)("mx-2 flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",i?"bg-secondary font-medium text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[(0,t.jsx)(r,{className:"size-3.5 shrink-0 opacity-70"}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.name}),"file"===e.kind?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/75",children:(0,R.formatBytes)(e.bytes)}),(0,t.jsx)("span",{className:"w-3.5 shrink-0"})]}):(0,t.jsx)(n.ChevronRight,{className:"size-3.5 shrink-0 text-muted-foreground/50"})]})}function O({empty:e,onReveal:i}){return(0,t.jsxs)("div",{className:"space-y-4 p-8",children:[e?(0,t.jsxs)("p",{className:"max-w-lg text-sm leading-relaxed text-muted-foreground",children:["Nothing here yet. What a bot writes during a call lands in"," ",(0,t.jsx)("span",{className:"font-mono text-[13px] text-foreground",children:"artifacts/"})," ","— a page, a table, a picture — and shows up here to open."]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"Pick a file on the left."}),(0,t.jsx)("p",{className:"max-w-lg text-sm leading-relaxed text-muted-foreground",children:"Only what the app can open is listed — a page, a table, a picture, a note. Installed packages and tool leftovers are left out, and no folder is measured, so a folder opens as fast as it lists. Reveal folder for everything else."})]}),(0,t.jsxs)(v.Button,{variant:"outline",onClick:i,children:[(0,t.jsx)(c.FolderOpen,{}),"Reveal folder"]})]})}function P({file:e,onGone:i}){let n=e.path,[r]=(0,A.useServerAction)(F.openFileAction),[a,o]=(0,A.useServerAction)(w.deleteWorkspaceFileAction,{okMessage:"File deleted",onOk:()=>{(0,z.revalidate)(g.queryKey.workspace),i()}}),l=async()=>{await y.notify.confirm({title:`Delete ${n.split("/").pop()}?`,description:"It is deleted from disk for good.",okText:"Delete",destructive:!0})&&a(n)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-3 border-b border-border/60 px-6 py-2",children:[(0,t.jsx)(V,{path:n}),(0,t.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/70",children:[(0,R.formatBytes)(e.bytes)," · ",(0,C.shortAgo)(e.at)]}),(0,t.jsx)("a",{href:g.queryKey.fileView(n),target:"_blank",rel:"noreferrer","aria-label":"Open in a new tab",className:"grid size-7 shrink-0 place-items-center rounded-md text-muted-foreground outline-none transition-colors hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(s.ExternalLink,{className:"size-4"})}),(0,t.jsx)(v.Button,{size:"icon-sm",variant:"ghost","aria-label":"Reveal in the file manager",className:"text-muted-foreground",onClick:()=>r(n),children:(0,t.jsx)(c.FolderOpen,{})}),(0,t.jsx)(v.Button,{size:"icon-sm",variant:"ghost","aria-label":"Delete",loading:o,className:"text-muted-foreground",onClick:l,children:(0,t.jsx)(h.Trash2,{})})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-auto",children:(0,t.jsx)(b.FilePreview,{path:n,bytes:e.bytes})})]})}function V({path:e}){let i=["workspace",...e.split("/").filter(Boolean)];return(0,t.jsx)("span",{className:"flex min-w-0 flex-1 items-center gap-1 font-mono text-[11px] text-muted-foreground",children:i.map((e,s)=>(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1",children:[s>0&&(0,t.jsx)(n.ChevronRight,{className:"size-3 shrink-0 opacity-50"}),(0,t.jsx)("span",{className:(0,R.cn)("truncate",s===i.length-1&&"text-foreground"),children:e})]},`${s}-${e}`))})}e.s(["WorkspaceSetting",0,function(){let[e,n]=(0,p.useState)(""),[s,r]=(0,p.useState)(k.WORKSPACE_VIEW.rows),[a,o]=(0,p.useState)(null),[l,d]=(0,p.useState)(""),{data:u,isLoading:x,error:m}=(0,z.useServerRoute)(g.queryKey.workspaceFolder(e,s),{keepPreviousData:!0}),h=e=>{n(e),r(k.WORKSPACE_VIEW.rows)},[f,b]=(0,A.useServerAction)(S,{okMessage:"Scratch emptied",onOk:()=>(0,z.revalidate)(g.queryKey.workspace)}),[w]=(0,A.useServerAction)(F.openFileAction),N=async()=>{await y.notify.confirm({title:"Empty scratch?",description:"Everything under scratch/ is deleted for good. artifacts/ and projects/ are untouched.",okText:"Empty",destructive:!0})&&f()};if(x)return(0,t.jsx)(j.SettingPanesSkeleton,{});if(m)return(0,t.jsx)(j.SettingError,{message:m.message});let C=u?.entries??[],R=u?.total??0,M=l.trim().toLowerCase(),V=M?C.filter(e=>e.name.toLowerCase().includes(M)):C,W=V.filter(e=>"dir"===e.kind),B=V.filter(e=>"file"===e.kind),K=C.find(e=>"file"===e.kind&&e.path===a?.path)??a;return(0,t.jsx)(j.SettingPanes,{footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(j.SettingRailNote,{children:(0,t.jsxs)("span",{className:"font-mono",children:[(0,t.jsx)("span",{className:"font-medium text-foreground",children:`.ai-workspace${e?`/${e}`:""}`}),` \xb7 ${function(e,t){let i=e.filter(e=>"dir"===e.kind).length,n=e.length-i,s=[i&&`${i} ${1===i?"folder":"folders"}`,n&&`${n} ${1===n?"file":"files"}`].filter(Boolean);if(!s.length)return"empty";let r=s.join(" · ");return t>e.length?`${r} of ${t.toLocaleString("en")}`:r}(C,R)}`]})}),(0,t.jsxs)(v.Button,{variant:"outline",size:"sm",onClick:()=>w(e||"."),children:[(0,t.jsx)(c.FolderOpen,{}),"Reveal folder"]}),(0,t.jsx)(v.Button,{variant:"outline",size:"sm",loading:b,onClick:N,className:"text-destructive hover:text-destructive",children:"Empty scratch"})]}),left:(0,t.jsxs)("div",{className:"flex flex-col py-2",children:[(0,t.jsx)(j.SettingFilter,{value:l,onChange:d,placeholder:"Filter this folder",className:"mx-2 mb-1.5 w-auto"}),e&&(0,t.jsxs)("button",{type:"button",onClick:()=>h(e.split("/").slice(0,-1).join("/")),className:"mx-2 mb-1 flex items-center gap-1 rounded-md px-2 py-1 text-left font-mono text-[11px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)(i.ChevronLeft,{className:"size-3 shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:e.split("/").slice(0,-1).pop()??"workspace"})]}),0===V.length?(0,t.jsx)("p",{className:"px-4 py-3 text-xs text-muted-foreground/60",children:M?"Nothing matches":"Empty folder"}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)($,{label:"folders",rows:W,children:W.map(e=>(0,t.jsx)(E,{entry:e,onPick:()=>h(e.path)},e.path))}),(0,t.jsx)($,{label:"files",rows:B,children:B.map(e=>(0,t.jsx)(E,{entry:e,active:e.path===a?.path,onPick:()=>"file"===e.kind&&o(e)},e.path))})]}),R>C.length&&(0,t.jsx)("button",{type:"button",onClick:()=>r(s+k.WORKSPACE_VIEW.rows),className:"mx-2 mt-2 rounded-md px-2 py-1.5 text-left font-mono text-[11px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:`Show ${Math.min(k.WORKSPACE_VIEW.rows,R-C.length)} more of ${R.toLocaleString("en")}`})]}),right:K?.kind==="file"?(0,t.jsx)(P,{file:K,onGone:()=>o(null)},K.path):(0,t.jsx)(O,{empty:!e&&0===C.length,onReveal:()=>w(".")})})}],107941)},863605,e=>{"use strict";var t=e.i(95187);let i=(0,t.createServerReference)("7f965a01991fcb050dbcedafae89c62f2e9244fc36",t.callServer,void 0,t.findSourceMapURL,"deleteWorkspaceFileAction");e.s(["deleteWorkspaceFileAction",0,i])},434322,51921,650639,438583,e=>{"use strict";var t=e.i(456420);let i={name:"file-code-corner",size:24,node:[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]],aliases:["file-code-2"]};i.node;let n=(0,t.default)(i);e.s(["FileCode2",0,n],434322);let s={name:"music",size:24,node:[["path",{d:"M9 18V5l12-2v13",key:"1jmyc2"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["circle",{cx:"18",cy:"16",r:"3",key:"1hluhg"}]]};s.node;let r=(0,t.default)(s);e.s(["Music",0,r],51921);let a={name:"sheet",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["line",{x1:"3",x2:"21",y1:"9",y2:"9",key:"1vqk6q"}],["line",{x1:"3",x2:"21",y1:"15",y2:"15",key:"o2sbyz"}],["line",{x1:"9",x2:"9",y1:"9",y2:"21",key:"1ib60c"}],["line",{x1:"15",x2:"15",y1:"9",y2:"21",key:"1n26ft"}]]};a.node;let o=(0,t.default)(a);e.s(["Sheet",0,o],650639);let l={name:"video",size:24,node:[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]]};l.node;let d=(0,t.default)(l);e.s(["Video",0,d],438583)},726067,e=>{"use strict";var t=e.i(456420);let i={name:"folder",size:24,node:[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]};i.node;let n=(0,t.default)(i);e.s(["Folder",0,n],726067)},759659,e=>{"use strict";var t=e.i(456420);let i={name:"trash",size:24,node:[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],aliases:["trash-2"]};i.node;let n=(0,t.default)(i);e.s(["Trash2",0,n],759659)}]);