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
+ "use strict";exports.id=9319,exports.ids=[9319],exports.modules={4594:(a,b,c)=>{c.d(b,{i:()=>i});var d=c(21621),e=c(85739),f=c(32599),g=c(79603),h=c(32108);let i=d.forwardRef(function(a,b){let{keepMounted:c=!1,...d}=a;return(0,f.s)().useState("mounted")||c?(0,h.jsx)(g.n.Provider,{value:c,children:(0,h.jsx)(e.XF,{ref:b,...d})}):null})},32599:(a,b,c)=>{c.d(b,{r:()=>f,s:()=>g});var d=c(70647),e=c(21621);let f=e.createContext(void 0);function g(a){let b=e.useContext(f);if(void 0===b&&!a)throw Error((0,d.A)(47));return b}},42373:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(41781);let e={name:"refresh-cw",size:24,node:[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]};e.node;let f=(0,d.A)(e)},50136:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(41781);let e={name:"cable",size:24,node:[["path",{d:"M17 19a1 1 0 0 1-1-1v-2a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2a1 1 0 0 1-1 1z",key:"trhst0"}],["path",{d:"M17 21v-2",key:"ds4u3f"}],["path",{d:"M19 14V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V10",key:"1mo9zo"}],["path",{d:"M21 21v-2",key:"eo0ou"}],["path",{d:"M3 5V3",key:"1k5hjh"}],["path",{d:"M4 10a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2a2 2 0 0 1-2 2z",key:"1dd30t"}],["path",{d:"M7 5V3",key:"1t1388"}]]};e.node;let f=(0,d.A)(e)},53078:(a,b,c)=>{c.d(b,{U:()=>r});var d=c(21621),e=c(88890),f=c(24585),g=c(32599),h=c(72071),i=c(64291),j=c(79603),k=c(21233),l=c(26674),m=c(47434),n=c(48241),o=c(553),p=c(70947),q=c(32108);let r=d.forwardRef(function(a,b){let{render:c,className:d,style:r,anchor:s,positionMethod:t,side:u,align:v,sideOffset:w,alignOffset:x,collisionBoundary:y="clipping-ancestors",collisionPadding:z,arrowPadding:A,sticky:B,disableAnchorTracking:C=!1,collisionAvoidance:D=m.Pe,...E}=a,F=(0,g.s)(),G=(0,j.A)(),H=(0,f.fI)(),I=F.useState("floatingRootContext"),J=F.useState("mounted"),K=F.useState("open"),L=F.useState("openChangeReason"),M=F.useState("activeTriggerElement"),N=F.useState("modal"),O=F.useState("openMethod"),P=F.useState("positionerElement"),Q=F.useState("instantType"),R=F.useState("transitionStatus"),S=F.useState("adaptiveOrigin"),T=(0,i.s)({anchor:s,floatingRootContext:I,positionMethod:t,mounted:J,side:u,sideOffset:w,align:v,alignOffset:x,arrowPadding:A,collisionBoundary:y,collisionPadding:z,sticky:B,disableAnchorTracking:C,keepMounted:G,nodeId:H,collisionAvoidance:D,adaptiveOrigin:S}),U=I.useState("domReferenceElement");(0,n.t)({store:F,domReference:U,positionerElement:P,open:K});let V=!0===N&&L!==l.N7;(0,p.G)(K&&V,"touch"===O,P,M);let W=F.useStateSetter("positionerElement"),X={open:K,side:T.side,align:T.align,anchorHidden:T.anchorHidden,instant:Q},Y=(0,o.i)(a,X,{styles:T.positionerStyles,transitionStatus:R,props:E,refs:[b,W],hidden:!J,inert:!K});return(0,q.jsxs)(h.f.Provider,{value:T,children:[J&&V&&(0,q.jsx)(k.W,{inert:(0,e.Y)(!K),cutout:M}),(0,q.jsx)(f.$c,{id:H,children:Y})]})})},54818:(a,b,c)=>{c.d(b,{i:()=>u});var d=c(21621),e=c(73452),f=c(42736),g=c(56386),h=c(32599),i=c(72071),j=c(39493),k=c(93133),l=c(62309),m=c(26674),n=c(26152),o=c(85387),p=c(81919),q=c(53678);let r=d.createContext(void 0);var s=c(37512),t=c(32108);let u=d.forwardRef(function(a,b){let{render:c,className:u,style:v,initialFocus:w,finalFocus:x,...y}=a,z=(0,h.s)(),A=(0,i.k)(),B=null!=(0,o.S)(!0),{context:C,hasClosePart:D}=function(){let[a,b]=d.useState(0),c=(0,q.K)(()=>(b(a=>a+1),()=>{b(a=>Math.max(0,a-1))}));return{context:d.useMemo(()=>({register:c}),[c]),hasClosePart:a>0}}(),E=z.useState("open"),F=z.useState("openMethod"),G=z.useState("instantType"),H=z.useState("transitionStatus"),I=z.useState("popupProps"),J=z.useState("titleElementId"),K=z.useState("descriptionElementId"),L=z.useState("modal"),M=z.useState("mounted"),N=z.useState("openChangeReason"),O=z.useState("activeTriggerElement"),P=z.useState("floatingRootContext"),Q=P.useState("floatingId"),R=z.useState("disabled"),S=z.useState("openOnHover"),T=z.useState("closeDelay");(0,k.v)({open:E,ref:z.context.popupRef,onComplete(){E&&z.context.onOpenChangeComplete?.(!0)}}),(0,f.a)(P,{enabled:S&&!R,closeDelay:T});let U=void 0===w?(0,s.UM)(z.context.popupRef):w,V=!1!==L&&D;z.useSyncedValue("focusManagerModal",V);let W=z.useStateSetter("popupElement"),X={open:E,side:A.side,align:A.align,instant:G,transitionStatus:H},Y=(0,l.o)("div",a,{state:X,ref:[b,z.context.popupRef,W],props:[I,{id:Q,role:"dialog",...s.Ls,"aria-labelledby":J,"aria-describedby":K,onKeyDown(a){B&&n.jF.has(a.key)&&a.stopPropagation()}},(0,p.d)(H),y],stateAttributesMapping:j.LM});return(0,t.jsx)(g.s,{context:P,openInteractionType:F,modal:V,disabled:!M||N===m.N7,initialFocus:U,returnFocus:x,restoreFocus:"popup",getInsideElements:()=>[z.context.beforeTriggerFocusGuardRef.current],previousFocusableElement:(0,e.sb)(O)?O:void 0,nextFocusableElement:z.context.triggerFocusTargetRef,beforeContentFocusGuardRef:z.context.beforeContentFocusGuardRef,children:(0,t.jsx)(r.Provider,{value:C,children:Y})})})},57505:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(41781);let e={name:"key-round",size:24,node:[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]};e.node;let f=(0,d.A)(e)},72071:(a,b,c)=>{c.d(b,{f:()=>f,k:()=>g});var d=c(70647),e=c(21621);let f=e.createContext(void 0);function g(){let a=e.useContext(f);if(!a)throw Error((0,d.A)(46));return a}},72138:(a,b,c)=>{c.d(b,{y:()=>v});var d=c(21621),e=c(11377),f=c(24585),g=c(51628),h=c(32599),i=c(4888),j=c(16830),k=c(53315),l=c(26674),m=c(32311),n=c(50288),o=c(37512),p=c(47434);let q={...m.o,disabled:a=>a.disabled,instantType:a=>"trigger-change"!==a.instantType||m.o.open(a)?a.instantType:void 0,openMethod:a=>a.openMethod,openChangeReason:a=>a.openChangeReason,isPressOpenedByTrigger:(a,b)=>a.openChangeReason===l.Ui&&m.o.isOpenedByTrigger(a,b),isTouchPressOpen:(a,b)=>b&&"touch"===a.openMethod&&a.openChangeReason===l.Ui,hasTriggerFocusGuards:(a,b)=>m.o.isOpenedByTrigger(a,b)&&!a.focusManagerModal,modal:a=>a.modal,titleElementId:a=>a.titleElementId,descriptionElementId:a=>a.descriptionElementId,openOnHover:a=>a.openOnHover,closeDelay:a=>a.closeDelay,adaptiveOrigin:a=>a.adaptiveOrigin};class r extends j.H{constructor(a,b,c){const e=new n.Z;super(function(a,b,c,d=!1){let e={...(0,m.r)(b,c,d),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,openOnHover:!1,closeDelay:0,adaptiveOrigin:void 0,...a};return e.open&&a?.mounted===void 0&&(e.mounted=!0),e}(a,e,b,c),function(a){return{popupRef:d.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:d.createRef(),beforeTriggerFocusGuardRef:d.createRef(),beforeContentFocusGuardRef:d.createRef(),stickIfOpenTimeout:new k.E,stickIfOpen:!0,triggerElements:a}}(e),q),this.setOpen=(a,b)=>{let c,d=b.reason===l.N7,e=b.reason===l.Ui&&0===b.event.detail,f=!a&&(b.reason===l.jv||null==b.reason),g=(0,o.T1)(b),h=this.select("activeTriggerId");if(a||b.reason!==l.SR||null!=b.trigger||null==h||(b.trigger=this.context.triggerElements.getById(h)??this.select("activeTriggerElement")??void 0),this.context.onOpenChange?.(a,b),b.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(a,b);let j=()=>{let c=(0,o.cQ)(this.state,a,b.trigger,g());c.openChangeReason=b.reason,this.update(c)};d?(this.context.stickIfOpen=!0,this.context.stickIfOpenTimeout.start(p.X3,()=>{this.context.stickIfOpen=!1}),i.flushSync(j)):j(),e?c="click":f?c="dismiss":b.reason===l.Xn&&(c="focus"),this.set("instantType",c)}}}var s=c(48544),t=c(32108);let u=(0,e.G1)(function({props:a}){var b;let c,{children:e,open:f,defaultOpen:g=!1,onOpenChange:i,onOpenChangeComplete:j,modal:k=!1,handle:m,triggerId:n,defaultTriggerId:p=null}=a,q=(b={modal:k,open:g,openProp:f,activeTriggerId:p,triggerIdProp:n},c=(0,o.xp)((a,c)=>new r(b,a,c)),d.useEffect(()=>c.context.stickIfOpenTimeout.disposeEffect(),[c]),c);q.useControlledProp("openProp",f),q.useControlledProp("triggerIdProp",n);let u=q.useState("open"),v=q.useState("mounted"),x=q.useState("payload");q.useContextCallback("onOpenChange",i),q.useContextCallback("onOpenChangeComplete",j),(0,o.xs)(q,u),(0,o.tr)(q);let{forceUnmount:y}=(0,o.l$)(u,q,()=>{q.context.stickIfOpen=!0,q.set("openChangeReason",null)});q.useSyncedValues({modal:k}),d.useEffect(()=>{u||q.context.stickIfOpenTimeout.clear()},[q,u]),d.useImperativeHandle(a.actionsRef,()=>({unmount:y,close:()=>q.setOpen(!1,(0,s.d)(l.zJ))}),[y,q]);let z=u||v||null!=m;return(0,t.jsxs)(h.r.Provider,{value:q,children:[m&&(0,t.jsx)(o.Ae,{handle:m,store:q}),z&&(0,t.jsx)(w,{store:q,modal:k}),"function"==typeof e?e({payload:x}):e]})});function v(a){return(0,h.s)(!0)?(0,t.jsx)(u,{props:a}):(0,t.jsx)(f.P6,{children:(0,t.jsx)(u,{props:a})})}function w({store:a,modal:b}){let c=a.useState("floatingRootContext"),d=(0,g.s)(c,{outsidePressEvent:{mouse:"trap-focus"===b?"sloppy":"intentional",touch:"sloppy"}}),e=d.reference,f=d.floating;return(0,o.i6)(a,{activeTriggerProps:e,inactiveTriggerProps:e,popupProps:f}),null}},78467:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(41781);let e={name:"settings-2",size:24,node:[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]};e.node;let f=(0,d.A)(e)},79603:(a,b,c)=>{c.d(b,{A:()=>g,n:()=>f});var d=c(70647),e=c(21621);let f=e.createContext(void 0);function g(){let a=e.useContext(f);if(void 0===a)throw Error((0,d.A)(45));return a}},83583:(a,b,c)=>{c.d(b,{W:()=>w});var d=c(70647),e=c(21621),f=c(53678),g=c(11377),h=c(32599),i=c(43778),j=c(39493),k=c(62309),l=c(47434),m=c(50175),n=c(55555),o=c(91448),p=c(80830),q=c(63127),r=c(70010),s=c(37512),t=c(83075),u=c(82408),v=c(32108);let w=(0,g.nk)(function(a,b){let{render:c,className:g,style:w,disabled:x=!1,nativeButton:y=!0,handle:z,payload:A,openOnHover:B=!1,delay:C=300,closeDelay:D=0,id:E,...F}=a,G=(0,h.s)(!0),H=(0,r.f)(z)??G;if(!H)throw Error((0,d.A)(74));let I=(0,p.e)(E),J=H.useState("isTriggerActive",I),K=H.useState("floatingRootContext"),L=H.useState("isOpenedByTrigger",I),M=H.useState("triggerPopupId",I),N=e.useRef(null),{registerTrigger:O,isMountedByThisTrigger:P}=(0,s.L_)(I,N,H,{payload:A,disabled:x,openOnHover:B,closeDelay:D}),Q=H.useState("isPressOpenedByTrigger",I),R=H.useState("isTouchPressOpen",B),S=H.useState("hasTriggerFocusGuards",I),T=(0,m.j)(K,{enabled:!x&&B&&!R,mouseOnly:!0,move:!1,handleClose:(0,n.i)(),restMs:C,delay:{close:D},triggerElementRef:N,isActiveTrigger:J,isClosing:()=>"ending"===H.select("transitionStatus")}),U=(0,f.K)(()=>H.context.stickIfOpen),V=(0,o.k)(K,{stickIfOpen:U}),W=(0,u.L)(()=>H.select("open"),a=>{H.set("openMethod",a)}),X=H.useState("triggerProps",P),{getButtonProps:Y,buttonRef:Z}=(0,i.s)({disabled:x,native:y}),{handlePreFocusGuardFocus:$,handleFocusTargetFocus:_}=(0,t.a)(H,N),aa=(0,k.o)("button",a,{state:{disabled:x,open:L},ref:[Z,b,O,N],props:[V.reference,T,X,W,{[l.Kd]:"",id:I,"aria-haspopup":"dialog","aria-expanded":L,"aria-controls":M},F,Y],stateAttributesMapping:{open:a=>Q?j.jL.open(a):j.qV.open(a)}}),ab=(0,v.jsx)(e.Fragment,{children:aa},I);return S?(0,v.jsxs)(e.Fragment,{children:[(0,v.jsx)(q.U,{ref:H.context.beforeTriggerFocusGuardRef,onFocus:$}),ab,(0,v.jsx)(q.U,{ref:H.context.triggerFocusTargetRef,onFocus:_})]}):ab})},97704:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(41781);let e={name:"store",size:24,node:[["path",{d:"M15 21v-5a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v5",key:"slp6dd"}],["path",{d:"M17.774 10.31a1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.451 0 1.12 1.12 0 0 0-1.548 0 2.5 2.5 0 0 1-3.452 0 1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.77-3.248l2.889-4.184A2 2 0 0 1 7 2h10a2 2 0 0 1 1.653.873l2.895 4.192a2.5 2.5 0 0 1-3.774 3.244",key:"o0xfot"}],["path",{d:"M4 10.95V19a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8.05",key:"wn3emo"}]]};e.node;let f=(0,d.A)(e)}};
@@ -0,0 +1,24 @@
1
+ "use strict";exports.id=9439,exports.ids=[9439],exports.modules={3346:(a,b,c)=>{c.d(b,{Ch:()=>Y,Di:()=>w,Kq:()=>M,LB:()=>j,M3:()=>A,Tt:()=>r,b8:()=>ae,bD:()=>f,eM:()=>Q,hL:()=>n,iM:()=>aa,k9:()=>af,u1:()=>s,u6:()=>I,vb:()=>U,xn:()=>E});let d="vercel.ai.error",e=Symbol.for(d);var f=class a extends Error{constructor({name:a,message:b,cause:c}){super(b),this[e]=!0,this.name=a,this.cause=c}static isInstance(b){return a.hasMarker(b,d)}static hasMarker(a,b){let c=Symbol.for(b);return null!=a&&"object"==typeof a&&c in a&&"boolean"==typeof a[c]&&!0===a[c]}};let g="AI_DecisionUnsupportedQuestionTypeError",h=`vercel.ai.error.${g}`,i=Symbol.for(h);var j=class extends f{constructor({questionId:a,questionType:b,provider:c,modelId:d,message:e=`Question "${a}" has type "${b}", which is not supported by provider "${c}" and model "${d}".`}){super({name:g,message:e}),this[i]=!0,this.questionId=a,this.questionType=b,this.provider=c,this.modelId=d}static isInstance(a){return f.hasMarker(a,h)}};let k="AI_APICallError",l=`vercel.ai.error.${k}`,m=Symbol.for(l);var n=class extends f{constructor({message:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e,responseBody:f,cause:g,isRetryable:h=null!=d&&(408===d||409===d||429===d||d>=500),data:i}){super({name:k,message:a,cause:g}),this[m]=!0,this.url=b,this.requestBodyValues=c,this.statusCode=d,this.responseHeaders=e,this.responseBody=f,this.isRetryable=h,this.data=i}static isInstance(a){return f.hasMarker(a,l)}};let o="AI_EmptyResponseBodyError",p=`vercel.ai.error.${o}`,q=Symbol.for(p);var r=class extends f{constructor({message:a="Empty response body"}={}){super({name:o,message:a}),this[q]=!0}static isInstance(a){return f.hasMarker(a,p)}};function s(a){return null==a?"unknown error":"string"==typeof a?a:a instanceof Error?a.toString():JSON.stringify(a)}Symbol.for("vercel.ai.error.AI_DecisionRefusalError");let t="AI_InvalidArgumentError",u=`vercel.ai.error.${t}`,v=Symbol.for(u);var w=class extends f{constructor({message:a,cause:b,argument:c}){super({name:t,message:a,cause:b}),this[v]=!0,this.argument=c}static isInstance(a){return f.hasMarker(a,u)}};let x="AI_InvalidPromptError",y=`vercel.ai.error.${x}`,z=Symbol.for(y);var A=class extends f{constructor({prompt:a,message:b,cause:c}){super({name:x,message:`Invalid prompt: ${b}`,cause:c}),this[z]=!0,this.prompt=a}static isInstance(a){return f.hasMarker(a,y)}};let B="AI_InvalidResponseDataError",C=`vercel.ai.error.${B}`,D=Symbol.for(C);var E=class extends f{constructor({data:a,message:b=`Invalid response data: ${JSON.stringify(a)}.`}){super({name:B,message:b}),this[D]=!0,this.data=a}static isInstance(a){return f.hasMarker(a,C)}};let F="AI_JSONParseError",G=`vercel.ai.error.${F}`,H=Symbol.for(G);var I=class extends f{constructor({text:a,cause:b}){super({name:F,message:`JSON parsing failed: Text: ${a}.
2
+ Error message: ${s(b)}`,cause:b}),this[H]=!0,this.text=a}static isInstance(a){return f.hasMarker(a,G)}};let J="AI_LoadAPIKeyError",K=`vercel.ai.error.${J}`,L=Symbol.for(K);var M=class extends f{constructor({message:a}){super({name:J,message:a}),this[L]=!0}static isInstance(a){return f.hasMarker(a,K)}};Symbol.for("vercel.ai.error.AI_LoadSettingError"),Symbol.for("vercel.ai.error.AI_NoContentGeneratedError");let N="AI_NoSuchModelError",O=`vercel.ai.error.${N}`,P=Symbol.for(O);var Q=class extends f{constructor({errorName:a=N,modelId:b,modelType:c,message:d=`No such ${c}: ${b}`}){super({name:a,message:d}),this[P]=!0,this.modelId=b,this.modelType=c}static isInstance(a){return f.hasMarker(a,O)}};let R="AI_NoSuchProviderReferenceError",S=`vercel.ai.error.${R}`,T=Symbol.for(S);var U=class extends f{constructor({provider:a,reference:b,message:c=`No provider reference found for provider '${a}'. Available providers: ${Object.keys(b).join(", ")}`}){super({name:R,message:c}),this[T]=!0,this.provider=a,this.reference=b}static isInstance(a){return f.hasMarker(a,S)}};let V="AI_TooManyEmbeddingValuesForCallError",W=`vercel.ai.error.${V}`,X=Symbol.for(W);var Y=class extends f{constructor(a){super({name:V,message:`Too many values for a single embedding call. The ${a.provider} model "${a.modelId}" can only embed up to ${a.maxEmbeddingsPerCall} values per call, but ${a.values.length} values were provided.`}),this[X]=!0,this.provider=a.provider,this.modelId=a.modelId,this.maxEmbeddingsPerCall=a.maxEmbeddingsPerCall,this.values=a.values}static isInstance(a){return f.hasMarker(a,W)}};let Z="AI_TypeValidationError",$=`vercel.ai.error.${Z}`,_=Symbol.for($);var aa=class a extends f{constructor({value:a,cause:b,context:c}){let d="Type validation failed";if(c?.field&&(d+=` for ${c.field}`),c?.entityName||c?.entityId){d+=" (";const a=[];c.entityName&&a.push(c.entityName),c.entityId&&a.push(`id: "${c.entityId}"`),d+=a.join(", "),d+=")"}super({name:Z,message:`${d}: Value: ${JSON.stringify(a)}.
3
+ Error message: ${s(b)}`,cause:b}),this[_]=!0,this.value=a,this.context=c}static isInstance(a){return f.hasMarker(a,$)}static wrap({value:b,cause:c,context:d}){return a.isInstance(c)&&c.value===b&&c.context?.field===d?.field&&c.context?.entityName===d?.entityName&&c.context?.entityId===d?.entityId?c:new a({value:b,cause:c,context:d})}};let ab="AI_UnsupportedFunctionalityError",ac=`vercel.ai.error.${ab}`,ad=Symbol.for(ac);var ae=class extends f{constructor({functionality:a,message:b=`'${a}' functionality not supported.`}){super({name:ab,message:b}),this[ad]=!0,this.functionality=a}static isInstance(a){return f.hasMarker(a,ac)}};function af(a){return null!=a&&"object"==typeof a&&Object.entries(a).every(([a,b])=>"string"==typeof a&&(void 0===b||function a(b){return null===b||"string"==typeof b||"number"==typeof b||"boolean"==typeof b||(Array.isArray(b)?b.every(a):"object"==typeof b&&Object.entries(b).every(([b,c])=>"string"==typeof b&&(void 0===c||a(c))))}(b)))}},53751:(a,b,c)=>{c.d(b,{Z:()=>h});class d extends Error{constructor(a,b){super(a),this.name="ParseError",this.type=b.type,this.field=b.field,this.value=b.value,this.line=b.line}}function e(a){}function f(a,b,c){return 100===c&&97===a.charCodeAt(b+1)&&116===a.charCodeAt(b+2)&&97===a.charCodeAt(b+3)&&58===a.charCodeAt(b+4)}function g(a,b,c){return 101===c&&118===a.charCodeAt(b+1)&&101===a.charCodeAt(b+2)&&110===a.charCodeAt(b+3)&&116===a.charCodeAt(b+4)&&58===a.charCodeAt(b+5)}class h extends TransformStream{constructor({onError:a,onRetry:b,onComment:c,maxBufferSize:h}={}){let i;super({start(j){i=function(a){if("function"==typeof a)throw TypeError("`config` must be an object, got a function instead. Did you mean `createParser({onEvent: fn})`?");let{onEvent:b=e,onError:c=e,onRetry:h=e,onComment:i,maxBufferSize:j}=a,k=[],l=0,m=!0,n,o="",p=0,q,r=!1;function s(){void 0!==j&&(l+o.length<=j||(r=!0,k.length=0,l=0,n=void 0,o="",p=0,q=void 0,c(new d(`Buffered data exceeded max buffer size of ${j} characters`,{type:"max-buffer-size-exceeded"}))))}function t(a){let c=0;if(-1===a.indexOf("\r")){let d=a.indexOf(`
4
+ `,c);for(;-1!==d;){if(c===d){p>0&&b({id:n,event:q,data:o}),n=void 0,o="",p=0,q=void 0,c=d+1,d=a.indexOf(`
5
+ `,c);continue}let e=a.charCodeAt(c);if(f(a,c,e)){let e=32===a.charCodeAt(c+5)?c+6:c+5,f=a.slice(e,d);if(0===p&&10===a.charCodeAt(d+1)){b({id:n,event:q,data:f}),n=void 0,o="",q=void 0,c=d+2,d=a.indexOf(`
6
+ `,c);continue}o=0===p?f:`${o}
7
+ ${f}`,p++}else g(a,c,e)?q=a.slice(32===a.charCodeAt(c+6)?c+7:c+6,d)||void 0:u(a,c,d);c=d+1,d=a.indexOf(`
8
+ `,c)}return a.slice(c)}for(;c<a.length;){let b=a.indexOf("\r",c),d=a.indexOf(`
9
+ `,c),e=-1;if(-1!==b&&-1!==d?e=b<d?b:d:-1!==b?e=b===a.length-1?-1:b:-1!==d&&(e=d),-1===e)break;u(a,c,e),c=e+1,13===a.charCodeAt(c-1)&&10===a.charCodeAt(c)&&c++}return a.slice(c)}function u(a,c,d){if(c===d)return void(p>0&&b({id:n,event:q,data:o}),n=void 0,o="",p=0,q=void 0);let e=a.charCodeAt(c);if(f(a,c,e)){let b=32===a.charCodeAt(c+5)?c+6:c+5,e=a.slice(b,d);o=0===p?e:`${o}
10
+ ${e}`,p++;return}if(g(a,c,e)){q=a.slice(32===a.charCodeAt(c+6)?c+7:c+6,d)||void 0;return}if(105===e&&100===a.charCodeAt(c+1)&&58===a.charCodeAt(c+2)){let b=a.slice(32===a.charCodeAt(c+3)?c+4:c+3,d);b.includes("\0")||(n=b);return}if(58===e){i&&i(a.slice(c,d).slice(32===a.charCodeAt(c+1)?2:1));return}let h=a.slice(c,d),j=h.indexOf(":");if(-1===j)return void v(h,"",h);let k=h.slice(0,j),l=32===h.charCodeAt(j+1)?2:1;v(k,h.slice(j+l),h)}function v(a,b,e){switch(a){case"event":q=b||void 0;break;case"data":o=0===p?b:`${o}
11
+ ${b}`,p++;break;case"id":b.includes("\0")||(n=b);break;case"retry":/^\d+$/.test(b)?h(parseInt(b,10)):c(new d(`Invalid \`retry\` value: "${b}"`,{type:"invalid-retry",value:b,line:e}));break;default:c(new d(`Unknown field "${a.length>20?`${a.slice(0,20)}\u2026`:a}"`,{type:"unknown-field",field:a,value:b,line:e}))}}return{feed:function(a){if(r)throw Error("Cannot feed parser: it was terminated after exceeding the configured max buffer size. Call `reset()` to resume parsing.");if(m&&(m=!1,239===a.charCodeAt(0)&&187===a.charCodeAt(1)&&191===a.charCodeAt(2)&&(a=a.slice(3))),0===k.length){let b=t(a);""!==b&&(k.push(b),l=b.length),s();return}if(-1===a.indexOf(`
12
+ `)&&-1===a.indexOf("\r")){k.push(a),l+=a.length,s();return}k.push(a);let b=k.join("");k.length=0,l=0;let c=t(b);""!==c&&(k.push(c),l=c.length),s()},reset:function(a={}){if(a.consume&&k.length>0){let a=k.join("");u(a,0,a.length)}m=!0,n=void 0,o="",p=0,q=void 0,k.length=0,l=0,r=!1}}}({onEvent:a=>{j.enqueue(a)},onError(b){"function"==typeof a&&a(b),("terminate"===a||"max-buffer-size-exceeded"===b.type)&&j.error(b)},onRetry:b,onComment:c,maxBufferSize:h})},transform(a){i.feed(a)}})}}},90711:(a,b,c)=>{c.d(b,{C:()=>e,V:()=>d});let d=Symbol.for("workflow-serialize"),e=Symbol.for("workflow-deserialize")},99439:(a,b,c)=>{let d,e;c.d(b,{$C:()=>aB,$b:()=>aC,CI:()=>au,CR:()=>D,CY:()=>b5,Cs:()=>_,Ds:()=>bR,E8:()=>q,EK:()=>C,Et:()=>b4,F8:()=>aP,G1:()=>I,GU:()=>bz,HD:()=>bV,HE:()=>b2,HQ:()=>aO,ID:()=>bl,J2:()=>bF,J6:()=>af,JM:()=>bW,L8:()=>r,N8:()=>bs,NR:()=>s,Nv:()=>cb,Og:()=>bm,Pe:()=>aE,Qf:()=>b0,R:()=>aF,S:()=>bA,S8:()=>n,SL:()=>bI,SP:()=>bB,Uw:()=>ar,W:()=>av,WL:()=>aI,WN:()=>ax,WZ:()=>P,XQ:()=>y,Z9:()=>v,ZA:()=>aU,ZZ:()=>bq,_$:()=>R,_Z:()=>bt,_j:()=>j,_s:()=>aD,aI:()=>aa,ae:()=>cc,ao:()=>az,cI:()=>ay,cS:()=>aw,cV:()=>bS,cb:()=>l,cz:()=>bD,dG:()=>b3,ej:()=>x,g6:()=>aK,hK:()=>aA,hL:()=>bE,hd:()=>bH,hr:()=>z,iH:()=>F,jN:()=>bo,jW:()=>A,jv:()=>aL,k5:()=>bp,ks:()=>G,m2:()=>k,mD:()=>bn,nV:()=>ae,n_:()=>w,ny:()=>bT,p5:()=>bJ,qX:()=>B,qs:()=>aH,qx:()=>O,rV:()=>cd,sM:()=>Z,sl:()=>bQ,sq:()=>aN,st:()=>bx,u4:()=>aG,uM:()=>ag,x3:()=>aJ,xI:()=>bu,y6:()=>br,yW:()=>bK,yu:()=>$,z:()=>bG,z6:()=>bC,zf:()=>J});var f=c(3346),g=c(23775),h=c(14603),i=c(53751);function j(a){return void 0===a?[]:Array.isArray(a)?a:[a]}function k(...a){return a.reduce((a,b)=>({...a,...b}),{})}async function l(a,b){if(null==a)return;let c=b?.abortSignal;return new Promise((b,d)=>{if(c?.aborted)return void d(m());let e=setTimeout(()=>{f(),b()},a),f=()=>{clearTimeout(e),c?.removeEventListener("abort",g)},g=()=>{f(),d(m())};c?.addEventListener("abort",g)})}function m(){return new DOMException("Delay was aborted","AbortError")}function n(a){let b=new URL(a);return"http:"===b.protocol?b.protocol="ws:":"https:"===b.protocol&&(b.protocol="wss:"),b}c(90711);let o=new TextDecoder;async function p(a){return"string"==typeof a?a:a instanceof ArrayBuffer||ArrayBuffer.isView(a)?o.decode(a):"u">typeof Blob&&a instanceof Blob?a.text():String(a)}async function q(a,{highWaterMark:b=1048576,pollIntervalMs:c=20,abortSignal:d}={}){for(;1===a.readyState&&(a.bufferedAmount??0)>b;){if(d?.aborted===!0)return;await l(c)}}function r({url:a,protocols:b,headers:c,webSocket:d,abortSignal:e,onOpen:f,onMessageText:g,onProcessingError:h,onSocketError:i,onClose:j,onAbort:k}){let l,m,n=a=>{null!=m&&(e?.removeEventListener("abort",m),m=void 0);try{l?.close(a)}catch{}};if(e?.aborted)return k?.(e.reason??Error("Aborted")),{socket:void 0,close:n};try{var o;l=new(function(a){let b=a??globalThis.WebSocket;if(null==b)throw Error("No WebSocket implementation available.");return b}(d))(a,b,{headers:(o=c??{},Object.fromEntries(Object.entries(o).filter(([a,b])=>null!=b)))})}catch(a){return h(a),{socket:void 0,close:n}}null!=e&&null!=k&&(m=()=>k(e.reason??Error("Aborted")),e.addEventListener("abort",m,{once:!0}));let q=l;l.onopen=()=>{try{f?.(q)}catch(a){h(a)}};let s=Promise.resolve();return l.onmessage=a=>{s=s.then(()=>p(a.data)).then(a=>g(a)).catch(h)},l.onerror=()=>{s=s.then(()=>i?.()).catch(h)},l.onclose=a=>{let b="number"==typeof a?.code?a.code:void 0,c="string"==typeof a?.reason?a.reason:void 0;s=s.then(()=>j?.({code:b,reason:c})).catch(h)},{socket:l,close:n}}function s(a){let b=!1;return new ReadableStream({async pull(c){if(!b)try{let{value:b,done:d}=await a.next();d?c.close():c.enqueue(b)}catch(a){c.error(a)}},async cancel(c){if(b=!0,a.return)try{await a.return(c)}catch{}}})}let{btoa:t,atob:u}=globalThis;function v(a){let b=u(a.replace(/-/g,"+").replace(/_/g,"/"));return Uint8Array.from(b,a=>a.codePointAt(0))}function w(a){let b=[];for(let c=0;c<a.length;c+=4096)b.push(String.fromCodePoint(...a.subarray(c,c+4096)));return t(b.join(""))}function x(a){return a instanceof Uint8Array?w(a):a}function y(a){if("stream"===a.type){let b=new f.b8({functionality:"streaming file upload"});throw a.stream.cancel(b).catch(()=>{}),b}return"text"===a.type?new TextEncoder().encode(a.text):a.data instanceof Uint8Array?a.data:a.data instanceof ArrayBuffer?new Uint8Array(a.data):v(a.data)}function z(a){let b=new Set,c=new Set,d=!1,e=!1;return new TransformStream({transform(f,g){switch(f.type){case"text-start":case"text-delta":case"text-end":return;case"tool-input-start":if(f.toolName===a){b.add(f.id),g.enqueue({type:"text-start",id:f.id,...f.providerMetadata&&{providerMetadata:f.providerMetadata}});return}break;case"tool-input-delta":if(b.has(f.id)){f.delta.length>0&&c.add(f.id),g.enqueue({type:"text-delta",id:f.id,delta:f.delta,...f.providerMetadata&&{providerMetadata:f.providerMetadata}});return}break;case"tool-input-end":if(b.has(f.id))return;break;case"tool-call":if(f.toolName===a){c.has(f.toolCallId)||g.enqueue({type:"text-delta",id:f.toolCallId,delta:f.input,...f.providerMetadata&&{providerMetadata:f.providerMetadata}}),g.enqueue({type:"text-end",id:f.toolCallId,...f.providerMetadata&&{providerMetadata:f.providerMetadata}}),d=!0;return}f.providerExecuted||(e=!0);break;case"finish":if(d&&!e&&"tool-calls"===f.finishReason.unified)return void g.enqueue({...f,finishReason:{...f.finishReason,unified:"stop"}})}g.enqueue(f)}})}function A(a,b={}){let{useArrayBrackets:c=!0}=b,d=new FormData;for(let[b,e]of Object.entries(a))if(null!=e){if(Array.isArray(e)){if(1===e.length){d.append(b,e[0]);continue}let a=c?`${b}[]`:b;for(let b of e)d.append(a,b);continue}d.append(b,e)}return d}function B({id:a,model:b,created:c}){return{id:a??void 0,modelId:b??void 0,timestamp:null!=c?new Date(1e3*c):void 0}}function C(){return{inputTokens:{total:void 0,noCache:void 0,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:void 0,text:void 0,reasoning:void 0},raw:void 0}}function D({tools:a=[],providerToolNames:b}){let c={},d={};for(let e of a)if("provider"===e.type&&e.id in b){let a=b[e.id];c[e.name]=a,d[a]=e.name}return{toProviderToolName:a=>c[a]??a,toCustomToolName:a=>d[a]??a}}let E=Symbol.for("vercel.ai.providerStreamError");function F({message:a,type:b,code:c,statusCode:d,isRetryable:e,data:f}){let g={message:a,type:b,code:c,statusCode:d,isRetryable:e,data:f};return Object.defineProperty(g,E,{value:!0}),g}function G(a){return"object"==typeof a&&null!=a&&!0===a[E]}function H(a){return Object.fromEntries([...a.headers])}function I(a=globalThis){return a.navigator?.userAgent?a.navigator.userAgent.toLowerCase():a.process?.versions?.node?`node.js/${a.process.version}`:a.EdgeRuntime?"vercel-edge":""}function J(a){return(a instanceof Error||"function"==typeof DOMException&&a instanceof DOMException)&&("AbortError"===a.name||"ResponseAborted"===a.name||"TimeoutError"===a.name)}let K=["fetch failed","failed to fetch"],L=new Set(["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE","UND_ERR_SOCKET","UND_ERR_HEADERS_TIMEOUT","UND_ERR_BODY_TIMEOUT","UND_ERR_CONNECT_TIMEOUT"]);function M({error:a,url:b,requestBodyValues:c}){if(J(a))return a;if(a instanceof TypeError&&K.includes(a.message.toLowerCase())){let d=a.cause;if(null!=d)return new f.hL({message:`Cannot connect to API: ${d.message}`,cause:d,url:b,requestBodyValues:c,isRetryable:!0})}let d=function(a){let b=new Set,c=a;for(;c instanceof Error&&!b.has(c);){b.add(c);let a=c;if("string"==typeof a.code&&L.has(a.code))return a;c=c.cause}}(a);return null!=d?new f.hL(f.hL.isInstance(a)?{message:a.message,cause:a.cause,url:a.url,requestBodyValues:a.requestBodyValues,statusCode:a.statusCode,responseHeaders:a.responseHeaders,responseBody:a.responseBody,data:a.data,isRetryable:!0}:{message:`Cannot connect to API: ${a instanceof Error?a.message:d.message}`,cause:a,url:b,requestBodyValues:c,isRetryable:!0}):a}let N="5.0.58";function O(a){if(null==a)return{};let b={};if(a instanceof Headers)a.forEach((a,c)=>{b[c.toLowerCase()]=a});else for(let[c,d]of(Array.isArray(a)||(a=Object.entries(a)),a))null!=d&&(b[c.toLowerCase()]=d);return b}function P(a,...b){let c=new Headers(O(a)),d=c.get("user-agent")||"";return c.set("user-agent",[d,...b].filter(Boolean).join(" ")),Object.fromEntries(c.entries())}let Q=()=>globalThis.fetch,R=async({url:a,headers:b={},failedResponseHandler:c,successfulResponseHandler:d,abortSignal:e,fetch:g=Q()})=>{try{let h=await g(a,{method:"DELETE",headers:P(b,`ai-sdk-provider-utils/${N}`,I()),signal:e}),i=H(h);if(!h.ok){let b;try{b=await c({response:h,url:a,requestBodyValues:{}})}catch(b){if(J(b)||f.hL.isInstance(b))throw b;throw new f.hL({message:"Failed to process error response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:{}})}throw b.value}try{return await d({response:h,url:a,requestBodyValues:{}})}catch(b){if(b instanceof Error&&(J(b)||f.hL.isInstance(b)))throw b;throw new f.hL({message:"Failed to process successful response",cause:b,statusCode:h.status,url:a,responseHeaders:i,requestBodyValues:{}})}}catch(b){throw M({error:b,url:a,requestBodyValues:{}})}},S=[{mediaType:"image/gif",bytesPrefix:[71,73,70,56,55,97]},{mediaType:"image/gif",bytesPrefix:[71,73,70,56,57,97]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77,null,null,null,null,0,0,0,0]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,null,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,null,102,116,121,112,104,101,105,99]}],T=[{mediaType:"application/pdf",bytesPrefix:[37,80,68,70]}],U=[{mediaType:"audio/aac",bytesPrefix:[255,240]},{mediaType:"audio/aac",bytesPrefix:[255,241]},{mediaType:"audio/aac",bytesPrefix:[255,248]},{mediaType:"audio/aac",bytesPrefix:[255,249]},{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],V=[{mediaType:"video/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]},{mediaType:"video/webm",bytesPrefix:[26,69,223,163]},{mediaType:"video/quicktime",bytesPrefix:[0,0,0,20,102,116,121,112,113,116]},{mediaType:"video/x-msvideo",bytesPrefix:[82,73,70,70]}];function W(a,b){if("string"!=typeof a)return a.length>b?a.subarray(0,b):a;let c=4*Math.ceil(b/3),d=v(a.substring(0,Math.min(a.length,c)));return d.length>b?d.subarray(0,b):d}function X({data:a,signatures:b}){var c,d;let e,f=W(a,18);for(let g of((c=f).length>10&&73===c[0]&&68===c[1]&&51===c[2]&&(e=(127&(d=W(a,131084))[6])<<21|(127&d[7])<<14|(127&d[8])<<7|127&d[9],f=d.subarray(e+10)),b))if(f.length>=g.bytesPrefix.length&&g.bytesPrefix.every((a,b)=>null===a||f[b]===a))return g.mediaType}let Y={image:S,audio:[...U,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}],video:V,application:T};function Z({data:a,topLevelType:b}){if(void 0===b)return X({data:a,signatures:[...S,...T,...U,...V]});let c=Y[b];if(void 0!==c)return X({data:a,signatures:c})}function $(a){let b=a.indexOf("/");return -1===b?a:a.substring(0,b)}function _(a){let b=a.indexOf("/");if(-1===b)return!1;let c=a.substring(b+1);return c.length>0&&"*"!==c}async function aa(a){try{await a.body?.cancel()}catch{}}let ab="AI_DownloadError",ac=`vercel.ai.error.${ab}`,ad=Symbol.for(ac);var ae=class extends f.bD{constructor({url:a,statusCode:b,statusText:c,cause:d,message:e=null==d?`Failed to download ${a}: ${b} ${c}`:`Failed to download ${a}: ${d}`}){super({name:ab,message:e,cause:d}),this[ad]=!0,this.url=a,this.statusCode=b,this.statusText=c}static isInstance(a){return f.bD.hasMarker(a,ac)}};function af(a,b){try{return new URL(a).origin===new URL(b).origin}catch{return!1}}function ag(a){let b;try{b=new URL(a)}catch{throw new ae({url:a,message:`Invalid URL: ${a}`})}if("data:"===b.protocol)return;if("http:"!==b.protocol&&"https:"!==b.protocol)throw new ae({url:a,message:`URL scheme must be http, https, or data, got ${b.protocol}`});let c=b.hostname.toLowerCase().replace(/\.+$/,"");if(!c)throw new ae({url:a,message:"URL must have a hostname"});if("localhost"===c||c.endsWith(".local")||c.endsWith(".localhost"))throw new ae({url:a,message:`URL with hostname ${c} is not allowed`});if(c.startsWith("[")&&c.endsWith("]")){if(aj(c.slice(1,-1)))throw new ae({url:a,message:`URL with IPv6 address ${c} is not allowed`});return}if(ah(c)&&ai(c))throw new ae({url:a,message:`URL with IP address ${c} is not allowed`})}function ah(a){let b=a.split(".");return 4===b.length&&b.every(a=>{let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=255&&String(b)===a})}function ai(a){let[b,c,d]=a.split(".").map(Number);return 0===b||10===b||100===b&&c>=64&&c<=127||127===b||169===b&&254===c||172===b&&c>=16&&c<=31||192===b&&0===c&&0===d||192===b&&0===c&&2===d||192===b&&168===c||198===b&&(18===c||19===c)||198===b&&51===c&&100===d||203===b&&0===c&&113===d||b>=224||!1}function aj(a){let b=function(a){let b=a.toLowerCase(),c=b.indexOf("%");-1!==c&&(b=b.slice(0,c));let d=b.split("::");if(d.length>2)return null;let e=a=>{if(""===a)return[];let b=[],c=a.split(":");for(let a=0;a<c.length;a++){let d=c[a];if(d.includes(".")){if(a!==c.length-1||!ah(d))return null;let[e,f,g,h]=d.split(".").map(Number);b.push(e<<8|f,g<<8|h);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;b.push(parseInt(d,16))}return b},f=e(d[0]);if(null===f)return null;if(2===d.length){let a=e(d[1]);if(null===a)return null;let b=8-f.length-a.length;return b<0?null:[...f,...Array(b).fill(0),...a]}return 8===f.length?f:null}(a);if(null===b)return!0;let c=a=>b.slice(0,a).every(a=>0===a);return!!c(7)&&(0===b[7]||1===b[7])||(65024&b[0])==64512||(65472&b[0])==65152||(65472&b[0])==65216||(65280&b[0])==65280||8193===b[0]&&3512===b[1]||16383===b[0]&&(61440&b[1])==0||(!!(c(6)||c(5)&&65535===b[5]||c(4)&&65535===b[4]&&0===b[5])||100===b[0]&&65435===b[1]&&0===b[2]&&0===b[3]&&0===b[4]&&0===b[5]||100===b[0]&&65435===b[1]&&1===b[2])&&ai(`${b[6]>>8&255}.${255&b[6]}.${b[7]>>8&255}.${255&b[7]}`)}async function ak(){let a;return(a=globalThis.process,a?.release?.name!=="node"||a.versions?.bun!=null||a.versions?.deno!=null||"workerd"===a.title||null!=globalThis.EdgeRuntime)?globalThis.fetch:d??=Promise.resolve().then(al)}function al(){let a=am("node:module"),{lookup:b}=am("node:dns"),{Agent:c,fetch:d}=a.createRequire(function a(){let b=Error.prepareStackTrace;try{Error.prepareStackTrace=(a,b)=>b;let b=Error("Capture current module path");Error.captureStackTrace(b,a);let[c]=b.stack,d=c?.getFileName();if(null==d)throw Error("Unable to determine the current module path");return d}finally{Error.prepareStackTrace=b}}())("undici"),e=new c({connect:{lookup:(a,c,d)=>{b(a,{...c,all:!0},(b,e)=>{if(b)return void d(b);try{let[b]=e;if(null==b)throw Error(`Hostname ${a} did not resolve to an address`);for(let{address:b,family:c}of e)!function({address:a,family:b,hostname:c}){if(4===b?!ah(a)||ai(a):6!==b||aj(a))throw new ae({url:c,message:`Hostname ${c} resolved to disallowed IP address ${a}`})}({address:b,family:c,hostname:a});!0===c.all?d(null,e):d(null,b.address,b.family)}catch(a){d(a instanceof Error?a:Error(String(a)))}})}}});return(a,b)=>d(a,{...b,dispatcher:e})}function am(a){let b=globalThis.process?.getBuiltinModule?.(a);if(null==b)throw Error(`Node.js built-in module ${a} is unavailable`);return b}let an=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function ao(a){let b=new Headers(a);for(let a of an)b.delete(a);return b}let ap=new Set([301,302,303,307,308]);async function aq(a){return null==a||a===globalThis.fetch?await ak():a}async function ar({url:a,init:b,fetch:c,trustedOrigin:d,redirect:e="error"}){let f=a.toString(),g=void 0!==d&&af(f,d);return g||ag(f),await (g&&null!=c?c:g?globalThis.fetch:await aq(c))(a,{...b,redirect:e})}async function as({url:a,headers:b,abortSignal:c,maxRedirects:d=10,fetch:e,trustedOrigin:f}){let g=void 0===b?void 0:ao(b),h=a=>{let b={signal:c,redirect:a};return void 0!==g&&(b.headers=new Headers(g)),b},i=a;for(let b=0;b<=d;b++){let b=void 0!==f&&af(i,f);b||ag(i);let c=b&&null!=e?e:b?globalThis.fetch:await aq(e),d=await c(i,h("manual"));if("opaqueredirect"===d.type){if(!function(a=globalThis){return null!=a.window}())throw new ae({url:a,message:`Redirect from ${i} could not be validated and was blocked`});return await c(i,h("follow"))}let j=d.headers?.get("location");if(ap.has(d.status)&&j){aa(d);let a=new URL(j,i).toString();if(void 0!==g&&!af(a,i)){let a=g.get("user-agent");g=new Headers(null==a?void 0:{"user-agent":a})}i=a;continue}return d}throw new ae({url:a,message:`Too many redirects (max ${d})`})}let at=new Set(["accept","accept-language","baggage","cache-control","idempotency-key","if-match","if-modified-since","if-none-match","if-range","if-unmodified-since","pragma","range","traceparent","tracestate","user-agent","x-correlation-id","x-request-id"]);async function au({headers:a,credentialedOrigin:b,untrustedFirstHopHeaders:c,...d}){let e;if(void 0!==a){e=ao(a);let f=b??d.trustedOrigin;if(void 0===f||!af(d.url,f)){let a=new Set([...at,...(c??[]).map(a=>a.toLowerCase())]);e=new Headers([...e].filter(([b])=>a.has(b)))}}return as({...d,headers:e})}let av=0x80000000;async function aw({response:a,url:b,maxBytes:c=av}){let d=a.headers.get("content-length");if(null!=d){let e=parseInt(d,10);if(!isNaN(e)&&e>c)throw await aa(a),new ae({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes (Content-Length: ${e}).`})}let e=a.body;if(null==e)return new Uint8Array(0);let f=e.getReader(),g=[],h=0;try{for(;;){let{done:a,value:d}=await f.read();if(a)break;if((h+=d.length)>c)throw new ae({url:b,message:`Download of ${b} exceeded maximum size of ${c} bytes.`});g.push(d)}}finally{try{await f.cancel()}catch{}finally{f.releaseLock()}}let i=new Uint8Array(h),j=0;for(let a of g)i.set(a,j),j+=a.length;return i}async function ax(a,b){try{let c=await au({url:a,abortSignal:b?.abortSignal});if(!c.ok)throw await aa(c),new ae({url:a,statusCode:c.status,statusText:c.statusText});let d=await aw({response:c,url:a,maxBytes:b?.maxBytes??0x80000000}),e=c.headers.get("content-type")??void 0;return new Blob([d],e?{type:e}:void 0)}catch(b){if(ae.isInstance(b))throw b;throw new ae({url:a,cause:b})}}let ay=Symbol.for("vercel.ai.embeddingModel.maxInputBytesPerCall"),az=Symbol.for("vercel.ai.embeddingModel.providerOptionsTransformer"),aA=({prefix:a,size:b=16,alphabet:c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:d="-"}={})=>{let e=()=>{let a=c.length,d=Array(b);for(let e=0;e<b;e++)d[e]=c[Math.random()*a|0];return d.join("")};if(null==a)return e;if(c.includes(d))throw new f.Di({argument:"separator",message:`The separator "${d}" must not be part of the alphabet "${c}".`});return()=>`${a}${d}${e()}`},aB=aA(),aC=async({url:a,headers:b={},successfulResponseHandler:c,failedResponseHandler:d,abortSignal:e,fetch:g,validateUrl:h,credentialedOrigin:i,trustedOrigin:j})=>{try{let k=g??globalThis.fetch,l=P(void 0===i||af(a,i)?b:{},`ai-sdk-provider-utils/${N}`,I()),m=h?await as({url:a,headers:l,abortSignal:e,fetch:g,trustedOrigin:j}):await k(a,{method:"GET",headers:l,signal:e}),n=H(m);if(!m.ok){let b;try{b=await d({response:m,url:a,requestBodyValues:{}})}catch(b){if(J(b)||f.hL.isInstance(b))throw b;throw new f.hL({message:"Failed to process error response",cause:b,statusCode:m.status,url:a,responseHeaders:n,requestBodyValues:{}})}throw b.value}try{return await c({response:m,url:a,requestBodyValues:{}})}catch(b){if(b instanceof Error&&(J(b)||f.hL.isInstance(b)))throw b;throw new f.hL({message:"Failed to process successful response",cause:b,statusCode:m.status,url:a,responseHeaders:n,requestBodyValues:{}})}}catch(b){throw M({error:b,url:a,requestBodyValues:{}})}};function aD({messages:a,schema:b,schemaPrefix:c,schemaSuffix:d}){let e=a[0]?.role==="system"?{...a[0]}:{role:"system",content:""};return e.content=function({prompt:a,schema:b,schemaPrefix:c=null!=b?"JSON schema:":void 0,schemaSuffix:d=null!=b?"You MUST answer with a JSON object that matches the JSON schema above.":"You MUST answer with JSON."}){return[null!=a&&a.length>0?a:void 0,null!=a&&a.length>0?"":void 0,c,null!=b?JSON.stringify(b):void 0,d].filter(a=>null!=a).join("\n")}({prompt:e.content,schema:b,schemaPrefix:c,schemaSuffix:d}),[e,...a[0]?.role==="system"?a.slice(1):a]}function aE(a){return globalThis.Buffer?.isBuffer(a)??!1}function aF(a){return null!=a}function aG(a){return null!=a&&"object"==typeof a&&!Array.isArray(a)}function aH({mediaType:a,url:b,supportedUrls:c}){b=b.toLowerCase();let d=!(a=a.toLowerCase()).includes("/");return Object.entries(c).map(([a,b])=>{let c=a.toLowerCase();return"*"===c||"*/*"===c?{mediaTypePrefix:"",regexes:b}:{mediaTypePrefix:c.replace(/\*/,""),regexes:b}}).filter(({mediaTypePrefix:b})=>""===b||(d?`${a}/`===b:b.endsWith("/")?a.startsWith(b):a===b)).flatMap(({regexes:a})=>a).some(a=>(function(a,b){if(!a.global&&!a.sticky)return a.test(b);let c=a.lastIndex;a.lastIndex=0;try{return a.test(b)}finally{a.lastIndex=c}})(a,b))}function aI({apiKey:a,environmentVariableName:b,apiKeyParameterName:c="apiKey",description:d}){if("string"==typeof a)return a;if(null!=a)throw new f.Kq({message:`${d} API key must be a string.`});if("u"<typeof process)throw new f.Kq({message:`${d} API key is missing. Pass it using the '${c}' parameter. Environment variables are not supported in this environment.`});if(null==(a=process.env[b]))throw new f.Kq({message:`${d} API key is missing. Pass it using the '${c}' parameter or the ${b} environment variable.`});if("string"!=typeof a)throw new f.Kq({message:`${d} API key must be a string. The value of the ${b} environment variable is not a string.`});return a}function aJ({settingValue:a,environmentVariableName:b}){return"string"==typeof a?a:null!=a||"u"<typeof process?void 0:null!=(a=process.env[b])&&"string"==typeof a?a:void 0}function aK(a){return void 0!==a&&"provider-default"!==a}function aL({reasoning:a,effortMap:b,warnings:c}){let d=b[a];return null==d?void c.push({type:"unsupported",feature:"reasoning",details:`reasoning "${a}" is not supported by this model.`}):(d!==a&&c.push({type:"compatibility",feature:"reasoning",details:`reasoning "${a}" is not directly supported by this model. mapped to effort "${d}".`}),d)}let aM={minimal:.02,low:.1,medium:.3,high:.6,xhigh:.9,max:.95};function aN({reasoning:a,maxOutputTokens:b,maxReasoningBudget:c,minReasoningBudget:d=1024,budgetPercentages:e=aM,warnings:f}){let g=e[a];return null==g?void f.push({type:"unsupported",feature:"reasoning",details:`reasoning "${a}" is not supported by this model.`}):Math.min(c,Math.max(d,Math.round(b*g)))}function aO(a){let[b,c=""]=a.toLowerCase().split("/");return({mpeg:"mp3","x-wav":"wav",opus:"ogg",mp4:"m4a","x-m4a":"m4a"})[c]??c}function aP({total:a,pending:b,completed:c,failed:d}){if(aQ(a)&&aQ(b)&&aQ(c)&&aQ(d)&&b+c+d===a)return{total:a,pending:b,completed:c,failed:d}}function aQ(a){return null!=a&&Number.isSafeInteger(a)&&a>=0}let aR=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,aS=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function aT(a){let b=JSON.parse(a);return null===b||"object"!=typeof b||!1===aR.test(a)&&!1===aS.test(a)?b:function(a){let b=[a];for(;b.length;){let a=b;for(let c of(b=[],a)){if(Object.prototype.hasOwnProperty.call(c,"__proto__")||Object.prototype.hasOwnProperty.call(c,"constructor")&&null!==c.constructor&&"object"==typeof c.constructor&&Object.prototype.hasOwnProperty.call(c.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let a in c){let d=c[a];d&&"object"==typeof d&&b.push(d)}}}return a}(b)}function aU(a){let{stackTraceLimit:b}=Error;try{Error.stackTraceLimit=0}catch{return aT(a)}try{return aT(a)}finally{Error.stackTraceLimit=b}}function aV(a){if("object"===a.type||Array.isArray(a.type)&&a.type.includes("object")){let{additionalProperties:b}=a;a.additionalProperties=null!=b&&"boolean"!=typeof b&&aW(b);let{properties:c}=a;if(null!=c)for(let a of Object.keys(c))c[a]=aW(c[a])}null!=a.items&&(a.items=Array.isArray(a.items)?a.items.map(aW):aW(a.items)),null!=a.anyOf&&(a.anyOf=a.anyOf.map(aW)),null!=a.allOf&&(a.allOf=a.allOf.map(aW)),null!=a.oneOf&&(a.oneOf=a.oneOf.map(aW));let{definitions:b}=a;if(null!=b)for(let a of Object.keys(b))b[a]=aW(b[a]);return a}function aW(a){return"boolean"==typeof a?a:aV(a)}let aX=Symbol("Let zodToJsonSchema decide on which parser to use"),aY={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"};function aZ(a,b){return bh(a.type._def,b)}let a$=/^[cC][^\s-]{8,}$/,a_=/^[0-9a-z]+$/,a0=/^[0-9A-HJKMNP-TV-Z]{26}$/,a1=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9-]*\.)+[a-zA-Z]{2,}$/,a2=()=>(void 0===e&&(e=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),e),a3=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,a4=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,a5=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,a6=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,a7=/^[a-zA-Z0-9_-]{21}$/,a8=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function a9(a,b){let c={type:"string"};if(a.checks)for(let d of a.checks)switch(d.kind){case"min":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value;break;case"max":c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"email":switch(b.emailStrategy){case"format:email":bc(c,"email",d.message,b);break;case"format:idn-email":bc(c,"idn-email",d.message,b);break;case"pattern:zod":bd(c,a1,d.message,b)}break;case"url":bc(c,"uri",d.message,b);break;case"uuid":bc(c,"uuid",d.message,b);break;case"regex":bd(c,d.regex,d.message,b);break;case"cuid":bd(c,a$,d.message,b);break;case"cuid2":bd(c,a_,d.message,b);break;case"startsWith":bd(c,RegExp(`^${ba(d.value,b)}`),d.message,b);break;case"endsWith":bd(c,RegExp(`${ba(d.value,b)}$`),d.message,b);break;case"datetime":bc(c,"date-time",d.message,b);break;case"date":bc(c,"date",d.message,b);break;case"time":bc(c,"time",d.message,b);break;case"duration":bc(c,"duration",d.message,b);break;case"length":c.minLength="number"==typeof c.minLength?Math.max(c.minLength,d.value):d.value,c.maxLength="number"==typeof c.maxLength?Math.min(c.maxLength,d.value):d.value;break;case"includes":bd(c,RegExp(ba(d.value,b)),d.message,b);break;case"ip":"v6"!==d.version&&bc(c,"ipv4",d.message,b),"v4"!==d.version&&bc(c,"ipv6",d.message,b);break;case"base64url":bd(c,a6,d.message,b);break;case"jwt":bd(c,a8,d.message,b);break;case"cidr":"v6"!==d.version&&bd(c,a3,d.message,b),"v4"!==d.version&&bd(c,a4,d.message,b);break;case"emoji":bd(c,a2(),d.message,b);break;case"ulid":bd(c,a0,d.message,b);break;case"base64":switch(b.base64Strategy){case"format:binary":bc(c,"binary",d.message,b);break;case"contentEncoding:base64":c.contentEncoding="base64";break;case"pattern:zod":bd(c,a5,d.message,b)}break;case"nanoid":bd(c,a7,d.message,b)}return c}function ba(a,b){return"escape"===b.patternStrategy?function(a){let b="";for(let c=0;c<a.length;c++)bb.has(a[c])||(b+="\\"),b+=a[c];return b}(a):a}let bb=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function bc(a,b,c,d){a.format||a.anyOf?.some(a=>a.format)?(a.anyOf||(a.anyOf=[]),a.format&&(a.anyOf.push({format:a.format}),delete a.format),a.anyOf.push({format:b,...c&&d.errorMessages&&{errorMessage:{format:c}}})):a.format=b}function bd(a,b,c,d){a.pattern||a.allOf?.some(a=>a.pattern)?(a.allOf||(a.allOf=[]),a.pattern&&(a.allOf.push({pattern:a.pattern}),delete a.pattern),a.allOf.push({pattern:be(b,d),...c&&d.errorMessages&&{errorMessage:{pattern:c}}})):a.pattern=be(b,d)}function be(a,b){if(!b.applyRegexFlags||!a.flags)return a.source;let c={i:a.flags.includes("i"),m:a.flags.includes("m"),s:a.flags.includes("s")},d=c.i?a.source.toLowerCase():a.source,e="",f=!1,g=!1,h=!1;for(let a=0;a<d.length;a++){if(f){e+=d[a],f=!1;continue}if(c.i){if(g){if(d[a].match(/[a-z]/)){h?(e+=d[a],e+=`${d[a-2]}-${d[a]}`.toUpperCase(),h=!1):"-"===d[a+1]&&d[a+2]?.match(/[a-z]/)?(e+=d[a],h=!0):e+=`${d[a]}${d[a].toUpperCase()}`;continue}}else if(d[a].match(/[a-z]/)){e+=`[${d[a]}${d[a].toUpperCase()}]`;continue}}if(c.m){if("^"===d[a]){e+=`(^|(?<=[\r
13
+ ]))`;continue}else if("$"===d[a]){e+=`($|(?=[\r
14
+ ]))`;continue}}if(c.s&&"."===d[a]){e+=g?`${d[a]}\r
15
+ `:`[${d[a]}\r
16
+ ]`;continue}e+=d[a],"\\"===d[a]?f=!0:g&&"]"===d[a]?g=!1:g||"["!==d[a]||(g=!0)}try{new RegExp(e)}catch{return console.warn(`Could not convert regex pattern at ${b.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),a.source}return e}function bf(a,b){let c={type:"object",additionalProperties:bh(a.valueType._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]})??b.allowedAdditionalProperties};if(a.keyType?._def.typeName==="ZodString"&&a.keyType._def.checks?.length){let{type:d,...e}=a9(a.keyType._def,b);return{...c,propertyNames:e}}if(a.keyType?._def.typeName==="ZodEnum")return{...c,propertyNames:{enum:a.keyType._def.values}};if(a.keyType?._def.typeName==="ZodBranded"&&"ZodString"===a.keyType._def.type._def.typeName&&a.keyType._def.type._def.checks?.length){let{type:d,...e}=aZ(a.keyType._def,b);return{...c,propertyNames:e}}return c}let bg={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function bh(a,b,c=!1){let d=b.seen.get(a);if(b.override){let e=b.override?.(a,b,d,c);if(e!==aX)return e}if(d&&!c){let a=bi(d,b);if(void 0!==a)return a}let e={def:a,path:b.currentPath,jsonSchema:void 0};b.seen.set(a,e);let f=((a,b,c)=>{switch(b){case"ZodString":return a9(a,c);case"ZodNumber":let d={type:"number"};if(!a.checks)return d;for(let b of a.checks)switch(b.kind){case"int":d.type="integer";break;case"min":b.inclusive?d.minimum=b.value:d.exclusiveMinimum=b.value;break;case"max":b.inclusive?d.maximum=b.value:d.exclusiveMaximum=b.value;break;case"multipleOf":d.multipleOf=b.value}return d;case"ZodObject":return function(a,b){let c={type:"object",properties:{}},d=[],e=a.shape();for(let a in e){let f=e[a];if(void 0===f||void 0===f._def)continue;let g=function(a){try{return a.isOptional()}catch{return!0}}(f),h=bh(f._def,{...b,currentPath:[...b.currentPath,"properties",a],propertyPath:[...b.currentPath,"properties",a]});void 0!==h&&(c.properties[a]=h,g||d.push(a))}d.length&&(c.required=d);let f=function(a,b){if("ZodNever"!==a.catchall._def.typeName)return bh(a.catchall._def,{...b,currentPath:[...b.currentPath,"additionalProperties"]});switch(a.unknownKeys){case"passthrough":return b.allowedAdditionalProperties;case"strict":return b.rejectedAdditionalProperties;case"strip":return"strict"===b.removeAdditionalStrategy?b.allowedAdditionalProperties:b.rejectedAdditionalProperties}}(a,b);return void 0!==f&&(c.additionalProperties=f),c}(a,c);case"ZodBigInt":let e={type:"integer",format:"int64"};if(!a.checks)return e;for(let b of a.checks)switch(b.kind){case"min":b.inclusive?e.minimum=b.value:e.exclusiveMinimum=b.value;break;case"max":b.inclusive?e.maximum=b.value:e.exclusiveMaximum=b.value;break;case"multipleOf":e.multipleOf=b.value}return e;case"ZodBoolean":return{type:"boolean"};case"ZodDate":return function a(b,c,d){let e=d??c.dateStrategy;if(Array.isArray(e))return{anyOf:e.map(d=>a(b,c,d))};switch(e){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":var f=b;let g={type:"integer",format:"unix-time"};for(let a of f.checks)switch(a.kind){case"min":g.minimum=a.value;break;case"max":g.maximum=a.value}return g}}(a,c);case"ZodUndefined":case"ZodNaN":case"ZodNever":return{not:{}};case"ZodNull":return{type:"null"};case"ZodArray":let f;return f={type:"array"},a.type?._def&&a.type?._def?.typeName!=="ZodAny"&&(f.items=bh(a.type._def,{...c,currentPath:[...c.currentPath,"items"]})),a.minLength&&(f.minItems=a.minLength.value),a.maxLength&&(f.maxItems=a.maxLength.value),a.exactLength&&(f.minItems=a.exactLength.value,f.maxItems=a.exactLength.value),f;case"ZodUnion":case"ZodDiscriminatedUnion":var g,h;let i,j=a.options instanceof Map?Array.from(a.options.values()):a.options;if(j.every(a=>a._def.typeName in bg&&(!a._def.checks||!a._def.checks.length))){let a=j.reduce((a,b)=>{let c=bg[b._def.typeName];return c&&!a.includes(c)?[...a,c]:a},[]);return{type:a.length>1?a:a[0]}}if(j.every(a=>"ZodLiteral"===a._def.typeName&&!a.description)){let a=j.reduce((a,b)=>{let c=typeof b._def.value;switch(c){case"string":case"number":case"boolean":return[...a,c];case"bigint":return[...a,"integer"];case"object":if(null===b._def.value)return[...a,"null"];default:return a}},[]);if(a.length===j.length){let b=a.filter((a,b,c)=>c.indexOf(a)===b);return{type:b.length>1?b:b[0],enum:j.reduce((a,b)=>a.includes(b._def.value)?a:[...a,b._def.value],[])}}}else if(j.every(a=>"ZodEnum"===a._def.typeName))return{type:"string",enum:j.reduce((a,b)=>[...a,...b._def.values.filter(b=>!a.includes(b))],[])};return g=a,h=c,(i=(g.options instanceof Map?Array.from(g.options.values()):g.options).map((a,b)=>bh(a._def,{...h,currentPath:[...h.currentPath,"anyOf",`${b}`]})).filter(a=>!!a&&(!h.strictUnions||"object"==typeof a&&Object.keys(a).length>0))).length?{anyOf:i}:void 0;case"ZodIntersection":let k,l;return k=[bh(a.left._def,{...c,currentPath:[...c.currentPath,"allOf","0"]}),bh(a.right._def,{...c,currentPath:[...c.currentPath,"allOf","1"]})].filter(a=>!!a),l=[],k.forEach(a=>{if((!("type"in a)||"string"!==a.type)&&"allOf"in a)l.push(...a.allOf);else{let b=a;if("additionalProperties"in a&&!1===a.additionalProperties){let{additionalProperties:c,...d}=a;b=d}l.push(b)}}),l.length?{allOf:l}:void 0;case"ZodTuple":return a.rest?{type:"array",minItems:a.items.length,items:a.items.map((a,b)=>bh(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[]),additionalItems:bh(a.rest._def,{...c,currentPath:[...c.currentPath,"additionalItems"]})}:{type:"array",minItems:a.items.length,maxItems:a.items.length,items:a.items.map((a,b)=>bh(a._def,{...c,currentPath:[...c.currentPath,"items",`${b}`]})).reduce((a,b)=>void 0===b?a:[...a,b],[])};case"ZodRecord":return bf(a,c);case"ZodLiteral":let m;return"bigint"!=(m=typeof a.value)&&"number"!==m&&"boolean"!==m&&"string"!==m?{type:Array.isArray(a.value)?"array":"object"}:{type:"bigint"===m?"integer":m,const:a.value};case"ZodEnum":return{type:"string",enum:Array.from(a.values)};case"ZodNativeEnum":let n,o,p;return n=a.values,{type:1===(p=Array.from(new Set((o=Object.keys(a.values).filter(a=>"number"!=typeof n[n[a]]).map(a=>n[a])).map(a=>typeof a)))).length?"string"===p[0]?"string":"number":["string","number"],enum:o};case"ZodNullable":if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(a.innerType._def.typeName)&&(!a.innerType._def.checks||!a.innerType._def.checks.length))return{type:[bg[a.innerType._def.typeName],"null"]};let q=bh(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","0"]});return q&&{anyOf:[q,{type:"null"}]};case"ZodOptional":if(c.currentPath.toString()===c.propertyPath?.toString())return bh(a.innerType._def,c);let r=bh(a.innerType._def,{...c,currentPath:[...c.currentPath,"anyOf","1"]});return r?{anyOf:[{not:{}},r]}:{};case"ZodMap":return"record"===c.mapStrategy?bf(a,c):{type:"array",maxItems:125,items:{type:"array",items:[bh(a.keyType._def,{...c,currentPath:[...c.currentPath,"items","items","0"]})||{},bh(a.valueType._def,{...c,currentPath:[...c.currentPath,"items","items","1"]})||{}],minItems:2,maxItems:2}};case"ZodSet":let s;return s={type:"array",uniqueItems:!0,items:bh(a.valueType._def,{...c,currentPath:[...c.currentPath,"items"]})},a.minSize&&(s.minItems=a.minSize.value),a.maxSize&&(s.maxItems=a.maxSize.value),s;case"ZodLazy":return()=>a.getter()._def;case"ZodPromise":return bh(a.type._def,c);case"ZodEffects":return"input"===c.effectStrategy?bh(a.schema._def,c):{};case"ZodAny":case"ZodUnknown":return{};case"ZodDefault":return{...bh(a.innerType._def,c),default:a.defaultValue()};case"ZodBranded":return aZ(a,c);case"ZodReadonly":case"ZodCatch":return bh(a.innerType._def,c);case"ZodPipeline":if("input"===c.pipeStrategy)return bh(a.in._def,c);if("output"===c.pipeStrategy)return bh(a.out._def,c);let t=bh(a.in._def,{...c,currentPath:[...c.currentPath,"allOf","0"]});return{allOf:[t,bh(a.out._def,{...c,currentPath:[...c.currentPath,"allOf",t?"1":"0"]})].filter(a=>void 0!==a)};default:return}})(a,a.typeName,b),g="function"==typeof f?bh(f(),b):f;if(g&&bj(a,b,g),b.postProcess){let c=b.postProcess(g,a,b);return e.jsonSchema=g,c}return e.jsonSchema=g,g}let bi=(a,b)=>{switch(b.$refStrategy){case"root":return{$ref:a.path.join("/")};case"relative":return{$ref:((a,b)=>{let c=0;for(;c<a.length&&c<b.length&&a[c]===b[c];c++);return[(a.length-c).toString(),...b.slice(c)].join("/")})(b.currentPath,a.path)};case"none":case"seen":if(a.path.length<b.currentPath.length&&a.path.every((a,c)=>b.currentPath[c]===a))return console.warn(`Recursive reference detected at ${b.currentPath.join("/")}! Defaulting to any`),{};return"seen"===b.$refStrategy?{}:void 0}},bj=(a,b,c)=>(a.description&&(c.description=a.description),c),bk=Symbol.for("vercel.ai.schema");function bl(a){let b;return()=>(null==b&&(b=a()),b)}function bm(a,{validate:b}={}){return{[bk]:!0,_type:void 0,get jsonSchema(){return"function"==typeof a&&(a=a()),a},validate:b}}function bn(a){var b;return null==a?bm({type:"object",properties:{},additionalProperties:!1}):"object"==typeof a&&null!==a&&bk in a&&!0===a[bk]&&"jsonSchema"in a&&"validate"in a?a:"~standard"in a?"zod"===a["~standard"].vendor?bo(a):(b=a,bm(()=>{if(null==b["~standard"].jsonSchema)throw Error(`Standard schema vendor '${b["~standard"].vendor}' does not support JSON Schema conversion.`);return aV(b["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async a=>{let c=await b["~standard"].validate(a);return"value"in c?{success:!0,value:c.value}:{success:!1,error:new f.iM({value:a,cause:c.issues})}}})):a()}function bo(a,b){let c;if("_zod"in a){let c;return c=b?.useReferences??!1,bm(()=>aV((0,h.bl)(a,{target:"draft-7",io:"input",reused:c?"ref":"inline"})),{validate:async b=>{let c=await (0,g.bp)(a,b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}return c=b?.useReferences??!1,bm(()=>((a,b)=>{let c,d,e=(d=void 0!==(c="string"==typeof b?{...aY,name:b}:{...aY,...b}).name?[...c.basePath,c.definitionPath,c.name]:c.basePath,{...c,currentPath:d,propertyPath:void 0,seen:new Map(Object.entries(c.definitions).map(([a,b])=>[b._def,{def:b._def,path:[...c.basePath,c.definitionPath,a],jsonSchema:void 0}]))}),f="object"==typeof b&&b.definitions?Object.entries(b.definitions).reduce((a,[b,c])=>({...a,[b]:bh(c._def,{...e,currentPath:[...e.basePath,e.definitionPath,b]},!0)??{}}),{}):void 0,g="string"==typeof b?b:b?.nameStrategy==="title"?void 0:b?.name,h=bh(a._def,void 0===g?e:{...e,currentPath:[...e.basePath,e.definitionPath,g]},!1)??{},i="object"==typeof b&&void 0!==b.name&&"title"===b.nameStrategy?b.name:void 0;void 0!==i&&(h.title=i);let j=void 0===g?f?{...h,[e.definitionPath]:f}:h:{$ref:[..."relative"===e.$refStrategy?[]:e.basePath,e.definitionPath,g].join("/"),[e.definitionPath]:{...f,[g]:h}};return j.$schema="http://json-schema.org/draft-07/schema#",j})(a,{$refStrategy:c?"root":"none"}),{validate:async b=>{let c=await a.safeParseAsync(b);return c.success?{success:!0,value:c.data}:{success:!1,error:c.error}}})}async function bp({value:a,schema:b,context:c}){let d=await bq({value:a,schema:b,context:c});if(!d.success)throw f.iM.wrap({value:a,cause:d.error,context:c});return d.value}async function bq({value:a,schema:b,context:c}){let d=bn(b);try{if(null==d.validate)return{success:!0,value:a,rawValue:a};let b=await d.validate(a);if(b.success)return{success:!0,value:b.value,rawValue:a};return{success:!1,error:f.iM.wrap({value:a,cause:b.error,context:c}),rawValue:a}}catch(b){return{success:!1,error:f.iM.wrap({value:a,cause:b,context:c}),rawValue:a}}}async function br({text:a,schema:b}){try{let c=aU(a);if(null==b)return c;return await bp({value:c,schema:b})}catch(b){if(f.u6.isInstance(b)||f.iM.isInstance(b))throw b;throw new f.u6({text:a,cause:b})}}async function bs({text:a,schema:b}){try{let c=aU(a);if(null==b)return{success:!0,value:c,rawValue:c};return await bq({value:c,schema:b})}catch(b){return{success:!1,error:f.u6.isInstance(b)?b:new f.u6({text:a,cause:b}),rawValue:void 0}}}function bt({stream:a,schema:b}){return a.pipeThrough(new TextDecoderStream).pipeThrough(new i.Z).pipeThrough(new TransformStream({async transform({data:a},c){"[DONE]"!==a&&c.enqueue(await bs({text:a,schema:b}))}}))}async function bu({provider:a,providerOptions:b,schema:c}){if(b?.[a]==null)return;let d=await bq({value:b[a],schema:c});if(!d.success)throw new f.Di({argument:"providerOptions",message:`invalid ${a} provider options`,cause:d.error});return d.value}let bv=()=>globalThis.fetch;function bw(a){return a.replace(/[\r\n]/g,"").replace(/\\/g,"\\\\").replace(/"/g,'\\"')}let bx=async({url:a,headers:b={},parts:c,failedResponseHandler:d,successfulResponseHandler:e,abortSignal:g,fetch:h=bv()})=>{let i,j,k,l,m=`ai-sdk-multipart-${aB()}`,n=Object.fromEntries(c.map(a=>[a.name,"field"===a.type?a.value:`<file:${a.filename??a.name}>`])),o=(j=new TextEncoder,k=!1,l=new Set,{stream:s(async function*(){for(let a of c){if(k)return;let b=`--${m}\r
17
+ Content-Disposition: form-data; name="${bw(a.name)}"`;if("field"===a.type){yield j.encode(`${b}\r
18
+ \r
19
+ ${a.value}\r
20
+ `);continue}let c=`; filename="${bw(a.filename??"blob")}"`,d=(a.mediaType??"application/octet-stream").replace(/[\r\n]/g,"");if(yield j.encode(`${b}${c}\r
21
+ Content-Type: ${d}\r
22
+ \r
23
+ `),a.content instanceof Uint8Array)yield a.content;else{let b=a.content.getReader();i=b,l.add(a.content);let c=!1;try{for(;;){let{done:a,value:d}=await b.read();if(a||k){c=a;break}yield d}}finally{i=void 0,c||await b.cancel().catch(()=>{}),b.releaseLock()}if(k)return}yield j.encode("\r\n")}yield j.encode(`--${m}--\r
24
+ `)}()),async dispose(a){if(k)return;k=!0;let b=i;for(let d of(null!=b&&await b.cancel(a).catch(()=>{}),c))"file"!==d.type||d.content instanceof Uint8Array||l.has(d.content)||await d.content.cancel(a).catch(()=>{})}});try{let c=await h(a,{method:"POST",headers:P({...b,"Content-Type":`multipart/form-data; boundary=${m}`},`ai-sdk-provider-utils/${N}`,I()),body:o.stream,duplex:"half",signal:g}),i=H(c);if(!c.ok){let b;try{b=await d({response:c,url:a,requestBodyValues:n})}catch(b){if(J(b)||f.hL.isInstance(b))throw b;throw new f.hL({message:"Failed to process error response",cause:b,statusCode:c.status,url:a,responseHeaders:i,requestBodyValues:n})}throw b.value}try{return await e({response:c,url:a,requestBodyValues:n})}catch(b){if(b instanceof Error&&(J(b)||f.hL.isInstance(b)))throw b;throw new f.hL({message:"Failed to process successful response",cause:b,statusCode:c.status,url:a,responseHeaders:i,requestBodyValues:n})}}catch(b){throw await o.dispose(b),M({error:b,url:a,requestBodyValues:n})}},by=()=>globalThis.fetch,bz=async({url:a,headers:b,body:c,failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g})=>await bB({url:a,headers:{"Content-Type":"application/json",...b},body:{content:JSON.stringify(c),values:c},failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g}),bA=async({url:a,headers:b,formData:c,failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g})=>await bB({url:a,headers:b,body:{content:c,values:Object.fromEntries(c.entries())},failedResponseHandler:d,successfulResponseHandler:e,abortSignal:f,fetch:g}),bB=async({url:a,headers:b={},body:c,successfulResponseHandler:d,failedResponseHandler:e,abortSignal:g,fetch:h=by()})=>{try{let i=await h(a,{method:"POST",headers:P(b,`ai-sdk-provider-utils/${N}`,I()),body:c.content,signal:g}),j=H(i);if(!i.ok){let b;try{b=await e({response:i,url:a,requestBodyValues:c.values})}catch(b){if(J(b)||f.hL.isInstance(b))throw b;throw new f.hL({message:"Failed to process error response",cause:b,statusCode:i.status,url:a,responseHeaders:j,requestBodyValues:c.values})}throw b.value}try{return await d({response:i,url:a,requestBodyValues:c.values})}catch(b){if(b instanceof Error&&(J(b)||f.hL.isInstance(b)))throw b;throw new f.hL({message:"Failed to process successful response",cause:b,statusCode:i.status,url:a,responseHeaders:j,requestBodyValues:c.values})}}catch(b){throw M({error:b,url:a,requestBodyValues:c.values})}};function bC(a){return a}function bD(a){return{...a,type:"dynamic"}}function bE({id:a,inputSchema:b}){return({execute:c,outputSchema:d,needsApproval:e,toModelOutput:f,onInputStart:g,onInputDelta:h,onInputAvailable:i,...j})=>({type:"provider",isProviderExecuted:!1,id:a,args:j,inputSchema:b,outputSchema:d,execute:c,needsApproval:e,toModelOutput:f,onInputStart:g,onInputDelta:h,onInputAvailable:i})}function bF({id:a,inputSchema:b,outputSchema:c}){return({execute:d,needsApproval:e,toModelOutput:f,onInputStart:g,onInputDelta:h,onInputAvailable:i,...j})=>({type:"provider",isProviderExecuted:!1,id:a,args:j,inputSchema:b,outputSchema:c,execute:d,needsApproval:e,toModelOutput:f,onInputStart:g,onInputDelta:h,onInputAvailable:i})}function bG({id:a,inputSchema:b,outputSchema:c,supportsDeferredResults:d}){return({onInputStart:e,onInputDelta:f,onInputAvailable:g,...h})=>({type:"provider",isProviderExecuted:!0,id:a,args:h,inputSchema:b,outputSchema:c,onInputStart:e,onInputDelta:f,onInputAvailable:g,supportsDeferredResults:d})}async function bH(a){return"function"==typeof a&&(a=a()),a}function bI({part:a}){if(_(a.mediaType))return a.mediaType;if("data"===a.data.type){let b=Z({data:a.data.data,topLevelType:$(a.mediaType)});if(b)return b;throw new f.b8({functionality:`file of media type "${a.mediaType}" must specify subtype since it could not be auto-detected`})}throw new f.b8({functionality:`file of media type "${a.mediaType}" must specify subtype since it is not passed as inline bytes`})}function bJ({reference:a,provider:b}){let c=a[b];if(null!=c)return c;throw new f.vb({provider:b,reference:a})}let bK=({maxRetries:a=2,initialDelayInMs:b=2e3,backoffFactor:c=2,abortSignal:d,shouldRetry:e,getDelayInMs:f=({exponentialBackoffDelay:a})=>a,createRetryError:g=({message:a})=>Error(a)})=>async h=>bL(h,{maxRetries:a,delayInMs:b,backoffFactor:c,abortSignal:d,shouldRetry:e,getDelayInMs:f,createRetryError:g});async function bL(a,{maxRetries:b,delayInMs:c,backoffFactor:d,abortSignal:e,shouldRetry:g,getDelayInMs:h,createRetryError:i},j=[]){try{return await a()}catch(o){if(J(o)||0===b)throw o;let k=(0,f.u1)(o),m=[...j,o],n=m.length;if(n>b)throw i({message:`Failed after ${n} attempts. Last error: ${k}`,reason:"maxRetriesExceeded",errors:m});if(await g(o)&&n<=b)return await l(h({error:o,exponentialBackoffDelay:c}),{abortSignal:e}),bL(a,{maxRetries:b,delayInMs:d*c,backoffFactor:d,abortSignal:e,shouldRetry:g,getDelayInMs:h,createRetryError:i},m);if(1===n)throw o;throw i({message:`Failed after ${n} attempts with non-retryable error: '${k}'`,reason:"errorNotRetryable",errors:m})}}let bM=new TextDecoder,bN=0x4000000;function bO({stream:a,url:b,requestBodyValues:c,statusCode:d,responseHeaders:e}){let g=a.getReader(),h=!1,i=()=>{h||(g.releaseLock(),h=!0)};return new ReadableStream({async pull(a){try{let{done:b,value:c}=await g.read();b?(i(),a.close()):a.enqueue(c)}catch(g){if(i(),J(g))return void a.error(g);a.error(M({error:new f.hL({message:"Failed to process successful response",cause:g,statusCode:d,url:b,responseHeaders:e,requestBodyValues:c}),url:b,requestBodyValues:c}))}},async cancel(a){try{await g.cancel(a)}finally{i()}}})}async function bP({response:a,url:b}){return bM.decode(await aw({response:a,url:b}))}let bQ=({errorSchema:a,errorToMessage:b,isRetryable:c})=>async({response:d,url:e,requestBodyValues:g})=>{let h=await bP({response:d,url:e}),i=H(d);if(""===h.trim())return{responseHeaders:i,value:new f.hL({message:d.statusText,url:e,requestBodyValues:g,statusCode:d.status,responseHeaders:i,responseBody:h,isRetryable:c?.(d)})};try{let j=await br({text:h,schema:a});return{responseHeaders:i,value:new f.hL({message:b(j),url:e,requestBodyValues:g,statusCode:d.status,responseHeaders:i,responseBody:h,data:j,isRetryable:c?.(d,j)})}}catch{return{responseHeaders:i,value:new f.hL({message:d.statusText,url:e,requestBodyValues:g,statusCode:d.status,responseHeaders:i,responseBody:h,isRetryable:c?.(d)})}}},bR=a=>async({response:b,url:c,requestBodyValues:d})=>{let e=H(b);if(null==b.body)throw new f.Tt({});return{responseHeaders:e,value:bt({stream:bO({stream:b.body,url:c,requestBodyValues:d,statusCode:b.status,responseHeaders:e}),schema:a})}},bS=a=>async({response:b,url:c,requestBodyValues:d})=>{let e=await bP({response:b,url:c}),g=await bs({text:e,schema:a}),h=H(b);if(!g.success)throw new f.hL({message:"Invalid JSON response",cause:g.error,statusCode:b.status,responseHeaders:h,responseBody:e,url:c,requestBodyValues:d});return{responseHeaders:h,value:g.value,rawValue:g.rawValue}},bT=(a,{maxLineBytes:b=bN}={})=>{if(!Number.isSafeInteger(b)||b<=0)throw new f.Di({argument:"maxLineBytes",message:"maxLineBytes must be a positive safe integer."});return async({response:c,url:d})=>{let e=H(c);if(null==c.body)throw new f.Tt({});return{responseHeaders:e,value:bU({stream:c.body,schema:a,url:d,maxLineBytes:b})}}};async function*bU({stream:a,schema:b,url:c,maxLineBytes:d}){let e=a.getReader(),f=new TextDecoder,g="",h=0,i=!1;try{for(;;){let{done:a,value:j}=await e.read();if(a){i=!0,g+=f.decode();break}let k=0;for(;k<j.length;){let a=j.indexOf(10,k),e=-1===a?j.length:a;if((h+=e-k)>d)throw new ae({message:`JSON Lines response exceeded maximum line size of ${d} bytes.`,url:c});let i=-1===a?e:a+1;if(g+=f.decode(j.subarray(k,i),{stream:!0}),-1===a)break;let l=g.slice(0,-1).replace(/\r$/,"");g="",h=0,k=i,l.trim().length>0&&(yield await br({text:l,schema:b}))}}let a=g.replace(/\r$/,"");a.trim().length>0&&(yield await br({text:a,schema:b}))}finally{i||await e.cancel().catch(()=>{}),e.releaseLock()}}let bV=()=>async({response:a,url:b,requestBodyValues:c})=>{let d=H(a);if(!a.body)throw new f.hL({message:"Response body is empty",url:b,requestBodyValues:c,statusCode:a.status,responseHeaders:d,responseBody:void 0});try{let b=await a.arrayBuffer();return{responseHeaders:d,value:new Uint8Array(b)}}catch(e){throw new f.hL({message:"Failed to read response as array buffer",url:b,requestBodyValues:c,statusCode:a.status,responseHeaders:d,responseBody:void 0,cause:e})}},bW=()=>async({response:a,url:b,requestBodyValues:c})=>{let d=H(a);if(null==a.body)throw new f.Tt({});return{responseHeaders:d,value:bO({stream:a.body,url:b,requestBodyValues:c,statusCode:a.status,responseHeaders:d})}};function bX(a){if(null==a)return!0;let b=typeof a;return"string"===b||"number"===b||"boolean"===b||"function"!==b&&"symbol"!==b&&"bigint"!==b&&(Array.isArray(a)?a.every(bX):Object.getPrototypeOf(a)===Object.prototype&&Object.values(a).every(bX))}let bY="AI_SerializationError",bZ=`vercel.ai.error.${bY}`,b$=Symbol.for(bZ);var b_=class extends f.bD{constructor({message:a="Failed to serialize value.",cause:b}={}){super({name:bY,message:a,cause:b}),this[b$]=!0}static isInstance(a){return f.bD.hasMarker(a,bZ)}};function b0(a){let b={};for(let[c,d]of Object.entries(a.config))if("headers"===c){let a=function(a){let b=a;if("function"==typeof a&&(b=a()),b instanceof Promise)throw new b_({message:"Cannot serialize asynchronous model options."});return b}(d);bX(a)&&(b[c]=a)}else bX(d)&&(b[c]=d);return{modelId:a.modelId,config:b}}var b1=class{constructor(a=""){this.structure={kind:"undetermined"},this.append(a)}get hasCompleteStructuredValue(){return"structured"===this.structure.kind&&!0===this.structure.complete}append(a){let b=this.structure;for(let c of a){if("undetermined"===b.kind){if(/\s/.test(c))continue;if("{"!==c&&"["!==c){b={kind:"other"};continue}b={kind:"structured",stack:[c],inString:!1,escaped:!1,complete:!1};continue}if("structured"===b.kind&&!b.complete){if(b.inString){b.escaped?b.escaped=!1:"\\"===c?b.escaped=!0:'"'===c&&(b.inString=!1);continue}if('"'===c)b.inString=!0;else if("{"===c||"["===c)b.stack.push(c);else if("}"===c||"]"===c){let a="}"===c?"{":"[";if(b.stack.at(-1)!==a){b={kind:"other"};continue}b.stack.pop(),0===b.stack.length&&(b.complete=!0)}}}this.structure=b}},b2=class{constructor(a,b={}){this.toolCalls=[],this.toolCallsById=new Map,this.toolCallsByIndex=new Map,this.usedToolCallIds=new Set,this.nextGeneratedIdSuffixes=new Map,this.controller=a,this._generateId=b.generateId??aB,this.typeValidation=b.typeValidation??"none",this.extractMetadata=b.extractMetadata,this.buildToolCallProviderMetadata=b.buildToolCallProviderMetadata}processDelta(a){let b,c=a.function?.name,d="string"==typeof c&&0===c.trim().length,e=this.getNonBlankString(a.id),f=this.getNonBlankString(c),g=a.function?.arguments,{index:h}=a,i=this.resolveToolCall({wireId:e,index:h,name:f,hasExplicitCallStart:null!=f&&function(a){if("string"!=typeof a)return!1;let b=a.trimStart()[0];return"{"===b||"["===b}(g),hasEmptyArguments:null==g||0===g.trim().length});if("ambiguous"!==i.kind){if("new"===i.kind){if(d)return;b=this.processNewToolCall(a,{wireId:e,index:h,name:f})}else b=i.toolCall,null!=e&&this.associateWireId(b,e),this.processExistingToolCall(b,a);null!=h&&this.associateIndex(b,h)}}flush(){for(let a of this.toolCalls.every(a=>null!=a.index)?[...this.toolCalls].sort((a,b)=>a.index-b.index||a.sequence-b.sequence):this.toolCalls)a.hasFinished||this.finishToolCall(a)}resolveToolCall({wireId:a,index:b,name:c,hasExplicitCallStart:d,hasEmptyArguments:e}){let f=null!=b?this.toolCallsByIndex.get(b):void 0,g=this.filterToolCallsByName(f,c);if(null!=a){let h=this.toolCallsById.get(a);if(null!=h){if(null!=b){let a=g.filter(a=>h.has(a)),b=this.resolveMatchingToolCall(a,d);return"new"!==b.kind?b:null!=c?{kind:"new"}:null!=f?{kind:"ambiguous"}:this.resolveMatchingToolCall([...h],!1)}if(null!=c){let a=[...h].filter(a=>a.function.name===c);return this.resolveMatchingToolCall(a,d)}return this.resolveMatchingToolCall([...h],!1)}return g.length>0?d?{kind:"new"}:this.resolveMatchingToolCall(g,null!=c&&e):{kind:"new"}}if(null!=f)return this.resolveMatchingToolCall(g,d);if(null!=c)return{kind:"new"};let h=this.toolCalls.filter(a=>!a.hasFinished);return this.resolveMatchingToolCall(h,!1)}filterToolCallsByName(a,b){return null==a?[]:[...a].filter(a=>null==b||a.function.name===b)}resolveMatchingToolCall(a,b){if(0===a.length)return{kind:"new"};let c=a.filter(a=>!a.argumentState.hasCompleteStructuredValue);return b||1!==a.length?1===c.length?{kind:"existing",toolCall:c[0]}:c.length>1||!b?{kind:"ambiguous"}:{kind:"new"}:{kind:"existing",toolCall:a[0]}}processNewToolCall(a,{wireId:b,index:c,name:d}){if("required"===this.typeValidation){if("function"!==a.type)throw new f.xn({data:a,message:"Expected 'function' type."})}else if("if-present"===this.typeValidation&&null!=a.type&&"function"!==a.type)throw new f.xn({data:a,message:"Expected 'function' type."});if(null==d)throw new f.xn({data:a,message:"Expected 'function.name' to be a string."});let e=this.createToolCallId(b);this.controller.enqueue({type:"tool-input-start",id:e,toolName:d});let g=this.extractMetadata?.(a),h=a.function?.arguments??"",i={id:e,index:c??void 0,sequence:this.toolCalls.length,type:"function",function:{name:d,arguments:h},argumentState:new b1(h),hasFinished:!1,metadata:g};return this.toolCalls.push(i),null!=b&&this.associateWireId(i,b),i.function.arguments.length>0&&this.controller.enqueue({type:"tool-input-delta",id:i.id,delta:i.function.arguments}),i}associateWireId(a,b){let c=this.toolCallsById.get(b);null==c&&(c=new Set,this.toolCallsById.set(b,c)),c.add(a)}associateIndex(a,b){let c=this.toolCallsByIndex.get(b);null==c&&(c=new Set,this.toolCallsByIndex.set(b,c)),c.add(a)}createToolCallId(a){if(null!=a&&!this.usedToolCallIds.has(a))return this.usedToolCallIds.add(a),a;let b=this.getNonBlankString(this._generateId())??"tool-call";if(!this.usedToolCallIds.has(b))return this.usedToolCallIds.add(b),b;let c=this.nextGeneratedIdSuffixes.get(b)??1,d=c+this.usedToolCallIds.size;for(let a=c;a<=d;a++){let c=`${b}-${a}`;if(!this.usedToolCallIds.has(c))return this.usedToolCallIds.add(c),this.nextGeneratedIdSuffixes.set(b,a+1),c}throw Error("Failed to create a unique tool call ID.")}getNonBlankString(a){return null!=a&&a.trim().length>0?a:void 0}processExistingToolCall(a,b){a.hasFinished||b.function?.arguments!=null&&(a.argumentState.append(b.function.arguments),a.function.arguments+=b.function.arguments,this.controller.enqueue({type:"tool-input-delta",id:a.id,delta:b.function.arguments}))}finishToolCall(a){this.controller.enqueue({type:"tool-input-end",id:a.id});let b=this.buildToolCallProviderMetadata?.(a.metadata);this.controller.enqueue({type:"tool-call",toolCallId:a.id,toolName:a.function.name,input:a.function.arguments,...b?{providerMetadata:b}:{}}),a.hasFinished=!0}};let b3="transcription-stream.start",b4="transcription-stream.audio-done";function b5(a){let b;try{b=aU(a)}catch{return}if(null==b||"object"!=typeof b||Array.isArray(b))return;let c=b;switch(c.type){case"stream-start":return Array.isArray(c.warnings)&&c.warnings.every(b9)?c:void 0;case"transcript-delta":return b6(c.delta)&&b8(c.id,b6)&&b8(c.providerMetadata,aG)?c:void 0;case"transcript-partial":return b6(c.text)&&b8(c.id,b6)&&b8(c.startSecond,b7)&&b8(c.durationInSeconds,b7)&&b8(c.channelIndex,b7)&&b8(c.providerMetadata,aG)?c:void 0;case"transcript-final":return b6(c.text)&&b8(c.id,b6)&&b8(c.startSecond,b7)&&b8(c.endSecond,b7)&&b8(c.channelIndex,b7)&&b8(c.providerMetadata,aG)?c:void 0;case"finish":return b6(c.text)&&Array.isArray(c.segments)&&c.segments.every(ca)&&b8(c.language,b6)&&b8(c.durationInSeconds,b7)&&b8(c.usage,aG)&&b8(c.providerMetadata,aG)?c:void 0;case"response-metadata":{if(!(b8(c.modelId,b6)&&b8(c.headers,aG)))return;let a=c.timestamp;if(null==a)return{...c,timestamp:void 0};if("string"!=typeof a)return;let b=new Date(a);return Number.isNaN(b.getTime())?void 0:{...c,timestamp:b}}case"raw":return"rawValue"in c?c:void 0;case"error":return"error"in c?c:void 0;default:return}}function b6(a){return"string"==typeof a}function b7(a){return"number"==typeof a}function b8(a,b){return void 0===a||b(a)}function b9(a){return aG(a)&&b6(a.type)}function ca(a){return aG(a)&&b6(a.text)&&b7(a.startSecond)&&b7(a.endSecond)}function cb(a){if(a?.trim()==="")throw new f.Di({argument:"baseURL",message:"baseURL must be a non-empty string."});return a}function cc(a){return a?.replace(/\/$/,"")}function cd(a,b){return Object.defineProperty({...a},"experimental_toolCaller",{value:b})}}};
@@ -0,0 +1 @@
1
+ exports.id=9480,exports.ids=[9480],exports.modules={4880:()=>{},14608:()=>{},26043:(a,b,c)=>{"use strict";c.d(b,{J:()=>G,Rm:()=>y,Zd:()=>w,_d:()=>z,eL:()=>D,gA:()=>C,getProjectDataDir:()=>A,oB:()=>E,requireProjectDataDir:()=>B,xx:()=>F,zd:()=>o});var d=c(16698),e=c(77598),f=c(73024),g=c(77030),h=c.n(g),i=c(76760),j=c.n(i),k=c(45499);let l={activeProjectId:null,projects:[]},m=new d.AsyncLocalStorage,n=Promise.resolve();function o(){let a=process.env.LARKUP_DATA_DIR?.trim();return a?j().resolve(a):j().join(process.cwd(),".larkup")}function p(){return j().join(o(),"projects")}function q(a){let b=n.then(a,a);return n=b.catch(()=>void 0),b}async function r(){try{let a=await f.promises.readdir(p(),{withFileTypes:!0}),b=(await Promise.all(a.filter(a=>a.isDirectory()).map(async a=>{try{return JSON.parse(await f.promises.readFile(j().join(p(),a.name,"project.json"),"utf8"))}catch{return null}}))).filter(a=>null!==a);return{activeProjectId:b.find(a=>a.active)?.id??null,projects:b}}catch{return l}}async function s(a){return await f.promises.mkdir(p(),{recursive:!0}),await Promise.all(a.projects.map(async b=>{let c={...b,active:b.id===a.activeProjectId};await f.promises.mkdir(x(b.id),{recursive:!0}),await f.promises.writeFile(j().join(x(b.id),"project.json"),JSON.stringify(c,null,2),"utf8")})),a}async function t(a){return new Promise(b=>{let c=h().createServer();c.once("error",()=>b(!1)),c.once("listening",()=>c.close(()=>b(!0))),c.listen(a,"127.0.0.1")})}async function u(a){let b=Math.max(8079,...a.projects.map(a=>a.port))+1;for(;!await t(b);)b+=1;return b}function v(a){return a.toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"my-larkup"}function w(a,b){return m.run({projectId:a},b)}function x(a){return j().join(p(),a)}async function y(){return r()}async function z(){let a=await y(),b=m.getStore()?.projectId??a.activeProjectId;return a.projects.find(a=>a.id===b)??null}async function A(){let a=await z();if(!a)return null;let b=x(a.id);return await f.promises.mkdir(b,{recursive:!0}),b}async function B(){let a=await A();if(a)return a;if(m.getStore()?.projectId)throw Error(`Project "${m.getStore()?.projectId}" does not exist.`);let{project:b}=await C("My project");return x(b.id)}function C(a){return q(async()=>{let b,c=await r(),d=new Date().toISOString(),g={id:(0,e.randomUUID)(),name:a.trim()||"Untitled project",port:await u(c),createdAt:d,updatedAt:d},h=x(g.id);await f.promises.mkdir(j().join(h,"releases"),{recursive:!0}),await Promise.all([f.promises.writeFile(j().join(h,"project.json"),JSON.stringify({...g,active:!0},null,2),"utf8"),f.promises.writeFile(j().join(h,"config.json"),JSON.stringify((b=process.env.LARKUP_DATA_DIR?.trim(),{...k.P,projectName:v(g.name),storeConfig:{...k.P.storeConfig,mode:"local",dbPath:b?j().join(o(),"projects",g.id,"index"):`./.larkup/projects/${g.id}/index`},updatedAt:new Date().toISOString()}),null,2),"utf8"),f.promises.writeFile(j().join(h,"groups.json"),JSON.stringify([{id:"default",name:"Default",description:"Sources added without a specific group.",icon:"\uD83D\uDCDA",assistantEnabled:!0,createdAt:d,updatedAt:d}],null,2),"utf8"),f.promises.writeFile(j().join(h,"documents.json"),"[]\n","utf8"),f.promises.writeFile(j().join(h,"deployments.json"),"[]\n","utf8"),f.promises.writeFile(j().join(h,"automations.json"),"[]\n","utf8"),f.promises.writeFile(j().join(h,"jobs.json"),"[]\n","utf8"),f.promises.writeFile(j().join(h,"runtime.json"),"{}\n","utf8")]);let i={activeProjectId:g.id,projects:[...c.projects.map(a=>({...a,active:!1})),g]};return await s(i),{workspace:i,project:g}})}function D(a){return q(async()=>{let b=await r();return b.projects.some(b=>b.id===a)?s({...b,activeProjectId:a}):b})}function E(a,b){return q(async()=>{let c=await r(),d=c.projects.map(c=>c.id===a?{...c,name:b.trim()||c.name,updatedAt:new Date().toISOString()}:c),e=await s({...c,projects:d}),g=d.find(b=>b.id===a);if(g){let b=j().join(x(a),"config.json");try{let a=JSON.parse(await f.promises.readFile(b,"utf8"));await f.promises.writeFile(b,JSON.stringify({...a,projectName:v(g.name),updatedAt:new Date().toISOString()},null,2),"utf8")}catch{}}return e})}function F(a){return q(async()=>{let b=await r(),c=b.projects.filter(b=>b.id!==a);return await f.promises.rm(x(a),{recursive:!0,force:!0}),s({activeProjectId:b.activeProjectId===a?c[0]?.id??null:b.activeProjectId,projects:c})})}async function G(a){let b=p();if(a!==b)throw Error(`Confirmation must exactly match ${b}.`);await q(async()=>{await f.promises.rm(b,{recursive:!0,force:!0})})}},45499:(a,b,c)=>{"use strict";c.d(b,{P:()=>d});let d={projectName:"my-larkup",embeddingProvider:"openai",embeddingApiKey:"",embeddingModelId:"openai/text-embedding-3-small",indexType:"hybrid",chunking:{chunkSize:512,chunkOverlap:64,strategy:"recursive"},vectorStore:"lancedb",storeConfig:{mode:"local",dbPath:"./.larkup/lancedb",tableName:"documents"},topK:5,serperApiKey:"",webSearchEnabled:!1,webSearchProvider:"tavily",tavilyApiKey:"",googleApiKey:"",braveApiKey:"",bingApiKey:"",exaApiKey:"",chatModelId:"",chatApiKey:"",visionModelId:"",visionApiKey:"",scraperProxyServer:"",scraperProxyUsername:"",scraperProxyPassword:"",useScraperProxy:!1,webCrawlerProvider:"local",firecrawlApiKey:"",defaultSandboxProvider:"local",sandboxProviderConfigs:{},toolConfigs:{},skills:[],updatedAt:new Date(0).toISOString()}},67958:(a,b,c)=>{"use strict";c.d(b,{A:()=>j,X:()=>i});var d=c(73024),e=c(76760),f=c.n(e),g=c(45499),h=c(26043);async function i(){let a=await (0,h.requireProjectDataDir)();try{let b=await d.promises.readFile(f().join(a,"config.json"),"utf8"),c=JSON.parse(b),e=c.customEmbeddings,h=c.embeddingModelId;if(c.customEmbedding&&!e?.length){let a=c.customEmbedding;e=[a],"custom"===h&&(h=`custom:${a.modelName}`)}let i=c.storeConfig?.dbPath,j="string"==typeof i&&/^(?:\.\/)?\.larkup\/projects\/[^/]+\/index\/?$/.test(i),k={...g.P,...c,embeddingModelId:h??g.P.embeddingModelId,customEmbeddings:e,chunking:{...g.P.chunking,...c.chunking},storeConfig:{...g.P.storeConfig,...c.storeConfig,...process.env.LARKUP_DATA_DIR?.trim()&&j?{dbPath:f().join(a,"index")}:{}}};return delete k.customEmbedding,k}catch{return g.P}}async function j(a){let b=await (0,h.requireProjectDataDir)(),c={...a,updatedAt:new Date().toISOString()};return await d.promises.writeFile(f().join(b,"config.json"),JSON.stringify(c,null,2),"utf8"),c}}};
@@ -0,0 +1 @@
1
+ "use strict";exports.id=9579,exports.ids=[9579],exports.modules={14380:(a,b,c)=>{c.d(b,{GV:()=>r,PE:()=>t,Ys:()=>v,cG:()=>q,l4:()=>x,tI:()=>s});var d=c(31421),e=c(77598),f=c(71553),g=c(73024),h=c(77030),i=c(76760),j=c.n(i),k=c(46466),l=c(57075),m=c(58894),n=c.n(m);function o(a){let b=Number(a);return Number.isFinite(b)&&b>0?b:void 0}function p(a){if(a)try{let b=new URL(a);if("youtu.be"===b.hostname)return b.pathname.split("/").filter(Boolean)[0];return b.searchParams.get("v")??void 0}catch{return/^[\w-]{6,}$/.test(a)?a:void 0}}function q(a){let b=Object.entries(a.configuration??{}).filter(([,a])=>void 0!==a).sort(([a],[b])=>a.localeCompare(b));return(0,e.createHash)("sha256").update(JSON.stringify({...a,configuration:b})).digest("hex")}function r(a){return a.replace(/\s+/g," ").trim().slice(-500)}function s(a,b=2){let c,d=[];for(let e of[...a].sort((a,b)=>a.startSecs-b.startSecs)){let a=new Set((c?.text??"").toLocaleLowerCase().match(/[\p{Letter}\p{Number}]+/gu)??[]),f=new Set(e.text.toLocaleLowerCase().match(/[\p{Letter}\p{Number}]+/gu)??[]),g=[...f].filter(b=>!a.has(b)).length;d.push({timestampSecs:e.startSecs,transcriptChange:0===f.size?0:Math.min(1,g/f.size),silenceBoundary:!!(c&&e.startSecs-c.endSecs>=b)}),c=e}return d}async function t(a){let b=JSON.parse(await G(function(){let a=process.env.LARKUP_FFPROBE_PATH?.trim()||n().path;if(a===n().path)try{(0,g.chmodSync)(a,493)}catch{}return a}(),["-v","error","-show_entries","format=duration:format_tags=probe_score:stream=codec_type,duration","-of","json",a])),c=u(b.streams,"video"),d=u(b.streams,"audio"),e=Number(b.format?.duration??0),f=c??d??e;return{durationSecs:Number.isFinite(f)?Math.max(0,f):0,containerDurationSecs:Number.isFinite(e)?Math.max(0,e):0,videoDurationSecs:c,audioDurationSecs:d,hasVideo:b.streams?.some(a=>"video"===a.codec_type)??!1,hasAudio:b.streams?.some(a=>"audio"===a.codec_type)??!1,hasCorruptionSignals:!Number.isFinite(f)||f<=0}}function u(a,b){return a?.filter(a=>a.codec_type===b).map(a=>o(a.duration)).find(a=>void 0!==a)}async function v(a){let b,c,d=J(a);if(await L(d.hostname),M(d)){var e;let b,c,d,f,g,h,i,j=await E(["--dump-single-json","--simulate","--flat-playlist",a]),k=(b=(e=JSON.parse(j)).entries??[],c=p(a),d=b.find(a=>c&&[a.id,p(a.url),p(a.webpage_url)].includes(c))??b[0],f=d?.id??p(d?.webpage_url)??p(d?.url)??c,g=b.reduce((a,b)=>a+(o(b.duration)??0),0),h=o(e.duration)??(g||void 0),i=o(d?.duration)??(b.length<=1?h:void 0),{originalUrl:a,title:e.title,durationSecs:h,singleItemDurationSecs:i,singleItemUrl:f?`https://www.youtube.com/watch?v=${encodeURIComponent(f)}`:void 0,entryCount:Math.max(1,b.length),mediaType:"video",isYouTube:!0});if((k.entryCount??1)>1&&!k.singleItemDurationSecs&&k.singleItemUrl){let a=JSON.parse(await E(["--dump-single-json","--simulate","--no-playlist",k.singleItemUrl]));k.singleItemDurationSecs=o(a.duration)}return k}try{b=await w(a,{method:"HEAD"}),(405===b.status||501===b.status)&&(b=await w(a,{headers:{Range:"bytes=0-0"}}))}catch(a){c=a}if(b?.ok){let c=b.headers.get("content-type")?.split(";")[0],e="unknown"===N(c)?O(j().extname(d.pathname).slice(1)):c,f=b.headers.get("content-range")?.match(/\/(\d+)$/)?.[1];if(await b.body?.cancel(),"unknown"!==N(e))return{originalUrl:a,mimeType:e,mediaType:N(e),contentLength:Number(f??b.headers.get("content-length"))||void 0,durationSecs:Number(b.headers.get("content-duration"))||void 0,entryCount:1,isYouTube:!1}}else b&&await b.body?.cancel();try{let b=await E(["--dump-single-json","--simulate","--no-playlist",a]),c=JSON.parse(b),d="none"===c.vcodec&&c.acodec&&"none"!==c.acodec?"audio":"video";return{originalUrl:a,title:c.title,mimeType:O(c.ext??""),mediaType:d,durationSecs:o(c.duration),singleItemDurationSecs:o(c.duration),singleItemUrl:a,entryCount:1,isYouTube:!1}}catch(a){if(b&&!b.ok)throw Error(`Unable to inspect media URL (${b.status}).`);if(c instanceof Error)throw c;throw Error(`The URL is not a direct media file or a supported video provider (${a instanceof Error?a.message:"inspection failed"}).`)}}async function w(a,b){try{return await K(a,{...b,signal:AbortSignal.timeout(7e3)})}catch(a){if(a instanceof DOMException&&"TimeoutError"===a.name)throw Error("The media URL did not respond within 7 seconds. Check that it is public and try again.");throw a}}async function x(a,b){let c,d=J(a);if(await g.promises.mkdir(b.outputDir,{recursive:!0}),M(d))return y(a,b,!0);let f=Date.now();b.onProgress?.({message:"Connecting to the media source…",elapsedSeconds:0});let h=b.onProgress?setInterval(()=>{let a=Math.floor((Date.now()-f)/1e3);b.onProgress?.({message:`Connecting to the media source \xb7 ${a}s`,elapsedSeconds:a})},1e3):void 0;try{c=await K(a)}catch(c){try{return await y(a,b,!1)}catch{throw c}}finally{h&&clearInterval(h)}if(!c.ok||!c.body){await c.body?.cancel();try{return await y(a,b,!1)}catch{throw Error(`Media download failed (${c.status}).`)}}let i=b.maxBytes??524288e3,m=Number(c.headers.get("content-length"));if(m>i)throw Error(`Media exceeds download limit of ${i} bytes.`);let n=(j().basename(new URL(c.url).pathname)||"download").replace(/[^a-zA-Z0-9._-]/g,"_").slice(0,180)||"download",o=c.headers.get("content-type")?.split(";")[0],p="unknown"===N(o)?O(j().extname(n).slice(1)):o;if("unknown"===N(p))return await c.body.cancel(),y(a,b,!1);let q=j().join(b.outputDir,`${(0,e.randomUUID)()}-${n}`),r=0,s=0,t=Number.isFinite(m)&&m>0,u=l.Readable.fromWeb(c.body);u.on("data",a=>{(r+=a.length)>i&&u.destroy(Error(`Media exceeds download limit of ${i} bytes.`));let c=Date.now(),d=t&&r>=m;if(!b.onProgress||c-s<500&&!d)return;s=c;let e=Math.max(0,Math.floor((c-f)/1e3)),g=r/Math.max(1,(c-f)/1e3),h=t?Math.max(0,Math.round((m-r)/Math.max(1,g))):void 0;b.onProgress({...t?{percent:Math.min(99,r/m*100),total:m}:{},current:r,unit:"bytes",elapsedSeconds:e,estimatedRemainingSeconds:h,message:`Downloading media \xb7 ${I(r)}${t?` / ${I(m)}`:""} \xb7 ${I(g)}/s`})});try{await (0,k.pipeline)(u,(0,g.createWriteStream)(q,{flags:"wx"}))}catch(a){throw await g.promises.rm(q,{force:!0}),a}return[{path:q,originalUrl:a,title:n,mimeType:p,mediaType:N(p)}]}async function y(a,b,c){let d=j().join(b.outputDir,"%(title).120B [%(id)s].%(ext)s"),e=[];if(c)try{var f;let b,c,d,g,h=(f=JSON.parse(await E(["--dump-single-json","--simulate","--no-playlist",a])),b=f.language?.toLowerCase(),c=Object.keys(f.subtitles??{}).filter(a=>"live_chat"!==a),d=Object.keys(f.automatic_captions??{}).filter(a=>"live_chat"!==a),g=a=>a.find(a=>a.toLowerCase()===b)??a.find(a=>a.toLowerCase().startsWith(`${b}-`)),(b?g(c):void 0)??c[0]??(b?g(d.filter(a=>a.endsWith("-orig"))):void 0)??d.find(a=>a.endsWith("-orig"))??(b?g(d):void 0)??d[0]);h&&(e=["--write-subs","--write-auto-subs","--sub-langs",h,"--sub-format","json3"])}catch{}return Promise.all((await E(["--no-playlist","--playlist-end",String(b.playlistMax??10),"--socket-timeout","20","--retries","2","--newline","--format","bestvideo*[height<=360][ext=mp4][vcodec^=avc]+bestaudio[ext=m4a]/best[height<=360][ext=mp4][vcodec!=none][acodec!=none]/bestvideo*[height<=360]+bestaudio/best[height<=360][vcodec!=none][acodec!=none]/best[vcodec!=none][acodec!=none]","--merge-output-format","mp4",...e,"-o",d,"--print","after_move:%(.{filepath,title,webpage_url,ext,language,requested_subtitles})j",a],b.onProgress)).split("\n").filter(Boolean).map(async d=>{let e=JSON.parse(d),f=await B(e.filepath,b.outputDir),g=await z(f),h=O(j().extname(g).slice(1))??O(e.ext),i=c?await A(b.outputDir,e.requested_subtitles,e.language):void 0;return{path:g,title:e.title,originalUrl:e.webpage_url||a,mimeType:h,mediaType:N(h),...i?{sourceTranscript:i}:{}}}))}async function z(a){var b;let c,d;try{c=await t(a)}catch{return a}let f=c.videoDurationSecs;if(!f||!((d=(b=c).videoDurationSecs)&&b.hasAudio&&Math.max(b.containerDurationSecs,b.audioDurationSecs??0)-d>Math.max(5,.03*d)))return a;let h=j().extname(a)||".mp4",i=`${a}.${(0,e.randomUUID)()}.normalized${h}`,k=`${a}.${(0,e.randomUUID)()}.original${h}`,l=process.env.LARKUP_FFMPEG_PATH?.trim()||"ffmpeg";try{await G(l,["-nostdin","-hide_banner","-loglevel","error","-i",a,"-map","0:v:0","-map","0:a:0?","-c","copy","-t",String(f),"-avoid_negative_ts","make_zero",...".mp4"===h.toLowerCase()?["-movflags","+faststart"]:[],i],void 0,18e5),await g.promises.rename(a,k);try{await g.promises.rename(i,a),await g.promises.rm(k,{force:!0})}catch(b){throw await g.promises.rename(k,a).catch(()=>void 0),b}}catch(c){await g.promises.rm(i,{force:!0}).catch(()=>void 0);let b=!1;try{await g.promises.access(a),b=!0}catch{try{await g.promises.rename(k,a),b=!0}catch{}}b&&await g.promises.rm(k,{force:!0}).catch(()=>void 0),console.warn("[media] Could not normalize an inconsistent provider timeline:",c)}return a}async function A(a,b,c){let d=j().resolve(a),e=Object.entries(b??{}).map(([a,b])=>({language:a,filepath:b.filepath})).filter(a=>!!a.filepath).filter(a=>C(j().resolve(a.filepath),d)),f=(await g.promises.readdir(d)).filter(a=>a.endsWith(".json3")).map(a=>({language:a.split(".").at(-2)||c||"unknown",filepath:j().join(d,a)})),h=e.length?e:f;for(let a of(h.sort((a,b)=>{let d=c?.toLowerCase();return Number(b.language.toLowerCase().startsWith(d??""))-Number(a.language.toLowerCase().startsWith(d??""))}),h))try{let b=(JSON.parse(await g.promises.readFile(a.filepath,"utf8")).events??[]).map(a=>{let b=(a.segs??[]).map(a=>a.utf8??"").join("").replace(/\s+/g," ").trim(),c=Math.max(0,Number(a.tStartMs??0)/1e3);return{text:b,startSecs:c,endSecs:c+Math.max(.001,Number(a.dDurationMs??0)/1e3)}}).filter(a=>a.text);if(!b.length)continue;return{chunks:b,fullText:b.map(a=>a.text).join(" "),durationSecs:Math.max(...b.map(a=>a.endSecs)),language:a.language,origin:{kind:"youtube-caption",provider:"youtube",language:a.language}}}catch{}}async function B(a,b){let c=j().resolve(b),d=j().resolve(a);if(!C(d,c))throw Error("Video downloader returned a file outside its import directory.");try{if((await g.promises.stat(d)).isFile())return d}catch(a){if(!(a instanceof Error&&"code"in a&&"ENOENT"===a.code))throw a}let e=j().basename(a).match(/\[([\w-]+)\](?:\.[^.]+)?$/)?.[1],f=(await g.promises.readdir(c,{withFileTypes:!0})).filter(a=>a.isFile()&&!!O(j().extname(a.name).slice(1))).map(a=>j().join(c,a.name)).filter(a=>C(a,c));if(!f.length)throw Error("Video download completed but did not produce a readable media file.");let h=j().extname(a).toLowerCase();return f.sort((a,b)=>D(b,e,h)-D(a,e,h))[0]}function C(a,b){let c=j().relative(b,a);return""!==c&&!c.startsWith(`..${j().sep}`)&&".."!==c&&!j().isAbsolute(c)}function D(a,b,c){let d=j().basename(a),e=j().extname(d).toLowerCase(),f=O(e.slice(1));return(b&&d.includes(`[${b}]`)?100:0)+20*!!f?.startsWith("video/")+10*(e===c)+(/\.f\d+\.[^.]+$/i.test(d)?-15:0)}async function E(a,b){let c=process.env.LARKUP_YTDLP_PATH?.trim()||j().join(process.cwd(),".larkup","tools","bin","win32"===process.platform?"yt-dlp.exe":"yt-dlp"),d=Date.now();b?.({message:"Preparing the video downloader…",elapsedSeconds:0});let e=b?setInterval(()=>{let a=Math.floor((Date.now()-d)/1e3);b({message:`Preparing the video downloader \xb7 ${a}s`,elapsedSeconds:a})},1e3):void 0;try{await F(c)}finally{e&&clearInterval(e)}return b?.({message:"Connecting to the video source…",elapsedSeconds:0}),G(c,["--js-runtimes","nodejs:node",...a],b,a.includes("--simulate")?12e4:216e5)}async function F(a){if(process.env.LARKUP_YTDLP_PATH?.trim())return;try{await g.promises.access(a);return}catch{}let b="darwin"===process.platform?"yt-dlp_macos":"win32"===process.platform?"yt-dlp.exe":"arm64"===process.arch?"yt-dlp_linux_aarch64":"yt-dlp_linux",c=`${a}.${(0,e.randomUUID)()}.download`;try{await g.promises.mkdir(j().dirname(a),{recursive:!0});let d=await fetch(`https://github.com/yt-dlp/yt-dlp/releases/latest/download/${b}`,{redirect:"follow",signal:AbortSignal.timeout(12e4)});if(!d.ok)throw Error(`download returned HTTP ${d.status}`);await g.promises.writeFile(c,Buffer.from(await d.arrayBuffer()),{mode:493}),"win32"!==process.platform&&await g.promises.chmod(c,493),await g.promises.rename(c,a)}catch(b){await g.promises.rm(c,{force:!0}).catch(()=>void 0);let a=b instanceof Error?b.message:String(b);throw Error(`Could not prepare the built-in YouTube downloader (${a}).`)}}function G(a,b,c,e=12e4){return new Promise((f,g)=>{let h,i=(0,d.spawn)(a,b,{shell:!1}),k="",l="",m="",n=Date.now(),o=setTimeout(()=>i.kill("SIGTERM"),e),p=c?setInterval(()=>{let a=Math.floor((Date.now()-n)/1e3);c({...h,elapsedSeconds:a,message:h?.percent?`${h.message} \xb7 active ${a}s`:`Connecting to the video source \xb7 ${a}s`})},1e3):void 0;i.stdout.on("data",a=>k+=String(a)),i.stderr.on("data",a=>{let b=String(a);l+=b;let d=(m+=b).split(/[\r\n]+/);for(let a of(m=d.pop()??"",d)){let b=H(a,Math.floor((Date.now()-n)/1e3));b&&(h=b,c?.(b))}}),i.on("error",a=>{clearTimeout(o),p&&clearInterval(p),g(a)}),i.on("close",b=>{clearTimeout(o),p&&clearInterval(p);let d=H(m,Math.floor((Date.now()-n)/1e3));d&&c?.(d),0===b?f(k.trim()):g(Error(`${j().basename(a)} failed (${b}): ${l.trim()}`))})})}function H(a,b=0){let c,d=a.match(/(\d+(?:\.\d+)?)%/);if(!d)return null;let e=Math.min(99,Math.max(0,Number(d[1])));if(!Number.isFinite(e))return null;let f=a.match(/\bof\s+~?\s*([\d.]+)\s*(KiB|MiB|GiB|KB|MB|GB)\b/i),g=f?function(a,b){if(!Number.isFinite(a)||a<0)return;let c={KiB:1,MiB:2,GiB:3,KB:1,MB:2,GB:3}[b];if(void 0===c)return;let d=b.endsWith("iB")?1024:1e3;return a*d**c}(Number(f[1]),f[2]):void 0,h=g?g*e/100:void 0,i=a.match(/\bat\s+([^\s]+\/s)\b/i)?.[1],j=a.match(/\bETA\s+(\d{1,2}:\d{2}(?::\d{2})?)\b/i)?.[1],k=j?function(a){let b=a.split(":").map(Number);if(!b.some(a=>!Number.isFinite(a))){if(2===b.length)return 60*b[0]+b[1];if(3===b.length)return 3600*b[0]+60*b[1]+b[2]}}(j):void 0;return{percent:e,...void 0!==h?{current:h}:{},...void 0!==g?{total:g,unit:"bytes"}:{},elapsedSeconds:b,estimatedRemainingSeconds:k,message:[`Downloading video \xb7 ${Number.isInteger(c=Math.round(10*e)/10)?String(c):c.toFixed(1)}%`,i,j?`${j} left`:void 0].filter(Boolean).join(" \xb7 ")}}function I(a){return!Number.isFinite(a)||a<1024?`${Math.max(0,Math.round(a))} B`:a<1048576?`${(a/1024).toFixed(1)} KiB`:a<0x40000000?`${(a/1048576).toFixed(1)} MiB`:`${(a/0x40000000).toFixed(2)} GiB`}function J(a){let b=new URL(a);if("http:"!==b.protocol&&"https:"!==b.protocol)throw Error("Only http(s) media URLs are supported.");return b}async function K(a,b={}){let c=J(a);for(let a=0;a<=5;a++){await L(c.hostname);let a=await fetch(c,{...b,redirect:"manual"});if(![301,302,303,307,308].includes(a.status))return a;let d=a.headers.get("location");if(!d)throw Error("Media URL redirected without a location.");c=J(new URL(d,c).toString())}throw Error("Media URL redirected too many times.")}async function L(a){let b=(0,h.isIP)(a)?[{address:a}]:await (0,f.lookup)(a,{all:!0,verbatim:!0});if(!b.length||b.some(({address:a})=>(function(a){let b=a.toLowerCase();if("::1"===b||"::"===b||b.startsWith("fe80:")||b.startsWith("fc")||b.startsWith("fd"))return!0;let c=(b.startsWith("::ffff:")?b.slice(7):b).split(".").map(Number);if(4!==c.length||c.some(Number.isNaN))return!1;let[d,e]=c;return 0===d||10===d||127===d||169===d&&254===e||172===d&&e>=16&&e<=31||192===d&&168===e||d>=224})(a)))throw Error("Private or local media URLs are not supported.")}function M(a){return/(^|\.)youtube\.com$|(^|\.)youtu\.be$/.test(a.hostname)}function N(a){return a?.startsWith("video/")?"video":a?.startsWith("audio/")?"audio":"unknown"}function O(a){return({mp4:"video/mp4",webm:"video/webm",mkv:"video/x-matroska",mov:"video/quicktime",mp3:"audio/mpeg",m4a:"audio/mp4",wav:"audio/wav",ogg:"audio/ogg",flac:"audio/flac"})[a.toLowerCase()]}},27943:(a,b,c)=>{c.d(b,{createAdapter:()=>d});async function d(a,b){let d={...a.storeConfig};switch(a.vectorStore){case"pinecone":{let{PineconeAdapter:e}=await c.e(8437).then(c.bind(c,8437));return new e({apiKey:d.apiKey,indexName:d.indexName,namespace:d.namespace,sparseModel:d.sparseModel,indexType:a.indexType,onRateLimit:b})}case"chroma":{let{ChromaAdapter:b}=await c.e(1602).then(c.bind(c,41602));return new b({mode:d.mode,host:d.host,authToken:d.authToken,apiKey:d.apiKey,tenant:d.tenant,database:d.database,collectionName:d.collectionName,indexType:a.indexType})}default:{let{LanceDBAdapter:a}=await c.e(2883).then(c.bind(c,25264));return new a({mode:d.mode,dbPath:d.dbPath,uri:d.uri,apiKey:d.apiKey,s3Uri:d.s3Uri,s3Endpoint:d.s3Endpoint,s3Region:d.s3Region,s3AccessKeyId:d.s3AccessKeyId,s3SecretAccessKey:d.s3SecretAccessKey,tableName:d.tableName})}}}},82180:(a,b,c)=>{c.d(b,{Az:()=>w,P5:()=>s,Ww:()=>t,_S:()=>u,cM:()=>p,lU:()=>r,or:()=>v,ox:()=>q,readDocuments:()=>l,tI:()=>o});var d=c(73024),e=c(76760),f=c.n(e),g=c(77598),h=c(26043);let i=Promise.resolve();function j(a){let b=i.then(a,a);return i=b.catch(()=>{}),b}async function k(a){let b=a?await (0,h.requireProjectDataDir)():await (0,h.getProjectDataDir)();return b?f().join(b,"documents.json"):null}async function l(){let a=await k(!1);if(!a)return[];try{let b=await d.promises.readFile(a,"utf8"),c=JSON.parse(b);if(!Array.isArray(c))throw Error(`Invalid document store at ${a}: expected a JSON array.`);return c}catch(a){if(a?.code==="ENOENT")return[];throw a}}async function m(a){let b=await k(!0);if(!b)return;let c=f().join(f().dirname(b),`.${f().basename(b)}.${process.pid}.${(0,g.randomUUID)()}.tmp`);try{await d.promises.writeFile(c,JSON.stringify(a,null,2),"utf8"),await d.promises.rename(c,b)}catch(a){throw await d.promises.unlink(c).catch(()=>{}),a}}function n(a){let b=a.content.trim();return{id:a.id??(0,g.randomUUID)(),title:a.title.trim()||"Untitled",url:a.url,source:a.source,content:b,charCount:b.length,jobId:a.jobId,groupId:a.groupId,enabled:a.enabled??!0,parentSourceId:a.parentSourceId,metadata:a.metadata,status:"unindexed",createdAt:new Date().toISOString()}}function o(a){return j(async()=>{let b=await l(),c=n(a);return b.push(c),await m(b),c})}function p(a){return j(async()=>{if(0===a.length)return[];let b=await l(),c=a.map(n);return b.push(...c),await m(b),c})}function q(a,b){return j(async()=>{let c=await l(),d=new Set(c.filter(a=>a.url).map(a=>`${a.groupId??"default"}:${a.url}`)),e=0;for(let f of b){let b=`${f.groupId??"default"}:${f.url}`;!(f.url&&d.has(b))&&f.content.trim()&&(c.push(n({...f,jobId:a})),f.url&&d.add(b),e++)}return e>0&&await m(c),e})}function r(a,b){return j(async()=>{let c=await l(),d=c.findIndex(b=>b.id===a);if(d<0)return;let e=c[d],f=void 0!==b.content?b.content.trim():e.content,g={...e,title:void 0!==b.title?b.title.trim()||"Untitled":e.title,content:f,charCount:f.length,url:void 0!==b.url?b.url||void 0:e.url,metadata:void 0!==b.metadata?b.metadata:e.metadata,groupId:void 0!==b.groupId?b.groupId||void 0:e.groupId,enabled:void 0!==b.enabled?b.enabled:e.enabled,status:"unindexed"};return c[d]=g,await m(c),g})}function s(a,b){return j(async()=>{let c=new Set(a);if(0===c.size)return[];let d=await l(),e=[];for(let a of d)c.has(a.id)&&a.groupId!==b&&(a.groupId=b,e.push(a));return e.length>0&&await m(d),e})}function t(a){return j(async()=>{let b=await l(),c=new Set(a);await m(b.filter(a=>!c.has(a.id)))})}function u(){return j(async()=>{await m([])})}function v(a,b){return j(async()=>{let c=await l(),d=new Set(a),e=!1;for(let a of c)d.has(a.id)&&(a.status=b,e=!0);e&&await m(c)})}async function w(){let a=await l(),b=a.reduce((a,b)=>a+b.charCount,0);return{docCount:a.length,charCount:b,bySource:a.reduce((a,b)=>(a[b.source]=(a[b.source]??0)+1,a),{})}}}};
@@ -0,0 +1,4 @@
1
+ "use strict";exports.id=9768,exports.ids=[1309,3642,9768],exports.modules={1309:(a,b,c)=>{c.d(b,{createStorageProvider:()=>k});var d=c(73024),e=c(76760),f=c.n(e);c(13595);var g=c(26043);class h{async mediaDir(){let a=await (0,g.requireProjectDataDir)(),b=f().join(a,"media");return await d.promises.mkdir(b,{recursive:!0}),b}async store(a,b,c){let e=await this.mediaDir(),g=f().join(e,a);return await d.promises.mkdir(f().dirname(g),{recursive:!0}),await d.promises.writeFile(g,b),`local://${a}`}async storeFile(a,b,c){let e=await this.mediaDir(),g=f().join(e,a);return await d.promises.mkdir(f().dirname(g),{recursive:!0}),await d.promises.copyFile(b,g),`local://${a}`}async retrieve(a){let b=await this.resolvePath(a);if(!b)throw Error(`Unsupported local storage URI: ${a}`);return d.promises.readFile(b)}async resolvePath(a){if(!a.startsWith("local://"))return;let b=a.slice(8),c=await this.mediaDir(),d=f().resolve(c,b),e=f().relative(c,d);if(e.startsWith("..")||f().isAbsolute(e))throw Error("Invalid local storage URI");return d}async delete(a){let b=a.replace("local://",""),c=await this.mediaDir();try{await d.promises.unlink(f().join(c,b))}catch{}}async stats(){try{let a=await this.mediaDir();return await i(a)}catch{return{usedBytes:0,fileCount:0}}}constructor(){this.id="local",this.name="Local Storage"}}async function i(a){let b=0,c=0;async function e(a){let g;try{g=await d.promises.readdir(a,{withFileTypes:!0})}catch{return}for(let h of g){let g=f().join(a,h.name);if(h.isDirectory())await e(g);else try{let a=await d.promises.stat(g);b+=a.size,c++}catch{}}}return await e(a),{usedBytes:b,fileCount:c}}class j{constructor(a){if(this.id="s3",this.name="Amazon S3",!a.bucket)throw Error("S3StorageProvider requires a bucket name.");this.bucket=a.bucket,this.region=a.region||process.env.AWS_REGION||"us-east-1",this.kmsKeyId=a.kmsKeyId,this.prefix=(a.prefix??"canonical").replace(/^\/+|\/+$/g,""),this._credentials=a.accessKeyId&&a.secretAccessKey?{accessKeyId:a.accessKeyId,secretAccessKey:a.secretAccessKey}:void 0}async client(){if(!this._client){let{S3Client:a}=await Promise.all([c.e(5523),c.e(6479)]).then(c.bind(c,46479));this._client=new a({region:this.region,...this._credentials?{credentials:this._credentials}:{}})}return this._client}objectKey(a){return`${this.prefix}/${a}`}parseUri(a){if(!a.startsWith("s3://"))throw Error(`Unsupported S3 storage URI: ${a}`);let b=a.slice(5),c=b.indexOf("/");if(c<0)throw Error(`Malformed S3 storage URI: ${a}`);return{bucket:b.slice(0,c),key:b.slice(c+1)}}async store(a,b,d){let{PutObjectCommand:e}=await Promise.all([c.e(5523),c.e(6479)]).then(c.bind(c,46479)),f=await this.client(),g=this.objectKey(a);return await f.send(new e({Bucket:this.bucket,Key:g,Body:b,ContentType:d,...this.kmsKeyId?{ServerSideEncryption:"aws:kms",SSEKMSKeyId:this.kmsKeyId}:{ServerSideEncryption:"aws:kms"}})),`s3://${this.bucket}/${g}`}async storeFile(a,b,c){return this.store(a,await d.promises.readFile(b),c)}async retrieve(a){let{GetObjectCommand:b}=await Promise.all([c.e(5523),c.e(6479)]).then(c.bind(c,46479)),{bucket:d,key:e}=this.parseUri(a),f=await this.client(),g=await f.send(new b({Bucket:d,Key:e})),h=[];for await(let a of g.Body)h.push(a);return Buffer.concat(h)}async resolvePath(a){}async getReadUrl(a,b){let{GetObjectCommand:d}=await Promise.all([c.e(5523),c.e(6479)]).then(c.bind(c,46479)),{getSignedUrl:e}=await Promise.all([c.e(5523),c.e(6149)]).then(c.bind(c,46149)),{bucket:f,key:g}=this.parseUri(a);return e(await this.client(),new d({Bucket:f,Key:g}),{expiresIn:b})}async delete(a){let{DeleteObjectCommand:b}=await Promise.all([c.e(5523),c.e(6479)]).then(c.bind(c,46479)),{bucket:d,key:e}=this.parseUri(a),f=await this.client();try{await f.send(new b({Bucket:d,Key:e}))}catch{}}async stats(){return{usedBytes:0,fileCount:0}}}function k(a){if("s3"===(a?.provider??process.env.LARKUP_MEDIA_STORAGE??"local").toLowerCase()){let b=a?.bucket??process.env.LARKUP_MEDIA_S3_BUCKET;if(!b)throw Error("LARKUP_MEDIA_STORAGE=s3 requires LARKUP_MEDIA_S3_BUCKET to be set.");return new j({bucket:b,region:a?.region??process.env.LARKUP_MEDIA_S3_REGION,kmsKeyId:a?.kmsKeyId??process.env.LARKUP_MEDIA_S3_KMS_KEY_ID,prefix:a?.prefix??process.env.LARKUP_MEDIA_S3_PREFIX,accessKeyId:a?.accessKeyId??process.env.LARKUP_MEDIA_S3_ACCESS_KEY_ID??process.env.AWS_ACCESS_KEY_ID,secretAccessKey:a?.secretAccessKey??process.env.LARKUP_MEDIA_S3_SECRET_ACCESS_KEY??process.env.AWS_SECRET_ACCESS_KEY})}return new h}},3284:(a,b,c)=>{c.d(b,{Cd:()=>n,G:()=>p,kh:()=>o});var d=c(47268),e=c(80414),f=c(76604),g=c(89646),h=c(62663),i=c(51042),j=c(78588),k=c(7744),l=c(25699);let m={openai:"openai/gpt-4o-mini",anthropic:"anthropic/claude-3-5-sonnet-latest",google:"google/gemini-3.6-flash",cohere:"cohere/command-r-plus",mistral:"mistral/mistral-large-latest",deepseek:"deepseek/deepseek-chat"};function n(a,b=[],c={}){let d=a.chatProvider||a.embeddingProvider||"openai",e=a.chatModelId?.trim();if(!e&&"custom"===d&&a.customChatModels?.[0]&&(e=`custom:${a.customChatModels[0].modelName}`),!e&&b.length>0){let a=c.requiredTag,f=a?b.filter(b=>b.tags?.includes(a)):b,g=f.length>0?f:b;e=(0,l.Bf)(g.map(l.xT),d)?.id}if(!e&&"vercel_ai_gateway"===d)throw Error("No gateway model is available. Choose a chat model before processing media.");return e=(0,l.tj)(d,e),e||=m[d]||m.openai,{provider:d,modelId:e,apiKey:a.chatApiKey||a.embeddingApiKey||void 0}}function o(a,b=[]){let c=a.visionProvider||a.chatProvider||a.embeddingProvider||"openai",d=a.visionModelId?.trim(),e=a.customVisionModels??[];if(!d&&"custom"===c&&e[0]&&(d=`custom:${e[0].modelName}`),d||(d=(0,l.Ne)(b.map(l.xT),c)?.id),!d)throw Error(`No vision-capable model is available for ${c}. Configure a Vision Model in Settings → AI Models.`);let f=a.chatProvider||a.embeddingProvider,g=a.visionApiKey||(c===f?a.chatApiKey:void 0)||(c===a.embeddingProvider?a.embeddingApiKey:void 0);return{provider:c,modelId:(0,l.tj)(c,d),apiKey:g}}function p(a,b,c,l=[]){if(b.startsWith("custom:")){let a=b.slice(7),d=l.find(b=>b.modelName===a);if(!d)throw Error(`Custom chat model "${a}" is not configured.`);return(0,k.jr)({name:"custom_chat_provider",baseURL:d.baseUrl,apiKey:d.apiKey||c||void 0})(d.modelName)}let m=b.includes("/")?b.split("/").slice(1).join("/"):b;switch(a){case"google":return(0,h.sw)({apiKey:c})(m);case"cohere":return(0,e.ly)({apiKey:c})(m);case"mistral":return(0,i.TG)({apiKey:c})(m);case"deepseek":return(0,f.PW)({apiKey:c})(m);case"anthropic":return(0,d.nM)({apiKey:c})(m);case"openai":return(0,j.ry)({apiKey:c})(m);case"vercel_ai_gateway":return(0,g.jV)({apiKey:c})(b);case"custom":throw Error("Choose a configured custom chat model before processing media.");default:throw Error(`Unsupported chat provider "${a}".`)}}},21634:(a,b,c)=>{c.d(b,{Fi:()=>f,lO:()=>h,uI:()=>g});var d=c(77598),e=c(83186);function f(a){return(0,e.ZV)(b=>{let c=new Date().toISOString(),e=a.map(a=>({...a,id:(0,d.randomUUID)(),schemaVersion:1,createdAt:c}));return b.projections.push(...e),e})}function g(a){return(0,e.ZV)(b=>{let c=new Date().toISOString();for(let c of b.projections)c.mediaAssetId===a.mediaAssetId&&(c.active=a.activeProjectionIds.includes(c.id));let e={...a,id:(0,d.randomUUID)(),schemaVersion:1,createdAt:c,activatedAt:c};b.manifests.push(e);let f=b.revisions.find(b=>b.id===a.knowledgeRevisionId);return f&&(f.activeManifestId=e.id),e})}async function h(a){return(await (0,e.LR)()).manifests.filter(b=>b.mediaAssetId===a&&b.activatedAt).sort((a,b)=>b.activatedAt.localeCompare(a.activatedAt))[0]}},25699:(a,b,c)=>{c.d(b,{Bf:()=>j,Ne:()=>k,PZ:()=>i,tF:()=>h,tj:()=>f,xT:()=>g});let d=[{id:"google/gemini-3.6-flash",name:"Gemini 3.6 Flash",provider:"google",context_window:1e6,max_tokens:65536,tags:["vision","reasoning","tool-use","file-input","web-search"]},{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",provider:"google",context_window:1e6,max_tokens:65536,tags:["vision","reasoning","tool-use","file-input","web-search"]},{id:"google/gemini-3.5-flash-lite",name:"Gemini 3.5 Flash-Lite",provider:"google",context_window:1e6,max_tokens:65536,tags:["vision","reasoning","tool-use","file-input"]},{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",provider:"google",context_window:1e6,max_tokens:65536,tags:["vision","reasoning","tool-use","file-input","web-search"]},{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash-Lite",provider:"google",context_window:1e6,max_tokens:65536,tags:["vision","reasoning","tool-use","file-input","web-search"]},{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash Preview",provider:"google",context_window:1e6,max_tokens:65536,tags:["vision","reasoning","tool-use","file-input","web-search"]}],e={openai:"openai/gpt-5",anthropic:"anthropic/claude-sonnet-4",google:"google/gemini-3.6-flash",mistral:"mistral/mistral-large-3",deepseek:"deepseek/deepseek-v3.2",cohere:"cohere/command-a"};function f(a,b){return b&&"google"===a?"vercel_ai_gateway"===a||("custom"===a?b.startsWith("custom:"):"google"===a?d.some(a=>a.id===b):b.startsWith(`${a}/`)||!b.includes("/"))?b:e.google:b}function g(a){return{id:a.id,name:a.name,provider:a.owned_by,context_window:a.context_window,max_tokens:a.max_tokens,tags:a.tags,description:a.description}}function h(a,b){return"vercel_ai_gateway"===b?a:"google"===b?d:a.filter(a=>a.provider?.toLowerCase()===b.toLowerCase()&&a.tags?.includes("tool-use"))}function i(a,b){return"vercel_ai_gateway"===b?a.filter(a=>a.tags?.includes("vision")):"google"===b?d.filter(a=>a.tags?.includes("vision")):a.filter(a=>a.provider?.toLowerCase()===b.toLowerCase()&&a.tags?.includes("vision"))}function j(a,b){let c=h(a,b),d={...e,meta:"meta/llama-4-maverick",xai:"xai/grok-3-mini",vercel_ai_gateway:"anthropic/claude-3.5-sonnet-latest"}[b];return c.find(a=>a.id===d)??c[0]}function k(a,b){let c=i(a,b),d={vercel_ai_gateway:"openai/gpt-4o-mini",openai:"openai/gpt-4o-mini",google:"google/gemini-3.6-flash",mistral:"mistral/pixtral-12b"};return c.find(a=>a.id===d[b])??c[0]}},63234:(a,b,c)=>{c.d(b,{TJ:()=>f,a:()=>i,gg:()=>h,jY:()=>g});var d=c(77598),e=c(83186);function f(a){return(0,e.ZV)(b=>{let c=new Date().toISOString(),e={id:(0,d.randomUUID)(),mediaAssetId:a.mediaAssetId,sourceFingerprint:a.sourceFingerprint,pipelineVersion:a.pipelineVersion,parentRevisionId:a.parentRevisionId,guidance:a.guidance,status:"queued",budget:a.budget,coverage:a.coverage,schemaVersion:1,createdAt:c};return b.revisions.push(e),e})}async function g(a){return(await (0,e.LR)()).revisions.find(b=>b.id===a)}async function h(a,b,c){return(await (0,e.LR)()).revisions.filter(d=>d.mediaAssetId===a&&d.sourceFingerprint===b&&d.pipelineVersion===c).sort((a,b)=>b.createdAt.localeCompare(a.createdAt))[0]}function i(a,b){return(0,e.ZV)(c=>{let d=c.revisions.findIndex(b=>b.id===a);if(d<0)return;let e="completed"===b.status||"partially_failed"===b.status?b.completedAt??c.revisions[d].completedAt??new Date().toISOString():b.completedAt;return c.revisions[d]={...c.revisions[d],...b,completedAt:e},c.revisions[d]})}},75337:(a,b,c)=>{c.d(b,{E5:()=>l,ae:()=>j,gs:()=>k});var d=c(88005),e=c(67958),f=c(33122),g=c(83957),h=c(3284);function i(a){let b=a.trim().replace(/^```(?:json)?\s*/i,"").replace(/\s*```$/,""),c=b.indexOf("{"),d=b.lastIndexOf("}");if(c<0||d<c)throw Error("Expected a JSON object.");let e=JSON.parse(b.slice(c,d+1));if(!e||"object"!=typeof e||Array.isArray(e))throw Error("Expected a JSON object.");return e}function j(){return{async analyze({frames:a,previousContext:b,signal:j}){if(0===a.length)return{observations:[]};let[k,l]=await Promise.all([(0,e.X)(),(0,g.S0)("language")]),m=(0,h.kh)(k,l),n=(0,h.G)(m.provider,m.modelId,m.apiKey,k.customVisionModels),o=await Promise.all(a.map(async a=>{let{readFile:b}=await Promise.resolve().then(c.t.bind(c,51455,23));return{frame:a,data:(await b(a.path)).toString("base64")}})),p=a.map(a=>a.timestampSecs),q=["Analyze these chronological video frames. Return JSON only, with this exact shape:",'{"observations":[{"kind":"object|action|ui|chart|relationship|state","value":"supported visible fact","frameTimestamps":[number],"confidence":number,"uncertaintyReasons":[string]}]}',"","CRITICAL RULES:","- Only report source-visible facts. Every frameTimestamps entry must be one of the supplied timestamps.","- Do not identify people or infer identity.",'- For a state observation, value must be a plain source-visible fact (for example, "The displayed value is 2-1"). Do not embed JSON or quoted JSON fragments inside value.',"","STATE TRACKING (very important):","- Track any evolving on-screen state: counters, timers, progress bars, text overlays, UI elements, labels, numbers.","- When a tracked value changes from what was previously reported, explicitly note the transition with a state observation.","- Always report the CURRENT value you see on screen, even if it was reported before — the latest frame's value is what matters.","",`Supplied timestamps: ${JSON.stringify(p)}.`,b?`Previous accepted context (continue tracking state changes from here): ${b}`:""].filter(Boolean).join("\n"),{text:r}=await (0,d.Df5)({model:n,abortSignal:j,messages:[{role:"user",content:[{type:"text",text:q},...o.map(({data:a})=>({type:"file",mediaType:"image/jpeg",data:`data:image/jpeg;base64,${a}`}))]}]}),s=i(r);if(!Array.isArray(s.observations))throw Error("Vision adapter returned no observations array.");let t=s.observations.map(a=>{if(!a||"object"!=typeof a)throw Error("Vision adapter returned an invalid observation.");if(!["object","action","ui","chart","relationship","state"].includes(String(a.kind))||"string"!=typeof a.value||!Array.isArray(a.frameTimestamps)||"number"!=typeof a.confidence||!Array.isArray(a.uncertaintyReasons))throw Error("Vision adapter returned an invalid observation schema.");return{kind:a.kind,value:a.value,frameTimestamps:a.frameTimestamps.map(Number),confidence:a.confidence,uncertaintyReasons:a.uncertaintyReasons.filter(a=>"string"==typeof a)}}),u=t.filter(a=>a.value.trim().length>0&&a.frameTimestamps.length>0&&Number.isFinite(a.confidence)&&a.confidence>=0&&a.confidence<=1);if(u.length!==t.length||u.some(a=>a.frameTimestamps.some(a=>!p.includes(a))))throw Error("Vision adapter returned observations without valid source-frame provenance.");return(0,f.trackUsageEvent)({type:"media_vision_analysis",modelId:m.modelId,provider:m.provider,frameCount:a.length,observationCount:u.length,timestamp:new Date().toISOString()}),{observations:u}}}}function k(){return{async recognize({imagePath:a,languages:b,signal:j}){let[k,l]=await Promise.all([(0,e.X)(),(0,g.S0)("language")]),m=(0,h.kh)(k,l),n=(0,h.G)(m.provider,m.modelId,m.apiKey,k.customVisionModels),{readFile:o}=await Promise.resolve().then(c.t.bind(c,51455,23)),p=(await o(a)).toString("base64"),{text:q}=await (0,d.Df5)({model:n,abortSignal:j,messages:[{role:"user",content:[{type:"text",text:`Read visible text only. Return JSON {"blocks":[{"text":string,"left":number,"top":number,"width":number,"height":number,"confidence":number,"language":string,"direction":"ltr|rtl|ttb"}]}. Coordinates are normalized 0–1. Preserve RTL/CJK order. Language hints: ${(b??[]).join(", ")||"auto"}.`},{type:"file",mediaType:"image/jpeg",data:`data:image/jpeg;base64,${p}`}]}]}),r=function(a){if(!Array.isArray(a?.blocks))throw Error("OCR adapter returned no blocks.");return{...a,blocks:a.blocks.filter(a=>"string"==typeof a?.text&&[a.left,a.top,a.width,a.height,a.confidence].every(Number.isFinite)&&a.confidence>=0&&a.confidence<=1)}}({...i(q),provider:m.provider,model:m.modelId});return(0,f.trackUsageEvent)({type:"media_ocr",modelId:m.modelId,provider:m.provider,blockCount:r.blocks.length,timestamp:new Date().toISOString()}),r}}}function l(){return{async track(a){if(0===a.length)return[];let[b,j]=await Promise.all([(0,e.X)(),(0,g.S0)("language")]),k=(0,h.kh)(b,j),l=(0,h.G)(k.provider,k.modelId,k.apiKey,b.customVisionModels),m=await Promise.all(a.map(async a=>{let{readFile:b}=await Promise.resolve().then(c.t.bind(c,51455,23));return(await b(a.path)).toString("base64")})),n=a.map(a=>a.timestampSecs),{text:o}=await (0,d.Df5)({model:l,messages:[{role:"user",content:[{type:"text",text:`Track only anonymous visible people across these chronological frames. Return JSON only:
2
+ {"tracks":[{"frameTimestamps":[number],"confidence":number,"limitations":[string]}]}
3
+ Allowed frame timestamps: ${JSON.stringify(n)}.
4
+ A track represents one visually continuous anonymous person within this bounded bundle. Never infer identity, gender, age, ethnicity, or cross-video matching. Omit uncertain tracks rather than guessing.`},...m.map(a=>({type:"file",mediaType:"image/jpeg",data:`data:image/jpeg;base64,${a}`}))]}]}),p=i(o);if(!Array.isArray(p.tracks))throw Error("Person tracker returned no tracks array.");let q=p.tracks.flatMap((a,b)=>{if(!a||"object"!=typeof a||!Array.isArray(a.frameTimestamps)||"number"!=typeof a.confidence||!Array.isArray(a.limitations))return[];let c=[...new Set(a.frameTimestamps.map(Number))].filter(a=>n.includes(a)).sort((a,b)=>a-b);return 0===c.length||a.confidence<0||a.confidence>1?[]:[{trackId:`track-${b+1}`,startSecs:c[0],endSecs:c.at(-1),frameTimestamps:c,confidence:a.confidence,limitations:[...a.limitations.filter(a=>"string"==typeof a),"Anonymous bounded visual track only; no biometric identification or cross-video matching."]}]});return(0,f.trackUsageEvent)({type:"media_vision_analysis",modelId:k.modelId,provider:k.provider,frameCount:a.length,observationCount:q.length,timestamp:new Date().toISOString()}),q}}}},83186:(a,b,c)=>{c.d(b,{LR:()=>p,ZV:()=>t});var d=c(73024),e=c(76760),f=c.n(e),g=c(77598),h=c(26043);let i={schemaVersion:1,revisions:[],jobs:[],inspectionReservations:[],backgroundRefinements:[],artifactAnalysisCache:[],answerMemory:[],artifacts:[],evidence:[],observations:[],states:[],transitions:[],events:[],scenes:[],chapters:[],summaries:[],derived:[],conflicts:[],manifests:[],projections:[]},j=Promise.resolve();function k(){return structuredClone(i)}async function l(a){let b=a?await (0,h.requireProjectDataDir)():await (0,h.getProjectDataDir)();return b?f().join(b,"video-knowledge.json"):null}function m(a){return a?.code==="ENOENT"}async function n(a){try{let b=JSON.parse(await d.promises.readFile(a,"utf8"));if(1!==b.schemaVersion)throw Error(`Unsupported video knowledge schema at ${a}.`);return{...k(),...b}}catch(a){if(m(a))return k();throw a}}let o=null;async function p(){let a,b=await l(!1);if(!b)return k();try{let c=await d.promises.stat(b);a=`${b}:${c.mtimeMs}:${c.size}`}catch(a){if(m(a))return k();throw a}if(o?.key===a)return o.state;let c=await n(b);return o={key:a,state:c},c}async function q(a){let b=await l(!0);if(!b)return;let c=f().join(f().dirname(b),`.${f().basename(b)}.${process.pid}.${(0,g.randomUUID)()}.tmp`);try{await d.promises.writeFile(c,JSON.stringify(a,null,2),"utf8"),await d.promises.rename(c,b)}catch(a){throw await d.promises.unlink(c).catch(()=>{}),a}}let r=a=>new Promise(b=>setTimeout(b,a));async function s(){let a=await l(!0);if(!a)return async()=>{};let b=`${a}.lock`;for(let a=0;a<500;a++)try{let a=await d.promises.open(b,"wx");return await a.writeFile(`${process.pid}:${new Date().toISOString()}`),async()=>{await a.close().catch(()=>{}),await d.promises.unlink(b).catch(()=>{})}}catch(c){if("EEXIST"!==c.code)throw c;try{let a=await d.promises.stat(b);Date.now()-a.mtimeMs>3e5&&await d.promises.unlink(b).catch(()=>{})}catch(a){if(!m(a))throw a}await r(Math.min(50,5+a))}throw Error(`Timed out waiting for the video knowledge state lock: ${b}`)}function t(a){let b=j.then(async()=>{let b=await s();try{let b=await l(!1),c=b?await n(b):k(),d=await a(c);return await q(c),o=null,d}finally{await b()}});return j=b.catch(()=>{}),b}},83957:(a,b,c)=>{c.d(b,{OM:()=>g,S0:()=>f,i2:()=>e});var d=c(41479);async function e(){return d.P}async function f(a){return(await e()).filter(b=>b.type===a)}async function g(a){let b=await e(),c=a?b.filter(b=>b.type===a):b,d=new Map;for(let a of c)d.set(a.owned_by,(d.get(a.owned_by)??0)+1);return Array.from(d.entries()).map(([a,b])=>({id:a,name:h[a]||a.charAt(0).toUpperCase()+a.slice(1),modelCount:b})).sort((a,b)=>b.modelCount-a.modelCount)}let h={openai:"OpenAI",anthropic:"Anthropic",google:"Google",meta:"Meta",mistral:"Mistral",cohere:"Cohere",deepseek:"DeepSeek",amazon:"Amazon",xai:"xAI",perplexity:"Perplexity",alibaba:"Alibaba",groq:"Groq","together-ai":"Together AI",fireworks:"Fireworks",cerebras:"Cerebras",voyage:"Voyage AI",jina:"Jina AI",nomic:"Nomic",bfl:"Black Forest Labs","arcee-ai":"Arcee AI",luma:"Luma",minimax:"MiniMax",elevenlabs:"ElevenLabs"}},85529:(a,b,c)=>{c.d(b,{b:()=>h});var d=c(77598),e=c(83186);let f={score:1,source:"heuristic",calibrationStatus:"uncalibrated",uncertaintyReasons:["Legacy timeline evidence has not been calibrated against the video evaluation corpus."]};function g(a){return"string"==typeof a?a:a&&"object"==typeof a&&!Array.isArray(a)&&"string"==typeof a.text?a.text:JSON.stringify(a)}function h(a){return(0,e.ZV)(b=>{let c=new Date().toISOString(),e=Math.max(30,a.maximumSceneDurationSecs??300),h=[...a.evidence].filter(a=>Number.isFinite(a.timeRange.startSecs)&&Number.isFinite(a.timeRange.endSecs)).sort((a,b)=>a.timeRange.startSecs-b.timeRange.startSecs||a.timeRange.endSecs-b.timeRange.endSecs).map(e=>{let f=(0,d.randomUUID)(),g=(0,d.randomUUID)();return b.evidence.push({id:f,lineageId:g,mediaAssetId:a.mediaAssetId,knowledgeRevisionId:a.knowledgeRevisionId,modality:e.modality,timeRange:i(e.timeRange.startSecs,e.timeRange.endSecs,e.timeRange.precision),frameArtifactIds:e.frameArtifactIds,payload:e.payload,source:e.source,confidence:e.confidence,schemaVersion:1,createdAt:c}),{item:e,id:f,lineageId:g}}),j=[];for(let e of h){let f=e.item.observation?.kind??("transcript"===e.item.modality?"speech":"ocr"===e.item.modality?"ocr":"audio-event"===e.item.modality?"audio-event":"computed"===e.item.modality?"computed":"state"),g=(0,d.randomUUID)(),h=(0,d.randomUUID)();b.observations.push({id:g,lineageId:h,mediaAssetId:a.mediaAssetId,knowledgeRevisionId:a.knowledgeRevisionId,kind:f,timeRange:i(e.item.timeRange.startSecs,e.item.timeRange.endSecs,e.item.timeRange.precision),value:e.item.observation?.value??e.item.payload,evidenceLineageIds:[e.lineageId],confidence:e.item.observation?.confidence??e.item.confidence,schemaVersion:1,createdAt:c}),j.push({id:g,lineageId:h,evidenceLineageId:e.lineageId,item:e.item})}let k=new Map;for(let e of j){let f=e.item.observation?.value??e.item.payload;if(!(f&&"object"==typeof f&&!Array.isArray(f)))continue;let h="string"==typeof f.subject?f.subject.trim():"",j="string"==typeof f.property?f.property.trim():"";if(!h||!j||void 0===f.value)continue;let l=`${h}\u0000${j}`,m=k.get(l),n=(0,d.randomUUID)(),o=(0,d.randomUUID)();b.states.push({id:n,lineageId:o,mediaAssetId:a.mediaAssetId,knowledgeRevisionId:a.knowledgeRevisionId,subject:h,property:j,value:f.value,timeRange:i(e.item.timeRange.startSecs,e.item.timeRange.endSecs,e.item.timeRange.precision),previousStateId:m?.id,evidenceLineageIds:[e.evidenceLineageId],confidence:e.item.observation?.confidence??e.item.confidence,schemaVersion:1,createdAt:c});let p=b.states.find(b=>b.id!==n&&b.mediaAssetId===a.mediaAssetId&&b.subject===h&&b.property===j&&b.timeRange.startSecs<=e.item.timeRange.endSecs&&b.timeRange.endSecs>=e.item.timeRange.startSecs&&JSON.stringify(b.value)!==JSON.stringify(f.value));if(p&&(b.conflicts.some(b=>b.knowledgeRevisionId===a.knowledgeRevisionId&&b.evidenceLineageIds.includes(e.evidenceLineageId)&&b.evidenceLineageIds.some(a=>p.evidenceLineageIds.includes(a)))||b.conflicts.push({id:(0,d.randomUUID)(),mediaAssetId:a.mediaAssetId,knowledgeRevisionId:a.knowledgeRevisionId,evidenceLineageIds:[...new Set([...p.evidenceLineageIds,e.evidenceLineageId])],affectedObservationLineageIds:[e.lineageId],status:"conflicted",schemaVersion:1,createdAt:c})),m&&JSON.stringify(m.value)!==JSON.stringify(f.value)){let k=(0,d.randomUUID)();b.transitions.push({id:(0,d.randomUUID)(),lineageId:k,mediaAssetId:a.mediaAssetId,knowledgeRevisionId:a.knowledgeRevisionId,beforeStateId:m.id,afterStateId:n,description:`${h} ${j} changed from ${g(m.value)} to ${g(f.value)}.`,timeRange:i(e.item.timeRange.startSecs,e.item.timeRange.endSecs,e.item.timeRange.precision),evidenceLineageIds:[e.evidenceLineageId],confidence:e.item.observation?.confidence??e.item.confidence,schemaVersion:1,createdAt:c})}k.set(l,{id:n,lineageId:o,value:f.value})}let l=j.map(e=>{let f=e.item,h=b.transitions.find(b=>b.knowledgeRevisionId===a.knowledgeRevisionId&&b.timeRange.startSecs===f.timeRange.startSecs&&b.evidenceLineageIds.includes(e.evidenceLineageId)),j={id:(0,d.randomUUID)(),lineageId:(0,d.randomUUID)(),mediaAssetId:a.mediaAssetId,knowledgeRevisionId:a.knowledgeRevisionId,type:h?"state-transition":f.observation?.kind??f.modality,description:h?.description??g(f.observation?.value??f.payload).slice(0,2e3),timeRange:i(f.timeRange.startSecs,f.timeRange.endSecs,f.timeRange.precision),evidenceLineageIds:[e.evidenceLineageId],observationLineageIds:[e.lineageId],transitionLineageIds:h?[h.lineageId]:[],confidence:f.observation?.confidence??f.confidence,schemaVersion:1,createdAt:c};return b.events.push(j),j}),m=[];for(let a of l){let b=m.at(-1);!b||a.timeRange.startSecs-b.at(-1).timeRange.endSecs>15||a.timeRange.endSecs-b[0].timeRange.startSecs>e?m.push([a]):b.push(a)}let n=m.map((e,g)=>{let h={id:(0,d.randomUUID)(),lineageId:(0,d.randomUUID)(),mediaAssetId:a.mediaAssetId,knowledgeRevisionId:a.knowledgeRevisionId,title:`Scene ${g+1}: ${(e.map(a=>a.description).filter(Boolean).join(" ").replace(/\s+/g," ").trim()||"Timeline evidence").slice(0,120)}`,timeRange:i(e[0].timeRange.startSecs,e.at(-1).timeRange.endSecs,e.some(a=>"estimated"===a.timeRange.precision)?"estimated":"segment"),eventLineageIds:e.map(a=>a.lineageId),evidenceLineageIds:e.flatMap(a=>a.evidenceLineageIds),quality:{...f,coverage:1},capabilities:[...new Set(e.map(a=>`larkup:${a.type}`))],schemaVersion:1,createdAt:c};return b.scenes.push(h),h});for(let e=0;e<n.length;e+=6){let g=n.slice(e,e+6);b.chapters.push({id:(0,d.randomUUID)(),lineageId:(0,d.randomUUID)(),mediaAssetId:a.mediaAssetId,knowledgeRevisionId:a.knowledgeRevisionId,title:`Chapter ${Math.floor(e/6)+1}: ${g[0].title.slice(0,120)}`,timeRange:i(g[0].timeRange.startSecs,g.at(-1).timeRange.endSecs,"segment"),sceneLineageIds:g.map(a=>a.lineageId),eventLineageIds:g.flatMap(a=>a.eventLineageIds),evidenceLineageIds:g.flatMap(a=>a.evidenceLineageIds),quality:{...f,coverage:1},schemaVersion:1,createdAt:c})}return{evidenceIds:h.map(a=>a.id),evidenceLineageIds:h.map(a=>a.lineageId),observationIds:j.map(a=>a.id),observationLineageIds:j.map(a=>a.lineageId),eventIds:l.map(a=>a.id),sceneIds:n.map(a=>a.id)}})}function i(a,b,c){return{startSecs:Math.max(0,a),endSecs:Math.max(a,b),precision:c}}},93642:(a,b,c)=>{c.d(b,{Cz:()=>w,RF:()=>A,W0:()=>v,addMediaAssets:()=>t,deleteMediaAsset:()=>z,getMediaAsset:()=>C,gl:()=>u,kW:()=>B,l0:()=>y,nG:()=>x,readMediaAssets:()=>l});var d=c(73024),e=c(76760),f=c.n(e),g=c(77598),h=c(26043);let i=Promise.resolve();function j(a){let b=i.then(a,a);return i=b.catch(()=>{}),b}async function k(a){let b=a?await (0,h.requireProjectDataDir)():await (0,h.getProjectDataDir)();return b?f().join(b,"media-assets.json"):null}async function l(){let a=await k(!1);if(!a)return[];try{let b=await d.promises.readFile(a,"utf8"),c=JSON.parse(b);if(!Array.isArray(c))throw Error(`Invalid media asset store at ${a}: expected a JSON array.`);return c}catch(a){if(a?.code==="ENOENT")return[];throw a}}async function m(a){let b=await k(!0);if(!b)return;let c=f().join(f().dirname(b),`.${f().basename(b)}.${process.pid}.${(0,g.randomUUID)()}.tmp`);try{await d.promises.writeFile(c,JSON.stringify(a,null,2),"utf8"),await d.promises.rename(c,b)}catch(a){throw await d.promises.unlink(c).catch(()=>{}),a}}let n=["download","prepare","extract","transcribe","vision","synthesize","index"],o={download:10,prepare:15,extract:15,transcribe:25,vision:30,synthesize:5,index:15};function p(a){return n.map(b=>({stage:b,status:"waiting",updatedAt:a}))}function q(a){return void 0!==a&&Number.isFinite(a)?Math.max(0,a):void 0}function r(a){let b=q(a);return void 0===b?void 0:Math.min(100,b)}function s(a){return Math.floor(q(a.processingRevision)??0)+1}function t(a){return j(async()=>{let b=await l(),c=new Date().toISOString(),d=a.map(a=>({id:(0,g.randomUUID)(),type:a.type,fileName:a.fileName,mimeType:a.mimeType,storageUri:a.storageUri,thumbnailUri:a.thumbnailUri,originalUrl:a.originalUrl,fileSize:a.fileSize,dimensions:a.dimensions,durationSecs:a.durationSecs,indexingInstructions:a.indexingInstructions,indexingQuality:a.indexingQuality,toolInputs:a.toolInputs,groupId:a.groupId,processingStatus:"pending",processingRevision:0,documentIds:[],createdAt:c,updatedAt:c}));return b.push(...d),await m(b),d})}function u(a,b){return j(async()=>{let c=await l(),d=c.findIndex(b=>b.id===a);if(d<0)return;let e=c[d];return c[d]={...e,...b,documentIds:b.documentIds??e.documentIds,pendingDocumentIds:b.pendingDocumentIds??e.pendingDocumentIds,supersededDocumentIds:b.supersededDocumentIds??e.supersededDocumentIds,updatedAt:new Date().toISOString()},await m(c),c[d]})}function v(a,b){return j(async()=>{let c=new Set(a);if(0===c.size)return[];let d=await l(),e=new Date().toISOString(),f=[];for(let a of d)c.has(a.id)&&a.groupId!==b&&(a.groupId=b,a.updatedAt=e,f.push(a));return f.length>0&&await m(d),f})}function w(a,b,c){return j(async()=>{let d,e,f=await l(),g=f.findIndex(b=>b.id===a);if(g<0)return;let h=new Date().toISOString(),i=f[g],j=new Map((i.processingSteps??[]).map(a=>[a.stage,a])),k=p(h).map(a=>j.get(a.stage)??a),n=k.findIndex(a=>a.stage===b),t=k[n],u=new Set(["completed","skipped","failed"]),v=c.status??t.status,w=u.has(t.status)||"running"===t.status&&"waiting"===v?t.status:v,x=r(t.percent),y=r(c.percent),z=void 0===y?x:Math.max(x??0,y),A=q(t.current),B=q(c.current),C=void 0===B?A:Math.max(A??0,B),D=void 0===c.total?q(t.total):q(c.total);void 0!==C&&void 0!==D&&(D=Math.max(D,C))>0&&(z=Math.max(z??0,Math.min(100,C/D*100))),"completed"===w&&(z=100,void 0!==D&&(C=D));let E=u.has(w),F={...t,...c,stage:b,status:w,percent:z,current:C,total:D,...E?{estimatedRemainingSeconds:void 0}:{},startedAt:c.startedAt??t.startedAt??("running"===w||E?h:void 0),updatedAt:h,finishedAt:E?c.finishedAt??t.finishedAt??h:void 0};k[n]=F;let G=Math.max(r(i.processingProgress)??0,0===(e=(d=k.filter(a=>"skipped"!==a.status)).reduce((a,b)=>a+o[b.stage],0))?100:Math.round(d.reduce((a,b)=>a+o[b.stage]*function(a){if("completed"===a.status)return 100;if("waiting"===a.status||"skipped"===a.status)return 0;let b=r(a.percent);return void 0!==b?b:void 0!==a.current&&void 0!==a.total&&Number.isFinite(a.current)&&Number.isFinite(a.total)&&a.total>0?Math.min(100,Math.max(0,a.current/a.total*100)):0}(b)/100,0)/e*1e3)/10),H=[...k].reverse().find(a=>"running"===a.status&&a.message)?.message,I="running"===F.status?F.message??c.message??i.processingMessage:H??c.message??F.message??i.processingMessage;return f[g]={...i,processingSteps:k,processingProgress:G,processingMessage:I,processingRevision:s(i),processingHeartbeatAt:h,updatedAt:h},await m(f),f[g]})}function x(a){return j(async()=>{let b=await l(),c=b.findIndex(b=>b.id===a);if(c<0||"processing"===b[c].processingStatus||"Queued for background processing..."===b[c].processingMessage)return;let d=new Date().toISOString();return b[c]={...b[c],processingStatus:"pending",processingError:void 0,processingMessage:"Queued for background processing...",processingProgress:0,processingSteps:p(d),processingRevision:s(b[c]),processingStartedAt:d,processingHeartbeatAt:d,updatedAt:d},await m(b),b[c]})}function y(a=3e5){return j(async()=>{let b=await l(),c=Date.now()-a,d="The background worker stopped. Retry to resume media processing.",e=0;for(let a=0;a<b.length;a++){let f=b[a],g="processing"===f.processingStatus,h="pending"===f.processingStatus&&"Queued for background processing..."===f.processingMessage,i=f.processingHeartbeatAt??f.updatedAt;if((g||h)&&new Date(i).getTime()<c){let c=new Date().toISOString(),g=f.processingSteps?.map(a=>"running"===a.status?{...a,status:"failed",message:d,updatedAt:c,finishedAt:c}:a);b[a]={...f,processingStatus:"failed",processingError:d,processingMessage:void 0,processingProgress:void 0,processingSteps:g,processingRevision:s(f),processingHeartbeatAt:c,updatedAt:c},e++}}return e>0&&await m(b),e})}function z(a){return j(async()=>{let b=await l();await m(b.filter(b=>b.id!==a))})}function A(a){return j(async()=>{let b=await l(),c=new Set(a);await m(b.filter(a=>!c.has(a.id)))})}async function B(){let a=await l(),b={image:0,video:0,audio:0},c={pending:0,processing:0,completed:0,failed:0},d=0;for(let e of a)b[e.type]++,c[e.processingStatus]++,d+=e.fileSize;return{total:a.length,byType:b,byStatus:c,totalBytes:d}}async function C(a){return(await l()).find(b=>b.id===a)}}};