tokenhop 1.0.0 → 1.0.1

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 (599) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +7 -7
  3. package/app/.next-cli-build/build-manifest.json +3 -3
  4. package/app/.next-cli-build/prerender-manifest.json +3 -3
  5. package/app/.next-cli-build/react-loadable-manifest.json +43 -43
  6. package/app/.next-cli-build/server/app/(dashboard)/dashboard/[...missing]/page.js +1 -1
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/[...missing]/page.js.nft.json +1 -1
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/[...missing]/page_client-reference-manifest.js +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page.js +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page.js.nft.json +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page_client-reference-manifest.js +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/page.js +1 -1
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/page.js.nft.json +1 -1
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
  73. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  74. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  75. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
  76. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  77. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  78. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
  79. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  80. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  81. package/app/.next-cli-build/server/app/(dashboard)/dashboard/ui-kit/page.js +1 -1
  82. package/app/.next-cli-build/server/app/(dashboard)/dashboard/ui-kit/page.js.nft.json +1 -1
  83. package/app/.next-cli-build/server/app/(dashboard)/dashboard/ui-kit/page_client-reference-manifest.js +1 -1
  84. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +1 -1
  85. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  86. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  87. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  88. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  89. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  90. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  91. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  92. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  93. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  94. package/app/.next-cli-build/server/app/_not-found/page.js +1 -1
  95. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  97. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  98. package/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  99. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  100. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +4 -4
  101. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  102. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  103. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  104. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  107. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js.nft.json +1 -1
  109. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/auth/saml/start/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/auth/saml/test/route.js.nft.json +1 -1
  112. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/cli-tool-settings/[toolId]/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/cli-tool-settings/route.js.nft.json +1 -1
  115. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
  116. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  117. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  118. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  119. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  121. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  122. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  123. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  124. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +2 -2
  125. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  127. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
  129. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  130. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
  131. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  132. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  133. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  134. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +3 -3
  135. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  136. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +2 -2
  137. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js.nft.json +1 -1
  138. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  139. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +1 -1
  141. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
  142. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +3 -3
  143. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +3 -3
  145. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  146. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +1 -1
  147. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  148. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  149. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  151. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/combos/[id]/headroom/route.js +1 -1
  153. package/app/.next-cli-build/server/app/api/combos/[id]/headroom/route.js.nft.json +1 -1
  154. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  155. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  156. package/app/.next-cli-build/server/app/api/combos/[id]/test/route.js +1 -1
  157. package/app/.next-cli-build/server/app/api/combos/[id]/test/route.js.nft.json +1 -1
  158. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  159. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/gateway/status/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/home/live-routes/route.js.nft.json +1 -1
  169. package/app/.next-cli-build/server/app/api/home/quota/route.js +1 -1
  170. package/app/.next-cli-build/server/app/api/home/quota/route.js.nft.json +1 -1
  171. package/app/.next-cli-build/server/app/api/home/summary/route.js.nft.json +1 -1
  172. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  175. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  178. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  180. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  181. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  182. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  184. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  185. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  186. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  187. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js.nft.json +1 -1
  189. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  190. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  191. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  192. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  193. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  195. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  196. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  197. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  199. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  201. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  202. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  203. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  204. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  205. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  206. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  207. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  208. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  209. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  210. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  211. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  212. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  213. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  214. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js.nft.json +1 -1
  215. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js +1 -1
  216. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js.nft.json +1 -1
  217. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  218. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  219. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  220. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  221. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  222. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  223. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  224. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  225. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  226. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  227. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  229. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  231. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  232. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  233. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  234. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  235. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  236. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  237. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  238. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  239. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  240. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  241. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  242. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  243. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  244. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  245. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  246. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  247. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  248. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
  249. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  250. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  251. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  253. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/settings/config/export/route.js.nft.json +1 -1
  255. package/app/.next-cli-build/server/app/api/settings/config/import/route.js +1 -1
  256. package/app/.next-cli-build/server/app/api/settings/config/import/route.js.nft.json +1 -1
  257. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  258. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  259. package/app/.next-cli-build/server/app/api/settings/environment/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  261. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  262. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  263. package/app/.next-cli-build/server/app/api/shell/savings-milestone/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/shell/summary/route.js +1 -1
  265. package/app/.next-cli-build/server/app/api/shell/summary/route.js.nft.json +1 -1
  266. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  267. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  268. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  269. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  271. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  272. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  273. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  274. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  275. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  276. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  277. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  278. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  279. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  280. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  281. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  282. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  283. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  284. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  285. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  286. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  287. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  288. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  289. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  290. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  291. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  292. package/app/.next-cli-build/server/app/api/usage/last-activity/route.js.nft.json +1 -1
  293. package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
  294. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  295. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  296. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  297. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  298. package/app/.next-cli-build/server/app/api/usage/savings/route.js.nft.json +1 -1
  299. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  300. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  301. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  302. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  303. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  304. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  305. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  306. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  307. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  308. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  309. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  310. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  311. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  312. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  313. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  314. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  315. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  316. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  317. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  318. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  319. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js +1 -1
  320. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js.nft.json +1 -1
  321. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  322. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  323. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  324. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  325. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  326. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  327. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  328. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  329. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  330. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  331. package/app/.next-cli-build/server/app/api/v1/search/route.js +2 -2
  332. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  333. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
  334. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
  335. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
  336. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
  337. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
  338. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
  339. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
  340. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
  341. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  342. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  343. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  344. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  345. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  346. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  347. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  348. package/app/.next-cli-build/server/app/callback/page.js +1 -1
  349. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  350. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  351. package/app/.next-cli-build/server/app/callback.html +1 -1
  352. package/app/.next-cli-build/server/app/callback.rsc +4 -4
  353. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  354. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  355. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +4 -4
  356. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +2 -2
  357. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +10 -10
  358. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +10 -10
  359. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +10 -10
  360. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  361. package/app/.next-cli-build/server/app/dashboard/combos.html +2 -2
  362. package/app/.next-cli-build/server/app/dashboard/combos.rsc +10 -10
  363. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +10 -10
  364. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +10 -10
  365. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  366. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  367. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +7 -7
  368. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +7 -7
  369. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +7 -7
  370. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  371. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +2 -2
  372. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +10 -10
  373. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +10 -10
  374. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +10 -10
  375. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  376. package/app/.next-cli-build/server/app/dashboard/media-providers.html +1 -1
  377. package/app/.next-cli-build/server/app/dashboard/media-providers.rsc +9 -9
  378. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/__PAGE__.segment.rsc +9 -9
  379. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_full.segment.rsc +9 -9
  380. package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_tree.segment.rsc +1 -1
  381. package/app/.next-cli-build/server/app/dashboard/mitm.html +2 -2
  382. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +10 -10
  383. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +10 -10
  384. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +10 -10
  385. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  386. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  387. package/app/.next-cli-build/server/app/dashboard/profile.rsc +9 -9
  388. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +9 -9
  389. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +9 -9
  390. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  391. package/app/.next-cli-build/server/app/dashboard/providers/new.html +2 -2
  392. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +10 -10
  393. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +10 -10
  394. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +10 -10
  395. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  396. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +2 -2
  397. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +9 -9
  398. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +9 -9
  399. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +9 -9
  400. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  401. package/app/.next-cli-build/server/app/dashboard/pxpipe.html +2 -2
  402. package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +9 -9
  403. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +9 -9
  404. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +9 -9
  405. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +1 -1
  406. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  407. package/app/.next-cli-build/server/app/dashboard/quota.rsc +10 -10
  408. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +10 -10
  409. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +10 -10
  410. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  411. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
  412. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  413. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  414. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  415. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
  416. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  417. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  418. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +4 -4
  419. package/app/.next-cli-build/server/app/dashboard/settings.html +2 -2
  420. package/app/.next-cli-build/server/app/dashboard/settings.rsc +10 -10
  421. package/app/.next-cli-build/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings/__PAGE__.segment.rsc +10 -10
  422. package/app/.next-cli-build/server/app/dashboard/settings.segments/_full.segment.rsc +10 -10
  423. package/app/.next-cli-build/server/app/dashboard/settings.segments/_tree.segment.rsc +1 -1
  424. package/app/.next-cli-build/server/app/dashboard/skills.html +2 -2
  425. package/app/.next-cli-build/server/app/dashboard/skills.rsc +7 -7
  426. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +7 -7
  427. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +7 -7
  428. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
  429. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  430. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +10 -10
  431. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +10 -10
  432. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +10 -10
  433. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
  434. package/app/.next-cli-build/server/app/dashboard/translator.html +2 -2
  435. package/app/.next-cli-build/server/app/dashboard/translator.rsc +10 -10
  436. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +10 -10
  437. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +10 -10
  438. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  439. package/app/.next-cli-build/server/app/dashboard/ui-kit.html +1 -1
  440. package/app/.next-cli-build/server/app/dashboard/ui-kit.rsc +9 -9
  441. package/app/.next-cli-build/server/app/dashboard/ui-kit.segments/!KGRhc2hib2FyZCk/dashboard/ui-kit/__PAGE__.segment.rsc +9 -9
  442. package/app/.next-cli-build/server/app/dashboard/ui-kit.segments/_full.segment.rsc +9 -9
  443. package/app/.next-cli-build/server/app/dashboard/ui-kit.segments/_tree.segment.rsc +1 -1
  444. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  445. package/app/.next-cli-build/server/app/dashboard/usage.rsc +10 -10
  446. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +10 -10
  447. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +10 -10
  448. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  449. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  450. package/app/.next-cli-build/server/app/dashboard.rsc +10 -10
  451. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +10 -10
  452. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +10 -10
  453. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  454. package/app/.next-cli-build/server/app/index.html +1 -1
  455. package/app/.next-cli-build/server/app/index.rsc +4 -4
  456. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +4 -4
  457. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  458. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  459. package/app/.next-cli-build/server/app/landing/page.js +1 -1
  460. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  461. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  462. package/app/.next-cli-build/server/app/landing.html +1 -1
  463. package/app/.next-cli-build/server/app/landing.rsc +5 -5
  464. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
  465. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  466. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +5 -5
  467. package/app/.next-cli-build/server/app/login/page.js +1 -1
  468. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  469. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  470. package/app/.next-cli-build/server/app/login.html +1 -1
  471. package/app/.next-cli-build/server/app/login.rsc +4 -4
  472. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
  473. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  474. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +4 -4
  475. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  476. package/app/.next-cli-build/server/app/page.js +1 -1
  477. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  478. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  479. package/app/.next-cli-build/server/app/skills/[...slug]/route.js.nft.json +1 -1
  480. package/app/.next-cli-build/server/app-paths-manifest.json +7 -7
  481. package/app/.next-cli-build/server/chunks/1152.js +1 -1
  482. package/app/.next-cli-build/server/chunks/1336.js +1 -1
  483. package/app/.next-cli-build/server/chunks/1432.js +1 -1
  484. package/app/.next-cli-build/server/chunks/1533.js +1 -1
  485. package/app/.next-cli-build/server/chunks/1764.js +1 -1
  486. package/app/.next-cli-build/server/chunks/1854.js +1 -0
  487. package/app/.next-cli-build/server/chunks/2380.js +7 -7
  488. package/app/.next-cli-build/server/chunks/24.js +1 -1
  489. package/app/.next-cli-build/server/chunks/2460.js +1 -1
  490. package/app/.next-cli-build/server/chunks/2592.js +1 -1
  491. package/app/.next-cli-build/server/chunks/318.js +10 -9
  492. package/app/.next-cli-build/server/chunks/3558.js +1 -1
  493. package/app/.next-cli-build/server/chunks/3593.js +1 -1
  494. package/app/.next-cli-build/server/chunks/3676.js +1 -1
  495. package/app/.next-cli-build/server/chunks/368.js +1 -0
  496. package/app/.next-cli-build/server/chunks/3919.js +1 -1
  497. package/app/.next-cli-build/server/chunks/3943.js +1 -1
  498. package/app/.next-cli-build/server/chunks/4037.js +1 -1
  499. package/app/.next-cli-build/server/chunks/4123.js +1 -1
  500. package/app/.next-cli-build/server/chunks/4125.js +1 -1
  501. package/app/.next-cli-build/server/chunks/4199.js +1 -1
  502. package/app/.next-cli-build/server/chunks/4334.js +1 -1
  503. package/app/.next-cli-build/server/chunks/4406.js +2 -2
  504. package/app/.next-cli-build/server/chunks/4521.js +1 -1
  505. package/app/.next-cli-build/server/chunks/4730.js +1 -1
  506. package/app/.next-cli-build/server/chunks/4780.js +1 -1
  507. package/app/.next-cli-build/server/chunks/4903.js +1 -0
  508. package/app/.next-cli-build/server/chunks/5055.js +1 -0
  509. package/app/.next-cli-build/server/chunks/5260.js +1 -0
  510. package/app/.next-cli-build/server/chunks/5335.js +1 -0
  511. package/app/.next-cli-build/server/chunks/5765.js +1 -0
  512. package/app/.next-cli-build/server/chunks/5827.js +1 -0
  513. package/app/.next-cli-build/server/chunks/6000.js +1 -0
  514. package/app/.next-cli-build/server/chunks/620.js +1 -0
  515. package/app/.next-cli-build/server/chunks/6252.js +1 -1
  516. package/app/.next-cli-build/server/chunks/6328.js +1 -0
  517. package/app/.next-cli-build/server/chunks/6403.js +1 -0
  518. package/app/.next-cli-build/server/chunks/6496.js +1 -1
  519. package/app/.next-cli-build/server/chunks/6565.js +1 -0
  520. package/app/.next-cli-build/server/chunks/6734.js +1 -1
  521. package/app/.next-cli-build/server/chunks/7211.js +1 -1
  522. package/app/.next-cli-build/server/chunks/7616.js +1 -1
  523. package/app/.next-cli-build/server/chunks/7716.js +1 -1
  524. package/app/.next-cli-build/server/chunks/7819.js +1 -1
  525. package/app/.next-cli-build/server/chunks/7828.js +1 -1
  526. package/app/.next-cli-build/server/chunks/7901.js +1 -1
  527. package/app/.next-cli-build/server/chunks/8171.js +1 -1
  528. package/app/.next-cli-build/server/chunks/8255.js +1 -1
  529. package/app/.next-cli-build/server/chunks/8372.js +1 -1
  530. package/app/.next-cli-build/server/chunks/8416.js +1 -1
  531. package/app/.next-cli-build/server/chunks/8895.js +12 -12
  532. package/app/.next-cli-build/server/chunks/8988.js +1 -0
  533. package/app/.next-cli-build/server/chunks/9219.js +1 -0
  534. package/app/.next-cli-build/server/chunks/9243.js +1 -0
  535. package/app/.next-cli-build/server/chunks/9326.js +1 -0
  536. package/app/.next-cli-build/server/chunks/9343.js +1 -1
  537. package/app/.next-cli-build/server/chunks/9489.js +3 -0
  538. package/app/.next-cli-build/server/chunks/9578.js +1 -1
  539. package/app/.next-cli-build/server/chunks/9594.js +1 -0
  540. package/app/.next-cli-build/server/chunks/965.js +1 -1
  541. package/app/.next-cli-build/server/chunks/9899.js +1 -1
  542. package/app/.next-cli-build/server/instrumentation.js +1 -1
  543. package/app/.next-cli-build/server/instrumentation.js.nft.json +1 -1
  544. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  545. package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
  546. package/app/.next-cli-build/server/middleware.js.nft.json +1 -1
  547. package/app/.next-cli-build/server/pages/404.html +1 -1
  548. package/app/.next-cli-build/server/pages/500.html +1 -1
  549. package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  550. package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  551. package/app/.next-cli-build/static/chunks/{198-145d0ed2ec3c54f5.js → 198-0c7f5eadfd257db1.js} +1 -1
  552. package/app/.next-cli-build/static/chunks/{3670-e7a22341025498f8.js → 3670-90f5cd325f460eb5.js} +1 -1
  553. package/app/.next-cli-build/static/chunks/5014-a5d960f4c6bc6297.js +1 -0
  554. package/app/.next-cli-build/static/chunks/{6174.18e2c57e892d721a.js → 6174.f1da2912aec81c15.js} +1 -1
  555. package/app/.next-cli-build/static/chunks/6448-71a8c2ac8d9ecc09.js +1 -0
  556. package/app/.next-cli-build/static/chunks/7899-83edd7bbf1a98c4a.js +1 -0
  557. package/app/.next-cli-build/static/chunks/8105-bdd81b911fed8537.js +1 -0
  558. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/{page-8147ae8fa9c04381.js → page-42bfc760fbea3b96.js} +1 -1
  559. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/{page-9cbf62f78701882a.js → page-084fc21b1dbae00d.js} +1 -1
  560. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-5f91e148400a241b.js → page-59ee0b412f972940.js} +3 -3
  561. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-dac4ab98fc595054.js → page-de53f51d191eec46.js} +1 -1
  562. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-463f9fa33be9426a.js +1 -0
  563. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-06f4e52ee3b63f82.js → page-243d3da0a2c6cbe9.js} +1 -1
  564. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/ui-kit/{page-6c982cc50b6af101.js → page-998f8c5a36dac961.js} +1 -1
  565. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-923f864ec0be0fc8.js +1 -0
  566. package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-dd9d1e49b2f69197.js → layout-96ebd2b46f1f8d39.js} +1 -1
  567. package/app/.next-cli-build/static/chunks/app/landing/{page-02b7bfebd65c41f1.js → page-bcaea5febe1c68c0.js} +1 -1
  568. package/app/.next-cli-build/static/chunks/webpack-8693ccf029e9af63.js +1 -0
  569. package/app/custom-server.js +0 -37
  570. package/app/package.json +1 -1
  571. package/app/src/lib/db/adapters/sqljsAdapter.js +39 -4
  572. package/app/src/lib/oauth/services/xai.js +19 -12
  573. package/app/src/shared/services/quotaAutoPing.js +43 -8
  574. package/app/src/shared/services/quotaSnapshotPoller.js +2 -1
  575. package/app/src/sse/services/backgroundTokenRefresh.js +13 -1
  576. package/package.json +1 -1
  577. package/src/cli/menus/combos.js +3 -1
  578. package/app/.next-cli-build/server/chunks/1026.js +0 -1
  579. package/app/.next-cli-build/server/chunks/2384.js +0 -1
  580. package/app/.next-cli-build/server/chunks/3093.js +0 -1
  581. package/app/.next-cli-build/server/chunks/331.js +0 -1
  582. package/app/.next-cli-build/server/chunks/3414.js +0 -1
  583. package/app/.next-cli-build/server/chunks/3586.js +0 -1
  584. package/app/.next-cli-build/server/chunks/4278.js +0 -1
  585. package/app/.next-cli-build/server/chunks/6158.js +0 -1
  586. package/app/.next-cli-build/server/chunks/6354.js +0 -1
  587. package/app/.next-cli-build/server/chunks/6769.js +0 -1
  588. package/app/.next-cli-build/server/chunks/7261.js +0 -1
  589. package/app/.next-cli-build/server/chunks/8635.js +0 -3
  590. package/app/.next-cli-build/server/chunks/994.js +0 -1
  591. package/app/.next-cli-build/static/chunks/5014-a441cde708542153.js +0 -1
  592. package/app/.next-cli-build/static/chunks/6448-4eabf683083596e6.js +0 -1
  593. package/app/.next-cli-build/static/chunks/7899-e6a70cb9d3684f7f.js +0 -1
  594. package/app/.next-cli-build/static/chunks/8105-5c7e7c73b4bd532d.js +0 -1
  595. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-9fadf2c38665c20c.js +0 -1
  596. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-7571538830147099.js +0 -1
  597. package/app/.next-cli-build/static/chunks/webpack-187fa25c98ba99f3.js +0 -1
  598. /package/app/.next-cli-build/static/{3Qm_WgU2xvFJ9U_G7SKhT → J4xdfHpBUAMOCO5dsemSj}/_buildManifest.js +0 -0
  599. /package/app/.next-cli-build/static/{3Qm_WgU2xvFJ9U_G7SKhT → J4xdfHpBUAMOCO5dsemSj}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=2134,a.ids=[2134],a.modules={643:a=>{"use strict";a.exports=require("node:perf_hooks")},1708:a=>{"use strict";a.exports=require("node:process")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4573:a=>{"use strict";a.exports=require("node:buffer")},7066:a=>{"use strict";a.exports=require("node:tty")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10117:(a,b)=>{"use strict";function c(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"encodeURIPath",{enumerable:!0,get:function(){return c}})},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{"use strict";a.exports=require("dns")},16698:a=>{"use strict";a.exports=require("node:async_hooks")},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"notFound")&&c.d(b,{notFound:function(){return d.notFound}}),c.o(d,"useParams")&&c.d(b,{useParams:function(){return d.useParams}}),c.o(d,"usePathname")&&c.d(b,{usePathname:function(){return d.usePathname}}),c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}}),c.o(d,"useSearchParams")&&c.d(b,{useSearchParams:function(){return d.useSearchParams}})},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21820:a=>{"use strict";a.exports=require("os")},26634:(a,b,c)=>{"use strict";c.d(b,{HR:()=>p,HX:()=>i,Rw:()=>f,UP:()=>l,e_:()=>o,f7:()=>m,h6:()=>k,nb:()=>g,ob:()=>n,s6:()=>h,sf:()=>j});var d=c(58962),e=c(46926);let f={ALL:"all",CONNECTED:"connected",NEEDS_ATTENTION:"needs-attention",OAUTH:"oauth",FREE:"free",APIKEY:"apikey"},g=[{value:f.ALL,label:"All"},{value:f.CONNECTED,label:"Connected"},{value:f.NEEDS_ATTENTION,label:"Needs attention"},{value:f.OAUTH,label:"OAuth"},{value:f.FREE,label:"Free tier"},{value:f.APIKEY,label:"API key"}];function h(a){return(0,e.Gy)(a)}function i(a,b,c){let f=Array.isArray(c)?c:[c],g=a.filter(a=>a.provider===b&&f.includes(a.authType)),h=(0,e.SB)(g),i=h.counts.ok+h.counts.warn+h.counts.err,j=g.filter(a=>["err","warn"].includes((0,e.tT)(a).status)),k=h.counts.err+h.counts.warn,l=g.length,m=l>0&&h.counts.off===l,n=g.some(a=>"Cooling down"===(0,e.tT)(a).reason),o=j.sort((a,b)=>new Date(b.lastErrorAt||0)-new Date(a.lastErrorAt||0))[0];return{connected:i,error:k,total:l,errorCode:o?function(a){if(!a)return null;let b=a.lastErrorType;if("runtime_error"===b)return"RUNTIME";if("upstream_auth_error"===b||"auth_missing"===b||"token_refresh_failed"===b||"token_expired"===b)return"AUTH";if("upstream_rate_limited"===b)return"429";if("upstream_unavailable"===b)return"5XX";if("network_error"===b)return"NET";let c=Number(a.errorCode);if(Number.isFinite(c)&&c>=400)return String(c);let e=(0,d.E2)(a.lastError);if("401"===e||"403"===e)return"AUTH";if(e&&"ERR"!==e)return e;let f=(a.lastError||"").toLowerCase();return f.includes("runtime")||f.includes("not runnable")||f.includes("not installed")?"RUNTIME":f.includes("invalid api key")||f.includes("token invalid")||f.includes("revoked")||f.includes("unauthorized")||f.includes("no access token")||f.includes("missing access token")||f.includes("auth")||f.includes("sign in")||f.includes("signin")||f.includes("expired")?"AUTH":"ERR"}(o):null,errorTime:o?.lastErrorAt?(0,d.gs)(o.lastErrorAt):null,allDisabled:m,hasCooldown:n}}function j(a){return a&&0!==a.length?a.map((a,b)=>{let c=a.name||a.email||`Account ${b+1}`,d=(0,e.tT)(a);return"off"===d.status?{value:0,kind:"none",label:c}:"warn"===d.status?{value:50,kind:"warn",label:c}:"err"===d.status?{value:100,kind:"err",label:c}:{value:100,kind:"ok",label:c}}):[{value:0,kind:"none",label:"No accounts"}]}function k(a){return new URLSearchParams(a||"").get("provider")||null}function l(a,b){let c=new URLSearchParams(a||"");b?c.set("provider",b):c.delete("provider");let d=c.toString();return d?`/dashboard/providers?${d}`:"/dashboard/providers"}function m(a,b,c=!1,d=null,e){return a===f.ALL||(a===f.CONNECTED?!c&&(b?.connected||0)>0:a===f.NEEDS_ATTENTION?o(b,c,e):a===f.OAUTH?"oauth"===d:a===f.FREE?"free"===d:a!==f.APIKEY||"apikey"===d||"compatible"===d)}function n(a){let b={[f.ALL]:a.length,[f.CONNECTED]:0,[f.NEEDS_ATTENTION]:0,[f.OAUTH]:0,[f.FREE]:0,[f.APIKEY]:0};for(let c of a){let{stats:a,isNoAuth:d,authGroup:e}=c;m(f.CONNECTED,a,d)&&(b[f.CONNECTED]+=1),m(f.NEEDS_ATTENTION,a,d,e,c.hasCooldown)&&(b[f.NEEDS_ATTENTION]+=1),"oauth"===e?b[f.OAUTH]+=1:"free"===e?b[f.FREE]+=1:("apikey"===e||"compatible"===e)&&(b[f.APIKEY]+=1)}return b}function o(a,b=!1,c){return!b&&((a?.error||0)>0||(c??a?.hasCooldown)===!0)}function p(a){return`${a} ${1===a?"needs":"need"} a look`}},27107:(a,b,c)=>{"use strict";c.d(b,{default:()=>aj});var d=c(48249),e=c(67484),f=c(9123),g=c(19099),h=c(79735),i=c.n(h),j=c(74812),k=c(216),l=c(99070),m=c(50585),n=c(41371),o=c(54253);let p={key:null,models:[],error:null};async function q(a,{refresh:b=!1}={}){let c=await fetch(`/api/providers/${a}/models${b?"?refresh=1":""}`,{cache:"no-store"}),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error||`Failed to fetch models (HTTP ${c.status})`);return{models:Array.isArray(d?.models)?d.models:[],warning:d?.warning||null}}var r=c(22825),s=c(27790),t=c(11568),u=c(81232),v=c(49885),w=c.n(v),x=c(83035),y=c(13715),z=c(24279),A=c(67635),B=c(26634);function C({providerId:a,providerInfo:b,connections:c,authLabel:e,authVariant:f,modelSnippet:g,loading:h}){let i=c.filter(a=>!1!==a.isActive).length,k=c.filter(a=>(0,B.s6)(a)).length,l=c.filter(a=>["error","expired"].includes(a.testStatus)).length,m=0===c.length?{variant:"neutral",label:"No accounts"}:l>0?{variant:"err",label:`${l} error${1===l?"":"s"}`}:k>0?{variant:"warn",label:`${k} cooling down`}:{variant:"ok",label:`${i} active`},n=b?.notice?.apiKeyUrl||b?.notice?.signupUrl||b?.website;return(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsxs)("div",{className:"flex min-w-0 flex-wrap items-start gap-3.5",children:[(0,d.jsx)(x.default,{providerId:a,size:"lg",status:"neutral"===m.variant?void 0:m.variant}),(0,d.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1.5",children:[(0,d.jsx)(y.A,{children:b?.name||a}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5","aria-live":"polite",children:[(0,d.jsx)(z.default,{variant:f,children:e}),(0,d.jsx)(z.default,{variant:m.variant,dot:"neutral"!==m.variant,children:m.label}),n?(0,d.jsxs)("a",{href:n,target:"_blank",rel:"noopener noreferrer",className:"inline-flex min-h-11 items-center gap-1 px-1 text-xs font-semibold text-coral-ink hover:text-coral focus-visible:shadow-focus focus-visible:outline-none",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-sm","aria-hidden":"true",children:"open_in_new"}),b?.notice?.apiKeyUrl?"Get API key":"Sign up / Learn more"]}):null]})]})]}),(0,d.jsxs)("div",{className:"mt-4 flex flex-col gap-2 rounded-2xl bg-raised p-3.5",children:[(0,d.jsx)("span",{className:"text-[13px] text-muted",children:"Point any client at your endpoint and ask for"}),h?(0,d.jsx)(j.Skeleton,{className:"h-11 w-full"}):(0,d.jsx)(A.default,{value:`"model": "${g}"`,copyValue:g,label:"Copy model id snippet"})]})]})}function D(a){return String(a||"").replace(/^\s*(?:\u26A0\uFE0F?\s*)?(?:risk notice:\s*)?/i,"").trim()}function E({providerInfo:a}){return a?.deprecated?(0,d.jsx)(k.default,{variant:"warn",title:"Risk notice",children:D(a.deprecationNotice)}):a?.notice?.text?(0,d.jsx)(k.default,{variant:"info",title:"Provider notice",icon:"info",children:(0,d.jsxs)("span",{className:"flex flex-wrap items-center gap-2",children:[a.notice.text,a.notice.apiKeyUrl?(0,d.jsx)(l.default,{size:"sm",variant:"secondary",iconRight:"open_in_new",onClick:()=>window.open(a.notice.apiKeyUrl,"_blank","noopener"),children:"Get API key"}):null]})}):null}C.propTypes={providerId:w().string.isRequired,providerInfo:w().object,connections:w().array.isRequired,authLabel:w().string.isRequired,authVariant:w().string.isRequired,modelSnippet:w().string.isRequired,loading:w().bool},E.propTypes={providerInfo:w().object};var F=c(17660);function G({isAnthropic:a,apiType:b,baseUrl:c,onAddKey:e,onEdit:f,onDelete:g}){return(0,d.jsx)(F.default,{title:a?"Anthropic Compatible Details":"OpenAI Compatible Details",subtitle:(0,d.jsxs)("span",{className:"break-all font-mono text-[13px]",children:[a?"Messages API":"responses"===b?"Responses API":"Chat Completions"," \xb7 ",(c||"").replace(/\/$/,""),"/",a?"messages":"responses"===b?"responses":"chat/completions"]}),action:(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(l.default,{size:"sm",icon:"add",onClick:e,children:"Add API key"}),(0,d.jsx)(l.default,{size:"sm",variant:"secondary",icon:"edit",onClick:f,children:"Edit"}),(0,d.jsx)(l.default,{size:"sm",variant:"secondary",icon:"delete",onClick:g,children:"Delete"})]})})}G.propTypes={isAnthropic:w().bool.isRequired,apiType:w().string,baseUrl:w().string,onAddKey:w().func.isRequired,onEdit:w().func.isRequired,onDelete:w().func.isRequired};var H=c(29731),I=c(75790),J=c(83552),K=c(26584),L=c(99258),M=c(18753),N=c(42076),O=c(50377);function P({isFreeNoAuth:a,storageAlias:b,displayAlias:c,isAnthropic:f,connections:g,models:h,actions:i}){let{copied:j,error:k,copy:m}=(0,O.C)(),[n,o]=(0,e.useState)(""),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(!1),[t,u]=(0,e.useState)(null),[v,w]=(0,e.useState)({}),x=(0,M.R)({customModels:h.customModels,modelAliases:h.modelAliases,providerAlias:b,type:"llm"}),y=g.some(a=>!1!==a.isActive),z=async a=>{if(!t){u(a);try{let c=await fetch("/api/models/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:`${b}/${a}`})}),d=await c.json().catch(()=>({})),e=c.ok&&d.ok;w(b=>({...b,[a]:e?"ok":"error"})),e||i.notifyError(d.error||"Model not reachable")}catch{w(b=>({...b,[a]:"error"})),i.notifyError("Network error")}finally{u(null)}}},A=async()=>{let a=n.trim();if(a&&!p){if(x.some(b=>b.id===a))return void i.notifyError("Model already exists for this provider.");q(!0);try{await h.addCustomModel(a,"llm",b)&&o("")}finally{q(!1)}}},B=async()=>{if(r)return;let a=g.find(a=>!1!==a.isActive);if(a){s(!0);try{let c=await fetch(`/api/providers/${a.id}/models`),d=await c.json().catch(()=>({}));if(!c.ok)return void i.notifyError(d.error||"Failed to import models");let e=d.models||[];if(0===e.length)return void i.notifyError("No models returned from /models.");let f=0;for(let a of e){let c=a.id||a.name||a.model;c&&!x.some(a=>a.id===c)&&await h.addCustomModel(c,"llm",b)&&(f+=1)}0===f?i.notifyError("No new models were added."):i.notifySuccess(`Imported ${f} model${1===f?"":"s"}.`)}catch(a){i.notifyError(a instanceof Error?a.message:"Failed to import models")}finally{s(!1)}}};return(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsx)("p",{className:"text-sm text-muted",children:f?(0,L.Tl)("Add Anthropic-compatible models manually or import them from the /models endpoint."):(0,L.Tl)("Add OpenAI-compatible models manually or import them from the /models endpoint.")}),(0,d.jsxs)("div",{className:"flex flex-wrap items-end gap-2",children:[(0,d.jsx)(J.default,{label:"Model ID",id:"new-compatible-model-input",value:n,onChange:a=>o(a.target.value),onKeyDown:a=>"Enter"===a.key&&A(),placeholder:f?"claude-3-opus-20240229":"gpt-4o",className:"min-w-60 flex-1"}),(0,d.jsx)(l.default,{size:"sm",icon:"add",onClick:A,disabled:!n.trim()||p,children:p?"Adding…":"Add"}),(0,d.jsx)(l.default,{size:"sm",variant:"secondary",icon:"download",onClick:B,disabled:!y||r,loading:r,children:r?"Importing…":"Import from /models"})]}),y?null:(0,d.jsx)("p",{className:"text-xs text-muted",children:"Add a connection to enable importing models."}),x.length>0?(0,d.jsx)("ul",{className:"flex min-w-0 flex-col gap-2",children:x.map(({id:e,alias:f,source:i})=>(0,d.jsx)(N.A,{model:{id:e},fullModel:`${c}/${e}`,copied:j,copyError:k,onCopy:m,onDeleteAlias:()=>"custom"===i?h.deleteCustomModel(e,"llm",b):h.deleteAlias(f),onTest:g.length>0||a?()=>z(e):void 0,testStatus:v[e],isTesting:t===e,isCustom:!0},`${i}-${b}/${e}`))}):(0,d.jsx)(K.default,{icon:"smart_toy",title:"No models yet",body:"Add a model id above or import the provider /models catalog."})]})}P.propTypes={isFreeNoAuth:w().bool.isRequired,storageAlias:w().string.isRequired,displayAlias:w().string.isRequired,isAnthropic:w().bool.isRequired,connections:w().array.isRequired,models:w().object.isRequired,actions:w().shape({notifyError:w().func.isRequired,notifySuccess:w().func.isRequired}).isRequired};var Q=c(5291),R=c(51109),S=c(43182),T=c(97968),U=c(24622),V=c(79488),W=c(94248),X=c(95145),Y=c(92710),Z=c(31023),$=c(75171);function _({isOpen:a,node:b,onSave:c,onClose:f,isAnthropic:g}){let[h,i]=(0,e.useState)({name:"",prefix:"",apiType:"chat",baseUrl:"https://api.openai.com/v1"}),[j,k]=(0,e.useState)(!1),[m,n]=(0,e.useState)(""),[o,p]=(0,e.useState)(""),[q,r]=(0,e.useState)(!1),[s,t]=(0,e.useState)(null),u=async()=>{if(h.name.trim()&&h.prefix.trim()&&h.baseUrl.trim()){k(!0);try{let a={name:h.name,prefix:h.prefix,baseUrl:h.baseUrl};g||(a.apiType=h.apiType),await c(a)}finally{k(!1)}}},v=async()=>{r(!0);try{let a=await fetch("/api/provider-nodes/validate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({baseUrl:h.baseUrl,apiKey:m,type:g?"anthropic-compatible":"openai-compatible",modelId:o.trim()||void 0})}),b=await a.json();t(b.valid?"success":"failed")}catch{t("failed")}finally{r(!1)}};return b?(0,d.jsx)(X.default,{isOpen:a,title:`Edit ${g?"Anthropic":"OpenAI"} Compatible`,onClose:f,children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsx)(J.default,{label:"Name",value:h.name,onChange:a=>i({...h,name:a.target.value}),placeholder:`${g?"Anthropic":"OpenAI"} Compatible (Prod)`,hint:"Required. A friendly label for this node."}),(0,d.jsx)(J.default,{label:"Prefix",value:h.prefix,onChange:a=>i({...h,prefix:a.target.value}),placeholder:g?"ac-prod":"oc-prod",hint:"Required. Used as the provider prefix for model IDs."}),!g&&(0,d.jsx)(Z.default,{label:"API type",options:[{value:"chat",label:"Chat Completions"},{value:"responses",label:"Responses API"}],value:h.apiType,onChange:a=>i({...h,apiType:a.target.value})}),(0,d.jsx)(J.default,{label:"Base URL",value:h.baseUrl,onChange:a=>i({...h,baseUrl:a.target.value}),placeholder:g?"https://api.anthropic.com/v1":"https://api.openai.com/v1",hint:`Use the base URL (ending in /v1) for your ${g?"Anthropic":"OpenAI"}-compatible API.`}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(J.default,{label:"API key (for check)",type:"password",value:m,onChange:a=>n(a.target.value),className:"flex-1"}),(0,d.jsx)("div",{className:"pt-6",children:(0,d.jsx)(l.default,{onClick:v,disabled:!m||q||!h.baseUrl.trim(),variant:"secondary",children:q?"Checking...":"Check"})})]}),(0,d.jsx)(J.default,{label:"Model ID (optional)",value:o,onChange:a=>p(a.target.value),placeholder:"e.g. my-model-id",hint:"If provider lacks /models endpoint, enter a model ID to validate via chat/completions instead."}),s&&(0,d.jsx)($.default,{variant:"success"===s?"success":"error",children:"success"===s?"Valid":"Invalid"}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(l.default,{onClick:u,fullWidth:!0,disabled:!h.name.trim()||!h.prefix.trim()||!h.baseUrl.trim()||j,children:j?"Saving...":"Save"}),(0,d.jsx)(l.default,{onClick:f,variant:"ghost",fullWidth:!0,children:"Cancel"})]})]})}):null}_.propTypes={isOpen:w().bool.isRequired,node:w().shape({id:w().string,name:w().string,prefix:w().string,apiType:w().string,baseUrl:w().string}),onSave:w().func.isRequired,onClose:w().func.isRequired,isAnthropic:w().bool};var aa=c(80445);let ab=`[
1
+ (()=>{var a={};a.id=2134,a.ids=[2134],a.modules={643:a=>{"use strict";a.exports=require("node:perf_hooks")},1708:a=>{"use strict";a.exports=require("node:process")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4573:a=>{"use strict";a.exports=require("node:buffer")},7066:a=>{"use strict";a.exports=require("node:tty")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10117:(a,b)=>{"use strict";function c(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"encodeURIPath",{enumerable:!0,get:function(){return c}})},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{"use strict";a.exports=require("dns")},16698:a=>{"use strict";a.exports=require("node:async_hooks")},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"notFound")&&c.d(b,{notFound:function(){return d.notFound}}),c.o(d,"useParams")&&c.d(b,{useParams:function(){return d.useParams}}),c.o(d,"usePathname")&&c.d(b,{usePathname:function(){return d.usePathname}}),c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}}),c.o(d,"useSearchParams")&&c.d(b,{useSearchParams:function(){return d.useSearchParams}})},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21820:a=>{"use strict";a.exports=require("os")},26634:(a,b,c)=>{"use strict";c.d(b,{HR:()=>p,HX:()=>i,Rw:()=>f,UP:()=>l,e_:()=>o,f7:()=>m,h6:()=>k,nb:()=>g,ob:()=>n,s6:()=>h,sf:()=>j});var d=c(58962),e=c(46926);let f={ALL:"all",CONNECTED:"connected",NEEDS_ATTENTION:"needs-attention",OAUTH:"oauth",FREE:"free",APIKEY:"apikey"},g=[{value:f.ALL,label:"All"},{value:f.CONNECTED,label:"Connected"},{value:f.NEEDS_ATTENTION,label:"Needs attention"},{value:f.OAUTH,label:"OAuth"},{value:f.FREE,label:"Free tier"},{value:f.APIKEY,label:"API key"}];function h(a){return(0,e.Gy)(a)}function i(a,b,c){let f=Array.isArray(c)?c:[c],g=a.filter(a=>a.provider===b&&f.includes(a.authType)),h=(0,e.SB)(g),i=h.counts.ok+h.counts.warn+h.counts.err,j=g.filter(a=>["err","warn"].includes((0,e.tT)(a).status)),k=h.counts.err+h.counts.warn,l=g.length,m=l>0&&h.counts.off===l,n=g.some(a=>"Cooling down"===(0,e.tT)(a).reason),o=j.sort((a,b)=>new Date(b.lastErrorAt||0)-new Date(a.lastErrorAt||0))[0];return{connected:i,error:k,total:l,errorCode:o?function(a){if(!a)return null;let b=a.lastErrorType;if("runtime_error"===b)return"RUNTIME";if("upstream_auth_error"===b||"auth_missing"===b||"token_refresh_failed"===b||"token_expired"===b)return"AUTH";if("upstream_rate_limited"===b)return"429";if("upstream_unavailable"===b)return"5XX";if("network_error"===b)return"NET";let c=Number(a.errorCode);if(Number.isFinite(c)&&c>=400)return String(c);let e=(0,d.E2)(a.lastError);if("401"===e||"403"===e)return"AUTH";if(e&&"ERR"!==e)return e;let f=(a.lastError||"").toLowerCase();return f.includes("runtime")||f.includes("not runnable")||f.includes("not installed")?"RUNTIME":f.includes("invalid api key")||f.includes("token invalid")||f.includes("revoked")||f.includes("unauthorized")||f.includes("no access token")||f.includes("missing access token")||f.includes("auth")||f.includes("sign in")||f.includes("signin")||f.includes("expired")?"AUTH":"ERR"}(o):null,errorTime:o?.lastErrorAt?(0,d.gs)(o.lastErrorAt):null,allDisabled:m,hasCooldown:n}}function j(a){return a&&0!==a.length?a.map((a,b)=>{let c=a.name||a.email||`Account ${b+1}`,d=(0,e.tT)(a);return"off"===d.status?{value:0,kind:"none",label:c}:"warn"===d.status?{value:50,kind:"warn",label:c}:"err"===d.status?{value:100,kind:"err",label:c}:{value:100,kind:"ok",label:c}}):[{value:0,kind:"none",label:"No accounts"}]}function k(a){return new URLSearchParams(a||"").get("provider")||null}function l(a,b){let c=new URLSearchParams(a||"");b?c.set("provider",b):c.delete("provider");let d=c.toString();return d?`/dashboard/providers?${d}`:"/dashboard/providers"}function m(a,b,c=!1,d=null,e){return a===f.ALL||(a===f.CONNECTED?!c&&(b?.connected||0)>0:a===f.NEEDS_ATTENTION?o(b,c,e):a===f.OAUTH?"oauth"===d:a===f.FREE?"free"===d:a!==f.APIKEY||"apikey"===d||"compatible"===d)}function n(a){let b={[f.ALL]:a.length,[f.CONNECTED]:0,[f.NEEDS_ATTENTION]:0,[f.OAUTH]:0,[f.FREE]:0,[f.APIKEY]:0};for(let c of a){let{stats:a,isNoAuth:d,authGroup:e}=c;m(f.CONNECTED,a,d)&&(b[f.CONNECTED]+=1),m(f.NEEDS_ATTENTION,a,d,e,c.hasCooldown)&&(b[f.NEEDS_ATTENTION]+=1),"oauth"===e?b[f.OAUTH]+=1:"free"===e?b[f.FREE]+=1:("apikey"===e||"compatible"===e)&&(b[f.APIKEY]+=1)}return b}function o(a,b=!1,c){return!b&&((a?.error||0)>0||(c??a?.hasCooldown)===!0)}function p(a){return`${a} ${1===a?"needs":"need"} a look`}},27107:(a,b,c)=>{"use strict";c.d(b,{default:()=>aj});var d=c(48249),e=c(67484),f=c(9123),g=c(19099),h=c(79735),i=c.n(h),j=c(74812),k=c(216),l=c(99070),m=c(50585),n=c(41371),o=c(54253);let p={key:null,models:[],error:null};async function q(a,{refresh:b=!1}={}){let c=await fetch(`/api/providers/${a}/models${b?"?refresh=1":""}`,{cache:"no-store"}),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error||`Failed to fetch models (HTTP ${c.status})`);return{models:Array.isArray(d?.models)?d.models:[],warning:d?.warning||null}}var r=c(22825),s=c(27790),t=c(11568),u=c(81232),v=c(49885),w=c.n(v),x=c(83035),y=c(13715),z=c(24279),A=c(67635),B=c(26634);function C({providerId:a,providerInfo:b,connections:c,authLabel:e,authVariant:f,modelSnippet:g,loading:h}){let i=c.filter(a=>!1!==a.isActive).length,k=c.filter(a=>(0,B.s6)(a)).length,l=c.filter(a=>["error","expired"].includes(a.testStatus)).length,m=0===c.length?{variant:"neutral",label:"No accounts"}:l>0?{variant:"err",label:`${l} error${1===l?"":"s"}`}:k>0?{variant:"warn",label:`${k} cooling down`}:{variant:"ok",label:`${i} active`},n=b?.notice?.apiKeyUrl||b?.notice?.signupUrl||b?.website;return(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsxs)("div",{className:"flex min-w-0 flex-wrap items-start gap-3.5",children:[(0,d.jsx)(x.default,{providerId:a,size:"lg",status:"neutral"===m.variant?void 0:m.variant}),(0,d.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1.5",children:[(0,d.jsx)(y.A,{children:b?.name||a}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5","aria-live":"polite",children:[(0,d.jsx)(z.default,{variant:f,children:e}),(0,d.jsx)(z.default,{variant:m.variant,dot:"neutral"!==m.variant,children:m.label}),n?(0,d.jsxs)("a",{href:n,target:"_blank",rel:"noopener noreferrer",className:"inline-flex min-h-11 items-center gap-1 px-1 text-xs font-semibold text-coral-ink hover:text-coral focus-visible:shadow-focus focus-visible:outline-none",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-sm","aria-hidden":"true",children:"open_in_new"}),b?.notice?.apiKeyUrl?"Get API key":"Sign up / Learn more"]}):null]})]})]}),(0,d.jsxs)("div",{className:"mt-4 flex flex-col gap-2 rounded-2xl bg-raised p-3.5",children:[(0,d.jsx)("span",{className:"text-[13px] text-muted",children:"Point any client at your endpoint and ask for"}),h?(0,d.jsx)(j.Skeleton,{className:"h-11 w-full"}):(0,d.jsx)(A.default,{value:`"model": "${g}"`,copyValue:g,label:"Copy model id snippet"})]})]})}function D(a){return String(a||"").replace(/^\s*(?:\u26A0\uFE0F?\s*)?(?:risk notice:\s*)?/i,"").trim()}function E({providerInfo:a}){return a?.deprecated?(0,d.jsx)(k.default,{variant:"warn",title:"Risk notice",children:D(a.deprecationNotice)}):a?.notice?.text?(0,d.jsx)(k.default,{variant:"info",title:"Provider notice",icon:"info",children:(0,d.jsxs)("span",{className:"flex flex-wrap items-center gap-2",children:[a.notice.text,a.notice.apiKeyUrl?(0,d.jsx)(l.default,{size:"sm",variant:"secondary",iconRight:"open_in_new",onClick:()=>window.open(a.notice.apiKeyUrl,"_blank","noopener"),children:"Get API key"}):null]})}):null}C.propTypes={providerId:w().string.isRequired,providerInfo:w().object,connections:w().array.isRequired,authLabel:w().string.isRequired,authVariant:w().string.isRequired,modelSnippet:w().string.isRequired,loading:w().bool},E.propTypes={providerInfo:w().object};var F=c(17660);function G({isAnthropic:a,apiType:b,baseUrl:c,onAddKey:e,onEdit:f,onDelete:g}){return(0,d.jsx)(F.default,{title:a?"Anthropic Compatible Details":"OpenAI Compatible Details",subtitle:(0,d.jsxs)("span",{className:"break-all font-mono text-[13px]",children:[a?"Messages API":"responses"===b?"Responses API":"Chat Completions"," \xb7 ",(c||"").replace(/\/$/,""),"/",a?"messages":"responses"===b?"responses":"chat/completions"]}),action:(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(l.default,{size:"sm",icon:"add",onClick:e,children:"Add API key"}),(0,d.jsx)(l.default,{size:"sm",variant:"secondary",icon:"edit",onClick:f,children:"Edit"}),(0,d.jsx)(l.default,{size:"sm",variant:"secondary",icon:"delete",onClick:g,children:"Delete"})]})})}G.propTypes={isAnthropic:w().bool.isRequired,apiType:w().string,baseUrl:w().string,onAddKey:w().func.isRequired,onEdit:w().func.isRequired,onDelete:w().func.isRequired};var H=c(29731),I=c(75790),J=c(83552),K=c(26584),L=c(99258),M=c(18753),N=c(42076),O=c(50377);function P({isFreeNoAuth:a,storageAlias:b,displayAlias:c,isAnthropic:f,connections:g,models:h,actions:i}){let{copied:j,error:k,copy:m}=(0,O.C)(),[n,o]=(0,e.useState)(""),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(!1),[t,u]=(0,e.useState)(()=>new Set),v=(0,e.useRef)(new Set),[w,x]=(0,e.useState)({}),y=(0,M.R)({customModels:h.customModels,modelAliases:h.modelAliases,providerAlias:b,type:"llm"}),z=g.some(a=>!1!==a.isActive),A=async a=>{if(!v.current.has(a)){v.current.add(a),u(new Set(v.current));try{let c=await fetch("/api/models/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:`${b}/${a}`})}),d=await c.json().catch(()=>({})),e=c.ok&&d.ok;x(b=>({...b,[a]:e?"ok":"error"})),e||i.notifyError(d.error||"Model not reachable")}catch{x(b=>({...b,[a]:"error"})),i.notifyError("Network error")}finally{v.current.delete(a),u(new Set(v.current))}}},B=async()=>{let a=n.trim();if(a&&!p){if(y.some(b=>b.id===a))return void i.notifyError("Model already exists for this provider.");q(!0);try{await h.addCustomModel(a,"llm",b)&&o("")}finally{q(!1)}}},C=async()=>{if(r)return;let a=g.find(a=>!1!==a.isActive);if(a){s(!0);try{let c=await fetch(`/api/providers/${a.id}/models`),d=await c.json().catch(()=>({}));if(!c.ok)return void i.notifyError(d.error||"Failed to import models");let e=d.models||[];if(0===e.length)return void i.notifyError("No models returned from /models.");let f=0;for(let a of e){let c=a.id||a.name||a.model;c&&!y.some(a=>a.id===c)&&await h.addCustomModel(c,"llm",b)&&(f+=1)}0===f?i.notifyError("No new models were added."):i.notifySuccess(`Imported ${f} model${1===f?"":"s"}.`)}catch(a){i.notifyError(a instanceof Error?a.message:"Failed to import models")}finally{s(!1)}}};return(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsx)("p",{className:"text-sm text-muted",children:f?(0,L.Tl)("Add Anthropic-compatible models manually or import them from the /models endpoint."):(0,L.Tl)("Add OpenAI-compatible models manually or import them from the /models endpoint.")}),(0,d.jsxs)("div",{className:"flex flex-wrap items-end gap-2",children:[(0,d.jsx)(J.default,{label:"Model ID",id:"new-compatible-model-input",value:n,onChange:a=>o(a.target.value),onKeyDown:a=>"Enter"===a.key&&B(),placeholder:f?"claude-3-opus-20240229":"gpt-4o",className:"min-w-60 flex-1"}),(0,d.jsx)(l.default,{size:"sm",icon:"add",onClick:B,disabled:!n.trim()||p,children:p?"Adding…":"Add"}),(0,d.jsx)(l.default,{size:"sm",variant:"secondary",icon:"download",onClick:C,disabled:!z||r,loading:r,children:r?"Importing…":"Import from /models"})]}),z?null:(0,d.jsx)("p",{className:"text-xs text-muted",children:"Add a connection to enable importing models."}),y.length>0?(0,d.jsx)("ul",{className:"flex min-w-0 flex-col gap-2",children:y.map(({id:e,alias:f,source:i})=>(0,d.jsx)(N.A,{model:{id:e},fullModel:`${c}/${e}`,copied:j,copyError:k,onCopy:m,onDeleteAlias:()=>"custom"===i?h.deleteCustomModel(e,"llm",b):h.deleteAlias(f),onTest:g.length>0||a?()=>A(e):void 0,testStatus:w[e],isTesting:t.has(e),isCustom:!0},`${i}-${b}/${e}`))}):(0,d.jsx)(K.default,{icon:"smart_toy",title:"No models yet",body:"Add a model id above or import the provider /models catalog."})]})}P.propTypes={isFreeNoAuth:w().bool.isRequired,storageAlias:w().string.isRequired,displayAlias:w().string.isRequired,isAnthropic:w().bool.isRequired,connections:w().array.isRequired,models:w().object.isRequired,actions:w().shape({notifyError:w().func.isRequired,notifySuccess:w().func.isRequired}).isRequired};var Q=c(5291),R=c(51109),S=c(43182),T=c(97968),U=c(24622),V=c(79488),W=c(94248),X=c(95145),Y=c(92710),Z=c(31023),$=c(75171);function _({isOpen:a,node:b,onSave:c,onClose:f,isAnthropic:g}){let[h,i]=(0,e.useState)({name:"",prefix:"",apiType:"chat",baseUrl:"https://api.openai.com/v1"}),[j,k]=(0,e.useState)(!1),[m,n]=(0,e.useState)(""),[o,p]=(0,e.useState)(""),[q,r]=(0,e.useState)(!1),[s,t]=(0,e.useState)(null),u=async()=>{if(h.name.trim()&&h.prefix.trim()&&h.baseUrl.trim()){k(!0);try{let a={name:h.name,prefix:h.prefix,baseUrl:h.baseUrl};g||(a.apiType=h.apiType),await c(a)}finally{k(!1)}}},v=async()=>{r(!0);try{let a=await fetch("/api/provider-nodes/validate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({baseUrl:h.baseUrl,apiKey:m,type:g?"anthropic-compatible":"openai-compatible",modelId:o.trim()||void 0})}),b=await a.json();t(b.valid?"success":"failed")}catch{t("failed")}finally{r(!1)}};return b?(0,d.jsx)(X.default,{isOpen:a,title:`Edit ${g?"Anthropic":"OpenAI"} Compatible`,onClose:f,children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsx)(J.default,{label:"Name",value:h.name,onChange:a=>i({...h,name:a.target.value}),placeholder:`${g?"Anthropic":"OpenAI"} Compatible (Prod)`,hint:"Required. A friendly label for this node."}),(0,d.jsx)(J.default,{label:"Prefix",value:h.prefix,onChange:a=>i({...h,prefix:a.target.value}),placeholder:g?"ac-prod":"oc-prod",hint:"Required. Used as the provider prefix for model IDs."}),!g&&(0,d.jsx)(Z.default,{label:"API type",options:[{value:"chat",label:"Chat Completions"},{value:"responses",label:"Responses API"}],value:h.apiType,onChange:a=>i({...h,apiType:a.target.value})}),(0,d.jsx)(J.default,{label:"Base URL",value:h.baseUrl,onChange:a=>i({...h,baseUrl:a.target.value}),placeholder:g?"https://api.anthropic.com/v1":"https://api.openai.com/v1",hint:`Use the base URL (ending in /v1) for your ${g?"Anthropic":"OpenAI"}-compatible API.`}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(J.default,{label:"API key (for check)",type:"password",value:m,onChange:a=>n(a.target.value),className:"flex-1"}),(0,d.jsx)("div",{className:"pt-6",children:(0,d.jsx)(l.default,{onClick:v,disabled:!m||q||!h.baseUrl.trim(),variant:"secondary",children:q?"Checking...":"Check"})})]}),(0,d.jsx)(J.default,{label:"Model ID (optional)",value:o,onChange:a=>p(a.target.value),placeholder:"e.g. my-model-id",hint:"If provider lacks /models endpoint, enter a model ID to validate via chat/completions instead."}),s&&(0,d.jsx)($.default,{variant:"success"===s?"success":"error",children:"success"===s?"Valid":"Invalid"}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(l.default,{onClick:u,fullWidth:!0,disabled:!h.name.trim()||!h.prefix.trim()||!h.baseUrl.trim()||j,children:j?"Saving...":"Save"}),(0,d.jsx)(l.default,{onClick:f,variant:"ghost",fullWidth:!0,children:"Cancel"})]})]})}):null}_.propTypes={isOpen:w().bool.isRequired,node:w().shape({id:w().string,name:w().string,prefix:w().string,apiType:w().string,baseUrl:w().string}),onSave:w().func.isRequired,onClose:w().func.isRequired,isAnthropic:w().bool};var aa=c(80445);let ab=`[
2
2
  {
3
3
  "accessToken": "eyJhbGc...",
4
4
  "refreshToken": "rt_...",
@@ -18,4 +18,4 @@
18
18
  "id_token": "eyJ0eXAiOiJKV1QiLCJhbGci...",
19
19
  "email": "account2@example.com"
20
20
  }
21
- ]`;function ae(a){let b,c=a.trim();if(!c)return[];try{b=JSON.parse(c)}catch(a){try{let a=c;a.startsWith("[")||((a=a.replace(/\}\s*,\s*\{/g,"},{").replace(/\}\s*\{/g,"},{")).endsWith(",")&&(a=a.slice(0,-1)),a=`[${a}]`),b=JSON.parse(a)}catch{throw a}}if(Array.isArray(b))return b;if(b&&"object"==typeof b)return Array.isArray(b.accounts)?b.accounts:[b];throw Error("Input must be a JSON object or array of objects")}function af({isOpen:a,onClose:b,onSuccess:c}){let[f,g]=(0,e.useState)(""),[h,i]=(0,e.useState)(!1),[j,m]=(0,e.useState)(""),[n,o]=(0,e.useState)(null),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(null),t=(0,e.useRef)(null),u=()=>{h||(g(""),m(""),o(null),s(null),q(!1),b())},v=async a=>{if(!a||0===a.length)return;m("");let b=Array.from(a).filter(a=>a.name.endsWith(".json")||"application/json"===a.type||""===a.type);if(0===b.length)return void m((0,L.Tl)("Please select valid .json files"));try{let a=[];for(let c of b){let b=await c.text(),d=ae(b);Array.isArray(d)?a.push(...d):d&&a.push(d)}if(0===a.length)return void m((0,L.Tl)("No accounts found in selected files"));g(JSON.stringify(a,null,2)),s({filesCount:b.length,accountsCount:a.length})}catch(a){m(`${(0,L.Tl)("Error reading files")}: ${a.message}`)}},w=async()=>{let a;m(""),o(null);try{a=ae(f)}catch(a){m(`${(0,L.Tl)("Invalid JSON")}: ${a.message}`);return}if(!a||0===a.length)return void m((0,L.Tl)("No accounts found in input"));i(!0);try{let b=await fetch("/api/oauth/grok-cli/bulk-import",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accounts:a})}),d=await b.json();if(!b.ok)return void m(d?.error||`Request failed: ${b.status}`);o(d),d.success>0&&"function"==typeof c&&c()}catch(a){m(a.message||(0,L.Tl)("Request failed"))}finally{i(!1)}},x=n?.results?.filter(a=>!a.ok)||[];return(0,d.jsx)(X.default,{isOpen:a,title:(0,L.Tl)("Bulk add Grok CLI accounts"),onClose:u,children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,d.jsx)("p",{className:"text-xs text-muted",children:(0,L.Tl)("Upload multiple .json files or paste JSON array / object.")}),(0,d.jsx)("input",{ref:t,type:"file",accept:".json,application/json",multiple:!0,className:"hidden",onChange:a=>{v(a.target.files),a.target&&(a.target.value="")}}),(0,d.jsx)(l.default,{type:"button",size:"sm",variant:"secondary",icon:"upload_file",onClick:()=>t.current?.click(),disabled:h,children:(0,L.Tl)("Upload JSON files")})]}),(0,d.jsxs)("div",{onDragOver:a=>{a.preventDefault(),q(!0)},onDragLeave:a=>{a.preventDefault(),q(!1)},onDrop:a=>{a.preventDefault(),q(!1),a.dataTransfer?.files?.length>0&&v(a.dataTransfer.files)},className:`relative rounded border transition-colors ${p?"border-coral bg-coral-bg ring-2 ring-coral/30":"border-coral/30 bg-panel"}`,children:[(0,d.jsx)("textarea",{className:"w-full rounded bg-transparent p-2.5 text-sm font-mono resize-y min-h-[240px] focus:outline-none focus:ring-1 focus:ring-coral",placeholder:ad,value:f,onChange:a=>{g(a.target.value),s(null)},disabled:h}),p&&(0,d.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center bg-panel/90 rounded pointer-events-none backdrop-blur-xs",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-3xl text-coral-ink mb-1",children:"upload_file"}),(0,d.jsx)("span",{className:"text-sm font-medium text-coral-ink",children:(0,L.Tl)("Drop .json files here")})]})]}),r&&(0,d.jsxs)(k.default,{variant:"ok",className:"p-2 text-xs",children:[(0,L.Tl)("Loaded")," ",r.accountsCount," ",(0,L.Tl)("account(s) from")," ",r.filesCount," ",(0,L.Tl)("file(s)")]}),j&&(0,d.jsx)(k.default,{variant:"err",className:"break-words",children:j}),n&&n.failed>0&&(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsxs)(z.default,{variant:"warn",className:"self-start",children:[n.failed," ",(0,L.Tl)("failed")]}),x.length>0&&(0,d.jsx)("ul",{className:"rounded border border-coral/20 bg-raised p-2 text-xs font-mono max-h-40 overflow-y-auto",children:x.map(a=>(0,d.jsxs)("li",{className:"text-err",children:["[",a.index,"] ",a.error]},a.index))})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(l.default,{onClick:w,fullWidth:!0,disabled:h||!f.trim(),children:h?(0,L.Tl)("Importing..."):(0,L.Tl)("Import all")}),(0,d.jsx)(l.default,{onClick:u,variant:"ghost",fullWidth:!0,disabled:h,children:(0,L.Tl)("Close")})]})]})})}function ag({providerId:a,isCompatible:b,hasDualAuthModes:c,labels:e,onOAuth:f,onApiKey:g,onAdd:h,onCookie:i,onBulkCodex:j,onBulkGrokCli:k}){return(0,d.jsxs)(d.Fragment,{children:["iflow"===a?(0,d.jsx)(l.default,{size:"sm",icon:"cookie",variant:"secondary",onClick:i,title:"Add connection using browser cookie",children:"Cookie"}):null,"codex"===a?(0,d.jsx)(l.default,{size:"sm",icon:"playlist_add",variant:"secondary",onClick:j,title:"Bulk import codex accounts from JSON",children:"Bulk add"}):null,"grok-cli"===a?(0,d.jsx)(l.default,{size:"sm",icon:"playlist_add",variant:"secondary",onClick:k,title:"Bulk import Grok CLI accounts from JSON",children:"Bulk add"}):null,c?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(l.default,{size:"sm",icon:"lock",variant:"secondary",onClick:f,children:e.oauth}),(0,d.jsx)(l.default,{size:"sm",icon:"key",variant:"primary",onClick:g,children:e.apiKey})]}):(0,d.jsx)(l.default,{size:"sm",icon:"add",variant:"primary",onClick:h,children:b?"Add API key":"iflow"===a?"OAuth":"Add connection"})]})}function ah({providerId:a,providerInfo:b,isCompatible:c,isAnthropic:e,storageAlias:f,displayAlias:g,proxyPools:h,connectionNames:i,addConnectionError:j,selectedConnection:k,show:l,handlers:m,models:n}){return(0,d.jsxs)(d.Fragment,{children:["kiro"===a?(0,d.jsx)(Q.default,{isOpen:l.oauth,providerInfo:b,onSuccess:m.oauthSuccess,onClose:m.closeOAuth}):"cursor"===a?(0,d.jsx)(R.default,{isOpen:l.oauth,providerInfo:b,onSuccess:m.oauthSuccess,onClose:m.closeOAuth}):"gitlab"===a?(0,d.jsx)(S.default,{isOpen:l.oauth,providerInfo:b,onSuccess:m.oauthSuccess,onClose:m.closeOAuth}):(0,d.jsx)(T.default,{isOpen:l.oauth,provider:a,providerInfo:b,onSuccess:m.oauthSuccess,onClose:m.closeOAuth}),(0,d.jsx)(U.default,{isOpen:l.xiaomiMimo,onSuccess:m.oauthSuccess,onClose:m.closeXiaomiMimo}),"iflow"===a?(0,d.jsx)(V.default,{isOpen:l.iflowCookie,onSuccess:m.iflowCookieSuccess,onClose:m.closeIflowCookie}):null,(0,d.jsx)(Y.A,{isOpen:l.addApiKey,provider:a,providerName:b.name,isCompatible:c,isAnthropic:e,authType:b?.authType,authHint:b?.authHint,website:b?.website,proxyPools:h,error:j,existingNames:i,onSave:m.saveApiKey,onBulkDone:m.refreshConnections,onClose:m.closeAddApiKey}),(0,d.jsx)(W.default,{isOpen:l.edit,connection:k,proxyPools:h,onSave:m.updateConnection,onClose:m.closeEdit}),c?(0,d.jsx)(_,{isOpen:l.editNode,node:m.compatibleNode,onSave:m.updateNode,onClose:m.closeEditNode,isAnthropic:e}):null,c?null:(0,d.jsx)(aa.A,{isOpen:n.showAddCustomModel,providerAlias:f,providerDisplayAlias:g,onSave:m.saveCustomModel,onClose:m.closeAddCustomModel}),"codex"===a?(0,d.jsx)(ac,{isOpen:l.bulkCodex,onClose:m.closeBulkCodex,onSuccess:m.refreshConnections}):null,"grok-cli"===a?(0,d.jsx)(af,{isOpen:l.bulkGrokCli,onClose:m.closeBulkGrokCli,onSuccess:m.refreshConnections}):null,(0,d.jsx)(X.ConfirmDialog,{isOpen:l.agRisk,onClose:m.closeAgRisk,onConfirm:m.confirmAgRisk,title:"Risk notice",message:D(b?.deprecationNotice),confirmText:"I understand, continue",cancelText:"Cancel",variant:"danger"})]})}ag.propTypes={providerId:w().string.isRequired,isCompatible:w().bool.isRequired,hasDualAuthModes:w().bool.isRequired,labels:w().object.isRequired,onOAuth:w().func.isRequired,onApiKey:w().func.isRequired,onAdd:w().func.isRequired,onCookie:w().func.isRequired,onBulkCodex:w().func.isRequired,onBulkGrokCli:w().func.isRequired},ah.propTypes={providerId:w().string.isRequired,providerInfo:w().object.isRequired,isCompatible:w().bool.isRequired,isAnthropic:w().bool.isRequired,storageAlias:w().string.isRequired,displayAlias:w().string.isRequired,proxyPools:w().array.isRequired,connectionNames:w().array.isRequired,addConnectionError:w().string,selectedConnection:w().object,show:w().shape({oauth:w().bool.isRequired,xiaomiMimo:w().bool.isRequired,iflowCookie:w().bool.isRequired,addApiKey:w().bool.isRequired,edit:w().bool.isRequired,editNode:w().bool.isRequired,bulkCodex:w().bool.isRequired,bulkGrokCli:w().bool.isRequired,agRisk:w().bool.isRequired}).isRequired,handlers:w().shape({oauthSuccess:w().func.isRequired,closeOAuth:w().func.isRequired,closeXiaomiMimo:w().func.isRequired,iflowCookieSuccess:w().func.isRequired,closeIflowCookie:w().func.isRequired,saveApiKey:w().func.isRequired,refreshConnections:w().func.isRequired,closeAddApiKey:w().func.isRequired,updateConnection:w().func.isRequired,closeEdit:w().func.isRequired,compatibleNode:w().object,updateNode:w().func.isRequired,closeEditNode:w().func.isRequired,saveCustomModel:w().func.isRequired,closeAddCustomModel:w().func.isRequired,closeBulkCodex:w().func.isRequired,closeBulkGrokCli:w().func.isRequired,closeAgRisk:w().func.isRequired,confirmAgRisk:w().func.isRequired}).isRequired,models:w().object.isRequired};let ai={claude:"claudeAutoPing",codex:"codexAutoPing"};function aj(){let a=(0,g.useParams)(),b=(0,g.useRouter)(),c=a.id,h=(0,e.useCallback)(a=>n.i.getState().error(a),[]),v=(0,e.useCallback)(a=>n.i.getState().success(a),[]),[w,x]=(0,e.useState)(!0),[y,z]=(0,e.useState)(""),[A,B]=(0,e.useState)(null),[D,F]=(0,e.useState)({oauth:!1,xiaomiMimo:!1,iflowCookie:!1,addApiKey:!1,edit:!1,editNode:!1,bulkCodex:!1,bulkGrokCli:!1,agRisk:!1}),J=(0,e.useCallback)(a=>F(b=>({...b,[a]:!0})),[]),K=(0,e.useCallback)(a=>F(b=>({...b,[a]:!1})),[]),[L,M]=(0,e.useState)(""),[N,O]=(0,e.useState)(null),[Q,R]=(0,e.useState)({enabled:!1,connections:{}}),S=(0,r.Z)({providerId:c,notifyError:h}),T=(0,s.w)({providerId:c,notifyError:h}),U=(0,u.kw)(c,A),V=(0,u.ds)(c,U),W=V.isOpenAICompatible||V.isAnthropicCompatible,{storageAlias:X,displayAlias:Y}=(0,u.mC)(c,A,W),{staticModels:Z,isLiveCatalog:$}=(0,u.RT)(c),{liveModels:_,liveError:aa,refresh:ab}=function({providerId:a,connections:b,enabled:c}){let d=c&&(b||[]).find(a=>!1!==a.isActive)?.id||null,f=d?`${a}:${d}`:null,[g,h]=(0,e.useState)(p),i=(0,e.useCallback)(async()=>{if(!d)throw Error("No active connection");let a=await q(d,{refresh:!0});return h(function(a,{models:b,warning:c}){return{key:a,models:b,error:c||(b.length>0?null:"No live models returned.")}}(f,a)),a},[f,d]),j=f&&g.key===f?g:p;return{liveModels:j.models,liveError:j.error,refresh:i}}({providerId:c,connections:S.connections,enabled:$&&!W}),ac=$&&_.length>0&&!W?(0,o.rE)(c,_,Z):Z,ad=(0,t.G)({providerId:c,storageAlias:X,staticModels:Z,catalogModels:ac,notifyError:h}),ae=(0,u.qR)(c),af=!W&&V.isOAuth&&V.supportsApiKey,{fetchConnections:aj}=S,{load:ak}=T,{load:al,loadThinking:am}=ad,an=(0,e.useCallback)(async()=>{z("");try{await aj(),await Promise.all([ak(),al(),am()]);let a=await fetch("/api/provider-nodes",{cache:"no-store"});if(a.ok){let b=((await a.json().catch(()=>({}))).nodes||[]).find(a=>a.id===c)||null;if(!b&&W)for(let a=0;a<3;a+=1){await new Promise(a=>setTimeout(a,150));let a=await fetch("/api/provider-nodes",{cache:"no-store"});if(a.ok&&(b=((await a.json().catch(()=>({}))).nodes||[]).find(a=>a.id===c)||null))break}B(b)}let b=await fetch("/api/settings",{cache:"no-store"}),d=b.ok?await b.json().catch(()=>({})):{},e=ai[c],f=e&&d[e]||{};R({enabled:!0===f.enabled,connections:f.connections||{}})}catch(a){console.log("Error fetching provider detail:",a),z("Could not load this provider. Check the gateway and try again.")}finally{x(!1)}},[aj,W,al,ak,am,c]),ao=()=>{"xiaomi-mimo"===c?J("xiaomiMimo"):V.isOAuth?J("oauth"):(M(""),J("addApiKey"))},ap=()=>{M(""),J("addApiKey")},aq=async()=>{await S.fetchConnections(),(0,f.q0)()},ar=async a=>{M("");try{let b=await fetch("/api/providers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:c,...a})}),d=await b.json().catch(()=>null);if(b.ok){await aq(),K("addApiKey");return}M(d?.error||"Failed to save connection")}catch(a){console.log("Error saving connection:",a),M("Failed to save connection")}},as=async a=>{try{let b=await fetch(`/api/providers/${N.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok)return(await b.json().catch(()=>({}))).error||"Failed to save connection";return await aq(),K("edit"),null}catch(a){return console.log("Error updating connection:",a),"Failed to save connection"}},at=async a=>{try{let b=await fetch(`/api/provider-nodes/${c}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),d=await b.json().catch(()=>({}));b.ok?(B(d.node),await aq(),K("editNode")):h(d.error||"Failed to update provider.")}catch(a){console.log("Error updating provider node:",a)}},au=(0,d.jsx)(ag,{providerId:c,isCompatible:W,hasDualAuthModes:af,labels:ae,onOAuth:ao,onApiKey:ap,onAdd:()=>{V.isOAuth?ao():ap()},onCookie:()=>J("iflowCookie"),onBulkCodex:()=>J("bulkCodex"),onBulkGrokCli:()=>J("bulkGrokCli")}),av=`${Y}/${ad.enabledModels[0]?.id||ad.customModelRows[0]?.id||Z[0]?.id||"model-id"}`,aw=V.isOAuth?"info":V.isFreeNoAuth?"live":V.supportsApiKey?"brand":"neutral",ax=V.isOAuth?"OAuth":V.isFreeNoAuth?"Free":V.supportsApiKey?"API key":W?"Compatible":"Provider";return w?(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-5 px-1 sm:px-0","aria-busy":"true",children:[(0,d.jsx)("span",{className:"sr-only",role:"status",children:"Loading provider"}),(0,d.jsx)(j.CardSkeleton,{}),(0,d.jsx)(j.CardSkeleton,{})]}):U?(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-5 px-1 sm:px-0",children:[(0,d.jsx)(C,{providerId:c,providerInfo:U,connections:S.connections,authLabel:ax,authVariant:aw,modelSnippet:av,loading:!1}),(0,d.jsx)(E,{providerInfo:U}),y?(0,d.jsx)(k.default,{variant:"err",title:"Could not load provider",children:(0,d.jsxs)("span",{className:"flex flex-wrap items-center gap-2",children:[y,(0,d.jsx)(l.default,{size:"sm",variant:"secondary",onClick:an,children:"Retry"})]})}):null,W&&A?(0,d.jsx)(G,{isAnthropic:V.isAnthropicCompatible,apiType:A.apiType,baseUrl:A.baseUrl,onAddKey:ap,onEdit:()=>J("editNode"),onDelete:()=>{S.setConfirmState({title:"Delete compatible node",message:`Delete this ${V.isAnthropicCompatible?"Anthropic":"OpenAI"} Compatible node?`,onConfirm:async()=>{S.setConfirmState(null);try{(await fetch(`/api/provider-nodes/${c}`,{method:"DELETE"})).ok?b.push("/dashboard/providers"):h("Failed to delete provider.")}catch(a){console.log("Error deleting provider node:",a)}}})}}):null,V.isFreeNoAuth?(0,d.jsx)(m.default,{providerId:c}):(0,d.jsx)(H.A,{providerId:c,auth:{isOAuth:V.isOAuth,hasDualAuthModes:af,labels:ae},strategy:T,conn:S,autoPing:{enabled:Q.enabled,connections:Q.connections,toggle:(a,b)=>{let d=ai[c];if(!d)return;let e={...Q,connections:{...Q.connections,[a]:b}};R(e),fetch("/api/settings",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({[d]:e})}).catch(a=>console.log("Error saving auto-ping config:",a))}},actions:{addButtons:au,edit:a=>{O(a),J("edit")},notifyError:h}}),(0,d.jsx)(I.A,{providerId:c,storageAlias:X,displayAlias:Y,isLiveCatalog:$,isCompatible:W,isAnthropic:V.isAnthropicCompatible,isFreeNoAuth:V.isFreeNoAuth,connections:S.connections,catalogModels:ac,staticModels:Z,liveError:aa,refreshLive:ab,models:ad,onDisableAll:a=>S.setConfirmState(a),compatibleSection:(0,d.jsx)(P,{isFreeNoAuth:V.isFreeNoAuth,storageAlias:X,displayAlias:Y,isAnthropic:V.isAnthropicCompatible,connections:S.connections,models:ad,actions:{notifyError:h,notifySuccess:v}})}),(0,d.jsx)(ah,{providerId:c,providerInfo:U,isCompatible:W,isAnthropic:V.isAnthropicCompatible,storageAlias:X,displayAlias:Y,proxyPools:S.proxyPools,connectionNames:S.connections.map(a=>a.name).filter(Boolean),addConnectionError:L,selectedConnection:N,show:D,handlers:{oauthSuccess:()=>{aq(),K("oauth")},closeOAuth:()=>K("oauth"),closeXiaomiMimo:()=>K("xiaomiMimo"),iflowCookieSuccess:()=>{aq(),K("iflowCookie")},closeIflowCookie:()=>K("iflowCookie"),saveApiKey:ar,refreshConnections:aq,closeAddApiKey:()=>{M(""),K("addApiKey")},updateConnection:as,closeEdit:()=>K("edit"),compatibleNode:A,updateNode:at,closeEditNode:()=>K("editNode"),saveCustomModel:async(a,b)=>{let c=await ad.addCustomModel(a,"llm",X,b);return c&&ad.setShowAddCustomModel(!1),c},closeAddCustomModel:()=>ad.setShowAddCustomModel(!1),closeBulkCodex:()=>K("bulkCodex"),closeBulkGrokCli:()=>K("bulkGrokCli"),closeAgRisk:()=>K("agRisk"),confirmAgRisk:()=>{K("agRisk"),V.isOAuth?J("oauth"):ap()}},models:ad})]}):(0,d.jsxs)("div",{className:"flex min-w-0 flex-col items-center gap-3 px-1 py-20 text-center sm:px-0",children:[(0,d.jsx)("p",{className:"text-muted",children:"Provider not found"}),(0,d.jsx)(i(),{href:"/dashboard/providers",className:"inline-flex min-h-11 items-center text-sm font-semibold text-coral-ink hover:text-coral focus-visible:shadow-focus focus-visible:outline-none",children:"Back to providers"})]})}},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},32467:a=>{"use strict";a.exports=require("node:http2")},33873:a=>{"use strict";a.exports=require("path")},34589:a=>{"use strict";a.exports=require("node:assert")},37067:a=>{"use strict";a.exports=require("node:http")},37540:a=>{"use strict";a.exports=require("node:console")},38522:a=>{"use strict";a.exports=require("node:zlib")},39973:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return e}});let d=c(40399)._(c(80061));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},40610:a=>{"use strict";a.exports=require("node:dns")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},41692:a=>{"use strict";a.exports=require("node:tls")},41792:a=>{"use strict";a.exports=require("node:querystring")},46060:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external.js")},46193:a=>{"use strict";a.exports=require("node:string_decoder")},46293:a=>{"use strict";a.exports=require("sql.js")},48161:a=>{"use strict";a.exports=require("node:os")},51419:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>A,handler:()=>C,routeModule:()=>B});var d=c(21635),e=c(86315),f=c(1020),g=c(61287),h={};for(let a in g)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(h[a]=()=>g[a]);c.d(b,h);let i=(0,d.p)(()=>Promise.resolve().then(c.bind(c,57529))),j=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),k=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),l=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),m=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),n=(0,d.p)(()=>Promise.resolve().then(c.bind(c,79409))),o=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),p=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),q=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),r=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),s=(0,d.p)(()=>Promise.resolve().then(c.bind(c,79346))),t=(0,d.p)(()=>Promise.resolve().then(c.bind(c,70160))),u=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),v=(0,d.p)(()=>Promise.resolve().then(c.bind(c,55880))),w=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),x=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),y={children:["",{children:["(dashboard)",{children:["dashboard",{children:["providers",{children:["[id]",{children:["__PAGE__",{},{page:[(0,d.p)(()=>Promise.resolve().then(c.bind(c,93110))),"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/providers/[id]/page.js"]}]},{"global-error":[x,"next/dist/client/components/builtin/global-error.js"]},["new"]]},{"global-error":[w,"next/dist/client/components/builtin/global-error.js"]},[]]},{error:[s,"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/error.js"],loading:[t,"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/loading.js"],"global-error":[u,"next/dist/client/components/builtin/global-error.js"],"not-found":[v,"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/not-found.js"]},[]]},{layout:[n,"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/layout.js"],"global-error":[o,"next/dist/client/components/builtin/global-error.js"],"not-found":[p,"next/dist/client/components/builtin/not-found.js"],forbidden:[q,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[r,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]},{layout:[i,"/home/runner/work/tokenhop/tokenhop/src/app/layout.js"],"global-error":[j,"next/dist/client/components/builtin/global-error.js"],"not-found":[k,"next/dist/client/components/builtin/not-found.js"],forbidden:[l,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[m,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]}.children,z=(0,e.H)({tree:y,page:"/(dashboard)/dashboard/providers/[id]/page",pathname:"/dashboard/providers/[id]",require:c,loadChunk:()=>Promise.resolve(),interopDefault:f.T}),A=z.__next_app__,B=z.routeModule,C=z.handler},51455:a=>{"use strict";a.exports=require("node:fs/promises")},53053:a=>{"use strict";a.exports=require("node:diagnostics_channel")},55511:a=>{"use strict";a.exports=require("crypto")},55591:a=>{"use strict";a.exports=require("https")},57075:a=>{"use strict";a.exports=require("node:stream")},57975:a=>{"use strict";a.exports=require("node:util")},58962:(a,b,c)=>{"use strict";c.d(b,{E2:()=>d,gs:()=>e});function d(a){if(!a)return null;let b=a.match(/\b([45]\d{2})\b/);return b?b[1]:"ERR"}function e(a){if(!a)return"";let b=Math.floor((Date.now()-new Date(a).getTime())/6e4);if(b<1)return"just now";if(b<60)return`${b}m ago`;let c=Math.floor(b/60);if(c<24)return`${c}h ago`;let d=Math.floor(c/24);return`${d}d ago`}c(29225)},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66722:(a,b,c)=>{Promise.resolve().then(c.bind(c,84472))},66958:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=c(49306);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},71553:a=>{"use strict";a.exports=require("node:dns/promises")},71622:a=>{"use strict";a.exports=import("open")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73429:a=>{"use strict";a.exports=require("node:util/types")},73496:a=>{"use strict";a.exports=require("http2")},74075:a=>{"use strict";a.exports=require("zlib")},75919:a=>{"use strict";a.exports=require("node:worker_threads")},76760:a=>{"use strict";a.exports=require("node:path")},77030:a=>{"use strict";a.exports=require("node:net")},77598:a=>{"use strict";a.exports=require("node:crypto")},78474:a=>{"use strict";a.exports=require("node:events")},79646:a=>{"use strict";a.exports=require("child_process")},80061:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return j}});let d=c(48249),e=c(67484),f=c(66958),g=c(85264);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},80099:a=>{"use strict";a.exports=require("node:sqlite")},81630:a=>{"use strict";a.exports=require("http")},81787:a=>{"use strict";a.exports=require("bun:sqlite")},84472:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/providers/detail/ProviderDetailPage.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/providers/detail/ProviderDetailPage.js","default")},84874:(a,b,c)=>{Promise.resolve().then(c.bind(c,27107))},85264:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=c(48249),e=c(74429),f=c(29294),g=c(10117),h=c(44217);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let j=(0,h.getAssetTokenQuery)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${j}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},87550:a=>{"use strict";a.exports=require("better-sqlite3")},87997:a=>{"use strict";a.exports=require("node:timers")},90314:(a,b,c)=>{"use strict";c.d(b,{default:()=>e.a});var d=c(39973),e=c.n(d)},91645:a=>{"use strict";a.exports=require("net")},93110:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g,metadata:()=>f});var d=c(5735),e=c(84472);let f={title:"Provider"};function g(){return(0,d.jsx)(e.default,{})}},94735:a=>{"use strict";a.exports=require("events")}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,8666,2430,2217,2116,5560,6561,9421,7819,6070,1152,915,7642,4123,7261,1533,6244,6849,1320,8171,499,2592,6427,4685,3097,3919,4492],()=>b(b.s=51419));module.exports=c})();
21
+ ]`;function ae(a){let b,c=a.trim();if(!c)return[];try{b=JSON.parse(c)}catch(a){try{let a=c;a.startsWith("[")||((a=a.replace(/\}\s*,\s*\{/g,"},{").replace(/\}\s*\{/g,"},{")).endsWith(",")&&(a=a.slice(0,-1)),a=`[${a}]`),b=JSON.parse(a)}catch{throw a}}if(Array.isArray(b))return b;if(b&&"object"==typeof b)return Array.isArray(b.accounts)?b.accounts:[b];throw Error("Input must be a JSON object or array of objects")}function af({isOpen:a,onClose:b,onSuccess:c}){let[f,g]=(0,e.useState)(""),[h,i]=(0,e.useState)(!1),[j,m]=(0,e.useState)(""),[n,o]=(0,e.useState)(null),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(null),t=(0,e.useRef)(null),u=()=>{h||(g(""),m(""),o(null),s(null),q(!1),b())},v=async a=>{if(!a||0===a.length)return;m("");let b=Array.from(a).filter(a=>a.name.endsWith(".json")||"application/json"===a.type||""===a.type);if(0===b.length)return void m((0,L.Tl)("Please select valid .json files"));try{let a=[];for(let c of b){let b=await c.text(),d=ae(b);Array.isArray(d)?a.push(...d):d&&a.push(d)}if(0===a.length)return void m((0,L.Tl)("No accounts found in selected files"));g(JSON.stringify(a,null,2)),s({filesCount:b.length,accountsCount:a.length})}catch(a){m(`${(0,L.Tl)("Error reading files")}: ${a.message}`)}},w=async()=>{let a;m(""),o(null);try{a=ae(f)}catch(a){m(`${(0,L.Tl)("Invalid JSON")}: ${a.message}`);return}if(!a||0===a.length)return void m((0,L.Tl)("No accounts found in input"));i(!0);try{let b=await fetch("/api/oauth/grok-cli/bulk-import",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accounts:a})}),d=await b.json();if(!b.ok)return void m(d?.error||`Request failed: ${b.status}`);o(d),d.success>0&&"function"==typeof c&&c()}catch(a){m(a.message||(0,L.Tl)("Request failed"))}finally{i(!1)}},x=n?.results?.filter(a=>!a.ok)||[];return(0,d.jsx)(X.default,{isOpen:a,title:(0,L.Tl)("Bulk add Grok CLI accounts"),onClose:u,children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,d.jsx)("p",{className:"text-xs text-muted",children:(0,L.Tl)("Upload multiple .json files or paste JSON array / object.")}),(0,d.jsx)("input",{ref:t,type:"file",accept:".json,application/json",multiple:!0,className:"hidden",onChange:a=>{v(a.target.files),a.target&&(a.target.value="")}}),(0,d.jsx)(l.default,{type:"button",size:"sm",variant:"secondary",icon:"upload_file",onClick:()=>t.current?.click(),disabled:h,children:(0,L.Tl)("Upload JSON files")})]}),(0,d.jsxs)("div",{onDragOver:a=>{a.preventDefault(),q(!0)},onDragLeave:a=>{a.preventDefault(),q(!1)},onDrop:a=>{a.preventDefault(),q(!1),a.dataTransfer?.files?.length>0&&v(a.dataTransfer.files)},className:`relative rounded border transition-colors ${p?"border-coral bg-coral-bg ring-2 ring-coral/30":"border-coral/30 bg-panel"}`,children:[(0,d.jsx)("textarea",{className:"w-full rounded bg-transparent p-2.5 text-sm font-mono resize-y min-h-[240px] focus:outline-none focus:ring-1 focus:ring-coral",placeholder:ad,value:f,onChange:a=>{g(a.target.value),s(null)},disabled:h}),p&&(0,d.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center bg-panel/90 rounded pointer-events-none backdrop-blur-xs",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-3xl text-coral-ink mb-1",children:"upload_file"}),(0,d.jsx)("span",{className:"text-sm font-medium text-coral-ink",children:(0,L.Tl)("Drop .json files here")})]})]}),r&&(0,d.jsxs)(k.default,{variant:"ok",className:"p-2 text-xs",children:[(0,L.Tl)("Loaded")," ",r.accountsCount," ",(0,L.Tl)("account(s) from")," ",r.filesCount," ",(0,L.Tl)("file(s)")]}),j&&(0,d.jsx)(k.default,{variant:"err",className:"break-words",children:j}),n&&n.failed>0&&(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsxs)(z.default,{variant:"warn",className:"self-start",children:[n.failed," ",(0,L.Tl)("failed")]}),x.length>0&&(0,d.jsx)("ul",{className:"rounded border border-coral/20 bg-raised p-2 text-xs font-mono max-h-40 overflow-y-auto",children:x.map(a=>(0,d.jsxs)("li",{className:"text-err",children:["[",a.index,"] ",a.error]},a.index))})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(l.default,{onClick:w,fullWidth:!0,disabled:h||!f.trim(),children:h?(0,L.Tl)("Importing..."):(0,L.Tl)("Import all")}),(0,d.jsx)(l.default,{onClick:u,variant:"ghost",fullWidth:!0,disabled:h,children:(0,L.Tl)("Close")})]})]})})}function ag({providerId:a,isCompatible:b,hasDualAuthModes:c,labels:e,onOAuth:f,onApiKey:g,onAdd:h,onCookie:i,onBulkCodex:j,onBulkGrokCli:k}){return(0,d.jsxs)(d.Fragment,{children:["iflow"===a?(0,d.jsx)(l.default,{size:"sm",icon:"cookie",variant:"secondary",onClick:i,title:"Add connection using browser cookie",children:"Cookie"}):null,"codex"===a?(0,d.jsx)(l.default,{size:"sm",icon:"playlist_add",variant:"secondary",onClick:j,title:"Bulk import codex accounts from JSON",children:"Bulk add"}):null,"grok-cli"===a?(0,d.jsx)(l.default,{size:"sm",icon:"playlist_add",variant:"secondary",onClick:k,title:"Bulk import Grok CLI accounts from JSON",children:"Bulk add"}):null,c?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(l.default,{size:"sm",icon:"lock",variant:"secondary",onClick:f,children:e.oauth}),(0,d.jsx)(l.default,{size:"sm",icon:"key",variant:"primary",onClick:g,children:e.apiKey})]}):(0,d.jsx)(l.default,{size:"sm",icon:"add",variant:"primary",onClick:h,children:b?"Add API key":"iflow"===a?"OAuth":"Add connection"})]})}function ah({providerId:a,providerInfo:b,isCompatible:c,isAnthropic:e,storageAlias:f,displayAlias:g,proxyPools:h,connectionNames:i,addConnectionError:j,selectedConnection:k,show:l,handlers:m,models:n}){return(0,d.jsxs)(d.Fragment,{children:["kiro"===a?(0,d.jsx)(Q.default,{isOpen:l.oauth,providerInfo:b,onSuccess:m.oauthSuccess,onClose:m.closeOAuth}):"cursor"===a?(0,d.jsx)(R.default,{isOpen:l.oauth,providerInfo:b,onSuccess:m.oauthSuccess,onClose:m.closeOAuth}):"gitlab"===a?(0,d.jsx)(S.default,{isOpen:l.oauth,providerInfo:b,onSuccess:m.oauthSuccess,onClose:m.closeOAuth}):(0,d.jsx)(T.default,{isOpen:l.oauth,provider:a,providerInfo:b,onSuccess:m.oauthSuccess,onClose:m.closeOAuth}),(0,d.jsx)(U.default,{isOpen:l.xiaomiMimo,onSuccess:m.oauthSuccess,onClose:m.closeXiaomiMimo}),"iflow"===a?(0,d.jsx)(V.default,{isOpen:l.iflowCookie,onSuccess:m.iflowCookieSuccess,onClose:m.closeIflowCookie}):null,(0,d.jsx)(Y.A,{isOpen:l.addApiKey,provider:a,providerName:b.name,isCompatible:c,isAnthropic:e,authType:b?.authType,authHint:b?.authHint,website:b?.website,proxyPools:h,error:j,existingNames:i,onSave:m.saveApiKey,onBulkDone:m.refreshConnections,onClose:m.closeAddApiKey}),(0,d.jsx)(W.default,{isOpen:l.edit,connection:k,proxyPools:h,onSave:m.updateConnection,onClose:m.closeEdit}),c?(0,d.jsx)(_,{isOpen:l.editNode,node:m.compatibleNode,onSave:m.updateNode,onClose:m.closeEditNode,isAnthropic:e}):null,c?null:(0,d.jsx)(aa.A,{isOpen:n.showAddCustomModel,providerAlias:f,providerDisplayAlias:g,onSave:m.saveCustomModel,onClose:m.closeAddCustomModel}),"codex"===a?(0,d.jsx)(ac,{isOpen:l.bulkCodex,onClose:m.closeBulkCodex,onSuccess:m.refreshConnections}):null,"grok-cli"===a?(0,d.jsx)(af,{isOpen:l.bulkGrokCli,onClose:m.closeBulkGrokCli,onSuccess:m.refreshConnections}):null,(0,d.jsx)(X.ConfirmDialog,{isOpen:l.agRisk,onClose:m.closeAgRisk,onConfirm:m.confirmAgRisk,title:"Risk notice",message:D(b?.deprecationNotice),confirmText:"I understand, continue",cancelText:"Cancel",variant:"danger"})]})}ag.propTypes={providerId:w().string.isRequired,isCompatible:w().bool.isRequired,hasDualAuthModes:w().bool.isRequired,labels:w().object.isRequired,onOAuth:w().func.isRequired,onApiKey:w().func.isRequired,onAdd:w().func.isRequired,onCookie:w().func.isRequired,onBulkCodex:w().func.isRequired,onBulkGrokCli:w().func.isRequired},ah.propTypes={providerId:w().string.isRequired,providerInfo:w().object.isRequired,isCompatible:w().bool.isRequired,isAnthropic:w().bool.isRequired,storageAlias:w().string.isRequired,displayAlias:w().string.isRequired,proxyPools:w().array.isRequired,connectionNames:w().array.isRequired,addConnectionError:w().string,selectedConnection:w().object,show:w().shape({oauth:w().bool.isRequired,xiaomiMimo:w().bool.isRequired,iflowCookie:w().bool.isRequired,addApiKey:w().bool.isRequired,edit:w().bool.isRequired,editNode:w().bool.isRequired,bulkCodex:w().bool.isRequired,bulkGrokCli:w().bool.isRequired,agRisk:w().bool.isRequired}).isRequired,handlers:w().shape({oauthSuccess:w().func.isRequired,closeOAuth:w().func.isRequired,closeXiaomiMimo:w().func.isRequired,iflowCookieSuccess:w().func.isRequired,closeIflowCookie:w().func.isRequired,saveApiKey:w().func.isRequired,refreshConnections:w().func.isRequired,closeAddApiKey:w().func.isRequired,updateConnection:w().func.isRequired,closeEdit:w().func.isRequired,compatibleNode:w().object,updateNode:w().func.isRequired,closeEditNode:w().func.isRequired,saveCustomModel:w().func.isRequired,closeAddCustomModel:w().func.isRequired,closeBulkCodex:w().func.isRequired,closeBulkGrokCli:w().func.isRequired,closeAgRisk:w().func.isRequired,confirmAgRisk:w().func.isRequired}).isRequired,models:w().object.isRequired};let ai={claude:"claudeAutoPing",codex:"codexAutoPing"};function aj(){let a=(0,g.useParams)(),b=(0,g.useRouter)(),c=a.id,h=(0,e.useCallback)(a=>n.i.getState().error(a),[]),v=(0,e.useCallback)(a=>n.i.getState().success(a),[]),[w,x]=(0,e.useState)(!0),[y,z]=(0,e.useState)(""),[A,B]=(0,e.useState)(null),[D,F]=(0,e.useState)({oauth:!1,xiaomiMimo:!1,iflowCookie:!1,addApiKey:!1,edit:!1,editNode:!1,bulkCodex:!1,bulkGrokCli:!1,agRisk:!1}),J=(0,e.useCallback)(a=>F(b=>({...b,[a]:!0})),[]),K=(0,e.useCallback)(a=>F(b=>({...b,[a]:!1})),[]),[L,M]=(0,e.useState)(""),[N,O]=(0,e.useState)(null),[Q,R]=(0,e.useState)({enabled:!1,connections:{}}),S=(0,r.Z)({providerId:c,notifyError:h}),T=(0,s.w)({providerId:c,notifyError:h}),U=(0,u.kw)(c,A),V=(0,u.ds)(c,U),W=V.isOpenAICompatible||V.isAnthropicCompatible,{storageAlias:X,displayAlias:Y}=(0,u.mC)(c,A,W),{staticModels:Z,isLiveCatalog:$}=(0,u.RT)(c),{liveModels:_,liveError:aa,refresh:ab}=function({providerId:a,connections:b,enabled:c}){let d=c&&(b||[]).find(a=>!1!==a.isActive)?.id||null,f=d?`${a}:${d}`:null,[g,h]=(0,e.useState)(p),i=(0,e.useCallback)(async()=>{if(!d)throw Error("No active connection");let a=await q(d,{refresh:!0});return h(function(a,{models:b,warning:c}){return{key:a,models:b,error:c||(b.length>0?null:"No live models returned.")}}(f,a)),a},[f,d]),j=f&&g.key===f?g:p;return{liveModels:j.models,liveError:j.error,refresh:i}}({providerId:c,connections:S.connections,enabled:$&&!W}),ac=$&&_.length>0&&!W?(0,o.rE)(c,_,Z):Z,ad=(0,t.G)({providerId:c,storageAlias:X,staticModels:Z,catalogModels:ac,notifyError:h}),ae=(0,u.qR)(c),af=!W&&V.isOAuth&&V.supportsApiKey,{fetchConnections:aj}=S,{load:ak}=T,{load:al,loadThinking:am}=ad,an=(0,e.useCallback)(async()=>{z("");try{await aj(),await Promise.all([ak(),al(),am()]);let a=await fetch("/api/provider-nodes",{cache:"no-store"});if(a.ok){let b=((await a.json().catch(()=>({}))).nodes||[]).find(a=>a.id===c)||null;if(!b&&W)for(let a=0;a<3;a+=1){await new Promise(a=>setTimeout(a,150));let a=await fetch("/api/provider-nodes",{cache:"no-store"});if(a.ok&&(b=((await a.json().catch(()=>({}))).nodes||[]).find(a=>a.id===c)||null))break}B(b)}let b=await fetch("/api/settings",{cache:"no-store"}),d=b.ok?await b.json().catch(()=>({})):{},e=ai[c],f=e&&d[e]||{};R({enabled:!0===f.enabled,connections:f.connections||{}})}catch(a){console.log("Error fetching provider detail:",a),z("Could not load this provider. Check the gateway and try again.")}finally{x(!1)}},[aj,W,al,ak,am,c]),ao=()=>{"xiaomi-mimo"===c?J("xiaomiMimo"):V.isOAuth?J("oauth"):(M(""),J("addApiKey"))},ap=()=>{M(""),J("addApiKey")},aq=async()=>{await S.fetchConnections(),(0,f.q0)()},ar=async a=>{M("");try{let b=await fetch("/api/providers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:c,...a})}),d=await b.json().catch(()=>null);if(b.ok){await aq(),K("addApiKey");return}M(d?.error||"Failed to save connection")}catch(a){console.log("Error saving connection:",a),M("Failed to save connection")}},as=async a=>{try{let b=await fetch(`/api/providers/${N.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok)return(await b.json().catch(()=>({}))).error||"Failed to save connection";return await aq(),K("edit"),null}catch(a){return console.log("Error updating connection:",a),"Failed to save connection"}},at=async a=>{try{let b=await fetch(`/api/provider-nodes/${c}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),d=await b.json().catch(()=>({}));b.ok?(B(d.node),await aq(),K("editNode")):h(d.error||"Failed to update provider.")}catch(a){console.log("Error updating provider node:",a)}},au=(0,d.jsx)(ag,{providerId:c,isCompatible:W,hasDualAuthModes:af,labels:ae,onOAuth:ao,onApiKey:ap,onAdd:()=>{V.isOAuth?ao():ap()},onCookie:()=>J("iflowCookie"),onBulkCodex:()=>J("bulkCodex"),onBulkGrokCli:()=>J("bulkGrokCli")}),av=`${Y}/${ad.enabledModels[0]?.id||ad.customModelRows[0]?.id||Z[0]?.id||"model-id"}`,aw=V.isOAuth?"info":V.isFreeNoAuth?"live":V.supportsApiKey?"brand":"neutral",ax=V.isOAuth?"OAuth":V.isFreeNoAuth?"Free":V.supportsApiKey?"API key":W?"Compatible":"Provider";return w?(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-5 px-1 sm:px-0","aria-busy":"true",children:[(0,d.jsx)("span",{className:"sr-only",role:"status",children:"Loading provider"}),(0,d.jsx)(j.CardSkeleton,{}),(0,d.jsx)(j.CardSkeleton,{})]}):U?(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-5 px-1 sm:px-0",children:[(0,d.jsx)(C,{providerId:c,providerInfo:U,connections:S.connections,authLabel:ax,authVariant:aw,modelSnippet:av,loading:!1}),(0,d.jsx)(E,{providerInfo:U}),y?(0,d.jsx)(k.default,{variant:"err",title:"Could not load provider",children:(0,d.jsxs)("span",{className:"flex flex-wrap items-center gap-2",children:[y,(0,d.jsx)(l.default,{size:"sm",variant:"secondary",onClick:an,children:"Retry"})]})}):null,W&&A?(0,d.jsx)(G,{isAnthropic:V.isAnthropicCompatible,apiType:A.apiType,baseUrl:A.baseUrl,onAddKey:ap,onEdit:()=>J("editNode"),onDelete:()=>{S.setConfirmState({title:"Delete compatible node",message:`Delete this ${V.isAnthropicCompatible?"Anthropic":"OpenAI"} Compatible node?`,onConfirm:async()=>{S.setConfirmState(null);try{(await fetch(`/api/provider-nodes/${c}`,{method:"DELETE"})).ok?b.push("/dashboard/providers"):h("Failed to delete provider.")}catch(a){console.log("Error deleting provider node:",a)}}})}}):null,V.isFreeNoAuth?(0,d.jsx)(m.default,{providerId:c}):(0,d.jsx)(H.A,{providerId:c,auth:{isOAuth:V.isOAuth,hasDualAuthModes:af,labels:ae},strategy:T,conn:S,autoPing:{enabled:Q.enabled,connections:Q.connections,toggle:(a,b)=>{let d=ai[c];if(!d)return;let e={...Q,connections:{...Q.connections,[a]:b}};R(e),fetch("/api/settings",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({[d]:e})}).catch(a=>console.log("Error saving auto-ping config:",a))}},actions:{addButtons:au,edit:a=>{O(a),J("edit")},notifyError:h}}),(0,d.jsx)(I.A,{providerId:c,storageAlias:X,displayAlias:Y,isLiveCatalog:$,isCompatible:W,isAnthropic:V.isAnthropicCompatible,isFreeNoAuth:V.isFreeNoAuth,connections:S.connections,catalogModels:ac,staticModels:Z,liveError:aa,refreshLive:ab,models:ad,onDisableAll:a=>S.setConfirmState(a),compatibleSection:(0,d.jsx)(P,{isFreeNoAuth:V.isFreeNoAuth,storageAlias:X,displayAlias:Y,isAnthropic:V.isAnthropicCompatible,connections:S.connections,models:ad,actions:{notifyError:h,notifySuccess:v}})}),(0,d.jsx)(ah,{providerId:c,providerInfo:U,isCompatible:W,isAnthropic:V.isAnthropicCompatible,storageAlias:X,displayAlias:Y,proxyPools:S.proxyPools,connectionNames:S.connections.map(a=>a.name).filter(Boolean),addConnectionError:L,selectedConnection:N,show:D,handlers:{oauthSuccess:()=>{aq(),K("oauth")},closeOAuth:()=>K("oauth"),closeXiaomiMimo:()=>K("xiaomiMimo"),iflowCookieSuccess:()=>{aq(),K("iflowCookie")},closeIflowCookie:()=>K("iflowCookie"),saveApiKey:ar,refreshConnections:aq,closeAddApiKey:()=>{M(""),K("addApiKey")},updateConnection:as,closeEdit:()=>K("edit"),compatibleNode:A,updateNode:at,closeEditNode:()=>K("editNode"),saveCustomModel:async(a,b)=>{let c=await ad.addCustomModel(a,"llm",X,b);return c&&ad.setShowAddCustomModel(!1),c},closeAddCustomModel:()=>ad.setShowAddCustomModel(!1),closeBulkCodex:()=>K("bulkCodex"),closeBulkGrokCli:()=>K("bulkGrokCli"),closeAgRisk:()=>K("agRisk"),confirmAgRisk:()=>{K("agRisk"),V.isOAuth?J("oauth"):ap()}},models:ad})]}):(0,d.jsxs)("div",{className:"flex min-w-0 flex-col items-center gap-3 px-1 py-20 text-center sm:px-0",children:[(0,d.jsx)("p",{className:"text-muted",children:"Provider not found"}),(0,d.jsx)(i(),{href:"/dashboard/providers",className:"inline-flex min-h-11 items-center text-sm font-semibold text-coral-ink hover:text-coral focus-visible:shadow-focus focus-visible:outline-none",children:"Back to providers"})]})}},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},32467:a=>{"use strict";a.exports=require("node:http2")},33873:a=>{"use strict";a.exports=require("path")},34589:a=>{"use strict";a.exports=require("node:assert")},37067:a=>{"use strict";a.exports=require("node:http")},37540:a=>{"use strict";a.exports=require("node:console")},38522:a=>{"use strict";a.exports=require("node:zlib")},39973:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return e}});let d=c(40399)._(c(80061));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},40610:a=>{"use strict";a.exports=require("node:dns")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},41692:a=>{"use strict";a.exports=require("node:tls")},41792:a=>{"use strict";a.exports=require("node:querystring")},46060:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external.js")},46193:a=>{"use strict";a.exports=require("node:string_decoder")},46293:a=>{"use strict";a.exports=require("sql.js")},48161:a=>{"use strict";a.exports=require("node:os")},51419:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>A,handler:()=>C,routeModule:()=>B});var d=c(21635),e=c(86315),f=c(1020),g=c(61287),h={};for(let a in g)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(h[a]=()=>g[a]);c.d(b,h);let i=(0,d.p)(()=>Promise.resolve().then(c.bind(c,57529))),j=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),k=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),l=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),m=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),n=(0,d.p)(()=>Promise.resolve().then(c.bind(c,79409))),o=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),p=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),q=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),r=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),s=(0,d.p)(()=>Promise.resolve().then(c.bind(c,79346))),t=(0,d.p)(()=>Promise.resolve().then(c.bind(c,70160))),u=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),v=(0,d.p)(()=>Promise.resolve().then(c.bind(c,55880))),w=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),x=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),y={children:["",{children:["(dashboard)",{children:["dashboard",{children:["providers",{children:["[id]",{children:["__PAGE__",{},{page:[(0,d.p)(()=>Promise.resolve().then(c.bind(c,93110))),"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/providers/[id]/page.js"]}]},{"global-error":[x,"next/dist/client/components/builtin/global-error.js"]},["new"]]},{"global-error":[w,"next/dist/client/components/builtin/global-error.js"]},[]]},{error:[s,"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/error.js"],loading:[t,"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/loading.js"],"global-error":[u,"next/dist/client/components/builtin/global-error.js"],"not-found":[v,"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/not-found.js"]},[]]},{layout:[n,"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/layout.js"],"global-error":[o,"next/dist/client/components/builtin/global-error.js"],"not-found":[p,"next/dist/client/components/builtin/not-found.js"],forbidden:[q,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[r,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]},{layout:[i,"/home/runner/work/tokenhop/tokenhop/src/app/layout.js"],"global-error":[j,"next/dist/client/components/builtin/global-error.js"],"not-found":[k,"next/dist/client/components/builtin/not-found.js"],forbidden:[l,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[m,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]}.children,z=(0,e.H)({tree:y,page:"/(dashboard)/dashboard/providers/[id]/page",pathname:"/dashboard/providers/[id]",require:c,loadChunk:()=>Promise.resolve(),interopDefault:f.T}),A=z.__next_app__,B=z.routeModule,C=z.handler},51455:a=>{"use strict";a.exports=require("node:fs/promises")},53053:a=>{"use strict";a.exports=require("node:diagnostics_channel")},55511:a=>{"use strict";a.exports=require("crypto")},55591:a=>{"use strict";a.exports=require("https")},57075:a=>{"use strict";a.exports=require("node:stream")},57975:a=>{"use strict";a.exports=require("node:util")},58962:(a,b,c)=>{"use strict";c.d(b,{E2:()=>d,gs:()=>e});function d(a){if(!a)return null;let b=a.match(/\b([45]\d{2})\b/);return b?b[1]:"ERR"}function e(a){if(!a)return"";let b=Math.floor((Date.now()-new Date(a).getTime())/6e4);if(b<1)return"just now";if(b<60)return`${b}m ago`;let c=Math.floor(b/60);if(c<24)return`${c}h ago`;let d=Math.floor(c/24);return`${d}d ago`}c(29225)},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66722:(a,b,c)=>{Promise.resolve().then(c.bind(c,84472))},66958:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=c(49306);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},71553:a=>{"use strict";a.exports=require("node:dns/promises")},71622:a=>{"use strict";a.exports=import("open")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73429:a=>{"use strict";a.exports=require("node:util/types")},73496:a=>{"use strict";a.exports=require("http2")},74075:a=>{"use strict";a.exports=require("zlib")},75919:a=>{"use strict";a.exports=require("node:worker_threads")},76760:a=>{"use strict";a.exports=require("node:path")},77030:a=>{"use strict";a.exports=require("node:net")},77598:a=>{"use strict";a.exports=require("node:crypto")},78474:a=>{"use strict";a.exports=require("node:events")},79646:a=>{"use strict";a.exports=require("child_process")},80061:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return j}});let d=c(48249),e=c(67484),f=c(66958),g=c(85264);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},80099:a=>{"use strict";a.exports=require("node:sqlite")},81630:a=>{"use strict";a.exports=require("http")},81787:a=>{"use strict";a.exports=require("bun:sqlite")},84472:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/providers/detail/ProviderDetailPage.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/tokenhop/tokenhop/src/app/(dashboard)/dashboard/providers/detail/ProviderDetailPage.js","default")},84874:(a,b,c)=>{Promise.resolve().then(c.bind(c,27107))},85264:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=c(48249),e=c(74429),f=c(29294),g=c(10117),h=c(44217);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let j=(0,h.getAssetTokenQuery)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${j}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},87550:a=>{"use strict";a.exports=require("better-sqlite3")},87997:a=>{"use strict";a.exports=require("node:timers")},90314:(a,b,c)=>{"use strict";c.d(b,{default:()=>e.a});var d=c(39973),e=c.n(d)},91645:a=>{"use strict";a.exports=require("net")},93110:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g,metadata:()=>f});var d=c(5735),e=c(84472);let f={title:"Provider"};function g(){return(0,d.jsx)(e.default,{})}},94735:a=>{"use strict";a.exports=require("events")}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,8666,2430,2217,2116,5560,6561,9421,7819,6070,1152,915,7642,4123,4903,1533,6244,6849,1320,8171,499,2592,6427,4685,3097,3919,4492],()=>b(b.s=51419));module.exports=c})();
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../../node_modules/@swc/helpers/esm/_interop_require_default.js","../../../../../../../node_modules/@swc/helpers/package.json","../../../../../../../node_modules/better-sqlite3/lib/binding.js","../../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../../node_modules/better-sqlite3/lib/methods/explain.js","../../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../../node_modules/better-sqlite3/package.json","../../../../../../../node_modules/better-sqlite3/prebuilds/darwin-arm64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/darwin-x64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/linux-arm64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/linux-x64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/linuxmusl-arm64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/linuxmusl-x64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/win32-arm64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/win32-x64.node","../../../../../../../node_modules/bundle-name/index.js","../../../../../../../node_modules/bundle-name/package.json","../../../../../../../node_modules/default-browser-id/index.js","../../../../../../../node_modules/default-browser-id/package.json","../../../../../../../node_modules/default-browser/index.js","../../../../../../../node_modules/default-browser/package.json","../../../../../../../node_modules/default-browser/windows.js","../../../../../../../node_modules/define-lazy-prop/index.js","../../../../../../../node_modules/define-lazy-prop/package.json","../../../../../../../node_modules/is-docker/index.js","../../../../../../../node_modules/is-docker/package.json","../../../../../../../node_modules/is-in-ssh/index.js","../../../../../../../node_modules/is-in-ssh/package.json","../../../../../../../node_modules/is-inside-container/index.js","../../../../../../../node_modules/is-inside-container/package.json","../../../../../../../node_modules/is-wsl/index.js","../../../../../../../node_modules/is-wsl/package.json","../../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../../node_modules/next/dist/server/app-render/blocking-route-messages.js","../../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/sync-io-messages.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../../node_modules/next/dist/shared/lib/instant-messages.js","../../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../../node_modules/next/package.json","../../../../../../../node_modules/open/index.js","../../../../../../../node_modules/open/package.json","../../../../../../../node_modules/open/xdg-open","../../../../../../../node_modules/powershell-utils/index.js","../../../../../../../node_modules/powershell-utils/package.json","../../../../../../../node_modules/react/cjs/react.development.js","../../../../../../../node_modules/react/cjs/react.production.js","../../../../../../../node_modules/react/index.js","../../../../../../../node_modules/react/package.json","../../../../../../../node_modules/run-applescript/index.js","../../../../../../../node_modules/run-applescript/package.json","../../../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../../../node_modules/sql.js/package.json","../../../../../../../node_modules/wsl-utils/index.js","../../../../../../../node_modules/wsl-utils/node_modules/powershell-utils/index.js","../../../../../../../node_modules/wsl-utils/node_modules/powershell-utils/package.json","../../../../../../../node_modules/wsl-utils/package.json","../../../../../../../node_modules/wsl-utils/utilities.js","../../../../../../../package.json","../../../../../../package.json","../../../../../chunks/1026.js","../../../../../chunks/1129.js","../../../../../chunks/1152.js","../../../../../chunks/1159.js","../../../../../chunks/1204.js","../../../../../chunks/1227.js","../../../../../chunks/1245.js","../../../../../chunks/1320.js","../../../../../chunks/1336.js","../../../../../chunks/1432.js","../../../../../chunks/1452.js","../../../../../chunks/1455.js","../../../../../chunks/1487.js","../../../../../chunks/1533.js","../../../../../chunks/1764.js","../../../../../chunks/1778.js","../../../../../chunks/1794.js","../../../../../chunks/1813.js","../../../../../chunks/1863.js","../../../../../chunks/1930.js","../../../../../chunks/1952.js","../../../../../chunks/1994.js","../../../../../chunks/1998.js","../../../../../chunks/2051.js","../../../../../chunks/206.js","../../../../../chunks/2116.js","../../../../../chunks/2217.js","../../../../../chunks/2380.js","../../../../../chunks/2384.js","../../../../../chunks/24.js","../../../../../chunks/241.js","../../../../../chunks/2430.js","../../../../../chunks/2460.js","../../../../../chunks/2592.js","../../../../../chunks/2600.js","../../../../../chunks/3016.js","../../../../../chunks/3093.js","../../../../../chunks/3097.js","../../../../../chunks/318.js","../../../../../chunks/3225.js","../../../../../chunks/3306.js","../../../../../chunks/331.js","../../../../../chunks/3340.js","../../../../../chunks/3414.js","../../../../../chunks/3535.js","../../../../../chunks/3546.js","../../../../../chunks/3558.js","../../../../../chunks/3586.js","../../../../../chunks/3593.js","../../../../../chunks/3676.js","../../../../../chunks/385.js","../../../../../chunks/3859.js","../../../../../chunks/3894.js","../../../../../chunks/3919.js","../../../../../chunks/392.js","../../../../../chunks/3943.js","../../../../../chunks/3966.js","../../../../../chunks/4000.js","../../../../../chunks/4033.js","../../../../../chunks/4037.js","../../../../../chunks/4072.js","../../../../../chunks/4114.js","../../../../../chunks/4123.js","../../../../../chunks/4125.js","../../../../../chunks/4152.js","../../../../../chunks/4199.js","../../../../../chunks/4247.js","../../../../../chunks/4278.js","../../../../../chunks/4334.js","../../../../../chunks/4406.js","../../../../../chunks/4452.js","../../../../../chunks/4492.js","../../../../../chunks/4521.js","../../../../../chunks/4547.js","../../../../../chunks/4685.js","../../../../../chunks/4730.js","../../../../../chunks/4739.js","../../../../../chunks/4741.js","../../../../../chunks/4780.js","../../../../../chunks/4876.js","../../../../../chunks/4892.js","../../../../../chunks/4954.js","../../../../../chunks/499.js","../../../../../chunks/507.js","../../../../../chunks/5081.js","../../../../../chunks/5173.js","../../../../../chunks/524.js","../../../../../chunks/5258.js","../../../../../chunks/539.js","../../../../../chunks/5433.js","../../../../../chunks/5497.js","../../../../../chunks/5560.js","../../../../../chunks/5573.js","../../../../../chunks/5615.js","../../../../../chunks/5699.js","../../../../../chunks/5781.js","../../../../../chunks/6070.js","../../../../../chunks/6103.js","../../../../../chunks/6158.js","../../../../../chunks/6244.js","../../../../../chunks/6252.js","../../../../../chunks/6353.js","../../../../../chunks/6354.js","../../../../../chunks/6427.js","../../../../../chunks/6496.js","../../../../../chunks/6551.js","../../../../../chunks/6561.js","../../../../../chunks/6588.js","../../../../../chunks/6589.js","../../../../../chunks/6703.js","../../../../../chunks/6734.js","../../../../../chunks/6763.js","../../../../../chunks/6769.js","../../../../../chunks/6844.js","../../../../../chunks/6849.js","../../../../../chunks/698.js","../../../../../chunks/7023.js","../../../../../chunks/7184.js","../../../../../chunks/7211.js","../../../../../chunks/7247.js","../../../../../chunks/7261.js","../../../../../chunks/737.js","../../../../../chunks/7382.js","../../../../../chunks/7469.js","../../../../../chunks/7616.js","../../../../../chunks/7642.js","../../../../../chunks/7716.js","../../../../../chunks/7774.js","../../../../../chunks/7819.js","../../../../../chunks/7828.js","../../../../../chunks/7901.js","../../../../../chunks/7914.js","../../../../../chunks/7965.js","../../../../../chunks/8037.js","../../../../../chunks/8062.js","../../../../../chunks/8171.js","../../../../../chunks/8255.js","../../../../../chunks/8372.js","../../../../../chunks/8416.js","../../../../../chunks/8432.js","../../../../../chunks/8468.js","../../../../../chunks/8469.js","../../../../../chunks/8520.js","../../../../../chunks/8624.js","../../../../../chunks/8635.js","../../../../../chunks/8658.js","../../../../../chunks/8666.js","../../../../../chunks/8708.js","../../../../../chunks/8823.js","../../../../../chunks/8853.js","../../../../../chunks/8895.js","../../../../../chunks/8920.js","../../../../../chunks/9124.js","../../../../../chunks/915.js","../../../../../chunks/9343.js","../../../../../chunks/9421.js","../../../../../chunks/9578.js","../../../../../chunks/9613.js","../../../../../chunks/965.js","../../../../../chunks/9710.js","../../../../../chunks/9713.js","../../../../../chunks/9755.js","../../../../../chunks/9850.js","../../../../../chunks/9899.js","../../../../../chunks/994.js","../../../../../chunks/9994.js","../../../../../webpack-runtime.js","page_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../../node_modules/@swc/helpers/esm/_interop_require_default.js","../../../../../../../node_modules/@swc/helpers/package.json","../../../../../../../node_modules/better-sqlite3/lib/binding.js","../../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../../node_modules/better-sqlite3/lib/methods/explain.js","../../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../../node_modules/better-sqlite3/package.json","../../../../../../../node_modules/better-sqlite3/prebuilds/darwin-arm64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/darwin-x64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/linux-arm64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/linux-x64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/linuxmusl-arm64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/linuxmusl-x64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/win32-arm64.node","../../../../../../../node_modules/better-sqlite3/prebuilds/win32-x64.node","../../../../../../../node_modules/bundle-name/index.js","../../../../../../../node_modules/bundle-name/package.json","../../../../../../../node_modules/default-browser-id/index.js","../../../../../../../node_modules/default-browser-id/package.json","../../../../../../../node_modules/default-browser/index.js","../../../../../../../node_modules/default-browser/package.json","../../../../../../../node_modules/default-browser/windows.js","../../../../../../../node_modules/define-lazy-prop/index.js","../../../../../../../node_modules/define-lazy-prop/package.json","../../../../../../../node_modules/is-docker/index.js","../../../../../../../node_modules/is-docker/package.json","../../../../../../../node_modules/is-in-ssh/index.js","../../../../../../../node_modules/is-in-ssh/package.json","../../../../../../../node_modules/is-inside-container/index.js","../../../../../../../node_modules/is-inside-container/package.json","../../../../../../../node_modules/is-wsl/index.js","../../../../../../../node_modules/is-wsl/package.json","../../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../../node_modules/next/dist/server/app-render/blocking-route-messages.js","../../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/sync-io-messages.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../../node_modules/next/dist/shared/lib/instant-messages.js","../../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../../node_modules/next/package.json","../../../../../../../node_modules/open/index.js","../../../../../../../node_modules/open/package.json","../../../../../../../node_modules/open/xdg-open","../../../../../../../node_modules/powershell-utils/index.js","../../../../../../../node_modules/powershell-utils/package.json","../../../../../../../node_modules/react/cjs/react.development.js","../../../../../../../node_modules/react/cjs/react.production.js","../../../../../../../node_modules/react/index.js","../../../../../../../node_modules/react/package.json","../../../../../../../node_modules/run-applescript/index.js","../../../../../../../node_modules/run-applescript/package.json","../../../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../../../node_modules/sql.js/package.json","../../../../../../../node_modules/wsl-utils/index.js","../../../../../../../node_modules/wsl-utils/node_modules/powershell-utils/index.js","../../../../../../../node_modules/wsl-utils/node_modules/powershell-utils/package.json","../../../../../../../node_modules/wsl-utils/package.json","../../../../../../../node_modules/wsl-utils/utilities.js","../../../../../../../package.json","../../../../../../package.json","../../../../../chunks/1129.js","../../../../../chunks/1152.js","../../../../../chunks/1159.js","../../../../../chunks/1204.js","../../../../../chunks/1227.js","../../../../../chunks/1245.js","../../../../../chunks/1320.js","../../../../../chunks/1336.js","../../../../../chunks/1432.js","../../../../../chunks/1452.js","../../../../../chunks/1455.js","../../../../../chunks/1487.js","../../../../../chunks/1533.js","../../../../../chunks/1764.js","../../../../../chunks/1778.js","../../../../../chunks/1794.js","../../../../../chunks/1813.js","../../../../../chunks/1854.js","../../../../../chunks/1863.js","../../../../../chunks/1930.js","../../../../../chunks/1952.js","../../../../../chunks/1994.js","../../../../../chunks/1998.js","../../../../../chunks/2051.js","../../../../../chunks/206.js","../../../../../chunks/2116.js","../../../../../chunks/2217.js","../../../../../chunks/2380.js","../../../../../chunks/24.js","../../../../../chunks/241.js","../../../../../chunks/2430.js","../../../../../chunks/2460.js","../../../../../chunks/2592.js","../../../../../chunks/2600.js","../../../../../chunks/3016.js","../../../../../chunks/3097.js","../../../../../chunks/318.js","../../../../../chunks/3225.js","../../../../../chunks/3306.js","../../../../../chunks/3340.js","../../../../../chunks/3535.js","../../../../../chunks/3546.js","../../../../../chunks/3558.js","../../../../../chunks/3593.js","../../../../../chunks/3676.js","../../../../../chunks/368.js","../../../../../chunks/385.js","../../../../../chunks/3859.js","../../../../../chunks/3894.js","../../../../../chunks/3919.js","../../../../../chunks/392.js","../../../../../chunks/3943.js","../../../../../chunks/3966.js","../../../../../chunks/4000.js","../../../../../chunks/4033.js","../../../../../chunks/4037.js","../../../../../chunks/4072.js","../../../../../chunks/4114.js","../../../../../chunks/4123.js","../../../../../chunks/4125.js","../../../../../chunks/4152.js","../../../../../chunks/4199.js","../../../../../chunks/4247.js","../../../../../chunks/4334.js","../../../../../chunks/4406.js","../../../../../chunks/4452.js","../../../../../chunks/4492.js","../../../../../chunks/4521.js","../../../../../chunks/4547.js","../../../../../chunks/4685.js","../../../../../chunks/4730.js","../../../../../chunks/4739.js","../../../../../chunks/4741.js","../../../../../chunks/4780.js","../../../../../chunks/4876.js","../../../../../chunks/4892.js","../../../../../chunks/4903.js","../../../../../chunks/4954.js","../../../../../chunks/499.js","../../../../../chunks/5055.js","../../../../../chunks/507.js","../../../../../chunks/5081.js","../../../../../chunks/5173.js","../../../../../chunks/524.js","../../../../../chunks/5258.js","../../../../../chunks/5260.js","../../../../../chunks/5335.js","../../../../../chunks/539.js","../../../../../chunks/5433.js","../../../../../chunks/5497.js","../../../../../chunks/5560.js","../../../../../chunks/5573.js","../../../../../chunks/5615.js","../../../../../chunks/5699.js","../../../../../chunks/5765.js","../../../../../chunks/5781.js","../../../../../chunks/5827.js","../../../../../chunks/6000.js","../../../../../chunks/6070.js","../../../../../chunks/6103.js","../../../../../chunks/620.js","../../../../../chunks/6244.js","../../../../../chunks/6252.js","../../../../../chunks/6328.js","../../../../../chunks/6353.js","../../../../../chunks/6403.js","../../../../../chunks/6427.js","../../../../../chunks/6496.js","../../../../../chunks/6551.js","../../../../../chunks/6561.js","../../../../../chunks/6565.js","../../../../../chunks/6588.js","../../../../../chunks/6589.js","../../../../../chunks/6703.js","../../../../../chunks/6734.js","../../../../../chunks/6763.js","../../../../../chunks/6844.js","../../../../../chunks/6849.js","../../../../../chunks/698.js","../../../../../chunks/7023.js","../../../../../chunks/7184.js","../../../../../chunks/7211.js","../../../../../chunks/7247.js","../../../../../chunks/737.js","../../../../../chunks/7382.js","../../../../../chunks/7469.js","../../../../../chunks/7616.js","../../../../../chunks/7642.js","../../../../../chunks/7716.js","../../../../../chunks/7774.js","../../../../../chunks/7819.js","../../../../../chunks/7828.js","../../../../../chunks/7901.js","../../../../../chunks/7914.js","../../../../../chunks/7965.js","../../../../../chunks/8037.js","../../../../../chunks/8062.js","../../../../../chunks/8171.js","../../../../../chunks/8255.js","../../../../../chunks/8372.js","../../../../../chunks/8416.js","../../../../../chunks/8432.js","../../../../../chunks/8468.js","../../../../../chunks/8469.js","../../../../../chunks/8520.js","../../../../../chunks/8624.js","../../../../../chunks/8658.js","../../../../../chunks/8666.js","../../../../../chunks/8708.js","../../../../../chunks/8823.js","../../../../../chunks/8853.js","../../../../../chunks/8895.js","../../../../../chunks/8920.js","../../../../../chunks/8988.js","../../../../../chunks/9124.js","../../../../../chunks/915.js","../../../../../chunks/9219.js","../../../../../chunks/9243.js","../../../../../chunks/9326.js","../../../../../chunks/9343.js","../../../../../chunks/9421.js","../../../../../chunks/9489.js","../../../../../chunks/9578.js","../../../../../chunks/9594.js","../../../../../chunks/9613.js","../../../../../chunks/965.js","../../../../../chunks/9710.js","../../../../../chunks/9713.js","../../../../../chunks/9755.js","../../../../../chunks/9850.js","../../../../../chunks/9899.js","../../../../../chunks/9994.js","../../../../../webpack-runtime.js","page_client-reference-manifest.js"]}