larkup 0.4.12 → 0.4.14

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 (959) hide show
  1. package/.next/standalone/apps/web/.next/BUILD_ID +1 -0
  2. package/.next/standalone/apps/web/.next/app-path-routes-manifest.json +94 -0
  3. package/.next/standalone/apps/web/.next/build-manifest.json +20 -0
  4. package/.next/standalone/apps/web/.next/diagnostics/build-diagnostics.json +6 -0
  5. package/.next/standalone/apps/web/.next/diagnostics/framework.json +1 -0
  6. package/.next/standalone/apps/web/.next/lock +0 -0
  7. package/.next/standalone/apps/web/.next/package.json +1 -0
  8. package/.next/standalone/apps/web/.next/prerender-manifest.json +241 -0
  9. package/.next/standalone/apps/web/.next/react-loadable-manifest.json +31 -0
  10. package/.next/standalone/apps/web/.next/required-server-files.json +399 -0
  11. package/.next/standalone/apps/web/.next/routes-manifest.json +644 -0
  12. package/.next/standalone/apps/web/.next/server/app/_global-error/page.js +31 -0
  13. package/.next/standalone/apps/web/.next/server/app/_global-error/page.js.nft.json +1 -0
  14. package/.next/standalone/apps/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
  15. package/.next/standalone/apps/web/.next/server/app/_global-error.html +1 -0
  16. package/.next/standalone/apps/web/.next/server/app/_global-error.meta +35 -0
  17. package/.next/standalone/apps/web/.next/server/app/_global-error.rsc +15 -0
  18. package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
  19. package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +21 -0
  20. package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  21. package/.next/standalone/apps/web/.next/server/app/_not-found/page.js +1 -0
  22. package/.next/standalone/apps/web/.next/server/app/_not-found/page.js.nft.json +1 -0
  23. package/.next/standalone/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  24. package/.next/standalone/apps/web/.next/server/app/_not-found.html +1 -0
  25. package/.next/standalone/apps/web/.next/server/app/_not-found.meta +35 -0
  26. package/.next/standalone/apps/web/.next/server/app/_not-found.rsc +26 -0
  27. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_full.segment.rsc +26 -0
  28. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +32 -0
  29. package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -0
  30. package/.next/standalone/apps/web/.next/server/app/add/page.js +1 -0
  31. package/.next/standalone/apps/web/.next/server/app/add/page.js.nft.json +1 -0
  32. package/.next/standalone/apps/web/.next/server/app/add/page_client-reference-manifest.js +1 -0
  33. package/.next/standalone/apps/web/.next/server/app/add.html +1 -0
  34. package/.next/standalone/apps/web/.next/server/app/add.meta +34 -0
  35. package/.next/standalone/apps/web/.next/server/app/add.rsc +27 -0
  36. package/.next/standalone/apps/web/.next/server/app/add.segments/_full.segment.rsc +27 -0
  37. package/.next/standalone/apps/web/.next/server/app/add.segments/_tree.segment.rsc +2 -0
  38. package/.next/standalone/apps/web/.next/server/app/add.segments/add/__PAGE__.segment.rsc +33 -0
  39. package/.next/standalone/apps/web/.next/server/app/api/analytics/route.js +1 -0
  40. package/.next/standalone/apps/web/.next/server/app/api/analytics/route.js.nft.json +1 -0
  41. package/.next/standalone/apps/web/.next/server/app/api/analytics/route_client-reference-manifest.js +1 -0
  42. package/.next/standalone/apps/web/.next/server/app/api/chat/feedback/route.js +1 -0
  43. package/.next/standalone/apps/web/.next/server/app/api/chat/feedback/route.js.nft.json +1 -0
  44. package/.next/standalone/apps/web/.next/server/app/api/chat/feedback/route_client-reference-manifest.js +1 -0
  45. package/.next/standalone/apps/web/.next/server/app/api/chat/route.js +111 -0
  46. package/.next/standalone/apps/web/.next/server/app/api/chat/route.js.nft.json +1 -0
  47. package/.next/standalone/apps/web/.next/server/app/api/chat/route_client-reference-manifest.js +1 -0
  48. package/.next/standalone/apps/web/.next/server/app/api/chat/status/route.js +1 -0
  49. package/.next/standalone/apps/web/.next/server/app/api/chat/status/route.js.nft.json +1 -0
  50. package/.next/standalone/apps/web/.next/server/app/api/chat/status/route_client-reference-manifest.js +1 -0
  51. package/.next/standalone/apps/web/.next/server/app/api/config/route.js +1 -0
  52. package/.next/standalone/apps/web/.next/server/app/api/config/route.js.nft.json +1 -0
  53. package/.next/standalone/apps/web/.next/server/app/api/config/route_client-reference-manifest.js +1 -0
  54. package/.next/standalone/apps/web/.next/server/app/api/config/test/route.js +1 -0
  55. package/.next/standalone/apps/web/.next/server/app/api/config/test/route.js.nft.json +1 -0
  56. package/.next/standalone/apps/web/.next/server/app/api/config/test/route_client-reference-manifest.js +1 -0
  57. package/.next/standalone/apps/web/.next/server/app/api/config/test-embedding/route.js +10 -0
  58. package/.next/standalone/apps/web/.next/server/app/api/config/test-embedding/route.js.nft.json +1 -0
  59. package/.next/standalone/apps/web/.next/server/app/api/config/test-embedding/route_client-reference-manifest.js +1 -0
  60. package/.next/standalone/apps/web/.next/server/app/api/config/test-llm/route.js +10 -0
  61. package/.next/standalone/apps/web/.next/server/app/api/config/test-llm/route.js.nft.json +1 -0
  62. package/.next/standalone/apps/web/.next/server/app/api/config/test-llm/route_client-reference-manifest.js +1 -0
  63. package/.next/standalone/apps/web/.next/server/app/api/config/test-provider/route.js +1 -0
  64. package/.next/standalone/apps/web/.next/server/app/api/config/test-provider/route.js.nft.json +1 -0
  65. package/.next/standalone/apps/web/.next/server/app/api/config/test-provider/route_client-reference-manifest.js +1 -0
  66. package/.next/standalone/apps/web/.next/server/app/api/config/verify/route.js +1 -0
  67. package/.next/standalone/apps/web/.next/server/app/api/config/verify/route.js.nft.json +1 -0
  68. package/.next/standalone/apps/web/.next/server/app/api/config/verify/route_client-reference-manifest.js +1 -0
  69. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/oauth/callback/route.js +1 -0
  70. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/oauth/callback/route.js.nft.json +1 -0
  71. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/oauth/callback/route_client-reference-manifest.js +1 -0
  72. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/oauth/start/route.js +1 -0
  73. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/oauth/start/route.js.nft.json +1 -0
  74. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/oauth/start/route_client-reference-manifest.js +1 -0
  75. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/route.js +1 -0
  76. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/route.js.nft.json +1 -0
  77. package/.next/standalone/apps/web/.next/server/app/api/connections/[channelId]/route_client-reference-manifest.js +1 -0
  78. package/.next/standalone/apps/web/.next/server/app/api/connections/route.js +1 -0
  79. package/.next/standalone/apps/web/.next/server/app/api/connections/route.js.nft.json +1 -0
  80. package/.next/standalone/apps/web/.next/server/app/api/connections/route_client-reference-manifest.js +1 -0
  81. package/.next/standalone/apps/web/.next/server/app/api/connections/tunnel/route.js +1 -0
  82. package/.next/standalone/apps/web/.next/server/app/api/connections/tunnel/route.js.nft.json +1 -0
  83. package/.next/standalone/apps/web/.next/server/app/api/connections/tunnel/route_client-reference-manifest.js +1 -0
  84. package/.next/standalone/apps/web/.next/server/app/api/demo/route.js +1 -0
  85. package/.next/standalone/apps/web/.next/server/app/api/demo/route.js.nft.json +1 -0
  86. package/.next/standalone/apps/web/.next/server/app/api/demo/route_client-reference-manifest.js +1 -0
  87. package/.next/standalone/apps/web/.next/server/app/api/deploy/ssh/route.js +5 -0
  88. package/.next/standalone/apps/web/.next/server/app/api/deploy/ssh/route.js.nft.json +1 -0
  89. package/.next/standalone/apps/web/.next/server/app/api/deploy/ssh/route_client-reference-manifest.js +1 -0
  90. package/.next/standalone/apps/web/.next/server/app/api/deploy/verify/route.js +1 -0
  91. package/.next/standalone/apps/web/.next/server/app/api/deploy/verify/route.js.nft.json +1 -0
  92. package/.next/standalone/apps/web/.next/server/app/api/deploy/verify/route_client-reference-manifest.js +1 -0
  93. package/.next/standalone/apps/web/.next/server/app/api/describe-image/route.js +1 -0
  94. package/.next/standalone/apps/web/.next/server/app/api/describe-image/route.js.nft.json +1 -0
  95. package/.next/standalone/apps/web/.next/server/app/api/describe-image/route_client-reference-manifest.js +1 -0
  96. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/edit/route.js +1 -0
  97. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/edit/route.js.nft.json +1 -0
  98. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/edit/route_client-reference-manifest.js +1 -0
  99. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/export/route.js +1 -0
  100. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/export/route.js.nft.json +1 -0
  101. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/export/route_client-reference-manifest.js +1 -0
  102. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/extract-text/route.js +1 -0
  103. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/extract-text/route.js.nft.json +1 -0
  104. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/extract-text/route_client-reference-manifest.js +1 -0
  105. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/parse/route.js +1 -0
  106. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/parse/route.js.nft.json +1 -0
  107. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/parse/route_client-reference-manifest.js +1 -0
  108. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/restore/route.js +1 -0
  109. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/restore/route.js.nft.json +1 -0
  110. package/.next/standalone/apps/web/.next/server/app/api/doc-editor/restore/route_client-reference-manifest.js +1 -0
  111. package/.next/standalone/apps/web/.next/server/app/api/document/sign/route.js +1 -0
  112. package/.next/standalone/apps/web/.next/server/app/api/document/sign/route.js.nft.json +1 -0
  113. package/.next/standalone/apps/web/.next/server/app/api/document/sign/route_client-reference-manifest.js +1 -0
  114. package/.next/standalone/apps/web/.next/server/app/api/documents/move/route.js +1 -0
  115. package/.next/standalone/apps/web/.next/server/app/api/documents/move/route.js.nft.json +1 -0
  116. package/.next/standalone/apps/web/.next/server/app/api/documents/move/route_client-reference-manifest.js +1 -0
  117. package/.next/standalone/apps/web/.next/server/app/api/documents/route.js +1 -0
  118. package/.next/standalone/apps/web/.next/server/app/api/documents/route.js.nft.json +1 -0
  119. package/.next/standalone/apps/web/.next/server/app/api/documents/route_client-reference-manifest.js +1 -0
  120. package/.next/standalone/apps/web/.next/server/app/api/files/remote/route.js +1 -0
  121. package/.next/standalone/apps/web/.next/server/app/api/files/remote/route.js.nft.json +1 -0
  122. package/.next/standalone/apps/web/.next/server/app/api/files/remote/route_client-reference-manifest.js +1 -0
  123. package/.next/standalone/apps/web/.next/server/app/api/firecrawl/local/route.js +1 -0
  124. package/.next/standalone/apps/web/.next/server/app/api/firecrawl/local/route.js.nft.json +1 -0
  125. package/.next/standalone/apps/web/.next/server/app/api/firecrawl/local/route_client-reference-manifest.js +1 -0
  126. package/.next/standalone/apps/web/.next/server/app/api/gpu-activity/route.js +1 -0
  127. package/.next/standalone/apps/web/.next/server/app/api/gpu-activity/route.js.nft.json +1 -0
  128. package/.next/standalone/apps/web/.next/server/app/api/gpu-activity/route_client-reference-manifest.js +1 -0
  129. package/.next/standalone/apps/web/.next/server/app/api/groups/route.js +1 -0
  130. package/.next/standalone/apps/web/.next/server/app/api/groups/route.js.nft.json +1 -0
  131. package/.next/standalone/apps/web/.next/server/app/api/groups/route_client-reference-manifest.js +1 -0
  132. package/.next/standalone/apps/web/.next/server/app/api/index/route.js +1 -0
  133. package/.next/standalone/apps/web/.next/server/app/api/index/route.js.nft.json +1 -0
  134. package/.next/standalone/apps/web/.next/server/app/api/index/route_client-reference-manifest.js +1 -0
  135. package/.next/standalone/apps/web/.next/server/app/api/integrations/[integration]/callback/route.js +4 -0
  136. package/.next/standalone/apps/web/.next/server/app/api/integrations/[integration]/callback/route.js.nft.json +1 -0
  137. package/.next/standalone/apps/web/.next/server/app/api/integrations/[integration]/callback/route_client-reference-manifest.js +1 -0
  138. package/.next/standalone/apps/web/.next/server/app/api/integrations/[integration]/route.js +1 -0
  139. package/.next/standalone/apps/web/.next/server/app/api/integrations/[integration]/route.js.nft.json +1 -0
  140. package/.next/standalone/apps/web/.next/server/app/api/integrations/[integration]/route_client-reference-manifest.js +1 -0
  141. package/.next/standalone/apps/web/.next/server/app/api/integrations/notion/callback/route.js +19 -0
  142. package/.next/standalone/apps/web/.next/server/app/api/integrations/notion/callback/route.js.nft.json +1 -0
  143. package/.next/standalone/apps/web/.next/server/app/api/integrations/notion/callback/route_client-reference-manifest.js +1 -0
  144. package/.next/standalone/apps/web/.next/server/app/api/integrations/notion/route.js +11 -0
  145. package/.next/standalone/apps/web/.next/server/app/api/integrations/notion/route.js.nft.json +1 -0
  146. package/.next/standalone/apps/web/.next/server/app/api/integrations/notion/route_client-reference-manifest.js +1 -0
  147. package/.next/standalone/apps/web/.next/server/app/api/integrations/route.js +1 -0
  148. package/.next/standalone/apps/web/.next/server/app/api/integrations/route.js.nft.json +1 -0
  149. package/.next/standalone/apps/web/.next/server/app/api/integrations/route_client-reference-manifest.js +1 -0
  150. package/.next/standalone/apps/web/.next/server/app/api/jobs/[id]/route.js +1 -0
  151. package/.next/standalone/apps/web/.next/server/app/api/jobs/[id]/route.js.nft.json +1 -0
  152. package/.next/standalone/apps/web/.next/server/app/api/jobs/[id]/route_client-reference-manifest.js +1 -0
  153. package/.next/standalone/apps/web/.next/server/app/api/jobs/route.js +1 -0
  154. package/.next/standalone/apps/web/.next/server/app/api/jobs/route.js.nft.json +1 -0
  155. package/.next/standalone/apps/web/.next/server/app/api/jobs/route_client-reference-manifest.js +1 -0
  156. package/.next/standalone/apps/web/.next/server/app/api/marketplace/[toolId]/route.js +1 -0
  157. package/.next/standalone/apps/web/.next/server/app/api/marketplace/[toolId]/route.js.nft.json +1 -0
  158. package/.next/standalone/apps/web/.next/server/app/api/marketplace/[toolId]/route_client-reference-manifest.js +1 -0
  159. package/.next/standalone/apps/web/.next/server/app/api/marketplace/route.js +1 -0
  160. package/.next/standalone/apps/web/.next/server/app/api/marketplace/route.js.nft.json +1 -0
  161. package/.next/standalone/apps/web/.next/server/app/api/marketplace/route_client-reference-manifest.js +1 -0
  162. package/.next/standalone/apps/web/.next/server/app/api/mcp/[connectionId]/route.js +1 -0
  163. package/.next/standalone/apps/web/.next/server/app/api/mcp/[connectionId]/route.js.nft.json +1 -0
  164. package/.next/standalone/apps/web/.next/server/app/api/mcp/[connectionId]/route_client-reference-manifest.js +1 -0
  165. package/.next/standalone/apps/web/.next/server/app/api/mcp/[connectionId]/test/route.js +1 -0
  166. package/.next/standalone/apps/web/.next/server/app/api/mcp/[connectionId]/test/route.js.nft.json +1 -0
  167. package/.next/standalone/apps/web/.next/server/app/api/mcp/[connectionId]/test/route_client-reference-manifest.js +1 -0
  168. package/.next/standalone/apps/web/.next/server/app/api/mcp/route.js +1 -0
  169. package/.next/standalone/apps/web/.next/server/app/api/mcp/route.js.nft.json +1 -0
  170. package/.next/standalone/apps/web/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -0
  171. package/.next/standalone/apps/web/.next/server/app/api/media/[id]/frame/route.js +1 -0
  172. package/.next/standalone/apps/web/.next/server/app/api/media/[id]/frame/route.js.nft.json +1 -0
  173. package/.next/standalone/apps/web/.next/server/app/api/media/[id]/frame/route_client-reference-manifest.js +1 -0
  174. package/.next/standalone/apps/web/.next/server/app/api/media/[id]/route.js +1 -0
  175. package/.next/standalone/apps/web/.next/server/app/api/media/[id]/route.js.nft.json +1 -0
  176. package/.next/standalone/apps/web/.next/server/app/api/media/[id]/route_client-reference-manifest.js +1 -0
  177. package/.next/standalone/apps/web/.next/server/app/api/media/inspect/route.js +1 -0
  178. package/.next/standalone/apps/web/.next/server/app/api/media/inspect/route.js.nft.json +1 -0
  179. package/.next/standalone/apps/web/.next/server/app/api/media/inspect/route_client-reference-manifest.js +1 -0
  180. package/.next/standalone/apps/web/.next/server/app/api/media/jobs/[id]/approval/route.js +1 -0
  181. package/.next/standalone/apps/web/.next/server/app/api/media/jobs/[id]/approval/route.js.nft.json +1 -0
  182. package/.next/standalone/apps/web/.next/server/app/api/media/jobs/[id]/approval/route_client-reference-manifest.js +1 -0
  183. package/.next/standalone/apps/web/.next/server/app/api/media/jobs/[id]/route.js +1 -0
  184. package/.next/standalone/apps/web/.next/server/app/api/media/jobs/[id]/route.js.nft.json +1 -0
  185. package/.next/standalone/apps/web/.next/server/app/api/media/jobs/[id]/route_client-reference-manifest.js +1 -0
  186. package/.next/standalone/apps/web/.next/server/app/api/media/process/route.js +2 -0
  187. package/.next/standalone/apps/web/.next/server/app/api/media/process/route.js.nft.json +1 -0
  188. package/.next/standalone/apps/web/.next/server/app/api/media/process/route_client-reference-manifest.js +1 -0
  189. package/.next/standalone/apps/web/.next/server/app/api/media/route.js +1 -0
  190. package/.next/standalone/apps/web/.next/server/app/api/media/route.js.nft.json +1 -0
  191. package/.next/standalone/apps/web/.next/server/app/api/media/route_client-reference-manifest.js +1 -0
  192. package/.next/standalone/apps/web/.next/server/app/api/media/stream/route.js +5 -0
  193. package/.next/standalone/apps/web/.next/server/app/api/media/stream/route.js.nft.json +1 -0
  194. package/.next/standalone/apps/web/.next/server/app/api/media/stream/route_client-reference-manifest.js +1 -0
  195. package/.next/standalone/apps/web/.next/server/app/api/models/route.js +1 -0
  196. package/.next/standalone/apps/web/.next/server/app/api/models/route.js.nft.json +1 -0
  197. package/.next/standalone/apps/web/.next/server/app/api/models/route_client-reference-manifest.js +1 -0
  198. package/.next/standalone/apps/web/.next/server/app/api/parse-file/route.js +1 -0
  199. package/.next/standalone/apps/web/.next/server/app/api/parse-file/route.js.nft.json +1 -0
  200. package/.next/standalone/apps/web/.next/server/app/api/parse-file/route_client-reference-manifest.js +1 -0
  201. package/.next/standalone/apps/web/.next/server/app/api/pdf-page/route.js +1 -0
  202. package/.next/standalone/apps/web/.next/server/app/api/pdf-page/route.js.nft.json +1 -0
  203. package/.next/standalone/apps/web/.next/server/app/api/pdf-page/route_client-reference-manifest.js +1 -0
  204. package/.next/standalone/apps/web/.next/server/app/api/projects/deployments/route.js +1 -0
  205. package/.next/standalone/apps/web/.next/server/app/api/projects/deployments/route.js.nft.json +1 -0
  206. package/.next/standalone/apps/web/.next/server/app/api/projects/deployments/route_client-reference-manifest.js +1 -0
  207. package/.next/standalone/apps/web/.next/server/app/api/projects/route.js +1 -0
  208. package/.next/standalone/apps/web/.next/server/app/api/projects/route.js.nft.json +1 -0
  209. package/.next/standalone/apps/web/.next/server/app/api/projects/route_client-reference-manifest.js +1 -0
  210. package/.next/standalone/apps/web/.next/server/app/api/projects/runtime/route.js +1 -0
  211. package/.next/standalone/apps/web/.next/server/app/api/projects/runtime/route.js.nft.json +1 -0
  212. package/.next/standalone/apps/web/.next/server/app/api/projects/runtime/route_client-reference-manifest.js +1 -0
  213. package/.next/standalone/apps/web/.next/server/app/api/proxy/verify/route.js +1 -0
  214. package/.next/standalone/apps/web/.next/server/app/api/proxy/verify/route.js.nft.json +1 -0
  215. package/.next/standalone/apps/web/.next/server/app/api/proxy/verify/route_client-reference-manifest.js +1 -0
  216. package/.next/standalone/apps/web/.next/server/app/api/sandbox/route.js +1 -0
  217. package/.next/standalone/apps/web/.next/server/app/api/sandbox/route.js.nft.json +1 -0
  218. package/.next/standalone/apps/web/.next/server/app/api/sandbox/route_client-reference-manifest.js +1 -0
  219. package/.next/standalone/apps/web/.next/server/app/api/sandbox/verify/route.js +1 -0
  220. package/.next/standalone/apps/web/.next/server/app/api/sandbox/verify/route.js.nft.json +1 -0
  221. package/.next/standalone/apps/web/.next/server/app/api/sandbox/verify/route_client-reference-manifest.js +1 -0
  222. package/.next/standalone/apps/web/.next/server/app/api/search/bing/route.js +1 -0
  223. package/.next/standalone/apps/web/.next/server/app/api/search/bing/route.js.nft.json +1 -0
  224. package/.next/standalone/apps/web/.next/server/app/api/search/bing/route_client-reference-manifest.js +1 -0
  225. package/.next/standalone/apps/web/.next/server/app/api/search/brave/route.js +1 -0
  226. package/.next/standalone/apps/web/.next/server/app/api/search/brave/route.js.nft.json +1 -0
  227. package/.next/standalone/apps/web/.next/server/app/api/search/brave/route_client-reference-manifest.js +1 -0
  228. package/.next/standalone/apps/web/.next/server/app/api/search/exa/route.js +1 -0
  229. package/.next/standalone/apps/web/.next/server/app/api/search/exa/route.js.nft.json +1 -0
  230. package/.next/standalone/apps/web/.next/server/app/api/search/exa/route_client-reference-manifest.js +1 -0
  231. package/.next/standalone/apps/web/.next/server/app/api/search/google/route.js +1 -0
  232. package/.next/standalone/apps/web/.next/server/app/api/search/google/route.js.nft.json +1 -0
  233. package/.next/standalone/apps/web/.next/server/app/api/search/google/route_client-reference-manifest.js +1 -0
  234. package/.next/standalone/apps/web/.next/server/app/api/search/route.js +1 -0
  235. package/.next/standalone/apps/web/.next/server/app/api/search/route.js.nft.json +1 -0
  236. package/.next/standalone/apps/web/.next/server/app/api/search/route_client-reference-manifest.js +1 -0
  237. package/.next/standalone/apps/web/.next/server/app/api/search/tavily/route.js +1 -0
  238. package/.next/standalone/apps/web/.next/server/app/api/search/tavily/route.js.nft.json +1 -0
  239. package/.next/standalone/apps/web/.next/server/app/api/search/tavily/route_client-reference-manifest.js +1 -0
  240. package/.next/standalone/apps/web/.next/server/app/api/search/verify/route.js +1 -0
  241. package/.next/standalone/apps/web/.next/server/app/api/search/verify/route.js.nft.json +1 -0
  242. package/.next/standalone/apps/web/.next/server/app/api/search/verify/route_client-reference-manifest.js +1 -0
  243. package/.next/standalone/apps/web/.next/server/app/api/system/cache/route.js +2 -0
  244. package/.next/standalone/apps/web/.next/server/app/api/system/cache/route.js.nft.json +1 -0
  245. package/.next/standalone/apps/web/.next/server/app/api/system/cache/route_client-reference-manifest.js +1 -0
  246. package/.next/standalone/apps/web/.next/server/app/api/tabular/query/route.js +1 -0
  247. package/.next/standalone/apps/web/.next/server/app/api/tabular/query/route.js.nft.json +1 -0
  248. package/.next/standalone/apps/web/.next/server/app/api/tabular/query/route_client-reference-manifest.js +1 -0
  249. package/.next/standalone/apps/web/.next/server/app/api/tabular/route.js +1 -0
  250. package/.next/standalone/apps/web/.next/server/app/api/tabular/route.js.nft.json +1 -0
  251. package/.next/standalone/apps/web/.next/server/app/api/tabular/route_client-reference-manifest.js +1 -0
  252. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/host/route.js +1 -0
  253. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/host/route.js.nft.json +1 -0
  254. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/host/route_client-reference-manifest.js +1 -0
  255. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/runtime/route.js +1 -0
  256. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/runtime/route.js.nft.json +1 -0
  257. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/runtime/route_client-reference-manifest.js +1 -0
  258. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/usage/route.js +1 -0
  259. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/usage/route.js.nft.json +1 -0
  260. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/usage/route_client-reference-manifest.js +1 -0
  261. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/usage-request/route.js +1 -0
  262. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/usage-request/route.js.nft.json +1 -0
  263. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/usage-request/route_client-reference-manifest.js +1 -0
  264. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/verify/route.js +1 -0
  265. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/verify/route.js.nft.json +1 -0
  266. package/.next/standalone/apps/web/.next/server/app/api/tools/[toolId]/verify/route_client-reference-manifest.js +1 -0
  267. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/connection/route.js +1 -0
  268. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/connection/route.js.nft.json +1 -0
  269. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/connection/route_client-reference-manifest.js +1 -0
  270. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/usage/route.js +1 -0
  271. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/usage/route.js.nft.json +1 -0
  272. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/usage/route_client-reference-manifest.js +1 -0
  273. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/usage-request/route.js +1 -0
  274. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/usage-request/route.js.nft.json +1 -0
  275. package/.next/standalone/apps/web/.next/server/app/api/tools/video-intelligence/usage-request/route_client-reference-manifest.js +1 -0
  276. package/.next/standalone/apps/web/.next/server/app/api/upload-file/route.js +1 -0
  277. package/.next/standalone/apps/web/.next/server/app/api/upload-file/route.js.nft.json +1 -0
  278. package/.next/standalone/apps/web/.next/server/app/api/upload-file/route_client-reference-manifest.js +1 -0
  279. package/.next/standalone/apps/web/.next/server/app/api/uploads/[...slug]/route.js +1 -0
  280. package/.next/standalone/apps/web/.next/server/app/api/uploads/[...slug]/route.js.nft.json +1 -0
  281. package/.next/standalone/apps/web/.next/server/app/api/uploads/[...slug]/route_client-reference-manifest.js +1 -0
  282. package/.next/standalone/apps/web/.next/server/app/api/vector-stores/install/route.js +1 -0
  283. package/.next/standalone/apps/web/.next/server/app/api/vector-stores/install/route.js.nft.json +1 -0
  284. package/.next/standalone/apps/web/.next/server/app/api/vector-stores/install/route_client-reference-manifest.js +1 -0
  285. package/.next/standalone/apps/web/.next/server/app/api/vector-stores/status/route.js +1 -0
  286. package/.next/standalone/apps/web/.next/server/app/api/vector-stores/status/route.js.nft.json +1 -0
  287. package/.next/standalone/apps/web/.next/server/app/api/vector-stores/status/route_client-reference-manifest.js +1 -0
  288. package/.next/standalone/apps/web/.next/server/app/chat/[id]/page.js +1 -0
  289. package/.next/standalone/apps/web/.next/server/app/chat/[id]/page.js.nft.json +1 -0
  290. package/.next/standalone/apps/web/.next/server/app/chat/[id]/page_client-reference-manifest.js +1 -0
  291. package/.next/standalone/apps/web/.next/server/app/chat/page.js +1 -0
  292. package/.next/standalone/apps/web/.next/server/app/chat/page.js.nft.json +1 -0
  293. package/.next/standalone/apps/web/.next/server/app/chat/page_client-reference-manifest.js +1 -0
  294. package/.next/standalone/apps/web/.next/server/app/chat.html +1 -0
  295. package/.next/standalone/apps/web/.next/server/app/chat.meta +34 -0
  296. package/.next/standalone/apps/web/.next/server/app/chat.rsc +28 -0
  297. package/.next/standalone/apps/web/.next/server/app/chat.segments/_full.segment.rsc +28 -0
  298. package/.next/standalone/apps/web/.next/server/app/chat.segments/_tree.segment.rsc +3 -0
  299. package/.next/standalone/apps/web/.next/server/app/chat.segments/chat/__PAGE__.segment.rsc +34 -0
  300. package/.next/standalone/apps/web/.next/server/app/data/page.js +1 -0
  301. package/.next/standalone/apps/web/.next/server/app/data/page.js.nft.json +1 -0
  302. package/.next/standalone/apps/web/.next/server/app/data/page_client-reference-manifest.js +1 -0
  303. package/.next/standalone/apps/web/.next/server/app/data.html +1 -0
  304. package/.next/standalone/apps/web/.next/server/app/data.meta +34 -0
  305. package/.next/standalone/apps/web/.next/server/app/data.rsc +27 -0
  306. package/.next/standalone/apps/web/.next/server/app/data.segments/_full.segment.rsc +27 -0
  307. package/.next/standalone/apps/web/.next/server/app/data.segments/_tree.segment.rsc +2 -0
  308. package/.next/standalone/apps/web/.next/server/app/data.segments/data/__PAGE__.segment.rsc +33 -0
  309. package/.next/standalone/apps/web/.next/server/app/favicon.ico/route.js +1 -0
  310. package/.next/standalone/apps/web/.next/server/app/favicon.ico/route.js.nft.json +1 -0
  311. package/.next/standalone/apps/web/.next/server/app/favicon.ico.body +0 -0
  312. package/.next/standalone/apps/web/.next/server/app/favicon.ico.meta +1 -0
  313. package/.next/standalone/apps/web/.next/server/app/index.html +1 -0
  314. package/.next/standalone/apps/web/.next/server/app/index.meta +29 -0
  315. package/.next/standalone/apps/web/.next/server/app/index.rsc +25 -0
  316. package/.next/standalone/apps/web/.next/server/app/index.segments/__PAGE__.segment.rsc +30 -0
  317. package/.next/standalone/apps/web/.next/server/app/index.segments/_full.segment.rsc +25 -0
  318. package/.next/standalone/apps/web/.next/server/app/index.segments/_tree.segment.rsc +2 -0
  319. package/.next/standalone/apps/web/.next/server/app/page.js +1 -0
  320. package/.next/standalone/apps/web/.next/server/app/page.js.nft.json +1 -0
  321. package/.next/standalone/apps/web/.next/server/app/page_client-reference-manifest.js +1 -0
  322. package/.next/standalone/apps/web/.next/server/app/settings/page.js +216 -0
  323. package/.next/standalone/apps/web/.next/server/app/settings/page.js.nft.json +1 -0
  324. package/.next/standalone/apps/web/.next/server/app/settings/page_client-reference-manifest.js +1 -0
  325. package/.next/standalone/apps/web/.next/server/app/settings.html +1 -0
  326. package/.next/standalone/apps/web/.next/server/app/settings.meta +34 -0
  327. package/.next/standalone/apps/web/.next/server/app/settings.rsc +30 -0
  328. package/.next/standalone/apps/web/.next/server/app/settings.segments/_full.segment.rsc +30 -0
  329. package/.next/standalone/apps/web/.next/server/app/settings.segments/_tree.segment.rsc +2 -0
  330. package/.next/standalone/apps/web/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +36 -0
  331. package/.next/standalone/apps/web/.next/server/app-paths-manifest.json +94 -0
  332. package/.next/standalone/apps/web/.next/server/chunks/101.js +24 -0
  333. package/.next/standalone/apps/web/.next/server/chunks/1149.js +1 -0
  334. package/.next/standalone/apps/web/.next/server/chunks/1309.js +1 -0
  335. package/.next/standalone/apps/web/.next/server/chunks/1389.js +5 -0
  336. package/.next/standalone/apps/web/.next/server/chunks/1479.js +1 -0
  337. package/.next/standalone/apps/web/.next/server/chunks/1602.js +1 -0
  338. package/.next/standalone/apps/web/.next/server/chunks/1778.js +1 -0
  339. package/.next/standalone/apps/web/.next/server/chunks/1810.js +1 -0
  340. package/.next/standalone/apps/web/.next/server/chunks/1953.js +1 -0
  341. package/.next/standalone/apps/web/.next/server/chunks/1999.js +6 -0
  342. package/.next/standalone/apps/web/.next/server/chunks/2097.js +1 -0
  343. package/.next/standalone/apps/web/.next/server/chunks/2129.js +47 -0
  344. package/.next/standalone/apps/web/.next/server/chunks/2411.js +193 -0
  345. package/.next/standalone/apps/web/.next/server/chunks/2500.js +1 -0
  346. package/.next/standalone/apps/web/.next/server/chunks/2552.js +1 -0
  347. package/.next/standalone/apps/web/.next/server/chunks/2595.js +45 -0
  348. package/.next/standalone/apps/web/.next/server/chunks/2883.js +1 -0
  349. package/.next/standalone/apps/web/.next/server/chunks/2918.js +212 -0
  350. package/.next/standalone/apps/web/.next/server/chunks/309.js +2 -0
  351. package/.next/standalone/apps/web/.next/server/chunks/3122.js +1 -0
  352. package/.next/standalone/apps/web/.next/server/chunks/3257.js +1 -0
  353. package/.next/standalone/apps/web/.next/server/chunks/3287.js +1 -0
  354. package/.next/standalone/apps/web/.next/server/chunks/3304.js +1 -0
  355. package/.next/standalone/apps/web/.next/server/chunks/340.js +1 -0
  356. package/.next/standalone/apps/web/.next/server/chunks/3545.js +6 -0
  357. package/.next/standalone/apps/web/.next/server/chunks/3577.js +27 -0
  358. package/.next/standalone/apps/web/.next/server/chunks/3609.js +1 -0
  359. package/.next/standalone/apps/web/.next/server/chunks/364.js +36 -0
  360. package/.next/standalone/apps/web/.next/server/chunks/3642.js +1 -0
  361. package/.next/standalone/apps/web/.next/server/chunks/365.js +1 -0
  362. package/.next/standalone/apps/web/.next/server/chunks/4292.js +1 -0
  363. package/.next/standalone/apps/web/.next/server/chunks/4327.js +1 -0
  364. package/.next/standalone/apps/web/.next/server/chunks/4375.js +1 -0
  365. package/.next/standalone/apps/web/.next/server/chunks/4441.js +1 -0
  366. package/.next/standalone/apps/web/.next/server/chunks/4915.js +1 -0
  367. package/.next/standalone/apps/web/.next/server/chunks/5072.js +47 -0
  368. package/.next/standalone/apps/web/.next/server/chunks/5078.js +1 -0
  369. package/.next/standalone/apps/web/.next/server/chunks/5523.js +10 -0
  370. package/.next/standalone/apps/web/.next/server/chunks/5701.js +1 -0
  371. package/.next/standalone/apps/web/.next/server/chunks/5760.js +11 -0
  372. package/.next/standalone/apps/web/.next/server/chunks/5770.js +1 -0
  373. package/.next/standalone/apps/web/.next/server/chunks/588.js +1 -0
  374. package/.next/standalone/apps/web/.next/server/chunks/5884.js +1 -0
  375. package/.next/standalone/apps/web/.next/server/chunks/5937.js +1 -0
  376. package/.next/standalone/apps/web/.next/server/chunks/5995.js +1 -0
  377. package/.next/standalone/apps/web/.next/server/chunks/600.js +1 -0
  378. package/.next/standalone/apps/web/.next/server/chunks/6014.js +1 -0
  379. package/.next/standalone/apps/web/.next/server/chunks/6066.js +1 -0
  380. package/.next/standalone/apps/web/.next/server/chunks/6149.js +1 -0
  381. package/.next/standalone/apps/web/.next/server/chunks/6199.js +1 -0
  382. package/.next/standalone/apps/web/.next/server/chunks/620.js +78 -0
  383. package/.next/standalone/apps/web/.next/server/chunks/6207.js +14 -0
  384. package/.next/standalone/apps/web/.next/server/chunks/63.js +1 -0
  385. package/.next/standalone/apps/web/.next/server/chunks/6457.js +2 -0
  386. package/.next/standalone/apps/web/.next/server/chunks/6479.js +35 -0
  387. package/.next/standalone/apps/web/.next/server/chunks/657.js +84 -0
  388. package/.next/standalone/apps/web/.next/server/chunks/6573.js +1 -0
  389. package/.next/standalone/apps/web/.next/server/chunks/6814.js +18 -0
  390. package/.next/standalone/apps/web/.next/server/chunks/6909.js +1 -0
  391. package/.next/standalone/apps/web/.next/server/chunks/7010.js +1 -0
  392. package/.next/standalone/apps/web/.next/server/chunks/7289.js +1 -0
  393. package/.next/standalone/apps/web/.next/server/chunks/7324.js +1 -0
  394. package/.next/standalone/apps/web/.next/server/chunks/741.js +1 -0
  395. package/.next/standalone/apps/web/.next/server/chunks/7448.js +165 -0
  396. package/.next/standalone/apps/web/.next/server/chunks/7459.js +1 -0
  397. package/.next/standalone/apps/web/.next/server/chunks/7613.js +1 -0
  398. package/.next/standalone/apps/web/.next/server/chunks/7945.js +1 -0
  399. package/.next/standalone/apps/web/.next/server/chunks/7974.js +20 -0
  400. package/.next/standalone/apps/web/.next/server/chunks/8005.js +41 -0
  401. package/.next/standalone/apps/web/.next/server/chunks/8052.js +55 -0
  402. package/.next/standalone/apps/web/.next/server/chunks/8169.js +1 -0
  403. package/.next/standalone/apps/web/.next/server/chunks/8299.js +2 -0
  404. package/.next/standalone/apps/web/.next/server/chunks/8358.js +1 -0
  405. package/.next/standalone/apps/web/.next/server/chunks/843.js +1 -0
  406. package/.next/standalone/apps/web/.next/server/chunks/8437.js +12 -0
  407. package/.next/standalone/apps/web/.next/server/chunks/8840.js +1 -0
  408. package/.next/standalone/apps/web/.next/server/chunks/8952.js +1859 -0
  409. package/.next/standalone/apps/web/.next/server/chunks/9016.js +1 -0
  410. package/.next/standalone/apps/web/.next/server/chunks/9028.js +1 -0
  411. package/.next/standalone/apps/web/.next/server/chunks/9077.js +1 -0
  412. package/.next/standalone/apps/web/.next/server/chunks/915.js +1 -0
  413. package/.next/standalone/apps/web/.next/server/chunks/9248.js +256 -0
  414. package/.next/standalone/apps/web/.next/server/chunks/9301.js +1 -0
  415. package/.next/standalone/apps/web/.next/server/chunks/9319.js +1 -0
  416. package/.next/standalone/apps/web/.next/server/chunks/9439.js +24 -0
  417. package/.next/standalone/apps/web/.next/server/chunks/9480.js +1 -0
  418. package/.next/standalone/apps/web/.next/server/chunks/9579.js +1 -0
  419. package/.next/standalone/apps/web/.next/server/chunks/9768.js +4 -0
  420. package/.next/standalone/apps/web/.next/server/chunks/9837.js +121 -0
  421. package/.next/standalone/apps/web/.next/server/chunks/9851.js +1 -0
  422. package/.next/standalone/apps/web/.next/server/chunks/static/media/pdf.worker.min.63b810cd.mjs +6 -0
  423. package/.next/standalone/apps/web/.next/server/functions-config-manifest.json +82 -0
  424. package/.next/standalone/apps/web/.next/server/middleware-build-manifest.js +1 -0
  425. package/.next/standalone/apps/web/.next/server/middleware-manifest.json +6 -0
  426. package/.next/standalone/apps/web/.next/server/middleware-react-loadable-manifest.js +1 -0
  427. package/.next/standalone/apps/web/.next/server/next-font-manifest.js +1 -0
  428. package/.next/standalone/apps/web/.next/server/next-font-manifest.json +1 -0
  429. package/.next/standalone/apps/web/.next/server/pages/404.html +1 -0
  430. package/.next/standalone/apps/web/.next/server/pages/500.html +1 -0
  431. package/.next/standalone/apps/web/.next/server/pages-manifest.json +4 -0
  432. package/.next/standalone/apps/web/.next/server/prefetch-hints.json +95 -0
  433. package/.next/standalone/apps/web/.next/server/server-reference-manifest.js +1 -0
  434. package/.next/standalone/apps/web/.next/server/server-reference-manifest.json +1 -0
  435. package/.next/standalone/apps/web/.next/server/webpack-runtime.js +1 -0
  436. package/.next/standalone/apps/web/.next/static/chunks/0ed6b8a9-7f39ffa51cd4d7d3.js +1 -0
  437. package/.next/standalone/apps/web/.next/static/chunks/1788-3ec11e3d6d6986e9.js +1 -0
  438. package/.next/standalone/apps/web/.next/static/chunks/1986-2eb6c09f2f556e84.js +1 -0
  439. package/.next/standalone/apps/web/.next/static/chunks/2038-1dc8a3028545edab.js +1 -0
  440. package/.next/standalone/apps/web/.next/static/chunks/217c94bb-b2b832568a17950f.js +1 -0
  441. package/.next/standalone/apps/web/.next/static/chunks/227-7f3dac471f0eb3b0.js +1 -0
  442. package/.next/standalone/apps/web/.next/static/chunks/2634.803b324122bd1d49.js +1 -0
  443. package/.next/standalone/apps/web/.next/static/chunks/2928-8a2d9ed34f45623a.js +1 -0
  444. package/.next/standalone/apps/web/.next/static/chunks/3182.74de4aadefc6e951.js +1 -0
  445. package/.next/standalone/apps/web/.next/static/chunks/3259.41d1a9e21c751dca.js +1 -0
  446. package/.next/standalone/apps/web/.next/static/chunks/3853-f4d7f7a9e7afd752.js +1 -0
  447. package/.next/standalone/apps/web/.next/static/chunks/4112ad79.b782044759df4bc8.js +45 -0
  448. package/.next/standalone/apps/web/.next/static/chunks/4765-48a3b66331719b80.js +1 -0
  449. package/.next/standalone/apps/web/.next/static/chunks/4975-4de53a9574e52468.js +1 -0
  450. package/.next/standalone/apps/web/.next/static/chunks/5833-f7b1cb2153cd52ab.js +1 -0
  451. package/.next/standalone/apps/web/.next/static/chunks/6462-9d67b69d990b1234.js +1 -0
  452. package/.next/standalone/apps/web/.next/static/chunks/6837-67b91a5109edf8a8.js +1 -0
  453. package/.next/standalone/apps/web/.next/static/chunks/6880.4300fd5c0fd7f17a.js +1 -0
  454. package/.next/standalone/apps/web/.next/static/chunks/6904-f77e06e821ecae13.js +52 -0
  455. package/.next/standalone/apps/web/.next/static/chunks/7534-8b910687515b8403.js +6 -0
  456. package/.next/standalone/apps/web/.next/static/chunks/7857.ce5356f660fb54a1.js +1 -0
  457. package/.next/standalone/apps/web/.next/static/chunks/8226-c6f5131375b6df6a.js +3 -0
  458. package/.next/standalone/apps/web/.next/static/chunks/9734-c7b94c9bf40c9b2e.js +1 -0
  459. package/.next/standalone/apps/web/.next/static/chunks/9779-5dc3db110e05c070.js +1 -0
  460. package/.next/standalone/apps/web/.next/static/chunks/9987-45c7dfa599210f7e.js +78 -0
  461. package/.next/standalone/apps/web/.next/static/chunks/app/_global-error/page-0d4f12c4c9cbf85f.js +1 -0
  462. package/.next/standalone/apps/web/.next/static/chunks/app/_not-found/page-7007da1b6a809c3d.js +1 -0
  463. package/.next/standalone/apps/web/.next/static/chunks/app/add/page-d423813ec2556ef0.js +1 -0
  464. package/.next/standalone/apps/web/.next/static/chunks/app/api/analytics/route-0d4f12c4c9cbf85f.js +1 -0
  465. package/.next/standalone/apps/web/.next/static/chunks/app/api/chat/feedback/route-0d4f12c4c9cbf85f.js +1 -0
  466. package/.next/standalone/apps/web/.next/static/chunks/app/api/chat/route-0d4f12c4c9cbf85f.js +1 -0
  467. package/.next/standalone/apps/web/.next/static/chunks/app/api/chat/status/route-0d4f12c4c9cbf85f.js +1 -0
  468. package/.next/standalone/apps/web/.next/static/chunks/app/api/config/route-0d4f12c4c9cbf85f.js +1 -0
  469. package/.next/standalone/apps/web/.next/static/chunks/app/api/config/test/route-0d4f12c4c9cbf85f.js +1 -0
  470. package/.next/standalone/apps/web/.next/static/chunks/app/api/config/test-embedding/route-0d4f12c4c9cbf85f.js +1 -0
  471. package/.next/standalone/apps/web/.next/static/chunks/app/api/config/test-llm/route-0d4f12c4c9cbf85f.js +1 -0
  472. package/.next/standalone/apps/web/.next/static/chunks/app/api/config/test-provider/route-0d4f12c4c9cbf85f.js +1 -0
  473. package/.next/standalone/apps/web/.next/static/chunks/app/api/config/verify/route-0d4f12c4c9cbf85f.js +1 -0
  474. package/.next/standalone/apps/web/.next/static/chunks/app/api/connections/[channelId]/oauth/callback/route-0d4f12c4c9cbf85f.js +1 -0
  475. package/.next/standalone/apps/web/.next/static/chunks/app/api/connections/[channelId]/oauth/start/route-0d4f12c4c9cbf85f.js +1 -0
  476. package/.next/standalone/apps/web/.next/static/chunks/app/api/connections/[channelId]/route-0d4f12c4c9cbf85f.js +1 -0
  477. package/.next/standalone/apps/web/.next/static/chunks/app/api/connections/route-0d4f12c4c9cbf85f.js +1 -0
  478. package/.next/standalone/apps/web/.next/static/chunks/app/api/connections/tunnel/route-0d4f12c4c9cbf85f.js +1 -0
  479. package/.next/standalone/apps/web/.next/static/chunks/app/api/demo/route-0d4f12c4c9cbf85f.js +1 -0
  480. package/.next/standalone/apps/web/.next/static/chunks/app/api/deploy/ssh/route-0d4f12c4c9cbf85f.js +1 -0
  481. package/.next/standalone/apps/web/.next/static/chunks/app/api/deploy/verify/route-0d4f12c4c9cbf85f.js +1 -0
  482. package/.next/standalone/apps/web/.next/static/chunks/app/api/describe-image/route-0d4f12c4c9cbf85f.js +1 -0
  483. package/.next/standalone/apps/web/.next/static/chunks/app/api/doc-editor/edit/route-0d4f12c4c9cbf85f.js +1 -0
  484. package/.next/standalone/apps/web/.next/static/chunks/app/api/doc-editor/export/route-0d4f12c4c9cbf85f.js +1 -0
  485. package/.next/standalone/apps/web/.next/static/chunks/app/api/doc-editor/extract-text/route-0d4f12c4c9cbf85f.js +1 -0
  486. package/.next/standalone/apps/web/.next/static/chunks/app/api/doc-editor/parse/route-0d4f12c4c9cbf85f.js +1 -0
  487. package/.next/standalone/apps/web/.next/static/chunks/app/api/doc-editor/restore/route-0d4f12c4c9cbf85f.js +1 -0
  488. package/.next/standalone/apps/web/.next/static/chunks/app/api/document/sign/route-0d4f12c4c9cbf85f.js +1 -0
  489. package/.next/standalone/apps/web/.next/static/chunks/app/api/documents/move/route-0d4f12c4c9cbf85f.js +1 -0
  490. package/.next/standalone/apps/web/.next/static/chunks/app/api/documents/route-0d4f12c4c9cbf85f.js +1 -0
  491. package/.next/standalone/apps/web/.next/static/chunks/app/api/files/remote/route-0d4f12c4c9cbf85f.js +1 -0
  492. package/.next/standalone/apps/web/.next/static/chunks/app/api/firecrawl/local/route-0d4f12c4c9cbf85f.js +1 -0
  493. package/.next/standalone/apps/web/.next/static/chunks/app/api/gpu-activity/route-0d4f12c4c9cbf85f.js +1 -0
  494. package/.next/standalone/apps/web/.next/static/chunks/app/api/groups/route-0d4f12c4c9cbf85f.js +1 -0
  495. package/.next/standalone/apps/web/.next/static/chunks/app/api/index/route-0d4f12c4c9cbf85f.js +1 -0
  496. package/.next/standalone/apps/web/.next/static/chunks/app/api/integrations/[integration]/callback/route-0d4f12c4c9cbf85f.js +1 -0
  497. package/.next/standalone/apps/web/.next/static/chunks/app/api/integrations/[integration]/route-0d4f12c4c9cbf85f.js +1 -0
  498. package/.next/standalone/apps/web/.next/static/chunks/app/api/integrations/notion/callback/route-0d4f12c4c9cbf85f.js +1 -0
  499. package/.next/standalone/apps/web/.next/static/chunks/app/api/integrations/notion/route-0d4f12c4c9cbf85f.js +1 -0
  500. package/.next/standalone/apps/web/.next/static/chunks/app/api/integrations/route-0d4f12c4c9cbf85f.js +1 -0
  501. package/.next/standalone/apps/web/.next/static/chunks/app/api/jobs/[id]/route-0d4f12c4c9cbf85f.js +1 -0
  502. package/.next/standalone/apps/web/.next/static/chunks/app/api/jobs/route-0d4f12c4c9cbf85f.js +1 -0
  503. package/.next/standalone/apps/web/.next/static/chunks/app/api/marketplace/[toolId]/route-0d4f12c4c9cbf85f.js +1 -0
  504. package/.next/standalone/apps/web/.next/static/chunks/app/api/marketplace/route-0d4f12c4c9cbf85f.js +1 -0
  505. package/.next/standalone/apps/web/.next/static/chunks/app/api/mcp/[connectionId]/route-0d4f12c4c9cbf85f.js +1 -0
  506. package/.next/standalone/apps/web/.next/static/chunks/app/api/mcp/[connectionId]/test/route-0d4f12c4c9cbf85f.js +1 -0
  507. package/.next/standalone/apps/web/.next/static/chunks/app/api/mcp/route-0d4f12c4c9cbf85f.js +1 -0
  508. package/.next/standalone/apps/web/.next/static/chunks/app/api/media/[id]/frame/route-0d4f12c4c9cbf85f.js +1 -0
  509. package/.next/standalone/apps/web/.next/static/chunks/app/api/media/[id]/route-0d4f12c4c9cbf85f.js +1 -0
  510. package/.next/standalone/apps/web/.next/static/chunks/app/api/media/inspect/route-0d4f12c4c9cbf85f.js +1 -0
  511. package/.next/standalone/apps/web/.next/static/chunks/app/api/media/jobs/[id]/approval/route-0d4f12c4c9cbf85f.js +1 -0
  512. package/.next/standalone/apps/web/.next/static/chunks/app/api/media/jobs/[id]/route-0d4f12c4c9cbf85f.js +1 -0
  513. package/.next/standalone/apps/web/.next/static/chunks/app/api/media/process/route-0d4f12c4c9cbf85f.js +1 -0
  514. package/.next/standalone/apps/web/.next/static/chunks/app/api/media/route-0d4f12c4c9cbf85f.js +1 -0
  515. package/.next/standalone/apps/web/.next/static/chunks/app/api/media/stream/route-0d4f12c4c9cbf85f.js +1 -0
  516. package/.next/standalone/apps/web/.next/static/chunks/app/api/models/route-0d4f12c4c9cbf85f.js +1 -0
  517. package/.next/standalone/apps/web/.next/static/chunks/app/api/parse-file/route-0d4f12c4c9cbf85f.js +1 -0
  518. package/.next/standalone/apps/web/.next/static/chunks/app/api/pdf-page/route-0d4f12c4c9cbf85f.js +1 -0
  519. package/.next/standalone/apps/web/.next/static/chunks/app/api/projects/deployments/route-0d4f12c4c9cbf85f.js +1 -0
  520. package/.next/standalone/apps/web/.next/static/chunks/app/api/projects/route-0d4f12c4c9cbf85f.js +1 -0
  521. package/.next/standalone/apps/web/.next/static/chunks/app/api/projects/runtime/route-0d4f12c4c9cbf85f.js +1 -0
  522. package/.next/standalone/apps/web/.next/static/chunks/app/api/proxy/verify/route-0d4f12c4c9cbf85f.js +1 -0
  523. package/.next/standalone/apps/web/.next/static/chunks/app/api/sandbox/route-0d4f12c4c9cbf85f.js +1 -0
  524. package/.next/standalone/apps/web/.next/static/chunks/app/api/sandbox/verify/route-0d4f12c4c9cbf85f.js +1 -0
  525. package/.next/standalone/apps/web/.next/static/chunks/app/api/search/bing/route-0d4f12c4c9cbf85f.js +1 -0
  526. package/.next/standalone/apps/web/.next/static/chunks/app/api/search/brave/route-0d4f12c4c9cbf85f.js +1 -0
  527. package/.next/standalone/apps/web/.next/static/chunks/app/api/search/exa/route-0d4f12c4c9cbf85f.js +1 -0
  528. package/.next/standalone/apps/web/.next/static/chunks/app/api/search/google/route-0d4f12c4c9cbf85f.js +1 -0
  529. package/.next/standalone/apps/web/.next/static/chunks/app/api/search/route-0d4f12c4c9cbf85f.js +1 -0
  530. package/.next/standalone/apps/web/.next/static/chunks/app/api/search/tavily/route-0d4f12c4c9cbf85f.js +1 -0
  531. package/.next/standalone/apps/web/.next/static/chunks/app/api/search/verify/route-0d4f12c4c9cbf85f.js +1 -0
  532. package/.next/standalone/apps/web/.next/static/chunks/app/api/system/cache/route-0d4f12c4c9cbf85f.js +1 -0
  533. package/.next/standalone/apps/web/.next/static/chunks/app/api/tabular/query/route-0d4f12c4c9cbf85f.js +1 -0
  534. package/.next/standalone/apps/web/.next/static/chunks/app/api/tabular/route-0d4f12c4c9cbf85f.js +1 -0
  535. package/.next/standalone/apps/web/.next/static/chunks/app/api/tools/[toolId]/host/route-0d4f12c4c9cbf85f.js +1 -0
  536. package/.next/standalone/apps/web/.next/static/chunks/app/api/tools/[toolId]/runtime/route-0d4f12c4c9cbf85f.js +1 -0
  537. package/.next/standalone/apps/web/.next/static/chunks/app/api/tools/[toolId]/usage/route-0d4f12c4c9cbf85f.js +1 -0
  538. package/.next/standalone/apps/web/.next/static/chunks/app/api/tools/[toolId]/usage-request/route-0d4f12c4c9cbf85f.js +1 -0
  539. package/.next/standalone/apps/web/.next/static/chunks/app/api/tools/[toolId]/verify/route-0d4f12c4c9cbf85f.js +1 -0
  540. package/.next/standalone/apps/web/.next/static/chunks/app/api/tools/video-intelligence/connection/route-0d4f12c4c9cbf85f.js +1 -0
  541. package/.next/standalone/apps/web/.next/static/chunks/app/api/tools/video-intelligence/usage/route-0d4f12c4c9cbf85f.js +1 -0
  542. package/.next/standalone/apps/web/.next/static/chunks/app/api/tools/video-intelligence/usage-request/route-0d4f12c4c9cbf85f.js +1 -0
  543. package/.next/standalone/apps/web/.next/static/chunks/app/api/upload-file/route-0d4f12c4c9cbf85f.js +1 -0
  544. package/.next/standalone/apps/web/.next/static/chunks/app/api/uploads/[...slug]/route-0d4f12c4c9cbf85f.js +1 -0
  545. package/.next/standalone/apps/web/.next/static/chunks/app/api/vector-stores/install/route-0d4f12c4c9cbf85f.js +1 -0
  546. package/.next/standalone/apps/web/.next/static/chunks/app/api/vector-stores/status/route-0d4f12c4c9cbf85f.js +1 -0
  547. package/.next/standalone/apps/web/.next/static/chunks/app/chat/[id]/page-579d3515fee9f89a.js +1 -0
  548. package/.next/standalone/apps/web/.next/static/chunks/app/chat/page-bec03ef7408245b1.js +1 -0
  549. package/.next/standalone/apps/web/.next/static/chunks/app/data/page-02e56e093071379d.js +1 -0
  550. package/.next/standalone/apps/web/.next/static/chunks/app/layout-4b8ce98cb78f7113.js +1 -0
  551. package/.next/standalone/apps/web/.next/static/chunks/app/page-0d4f12c4c9cbf85f.js +1 -0
  552. package/.next/standalone/apps/web/.next/static/chunks/app/settings/page-485ea820c1111580.js +214 -0
  553. package/.next/standalone/apps/web/.next/static/chunks/app/template-6c3f1e7c9216df6c.js +1 -0
  554. package/.next/standalone/apps/web/.next/static/chunks/ca017448-ac5fddb4e8d1ca39.js +1 -0
  555. package/.next/standalone/apps/web/.next/static/chunks/db534642-baa98c214832026c.js +1 -0
  556. package/.next/standalone/apps/web/.next/static/chunks/framework-ae648e3ae9d64766.js +1 -0
  557. package/.next/standalone/apps/web/.next/static/chunks/main-25c6b3b10ba0a4a3.js +5 -0
  558. package/.next/standalone/apps/web/.next/static/chunks/main-app-ecde5d6ff9b76409.js +1 -0
  559. package/.next/standalone/apps/web/.next/static/chunks/next/dist/client/components/builtin/app-error-0d4f12c4c9cbf85f.js +1 -0
  560. package/.next/standalone/apps/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-0d4f12c4c9cbf85f.js +1 -0
  561. package/.next/standalone/apps/web/.next/static/chunks/next/dist/client/components/builtin/global-error-ab826e81c411f616.js +1 -0
  562. package/.next/standalone/apps/web/.next/static/chunks/next/dist/client/components/builtin/not-found-0d4f12c4c9cbf85f.js +1 -0
  563. package/.next/standalone/apps/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-0d4f12c4c9cbf85f.js +1 -0
  564. package/.next/standalone/apps/web/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  565. package/.next/standalone/apps/web/.next/static/chunks/webpack-8c15908ca85a5a46.js +1 -0
  566. package/.next/standalone/apps/web/.next/static/css/063aaab22a52e4b4.css +1 -0
  567. package/.next/standalone/apps/web/.next/static/css/a2d2ae3b76e6a5b6.css +1 -0
  568. package/.next/standalone/apps/web/.next/static/media/KaTeX_AMS-Regular.1608a09b.woff +0 -0
  569. package/.next/standalone/apps/web/.next/static/media/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
  570. package/.next/standalone/apps/web/.next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
  571. package/.next/standalone/apps/web/.next/static/media/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
  572. package/.next/standalone/apps/web/.next/static/media/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
  573. package/.next/standalone/apps/web/.next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
  574. package/.next/standalone/apps/web/.next/static/media/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
  575. package/.next/standalone/apps/web/.next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
  576. package/.next/standalone/apps/web/.next/static/media/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
  577. package/.next/standalone/apps/web/.next/static/media/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
  578. package/.next/standalone/apps/web/.next/static/media/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
  579. package/.next/standalone/apps/web/.next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
  580. package/.next/standalone/apps/web/.next/static/media/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
  581. package/.next/standalone/apps/web/.next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
  582. package/.next/standalone/apps/web/.next/static/media/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
  583. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
  584. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
  585. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Bold.d181c465.woff +0 -0
  586. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
  587. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
  588. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
  589. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Italic.47373d1e.ttf +0 -0
  590. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Italic.8916142b.woff2 +0 -0
  591. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Italic.9024d815.woff +0 -0
  592. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
  593. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Regular.7f51fe03.woff +0 -0
  594. package/.next/standalone/apps/web/.next/static/media/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
  595. package/.next/standalone/apps/web/.next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
  596. package/.next/standalone/apps/web/.next/static/media/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
  597. package/.next/standalone/apps/web/.next/static/media/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
  598. package/.next/standalone/apps/web/.next/static/media/KaTeX_Math-Italic.5295ba48.woff +0 -0
  599. package/.next/standalone/apps/web/.next/static/media/KaTeX_Math-Italic.939bc644.ttf +0 -0
  600. package/.next/standalone/apps/web/.next/static/media/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
  601. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
  602. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
  603. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
  604. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
  605. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
  606. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
  607. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Regular.74048478.woff +0 -0
  608. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
  609. package/.next/standalone/apps/web/.next/static/media/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
  610. package/.next/standalone/apps/web/.next/static/media/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
  611. package/.next/standalone/apps/web/.next/static/media/KaTeX_Script-Regular.07505710.woff +0 -0
  612. package/.next/standalone/apps/web/.next/static/media/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
  613. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
  614. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
  615. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
  616. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size2-Regular.57727022.woff +0 -0
  617. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
  618. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
  619. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
  620. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
  621. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
  622. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
  623. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
  624. package/.next/standalone/apps/web/.next/static/media/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
  625. package/.next/standalone/apps/web/.next/static/media/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
  626. package/.next/standalone/apps/web/.next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
  627. package/.next/standalone/apps/web/.next/static/media/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
  628. package/.next/standalone/apps/web/.next/static/media/pdf.worker.min.b6d469c6.mjs +6 -0
  629. package/.next/standalone/apps/web/.next/static/omDbbCzcQ9kxlZ8Gz0yln/_buildManifest.js +1 -0
  630. package/.next/standalone/apps/web/.next/static/omDbbCzcQ9kxlZ8Gz0yln/_ssgManifest.js +1 -0
  631. package/.next/standalone/apps/web/.next/types/cache-life.d.ts +146 -0
  632. package/.next/standalone/apps/web/.next/types/root-params.d.ts +3 -0
  633. package/.next/standalone/apps/web/.next/types/routes.d.ts +161 -0
  634. package/.next/standalone/apps/web/.next/types/validator.ts +862 -0
  635. package/.next/standalone/apps/web/AGENTS.md +9 -0
  636. package/.next/standalone/apps/web/CLAUDE.md +1 -0
  637. package/.next/standalone/apps/web/app/api/groups/route.test.ts +86 -0
  638. package/.next/standalone/apps/web/app/api/index/route.test.ts +55 -0
  639. package/.next/standalone/apps/web/app/api/marketplace/[toolId]/route.test.ts +83 -0
  640. package/.next/standalone/apps/web/app/api/marketplace/route.test.ts +117 -0
  641. package/.next/standalone/apps/web/app/api/tools/[toolId]/verify/route.test.ts +66 -0
  642. package/.next/standalone/apps/web/app/favicon.ico +0 -0
  643. package/.next/standalone/apps/web/app/globals.css +406 -0
  644. package/.next/standalone/apps/web/app/themes.css +234 -0
  645. package/.next/standalone/apps/web/bin/larkup.js +528 -0
  646. package/.next/standalone/apps/web/components/alerts/generic-alert.tsx +76 -0
  647. package/.next/standalone/apps/web/components/analytics/analytics-dashboard.tsx +517 -0
  648. package/.next/standalone/apps/web/components/chat/canvas/doc-editor-provider.tsx +331 -0
  649. package/.next/standalone/apps/web/components/chat/canvas/document-canvas.tsx +98 -0
  650. package/.next/standalone/apps/web/components/chat/canvas/document-field.tsx +167 -0
  651. package/.next/standalone/apps/web/components/chat/canvas/document-viewer.tsx +446 -0
  652. package/.next/standalone/apps/web/components/chat/canvas/file-attachment-button.tsx +88 -0
  653. package/.next/standalone/apps/web/components/chat/canvas/file-chip.tsx +147 -0
  654. package/.next/standalone/apps/web/components/chat/message-actions.tsx +96 -0
  655. package/.next/standalone/apps/web/components/chat/message-item.tsx +1404 -0
  656. package/.next/standalone/apps/web/components/chat/message-queue.tsx +86 -0
  657. package/.next/standalone/apps/web/components/chat/reasoning.tsx +182 -0
  658. package/.next/standalone/apps/web/components/chat/tools/chat-card.tsx +97 -0
  659. package/.next/standalone/apps/web/components/chat/tools/chat-chart.tsx +554 -0
  660. package/.next/standalone/apps/web/components/chat/tools/chat-citations.tsx +152 -0
  661. package/.next/standalone/apps/web/components/chat/tools/chat-data-table.tsx +377 -0
  662. package/.next/standalone/apps/web/components/chat/tools/chat-file-export.tsx +49 -0
  663. package/.next/standalone/apps/web/components/chat/tools/chat-grid.tsx +99 -0
  664. package/.next/standalone/apps/web/components/chat/tools/chat-media-preview.tsx +465 -0
  665. package/.next/standalone/apps/web/components/chat/tools/chat-metrics.tsx +76 -0
  666. package/.next/standalone/apps/web/components/chat/tools/chat-sandbox-result.tsx +130 -0
  667. package/.next/standalone/apps/web/components/chat/tools/chat-signature-request.tsx +809 -0
  668. package/.next/standalone/apps/web/components/chat/tools/chat-tabs.tsx +59 -0
  669. package/.next/standalone/apps/web/components/chat/tools/corpus-data-result.tsx +194 -0
  670. package/.next/standalone/apps/web/components/chat/tools/knowledge-base-result.tsx +345 -0
  671. package/.next/standalone/apps/web/components/chat/tools/visual-placement-modal.tsx +314 -0
  672. package/.next/standalone/apps/web/components/chat/tools/visualization-tabs.tsx +37 -0
  673. package/.next/standalone/apps/web/components/configure/custom-model-modal.tsx +214 -0
  674. package/.next/standalone/apps/web/components/configure/store-fields.tsx +129 -0
  675. package/.next/standalone/apps/web/components/data/corpus-panel.tsx +1124 -0
  676. package/.next/standalone/apps/web/components/data/data-entry-mode-switch.tsx +53 -0
  677. package/.next/standalone/apps/web/components/data/data-primary-action.ts +6 -0
  678. package/.next/standalone/apps/web/components/data/groups-panel.tsx +526 -0
  679. package/.next/standalone/apps/web/components/data/integration-resources-panel.tsx +281 -0
  680. package/.next/standalone/apps/web/components/data/integrations-panel.tsx +397 -0
  681. package/.next/standalone/apps/web/components/data/jobs-panel.tsx +487 -0
  682. package/.next/standalone/apps/web/components/data/jobs-tracking-button.tsx +221 -0
  683. package/.next/standalone/apps/web/components/data/live-media-progress.tsx +79 -0
  684. package/.next/standalone/apps/web/components/data/media-indexing-jobs-panel.tsx +190 -0
  685. package/.next/standalone/apps/web/components/data/media-panel.tsx +2883 -0
  686. package/.next/standalone/apps/web/components/data/notion-panel.tsx +405 -0
  687. package/.next/standalone/apps/web/components/data/paste-panel.tsx +100 -0
  688. package/.next/standalone/apps/web/components/data/scrape-panel.tsx +1275 -0
  689. package/.next/standalone/apps/web/components/data/tabular-preview.tsx +205 -0
  690. package/.next/standalone/apps/web/components/data/tool-indexing-dialog.tsx +210 -0
  691. package/.next/standalone/apps/web/components/data/upload-panel.tsx +1306 -0
  692. package/.next/standalone/apps/web/components/data/web-crawler-status.tsx +131 -0
  693. package/.next/standalone/apps/web/components/index/index-action-dialog.tsx +545 -0
  694. package/.next/standalone/apps/web/components/index/index-workspace.tsx +406 -0
  695. package/.next/standalone/apps/web/components/onboarding/welcome-screen.tsx +596 -0
  696. package/.next/standalone/apps/web/components/projects/delete-project-dialog.tsx +63 -0
  697. package/.next/standalone/apps/web/components/projects/project-form-dialog.tsx +97 -0
  698. package/.next/standalone/apps/web/components/projects/project-switcher.tsx +136 -0
  699. package/.next/standalone/apps/web/components/settings/general/agent-customization-section.tsx +619 -0
  700. package/.next/standalone/apps/web/components/settings/general/cache-management-card.tsx +176 -0
  701. package/.next/standalone/apps/web/components/settings/general/general-section.tsx +333 -0
  702. package/.next/standalone/apps/web/components/settings/general/mcp-connections-section.tsx +893 -0
  703. package/.next/standalone/apps/web/components/settings/general/model-combobox.tsx +235 -0
  704. package/.next/standalone/apps/web/components/settings/general/models-section.tsx +918 -0
  705. package/.next/standalone/apps/web/components/settings/general/sandbox-section.tsx +382 -0
  706. package/.next/standalone/apps/web/components/settings/general/search-scraping-section.tsx +749 -0
  707. package/.next/standalone/apps/web/components/settings/general/storage-indexing-section.tsx +389 -0
  708. package/.next/standalone/apps/web/components/settings/hub/marketplace-section.tsx +574 -0
  709. package/.next/standalone/apps/web/components/settings/hub/marketplace-tools-settings.tsx +1247 -0
  710. package/.next/standalone/apps/web/components/settings/runtime/connections-tab.tsx +1045 -0
  711. package/.next/standalone/apps/web/components/settings/runtime/deploy/index.ts +4 -0
  712. package/.next/standalone/apps/web/components/settings/runtime/deploy/project-deploy-button.tsx +245 -0
  713. package/.next/standalone/apps/web/components/settings/runtime/deploy/project-deploy-view.tsx +1592 -0
  714. package/.next/standalone/apps/web/components/settings/runtime/deploy/use-vps-deploy.ts +114 -0
  715. package/.next/standalone/apps/web/components/settings/runtime/deploy/vps-terminal-dialog.tsx +391 -0
  716. package/.next/standalone/apps/web/components/settings/runtime/playground-tab.tsx +359 -0
  717. package/.next/standalone/apps/web/components/settings/runtime/runtime-section.tsx +1001 -0
  718. package/.next/standalone/apps/web/components/settings/runtime/widget-snippets.ts +15 -0
  719. package/.next/standalone/apps/web/components/settings/runtime/widget-tab.tsx +426 -0
  720. package/.next/standalone/apps/web/components/settings/settings-layout.tsx +123 -0
  721. package/.next/standalone/apps/web/components/sidebar.tsx +208 -0
  722. package/.next/standalone/apps/web/components/topnav.tsx +92 -0
  723. package/.next/standalone/apps/web/components/ui/alert-dialog.tsx +187 -0
  724. package/.next/standalone/apps/web/components/ui/alert.tsx +76 -0
  725. package/.next/standalone/apps/web/components/ui/badge.tsx +52 -0
  726. package/.next/standalone/apps/web/components/ui/button.tsx +58 -0
  727. package/.next/standalone/apps/web/components/ui/card.tsx +92 -0
  728. package/.next/standalone/apps/web/components/ui/checkbox.tsx +28 -0
  729. package/.next/standalone/apps/web/components/ui/collapsible.tsx +21 -0
  730. package/.next/standalone/apps/web/components/ui/command.tsx +181 -0
  731. package/.next/standalone/apps/web/components/ui/dialog.tsx +138 -0
  732. package/.next/standalone/apps/web/components/ui/dropdown-menu.tsx +267 -0
  733. package/.next/standalone/apps/web/components/ui/input-group.tsx +146 -0
  734. package/.next/standalone/apps/web/components/ui/input.tsx +20 -0
  735. package/.next/standalone/apps/web/components/ui/label.tsx +20 -0
  736. package/.next/standalone/apps/web/components/ui/line-tabs.tsx +59 -0
  737. package/.next/standalone/apps/web/components/ui/popover.tsx +77 -0
  738. package/.next/standalone/apps/web/components/ui/progress.tsx +83 -0
  739. package/.next/standalone/apps/web/components/ui/provider-icon.tsx +165 -0
  740. package/.next/standalone/apps/web/components/ui/scroll-area.tsx +55 -0
  741. package/.next/standalone/apps/web/components/ui/select.tsx +231 -0
  742. package/.next/standalone/apps/web/components/ui/separator.tsx +25 -0
  743. package/.next/standalone/apps/web/components/ui/sheet.tsx +125 -0
  744. package/.next/standalone/apps/web/components/ui/skeleton.tsx +14 -0
  745. package/.next/standalone/apps/web/components/ui/slider.tsx +52 -0
  746. package/.next/standalone/apps/web/components/ui/switch.tsx +32 -0
  747. package/.next/standalone/apps/web/components/ui/table.tsx +116 -0
  748. package/.next/standalone/apps/web/components/ui/tabs.tsx +77 -0
  749. package/.next/standalone/apps/web/components/ui/textarea.tsx +18 -0
  750. package/.next/standalone/apps/web/components/ui/tooltip.tsx +54 -0
  751. package/.next/standalone/apps/web/components.json +21 -0
  752. package/.next/standalone/apps/web/hooks/use-channel-oauth.ts +42 -0
  753. package/.next/standalone/apps/web/hooks/use-copy-to-clipboard.ts +25 -0
  754. package/.next/standalone/apps/web/hooks/use-integration-auth.ts +37 -0
  755. package/.next/standalone/apps/web/hooks/use-live-media-progress.ts +71 -0
  756. package/.next/standalone/apps/web/hooks/use-notion-auth.ts +63 -0
  757. package/.next/standalone/apps/web/lib/browser-cache.test.ts +32 -0
  758. package/.next/standalone/apps/web/lib/browser-cache.ts +17 -0
  759. package/.next/standalone/apps/web/lib/cache-size.test.ts +15 -0
  760. package/.next/standalone/apps/web/lib/cache-size.ts +11 -0
  761. package/.next/standalone/apps/web/lib/chat/assistant-source-scope.test.ts +43 -0
  762. package/.next/standalone/apps/web/lib/chat/chart-config.test.ts +144 -0
  763. package/.next/standalone/apps/web/lib/chat/chat-media-preview.test.ts +31 -0
  764. package/.next/standalone/apps/web/lib/chat/conversation-memory.test.ts +390 -0
  765. package/.next/standalone/apps/web/lib/chat/data-export.test.ts +224 -0
  766. package/.next/standalone/apps/web/lib/chat/live-tool-progress.test.ts +76 -0
  767. package/.next/standalone/apps/web/lib/chat/live-tool-progress.ts +69 -0
  768. package/.next/standalone/apps/web/lib/chat/media-retrieval-routing.test.ts +42 -0
  769. package/.next/standalone/apps/web/lib/chat/media-source-routing.test.ts +118 -0
  770. package/.next/standalone/apps/web/lib/chat/message-feedback.test.ts +102 -0
  771. package/.next/standalone/apps/web/lib/chat/message-input.test.ts +30 -0
  772. package/.next/standalone/apps/web/lib/chat/retrieval-ranking.test.ts +62 -0
  773. package/.next/standalone/apps/web/lib/chat/retrieval-routing.test.ts +80 -0
  774. package/.next/standalone/apps/web/lib/chat/tabular-dataset-routing.test.ts +83 -0
  775. package/.next/standalone/apps/web/lib/chat/tabular-query-plan.test.ts +148 -0
  776. package/.next/standalone/apps/web/lib/chat/tabular-routing.test.ts +109 -0
  777. package/.next/standalone/apps/web/lib/chat/tabular-sandbox-files.test.ts +100 -0
  778. package/.next/standalone/apps/web/lib/chat/tabular-visualization.test.ts +89 -0
  779. package/.next/standalone/apps/web/lib/chat/tool-call-repair.test.ts +64 -0
  780. package/.next/standalone/apps/web/lib/chat/tool-context.test.ts +978 -0
  781. package/.next/standalone/apps/web/lib/chat/tool-output.test.ts +23 -0
  782. package/.next/standalone/apps/web/lib/chat/tool-output.ts +14 -0
  783. package/.next/standalone/apps/web/lib/chat/tool-registry.test.ts +19 -0
  784. package/.next/standalone/apps/web/lib/chat/video-rag-routing.test.ts +158 -0
  785. package/.next/standalone/apps/web/lib/chat/visual-routing.test.ts +140 -0
  786. package/.next/standalone/apps/web/lib/chat-supporting-clip.test.ts +16 -0
  787. package/.next/standalone/apps/web/lib/chat-supporting-clip.ts +16 -0
  788. package/.next/standalone/apps/web/lib/constants/stores.ts +12 -0
  789. package/.next/standalone/apps/web/lib/constants/tools.test.ts +26 -0
  790. package/.next/standalone/apps/web/lib/constants/tools.ts +178 -0
  791. package/.next/standalone/apps/web/lib/error-formatter.ts +30 -0
  792. package/.next/standalone/apps/web/lib/jobs-client.ts +25 -0
  793. package/.next/standalone/apps/web/lib/marketplace/tool-runtime-config.test.ts +217 -0
  794. package/.next/standalone/apps/web/lib/media/knowledge.test.ts +36 -0
  795. package/.next/standalone/apps/web/lib/media/pdf-inspection.test.ts +63 -0
  796. package/.next/standalone/apps/web/lib/media/pdf.ts +57 -0
  797. package/.next/standalone/apps/web/lib/media/progress.test.ts +208 -0
  798. package/.next/standalone/apps/web/lib/media/progress.ts +209 -0
  799. package/.next/standalone/apps/web/lib/media/source-identity.test.ts +33 -0
  800. package/.next/standalone/apps/web/lib/media/source-selection.test.ts +36 -0
  801. package/.next/standalone/apps/web/lib/media/source-selection.ts +47 -0
  802. package/.next/standalone/apps/web/lib/media/source-utils.test.ts +231 -0
  803. package/.next/standalone/apps/web/lib/media/tool-indexing-estimate.test.ts +28 -0
  804. package/.next/standalone/apps/web/lib/media/tool-indexing-estimate.ts +39 -0
  805. package/.next/standalone/apps/web/lib/media/video/quick-look.test.ts +81 -0
  806. package/.next/standalone/apps/web/lib/media/video-intelligence-adapter.test.ts +739 -0
  807. package/.next/standalone/apps/web/lib/media/video-intelligence-capacity.test.ts +104 -0
  808. package/.next/standalone/apps/web/lib/media/video-runtime-scope.test.ts +43 -0
  809. package/.next/standalone/apps/web/lib/release-metadata.test.ts +118 -0
  810. package/.next/standalone/apps/web/lib/remote-files.test.ts +53 -0
  811. package/.next/standalone/apps/web/lib/system-cache.test.ts +173 -0
  812. package/.next/standalone/apps/web/lib/utils.ts +6 -0
  813. package/.next/standalone/apps/web/next-env.d.ts +7 -0
  814. package/.next/standalone/apps/web/next.config.mjs +82 -0
  815. package/.next/standalone/apps/web/package.json +96 -0
  816. package/.next/standalone/apps/web/parse_log.mjs +67 -0
  817. package/.next/standalone/apps/web/postcss.config.mjs +8 -0
  818. package/.next/standalone/apps/web/public/docker.png +0 -0
  819. package/.next/standalone/apps/web/public/favicon.ico +0 -0
  820. package/.next/standalone/apps/web/public/github.svg +3 -0
  821. package/.next/standalone/apps/web/public/hetzner.svg +1 -0
  822. package/.next/standalone/apps/web/public/icons/Confluence.png +0 -0
  823. package/.next/standalone/apps/web/public/icons/Instagram.png +0 -0
  824. package/.next/standalone/apps/web/public/icons/Northflank.png +0 -0
  825. package/.next/standalone/apps/web/public/icons/Salesforce.png +0 -0
  826. package/.next/standalone/apps/web/public/icons/agentskills.png +0 -0
  827. package/.next/standalone/apps/web/public/icons/airtable.png +0 -0
  828. package/.next/standalone/apps/web/public/icons/asana.png +0 -0
  829. package/.next/standalone/apps/web/public/icons/ashby.png +0 -0
  830. package/.next/standalone/apps/web/public/icons/audio.png +0 -0
  831. package/.next/standalone/apps/web/public/icons/aws-kendra.png +0 -0
  832. package/.next/standalone/apps/web/public/icons/aws.svg +38 -0
  833. package/.next/standalone/apps/web/public/icons/azure-ai-search.png +0 -0
  834. package/.next/standalone/apps/web/public/icons/azure.svg +1 -0
  835. package/.next/standalone/apps/web/public/icons/bigquery.png +0 -0
  836. package/.next/standalone/apps/web/public/icons/bing.png +0 -0
  837. package/.next/standalone/apps/web/public/icons/bitbucket.png +0 -0
  838. package/.next/standalone/apps/web/public/icons/brave.png +0 -0
  839. package/.next/standalone/apps/web/public/icons/browserbase.png +0 -0
  840. package/.next/standalone/apps/web/public/icons/calendly.png +0 -0
  841. package/.next/standalone/apps/web/public/icons/chroma.png +0 -0
  842. package/.next/standalone/apps/web/public/icons/cloudflare.png +0 -0
  843. package/.next/standalone/apps/web/public/icons/cohere.svg +30 -0
  844. package/.next/standalone/apps/web/public/icons/databricks.png +0 -0
  845. package/.next/standalone/apps/web/public/icons/daytonaio.png +0 -0
  846. package/.next/standalone/apps/web/public/icons/daytonaio2.png +0 -0
  847. package/.next/standalone/apps/web/public/icons/deepgram.png +0 -0
  848. package/.next/standalone/apps/web/public/icons/deepl.png +0 -0
  849. package/.next/standalone/apps/web/public/icons/digital-ocean.webp +0 -0
  850. package/.next/standalone/apps/web/public/icons/discord.png +0 -0
  851. package/.next/standalone/apps/web/public/icons/e2b-2.png +0 -0
  852. package/.next/standalone/apps/web/public/icons/e2b.png +0 -0
  853. package/.next/standalone/apps/web/public/icons/elevenlabs.png +0 -0
  854. package/.next/standalone/apps/web/public/icons/email.png +0 -0
  855. package/.next/standalone/apps/web/public/icons/exa.png +0 -0
  856. package/.next/standalone/apps/web/public/icons/excel.png +0 -0
  857. package/.next/standalone/apps/web/public/icons/fal.png +0 -0
  858. package/.next/standalone/apps/web/public/icons/firecrawl.png +0 -0
  859. package/.next/standalone/apps/web/public/icons/firecrawl2.png +0 -0
  860. package/.next/standalone/apps/web/public/icons/flyio.jpeg +0 -0
  861. package/.next/standalone/apps/web/public/icons/gcp.svg +1 -0
  862. package/.next/standalone/apps/web/public/icons/gemini.svg +1 -0
  863. package/.next/standalone/apps/web/public/icons/gmail.png +0 -0
  864. package/.next/standalone/apps/web/public/icons/google-analytics.png +0 -0
  865. package/.next/standalone/apps/web/public/icons/google-calender.png +0 -0
  866. package/.next/standalone/apps/web/public/icons/google-docs.png +0 -0
  867. package/.next/standalone/apps/web/public/icons/google-drive.png +0 -0
  868. package/.next/standalone/apps/web/public/icons/google-maps.png +0 -0
  869. package/.next/standalone/apps/web/public/icons/google-meet.png +0 -0
  870. package/.next/standalone/apps/web/public/icons/google-sheets.png +0 -0
  871. package/.next/standalone/apps/web/public/icons/google-slides.png +0 -0
  872. package/.next/standalone/apps/web/public/icons/google-tasks.png +0 -0
  873. package/.next/standalone/apps/web/public/icons/google.png +0 -0
  874. package/.next/standalone/apps/web/public/icons/grok.png +0 -0
  875. package/.next/standalone/apps/web/public/icons/hubspot.png +0 -0
  876. package/.next/standalone/apps/web/public/icons/image.png +0 -0
  877. package/.next/standalone/apps/web/public/icons/jina.svg +1 -0
  878. package/.next/standalone/apps/web/public/icons/jira.png +0 -0
  879. package/.next/standalone/apps/web/public/icons/lancedb2.png +0 -0
  880. package/.next/standalone/apps/web/public/icons/linear.png +0 -0
  881. package/.next/standalone/apps/web/public/icons/linux.png +0 -0
  882. package/.next/standalone/apps/web/public/icons/looker.png +0 -0
  883. package/.next/standalone/apps/web/public/icons/luma.png +0 -0
  884. package/.next/standalone/apps/web/public/icons/mac.png +0 -0
  885. package/.next/standalone/apps/web/public/icons/markdown.png +0 -0
  886. package/.next/standalone/apps/web/public/icons/mcp.png +0 -0
  887. package/.next/standalone/apps/web/public/icons/mcp.svg +1 -0
  888. package/.next/standalone/apps/web/public/icons/messenger.svg +1 -0
  889. package/.next/standalone/apps/web/public/icons/microsoft-intra.png +0 -0
  890. package/.next/standalone/apps/web/public/icons/microsoft-onenote.png +0 -0
  891. package/.next/standalone/apps/web/public/icons/microsoft-planner.png +0 -0
  892. package/.next/standalone/apps/web/public/icons/microsoft-teams.png +0 -0
  893. package/.next/standalone/apps/web/public/icons/miro.png +0 -0
  894. package/.next/standalone/apps/web/public/icons/mistral.svg +469 -0
  895. package/.next/standalone/apps/web/public/icons/modal.png +0 -0
  896. package/.next/standalone/apps/web/public/icons/ngrok.png +0 -0
  897. package/.next/standalone/apps/web/public/icons/nomic.png +0 -0
  898. package/.next/standalone/apps/web/public/icons/onedrive.png +0 -0
  899. package/.next/standalone/apps/web/public/icons/openai.svg +1 -0
  900. package/.next/standalone/apps/web/public/icons/outlook-calendar.png +0 -0
  901. package/.next/standalone/apps/web/public/icons/outlook-email.png +0 -0
  902. package/.next/standalone/apps/web/public/icons/outlook.png +0 -0
  903. package/.next/standalone/apps/web/public/icons/pdf.png +0 -0
  904. package/.next/standalone/apps/web/public/icons/personio.png +0 -0
  905. package/.next/standalone/apps/web/public/icons/pgvector2.png +0 -0
  906. package/.next/standalone/apps/web/public/icons/phone.png +0 -0
  907. package/.next/standalone/apps/web/public/icons/pinecone.png +0 -0
  908. package/.next/standalone/apps/web/public/icons/pipedrive.png +0 -0
  909. package/.next/standalone/apps/web/public/icons/power-pi.png +0 -0
  910. package/.next/standalone/apps/web/public/icons/pylon.png +0 -0
  911. package/.next/standalone/apps/web/public/icons/python.png +0 -0
  912. package/.next/standalone/apps/web/public/icons/qdrant.svg +35 -0
  913. package/.next/standalone/apps/web/public/icons/revai.png +0 -0
  914. package/.next/standalone/apps/web/public/icons/revai.svg +1 -0
  915. package/.next/standalone/apps/web/public/icons/sap.png +0 -0
  916. package/.next/standalone/apps/web/public/icons/serpapi.svg +34 -0
  917. package/.next/standalone/apps/web/public/icons/serper.png +0 -0
  918. package/.next/standalone/apps/web/public/icons/servicenow.png +0 -0
  919. package/.next/standalone/apps/web/public/icons/sharepoint.png +0 -0
  920. package/.next/standalone/apps/web/public/icons/slack.png +0 -0
  921. package/.next/standalone/apps/web/public/icons/snowflake.png +0 -0
  922. package/.next/standalone/apps/web/public/icons/statistia.png +0 -0
  923. package/.next/standalone/apps/web/public/icons/stripe.png +0 -0
  924. package/.next/standalone/apps/web/public/icons/supabase.png +0 -0
  925. package/.next/standalone/apps/web/public/icons/tableau.png +0 -0
  926. package/.next/standalone/apps/web/public/icons/tavily.png +0 -0
  927. package/.next/standalone/apps/web/public/icons/telegram.png +0 -0
  928. package/.next/standalone/apps/web/public/icons/typescript.png +0 -0
  929. package/.next/standalone/apps/web/public/icons/vercel copy.svg +1 -0
  930. package/.next/standalone/apps/web/public/icons/vercel.svg +1 -0
  931. package/.next/standalone/apps/web/public/icons/vertex-ai.png +0 -0
  932. package/.next/standalone/apps/web/public/icons/video.png +0 -0
  933. package/.next/standalone/apps/web/public/icons/voyage-light.png +0 -0
  934. package/.next/standalone/apps/web/public/icons/weaviate.webp +0 -0
  935. package/.next/standalone/apps/web/public/icons/webcontainers.svg +11 -0
  936. package/.next/standalone/apps/web/public/icons/webhook.png +0 -0
  937. package/.next/standalone/apps/web/public/icons/whatsapp copy.png +0 -0
  938. package/.next/standalone/apps/web/public/icons/whatsapp.png +0 -0
  939. package/.next/standalone/apps/web/public/icons/windows.png +0 -0
  940. package/.next/standalone/apps/web/public/icons/word.png +0 -0
  941. package/.next/standalone/apps/web/public/icons/zendesk.png +0 -0
  942. package/.next/standalone/apps/web/public/icons/zoom.png +0 -0
  943. package/.next/standalone/apps/web/public/logo-light.png +0 -0
  944. package/.next/standalone/apps/web/public/logo-light2.png +0 -0
  945. package/.next/standalone/apps/web/public/logo.png +0 -0
  946. package/.next/standalone/apps/web/public/logo9.png +0 -0
  947. package/.next/standalone/apps/web/public/notion-white.png +0 -0
  948. package/.next/standalone/apps/web/public/notion.png +0 -0
  949. package/.next/standalone/apps/web/public/vercel.svg +1 -0
  950. package/.next/standalone/apps/web/scripts/prepare-standalone.mjs +153 -0
  951. package/.next/standalone/apps/web/server.js +44 -0
  952. package/.next/standalone/apps/web/store/chat-store.ts +19 -0
  953. package/.next/standalone/apps/web/store/connections-store.ts +276 -0
  954. package/.next/standalone/apps/web/store/deploy-store.ts +90 -0
  955. package/.next/standalone/apps/web/store/scrape-store.ts +76 -0
  956. package/.next/standalone/apps/web/tsconfig.json +41 -0
  957. package/.next/standalone/apps/web/verify-models.mjs +133 -0
  958. package/.next/standalone/apps/web/vitest.config.ts +15 -0
  959. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ exports.id=5937,exports.ids=[5937],exports.modules={28796:(a,b,c)=>{"use strict";c.d(b,{BT:()=>i,Wu:()=>j,ZB:()=>h,Zp:()=>f,aR:()=>g,wL:()=>k});var d=c(32108);c(21621);var e=c(3989);function f({className:a,size:b="default",...c}){return(0,d.jsx)("div",{"data-slot":"card","data-size":b,className:(0,e.cn)("group/card flex flex-col gap-4 overflow-hidden rounded-xl border bg-card py-4 text-sm text-card-foreground has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",a),...c})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-description",className:(0,e.cn)("text-sm text-muted-foreground",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-4 group-data-[size=sm]/card:px-3",a),...b})}function k({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-footer",className:(0,e.cn)("flex items-center rounded-b-xl border-none p-4 group-data-[size=sm]/card:p-3",a),...b})}},44646:(a,b,c)=>{Promise.resolve().then(c.bind(c,85925))},61950:(a,b,c)=>{Promise.resolve().then(c.bind(c,74174))},69865:(a,b,c)=>{"use strict";c.d(b,{Ag:()=>k,d3:()=>n,zf:()=>m});var d=c(98785),e=c(68987),f=c(35014),g=c(49684),h=c(7214),i=c(270),j=c(31293);let k={searchKnowledgeBase:{placement:"source",resultView:"none"},queryVideoKnowledge:{placement:"inline",pendingLabel:"Reviewing the video…",resultView:"none"},queryVideoEvidence:{placement:"inline",pendingLabel:"Reviewing indexed video context…",resultView:"data-table",compactResult:!1},inspectVideoKnowledge:{placement:"inline",pendingLabel:"Checking the relevant moment…",resultView:"none"},webSearch:{placement:"web-search",resultView:"none"},presentMedia:{placement:"media",resultView:"media"},queryTabularData:{placement:"inline",pendingLabel:"Checking data…",resultView:"data-table",compactResult:!0,showProgressBar:!1},generateVisualization:{placement:"visualization",pendingLabel:"Preparing chart…",resultView:"none"},createDataExport:{placement:"inline",pendingLabel:"Preparing file…",resultView:"file-export",showProgressBar:!1},executeAnalysis:{placement:"inline",pendingLabel:"Running analysis…",resultView:"sandbox"},analyzeCorpusWithCode:{placement:"inline",pendingLabel:"Analyzing documents…",resultView:"sandbox"},getIndexedData:{placement:"inline",pendingLabel:"Checking documents…",resultView:"corpus"},analyzeImageDeeply:{placement:"inline",pendingLabel:"Analyzing image…",resultView:"image-analysis"},fillDocumentForm:{placement:"inline",pendingLabel:"Updating document…",resultView:"document-edit"},editDocument:{placement:"inline",pendingLabel:"Updating document…",resultView:"document-edit"},requestDocumentSignature:{placement:"inline",pendingLabel:"Preparing signature…",resultView:"signature"}},l={placement:"inline",pendingLabel:"Working…",resultView:"none"};function m(a){return k[a]??l}let n=[{id:"searchKnowledgeBase",name:"Semantic Search",description:"Search the RAG knowledge base for text.",icon:d.A},{id:"queryTabularData",name:"Tabular Data Query",description:"Filter, group, and aggregate tabular data.",icon:e.A},{id:"generateVisualization",name:"Generate Charts",description:"Create interactive charts from Assistant results.",icon:f.A},{id:"createDataExport",name:"Export Answer",description:"Create a downloadable Excel, CSV, or PDF file from an Assistant result.",icon:g.A},{id:"executeAnalysis",name:"Python Sandbox",description:"Execute Python code for complex analysis.",icon:h.A},{id:"getIndexedData",name:"Indexed Data",description:"List and filter source documents.",icon:i.A},{id:"analyzeCorpusWithCode",name:"Corpus Analysis",description:"Run code against the full indexed corpus.",icon:h.A},{id:"fillDocumentForm",name:"Form Filler",description:"Fill forms in the active document.",icon:j.A}]},74174:(a,b,c)=>{"use strict";c.d(b,{ChatWorkspace:()=>d});let d=(0,c(67578).registerClientReference)(function(){throw Error("Attempted to call ChatWorkspace() from the server but ChatWorkspace is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/private/tmp/larkup-release-0.4.14/apps/web/components/chat/chat-workspace.tsx","ChatWorkspace")},84508:(a,b,c)=>{"use strict";c.d(b,{Ke:()=>j,Nt:()=>h,R6:()=>i});var d=c(32108),e=c(81489),f=c(34038),g=c(65295);function h({...a}){return(0,d.jsx)(e.N,{"data-slot":"collapsible",...a})}function i({...a}){return(0,d.jsx)(f.R,{"data-slot":"collapsible-trigger",...a})}function j({...a}){return(0,d.jsx)(g.j,{"data-slot":"collapsible-content",...a})}},85469:(a,b,c)=>{"use strict";c.d(b,{CG:()=>q,Fm:()=>v,Qs:()=>y,XW:()=>w,cj:()=>p,h:()=>u,kN:()=>r,qp:()=>x});var d=c(32108);c(21621);var e=c(88340),f=c(10326),g=c(374),h=c(45828),i=c(4452),j=c(29855),k=c(22290),l=c(3826),m=c(3989),n=c(3962),o=c(94171);function p({...a}){return(0,d.jsx)(e.D,{"data-slot":"sheet",...a})}function q({...a}){return(0,d.jsx)(f.z,{"data-slot":"sheet-trigger",...a})}function r({...a}){return(0,d.jsx)(g.H,{"data-slot":"sheet-close",...a})}function s({...a}){return(0,d.jsx)(h.Z,{"data-slot":"sheet-portal",...a})}function t({className:a,...b}){return(0,d.jsx)(i.X,{"data-slot":"sheet-overlay",className:(0,m.cn)("fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs",a),...b})}function u({className:a,children:b,side:c="right",showCloseButton:e=!0,...f}){return(0,d.jsxs)(s,{children:[(0,d.jsx)(t,{}),(0,d.jsxs)(j.h,{"data-slot":"sheet-content","data-side":c,className:(0,m.cn)("fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-10 data-[side=bottom]:data-starting-style:translate-y-10 data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:-translate-x-10 data-[side=left]:data-starting-style:-translate-x-10 data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-10 data-[side=right]:data-starting-style:translate-x-10 data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:-translate-y-10 data-[side=top]:data-starting-style:-translate-y-10 data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm",a),...f,children:[b,e&&(0,d.jsxs)(g.H,{"data-slot":"sheet-close",render:(0,d.jsx)(n.$,{variant:"ghost",className:"absolute top-3 right-3",size:"icon-sm"}),children:[(0,d.jsx)(o.A,{}),(0,d.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function v({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"sheet-header",className:(0,m.cn)("flex flex-col gap-0.5 p-4",a),...b})}function w({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"sheet-footer",className:(0,m.cn)("mt-auto flex flex-col gap-2 p-4",a),...b})}function x({className:a,...b}){return(0,d.jsx)(k.L,{"data-slot":"sheet-title",className:(0,m.cn)("font-heading text-base font-medium text-foreground",a),...b})}function y({className:a,...b}){return(0,d.jsx)(l.r,{"data-slot":"sheet-description",className:(0,m.cn)("text-sm text-muted-foreground",a),...b})}},85925:(a,b,c)=>{"use strict";c.d(b,{ChatWorkspace:()=>co});var d=c(32108),e=c(21621),f=c(8568),g=c(75996),h=c(94171),i=c(93921),j=c(22123),k=c(45911),l=c(98785),m=c(1563),n=c(10501),o=c(69706),p=c(90951),q=c(72024),r=c(67546),s=c(53429),t=c(77956),u=c(48962),v=c(74370),w=c(55218),x=c(64547),y=c(71816);c(51066);var z=c(79891),A=c(82554),B=c(62748),C=c(83383),D=c(3962),E=c(91017),F=c(3989);function G({text:a,liked:b,disliked:c,onLike:f,onDislike:g,onRegenerate:h,regenerateLabel:i="Regenerate",className:j}){let{copied:k,copy:l}=function(a=2e3){let[b,c]=(0,e.useState)(!1),d=(0,e.useRef)(null);return{copied:b,copy:(0,e.useCallback)(async b=>{if(b)try{await navigator.clipboard.writeText(b),c(!0),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>c(!1),a)}catch(a){console.error("Copy to clipboard failed",a)}},[a])}}();return(0,d.jsx)(E.Bc,{delay:200,children:(0,d.jsxs)("div",{className:(0,F.cn)("flex items-center gap-0.5",j),children:[(0,d.jsx)(H,{label:k?"Copied":"Copy",onClick:()=>l(a),children:k?(0,d.jsx)(z.A,{className:"size-3.5 text-emerald-500"}):(0,d.jsx)(A.A,{className:"size-3.5"})}),f&&g?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(H,{label:b?"Liked — saved with this chat":"Like",onClick:f,pressed:b,children:(0,d.jsx)(B.A,{className:(0,F.cn)("size-3.5",b&&"fill-current text-emerald-500")})}),(0,d.jsx)(H,{label:c?"Disliked — cached answer removed":"Dislike",onClick:g,pressed:c,children:(0,d.jsx)(C.A,{className:(0,F.cn)("size-3.5",c&&"fill-current text-destructive")})})]}):null,h?(0,d.jsx)(H,{label:i,onClick:h,children:(0,d.jsx)(r.A,{className:"size-3.5"})}):null]})})}function H({label:a,onClick:b,children:c,pressed:e}){return(0,d.jsxs)(E.m_,{children:[(0,d.jsx)(E.k$,{render:(0,d.jsx)(D.$,{type:"button",variant:"ghost",size:"icon-xs",onClick:b,"aria-label":a,"aria-pressed":e,className:"text-muted-foreground hover:text-foreground"}),children:c}),(0,d.jsx)(E.ZI,{children:a})]})}var I=c(25192),J=c(59808),K=c(64520),L=c(94635),M=c(1847),N=c(43881),O=c(44482),P=c(37564),Q=c(53906),R=c(91289),S=c(65714),T=c(78401),U=c(42640),V=c(44422),W=c(59717),X=c(85025),Y=c(11359),Z=c(74405),$=c(3409),_=c(29859),aa=c(1485),ab=c(49026),ac=c(12369);let ad=new Set(["bar","area","line","pie","scatter","radar"]),ae=/^(?:\s|_)*(?:empty|null|undefined|n\/?a|unknown)(?:\s*[_-]?\s*\d+)?(?:\s|_)*$/i;function af(a){return!!a&&"object"==typeof a&&!Array.isArray(a)}function ag(a){return"string"==typeof a&&a.trim().length>0&&!ae.test(a.trim())}function ah(a){return a.toLocaleLowerCase().replace(/[^\p{L}\p{N}]/gu,"")}function ai(a,b){if(!ag(a))return;if(b.includes(a))return a;let c=ah(a);return b.find(a=>ah(a)===c)}function aj(a){if("number"==typeof a)return Number.isFinite(a)?a:void 0;if("string"!=typeof a)return;let b=a.trim();if(!b)return;let c=b.replace(/[\s,]/g,"").replace(/[€£$¥%]/g,"");if(!/^-?(?:\d+(?:\.\d+)?|\.\d+)$/.test(c))return;let d=Number(c);return Number.isFinite(d)?d:void 0}function ak(a,b){return a.some(a=>{let c=a[b];return null!=c&&String(c).trim().length>0&&!("string"==typeof c&&ae.test(c.trim()))})}function al(a,b){return a.some(a=>void 0!==aj(a[b]))}function am(a){return a.replace(/^(sum|avg|count|min|max|median)_/i,"$1 ").replace(/[_-]+/g," ").replace(/\s+/g," ").trim()}function an(a){return ag(a)?a.trim():void 0}let ao=["#10b981","#f97316","#3b82f6","#22c55e","#f59e0b","#0ea5e9","#84cc16","#ea580c","#2563eb"];function ap({series:a}){return(0,d.jsx)("defs",{children:a.map((a,b)=>{let c=a.color||ao[b%ao.length];return(0,d.jsxs)("linearGradient",{id:`gradient-${a.dataKey}`,x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,d.jsx)("stop",{offset:"5%",stopColor:c,stopOpacity:.25}),(0,d.jsx)("stop",{offset:"95%",stopColor:c,stopOpacity:.02})]},a.dataKey)})})}function aq({active:a,payload:b,label:c}){return a&&b&&0!==b.length?(0,d.jsxs)("div",{className:"rounded-lg border border-border/40 bg-card px-3 py-2.5 backdrop-blur-sm",children:[(0,d.jsx)("p",{className:"mb-1.5 text-xs font-medium text-foreground",children:c}),(0,d.jsx)("div",{className:"flex flex-col gap-1",children:b.map((a,b)=>(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[(0,d.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full",style:{backgroundColor:a.color}}),(0,d.jsxs)("span",{className:"text-muted-foreground",children:[a.name||a.dataKey,":"]}),(0,d.jsx)("span",{className:"font-medium tabular-nums text-foreground",children:"number"==typeof a.value?a.value.toLocaleString(void 0,{maximumFractionDigits:2}):a.value})]},b))})]}):null}let ar={fontSize:11,fill:"var(--muted-foreground)",fontFamily:"inherit"},as={stroke:"var(--border)"},at={fontSize:11,paddingTop:12},au={fontSize:11},av={stroke:"var(--muted-foreground)",strokeWidth:1},aw={strokeDasharray:"3 3"},ax={fontSize:11,fill:"var(--muted-foreground)"},ay={fontSize:10,fill:"var(--muted-foreground)"},az={r:4,strokeWidth:2,stroke:"var(--card)"},aA=[4,4,0,0],aB={top:6,right:12,bottom:8,left:12},aC=({name:a,percent:b})=>`${a} ${(100*b).toFixed(0)}%`;function aD(a,b){let c=(0,e.useRef)(null),d=JSON.stringify(b);return(null===c.current||JSON.stringify(c.current.deps)!==d)&&(c.current={deps:JSON.parse(d),value:a()}),c.current.value}function aE({config:a}){let b=(0,e.useRef)(null),[c,f]=(0,e.useState)(!1),g=(0,e.useMemo)(()=>(function(a){let b=af(a)?a:{},c=Array.isArray(b.data)?b.data.filter(af):[],d=[...new Set(c.flatMap(a=>Object.keys(a)))].filter(ag),e=ad.has(b.chartType)?b.chartType:"bar",f=d.filter(a=>al(c,a)),g=ai(b.xAxisKey,d);"scatter"===e?g&&al(c,g)||(g=f[0]):g&&ak(c,g)||(g=d.find(a=>!al(c,a)&&ak(c,a))??d.find(a=>ak(c,a))),"scatter"!==e&&g&&al(c,g)&&!f.some(a=>a!==g)&&d.some(a=>a!==g&&!al(c,a)&&ak(c,a))&&(g=d.find(a=>a!==g&&!al(c,a)&&ak(c,a)));let h=Array.isArray(b.series)?b.series.filter(af):[],i=[],j=new Set;for(let a of h){let b=ai(a.dataKey,f);if(!b||b===g||j.has(b))continue;let c=an(a.label);j.add(b),i.push({dataKey:b,label:c??am(b),...an(a.color)?{color:an(a.color)}:{}})}if(0===i.length)for(let a of f)a!==g&&(j.add(a),i.push({dataKey:a,label:am(a)}));"pie"===e&&i.length>1&&i.splice(1);let k=c.map(a=>{let b={};for(let c of(g&&void 0!==a[g]&&null!==a[g]&&(b[g]=a[g]),i)){let d=aj(a[c.dataKey]);void 0!==d&&(b[c.dataKey]=d)}return b}).filter(a=>!!(g&&ak([a],g))&&i.some(b=>void 0!==aj(a[b.dataKey]))),l=an(b.title)??(g&&i[0]?`${i[0].label??am(i[0].dataKey)} by ${am(g)}`:"Data chart"),m=0===c.length?"No data was provided for this chart.":g?0===i.length?"No numeric data series was provided for this chart.":0===k.length?"The supplied rows do not contain plottable values.":void 0:"No usable category or X-axis field was provided.",n=an(b.xAxisLabel)??(g?am(g):void 0),o=an(b.yAxisLabel)??function(a){let b=a.map(a=>a.label??am(a.dataKey));if(0===b.length)return;if(1===b.length)return b[0];let c=b.map(a=>a.split(/\s+/).filter(Boolean)),d=[];for(let a=1;a<=Math.min(...c.map(a=>a.length));a+=1){let b=c[0][c[0].length-a];if(!c.every(c=>c[c.length-a]?.toLowerCase()===b.toLowerCase()))break;d.unshift(b)}if(d.length>0)return d.join(" ");let e=b.join(" / ");return e.length<=40?e:"Value"}(i);return{chartType:e,title:l,...an(b.subtitle)?{subtitle:an(b.subtitle)}:{},data:k,xAxisKey:g??"",series:i,...Array.isArray(b.colors)?{colors:b.colors.filter(a=>ag(a))}:{},..."boolean"==typeof b.stacked?{stacked:b.stacked}:{},showLegend:"boolean"==typeof b.showLegend?b.showLegend:i.length>1,...n?{xAxisLabel:n}:{},...o?{yAxisLabel:o}:{},...m?{error:m}:{}}})(a),[a]),{chartType:h,title:i,subtitle:j,data:k,xAxisKey:l,series:m,colors:n,stacked:o,showLegend:p=!0,xAxisLabel:q,yAxisLabel:r}=g,s=aD(()=>{let a=n&&n.length>0?n:ao;return m.map((b,c)=>b.color||a[c%a.length])},[m,n]),t=aD(()=>n&&n.length>0?n:ao,[n]),u=aD(()=>s.map(a=>({r:3,fill:a})),[s]),v=(0,e.useCallback)(()=>{!function(a){if(0===a.length)return;let b=Object.keys(a[0]),c=[b.join(" "),...a.map(a=>b.map(b=>String(a[b]??"")).join(" "))].join("\n");navigator.clipboard.writeText(c)}(k),f(!0),setTimeout(()=>f(!1),2e3)},[k]),w=(0,e.useCallback)(()=>(function(a,b){if(0===a.length)return;let c=Object.keys(a[0]),d=new Blob([[c.join(","),...a.map(a=>c.map(b=>{let c=String(a[b]??"");return c.includes(",")?`"${c}"`:c}).join(","))].join("\n")],{type:"text/csv"}),e=URL.createObjectURL(d),f=document.createElement("a");f.href=e,f.download=`${b.replace(/\s+/g,"_").toLowerCase()}.csv`,f.click(),URL.revokeObjectURL(e)})(k,i),[k,i]),x=aD(()=>q?{value:q,position:"insideBottom",offset:-4,style:{fontSize:11,fill:"var(--muted-foreground)"}}:void 0,[q]),y=aD(()=>r?{value:r,angle:-90,position:"insideLeft",offset:-8,style:{fontSize:11,fill:"var(--muted-foreground)"}}:void 0,[r]);return g.error?(0,d.jsxs)("div",{className:"my-3 flex flex-col items-center justify-center rounded-lg border border-border/70 bg-transparent p-6 text-center text-muted-foreground",children:[(0,d.jsx)("p",{className:"text-sm",children:"This chart could not be prepared"}),(0,d.jsx)("p",{className:"text-xs opacity-70 mt-1",children:g.error})]}):(0,d.jsxs)("div",{ref:b,"data-testid":"chat-chart",className:"my-3 overflow-hidden rounded-lg border border-border/70 bg-muted/25 animate-in fade-in duration-300 [&_.recharts-surface]:outline-none [&_.recharts-wrapper]:outline-none [&_*:focus]:outline-none [&_*:focus-visible]:outline-none [&_*:focus-visible]:ring-0",children:[(0,d.jsx)("div",{className:"flex flex-row items-center justify-between gap-4 border-b border-border/30 px-3.5 py-2.5",children:(0,d.jsxs)("div",{className:"flex flex-col justify-center min-w-0",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-foreground truncate",children:i}),j&&(0,d.jsx)("p",{className:"mt-0.5 text-xs text-muted-foreground truncate",children:j})]})}),(0,d.jsx)("div",{className:"px-1 pt-2.5 pb-0",children:(0,d.jsx)("div",{className:"h-68 min-h-68 w-full sm:h-72 sm:min-h-72",children:(0,d.jsx)(ab.u,{width:"100%",height:"100%",debounce:50,children:(()=>{switch(h){case"bar":return(0,d.jsxs)(I.E,{data:k,barGap:4,barCategoryGap:"20%",margin:aB,children:[(0,d.jsx)(J.d,{strokeDasharray:"3 3",stroke:"var(--border)",opacity:.4,vertical:!1}),(0,d.jsx)(K.W,{dataKey:l,tick:ar,axisLine:as,tickLine:!1,tickMargin:8,minTickGap:24,height:52,label:x}),(0,d.jsx)(L.h,{tick:ar,axisLine:!1,tickLine:!1,tickMargin:8,width:62,label:y}),(0,d.jsx)(M.m,{content:aq,cursor:!1}),p&&(0,d.jsx)(N.s,{iconType:"circle",iconSize:7,wrapperStyle:at}),m.map((a,b)=>(0,d.jsx)(O.yP,{dataKey:a.dataKey,name:a.label||a.dataKey,fill:s[b],stackId:o?"stack":void 0,radius:aA,maxBarSize:40,animationDuration:700,animationEasing:"ease-in-out"},a.dataKey))]});case"area":return(0,d.jsxs)(P.Q,{data:k,margin:aB,children:[(0,d.jsx)(ap,{series:m}),(0,d.jsx)(J.d,{strokeDasharray:"3 3",stroke:"var(--border)",opacity:.4,vertical:!1}),(0,d.jsx)(K.W,{dataKey:l,tick:ar,axisLine:as,tickLine:!1,tickMargin:8,minTickGap:24,height:52,label:x}),(0,d.jsx)(L.h,{tick:ar,axisLine:!1,tickLine:!1,tickMargin:8,width:62,label:y}),(0,d.jsx)(M.m,{content:aq}),p&&(0,d.jsx)(N.s,{iconType:"circle",iconSize:7,wrapperStyle:at}),m.map((a,b)=>(0,d.jsx)(Q.Gk,{type:"monotone",dataKey:a.dataKey,name:a.label||a.dataKey,stroke:s[b],strokeWidth:2,fill:`url(#gradient-${a.dataKey})`,stackId:o?"stack":void 0,animationDuration:800,animationEasing:"ease-in-out"},a.dataKey))]});case"line":return(0,d.jsxs)(R.b,{data:k,margin:aB,children:[(0,d.jsx)(J.d,{strokeDasharray:"3 3",stroke:"var(--border)",opacity:.4,vertical:!1}),(0,d.jsx)(K.W,{dataKey:l,tick:ar,axisLine:as,tickLine:!1,tickMargin:8,minTickGap:24,height:52,label:x}),(0,d.jsx)(L.h,{tick:ar,axisLine:!1,tickLine:!1,tickMargin:8,width:62,label:y}),(0,d.jsx)(M.m,{content:aq}),p&&(0,d.jsx)(N.s,{iconType:"circle",iconSize:7,wrapperStyle:at}),m.map((a,b)=>(0,d.jsx)(S.N1,{type:"monotone",dataKey:a.dataKey,name:a.label||a.dataKey,stroke:s[b],strokeWidth:2,dot:u[b],activeDot:az,animationDuration:800,animationEasing:"ease-in-out"},a.dataKey))]});case"pie":{let a=m[0]?.dataKey||"value";return(0,d.jsxs)(T.r,{children:[(0,d.jsx)(M.m,{content:aq}),(0,d.jsx)(U.Fq,{data:k,dataKey:a,nameKey:l,cx:"50%",cy:"50%",outerRadius:"75%",innerRadius:"48%",paddingAngle:2,animationDuration:700,animationEasing:"ease-in-out",label:aC,labelLine:av,children:k.map((a,b)=>(0,d.jsx)(V.f,{fill:t[b%t.length],stroke:"var(--card)",strokeWidth:2},`cell-${b}`))}),p&&(0,d.jsx)(N.s,{iconType:"circle",iconSize:7,wrapperStyle:au})]})}case"scatter":return(0,d.jsxs)(W.t,{margin:aB,children:[(0,d.jsx)(J.d,{strokeDasharray:"3 3",stroke:"var(--border)",opacity:.4,vertical:!1}),(0,d.jsx)(K.W,{dataKey:l,type:"number",tick:ar,axisLine:as,tickLine:!1,tickMargin:8,minTickGap:24,height:52,name:q||l,label:x}),(0,d.jsx)(L.h,{dataKey:m[0]?.dataKey,type:"number",tick:ar,axisLine:!1,tickLine:!1,tickMargin:8,width:62,name:r||m[0]?.label||m[0]?.dataKey,label:y}),(0,d.jsx)(M.m,{content:aq,cursor:aw}),(0,d.jsx)(X.Xl,{name:m[0]?.label||m[0]?.dataKey,data:k,fill:s[0],animationDuration:700,animationEasing:"ease-in-out"})]});case"radar":return(0,d.jsxs)(Y.V,{data:k,outerRadius:"75%",children:[(0,d.jsx)(Z.z,{stroke:"var(--border)",opacity:.5}),(0,d.jsx)($.r,{dataKey:l,tick:ax}),(0,d.jsx)(_.E,{tick:ay}),(0,d.jsx)(M.m,{content:aq}),m.map((a,b)=>(0,d.jsx)(aa.Vd,{dataKey:a.dataKey,name:a.label||a.dataKey,stroke:s[b],fill:s[b],fillOpacity:.12,strokeWidth:2,animationDuration:700,animationEasing:"ease-in-out"},a.dataKey)),p&&(0,d.jsx)(N.s,{iconType:"circle",iconSize:7,wrapperStyle:au})]});default:return null}})()})})}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center justify-start gap-1.5 border-t border-border/30 px-3 py-2",children:[(0,d.jsxs)(D.$,{variant:"ghost",size:"sm",className:"h-7 gap-1.5 text-[11px] text-muted-foreground hover:text-foreground focus:ring-0 focus-visible:ring-0",onClick:v,children:[c?(0,d.jsx)(z.A,{className:"h-3 w-3 text-emerald-500"}):(0,d.jsx)(A.A,{className:"h-3 w-3"}),c?"Copied":"Copy Data"]}),(0,d.jsxs)(D.$,{variant:"ghost",size:"sm",className:"h-7 gap-1.5 text-[11px] text-muted-foreground hover:text-foreground focus:ring-0 focus-visible:ring-0",onClick:w,children:[(0,d.jsx)(ac.A,{className:"h-3 w-3"}),"CSV"]})]})]})}var aF=c(12893),aG=c(80337),aH=c(41629),aI=c(33458),aJ=c(55625),aK=c(45395),aL=c(52592),aM=c(53343),aN=c(69484),aO=c(7368),aP=c(30130);let aQ=/!?(?:\[([^\]]+)\])\([^)]*\)/g,aR=[10,25,50,100];function aS({config:a,compact:b=!1}){let{columns:c,rows:f}=(0,e.useMemo)(()=>{var b,c;let d,e;return b=a.columns,c=a.rows,d=new Map,{columns:(e=b.map((a,b)=>{let c=String(a??"").replace(aQ,"$1").replace(/<[^>]*>/g,"").replace(/\\([\\`*_{}\[\]()#+.!|>-])/g,"$1").replace(/\*\*([^*]+)\*\*/g,"$1").replace(/__([^_]+)__/g,"$1").replace(/~~([^~]+)~~/g,"$1").replace(/`([^`]+)`/g,"$1").replace(/^\s*[*_]+|[*_]+\s*$/g,"").replace(/\s+/g," ").trim()||`Column ${b+1}`,e=(d.get(c)??0)+1;return d.set(c,e),{source:a,target:1===e?c:`${c} (${e})`}})).map(({target:a})=>a),rows:c.map(a=>Object.fromEntries(e.map(({source:b,target:c})=>[c,a[b]])))}},[a.columns,a.rows]),{totalRows:g,aggregationResults:i}=a,[j,k]=(0,e.useState)(null),[m,n]=(0,e.useState)("asc"),[o,p]=(0,e.useState)(0),[q,r]=(0,e.useState)(10),[s,t]=(0,e.useState)(""),[u,w]=(0,e.useState)(!1),[x,y]=(0,e.useState)(!b),B=(0,e.useMemo)(()=>{if(!s.trim())return f;let a=s.toLowerCase();return f.filter(b=>c.some(c=>String(b[c]??"").toLowerCase().includes(a)))},[f,c,s]),C=(0,e.useMemo)(()=>j?[...B].sort((a,b)=>{let c=a[j],d=b[j];if(null==c&&null==d)return 0;if(null==c)return 1;if(null==d)return -1;let e=Number(c),f=Number(d);return isNaN(e)||isNaN(f)?"asc"===m?String(c).localeCompare(String(d)):String(d).localeCompare(String(c)):"asc"===m?e-f:f-e}):B,[B,j,m]),E=Math.max(1,Math.ceil(C.length/q)),G=C.slice(o*q,(o+1)*q),H=(0,e.useCallback)(a=>{j===a?n(a=>"asc"===a?"desc":"asc"):(k(a),n("asc")),p(0)},[j]),I=(0,e.useCallback)(()=>{let a;a=[c.join(" "),...f.map(a=>c.map(b=>String(a[b]??"")).join(" "))].join("\n"),navigator.clipboard.writeText(a),w(!0),setTimeout(()=>w(!1),2e3)},[c,f]),J=(0,e.useCallback)(()=>{let a,b,d;return a=new Blob([[c.join(","),...f.map(a=>c.map(b=>{let c=String(a[b]??"");return c.includes(",")||c.includes('"')?`"${c.replace(/"/g,'""')}"`:c}).join(","))].join("\n")],{type:"text/csv"}),b=URL.createObjectURL(a),void((d=document.createElement("a")).href=b,d.download="data.csv",d.click(),URL.revokeObjectURL(b))},[c,f]);if(0===c.length||0===f.length)return(0,d.jsx)("div",{className:"py-4 text-center text-sm text-muted-foreground",children:"No data returned"});if(b&&!x){let a=g||f.length;return(0,d.jsxs)("button",{type:"button",onClick:()=>y(!0),className:"my-1 inline-flex items-center gap-2 rounded-md border border-border/50 bg-muted/30 px-2.5 py-1.5 text-xs text-muted-foreground transition-colors hover:bg-muted/50 hover:text-foreground",children:[(0,d.jsx)(aI.A,{className:"size-3.5"}),(0,d.jsx)("span",{children:"Data checked"}),(0,d.jsxs)("span",{className:"rounded-full bg-secondary px-1.5 py-0.5 text-[10px] tabular-nums text-foreground",children:[a.toLocaleString()," ",1===a?"row":"rows"]})]})}return(0,d.jsxs)("div",{className:"overflow-hidden rounded-xl border border-border/90 bg-muted my-4 animate-in fade-in slide-in-from-bottom-2 duration-500 [&_*:focus]:outline-none [&_*:focus-visible]:ring-0",children:[i&&Object.keys(i).length>0&&(0,d.jsx)("div",{className:"flex flex-wrap gap-3 border-b border-border/30 px-4 py-3",children:Object.entries(i).map(([a,b])=>{let[c,...e]=a.split("_"),f=e.join("_");return(0,d.jsxs)("div",{className:"flex flex-col rounded-lg bg-transparent px-2 py-1",children:[(0,d.jsxs)("span",{className:"text-[10px] font-medium uppercase tracking-wider text-muted-foreground",children:[c," of ",f]}),(0,d.jsx)("span",{className:"text-lg font-semibold tabular-nums text-foreground",children:"number"==typeof b?b.toLocaleString(void 0,{maximumFractionDigits:4}):b})]},a)})}),(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2 border-b border-border/30 px-3 py-2",children:[(0,d.jsxs)("div",{className:"relative flex-1 max-w-60",children:[(0,d.jsx)(l.A,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 size-3.5 text-muted-foreground"}),(0,d.jsx)(aO.p,{value:s,onChange:a=>{t(a.target.value),p(0)},placeholder:"Search rows…",className:"h-7 pl-8 pr-8 text-xs border-border/40 focus-visible:ring-0 focus-visible:border-border/60"}),s&&(0,d.jsx)("button",{type:"button",onClick:()=>t(""),className:"absolute right-2 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground",children:(0,d.jsx)(h.A,{className:"size-3"})})]}),(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[(0,d.jsxs)(D.$,{variant:"ghost",size:"sm",onClick:I,className:"h-7 gap-1.5 text-[11px] text-muted-foreground focus:ring-0 focus-visible:ring-0",children:[u?(0,d.jsx)(z.A,{className:"size-3 text-emerald-500"}):(0,d.jsx)(A.A,{className:"size-3"}),u?"Copied":"Copy"]}),(0,d.jsxs)(D.$,{variant:"ghost",size:"sm",onClick:J,className:"h-7 gap-1.5 text-[11px] text-muted-foreground focus:ring-0 focus-visible:ring-0",children:[(0,d.jsx)(ac.A,{className:"size-3"}),"CSV"]})]})]}),(0,d.jsx)("div",{className:"overflow-x-auto [&::-webkit-scrollbar]:hidden",children:(0,d.jsxs)(aN.XI,{children:[(0,d.jsx)(aN.A0,{children:(0,d.jsx)(aN.Hj,{className:"bg-background hover:bg-background border-b border-border/30",children:c.map(a=>{let b,{icon:c}=0===(b=f.slice(0,10).map(b=>b[a]).filter(a=>null!=a&&""!==a)).length?{icon:(0,d.jsx)(aF.A,{className:"size-3 text-blue-500"}),label:"text"}:b.every(a=>!isNaN(Number(a)))?{icon:(0,d.jsx)(aG.A,{className:"size-3 text-emerald-500"}),label:"number"}:b.every(a=>!isNaN(Date.parse(String(a))))?{icon:(0,d.jsx)(aH.A,{className:"size-3 text-orange-500"}),label:"date"}:{icon:(0,d.jsx)(aF.A,{className:"size-3 text-blue-500"}),label:"text"};return(0,d.jsx)(aN.nd,{className:"cursor-pointer select-none px-3 py-2.5 text-xs font-medium transition hover:text-foreground",onClick:()=>H(a),children:(0,d.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,d.jsx)("span",{className:"flex items-center justify-center size-5 bg-background border border-border/50 rounded-sm",children:c}),(0,d.jsx)("span",{children:a}),j===a?"asc"===m?(0,d.jsx)(v.A,{className:"size-3 text-primary"}):(0,d.jsx)(aJ.A,{className:"size-3 text-primary"}):(0,d.jsx)(aK.A,{className:"size-3 opacity-20"})]})},a)})})}),(0,d.jsx)(aN.BF,{children:G.map((a,b)=>(0,d.jsx)(aN.Hj,{className:(0,F.cn)("transition border-border/25",b%2==1&&"bg-muted/8"),children:c.map(b=>{var c;return(0,d.jsx)(aN.nA,{className:"max-w-55 truncate px-3 py-2 text-xs tabular-nums",title:String(a[b]??""),children:null==(c=a[b])?"—":"number"==typeof c?c.toLocaleString(void 0,{maximumFractionDigits:4}):String(c)},b)})},b))})]})}),(0,d.jsxs)("div",{className:"flex items-center justify-between border-t border-border/30 px-3 py-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsxs)("span",{className:"text-[11px] text-muted-foreground",children:[B.length!==f.length?`${B.length} matched of `:"",g.toLocaleString()," rows"]}),(0,d.jsx)("div",{className:"h-3 w-px bg-border/40"}),(0,d.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,d.jsx)("span",{className:"text-[11px] text-muted-foreground",children:"Show"}),(0,d.jsxs)(aP.l6,{value:String(q),onValueChange:a=>{r(Number(a)),p(0)},children:[(0,d.jsx)(aP.bq,{className:"h-6 w-13 text-[11px] px-2 focus:ring-0 focus-visible:ring-0",children:q}),(0,d.jsx)(aP.gC,{children:aR.map(a=>(0,d.jsx)(aP.eb,{value:String(a),className:"text-xs",children:a},a))})]})]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[(0,d.jsxs)("span",{className:"text-[11px] tabular-nums text-muted-foreground mr-1",children:[o+1," / ",E]}),(0,d.jsx)(D.$,{variant:"ghost",size:"icon",className:"h-7 w-7 focus:ring-0 focus-visible:ring-0",disabled:0===o,onClick:()=>p(a=>a-1),children:(0,d.jsx)(aL.A,{className:"size-3.5"})}),(0,d.jsx)(D.$,{variant:"ghost",size:"icon",className:"h-7 w-7 focus:ring-0 focus-visible:ring-0",disabled:o>=E-1,onClick:()=>p(a=>a+1),children:(0,d.jsx)(aM.A,{className:"size-3.5"})})]})]})]})}var aT=c(43450),aU=c(72417);function aV({artifact:a}){let[b,c]=(0,e.useState)(!1),f=(0,e.useCallback)(()=>{let b=new Blob([function(a){let b=window.atob(a),c=new Uint8Array(b.length);for(let a=0;a<b.length;a+=1)c[a]=b.charCodeAt(a);return c}(a.fileBase64)],{type:a.mimeType}),d=URL.createObjectURL(b),e=document.createElement("a");e.href=d,e.download=a.fileName,document.body.appendChild(e),e.click(),e.remove(),window.setTimeout(()=>URL.revokeObjectURL(d),1e3),c(!0)},[a]),g="xlsx"===a.format||"csv"===a.format?aT.A:aU.A;return(0,d.jsxs)("div",{className:"my-3 flex items-center gap-3 rounded-xl border border-border/70 bg-card px-3.5 py-3",children:[(0,d.jsx)("div",{className:"flex size-9 shrink-0 items-center justify-center rounded-lg bg-emerald-500/10 text-emerald-600 dark:text-emerald-400",children:(0,d.jsx)(g,{className:"size-4.5"})}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)("div",{className:"truncate text-sm font-medium text-foreground",children:a.fileName}),(0,d.jsxs)("div",{className:"mt-0.5 text-xs text-muted-foreground",children:[a.rowCount.toLocaleString()," ",1===a.rowCount?"row":"rows"," \xb7"," ",a.format.toUpperCase()]})]}),(0,d.jsxs)(D.$,{size:"sm",onClick:f,className:"h-8 shrink-0 gap-1.5 px-3 text-xs",children:[b?(0,d.jsx)(z.A,{className:"size-3.5"}):(0,d.jsx)(ac.A,{className:"size-3.5"}),b?"Downloaded":"Download"]})]})}var aW=c(19847),aX=c(58869),aY=c(90308),aZ=c(28796);function a$({config:a}){let{stdout:b,stderr:c,exitCode:f,artifacts:g,executionTimeMs:h}=a,i=(0,e.useMemo)(()=>g.filter(a=>a.mimeType.startsWith("image/")),[g]),j=(0,e.useMemo)(()=>null,[b]),l=0===f,m=/docker\.sock|docker (?:isn't|is not) running|code execution is unavailable|needs python 3/i.test(c);return(0,d.jsxs)(aZ.Zp,{className:"overflow-hidden animate-in fade-in slide-in-from-bottom-2 duration-500",children:[!l&&(0,d.jsxs)("div",{className:"flex items-center justify-between border-b border-border/40 px-4 py-2.5",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("div",{className:"flex h-6 w-6 items-center justify-center rounded-md bg-red-100 text-red-600 dark:bg-red-900/30 dark:text-red-400",children:(0,d.jsx)(aW.A,{className:"size-3"})}),(0,d.jsx)("span",{className:"text-xs font-medium text-foreground",children:"Analysis failed"})]}),(0,d.jsxs)("span",{className:"flex items-center gap-1 text-[10px] tabular-nums text-muted-foreground",children:[(0,d.jsx)(aX.A,{className:"size-3"}),h<1e3?`${h}ms`:`${(h/1e3).toFixed(1)}s`]})]}),i.length>0&&(0,d.jsx)("div",{className:"space-y-3 p-4",children:i.map((a,b)=>(0,d.jsxs)("div",{className:"overflow-hidden rounded-lg border border-border/40",children:[(0,d.jsx)("img",{src:`data:${a.mimeType};base64,${a.data}`,alt:a.name,className:"w-full"}),(0,d.jsxs)("div",{className:"flex items-center gap-2 border-t border-border/40 px-3 py-1.5",children:[(0,d.jsx)(aY.A,{className:"size-3 text-muted-foreground"}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:a.name})]})]},b))}),j&&(0,d.jsxs)(aZ.Wu,{className:"p-3 pt-3",children:[(0,d.jsxs)("div",{className:"flex items-center gap-1.5 mb-2 text-xs text-muted-foreground",children:[(0,d.jsx)(aI.A,{className:"size-3"}),(0,d.jsx)("span",{className:"font-medium",children:"Analysis Results"})]}),(0,d.jsx)(aS,{config:j})]}),b&&!j&&(0,d.jsx)("div",{className:"border-b border-border/40 px-4 py-3",children:(0,d.jsx)("pre",{className:"max-h-48 overflow-auto whitespace-pre-wrap text-xs leading-relaxed text-foreground [&::-webkit-scrollbar]:hidden",children:b})}),!l&&(0,d.jsx)("div",{className:"border-t border-border/40 bg-red-50/50 p-4 dark:bg-red-900/10",children:(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsx)("span",{className:"text-sm font-medium text-red-800 dark:text-red-400",children:m?"Analysis is unavailable":"Analysis encountered an issue"}),(0,d.jsx)("span",{className:"text-xs text-red-600/80 dark:text-red-400/80",children:m?"This workspace does not have a code-analysis runtime configured.":"This calculation could not be completed."}),c&&!m&&(0,d.jsxs)("details",{className:"mt-2 group",children:[(0,d.jsxs)("summary",{className:"cursor-pointer text-xs font-medium text-red-600/70 hover:text-red-600 dark:text-red-400/70 dark:hover:text-red-400 transition-colors list-none flex items-center gap-1",children:[(0,d.jsx)(k.A,{className:"size-3 transition-transform group-open:rotate-180"}),"Technical Details"]}),(0,d.jsx)("pre",{className:"mt-2 max-h-40 overflow-auto whitespace-pre-wrap rounded bg-red-100/50 p-3 text-[11px] leading-relaxed text-red-900/70 dark:bg-red-900/20 dark:text-red-200/70 [&::-webkit-scrollbar]:hidden",children:c})]})]})})]})}function a_({config:a}){let{tabs:b,defaultIndex:c=0}=a,[f,g]=(0,e.useState)(c);return b&&0!==b.length?1===b.length?(0,d.jsx)(d.Fragment,{children:b[0].content}):(0,d.jsxs)("div",{className:"w-full my-4 animate-in fade-in slide-in-from-bottom-2 duration-500",children:[(0,d.jsx)("div",{className:"flex items-center gap-0.5 border-b border-border/30 px-1",children:b.map((a,b)=>(0,d.jsxs)("button",{type:"button",onClick:()=>g(b),className:(0,F.cn)("relative flex items-center gap-1.5 px-3 py-2.5 text-xs font-medium transition-colors","focus:outline-none focus-visible:outline-none",f===b?"text-foreground":"text-muted-foreground hover:text-foreground/70"),children:[a.icon&&(0,d.jsx)("span",{className:"shrink-0 [&_svg]:size-3.5",children:a.icon}),(0,d.jsx)("span",{children:a.label}),f===b&&(0,d.jsx)("span",{className:"absolute bottom-0 left-2 right-2 h-0.5 rounded-full bg-foreground animate-in fade-in zoom-in-75 duration-300"})]},b))}),(0,d.jsx)("div",{className:"pt-3 animate-in fade-in slide-in-from-bottom-1 duration-400",children:b[f]?.content},f)]}):null}var a0=c(43386),a1=c(79278);let a2={paste:(0,d.jsx)(aU.A,{className:"size-3"}),upload:(0,d.jsx)(a0.A,{className:"size-3"}),scrape:(0,d.jsx)(t.A,{className:"size-3"}),tabular:(0,d.jsx)(aI.A,{className:"size-3"}),media:(0,d.jsx)(aY.A,{className:"size-3"})},a3={paste:"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400",upload:"bg-violet-100 text-violet-700 dark:bg-violet-900/30 dark:text-violet-400",scrape:"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400",tabular:"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",media:"bg-pink-100 text-pink-700 dark:bg-pink-900/30 dark:text-pink-400"};function a4({config:a}){var b;let[c,f]=(0,e.useState)(!1),{documents:g,total:h,summary:i,error:j}=a;if(j)return(0,d.jsx)(aZ.Zp,{className:"overflow-hidden animate-in fade-in slide-in-from-bottom-2 duration-500",children:(0,d.jsxs)("div",{className:"flex items-center gap-2 px-4 py-3 text-sm text-red-600 dark:text-red-400",children:[(0,d.jsx)(a1.A,{className:"size-4"}),(0,d.jsxs)("span",{children:["Failed to fetch corpus data: ",j]})]})});if(0===i.totalDocuments)return(0,d.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1 text-xs text-muted-foreground animate-in fade-in slide-in-from-bottom-2 duration-500",children:[(0,d.jsx)(a1.A,{className:"size-3"}),(0,d.jsx)("span",{children:"No documents found in the corpus."})]});let l=Object.entries(i.bySource).sort((a,b)=>b[1]-a[1]),m=Object.entries(i.byStatus).sort((a,b)=>b[1]-a[1]),n=g.length>0?{columns:["title","source","status","charCount","createdAt"],rows:g.map(a=>({title:a.title,source:a.source,status:a.status??"unindexed",charCount:a.charCount,createdAt:a.createdAt.split("T")[0],...a.url?{url:a.url}:{}})),totalRows:h}:null;return(0,d.jsxs)(aZ.Zp,{className:"overflow-hidden animate-in fade-in slide-in-from-bottom-2 duration-500",children:[(0,d.jsxs)("div",{className:"border-b border-border/40 px-4 py-3",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("div",{className:"flex h-6 w-6 items-center justify-center rounded-md bg-primary/10 text-primary",children:(0,d.jsx)(a1.A,{className:"size-3"})}),(0,d.jsx)("span",{className:"text-sm font-medium text-foreground",children:"Corpus Overview"}),(0,d.jsxs)("span",{className:"rounded-full bg-secondary px-2 py-0.5 text-[11px] tabular-nums text-muted-foreground",children:[h.toLocaleString()," ",1===h?"document":"documents"]})]}),(0,d.jsxs)("span",{className:"text-[11px] tabular-nums text-muted-foreground",children:[(b=i.totalCharacters)>=1e6?`${(b/1e6).toFixed(1)}M`:b>=1e3?`${(b/1e3).toFixed(1)}K`:String(b)," chars"]})]}),(0,d.jsxs)("div",{className:"mt-2.5 flex flex-wrap gap-1.5",children:[l.map(([a,b])=>(0,d.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-full px-2 py-0.5 text-[11px] font-medium ${a3[a]??"bg-secondary text-muted-foreground"}`,children:[a2[a],a,(0,d.jsx)("span",{className:"tabular-nums font-normal opacity-70",children:b})]},a)),m.map(([a,b])=>(0,d.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-full px-2 py-0.5 text-[11px] font-medium ${"indexed"===a?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400":"bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400"}`,children:[a,(0,d.jsx)("span",{className:"tabular-nums font-normal opacity-70",children:b})]},a))]}),i.topMetadataKeys.length>0&&(0,d.jsxs)("div",{className:"mt-2 flex flex-wrap gap-1",children:[(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground/60 self-center mr-0.5",children:"metadata:"}),i.topMetadataKeys.slice(0,8).map(({key:a,count:b})=>(0,d.jsxs)("span",{className:"rounded bg-secondary/60 px-1.5 py-0.5 text-[10px] text-muted-foreground",children:[a," ",(0,d.jsxs)("span",{className:"tabular-nums opacity-60",children:["(",b,")"]})]},a))]})]}),n&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("button",{type:"button",onClick:()=>f(a=>!a),className:"flex w-full items-center justify-between px-4 py-2 text-xs text-muted-foreground hover:bg-secondary/30 transition-colors",children:[(0,d.jsxs)("span",{children:[c?"Hide":"Show"," documents (",g.length,h>g.length?` of ${h}`:"",")"]}),(0,d.jsx)(k.A,{className:`size-3.5 transition-transform ${c?"rotate-180":""}`})]}),c&&(0,d.jsx)("div",{className:"border-t border-border/40 px-3 py-3",children:(0,d.jsx)(aS,{config:n})})]})]})}let a5=(0,e.createContext)(null);function a6(){let a=(0,e.useContext)(a5);if(!a)throw Error("useDocEditor must be used within a DocEditorProvider");return a}function a7({children:a}){let[b,c]=(0,e.useState)({isCanvasOpen:!1,sessionId:null,parsedDocument:null,activeFileName:null,activeFileType:null,fileBase64:null,fileMimeType:null,isLoading:!1,error:null,fillingFields:new Set,updatedFields:new Set,updateVersion:0}),f=(0,e.useCallback)(async(a,b)=>{c(c=>({...c,isLoading:!0,error:null,activeFileName:a.name,isCanvasOpen:!b?.background||c.isCanvasOpen}));try{let b=new FormData;b.append("file",a);let d=await fetch("/api/doc-editor/parse",{method:"POST",body:b});if(!d.ok){let a=await d.json();throw Error(a.error||"Failed to parse file")}let e=await d.json(),f=await new Promise(b=>{let c=new FileReader;c.onload=()=>{let a=c.result;b(a.split(",")[1]||a)},c.readAsDataURL(a)});c(a=>({...a,isLoading:!1,sessionId:e.sessionId,parsedDocument:{sessionId:e.sessionId,fileName:e.fileName,type:e.type,mimeType:e.mimeType,fileSize:e.fileSize,pages:e.pages,fields:e.fields,rawText:e.rawText,metadata:e.metadata,totalPages:e.totalPages},activeFileType:e.type,fileMimeType:e.mimeType,fileBase64:f,updateVersion:a.updateVersion+1}))}catch(a){c(b=>({...b,isLoading:!1,error:a.message||"Failed to parse file"}))}},[]),g=(0,e.useCallback)(()=>{c(a=>({...a,isCanvasOpen:!1}))},[]),h=(0,e.useCallback)(()=>{c(a=>({...a,isCanvasOpen:!a.isCanvasOpen}))},[]),i=(0,e.useCallback)(async a=>{if(b.sessionId){c(b=>({...b,fillingFields:new Set(a.map(a=>a.fieldId))}));try{let d=await fetch("/api/doc-editor/edit",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:b.sessionId,fieldEdits:a})});if(!d.ok){let a=await d.json();throw Error(a.error||"Edit failed")}let e=await d.json();c(a=>({...a,fillingFields:new Set,updatedFields:new Set(e.updatedFields||[]),parsedDocument:a.parsedDocument?{...a.parsedDocument,fields:e.fields||a.parsedDocument.fields,pages:e.pages||a.parsedDocument.pages,totalPages:e.totalPages||a.parsedDocument.totalPages}:null,fileBase64:e.fileBase64||a.fileBase64,updateVersion:a.updateVersion+1})),setTimeout(()=>{c(a=>({...a,updatedFields:new Set}))},2e3)}catch(a){c(b=>({...b,fillingFields:new Set,error:a.message||"Edit failed"}))}}},[b.sessionId]),j=(0,e.useCallback)(a=>{c(b=>({...b,fillingFields:new Set(a)}))},[]),k=(0,e.useCallback)(()=>{c(a=>({...a,fillingFields:new Set}))},[]),l=(0,e.useCallback)(()=>{if(!b.sessionId)return;let a=`/api/doc-editor/export?sessionId=${encodeURIComponent(b.sessionId)}`,c=document.createElement("a");c.href=a,c.download=b.activeFileName||"document",c.click()},[b.sessionId,b.activeFileName]),m=(0,e.useCallback)(a=>{c(b=>(b.isCanvasOpen&&(b.sessionId,a.sessionId),{...b,sessionId:a.sessionId,isCanvasOpen:!0,parsedDocument:b.parsedDocument?{...b.parsedDocument,fields:a.fields,pages:a.pages||b.parsedDocument.pages,totalPages:a.totalPages||b.parsedDocument.totalPages}:{sessionId:a.sessionId,fileName:b.activeFileName||"Document",type:"pdf",mimeType:"application/pdf",fileSize:0,pages:a.pages||[],fields:a.fields||[],rawText:"",metadata:{},totalPages:a.totalPages||1},fileBase64:a.fileBase64||b.fileBase64,updatedFields:new Set(a.updatedFields),fillingFields:new Set,updateVersion:b.updateVersion+1})),a.fileBase64&&a.sessionId&&fetch("/api/doc-editor/restore",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:a.sessionId,fileBase64:a.fileBase64,fileName:"Document",mimeType:"application/pdf",activeFileType:"pdf"})}).catch(console.error),setTimeout(()=>{c(a=>({...a,updatedFields:new Set}))},2e3)},[]),n={...b,openCanvas:f,closeCanvas:g,toggleCanvas:h,applyEdits:i,setFillingFields:j,clearFillingFields:k,exportFile:l,updateFromToolResult:m};return(0,d.jsx)(a5.Provider,{value:n,children:a})}var a8=c(80586),a9=c(28763),ba=c(72346),bb=c(92553),bc=c(50665),bd=c(25853),be=c(8665),bf=c(63252),bg=c(33161),bh=c(40972),bi=c(10748),bj=c(87192);function bk({className:a,defaultValue:b,value:c,min:e=0,max:f=100,...g}){let h=Array.isArray(c)?c:Array.isArray(b)?b:[e,f];return(0,d.jsx)(bf.g,{className:(0,F.cn)("data-horizontal:w-full data-vertical:h-full",a),"data-slot":"slider",defaultValue:b,value:c,min:e,max:f,thumbAlignment:"edge",...g,children:(0,d.jsxs)(bg.X,{className:"relative flex w-full touch-none items-center select-none data-disabled:opacity-50 data-vertical:h-full data-vertical:min-h-40 data-vertical:w-auto data-vertical:flex-col",children:[(0,d.jsx)(bh.h,{"data-slot":"slider-track",className:"relative grow overflow-hidden rounded-full bg-muted select-none data-horizontal:h-1 data-horizontal:w-full data-vertical:h-full data-vertical:w-1",children:(0,d.jsx)(bi.X,{"data-slot":"slider-range",className:"bg-primary select-none data-horizontal:h-full data-vertical:w-full"})}),Array.from({length:h.length},(a,b)=>(0,d.jsx)(bj.O,{"data-slot":"slider-thumb",className:"relative block size-3 shrink-0 rounded-full border border-ring bg-white ring-ring/50 transition-[color,box-shadow] select-none after:absolute after:-inset-2 hover:ring-3 focus-visible:ring-3 focus-visible:outline-hidden active:ring-3 disabled:pointer-events-none disabled:opacity-50"},b))]})})}var bl=c(84508),bm=c(5326),bn=c(30326);function bo({open:a,onOpenChange:b,fileBase64:c,totalPages:f,placements:g,onSave:h,mode:j,imagePayload:k,text:l,font:m,color:n,scale:o}){let[p,q]=(0,e.useState)(0),[r,s]=(0,e.useState)(!0),[t,u]=(0,e.useState)(null),v=(0,e.useRef)(null),w=(0,e.useRef)(null),[x,y]=(0,e.useState)([]),[z,A]=(0,e.useState)(1),B=x.find(a=>a.pageIndex===p),[C,E]=(0,e.useState)({x:150,y:150});return(0,d.jsx)(bm.lG,{open:a,onOpenChange:b,children:(0,d.jsxs)(bm.Cf,{className:"w-[95vw] max-w-250 sm:max-w-250 h-[95vh] max-h-[95vh] bg-white/80 backdrop-blur-md overflow-hidden flex flex-col p-4",children:[(0,d.jsxs)(bm.c7,{className:"mb-2 shrink-0",children:[(0,d.jsx)(bm.L3,{children:"Visual Signature Placement"}),(0,d.jsxs)("div",{className:"flex items-center justify-between mt-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(D.$,{variant:"outline",size:"icon",onClick:()=>q(a=>Math.max(0,a-1)),disabled:0===p||r,children:(0,d.jsx)(aL.A,{className:"h-4 w-4"})}),(0,d.jsxs)("span",{className:"text-sm font-medium",children:["Page ",p+1," of ",f]}),(0,d.jsx)(D.$,{variant:"outline",size:"icon",onClick:()=>q(a=>Math.min(f-1,a+1)),disabled:p===f-1||r,children:(0,d.jsx)(aM.A,{className:"h-4 w-4"})})]}),B&&(0,d.jsx)(D.$,{variant:"ghost",size:"sm",onClick:()=>{y(a=>a.filter(a=>a.pageIndex!==p))},className:"text-muted-foreground",children:"Remove from this page"})]})]}),(0,d.jsxs)("div",{className:"relative flex-1 overflow-auto flex items-center justify-center bg-muted/40 border rounded-lg",children:[r&&(0,d.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-background/50 z-10 backdrop-blur-md",children:(0,d.jsx)(i.A,{className:"h-8 w-8 animate-spin text-muted-foreground"})}),(0,d.jsxs)("div",{ref:w,className:"relative 35 bg-white overflow-hidden shrink-0",children:[(0,d.jsx)("canvas",{ref:v,className:"block w-full h-auto"}),!r&&(0,d.jsx)(a9.P.div,{drag:!0,dragMomentum:!1,dragConstraints:w,onDrag:(a,b)=>{E({x:C.x+b.delta.x,y:C.y+b.delta.y})},onDragEnd:(a,b)=>{if(!w.current)return;let{width:c,height:d}=w.current.getBoundingClientRect(),e=Math.max(0,Math.min(100,C.x/c*100)),f=Math.max(0,Math.min(100,C.y/d*100)),g=x.findIndex(a=>a.pageIndex===p),h={pageIndex:p,x:e,y:f,scale:o};if(g>=0){let a=[...x];a[g]=h,y(a)}else y([...x,h])},style:{x:C.x,y:C.y,scale:o/100*z,transformOrigin:"top left"},className:"absolute top-0 left-0 cursor-move border border-primary/50 border-dashed hover:border-primary transition-colors w-max",children:"type"===j?(0,d.jsx)("span",{style:{fontFamily:"Cursive"===m?"cursive":"sans-serif",color:"black"===n?"#000":"blue"===n?"#0000ff":"#ff0000",fontSize:"24px",lineHeight:1,display:"block"},children:l||"Your Signature"}):k?(0,d.jsx)("img",{src:k,alt:"Signature",className:"max-h-15 pointer-events-none"}):(0,d.jsx)("span",{className:"text-muted-foreground text-sm",children:"No signature"})})]})]}),(0,d.jsxs)(bm.Es,{className:"mt-4 shrink-0 flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"text-xs text-muted-foreground",children:[x.length," placement(s) set."]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(D.$,{variant:"outline",onClick:()=>b(!1),children:"Cancel"}),(0,d.jsxs)(D.$,{onClick:()=>{h(x),b(!1)},children:[(0,d.jsx)(bn.A,{className:"h-4 w-4 mr-2"}),"Save Placements"]})]})]})]})})}function bp({detectedLocations:a,fileName:b,mimeType:c,toolCallId:f,addToolResult:g}){let{sessionId:h,parsedDocument:j,updateFromToolResult:l,activeFileName:m,fileMimeType:o,fileBase64:p}=a6(),[q,r]=(0,e.useState)(!1),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)("type"),[w,x]=(0,e.useState)(a&&a.length>0&&void 0!==a[0].pageIndex?(a[0].pageIndex+1).toString():"1"),[y,z]=(0,e.useState)([]),[A,B]=(0,e.useState)(!1),[C,E]=(0,e.useState)([]),[G,H]=(0,e.useState)(!1),[I,J]=(0,e.useState)(!1),[K,L]=(0,e.useState)(null),[M,N]=(0,e.useState)({}),O=async a=>{let b=[a,...C];E(b),await (0,bd.hZ)("saved_signatures",b)},P=async(a,b)=>{b.stopPropagation();let c=C.filter(b=>b.id!==a);E(c),await (0,bd.hZ)("saved_signatures",c)},[Q,R]=(0,e.useState)(""),[S,T]=(0,e.useState)("Helvetica"),[U,V]=(0,e.useState)("black"),[W,X]=(0,e.useState)(100),[Y,Z]=(0,e.useState)(20),[$,_]=(0,e.useState)(85),[aa,ab]=(0,e.useState)(""),[ac,ad]=(0,e.useState)(""),[ae,af]=(0,e.useState)(null),ag=(0,e.useRef)(null),[ah,ai]=(0,e.useState)(!1),[aj,ak]=(0,e.useState)(null),al=a=>{ai(!0),an(a)},am=()=>{if(ai(!1),ag.current){let a=ag.current.getContext("2d");a?.beginPath()}},an=a=>{let b,c;if(!ah||!ag.current)return;let d=ag.current,e=d.getContext("2d");if(!e)return;"touches"in a?(b=a.touches[0].clientX,c=a.touches[0].clientY):(b=a.clientX,c=a.clientY);let f=d.getBoundingClientRect(),g=d.width/f.width,h=d.height/f.height,i=(b-f.left)*g,j=(c-f.top)*h;e.lineWidth=2,e.lineCap="round",e.strokeStyle="black"===U?"#000000":"blue"===U?"#0000ff":"#ff0000",e.lineTo(i,j),e.stroke(),e.beginPath(),e.moveTo(i,j)},ao=async b=>{if(!h)return void bc.oR.error("No active document session");r(!0);try{let c;if("draw"===u&&ag.current?c=ag.current.toDataURL("image/png"):"upload"===u&&aj&&(c=aj),"type"===u&&!Q.trim()){bc.oR.error("Please type a signature"),r(!1);return}if(("draw"===u||"upload"===u)&&!c){bc.oR.error("Please provide a signature image"),r(!1);return}G&&("draw"===u||"upload"===u)&&c&&await O({id:crypto.randomUUID(),imagePayload:c,mode:u});let d=new Set;w.split(",").forEach(a=>{let b=a.trim();if(b.includes("-")){let[a,c]=b.split("-").map(Number);if(!isNaN(a)&&!isNaN(c))for(let b=a;b<=c;b++)d.add(b-1)}else{let a=Number(b);isNaN(a)||d.add(a-1)}});let e=b||[...y];0===e.length&&(0===d.size&&d.add(0),Array.from(d).forEach(a=>{e.push({pageIndex:a,x:Y,y:$,scale:W})}));let f=ae;!f&&p&&(f=p,af(p));let g=null;for(let b of e){let d=await fetch("/api/document/sign",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:h,signatureData:{mode:u,imagePayload:c,text:Q,font:S,color:U,date:aa,extraText:ac,pageIndex:b.pageIndex,placementNote:M[b.pageIndex]||"",detectedContext:a?.find(a=>a.pageIndex===b.pageIndex)?.context,x:b.x,y:b.y,scale:b.scale/100,base64Override:f}})});if(!d.ok){let a=await d.json();throw Error(a.error||`Failed to sign document on page ${b.pageIndex+1}`)}g=await d.json(),g?.document?.fileBase64&&(f=g.document.fileBase64)}g&&(aq(g.document),l({sessionId:h,fields:g.document.parsed.fields,updatedFields:g.document.updatedFields,fileBase64:g.document.fileBase64,pages:g.document.parsed.pages,totalPages:g.document.parsed.totalPages})),t(!0),bc.oR.success("Signature applied for preview. Please confirm or adjust.")}catch(a){bc.oR.error(a.message)}finally{r(!1)}},[ap,aq]=(0,e.useState)(null),ar=b||m||"Document",as=c||o||"",at=ar.split(".").pop()?.toLowerCase()||"",au="/icons/image.png";return["csv","xls","xlsx"].includes(at)||as.includes("excel")||as.includes("spreadsheet")?au="/icons/excel.png":["doc","docx"].includes(at)||as.includes("word")?au="/icons/word.png":["md","markdown"].includes(at)?au="/icons/markdown.png":["pdf"].includes(at)||"application/pdf"===as?au="/icons/pdf.png":at||(au="/icons/word.png"),(0,d.jsxs)(aZ.Zp,{className:"my-4 shadow-none! bg-transparent w-full max-w-3xl border-border",children:[(0,d.jsxs)(aZ.aR,{className:"flex flex-row items-center gap-3 space-y-0",children:[(0,d.jsx)("div",{className:"size-10 shrink-0 rounded-md overflow-hidden bg-white border border-border flex items-center justify-center p-1.5 35",children:(0,d.jsx)("img",{src:au,alt:ar,className:"w-full h-full object-contain"})}),(0,d.jsxs)("div",{children:[(0,d.jsx)(aZ.ZB,{className:"text-lg",children:"Signature Request"}),(0,d.jsxs)(aZ.BT,{children:["Sign ",(0,d.jsx)("span",{className:"font-semibold text-foreground/80",children:ar})," to continue."]})]})]}),(0,d.jsxs)(aZ.Wu,{className:"space-y-4 pt-2",children:[!h&&(0,d.jsxs)("div",{className:"bg-amber-50 text-amber-900 border border-amber-200 rounded-md p-3 text-xs mb-4",children:[(0,d.jsx)("strong",{children:"Action Required:"})," Please click on your document in the chat to open it in the Canvas first. The document must be open before you can sign it."]}),a&&a.length>0&&(0,d.jsxs)("div",{className:"bg-muted p-3 rounded-md text-sm mb-4",children:[(0,d.jsx)("span",{className:"font-semibold block mb-1",children:"Detected Placement:"}),a.map((a,b)=>(0,d.jsxs)("div",{className:"group mb-2 last:mb-0",children:[(0,d.jsxs)("div",{className:"text-muted-foreground flex justify-between items-center",children:[(0,d.jsxs)("span",{children:["Page ",a.pageIndex+1]}),(0,d.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,d.jsx)("span",{className:"italic truncate max-w-50",children:a.context}),(0,d.jsx)(D.$,{variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>L(K===b?null:b),children:(0,d.jsx)(ba.A,{className:"h-3 w-3"})})]})]}),K===b&&(0,d.jsx)("div",{className:"mt-2",children:(0,d.jsx)(aO.p,{placeholder:"Add notes for placement (e.g. bottom right corner)",className:"h-8 text-xs bg-white",value:M[b]||"",onChange:a=>N({...M,[b]:a.target.value})})})]},b))]}),(0,d.jsxs)(bl.Nt,{open:I,onOpenChange:J,children:[(0,d.jsxs)("div",{className:"grid grid-cols-2 gap-2 items-end mb-4",children:[(0,d.jsxs)("div",{className:"space-y-1.5",children:[(0,d.jsx)(a8.J,{className:"text-xs",children:"Pages (e.g. 1, 3-5)"}),(0,d.jsx)(aO.p,{value:w,onChange:a=>x(a.target.value),placeholder:"1",className:"h-10 text-xs bg-white"})]}),(0,d.jsx)("div",{className:"flex flex-col justify-end w-full",children:(0,d.jsx)(bl.R6,{className:"mb-px",render:(0,d.jsxs)(D.$,{variant:"outline",size:"sm",className:"h-10 w-full justify-between bg-white text-xs px-3",children:[(0,d.jsx)("span",{children:"Advanced Settings"}),(0,d.jsx)(k.A,{className:`h-4 w-4 transition-transform duration-200 ${I?"rotate-180":""}`})]})})})]}),(0,d.jsxs)(bl.Ke,{className:"space-y-4 mb-4 rounded-md p-3 bg-white/50 animate-in fade-in duration-200",children:[(0,d.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,d.jsxs)("div",{className:"space-y-1.5",children:[(0,d.jsx)(a8.J,{className:"text-xs",children:"Font Style"}),(0,d.jsxs)(aP.l6,{value:S,onValueChange:a=>a&&T(a),disabled:"type"!==u,children:[(0,d.jsx)(aP.bq,{className:"bg-white h-8 text-xs",children:(0,d.jsx)(aP.yv,{placeholder:"Select font"})}),(0,d.jsxs)(aP.gC,{children:[(0,d.jsx)(aP.eb,{value:"Helvetica",children:"Standard"}),(0,d.jsx)(aP.eb,{value:"Cursive",children:"Cursive"})]})]})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(a8.J,{className:"text-xs block mb-1",children:"Signature Color"}),(0,d.jsx)("div",{className:"flex gap-2 h-8 items-center",children:["black","blue","red"].map(a=>(0,d.jsx)("button",{onClick:()=>V(a),className:`size-5 rounded-full border ${U===a?"ring-2 ring-primary ring-offset-1":""}`,style:{backgroundColor:a},title:a},a))})]})]}),(0,d.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)(a8.J,{className:"text-xs block mb-1",children:["Size: ",W,"%"]}),(0,d.jsx)(bk,{value:[W],onValueChange:a=>X(Array.isArray(a)?a[0]:a),min:50,max:200,step:10,className:"mt-2"})]}),(0,d.jsxs)("div",{className:"space-y-1.5",children:[(0,d.jsx)(a8.J,{className:"text-xs",children:"Date (Optional)"}),(0,d.jsx)(aO.p,{type:"date",value:aa,onChange:a=>ab(a.target.value),className:"h-8 text-xs bg-white"})]})]}),(0,d.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,d.jsxs)("div",{className:"space-y-1.5",children:[(0,d.jsx)(a8.J,{className:"text-xs",children:"Position X (%)"}),(0,d.jsx)(aO.p,{type:"number",min:0,max:100,value:Y,onChange:a=>Z(Number(a.target.value)),className:"h-8 text-xs bg-white"})]}),(0,d.jsxs)("div",{className:"space-y-1.5",children:[(0,d.jsx)(a8.J,{className:"text-xs",children:"Position Y (%)"}),(0,d.jsx)(aO.p,{type:"number",min:0,max:100,value:$,onChange:a=>_(Number(a.target.value)),className:"h-8 text-xs bg-white"})]})]}),(0,d.jsxs)("div",{className:"space-y-1.5",children:[(0,d.jsx)(a8.J,{className:"text-xs",children:"Extra Text (Optional)"}),(0,d.jsx)(aO.p,{value:ac,onChange:a=>ad(a.target.value),placeholder:"Title, Company, etc.",className:"h-8 text-xs bg-white"})]})]})]}),C.length>0&&(0,d.jsxs)("div",{className:"space-y-2 mb-4",children:[(0,d.jsx)(a8.J,{className:"text-xs",children:"Saved Signatures"}),(0,d.jsx)("div",{className:"flex gap-2 overflow-x-auto pb-2",children:C.map(a=>(0,d.jsxs)("div",{className:"relative shrink-0 w-25 h-12.5 border rounded bg-white flex items-center justify-center cursor-pointer hover:border-primary group overflow-hidden",onClick:()=>{v(a.mode),"upload"===a.mode?ak(a.imagePayload):"draw"===a.mode&&(v("upload"),ak(a.imagePayload))},children:[(0,d.jsx)("img",{src:a.imagePayload,alt:"Saved Signature",className:"max-h-full max-w-full object-contain"}),(0,d.jsx)("button",{onClick:b=>P(a.id,b),className:"absolute top-1 right-1 bg-destructive text-white rounded p-0.5 opacity-0 group-hover:opacity-100 transition-opacity",children:(0,d.jsx)(n.A,{className:"size-3"})})]},a.id))})]}),(0,d.jsxs)("div",{className:"w-full mt-4",children:[(0,d.jsx)("div",{className:"border-b border-border mb-6",children:(0,d.jsx)("div",{className:"flex items-center gap-1 -mb-px",children:[{id:"type",label:"Type",icon:aF.A},{id:"draw",label:"Draw",icon:bb.A},{id:"upload",label:"Upload",icon:a0.A}].map(a=>{let b=u===a.id,c=a.icon;return(0,d.jsxs)("button",{onClick:()=>v(a.id),className:(0,F.cn)("relative flex items-center gap-2 px-4 py-2.5 text-sm font-medium transition-colors outline-none",b?"text-foreground":"text-muted-foreground hover:text-foreground"),children:[(0,d.jsx)(c,{className:"size-4"}),a.label,b&&(0,d.jsx)(a9.P.div,{layoutId:"signature-tab-indicator",className:"absolute bottom-0 left-0 right-0 h-0.5 bg-primary rounded-full",initial:!1,transition:{type:"spring",stiffness:500,damping:35}})]},a.id)})})}),(0,d.jsxs)("div",{className:"relative",children:["type"===u&&(0,d.jsxs)("div",{className:"space-y-1.5 animate-in fade-in duration-200",children:[(0,d.jsx)(a8.J,{className:"text-xs",children:"Your Name"}),(0,d.jsx)(aO.p,{value:Q,onChange:a=>R(a.target.value),placeholder:"John Doe"})]}),"draw"===u&&(0,d.jsxs)("div",{className:"border rounded-md bg-white overflow-hidden touch-none relative animate-in fade-in duration-200",children:[(0,d.jsx)("canvas",{ref:ag,width:380,height:150,onMouseDown:al,onMouseUp:am,onMouseOut:am,onMouseMove:an,onTouchStart:al,onTouchEnd:am,onTouchMove:an,className:"w-full h-37.5 cursor-crosshair block"}),(0,d.jsx)(D.$,{variant:"outline",size:"sm",className:"absolute bottom-2 right-2 h-7 text-xs",onClick:()=>{if(!ag.current)return;let a=ag.current,b=a.getContext("2d");b&&b.clearRect(0,0,a.width,a.height)},children:"Clear"})]}),"upload"===u&&(0,d.jsxs)("div",{className:"border-2 border-dashed rounded-md p-6 flex flex-col items-center justify-center text-center relative overflow-hidden animate-in fade-in duration-200",children:[(0,d.jsx)("input",{type:"file",accept:"image/png, image/jpeg",onChange:a=>{let b=a.target.files?.[0];if(!b)return;let c=new FileReader;c.onload=a=>{ak(a.target?.result)},c.readAsDataURL(b)},className:"absolute inset-0 w-full h-full opacity-0 cursor-pointer",id:"signature-upload"}),aj?(0,d.jsx)("div",{className:"mt-2 max-h-25 overflow-hidden rounded bg-white w-full flex justify-center pointer-events-none",children:(0,d.jsx)("img",{src:aj,alt:"Signature Preview",className:"max-h-full object-contain"})}):(0,d.jsxs)("div",{className:"flex flex-col items-center space-y-2 pointer-events-none",children:[(0,d.jsx)(a0.A,{className:"size-8 text-muted-foreground mb-2"}),(0,d.jsx)("span",{className:"text-sm font-medium",children:"Click or drag to upload signature"}),(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:"PNG or JPG with transparent background"})]})]})]})]}),("draw"===u||"upload"===u)&&(0,d.jsxs)("div",{className:"flex items-center space-x-2 mt-4",children:[(0,d.jsx)(be.S,{id:"save-signature",checked:G,onCheckedChange:a=>H(!!a)}),(0,d.jsx)(a8.J,{htmlFor:"save-signature",className:"text-sm font-medium leading-none",children:"Save signature for future use"})]})]}),(0,d.jsxs)(aZ.wL,{className:"flex flex-col items-end pt-4 border-t gap-2",children:[!h&&(0,d.jsx)("span",{className:"text-xs text-amber-600 bg-amber-50 px-2 py-1 rounded-md border border-amber-200",children:"Click the document in the chat to open it in the canvas before signing."}),(0,d.jsx)("div",{className:"flex items-center gap-2",children:s?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(D.$,{variant:"outline",onClick:()=>void(ae&&h&&l({sessionId:h,fileBase64:ae,fields:j?.fields||[],updatedFields:[],pages:j?.pages||[],totalPages:j?.totalPages||1}),t(!1)),disabled:q,className:"w-full sm:w-auto",children:"Undo & Adjust"}),(0,d.jsx)(D.$,{onClick:()=>void(f&&g&&g({toolCallId:f,result:{success:!0,action:"request_signature",message:"User has successfully signed the document.",fileBase64:ap?.fileBase64,fields:ap?.parsed?.fields,updatedFields:ap?.updatedFields,pages:ap?.parsed?.pages,totalPages:ap?.parsed?.totalPages},output:{success:!0,action:"request_signature",message:"User has successfully signed the document.",fileBase64:ap?.fileBase64,fields:ap?.parsed?.fields,updatedFields:ap?.updatedFields,pages:ap?.parsed?.pages,totalPages:ap?.parsed?.totalPages}})),className:"bg-emerald-600 hover:bg-emerald-700 text-white w-full sm:w-auto",children:"Confirm Signature"})]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(D.$,{variant:"outline",size:"sm",className:"h-10 text-xs px-3 text-primary",onClick:()=>B(!0),children:"Place Visually"}),(0,d.jsxs)(D.$,{onClick:()=>ao(),disabled:q||!h,className:"w-full sm:w-auto",children:[q?(0,d.jsx)(i.A,{className:"mr-2 size-4 animate-spin"}):null,"Preview Signature"]})]})})]}),(0,d.jsx)(bo,{open:A,onOpenChange:B,fileBase64:ae||p||"",totalPages:j?.totalPages||1,placements:y,onSave:a=>{z(a),ao(a)},mode:u,imagePayload:"draw"===u&&ag.current?ag.current.toDataURL("image/png"):"upload"===u?aj:null,text:Q,font:S,color:U,scale:W})]})}var bq=c(31293),br=c(39490),bs=c(60812),bt=c(99258),bu=c(47535),bv=c(19315);function bw({assetId:a,mediaType:b,fileName:c,mediaUrl:f,sourceUrl:g,startSecs:i,endSecs:j}){let[k,l]=(0,e.useState)(!1),[m,n]=(0,e.useState)(!1),o=(0,e.useRef)(null),p=f&&void 0!==i?`${f.split("#")[0]}#t=${i}${void 0!==j?`,${j}`:""}`:f,q=(0,e.useMemo)(()=>"video"===b?function(a,b,c){if(a)try{let d=new URL(a),e=d.hostname.toLowerCase().replace(/^www\./,""),f=Math.max(0,Math.floor(b??0)),g=Number.isFinite(c)&&c>f?Math.floor(c):void 0,h=a=>{let b=new URL(`https://www.youtube-nocookie.com/embed/${a}`);return b.searchParams.set("start",String(f)),b.searchParams.set("rel","0"),void 0!==g&&b.searchParams.set("end",String(g)),b.toString()};if("youtu.be"===e||e.endsWith(".youtu.be")){let a=d.pathname.split("/").filter(Boolean)[0];return a?h(a):void 0}if("youtube.com"===e||e.endsWith(".youtube.com")){let a=d.pathname.split("/").filter(Boolean),b=d.searchParams.get("v")||(["embed","shorts","live"].includes(a[0])?a[1]:void 0);return b?h(b):void 0}if("vimeo.com"===e||e.endsWith(".vimeo.com")){let a=d.pathname.split("/").find(a=>/^\d+$/.test(a));return a?`https://player.vimeo.com/video/${a}#t=${f}s`:void 0}}catch{}}(g,i,j):void 0,[b,g,i,j]),r="video"===b&&Number.isFinite(i)&&Number.isFinite(j)&&j>i;return f?"image"===b?m?(0,d.jsxs)("div",{className:"my-2 w-full max-w-2xl rounded-lg border border-border bg-card p-3",children:[(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"This source image is no longer available."}),(0,d.jsx)(by,{icon:(0,d.jsx)(aY.A,{className:"size-3 text-muted-foreground"}),fileName:c,sourceUrl:g})]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"my-2 w-full max-w-2xl overflow-hidden rounded-lg border border-border bg-card",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>l(!0),className:"group relative block w-full overflow-hidden",children:[(0,d.jsx)("img",{src:f,alt:c??"Image",className:"max-h-105 w-full object-contain",loading:"lazy",onError:()=>n(!0)}),(0,d.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-black/0 opacity-0 transition-all group-hover:bg-black/20 group-hover:opacity-100",children:(0,d.jsx)(bt.A,{className:"size-5 text-white"})})]}),(0,d.jsx)(by,{icon:(0,d.jsx)(aY.A,{className:"size-3 text-muted-foreground"}),fileName:c,sourceUrl:g})]}),k&&(0,d.jsxs)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 p-8",onClick:()=>l(!1),children:[(0,d.jsx)("button",{type:"button","aria-label":"Close image preview",className:"absolute right-4 top-4 rounded-full bg-black/50 p-2 text-white hover:bg-black/70",onClick:()=>l(!1),children:(0,d.jsx)(h.A,{className:"size-5"})}),(0,d.jsx)("img",{src:f,alt:c??"Image",className:"max-h-[80vh] max-w-[90vw] rounded-lg object-contain",onClick:a=>a.stopPropagation(),onError:()=>n(!0)})]})]}):"video"===b?(0,d.jsxs)("div",{className:"my-2 w-full max-w-2xl overflow-hidden rounded-lg border border-border bg-card",children:[q?(0,d.jsx)("iframe",{src:q,title:c?`Watch ${c}`:"Video preview",className:"aspect-video w-full bg-black",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0}):(0,d.jsx)("video",{ref:o,src:p,controls:!0,playsInline:!0,preload:"metadata",className:"max-h-90 w-full bg-black object-contain",onTimeUpdate:a=>{r&&a.currentTarget.currentTime>=j&&(a.currentTarget.pause(),a.currentTarget.currentTime=j)}}),(0,d.jsx)(by,{icon:(0,d.jsx)(bu.A,{className:"size-3 text-muted-foreground"}),fileName:c,sourceUrl:bx(g,i,j),timestamp:void 0!==i?`${bz(i)}${void 0!==j?` – ${bz(j)}`:""}`:void 0})]}):"audio"===b?(0,d.jsxs)("div",{className:"my-2 w-full max-w-xl overflow-hidden rounded-lg border border-border bg-card",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5 border-b border-border px-3 py-2",children:[(0,d.jsx)("div",{className:"flex size-7 shrink-0 items-center justify-center rounded-md bg-primary/10 text-primary",children:(0,d.jsx)(bv.A,{className:"size-3.5"})}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)("p",{className:"truncate text-[11px] font-medium text-foreground",children:c??"Audio recording"}),void 0!==i?(0,d.jsxs)("p",{className:"mt-0.5 text-[10px] tabular-nums text-muted-foreground",children:[bz(i),void 0!==j?` – ${bz(j)}`:""]}):(0,d.jsx)("p",{className:"mt-0.5 text-[10px] text-muted-foreground",children:"Audio reference"})]})]}),(0,d.jsx)("div",{className:"px-3 py-2",children:(0,d.jsx)("audio",{src:p,controls:!0,preload:"metadata",className:"h-8 w-full"})}),g?(0,d.jsx)("div",{className:"flex justify-end border-t border-border px-3 py-1.5",children:(0,d.jsx)("a",{href:bx(g,i,j),target:"_blank",rel:"noreferrer",className:"text-[11px] font-medium text-primary hover:text-primary/80",children:"Open source"})}):null]}):"frame-preview"===b?m?(0,d.jsxs)("div",{className:"my-2 w-full max-w-xl rounded-lg border border-border bg-card p-3",children:[(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"This frame could not be extracted."}),(0,d.jsx)(by,{icon:(0,d.jsx)(bu.A,{className:"size-3 text-muted-foreground"}),fileName:c,sourceUrl:bx(g,i),timestamp:void 0!==i?bz(i):void 0})]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"my-2 w-full max-w-xl overflow-hidden rounded-lg border border-border bg-card",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>l(!0),className:"group relative block w-full overflow-hidden",children:[(0,d.jsx)("img",{src:f,alt:`Frame at ${void 0!==i?bz(i):"unknown"}`,className:"max-h-105 w-full object-contain",loading:"lazy",onError:()=>n(!0)}),void 0!==i&&(0,d.jsx)("div",{className:"absolute bottom-2 left-2 rounded-md bg-black/70 px-2 py-0.5",children:(0,d.jsx)("span",{className:"text-[11px] font-medium tabular-nums text-white",children:bz(i)})}),(0,d.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-black/0 opacity-0 transition-all group-hover:bg-black/20 group-hover:opacity-100",children:(0,d.jsx)(bt.A,{className:"size-5 text-white"})})]}),(0,d.jsx)(by,{icon:(0,d.jsx)(bu.A,{className:"size-3 text-muted-foreground"}),fileName:c?`${c} — Frame`:"Video Frame",sourceUrl:bx(g,i),timestamp:void 0!==i?bz(i):void 0})]}),k&&(0,d.jsxs)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 p-8",onClick:()=>l(!1),children:[(0,d.jsx)("button",{type:"button","aria-label":"Close frame preview",className:"absolute right-4 top-4 rounded-full bg-black/50 p-2 text-white hover:bg-black/70",onClick:()=>l(!1),children:(0,d.jsx)(h.A,{className:"size-5"})}),(0,d.jsx)("img",{src:f,alt:`Frame at ${void 0!==i?bz(i):"unknown"}`,className:"max-h-[80vh] max-w-[90vw] rounded-lg object-contain",onClick:a=>a.stopPropagation(),onError:()=>n(!0)})]})]}):null:null}function bx(a,b,c){if(!a||!Number.isFinite(b))return a;let d=Math.max(0,Math.floor(b)),e=Number.isFinite(c)&&c>d?Math.floor(c):null;try{let b=new URL(a,"http://larkup.local"),c=b.hostname.toLowerCase().replace(/^www\./,"");if("youtube.com"===c||c.endsWith(".youtube.com")||"youtu.be"===c)return b.searchParams.set("t",`${d}s`),"http://larkup.local"===b.origin?`${b.pathname}${b.search}${b.hash}`:b.toString();return b.hash=`t=${d}${null!==e?`,${e}`:""}`,"http://larkup.local"===b.origin?`${b.pathname}${b.search}${b.hash}`:b.toString()}catch{return`${a.split("#")[0]}#t=${d}${null!==e?`,${e}`:""}`}}function by({icon:a,fileName:b,sourceUrl:c,timestamp:e}){return b||c||e?(0,d.jsxs)("div",{className:"flex items-center justify-between gap-3 border-t border-border px-3 py-1.5",children:[(0,d.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5",children:[a,(0,d.jsxs)("span",{className:"truncate text-[11px] text-muted-foreground",children:[b??"Media citation",e?` \xb7 ${e}`:""]})]}),c?(0,d.jsx)("a",{href:c,target:"_blank",rel:"noreferrer",className:"shrink-0 text-[11px] font-medium text-primary hover:text-primary/80",children:"Open source"}):null]}):null}function bz(a){let b=Math.floor(a/60),c=Math.floor(a%60);return`${b}:${String(c).padStart(2,"0")}`}var bA=c(28284),bB=c(49073);function bC(a){let b=Math.max(0,Math.floor(a)),c=Math.floor(b/3600),d=Math.floor(b%3600/60),e=b%60;return c>0?`${c}:${String(d).padStart(2,"0")}:${String(e).padStart(2,"0")}`:`${d}:${String(e).padStart(2,"0")}`}function bD({ui:a,assetId:b,autoOpenSupportingClip:c=!1}){let[f,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(!1);return a.items?.length||a.mediaUrl?(0,d.jsxs)("div",{className:"mb-1 w-full max-w-2xl","data-testid":"chat-citations",children:[a.mediaUrl?(0,d.jsxs)("div",{className:"mb-2",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>g(a=>!a),className:"flex items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground",children:[(0,d.jsx)(aW.A,{className:"size-3"}),(0,d.jsxs)("span",{className:"font-medium",children:[f?"Hide":"Watch"," supporting clip"]}),"number"==typeof a.primaryTimestampSecs?(0,d.jsxs)("span",{children:["\xb7 starts at ",bC(a.primaryTimestampSecs)]}):null]}),f?(0,d.jsx)("div",{className:"mt-1.5",children:(0,d.jsx)(bw,{assetId:b??"chat-citation",mediaType:a.mediaType??"video",fileName:a.fileName,mediaUrl:a.mediaUrl,sourceUrl:a.sourceUrl??a.mediaUrl,startSecs:a.primaryTimestampSecs,endSecs:a.primaryEndSecs})}):null]}):null,a.items?.length?(0,d.jsxs)("div",{className:"overflow-hidden rounded-lg border border-border/70 bg-card/60",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>i(a=>!a),className:"flex w-full items-center justify-between gap-3 px-3 py-2 text-left text-xs transition-colors hover:bg-muted/40","aria-expanded":h,children:[(0,d.jsxs)("span",{className:"flex min-w-0 items-center gap-2 text-muted-foreground",children:[(0,d.jsx)(aU.A,{className:"size-3.5 shrink-0"}),(0,d.jsx)("span",{className:"font-medium text-foreground",children:a.title??"Sources"})]}),(0,d.jsxs)("span",{className:"flex shrink-0 items-center gap-1 text-[11px] text-muted-foreground",children:[a.items.length," citation",1===a.items.length?"":"s",h?(0,d.jsx)(bA.A,{className:"size-3"}):(0,d.jsx)(k.A,{className:"size-3"})]})]}),h?(0,d.jsx)("div",{className:"border-t border-border/60 px-2 py-1.5",children:a.items.map((a,b)=>(0,d.jsxs)("div",{className:"flex items-start gap-2 rounded-md px-1.5 py-2 hover:bg-muted/40",children:[(0,d.jsx)("div",{className:"min-w-0 flex-1",children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:["number"==typeof a.timestampSecs?(0,d.jsx)("span",{className:"text-[11px] font-semibold tabular-nums text-foreground",children:bC(a.timestampSecs)}):null,(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:a.label}),a.conflicted?(0,d.jsx)(q.A,{className:"size-3 shrink-0 text-amber-600 dark:text-amber-400","aria-label":"Conflicting evidence"}):null]})}),a.seekUrl?(0,d.jsx)("a",{href:a.seekUrl,target:"_blank",rel:"noreferrer","aria-label":`Open source: ${a.label}`,className:"mt-0.5 shrink-0 p-1 text-muted-foreground transition-colors hover:text-foreground",children:(0,d.jsx)(bB.A,{className:"size-3.5"})}):null]},b))}):null]}):null]}):null}function bE({text:a,animate:b}){let[c,f]=(0,e.useState)(b?0:a.length);return(0,d.jsx)(d.Fragment,{children:a.substring(0,c)})}function bF({parts:a,isShimmering:b,activity:c}){let[f,g]=(0,e.useState)(!1),h=a.some(a=>{if("tool-invocation"===a.type){let b=a.toolInvocation?.state;return"partial-call"===b||"call"===b}return"input-streaming"===a.state||"input-available"===a.state}),[j]=(0,e.useState)(h),l=(0,e.useMemo)(()=>{for(let b of a){let a="tool-invocation"===b.type?b.toolInvocation?.args:b.input??b.args;if(a?.query)return a.query}return""},[a]),m=(0,e.useMemo)(()=>a.flatMap(a=>{let b=function a(b){if("string"==typeof b)try{return a(JSON.parse(b))}catch{return null}return"object"==typeof b&&null!==b?b:null}("tool-invocation"===a.type?a.toolInvocation?.result:a.output??a.result);return Array.isArray(b?.hits)?b.hits:[]}),[a]);return(0,d.jsxs)("div",{className:"mb-0 w-full p","data-testid":"chat-citations",children:[(0,d.jsxs)("div",{className:"relative inline-flex items-center",children:[b&&(0,d.jsx)("div",{className:"pointer-events-none absolute inset-0 z-10 animate-pulse bg-linear-to-r from-transparent via-foreground/5 to-transparent"}),(0,d.jsxs)("button",{type:"button",onClick:()=>m.length>0&&g(a=>!a),className:`flex items-center gap-2 pr-2 py-1.5 text-xs transition-colors duration-500 rounded-md ${m.length>0?"hover:bg-muted/50 cursor-pointer":"cursor-default"} ${h?"text-foreground":"text-muted-foreground"}`,children:[h?(0,d.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 animate-spin"}):(0,d.jsx)(a1.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,d.jsx)("span",{className:"truncate max-w-62.5 sm:max-w-100",children:l?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"mr-1",children:h?"Searching":"Searched"}),(0,d.jsxs)("span",{className:"font-medium",children:["“",(0,d.jsx)(bE,{text:l,animate:j}),"”"]})]}):h?"Finding relevant sources…":m.length>0?"Sources":"No matching sources"}),!h&&m.length>0?(0,d.jsxs)("span",{className:"shrink-0 text-[10px] bg-secondary text-foreground px-1.5 py-0.5 rounded-full font-medium ml-1",children:[m.length," source",1===m.length?"":"s"]}):null,!h&&m.length>0?(0,d.jsx)(k.A,{className:`h-3 w-3 shrink-0 transition-transform ${f?"rotate-180":""}`}):null]})]}),h&&c?(0,d.jsxs)("div",{className:"mt-2.5 max-w-2xl rounded-xl border border-emerald-500/70 bg-background px-3 py-2.5","aria-live":"polite","data-testid":"video-analysis-progress",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-3 text-xs",children:[(0,d.jsx)("span",{className:"larkup-shimmer-text font-medium",children:c.message}),c.percent>=90?null:(0,d.jsxs)("span",{className:"shrink-0 tabular-nums text-muted-foreground",children:[Math.max(1,Math.round(c.percent)),"%"]})]}),(0,d.jsx)("div",{className:"mt-2 h-1.5 overflow-hidden rounded-full bg-emerald-950/10 dark:bg-emerald-100/10",role:"progressbar","aria-label":c.message,"aria-valuemin":0,"aria-valuemax":100,...c.percent>=90?{}:{"aria-valuenow":Math.max(1,Math.round(c.percent))},children:c.percent>=90?(0,d.jsx)("div",{className:"larkup-progress-shuttle h-full rounded-full bg-emerald-500"}):(0,d.jsx)("div",{className:"h-full rounded-full bg-emerald-500 transition-[width] duration-700 ease-out",style:{width:`${Math.max(6,Math.min(100,c.percent))}%`}})})]}):null,f&&m.length>0?(0,d.jsxs)("div",{className:"mt-2 overflow-hidden rounded-xl border border-border bg-card","data-testid":"citation-list",children:[h&&0===m.length?(0,d.jsx)("div",{className:"flex items-center gap-2 px-3.5 py-2.5",children:(0,d.jsx)(i.A,{className:"size-3 animate-spin text-muted-foreground"})}):null,m.slice(0,4).map((a,b)=>(0,d.jsxs)("div",{className:"flex gap-3 border-b border-border/60 px-3.5 py-3 last:border-0","data-testid":"citation-source",children:[(0,d.jsx)(bK,{hit:a}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,d.jsx)(bJ,{hit:a}),bI(a.url)?(0,d.jsx)("a",{href:a.url,target:"_blank",rel:"noreferrer","aria-label":`Open ${a.title}`,className:"mt-0.5 shrink-0 text-muted-foreground transition-colors hover:text-foreground",children:(0,d.jsx)(bB.A,{className:"size-3.5"})}):null]}),a.metadata?.mediaType?(0,d.jsxs)("div",{className:"mt-1.5 flex items-center gap-2 text-[11px] text-muted-foreground",children:[(0,d.jsxs)("span",{className:"capitalize",children:[a.metadata.mediaType," source"]}),Number.isFinite(a.metadata.startSecs)?(0,d.jsxs)("span",{className:"rounded-md bg-muted px-1.5 py-0.5 font-mono tabular-nums",children:[bH(a.metadata.startSecs),Number.isFinite(a.metadata.endSecs)?`–${bH(a.metadata.endSecs)}`:""]}):null]}):null,bG(a)?(0,d.jsxs)("div",{className:"mt-2 rounded-lg bg-muted/55 px-2.5 py-2",children:[(0,d.jsx)("div",{className:"mb-1 text-[10px] font-medium uppercase tracking-wide text-muted-foreground",children:"Indexed context"}),(0,d.jsx)("p",{className:"line-clamp-4 text-xs leading-relaxed text-foreground/80",dir:"auto",children:bG(a)})]}):null]})]},`${a.title}-${b}`))]}):null]})}function bG(a){let b=a.context?.trim();if(b)return b;let c=a.timelineContext?.find(a=>"matched"===a.role)?.text?.trim();if(c)return c;let d=a.text?.trim();return d&&!d.startsWith("Verified media evidence is available")?d:""}function bH(a){let b=Math.max(0,Math.floor(a)),c=Math.floor(b/3600),d=Math.floor(b%3600/60),e=b%60;return c>0?`${c}:${String(d).padStart(2,"0")}:${String(e).padStart(2,"0")}`:`${d}:${String(e).padStart(2,"0")}`}function bI(a){return!!(a&&(a.startsWith("/")||/^https?:\/\//i.test(a)))}function bJ({hit:a}){let b=a.title||"Untitled source";return bI(a.url)?(0,d.jsx)("a",{href:a.url,target:"_blank",rel:"noreferrer",className:"line-clamp-1 text-xs font-medium text-foreground transition-colors hover:text-primary hover:underline",children:b}):(0,d.jsx)("span",{className:"line-clamp-1 text-xs font-medium text-foreground",children:b})}function bK({hit:a}){let[b,c]=(0,e.useState)(!1),f=(a.images??a.metadata?.images)?.find(a=>bI(a.imageUrl));return f&&!b?(0,d.jsx)("img",{src:f.imageUrl,alt:"",className:"size-11 shrink-0 rounded-md border border-border object-cover",loading:"lazy",onError:()=>c(!0)}):(0,d.jsx)("div",{className:"flex size-11 shrink-0 items-center justify-center rounded-md border border-border bg-muted/40 text-muted-foreground",children:a.metadata?.mediaType==="image"?(0,d.jsx)(aY.A,{className:"size-4"}):(0,d.jsx)(aU.A,{className:"size-4"})})}var bL=c(69865);function bM(a){if("string"==typeof a)try{return bM(JSON.parse(a))}catch{return}return a&&"object"==typeof a&&"json"===a.type?bM(a.value):a&&"object"==typeof a?a:void 0}function bN(a){return a&&"object"==typeof a&&!Array.isArray(a)?a:{}}function bO(a){let b=bN(a.metadata).answerFeedback;return"liked"===b||"disliked"===b?b:void 0}function bP(a,b,c){return a.map(a=>a.id===b?function(a,b){let{answerFeedback:c,...d}=bN(a.metadata),e=b?{...d,answerFeedback:b}:d;return{...a,...Object.keys(e).length>0?{metadata:e}:{metadata:void 0}}}(a,c):a)}function bQ(a){return Array.isArray(a.parts)?a.parts.filter(a=>!!a&&"object"==typeof a&&"text"===a.type&&"string"==typeof a.text).map(a=>a.text).join("\n\n").trim():""}function bR({message:a,isLast:b,isStreaming:c,addToolResult:f,serverId:g,autoOpenSupportingClip:h=!1,regenerate:i,isBusy:j,onFeedback:k}){let l,m,n="user"===a.role,[o,p]=(0,e.useState)(()=>Date.now()),q=(0,e.useRef)({}),[r,s]=(0,e.useState)(null),[t,u]=(0,e.useState)({}),{data:v}=(0,w.u)(b&&c?`/api/gpu-activity${g?`?projectId=${encodeURIComponent(g)}`:""}`:null,a=>fetch(a).then(a=>a.json()),{refreshInterval:800,dedupingInterval:0,keepPreviousData:!0}),x=v?.activity?.toolCallId&&v.activity.phase?v.activity:r,z=x?function(a,b=Date.now()){let c=Math.max(0,Math.min(97,a.percent)),d=Date.parse(a.updatedAt??a.startedAt??"");if(!Number.isFinite(d))return c;let e=Math.max(0,b-d),f="waking-up"===a.phase?28:97;if(c>=f)return c;let g=c+(f-c)*(1-Math.exp(-e/75e3));return Math.round(Math.max(c,Math.min(f,g)))}(x,o):0,A=Math.min(97,Math.max((x?.toolCallId?t[x.toolCallId]:void 0)??0,z)),B=x?.toolCallId?{toolCallId:x.toolCallId,percent:A,label:x.label,message:x.message||x.label,phase:x.phase}:null;try{let a=a6();l=a.updateFromToolResult,m=a.openCanvas}catch{}let C=(0,e.useMemo)(()=>{let b=a.parts?[...a.parts]:[];return a.toolInvocations&&Array.isArray(a.toolInvocations)&&a.toolInvocations.forEach(a=>{b.some(b=>"tool-invocation"===b.type&&b.toolInvocation?.toolCallId===a.toolCallId)||b.push({type:"tool-invocation",toolInvocation:a})}),b},[a.parts,a.toolInvocations]);if((0,e.useRef)(new Set),(0,e.useMemo)(()=>b?C.filter(a=>{let b=bT(a);return b.isCompleted&&b.output?.success&&("fillDocumentForm"===b.toolName||"editDocument"===b.toolName||"requestDocumentSignature"===b.toolName)}).map(a=>{let b=a.toolInvocation??a;return b.toolCallId||b.id||""}).join(","):"",[C,b]),n){let b=C.filter(a=>"text"===a.type).map(a=>a.text).join(""),c=a.experimental_attachments||[],e=C.filter(a=>"image"===a.type||"file"===a.type).map(a=>{let b=a.name,c=a.mimeType||a.contentType||("image"===a.type?"image/png":"");if(!c&&a.url&&"string"==typeof a.url&&a.url.startsWith("data:")){let b=a.url.match(/^data:([^;]+);/);b&&(c=b[1])}return c||(c="application/octet-stream"),!b&&(a.url&&"string"==typeof a.url&&!a.url.startsWith("data:")?b=a.url.split("/").pop()?.split("?")[0]:(b="image"===a.type?"image.png":"Document","application/pdf"===c?b="Document.pdf":"text/plain"===c?b="Text.txt":c.includes("word")?b="Document.docx":(c.includes("excel")||c.includes("spreadsheet"))&&(b="Data.xlsx"))),{url:a.image||a.data||a.url,contentType:c,name:b}}),f=c.length>0?c:e;return(0,d.jsx)("div",{className:"message user-message group flex justify-end","data-role":"user",children:(0,d.jsxs)("div",{className:"max-w-[85%] flex flex-col gap-2 items-end",children:[f.length>0&&(0,d.jsx)("div",{className:"flex flex-wrap justify-end gap-2",children:f.map((a,b)=>{let c=a.contentType||a.type||"",e=c.startsWith("image/"),f=c.startsWith("video/"),g=c.startsWith("audio/"),h=a.name;if(!c&&a.url&&"string"==typeof a.url&&a.url.startsWith("data:")){let b=a.url.match(/^data:([^;]+);/);b&&(c=b[1])}(!c||"application/octet-stream"===c)&&a.url&&"string"==typeof a.url&&a.url.includes("JVBERi0")&&(c="application/pdf"),h&&"Attachment"!==h?"application/pdf"!==c||h.toLowerCase().endsWith(".pdf")||(h+=".pdf"):(h=e?"image.png":"Document","application/pdf"===c?h="Document.pdf":"text/plain"===c?h="Text.txt":c.includes("word")?h="Document.docx":(c.includes("excel")||c.includes("spreadsheet"))&&(h="Data.xlsx"));let i=h.split(".").pop()?.toLowerCase()||"",j="/icons/image.png";return["csv","xls","xlsx"].includes(i)||c.includes("excel")||c.includes("spreadsheet")?j="/icons/excel.png":["doc","docx"].includes(i)||c.includes("word")?j="/icons/word.png":["md","markdown"].includes(i)?j="/icons/markdown.png":["pdf"].includes(i)||"application/pdf"===c?j="/icons/pdf.png":f?j="/icons/video.png":g?j="/icons/audio.png":e||i||(j="/icons/word.png"),(0,d.jsxs)("div",{onClick:()=>{if(m){if(a instanceof File||a.name&&a.size&&!a.url)m(a,{background:!1});else if(a.url){let b=a.url;b.startsWith("http")||b.startsWith("data:")||(b=`data:${c||"application/octet-stream"};base64,${b}`),fetch(b).then(a=>a.blob()).then(a=>{let b=new File([a],h,{type:c});m(b,{background:!1})}).catch(a=>{console.error("Failed to open attachment in canvas",a)})}}},className:`flex items-center gap-2 bg-muted/80 border border-border/60 rounded-xl h-12 px-3 p-1 shrink-0 ${m&&(a.url||a instanceof File||a.size)?"cursor-pointer hover:bg-muted":""}`,children:[(0,d.jsx)("div",{className:"size-7 shrink-0 rounded-md overflow-hidden bg-background border border-border/90 flex items-center justify-center p-1",children:(0,d.jsx)("img",{src:j,alt:h,className:"w-full h-full object-contain"})}),(0,d.jsx)("div",{className:"flex flex-col justify-center max-w-37.5",children:(0,d.jsx)("span",{className:"text-xs font-medium truncate text-foreground",children:h})})]},b)})}),b&&(0,d.jsx)("div",{className:"rounded-2xl rounded-br-md bg-muted border border-border/25 px-4 py-2 text-[15px] leading-relaxed text-foreground",children:b}),b&&(0,d.jsx)(G,{text:b,className:"opacity-0 transition group-hover:opacity-100 focus-within:opacity-100",regenerateLabel:"Resend from here",onRegenerate:!j&&i?()=>i({messageId:a.id}):void 0})]})})}let D=C.filter(a=>{let{toolName:b}=bT(a);return"source"===(0,bL.zf)(b).placement}),E=D.flatMap(a=>{let b=bM(bT(a).output);return b?.videoEvidence?.success&&b.videoEvidence.ui?.kind==="citations"?[b.videoEvidence.ui]:[]}),F=D.some(a=>bT(a).isExecuting),H=B&&D.some(a=>{let b=a.toolInvocation??a;return(b.toolCallId||b.id||"")===B.toolCallId})?B:null,I=!1,J=C.filter(a=>{let{toolName:b}=bT(a);if("source"===(0,bL.zf)(b).placement)return!1;if("requestDocumentSignature"===b){if(I)return!1;I=!0}return!0}),K=C.filter(a=>"text"===a.type),{allCleanTexts:L,hasThinkTags:M}=(0,e.useMemo)(()=>{let a=!1,b=[];for(let c of K){let{cleanText:d,reasoningText:e}=function(a){let b,c;if(!a)return{cleanText:"",reasoningText:""};let d=[],e=function(a){let b=new Set(Object.keys(bL.Ag)),c=a.split("\n"),d=[],e=0;for(let a of c){if(e>0){(e+=bS(a))<=0&&(e=0);continue}let c=a.match(/^\s*([A-Za-z_$][\w$]*)\s*\(/)?.[1];if(c&&b.has(c)){(e=bS(a))<=0&&(e=0);continue}d.push(a)}return d.join("\n")}(a),f=/<(?:think|thought)>([\s\S]*?)<\/(?:think|thought)>/gi;for(;null!==(b=f.exec(e));)d.push(b[1].trim());e=e.replace(f,"");let g=/<(?:think|thought)>([\s\S]*)$/i,h=e.match(g);h&&(d.push(h[1].trim()),e=e.replace(g,""));let i=/<result>([\s\S]*?)<\/result>/gi,j=!1,k="",l=e;for(;null!==(c=i.exec(e));)j=!0,k+=(k?"\n\n":"")+c[1].trim(),l=l.replace(c[0],"");let m=/<result>([\s\S]*)$/i,n=l.match(m);return(n&&(j=!0,k+=(k?"\n\n":"")+n[1].trim(),l=l.replace(m,"")),j)?(l.trim()&&d.push(l.trim()),{cleanText:k.trim(),reasoningText:d.filter(Boolean).join("\n\n")}):{cleanText:e.trim(),reasoningText:d.filter(Boolean).join("\n\n")}}(c.text||"");b.push(d),e&&(a=!0)}return{allCleanTexts:b,hasThinkTags:a}},[K]),N=(0,e.useMemo)(()=>L.filter(Boolean).join("\n\n").trim(),[L]),O=bO(a),P="liked"===O,Q="disliked"===O,R=K.every(a=>!a.text||0===a.text.trim().length)&&b&&c,S=a=>{let{toolName:b,isCompleted:c}=bT(a);return"visualization"===(0,bL.zf)(b).placement&&c},T=J.filter(S),U=J.filter(a=>"media"===(0,bL.zf)(bT(a).toolName).placement),V=J.filter(a=>"web-search"===(0,bL.zf)(bT(a).toolName).placement),W=J.filter(a=>{let b=(0,bL.zf)(bT(a).toolName).placement;return!S(a)&&"inline"===b}),X=J.findIndex(a=>bT(a).output?.ui?.kind==="citations"),Y=T.length>1?T.map((a,b)=>{let{output:c}=bT(a);return{label:c?.title||`Chart ${b+1}`,content:bU(a,b)}}):null,Z=(0,e.useMemo)(()=>J.filter(a=>{let{isExecuting:b,toolName:c}=bT(a);return b&&"source"!==(0,bL.zf)(c).placement}),[J]);return(0,d.jsxs)("div",{className:"message assistant-message flex flex-col gap-2","data-role":"assistant",children:[D.length>0&&(0,d.jsx)(bF,{parts:D,isShimmering:R,activity:H}),E.map((a,b)=>(0,d.jsx)(bD,{ui:a,autoOpenSupportingClip:h&&0===b},`nested-citations-${b}`)),V.length>0&&(0,d.jsx)(bV,{parts:V}),W.filter(a=>bT(a).isCompleted).map((a,b)=>{let c=J.indexOf(a);return bU(a,b,f,l,void 0,h&&0===E.length&&c===X)}),Y?(0,d.jsx)(a_,{config:{tabs:Y}}):T.map((a,b)=>bU(a,b,f,l)),Z.map((a,b)=>bU(a,b,f,l,(a=>{let b=a.toolInvocation??a,c=b.toolCallId||b.id||"";if(B?.toolCallId===c)return B;q.current[c]??=o;let d=(0,bL.zf)(bT(a).toolName);return{toolCallId:c,percent:function(a,b=Date.now()){return Math.max(4,Math.min(82,4+78*(1-Math.exp(-Math.max(0,b-a)/55e3))))}(q.current[c],o),label:d.pendingLabel||"Working…",message:d.pendingLabel||"Working…"}})(a))),b&&c&&0===Z.length&&!F&&!M&&K.every(a=>!a.text||0===a.text.trim().length)&&(0,d.jsx)("div",{className:"flex items-center gap-2",children:(0,d.jsx)("div",{className:"size-6.5 bg-white border border-border rounded-full flex items-center justify-center p-1 animate-pulse",children:(0,d.jsx)("img",{src:"/logo.png",alt:"logo",className:"size-4 animate-spin"})})}),K.map((a,b)=>{let c=a.text||"";if(!c.trim())return null;let e=(L[b]??c).replace(/\[(?:IMAGE_REF|VIDEO_REF|AUDIO_REF):[^\]]+\]/g,"");if(!e.trim())return null;let f=function(a){if(!a)return[];let b=a.split("\n"),c=[],d=[],e=[],f=!1,g=a=>{let b=a.trim();return b.startsWith("|")&&b.endsWith("|")&&b.length>2},h=a=>/^\|[\s\-:|]+\|$/.test(a.trim()),i=()=>{if(d.length>0){let a=d.join("\n").trim();a&&c.push({type:"text",content:a}),d=[]}},j=()=>{if(e.length<2){d.push(...e),e=[];return}let a=e[0].split("|").map(a=>a.trim()).filter(Boolean),b=1;e.length>1&&h(e[1])&&(b=2);let f=[];for(let c=b;c<e.length;c++){let b=e[c].split("|").slice(1,-1).map(a=>a.trim()),d={};a.forEach((a,c)=>{let e=b[c]??"",f=Number(e);d[a]=isNaN(f)||""===e?e:f}),f.push(d)}a.length>0&&f.length>0&&c.push({type:"table",table:{columns:a,rows:f}}),e=[]};for(let a of b)g(a)?(f||(i(),f=!0),h(a)&&1!==e.length?h(a)&&e.push(a):e.push(a)):(f&&(j(),f=!1),d.push(a));return f&&j(),i(),c}(e);return(0,d.jsx)("div",{className:"flex flex-col gap-4",children:f.map((a,b)=>{if("table"===a.type){let c={columns:a.table.columns,rows:a.table.rows,totalRows:a.table.rows.length};return(0,d.jsx)(aS,{config:c},`table-${b}`)}return(0,d.jsx)("div",{className:"assistant-text-content",dangerouslySetInnerHTML:{__html:function(a){if(!a)return"";let b=(function(a){let b=a.split("\n"),c=null,d=2;for(let a=0;a<b.length;a+=1){let e=b[a].match(/^(\s*)1\.\s+(.+)$/);if(!e){/^\s*\d+\.\s+/.test(b[a])&&(c=null,d=2);continue}null!==c&&b.slice(c+1,a).every(a=>!a.trim()||/^\s*[-*+]\s+/.test(a))?(b[a]=`${e[1]}${d}. ${e[2]}`,d+=1):d=2,c=a}return b.join("\n")})(a).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=(b=b.replace(/\\\[([\s\S]+?)\\\]|\$\$([\s\S]+?)\$\$/g,(a,b,c)=>{try{return y.Ay.renderToString(b||c,{displayMode:!0,throwOnError:!1})}catch{return a}})).replace(/\\\(([\s\S]+?)\\\)|\$([^$\n]+?)\$/g,(a,b,c)=>{try{return y.Ay.renderToString(b||c,{displayMode:!1,throwOnError:!1})}catch{return a}})).replace(/!\[([^\]]*)\]\([^)]*\)/g,(a,b)=>`<span class="text-muted-foreground italic">[Image unavailable${b?`: ${b}`:""}]</span>`)).replace(/```(\w*)\n([\s\S]*?)```/g,'<pre class="msg-code-block"><code>$2</code></pre>')).replace(/`([^`]+)`/g,'<code class="msg-inline-code">$1</code>')).replace(/\*\*(.+?)\*\*/g,'<strong class="msg-bold">$1</strong>')).replace(/\*(.+?)\*/g,"<em>$1</em>")).replace(/\[([^\]]+)\]\(([^)]+)\)/g,(a,b,c)=>{let d=c.toLowerCase();return d.match(/\.(mp4|webm|ogg)$/)||d.includes("video")?`<video src="${c}" controls preload="metadata" class="max-w-90 w-full rounded-lg my-2 border border-border bg-card"></video>`:d.match(/\.(mp3|wav|m4a|oga)$/)||d.includes("audio")?`<audio src="${c}" controls preload="metadata" class="max-w-80 w-full my-2"></audio>`:`<a href="${c}" target="_blank" rel="noreferrer" class="msg-link">${b}</a>`})).replace(/^### (.+)$/gm,'<h3 class="msg-h3">$1</h3>')).replace(/^## (.+)$/gm,'<h2 class="msg-h2">$1</h2>')).replace(/^# (.+)$/gm,'<h1 class="msg-h1">$1</h1>')).replace(/^- (.+)$/gm,'<li class="msg-li">$1</li>')).replace(/(<li class="msg-li">.*?<\/li>\n?)+/g,a=>`<ul class="msg-ul">${a}</ul>`)).replace(/(^\d+\. .+$)(\n\n)((?=\d+\. ))/gm,"$1\n$3")).replace(/^(\d+)\. (.+)$/gm,'<li class="msg-li-ordered" data-order="$1">$2</li>')).replace(/(<li class="msg-li-ordered" data-order="\d+">.*?<\/li>\n?)+/g,a=>{let b=a.match(/data-order="(\d+)"/)?.[1]??"1";return`<ol class="msg-ol" start="${b}">${a.replace(/ data-order="\d+"/g,"")}</ol>`})).replace(/\n\n/g,'</p><p class="msg-p">')).replace(/(<?\/?(?:ul|ol|li|h1|h2|h3|pre)[^>]*>)\n+/g,"$1")).replace(/\n+(<\/?(?:ul|ol|li|h1|h2|h3|pre)[^>]*>)/g,"$1")).replace(/\n/g,"<br/>")}(a.content)}},`text-${b}`)})},b)}),U.filter(a=>bT(a).isCompleted).map((a,b)=>bU(a,b,f,l)),N&&!(b&&c)&&(0,d.jsx)(G,{text:N,liked:P,disliked:Q,onLike:k?()=>{k?.(a.id,P?void 0:"liked")}:void 0,onDislike:k?()=>{k?.(a.id,Q?void 0:"disliked")}:void 0,onRegenerate:i?()=>i({messageId:a.id}):void 0})]})}function bS(a){let b=0;for(let c of a)"("===c&&(b+=1),")"===c&&(b-=1);return b}function bT(a){if("tool-invocation"===a.type){let b=a.toolInvocation,c=b.state;return{toolName:b.toolName,isExecuting:"partial-call"===c||"call"===c,isCompleted:("result"===c||"output"===c||"output-available"===c)&&void 0!==b.result,output:bM(b.result)??b.result,input:b.args}}if(a.type?.startsWith("tool-")&&"tool-invocation"!==a.type){let b=a.type.replace("tool-",""),c=a.state;return{toolName:b,isExecuting:"input-streaming"===c||"input-available"===c,isCompleted:("output"===c||"output-available"===c)&&void 0!==a.output,output:bM(a.output)??a.output,input:a.input}}return{toolName:"",isExecuting:!1,isCompleted:!1,output:void 0,input:void 0}}function bU(a,b,c,e,f,g=!1){let{toolName:h,isExecuting:i,isCompleted:j,output:k,input:l}=bT(a),m=(0,bL.zf)(h),n=a.toolInvocation?.toolCallId||a.toolCallId||a.id||"";if(i){if("source"===m.placement)return null;if("signature"===m.resultView)return(0,d.jsx)(bp,{detectedLocations:l?.detectedLocations,toolCallId:n,addToolResult:c},b);let a=f&&f.toolCallId===n?f:null,e=!!a&&a.percent>=90;return(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-1.5 py-3",children:[(0,d.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,d.jsx)("div",{className:"size-6.5 bg-white dark:bg-card border border-border rounded-full flex items-center justify-center p-1",children:(0,d.jsx)("img",{src:"/logo.png",alt:"",className:"size-4 animate-spin"})}),(0,d.jsx)("span",{className:"larkup-shimmer-text min-w-0 wrap-break-word text-[13px] font-medium leading-5","aria-live":"polite","aria-atomic":"true",children:a?.message||a?.label||m.pendingLabel||"Working"})]}),a&&!1!==m.showProgressBar?(0,d.jsxs)("div",{className:"ml-9 flex items-center gap-2",children:[(0,d.jsx)("div",{className:"h-1.5 w-48 overflow-hidden rounded-full bg-muted",children:e?(0,d.jsx)("div",{className:"larkup-progress-shuttle h-full rounded-full bg-emerald-500"}):(0,d.jsx)("div",{className:"h-full rounded-full bg-emerald-500 transition-[width] duration-700 ease-out",style:{width:`${Math.max(6,Math.min(100,a.percent))}%`}})}),e?null:(0,d.jsxs)("span",{className:"text-[11px] tabular-nums text-muted-foreground",children:[Math.round(a.percent),"%"]})]}):null]},b)}if(j){let a=k?.ui;if(a?.kind==="notice")return(0,d.jsxs)("div",{className:"rounded-xl border border-primary/20 bg-primary/5 px-4 py-3 text-sm",children:[(0,d.jsx)("div",{className:"font-medium",children:a.title}),(0,d.jsx)("div",{className:"mt-1 text-muted-foreground",children:a.body})]},b);if(a?.kind==="card")return(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-card px-4 py-3 text-sm",children:[(0,d.jsx)("div",{className:"font-medium",children:a.title}),(0,d.jsx)("dl",{className:"mt-3 grid gap-2",children:(a.facts??[]).map(a=>(0,d.jsxs)("div",{className:"flex items-start justify-between gap-5",children:[(0,d.jsx)("dt",{className:"text-muted-foreground",children:a.label}),(0,d.jsx)("dd",{className:"text-right",children:a.value})]},a.label))})]},b);if(a?.kind==="table")return(0,d.jsxs)("div",{className:"overflow-x-auto rounded-xl border border-border bg-card p-3 text-sm",children:[(0,d.jsx)("div",{className:"mb-3 font-medium",children:a.title}),(0,d.jsxs)("table",{className:"w-full text-left",children:[(0,d.jsx)("thead",{className:"text-muted-foreground",children:(0,d.jsx)("tr",{children:(a.columns??[]).map(a=>(0,d.jsx)("th",{className:"px-2 py-1",children:a},a))})}),(0,d.jsx)("tbody",{children:(a.rows??[]).map((b,c)=>(0,d.jsx)("tr",{className:"border-t border-border/60",children:(a.columns??[]).map(a=>(0,d.jsx)("td",{className:"px-2 py-2",children:b[a]},a))},c))})]})]},b);if(a?.kind==="citations")return(0,d.jsx)(bD,{ui:a,assetId:k?.mediaAssetId,autoOpenSupportingClip:g},b);switch(m.resultView){case"data-table":{if(k.error)return null;let a={columns:k.columns??[],rows:k.rows??[],totalRows:k.totalRows??0,aggregationResults:k.aggregationResults};if(0===a.rows.length&&!a.aggregationResults)return null;let c=k.visualization;return(0,d.jsxs)("div",{children:[(0,d.jsx)(aS,{config:a,compact:m.compactResult}),c?.data?.length?(0,d.jsx)(aE,{config:c}):null]},b)}case"file-export":if(!k?.success||!k?.fileBase64)break;return(0,d.jsx)(aV,{artifact:k},b);case"none":if("visualization"!==m.placement||!k)break;return(0,d.jsx)(aE,{config:k},b);case"sandbox":return(0,d.jsx)(a$,{config:k},b);case"corpus":if(!k)break;return(0,d.jsx)(a4,{config:k},b);case"document-edit":{if(!k.success)return null;let a=k.fileName||"Document",c=k.mimeType||"",f=a.split(".").pop()?.toLowerCase()||"",g="/icons/image.png";return["csv","xls","xlsx"].includes(f)||c.includes("excel")||c.includes("spreadsheet")?g="/icons/excel.png":["doc","docx"].includes(f)||c.includes("word")?g="/icons/word.png":["md","markdown"].includes(f)?g="/icons/markdown.png":["pdf"].includes(f)||"application/pdf"===c?g="/icons/pdf.png":f||(g="/icons/word.png"),(0,d.jsxs)("div",{onClick:()=>{e&&k.fileBase64&&e(k)},className:"group flex items-center gap-3 rounded-xl border border-border/60 bg-emerald-50/50 dark:bg-emerald-900/10 px-4 py-3 text-sm text-emerald-700 dark:text-emerald-400 cursor-pointer hover:bg-emerald-100/50 dark:hover:bg-emerald-900/20 transition",children:[(0,d.jsx)("div",{className:"size-8 shrink-0 rounded-md overflow-hidden bg-white border border-emerald-200/50 flex items-center justify-center p-1.5 35",children:(0,d.jsx)("img",{src:g,alt:a,className:"w-full h-full object-contain"})}),(0,d.jsxs)("div",{className:"flex flex-col flex-1",children:[(0,d.jsxs)("span",{className:"font-medium text-emerald-800 dark:text-emerald-300",children:["fillDocumentForm"===h?"Form fields updated in ":"Edited ",(0,d.jsx)("span",{className:"font-bold",children:a})]}),(0,d.jsxs)("span",{className:"text-xs opacity-80 mt-0.5",children:[k.updatedFields?.length||0," ",k.updatedFields?.length===1?"change":"changes"," applied. Preview updated in Canvas."]})]}),k.fileBase64&&(0,d.jsxs)("div",{className:"opacity-0 group-hover:opacity-100 text-xs font-medium text-emerald-600 dark:text-emerald-400 flex items-center gap-1 transition",children:[(0,d.jsx)(bq.A,{className:"size-3"}),"View this version"]})]},b)}case"signature":if(!k?.success)break;return(0,d.jsxs)("div",{onClick:()=>{e&&k.fileBase64&&e(k)},className:"group flex items-center gap-3 rounded-xl border border-border/60 bg-emerald-50/50 dark:bg-emerald-900/10 px-4 py-3 text-sm text-emerald-700 dark:text-emerald-400 mt-2 cursor-pointer hover:bg-emerald-100/50 dark:hover:bg-emerald-900/20 transition",children:[(0,d.jsx)(br.A,{className:"size-5 shrink-0 text-emerald-500"}),(0,d.jsxs)("div",{className:"flex-1 flex items-center justify-between",children:[(0,d.jsx)("span",{className:"font-medium text-emerald-800 dark:text-emerald-300",children:"Document signed successfully."}),k.fileBase64&&(0,d.jsxs)("div",{className:"opacity-0 group-hover:opacity-100 text-xs font-medium text-emerald-600 dark:text-emerald-400 flex items-center gap-1 transition",children:[(0,d.jsx)(bq.A,{className:"size-3"}),"View this version"]})]})]},b);case"image-analysis":if(k.error)break;return(0,d.jsx)("div",{className:"mb-2 w-full",children:(0,d.jsxs)("div",{className:"inline-flex items-center gap-2 px-2 py-1.5 text-xs text-muted-foreground bg-muted/30 rounded-md border border-border/50",children:[(0,d.jsx)(bs.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,d.jsx)("span",{className:"truncate max-w-62.5 sm:max-w-100",children:"Analyzed indexed image"})]})},b);case"media":if(!k?.success||!k.assetId||!["image","video","audio","frame-preview"].includes(k.mediaType))break;return(0,d.jsx)(bw,{assetId:k.assetId,mediaType:k.mediaType,fileName:k.fileName,mediaUrl:k.mediaUrl,sourceUrl:k.sourceUrl,startSecs:k.startSecs,endSecs:k.endSecs},b)}}return null}function bV({parts:a}){let[b,c]=(0,e.useState)(!1),f=a.map(a=>{let b=bT(a),c=Array.isArray(b.output?.results)?b.output.results:[];return{query:b.input?.query,results:c,running:b.isExecuting}}),g=f.reduce((a,b)=>a+b.results.length,0),h=f.some(a=>a.running);return(0,d.jsxs)("div",{className:"mb-2 w-full",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>(g>0||f.length>1)&&c(a=>!a),className:"inline-flex items-center gap-2 rounded-md border border-border/50 bg-muted/30 px-2 py-1.5 text-xs text-muted-foreground transition-colors hover:bg-muted/50",children:[(0,d.jsx)(t.A,{className:"size-3.5 shrink-0"}),(0,d.jsx)("span",{children:h?"Searching the web…":"Searched the web"}),!h&&g>0?(0,d.jsxs)("span",{className:"rounded-full bg-secondary px-1.5 py-0.5 text-[10px] font-medium text-foreground",children:[g," result",1===g?"":"s"]}):null,!h&&(g>0||f.length>1)?(0,d.jsx)(k.A,{className:`size-3 transition-transform ${b?"rotate-180":""}`}):null]}),b?(0,d.jsx)("div",{className:"mt-2 max-w-xl overflow-hidden rounded-lg border border-border/60 bg-background text-xs",children:f.flatMap(a=>a.results).slice(0,5).map((a,b)=>(0,d.jsxs)("a",{href:a.url,target:"_blank",rel:"noreferrer",className:"block border-b border-border/50 px-3 py-2.5 last:border-0 hover:bg-muted/40",children:[(0,d.jsx)("span",{className:"block truncate font-medium text-foreground",children:a.title||a.url}),a.snippet?(0,d.jsx)("span",{className:"mt-0.5 block line-clamp-2 text-muted-foreground",children:a.snippet}):null]},`${a.url??a.title??b}-${b}`))}):null]})}function bW({items:a,onRemove:b,onMoveUp:c,onMoveDown:e,onEdit:f}){return 0===a.length?null:(0,d.jsxs)("div",{className:"mx-auto mb-2 w-full max-w-3xl overflow-hidden rounded-2xl border border-border bg-card",children:[(0,d.jsx)("div",{className:"border-b border-border/60 px-3 py-1.5",children:(0,d.jsxs)("span",{className:"text-xs font-medium text-muted-foreground",children:[a.length," queued message",a.length>1?"s":""]})}),(0,d.jsx)("ul",{className:"max-h-40 overflow-y-auto scrollbar-none [&::-webkit-scrollbar]:hidden",children:a.map((g,h)=>(0,d.jsxs)("li",{className:"group flex items-start gap-2 border-border/40 px-3 py-2 text-sm transition-colors last:border-b-0 hover:bg-secondary",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>f(g.id),className:"min-w-0 flex-1 cursor-pointer text-left",title:"Click to edit",children:[(0,d.jsx)("p",{className:"line-clamp-2 break-words text-foreground",children:g.text||"(attachment only)"}),g.files&&g.files.length>0&&(0,d.jsxs)("div",{className:"mt-1 flex items-center gap-1 text-muted-foreground",children:[(0,d.jsx)(j.A,{className:"size-3 shrink-0"}),(0,d.jsx)("span",{className:"truncate text-xs",children:g.files.map(a=>a.name).join(", ")})]})]}),(0,d.jsxs)("div",{className:"flex shrink-0 items-center gap-0.5 opacity-0 transition-opacity group-hover:opacity-100",children:[(0,d.jsx)("button",{type:"button",onClick:()=>c(g.id),disabled:0===h,className:"flex h-6 w-6 items-center justify-center rounded text-muted-foreground transition hover:bg-muted-foreground/10 hover:text-foreground disabled:pointer-events-none disabled:opacity-30","aria-label":"Move up in queue",children:(0,d.jsx)(bA.A,{className:"size-3.5"})}),(0,d.jsx)("button",{type:"button",onClick:()=>e(g.id),disabled:h===a.length-1,className:"flex h-6 w-6 items-center justify-center rounded text-muted-foreground transition hover:bg-muted-foreground/10 hover:text-foreground disabled:pointer-events-none disabled:opacity-30","aria-label":"Move down in queue",children:(0,d.jsx)(k.A,{className:"size-3.5"})}),(0,d.jsx)("button",{type:"button",onClick:()=>b(g.id),className:"flex h-6 w-6 items-center justify-center rounded text-muted-foreground transition hover:bg-destructive/10 hover:text-destructive","aria-label":"Remove from queue",children:(0,d.jsx)(n.A,{className:"size-3.5"})})]})]},g.id))})]})}var bX=c(99354),bY=c(45078),bZ=c(93037),b$=c(20353),b_=c(26977),b0=c(85469),b1=c(94016);let b2=async a=>{let b=await fetch(a);if(!b.ok)throw Error("Could not load job progress.");return b.json()};function b3(){let[a,b]=(0,e.useState)(!1),[c,f]=(0,e.useState)("running"),{activeProject:g}=(0,bZ.B)(),h=g?.id,{data:j,error:k,mutate:l}=(0,w.u)("/api/jobs",b1.A,{refreshInterval:a=>4e3*!!a?.jobs.some(a=>"running"===a.status||"queued"===a.status),revalidateOnFocus:!0}),{data:m,error:n,mutate:o}=(0,w.u)("/api/index",b2,{refreshInterval:a=>2e3*!!a?.running,revalidateOnFocus:!0}),p=`/api/media?type=all${h?`&serverId=${encodeURIComponent(h)}`:""}`,{data:r,error:s,mutate:t}=(0,w.u)(p,b2,{refreshInterval:a=>2e3*!!a?.assets.some(b_.t),revalidateOnFocus:!0}),u=j?.jobs??[],v=u.filter(a=>"running"===a.status||"queued"===a.status),x=(r?.assets??[]).filter(b_.t),y=m?.running??!1,z=v.length+x.length+ +!!y,A=z>0,B=u.length>0||x.length>0||y,C="running"===c?v:u,D=(0,e.useCallback)(()=>{Promise.all([l(),o(),t()])},[o,l,t]);return(0,d.jsxs)(b0.cj,{open:a,onOpenChange:a=>{b(a),a&&D()},children:[(0,d.jsx)(E.Bc,{delay:50,children:(0,d.jsxs)(E.m_,{children:[(0,d.jsx)(E.k$,{render:(0,d.jsx)(b0.CG,{render:(0,d.jsxs)("button",{type:"button","aria-label":A?`Jobs tracking, ${z} active`:"Jobs tracking",className:(0,F.cn)("relative flex size-8 items-center justify-center rounded-lg text-muted-foreground transition-colors hover:bg-secondary hover:text-foreground",A&&"bg-emerald-500/10 text-emerald-700 hover:bg-emerald-500/15 hover:text-emerald-700 dark:text-emerald-400"),children:[(0,d.jsx)(bX.A,{className:"size-4"}),A&&(0,d.jsx)("span",{"aria-hidden":"true",className:"absolute -right-1 -top-1 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-emerald-500 px-0.5 text-[9px] font-semibold leading-none text-white ring-2 ring-background motion-safe:animate-pulse",children:z>9?"9+":z})]})})}),(0,d.jsx)(E.ZI,{children:A?"Active jobs":"Jobs"})]})}),(0,d.jsxs)(b0.h,{side:"right",className:"w-[calc(100vw-1rem)]! max-w-2xl! gap-0 p-0 sm:w-2xl!",children:[(0,d.jsx)(b0.Fm,{className:"border-b border-border px-5 py-4 pr-14",children:(0,d.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,d.jsx)("div",{className:(0,F.cn)("flex size-8 items-center justify-center rounded-lg bg-muted text-muted-foreground",A&&"bg-emerald-500/10 text-emerald-700 dark:text-emerald-400"),children:(0,d.jsx)(bX.A,{className:"size-4"})}),(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)(b0.qp,{className:"text-sm font-semibold",children:"Jobs"}),(0,d.jsx)(b0.Qs,{className:"text-xs",children:A?`${z} background ${1===z?"job":"jobs"} active`:"Track indexing and website jobs"})]})]})}),(0,d.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto p-5",children:[(k||n||s)&&(0,d.jsxs)("div",{className:"mb-4 flex items-start gap-2 rounded-lg border border-amber-500/30 bg-amber-500/5 px-3 py-2.5 text-xs text-amber-800 dark:text-amber-300",children:[(0,d.jsx)(q.A,{className:"mt-0.5 size-3.5 shrink-0"}),"Some job progress could not be refreshed. The available results are shown below."]}),B?(0,d.jsxs)("div",{className:"space-y-5",children:[(0,d.jsx)(b_.v,{assets:x}),y&&(0,d.jsxs)("div",{className:"flex items-center gap-3 rounded-lg border border-border bg-background px-3 py-2.5",children:[(0,d.jsx)(i.A,{className:"size-4 shrink-0 animate-spin text-emerald-600"}),(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("p",{className:"text-xs font-medium text-foreground",children:"Indexing files"}),(0,d.jsx)("p",{className:"text-[11px] text-muted-foreground",children:"Running in the background — new files will join the queue."})]})]}),u.length>0&&(0,d.jsxs)("section",{className:(0,F.cn)((x.length>0||y)&&"border-t border-border pt-4"),children:[(0,d.jsx)("div",{className:"mb-3 flex items-center gap-2",children:[{id:"running",label:"Running"},{id:"all",label:"All jobs"}].map(a=>(0,d.jsx)("button",{type:"button","aria-pressed":c===a.id,onClick:()=>f(a.id),className:(0,F.cn)("rounded-full px-3 py-1 text-xs font-medium transition-colors",c===a.id?"bg-muted text-foreground":"border border-border text-muted-foreground hover:bg-muted/50 hover:text-foreground"),children:a.label},a.id))}),(0,d.jsx)(b$.n,{jobs:C,onChanged:D})]})]}):(0,d.jsxs)("div",{className:"flex min-h-64 flex-col items-center justify-center text-center",children:[(0,d.jsx)("div",{className:"mb-3 flex size-10 items-center justify-center rounded-xl border border-border bg-muted/40 text-muted-foreground",children:(0,d.jsx)(bY.A,{className:"size-4.5"})}),(0,d.jsx)("p",{className:"text-sm font-medium text-foreground",children:"No jobs yet"}),(0,d.jsx)("p",{className:"mt-1 max-w-xs text-xs leading-relaxed text-muted-foreground",children:"File indexing, media processing, and website jobs will appear here while they run."})]})]})]})]})}var b4=c(54399),b5=c(20866),b6=c(83615),b7=c(70079);let b8=(0,b6.v)()((0,b7.Zr)(a=>({selectedModel:"",setSelectedModel:b=>a({selectedModel:b})}),{name:"larkup-chat-store"}));var b9=c(28245),ca=c(31615),cb=c(33883),cc=c(82016),cd=c(68216);function ce({field:a,isFilling:b,isUpdated:c,onEdit:f}){let[g,h]=(0,e.useState)(a.value),[j,k]=(0,e.useState)(!1),l=(0,e.useRef)(null),m=()=>{k(!1),g!==a.value&&f(g)};return(0,d.jsxs)(a9.P.div,{"data-field-id":a.id,layout:!0,initial:{opacity:0,y:4},animate:{opacity:1,y:0},className:(0,F.cn)("group relative rounded-lg border px-3 py-2 transition-all duration-300",b&&"border-primary/40 bg-primary/5",c&&!b&&"border-emerald-400/60 bg-emerald-50/50 dark:bg-emerald-900/10",!b&&!c&&"border-border/60 bg-card hover:border-border"),children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,d.jsxs)("label",{className:"text-[11px] font-medium text-muted-foreground",children:[a.name,a.required&&(0,d.jsx)("span",{className:"text-destructive ml-0.5",children:"*"})]}),(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[b&&(0,d.jsxs)(a9.P.div,{initial:{scale:0},animate:{scale:1},className:"flex items-center gap-1",children:[(0,d.jsx)(i.A,{className:"size-3 animate-spin text-primary"}),(0,d.jsx)("span",{className:"text-[9px] text-primary font-medium",children:"Filling…"})]}),c&&!b&&(0,d.jsxs)(a9.P.div,{initial:{scale:0},animate:{scale:1},transition:{type:"spring",stiffness:500,damping:25},className:"flex items-center gap-1",children:[(0,d.jsx)("div",{className:"flex h-4 w-4 items-center justify-center rounded-full bg-emerald-500",children:(0,d.jsx)(z.A,{className:"size-2.5 text-white"})}),(0,d.jsx)("span",{className:"text-[9px] text-emerald-600 dark:text-emerald-400 font-medium",children:"Updated"})]})]})]}),"checkbox"===a.type?(0,d.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,d.jsx)("input",{type:"checkbox",checked:"true"===g,onChange:a=>{let b=a.target.checked?"true":"false";h(b),f(b)},className:"h-4 w-4 rounded border-border text-primary focus:ring-primary"}),(0,d.jsx)("span",{className:"text-xs text-foreground",children:a.name})]}):"select"===a.type&&a.options?(0,d.jsxs)("select",{value:g,onChange:a=>{h(a.target.value),f(a.target.value)},className:"w-full rounded-md border border-border/60 bg-transparent px-2 py-1 text-xs text-foreground outline-none focus:border-primary",children:[(0,d.jsx)("option",{value:"",children:"Select…"}),a.options.map(a=>(0,d.jsx)("option",{value:a,children:a},a))]}):"textarea"===a.type?(0,d.jsx)("textarea",{ref:l,value:g,onChange:a=>h(a.target.value),onFocus:()=>k(!0),onBlur:m,placeholder:a.placeholder||`Enter ${a.name.toLowerCase()}`,rows:2,className:(0,F.cn)("w-full rounded-md border bg-transparent px-2 py-1 text-xs text-foreground outline-none resize-none transition","border-border/60 focus:border-primary placeholder:text-muted-foreground/50",b&&"animate-pulse")}):(0,d.jsx)("input",{ref:l,type:"date"===a.type?"date":"number"===a.type?"number":"text",value:g,onChange:a=>h(a.target.value),onFocus:()=>k(!0),onBlur:m,onKeyDown:a=>{"Enter"===a.key&&a.target.blur()},placeholder:a.placeholder||`Enter ${a.name.toLowerCase()}`,className:(0,F.cn)("w-full rounded-md border bg-transparent px-2 py-1 text-xs text-foreground outline-none transition","border-border/60 focus:border-primary placeholder:text-muted-foreground/50",b&&"animate-pulse")}),b&&(0,d.jsx)(a9.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"absolute inset-0 rounded-lg overflow-hidden pointer-events-none",children:(0,d.jsx)("div",{className:"absolute inset-0 bg-linear-to-r from-transparent via-primary/5 to-transparent animate-shimmer"})})]})}function cf(){let{parsedDocument:a,activeFileName:b,activeFileType:c,fileBase64:f,fileMimeType:g,isLoading:j,error:k,fillingFields:l,updatedFields:m,updateVersion:n,closeCanvas:o,exportFile:p,applyEdits:q}=a6(),[r,s]=(0,e.useState)(0),[t,u]=(0,e.useState)(100),[v,w]=(0,e.useState)(!1),x=(0,e.useRef)(null),y=a?.totalPages??0,z=a?.pages?.[r],A=()=>{let b=z?.text||a?.rawText||"No content to display";return(0,d.jsx)("div",{className:"flex-1 overflow-auto p-6 bg-card",children:(0,d.jsx)("div",{className:"whitespace-pre-wrap text-sm leading-relaxed text-foreground",children:b})})};return(0,d.jsxs)(a9.P.div,{initial:{width:0,opacity:0},animate:{width:"100%",opacity:1},exit:{width:0,opacity:0},transition:{type:"spring",stiffness:300,damping:30},className:(0,F.cn)("flex h-full flex-col border-l border-border bg-card overflow-hidden",v&&"fixed inset-0 z-50 border-none"),children:[(0,d.jsxs)("div",{className:"flex items-center justify-between border-b border-border/40 px-3 py-2 bg-card",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,d.jsx)(aU.A,{className:"size-3.5 shrink-0 text-muted-foreground"}),(0,d.jsx)("span",{className:"truncate text-xs font-medium text-foreground",children:b||"Document"}),a?.fields&&a.fields.length>0&&(0,d.jsxs)("span",{className:"shrink-0 rounded-full bg-primary/10 px-1.5 py-0.5 text-[9px] font-semibold text-primary",children:[a.fields.length," fields"]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[y>1&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("button",{type:"button",onClick:()=>s(a=>Math.max(0,a-1)),disabled:0===r,className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-muted disabled:opacity-30",children:(0,d.jsx)(aL.A,{className:"size-3.5"})}),(0,d.jsxs)("span",{className:"text-[10px] tabular-nums text-muted-foreground px-1",children:[r+1,"/",y]}),(0,d.jsx)("button",{type:"button",onClick:()=>s(a=>Math.min(y-1,a+1)),disabled:r>=y-1,className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-muted disabled:opacity-30",children:(0,d.jsx)(aM.A,{className:"size-3.5"})}),(0,d.jsx)("div",{className:"mx-1 h-4 w-px bg-border"})]}),(0,d.jsx)("button",{type:"button",onClick:()=>u(a=>Math.max(50,a-10)),className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-muted",children:(0,d.jsx)(cb.A,{className:"size-3.5"})}),(0,d.jsxs)("span",{className:"text-[10px] tabular-nums text-muted-foreground w-8 text-center",children:[t,"%"]}),(0,d.jsx)("button",{type:"button",onClick:()=>u(a=>Math.min(200,a+10)),className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-muted",children:(0,d.jsx)(cc.A,{className:"size-3.5"})}),(0,d.jsx)("div",{className:"mx-1 h-4 w-px bg-border"}),(0,d.jsxs)(E.m_,{children:[(0,d.jsx)(E.k$,{render:(0,d.jsx)("button",{type:"button",onClick:()=>w(a=>!a),className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-muted",children:v?(0,d.jsx)(cd.A,{className:"size-3.5"}):(0,d.jsx)(bt.A,{className:"size-3.5"})})}),(0,d.jsx)(E.ZI,{children:v?"Exit fullscreen":"Fullscreen"})]}),(0,d.jsxs)(E.m_,{children:[(0,d.jsx)(E.k$,{render:(0,d.jsx)("button",{type:"button",onClick:p,className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-muted",children:(0,d.jsx)(ac.A,{className:"size-3.5"})})}),(0,d.jsx)(E.ZI,{children:"Download"})]}),(0,d.jsx)("button",{type:"button",onClick:o,className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-muted hover:text-foreground",children:(0,d.jsx)(h.A,{className:"size-3.5"})})]})]}),(0,d.jsx)("div",{ref:x,className:"flex flex-1 flex-col min-h-0 overflow-hidden",children:(()=>{if(j)return(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,d.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,d.jsx)(i.A,{className:"size-6 animate-spin text-muted-foreground"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:"Parsing document…"})]})});if(k)return(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center p-6",children:(0,d.jsxs)("div",{className:"flex flex-col items-center gap-2 text-center",children:[(0,d.jsx)(aU.A,{className:"size-8 text-muted-foreground/40"}),(0,d.jsx)("p",{className:"text-sm text-destructive",children:k})]})});if(!a)return null;switch(c){case"pdf":return f&&g?(0,d.jsxs)("div",{className:"flex flex-1 flex-col overflow-hidden",children:[(0,d.jsx)("div",{className:"flex-1 overflow-auto bg-muted/30 p-4",children:(0,d.jsx)("div",{style:{transform:`scale(${t/100})`,transformOrigin:"top center"},className:"transition-transform duration-200",children:(0,d.jsx)("object",{data:`data:${g};base64,${f}#page=${r+1}`,type:"application/pdf",className:"mx-auto w-full rounded-lg border border-border/40",style:{height:"80vh",minHeight:"500px"},children:A()},`pdf-view-${n}`)})}),a?.fields&&a.fields.length>0&&(0,d.jsxs)("div",{className:"border-t border-border/40 bg-card",children:[(0,d.jsxs)("div",{className:"px-4 py-2 text-xs font-medium text-muted-foreground flex items-center gap-2",children:[(0,d.jsx)(aU.A,{className:"size-3"}),"Form Fields (",a.fields.length,")"]}),(0,d.jsx)("div",{className:"max-h-50 overflow-y-auto px-4 pb-3 space-y-2 [&::-webkit-scrollbar]:hidden",children:a.fields.map(a=>(0,d.jsx)(ce,{field:a,isFilling:l.has(a.id),isUpdated:m.has(a.id),onEdit:b=>{q([{fieldId:a.id,value:b,type:"fill"}])}},a.id))})]})]}):A();case"docx":let b=z?.html;return(0,d.jsxs)("div",{className:"flex flex-1 flex-col overflow-hidden",children:[(0,d.jsx)("div",{ref:x,className:"flex-1 overflow-auto p-6 bg-white dark:bg-card",style:{transform:`scale(${t/100})`,transformOrigin:"top left"},children:b?(0,d.jsx)("div",{className:"docx-content prose prose-sm dark:prose-invert max-w-none",dangerouslySetInnerHTML:{__html:b.replace(/<script[^>]*>[\s\S]*?<\/script>/gi,"").replace(/<style[^>]*>[\s\S]*?<\/style>/gi,"").replace(/on\w+="[^"]*"/gi,"").replace(/on\w+='[^']*'/gi,"")}}):A()}),a?.fields&&a.fields.length>0&&(0,d.jsxs)("div",{className:"border-t border-border/40 bg-card",children:[(0,d.jsxs)("div",{className:"px-4 py-2 text-xs font-medium text-muted-foreground flex items-center gap-2",children:[(0,d.jsx)(aU.A,{className:"size-3"}),"Detected Fields (",a.fields.length,")"]}),(0,d.jsx)("div",{className:"max-h-50 overflow-y-auto px-4 pb-3 space-y-2 [&::-webkit-scrollbar]:hidden",children:a.fields.map(a=>(0,d.jsx)(ce,{field:a,isFilling:l.has(a.id),isUpdated:m.has(a.id),onEdit:b=>{q([{fieldId:a.id,value:b,type:"fill"}])}},a.id))})]})]});case"pptx":return a?.pages?.length?(0,d.jsxs)("div",{className:"flex flex-1 flex-col overflow-hidden",children:[(0,d.jsx)("div",{className:"flex-1 overflow-auto p-6 bg-muted/30",children:(0,d.jsx)(ca.N,{mode:"wait",children:(0,d.jsxs)(a9.P.div,{initial:{opacity:0,x:20},animate:{opacity:1,x:0},exit:{opacity:0,x:-20},transition:{duration:.2},className:"mx-auto max-w-2xl rounded-xl border border-border bg-white dark:bg-card p-8 35",style:{aspectRatio:"16/9",transform:`scale(${t/100})`,transformOrigin:"top center"},children:[(0,d.jsxs)("div",{className:"text-sm text-muted-foreground mb-2",children:["Slide ",r+1," of ",y]}),(0,d.jsx)("div",{className:"whitespace-pre-wrap text-sm leading-relaxed text-foreground",children:z?.text||"Empty slide"})]},r)})}),y>1&&(0,d.jsx)("div",{className:"border-t border-border/40 bg-card px-4 py-2",children:(0,d.jsx)("div",{className:"flex gap-2 overflow-x-auto [&::-webkit-scrollbar]:hidden",children:a.pages.map((a,b)=>(0,d.jsxs)("button",{type:"button",onClick:()=>s(b),className:(0,F.cn)("shrink-0 rounded-lg border px-3 py-1.5 text-[10px] transition",b===r?"border-primary bg-primary/5 text-primary font-medium":"border-border text-muted-foreground hover:bg-muted"),children:["Slide ",b+1]},b))})})]}):A();case"txt":let e;return e=z?.text||a?.rawText||"",(0,d.jsxs)("div",{className:"flex flex-1 flex-col overflow-hidden",children:[(0,d.jsx)("div",{className:"flex-1 overflow-auto p-4 bg-card",children:(0,d.jsx)("pre",{className:"whitespace-pre-wrap text-sm leading-relaxed text-foreground font-mono",style:{transform:`scale(${t/100})`,transformOrigin:"top left"},children:e})}),a?.fields&&a.fields.length>0&&(0,d.jsxs)("div",{className:"border-t border-border/40 bg-card",children:[(0,d.jsxs)("div",{className:"px-4 py-2 text-xs font-medium text-muted-foreground flex items-center gap-2",children:[(0,d.jsx)(aU.A,{className:"size-3"}),"Detected Fields (",a.fields.length,")"]}),(0,d.jsx)("div",{className:"max-h-50 overflow-y-auto px-4 pb-3 space-y-2 [&::-webkit-scrollbar]:hidden",children:a.fields.map(a=>(0,d.jsx)(ce,{field:a,isFilling:l.has(a.id),isUpdated:m.has(a.id),onEdit:b=>{q([{fieldId:a.id,value:b,type:"fill"}])}},a.id))})]})]});default:return A()}})()})]})}function cg({children:a}){let{isCanvasOpen:b,parsedDocument:c}=a6(),[f,g]=(0,e.useState)(50),h=(0,e.useRef)(null),i=(0,e.useRef)(!1),j=(0,e.useCallback)(a=>{a.preventDefault(),i.current=!0,document.body.style.cursor="col-resize",document.body.style.userSelect="none";let b=a=>{if(!i.current||!h.current)return;let b=h.current.getBoundingClientRect();g(Math.max(25,Math.min(75,(a.clientX-b.left)/b.width*100)))},c=()=>{i.current=!1,document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",b),window.removeEventListener("mouseup",c)};window.addEventListener("mousemove",b),window.addEventListener("mouseup",c)},[]);return(0,d.jsxs)("div",{ref:h,className:"flex h-full w-full overflow-hidden",children:[(0,d.jsx)(a9.P.div,{initial:{width:"100%"},animate:{width:b?`${f}%`:"100%"},transition:{type:"spring",stiffness:300,damping:30},className:"flex h-full min-w-0 flex-col overflow-hidden",children:a}),b&&(0,d.jsx)("div",{role:"separator","aria-orientation":"vertical",onMouseDown:j,className:(0,F.cn)("relative z-10 flex w-0.75 shrink-0 cursor-col-resize items-center justify-center","bg-border/40 transition-colors hover:bg-primary/30 active:bg-primary/50","group"),children:(0,d.jsx)("div",{className:"absolute h-8 w-1 rounded-full bg-border group-hover:bg-primary/40 transition-colors"})}),(0,d.jsx)(ca.N,{mode:"wait",children:b&&(0,d.jsx)(a9.P.div,{initial:{width:0,opacity:0,scale:.95},animate:{width:`${100-f}%`,opacity:1,scale:1},exit:{width:0,opacity:0,scale:.95},transition:{type:"spring",stiffness:300,damping:30},className:"flex h-full min-w-0 flex-col overflow-hidden origin-top-left",children:(0,d.jsx)(cf,{})},"canvas-panel")})]})}let ch=["application/pdf","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","text/plain"];function ci({onFileSelected:a,className:b,id:c}){let f=(0,e.useRef)(null),{openCanvas:g,isLoading:h}=a6(),i=(0,e.useCallback)(async b=>{let c=b.target.files?.[0];if(!c)return;let d=c.name.substring(c.name.lastIndexOf(".")).toLowerCase();(ch.includes(c.type)||[".pdf",".docx",".pptx",".txt"].includes(d))&&(await g(c),a?.(c),f.current&&(f.current.value=""))},[g,a]);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("input",{id:c,ref:f,type:"file",accept:".pdf,.docx,.pptx,.txt",onChange:i,className:"hidden","aria-label":"Attach document"}),(0,d.jsxs)(E.m_,{children:[(0,d.jsx)(E.k$,{render:(0,d.jsx)("button",{type:"button",onClick:()=>f.current?.click(),disabled:h,className:(0,F.cn)("flex h-9 w-9 shrink-0 items-center justify-center rounded-xl text-muted-foreground transition","hover:bg-secondary hover:text-foreground","disabled:opacity-40 disabled:cursor-not-allowed",b),children:(0,d.jsx)(j.A,{className:"size-4.5"})})}),(0,d.jsx)(E.ZI,{children:"Attach document (PDF, Word, PPT, TXT)"})]})]})}var cj=c(42489),ck=c(94082);let cl=a=>fetch(a).then(a=>a.json());function cm(a){if(!a||"object"!=typeof a)return a;if("json"===a.type&&"value"in a)return{...a,value:cm(a.value)};let b={...a};return Array.isArray(b.rows)&&(b.rows=b.rows.slice(0,50)),Array.isArray(b.data)&&(b.data=b.data.slice(0,100)),"string"==typeof b.stdout&&(b.stdout=b.stdout.slice(0,4e3)),"string"==typeof b.stderr&&(b.stderr=b.stderr.slice(0,1e3)),"string"==typeof b.fileBase64&&delete b.fileBase64,Array.isArray(b.pages)&&delete b.pages,b}function cn({file:a,onClick:b,onRemove:c}){let e,f,g=(e=a.name.split(".").pop()?.toLowerCase(),f=a.type,["csv","xls","xlsx"].includes(e||"")?"/icons/excel.png":["doc","docx"].includes(e||"")?"/icons/word.png":["md","markdown"].includes(e||"")?"/icons/markdown.png":["pdf"].includes(e||"")?"/icons/pdf.png":f.startsWith("video/")?"/icons/video.png":f.startsWith("audio/")?"/icons/audio.png":(f.startsWith("image/"),"/icons/image.png"));return(0,d.jsxs)("div",{className:"relative mt-2 group flex items-center gap-2 bg-muted/50 border border-border/60 rounded-xl h-12 px-3 p-1 shrink-0 cursor-pointer hover:bg-muted/80 transition-colors",onClick:b,children:[(0,d.jsx)("div",{className:"size-7 shrink-0 rounded-md overflow-hidden bg-background border border-border/90 flex items-center justify-center p-1",children:(0,d.jsx)("img",{src:g,alt:a.name,className:"w-full h-full object-contain"})}),(0,d.jsxs)("div",{className:"flex flex-col justify-center max-w-30",children:[(0,d.jsx)("span",{className:"text-xs font-medium truncate text-foreground",children:a.name}),(0,d.jsxs)("span",{className:"text-[10px] text-muted-foreground",children:[(a.size/1024).toFixed(0)," KB"]})]}),(0,d.jsx)("button",{type:"button",onClick:a=>{a.preventDefault(),a.stopPropagation(),c()},className:"absolute cursor-pointer -top-3 -right-2 flex h-5 w-5 items-center justify-center rounded-full bg-background border border-border text-muted-foreground hover:bg-destructive hover:border-destructive hover:text-white transition opacity-0 group-hover:opacity-100",children:(0,d.jsx)(h.A,{className:"size-3"})})]})}function co({chatId:a}={}){return(0,d.jsx)(a7,{children:(0,d.jsx)(cg,{children:(0,d.jsx)(cp,{chatId:a})})})}function cp({chatId:a}){let b,c,{activeProject:y}=(0,bZ.B)(),{sessionId:z,parsedDocument:A,openCanvas:B,isLoading:C}=a6(),D={sessionId:z,fields:A?.fields||[]},G=y?.id??null,H=(0,e.useRef)(0),[I,J]=(0,e.useState)(!1),K=G?`/api/chat/status?projectId=${encodeURIComponent(G)}`:"/api/chat/status",{data:L,isLoading:M}=(0,w.u)(K,cl,{refreshInterval:1e4}),{data:N,mutate:O}=(0,w.u)("/api/config",cl),P=(0,b5.useRouter)(),{selectedModel:Q,setSelectedModel:R}=b8(),[S,T]=(0,e.useState)(!1),[U,V]=(0,e.useState)(""),[W,X]=(0,e.useState)(""),[Y,Z]=(0,e.useState)([]),[$,_]=(0,e.useState)(null),[aa,ab]=(0,e.useState)([]),ac=(0,e.useRef)(null),ad=(0,e.useRef)(null),[ae,af]=(0,e.useState)(a||""),[ag,ah]=(0,e.useState)([]),[ai,aj]=(0,e.useState)(!1),[ak,al]=(0,e.useState)(""),[am,an]=(0,e.useState)(!!a),ao=(0,e.useMemo)(()=>({projectId:G,chatModelId:Q||void 0,docSessionId:D.sessionId,docFields:D.fields}),[G,Q,D.sessionId,JSON.stringify(D.fields)]),ap=(0,e.useRef)(ao),aq=(0,e.useMemo)(()=>new g.rLN({api:"/api/chat",headers:{"Content-Type":"application/json"},prepareSendMessagesRequest:({messages:a,id:b,body:c})=>({body:{messages:a.map((b,c)=>{if(c===a.length-1)return b;let{toolInvocations:d,experimental_attachments:e,parts:f,...g}=b,h=Array.isArray(d)?d.map(a=>"result"===a.state&&a.result?{...a,result:cm(a.result)}:a):d,i=Array.isArray(f)?f.map(a=>{if("tool-invocation"===a.type){let b=a.toolInvocation;if(b?.state==="result"&&b.result)return{...a,toolInvocation:{...b,result:cm(b.result)}}}return a.type?.startsWith("tool-")?{...a,...void 0!==a.output?{output:cm(a.output)}:{},...void 0!==a.result?{result:cm(a.result)}:{}}:a}):f,j=Array.isArray(e)?e.map(a=>({name:a?.name,contentType:a?.contentType,size:a?.size})):e;return{...g,...i?{parts:i}:{},...h?{toolInvocations:h}:{},...j?{experimental_attachments:j}:{}}}),id:b,...ap.current,...c}})}),[]),{messages:ar,sendMessage:as,status:at,setMessages:au,error:av,regenerate:aw,addToolResult:ax}=(0,f.Y_)({transport:aq}),ay=(0,e.useRef)(null),az=(0,e.useRef)(!0),aA="submitted"===at||"streaming"===at,aB=(0,e.useCallback)(()=>{let a=ay.current;a&&(az.current=a.scrollHeight-a.scrollTop-a.clientHeight<80)},[]);(0,e.useRef)(null);let aC=(0,e.useRef)(ar);aC.current=ar;let aD=(0,e.useRef)({}),aE=(0,e.useCallback)((a,b)=>{let c=aC.current,d=c.find(b=>b.id===a),e=d?bO(d):void 0,f=function(a,b){let c=a.findIndex(a=>a.id===b&&"assistant"===a.role);if(c<0)return;let d=a[c],e=bQ(d);if(!e)return;let f=c-1;for(;f>=0&&"user"!==a[f].role;)f-=1;if(f<0)return;let g=bQ(a[f]);if(!g)return;let h=function(a){let b=bN(a.metadata).groundedAnswerCache;if(!b||"object"!=typeof b||Array.isArray(b))return;let c=b.sourceScopeFingerprint;return"string"==typeof c&&c?c:void 0}(d),i=[...(Array.isArray(d.parts)?d.parts:[]).flatMap(a=>a?.type==="tool-invocation"?[{name:a.toolInvocation?.toolName,output:a.toolInvocation?.result}]:"string"==typeof a?.type&&a.type.startsWith("tool-")?[{name:a.type.slice(5),output:a.output??a.result}]:a?.type==="dynamic-tool"?[{name:a.toolName,output:a.output??a.result}]:[]),...(Array.isArray(d.toolInvocations)?d.toolInvocations:[]).map(a=>({name:a?.toolName,output:a?.result}))];if(i.some(a=>a.name&&"searchKnowledgeBase"!==a.name))return;if(h&&0===i.length)return{question:g,answer:e,sourceScopeFingerprint:h};let j=i.filter(a=>"searchKnowledgeBase"===a.name).map(a=>(function a(b){if("string"==typeof b)try{return a(JSON.parse(b))}catch{return b}return b&&"object"==typeof b&&"json"===b.type&&"value"in b?a(b.value):b})(a.output)).find(a=>Array.isArray(a?.hits)&&a.hits.length>0);if(j&&!j.videoEvidence&&!j.hits.some(a=>a?.mediaAssetId||a?.metadata?.mediaAssetId))return{question:g,answer:e,..."string"==typeof j.sourceScopeFingerprint?{sourceScopeFingerprint:j.sourceScopeFingerprint}:{}}}(c,a),g=bP(c,a,b);aC.current=g,au(g);let h=ae||crypto.randomUUID();if(ae||(af(h),"/chat"===window.location.pathname&&window.history.replaceState(null,"",`/chat/${h}`)),(0,bd.hZ)(`chat_messages_${h}`,g).catch(a=>{console.error("Failed to save answer feedback",a),bc.oR.error("Could not save this feedback. Please try again.")}),!f){"liked"===b&&bc.oR.success("Feedback saved. This answer type will use fresh tool results when repeated.");return}let i=(aD.current[a]??0)+1;aD.current[a]=i,fetch("/api/chat/feedback",{method:"POST",headers:{"Content-Type":"application/json"},keepalive:!0,body:JSON.stringify({projectId:G,feedback:b,...f})}).then(async a=>{let c=await a.json().catch(()=>null);if(!a.ok)throw Error(c?.error||"Could not update the answer cache.");"liked"===b&&c?.cached?bc.oR.success("Answer saved to Larkup cache"):"disliked"===b&&c?.removed&&bc.oR.success("Cached answer removed"),(0,x.k)("/api/system/cache")}).catch(b=>{if(aD.current[a]!==i)return;let c=bP(aC.current,a,e);aC.current=c,au(c),(0,bd.hZ)(`chat_messages_${h}`,c),bc.oR.error(b instanceof Error?b.message:"Could not update the answer cache.")})},[ae,G,au]),aF=(0,e.useMemo)(()=>{let a=L?.availableModels??[],b=U.toLowerCase().trim(),c=b?a.filter(a=>a.label.toLowerCase().includes(b)||a.id.toLowerCase().includes(b)||a.provider.toLowerCase().includes(b)):a,d=new Map;for(let a of c){let b=d.get(a.provider)??[];b.push(a),d.set(a.provider,b)}return d},[L?.availableModels,U]),aG=(0,e.useMemo)(()=>{let a=[...ag].sort((a,b)=>b.updatedAt-a.updatedAt),b=ak.toLowerCase().trim();return b?a.filter(a=>a.title.toLowerCase().includes(b)):a},[ag,ak]);function aH(a,b){ab(c=>{let d=c.findIndex(b=>b.id===a),e=d+b;if(-1===d||e<0||e>=c.length)return c;let f=[...c];return[f[d],f[e]]=[f[e],f[d]],f})}function aI(a){a&&a.preventDefault();let b=W.trim();if(!b&&0===Y.length)return;if(aA||C){ab(a=>[...a,{id:crypto.randomUUID(),text:b,files:Y.length>0?Y:void 0}]),X(""),Z([]);return}az.current=!0;let c=new DataTransfer;Y.forEach(a=>c.items.add(a));let d=c.files.length>0?c.files:void 0;if(d){let a=Array.from(d).find(a=>"application/pdf"===a.type||a.name.toLowerCase().endsWith(".pdf")||a.name.toLowerCase().endsWith(".doc")||a.name.toLowerCase().endsWith(".docx"));if(a&&!D.sessionId){bc.oR.info("Preparing document..."),_({text:b,files:d}),B(a,{background:!1}).catch(a=>{bc.oR.error(a.message||"Failed to open document"),_(null),as({text:b,files:d})}),X(""),Z([]);return}as({text:b,files:d})}else{let a=null;if(!D.sessionId)for(let b=ar.length-1;b>=0;b--){let c=ar[b];if(c.experimental_attachments){let b=c.experimental_attachments.filter(a=>a.contentType?.includes("pdf")||a.name?.toLowerCase().endsWith(".pdf")||a.name?.toLowerCase().endsWith(".doc")||a.name?.toLowerCase().endsWith(".docx"));if(b.length>0){a=b[b.length-1];break}}}if(a){bc.oR.info("Preparing document...");let c=a.url;c.startsWith("http")||c.startsWith("data:")||(c=`data:${a.contentType||"application/pdf"};base64,${c}`),_({text:b}),fetch(c).then(a=>a.blob()).then(c=>{B(new File([c],a.name||"document.pdf",{type:a.contentType||"application/pdf"}),{background:!1}).catch(a=>{bc.oR.error(a.message||"Failed to open document"),_(null),as({text:b})})}).catch(a=>{console.error("Auto-open failed",a),_(null),as({text:b})}),X(""),Z([]);return}as({text:b})}X(""),Z([])}async function aJ(){let a=N?.config;if(!a)return;let b=a.webSearchProvider||"tavily",c={tavily:a.tavilyApiKey,serper:a.serperApiKey,google:a.serperApiKey,brave:a.braveApiKey,bing:a.bingApiKey,exa:a.exaApiKey};if("local"!==b&&!c[b]){bc.oR.error("Web Search API key is missing. Please configure it in Settings."),P.push("/settings?section=search-web");return}let d=!a.webSearchEnabled;try{await fetch("/api/config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({...a,webSearchEnabled:d})}),await O(),bc.oR.success(`Web Search ${d?"enabled":"disabled"}`)}catch(a){bc.oR.error(a.message||"Failed to update web search setting")}}async function aK(a){let b=await (0,bd.Jt)(`chat_messages_${a}`);b&&(au(b),af(a),aj(!1),window.history.pushState(null,"",`/chat/${a}`))}async function aL(a){await (0,bd.yH)(`chat_messages_${a}`),ah(b=>{let c=b.filter(b=>b.id!==a);return(0,bd.hZ)("chat_sessions",c),c}),ae===a&&(au([]),X(""),af(""),window.history.pushState(null,"","/chat"))}async function aM(){try{let a=(await (0,bd.HP)()).filter(a=>"string"==typeof a&&("chat_sessions"===a||a.startsWith("chat_messages_")));await Promise.all(a.map(a=>(0,bd.yH)(a))),ah([]),al(""),au([]),ab([]),af(""),window.history.pushState(null,"","/chat"),bc.oR.success("Chat history cleared")}catch(a){console.error("Failed to clear chat history",a),bc.oR.error("Could not clear chat history. Please try again.")}}let aN=(0,e.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),H.current++,a.dataTransfer.items&&a.dataTransfer.items.length>0&&Array.from(a.dataTransfer.items).some(a=>"file"===a.kind)&&J(!0)},[]),aO=(0,e.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),H.current--,0===H.current&&J(!1)},[]),aP=(0,e.useCallback)(a=>{a.preventDefault(),a.stopPropagation()},[]),aQ=(0,e.useCallback)(async a=>{a.preventDefault(),a.stopPropagation(),J(!1),H.current=0;let b=a.dataTransfer.files;if(!b||0===b.length)return;let c=Array.from(b);if(0===c.length)return void bc.oR.error("No valid files dropped.");Z(a=>[...a,...c]);let d=c.find(a=>"application/pdf"===a.type||a.name.toLowerCase().endsWith(".pdf"));d&&B(d,{background:!1}).catch(a=>{bc.oR.error(a.message||"Failed to auto-open document")})},[B]),aR=0===ar.length&&!am,aS=L?.ready??!1,aT=L?.availableModels?.find(a=>a.id===Q);return M?(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,d.jsx)(i.A,{className:"size-6 animate-spin text-muted-foreground"})}):(0,d.jsxs)("div",{className:(0,F.cn)("flex h-full w-full flex-1 flex-col overflow-hidden relative",I&&"bg-primary/5"),onDragEnter:aN,onDragLeave:aO,onDragOver:aP,onDrop:aQ,children:[I&&(0,d.jsxs)("div",{className:"absolute inset-0 z-100 flex flex-col items-center justify-center bg-background/80 backdrop-blur-sm border-2 border-dashed border-primary/50 m-4 rounded-3xl pointer-events-none",children:[(0,d.jsx)("div",{className:"flex h-20 w-20 items-center justify-center rounded-full bg-primary/10 text-primary mb-4",children:(0,d.jsx)(j.A,{className:"size-10"})}),(0,d.jsx)("h2",{className:"text-xl font-semibold tracking-tight text-foreground",children:"Drop document to attach"}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"PDF, Word, PPT, TXT"})]}),(0,d.jsxs)("div",{className:"relative z-40 flex items-center justify-between px-4 py-2",children:[(0,d.jsx)("div",{className:"flex items-center gap-3"}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[L?.availableModels&&L.availableModels.length>0&&(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>T(a=>!a),className:"flex w-75 justify-between items-center gap-1.5 rounded-lg border border-border bg-white dark:bg-card px-3 py-1.5 text-xs text-foreground transition hover:bg-muted",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 truncate",children:[aT&&(0,d.jsx)(b4.rb,{src:(0,b4.D_)(aT.provider).iconSrc,alt:aT.provider,pillBg:(0,b4.D_)(aT.provider).pillBg,size:16}),(0,d.jsx)("span",{className:"truncate",children:aT?.label||Q||"Select model"})]}),(0,d.jsx)(k.A,{className:(0,F.cn)("size-3 shrink-0 text-muted-foreground transition-transform",S&&"rotate-180")})]}),S&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"fixed inset-0 z-40",onClick:()=>T(!1)}),(0,d.jsxs)("div",{className:"absolute right-0 top-full z-50 mt-1 w-75 rounded-lg border border-border bg-card ",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 border-b border-border px-3 py-2",children:[(0,d.jsx)(l.A,{className:"size-3.5 shrink-0 text-muted-foreground"}),(0,d.jsx)("input",{ref:ac,type:"text",value:U,onChange:a=>V(a.target.value),placeholder:"Search models...",className:"flex-1 bg-transparent text-xs text-foreground outline-none placeholder:text-muted-foreground"}),U&&(0,d.jsx)("button",{type:"button",onClick:()=>V(""),className:"text-muted-foreground hover:text-foreground",children:(0,d.jsx)(h.A,{className:"size-3"})})]}),(0,d.jsx)("div",{className:"max-h-72 overflow-y-auto p-1 [&::-webkit-scrollbar]:hidden",children:0===aF.size?(0,d.jsx)("div",{className:"px-3 py-4 text-center text-xs text-muted-foreground",children:"No models found"}):Array.from(aF.entries()).map(([a,b])=>{let c=(0,b4.D_)(a);return(0,d.jsxs)("div",{className:"mb-1",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 text-xs font-semibold uppercase tracking-wider text-foreground/70",children:[c.label,(0,d.jsxs)("span",{className:"text-[10px] text-muted-foreground/50",children:["(",b.length,")"]})]}),b.map(a=>(0,d.jsxs)("button",{type:"button",onClick:()=>{R(a.id),T(!1)},className:(0,F.cn)("flex w-full items-center justify-between rounded-md px-3 py-1.5 text-left text-xs transition",a.id===Q?"bg-primary/10 text-primary font-medium":"text-foreground hover:bg-muted"),children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 truncate",children:[(0,d.jsx)(b4.rb,{src:c.iconSrc,alt:c.label,pillBg:c.pillBg,size:14}),(0,d.jsx)("span",{className:"truncate",children:a.label})]}),(0,d.jsx)("span",{className:"flex items-center gap-1.5 shrink-0 ml-2",children:a.context_window&&(0,d.jsx)("span",{className:"text-[9px] font-mono text-muted-foreground/60",children:a.context_window>=1e6?`${(a.context_window/1e6).toFixed(0)}M`:`${(a.context_window/1e3).toFixed(0)}K`})})]},a.id))]},a)})})]})]})]}),(0,d.jsx)("div",{className:"h-4 w-px bg-border mx-1"}),(0,d.jsxs)(E.Bc,{delay:50,children:[(0,d.jsxs)(b0.cj,{open:ai,onOpenChange:a=>{aj(a),a||al("")},children:[(0,d.jsxs)(E.m_,{children:[(0,d.jsx)(E.k$,{render:(0,d.jsx)(b0.CG,{render:(0,d.jsx)("button",{type:"button","aria-label":"Chat history",className:"flex h-8 w-8 items-center justify-center rounded-lg text-muted-foreground transition hover:bg-secondary hover:text-foreground",children:(0,d.jsx)(m.A,{className:"h-4 w-4"})})})}),(0,d.jsx)(E.ZI,{children:"Chat History"})]}),(0,d.jsxs)(b0.h,{side:"left",showCloseButton:!1,className:"w-75 sm:w-87.5 p-0 flex flex-col",children:[(0,d.jsxs)(b0.Fm,{className:"p-4 pb-3 border-b",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,d.jsx)(b0.qp,{className:"text-sm font-semibold",children:"Chat History"}),(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[(0,d.jsxs)(b9.Lt,{children:[(0,d.jsxs)(E.m_,{children:[(0,d.jsx)(E.k$,{render:(0,d.jsx)(b9.tv,{render:(0,d.jsx)("button",{type:"button","aria-label":"Clear chat history",disabled:0===ag.length,className:"flex size-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-destructive/10 hover:text-destructive disabled:pointer-events-none disabled:opacity-40",children:(0,d.jsx)(n.A,{className:"size-3.5"})})})}),(0,d.jsx)(E.ZI,{children:"Clear all chat history"})]}),(0,d.jsxs)(b9.EO,{children:[(0,d.jsxs)(b9.wd,{children:[(0,d.jsx)(b9.r7,{children:"Delete all chat history?"}),(0,d.jsx)(b9.$v,{children:"This will permanently delete all saved chats on this device. This action cannot be undone."})]}),(0,d.jsxs)(b9.ck,{children:[(0,d.jsx)(b9.Zr,{children:"Cancel"}),(0,d.jsx)(b9.Rx,{onClick:()=>void aM(),className:"bg-destructive text-white hover:bg-destructive/90",children:"Delete all"})]})]})]}),(0,d.jsx)(b0.kN,{render:(0,d.jsx)("button",{type:"button","aria-label":"Close chat history",className:"flex size-7 items-center justify-center rounded-md text-muted-foreground transition hover:bg-secondary hover:text-foreground",children:(0,d.jsx)(h.A,{className:"size-3.5"})})})]})]}),(0,d.jsxs)("div",{className:"mt-3 flex items-center gap-2 rounded-lg border border-border bg-muted/50 px-2.5 py-1.5",children:[(0,d.jsx)(l.A,{className:"size-3.5 shrink-0 text-muted-foreground"}),(0,d.jsx)("input",{type:"text",value:ak,onChange:a=>al(a.target.value),placeholder:"Search chats...",className:"flex-1 bg-transparent text-xs text-foreground outline-none placeholder:text-muted-foreground"}),ak&&(0,d.jsx)("button",{type:"button",onClick:()=>al(""),className:"text-muted-foreground hover:text-foreground",children:(0,d.jsx)(h.A,{className:"size-3"})})]})]}),(0,d.jsx)("div",{className:"flex-1 overflow-y-auto p-2",children:0===ag.length?(0,d.jsx)("div",{className:"p-4 text-center text-xs text-muted-foreground",children:"No chat history"}):0===aG.length?(0,d.jsxs)("div",{className:"p-4 text-center text-xs text-muted-foreground",children:['No chats match "',ak,'"']}):aG.map(a=>(0,d.jsxs)("div",{onClick:()=>aK(a.id),className:(0,F.cn)("group flex items-center justify-between rounded-md px-3 py-2 text-sm cursor-pointer transition hover:bg-muted mb-1",ae===a.id&&"bg-muted font-medium"),children:[(0,d.jsx)("div",{className:"truncate pr-4 flex-1 text-xs",children:a.title}),(0,d.jsxs)(b9.Lt,{children:[(0,d.jsx)(b9.tv,{render:(0,d.jsx)("button",{onClick:a=>a.stopPropagation(),className:"text-muted-foreground opacity-0 transition group-hover:opacity-100 hover:text-destructive",children:(0,d.jsx)(n.A,{className:"size-3.5"})})}),(0,d.jsxs)(b9.EO,{onClick:a=>a.stopPropagation(),children:[(0,d.jsxs)(b9.wd,{children:[(0,d.jsx)(b9.r7,{children:"Delete Chat"}),(0,d.jsx)(b9.$v,{children:"Are you sure you want to delete this chat? This action cannot be undone."})]}),(0,d.jsxs)(b9.ck,{children:[(0,d.jsx)(b9.Zr,{children:"Cancel"}),(0,d.jsx)(b9.Rx,{onClick:()=>aL(a.id),className:"bg-destructive text-white hover:bg-destructive/90",children:"Delete"})]})]})]})]},a.id))})]})]}),(0,d.jsxs)(E.m_,{children:[(0,d.jsx)(E.k$,{render:(0,d.jsx)("button",{type:"button",onClick:function(){au([]),X(""),ab([]),af(crypto.randomUUID()),window.history.pushState(null,"","/chat")},className:"flex h-8 w-8 items-center justify-center rounded-lg text-muted-foreground transition hover:bg-secondary hover:text-foreground",children:(0,d.jsx)(o.A,{className:"h-4 w-4"})})}),(0,d.jsx)(E.ZI,{children:"New Chat"})]}),(0,d.jsx)(b3,{})]})]})]}),(0,d.jsx)("div",{ref:ay,onScroll:aB,className:"min-h-0 flex-1 overflow-y-auto [&::-webkit-scrollbar]:hidden",children:(0,d.jsx)("div",{className:"mx-auto w-full max-w-3xl px-4 py-6 sm:px-6",children:aS?aR?(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 pt-[18vh] text-center",children:[(0,d.jsx)("div",{className:"flex h-14 w-14 items-center justify-center rounded-2xl bg-white/90 border border-border/60 text-primary ",children:(0,d.jsx)("img",{src:"/logo.png",alt:"Logo",className:"size-9"})}),(0,d.jsx)("h1",{className:"text-xl font-semibold tracking-tight text-foreground text-balance",children:"Chat with your knowledge base"}),(0,d.jsx)("p",{className:"max-w-md text-sm leading-relaxed text-muted-foreground text-pretty",children:"Ask questions and get AI-powered answers grounded in your indexed documents."})]}):(0,d.jsxs)("div",{className:"flex flex-col gap-6",children:[ar.map((a,b)=>(0,d.jsx)(bR,{message:a,isLast:b===ar.length-1,isStreaming:"streaming"===at,addToolResult:ax,serverId:G,autoOpenSupportingClip:ar[b]?.role==="assistant"&&b===ar.findIndex(a=>"assistant"===a.role),regenerate:aw,isBusy:aA,onFeedback:aE},a.id)),"submitted"===at||am?(0,d.jsx)("div",{className:"flex items-center gap-2",children:(0,d.jsx)("div",{className:"size-7 bg-white border border-border rounded-full flex items-center justify-center p-1 animate-pulse",children:(0,d.jsx)("img",{src:"/logo.png",alt:"logo",className:"size-4 animate-spin"})})}):null,av?(c=b=av.message||"Something went wrong while generating a response.",b.includes("rate-limited")||b.includes("rate_limit")||b.includes("429")?c="Vercel AI Gateway could not serve this model because it is rate-limited. We tried compatible backups. Try again shortly, choose another model, or add AI Gateway credits / a provider key in Settings.":b.includes("unavailable tool")||b.includes("NoSuchTool")?c="The model tried an unavailable action. Please try your question again.":(b.length>200||b.includes("http://")||b.includes("https://"))&&(c="Something went wrong while generating a response. Please try again."),(0,d.jsxs)("div",{className:"flex items-start gap-3 rounded-xl border border-destructive/30 bg-destructive/5 px-4 py-3",children:[(0,d.jsx)(q.A,{className:"mt-0.5 h-4 w-4 shrink-0 text-destructive"}),(0,d.jsxs)("div",{className:"flex-1",children:[(0,d.jsx)("p",{className:"text-sm text-foreground",children:c}),(0,d.jsxs)("button",{type:"button",onClick:()=>aw(),className:"mt-2 inline-flex items-center gap-1.5 rounded-lg border border-border bg-card px-2.5 py-1.5 text-xs font-medium text-foreground transition hover:bg-secondary",children:[(0,d.jsx)(r.A,{className:"h-3.5 w-3.5"}),"Try again"]})]})]})):null]}):(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 pt-[18vh] text-center",children:[(0,d.jsx)("div",{className:"flex h-14 w-14 items-center justify-center rounded-2xl bg-white border text-muted-foreground",children:(0,d.jsx)(p.A,{className:"size-7"})}),(0,d.jsx)("h1",{className:"text-xl font-semibold tracking-tight text-foreground",children:"Setup Required"}),(0,d.jsx)("p",{className:"max-w-md text-sm leading-relaxed text-muted-foreground mb-2",children:L?.blockers?.join(" ")||"Set an API key in Settings to start chatting."}),(0,d.jsx)("a",{href:L?.blockers?.some(a=>a.includes("API Key")||a.includes("Settings"))?"/settings?ai-models":"/settings",className:"inline-flex h-9 items-center justify-center rounded-lg bg-primary px-4 py-2 text-sm font-medium text-primary-foreground shadow transition-colors hover:bg-primary/90 disabled:pointer-events-none disabled:opacity-50",children:"Go to Settings"})]})})}),aS&&(0,d.jsxs)("div",{className:"relative z-10 mt-auto px-4 pb-5 pt-3 sm:px-6",children:[aa.length>0&&(0,d.jsx)(bW,{items:aa,onRemove:function(a){ab(b=>b.filter(b=>b.id!==a))},onMoveUp:a=>aH(a,-1),onMoveDown:a=>aH(a,1),onEdit:function(a){let b=aa.find(b=>b.id===a);b&&(ab(b=>b.filter(b=>b.id!==a)),X(b.text),Z(b.files??[]),requestAnimationFrame(()=>ad.current?.focus()))}}),(0,d.jsx)("form",{onSubmit:aI,className:"mx-auto w-full max-w-3xl",children:(0,d.jsxs)("div",{className:"flex items-center gap-2 rounded-2xl border border-border bg-card p-2 transition focus-within:ring-0.5 focus-within:ring-ring/20",children:[(0,d.jsxs)(cj.rI,{children:[(0,d.jsx)(cj.ty,{render:(0,d.jsx)("button",{type:"button",className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-xl text-muted-foreground transition hover:bg-secondary hover:text-foreground mt-1",children:(0,d.jsx)(s.A,{className:"h-4.5 w-4.5"})})}),(0,d.jsxs)(cj.SQ,{side:"top",align:"start",className:"w-56 gap-1 flex flex-col",sideOffset:8,children:[(0,d.jsxs)(cj._2,{onClick:a=>{a.preventDefault();let b=document.createElement("input");b.type="file",b.multiple=!0,b.accept="*/*",b.onchange=async a=>{let b=a.target.files;if(!b||0===b.length)return;let c=Array.from(b);Z(a=>[...a,...c]);let d=c.find(a=>"application/pdf"===a.type||a.name.toLowerCase().endsWith(".pdf"));d&&B(d,{background:!1}).catch(a=>{bc.oR.error(a.message||"Failed to auto-open document")})},b.click()},className:"gap-2 cursor-pointer",children:[(0,d.jsx)(j.A,{className:"size-4"}),(0,d.jsx)("span",{children:"Attach Document"})]}),(0,d.jsxs)(cj._2,{onClick:a=>{a.preventDefault(),aJ()},className:"gap-2 justify-between cursor-pointer",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(t.A,{className:"size-4"}),(0,d.jsx)("span",{children:"Web Search"})]}),(0,d.jsx)(ck.d,{checked:N?.config?.webSearchEnabled||!1,className:"pointer-events-none"})]})]})]}),(0,d.jsx)("div",{className:"hidden",children:(0,d.jsx)(ci,{id:"chat-file-attachment"})}),(0,d.jsxs)("div",{className:"flex flex-col flex-1 gap-2",children:[Y.length>0&&(0,d.jsx)("div",{className:"flex w-full overflow-x-auto items-center gap-2 px-1 pt-1 pb-2 [&::-webkit-scrollbar]:h-1.5 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-border/60",children:Y.map((a,b)=>(0,d.jsx)(cn,{file:a,onClick:()=>{B(a,{background:!1}).catch(a=>{bc.oR.error(a.message||"Failed to open document")})},onRemove:()=>{Z(a=>a.filter((a,c)=>c!==b))}},`${a.name}-${b}`))}),(0,d.jsx)("textarea",{ref:ad,value:W,onChange:a=>X(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||(a.preventDefault(),aI(a))},onPaste:a=>{let b=a.clipboardData?.items;if(!b)return;let c=[];for(let a=0;a<b.length;a++)if("file"===b[a].kind){let d=b[a].getAsFile();d&&c.push(d)}if(c.length>0){Z(a=>[...a,...c]);let a=c.find(a=>"application/pdf"===a.type||a.name.toLowerCase().endsWith(".pdf"));a&&B(a,{background:!1}).catch(a=>{bc.oR.error(a.message||"Failed to auto-open pasted document")})}},rows:1,disabled:!aS,placeholder:"How can I help you…",className:"max-h-48 min-h-11 w-full resize-none overflow-y-auto bg-transparent px-2 py-2.5 text-[15px] leading-relaxed text-foreground outline-none placeholder:text-muted-foreground scrollbar-none [&::-webkit-scrollbar]:hidden disabled:opacity-50"})]}),(0,d.jsx)("button",{type:"submit",disabled:!W.trim()&&0===Y.length,title:aA||C?"Add to queue":"Send",className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-xl bg-primary text-primary-foreground transition hover:opacity-90 disabled:opacity-40",children:aA||C?(0,d.jsx)(u.A,{className:"h-4.5 w-4.5"}):(0,d.jsx)(v.A,{className:"h-4.5 w-4.5"})})]})})]})]})}}};