@hilbras/omnihilbras 2.9.5 → 2.9.7

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 (1076) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +16 -15
  3. package/app/.next-cli-build/build-manifest.json +3 -3
  4. package/app/.next-cli-build/prerender-manifest.json +23 -23
  5. package/app/.next-cli-build/react-loadable-manifest.json +1 -1
  6. package/app/.next-cli-build/routes-manifest.json +8 -0
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +2 -2
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +2 -2
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +1 -1
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  73. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +1 -1
  74. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  75. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  76. package/app/.next-cli-build/server/app/_global-error/page.js +2 -2
  77. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  78. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  79. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  80. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  81. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  82. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  83. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  84. package/app/.next-cli-build/server/app/_not-found/page.js +1 -1
  85. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  86. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  87. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  88. package/app/.next-cli-build/server/app/_not-found.rsc +7 -7
  89. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +7 -7
  90. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +7 -7
  91. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  92. package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  93. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  94. package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  95. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  97. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  98. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  99. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  100. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  101. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  102. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
  103. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
  104. package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js +1 -1
  105. package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js +1 -1
  107. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/auth/saml/start/route.js +2 -2
  109. package/app/.next-cli-build/server/app/api/auth/saml/start/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/auth/saml/test/route.js +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 +1 -1
  113. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +2 -2
  115. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  117. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +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 +1 -1
  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/codewhale-settings/route.js +1 -1
  125. package/app/.next-cli-build/server/app/api/cli-tools/codewhale-settings/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/cli-tools/codex-profiles/route.js +1 -1
  127. package/app/.next-cli-build/server/app/api/cli-tools/codex-profiles/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  129. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  130. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  131. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  132. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  133. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  134. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  135. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  136. package/app/.next-cli-build/server/app/api/cli-tools/crush-settings/route.js +1 -1
  137. package/app/.next-cli-build/server/app/api/cli-tools/crush-settings/route.js.nft.json +1 -1
  138. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  139. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +2 -2
  141. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js.nft.json +1 -1
  142. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  143. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/cli-tools/forge-settings/route.js +1 -1
  145. package/app/.next-cli-build/server/app/api/cli-tools/forge-settings/route.js.nft.json +1 -1
  146. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +1 -1
  147. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
  148. package/app/.next-cli-build/server/app/api/cli-tools/hermes-profiles/route.js +2 -2
  149. package/app/.next-cli-build/server/app/api/cli-tools/hermes-profiles/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  151. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  153. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  154. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +1 -1
  155. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  156. package/app/.next-cli-build/server/app/api/cli-tools/omp-settings/route.js +2 -2
  157. package/app/.next-cli-build/server/app/api/cli-tools/omp-settings/route.js.nft.json +1 -1
  158. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  159. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
  161. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js +2 -2
  163. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/cli-tools/smelt-settings/route.js +2 -2
  165. package/app/.next-cli-build/server/app/api/cli-tools/smelt-settings/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  167. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/combos/presets/route.js +1 -1
  169. package/app/.next-cli-build/server/app/api/combos/presets/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  171. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  172. package/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
  173. package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  175. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  177. package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  178. package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  179. package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  180. package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  181. package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  182. package/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  183. package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  184. package/app/.next-cli-build/server/app/api/health/route.js +1 -1
  185. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  186. package/app/.next-cli-build/server/app/api/init/route.js +1 -1
  187. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  189. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  190. package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  191. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  192. package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  193. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  195. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  196. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +1 -1
  197. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  199. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  201. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  202. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  203. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  204. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  205. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  206. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  207. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  208. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  209. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  210. package/app/.next-cli-build/server/app/api/models/chat/route.js +1 -1
  211. package/app/.next-cli-build/server/app/api/models/chat/route.js.nft.json +1 -1
  212. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  213. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  214. package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  215. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  216. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  217. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  218. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  219. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  220. package/app/.next-cli-build/server/app/api/models/test-batch/route.js +2 -2
  221. package/app/.next-cli-build/server/app/api/models/test-batch/route.js.nft.json +1 -1
  222. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  223. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  224. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  225. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  226. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +1 -1
  227. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  229. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  231. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  232. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js +1 -1
  233. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  234. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  235. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  236. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  237. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  238. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  239. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  240. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  241. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  242. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
  243. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  244. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  245. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  246. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  247. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  248. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js +1 -1
  249. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js.nft.json +1 -1
  250. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js +2 -2
  251. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/login/start/route.js +1 -1
  253. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/login/start/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/login/status/route.js +1 -1
  255. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/login/status/route.js.nft.json +1 -1
  256. package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js +2 -2
  257. package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js.nft.json +1 -1
  258. package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js +1 -1
  259. package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  261. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  262. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  263. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  265. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  266. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  267. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  268. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  269. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/providers/[id]/overrides/route.js +1 -1
  271. package/app/.next-cli-build/server/app/api/providers/[id]/overrides/route.js.nft.json +1 -1
  272. package/app/.next-cli-build/server/app/api/providers/[id]/refresh/route.js +1 -0
  273. package/app/.next-cli-build/server/app/api/providers/[id]/refresh/route.js.nft.json +1 -0
  274. package/app/.next-cli-build/server/app/api/providers/[id]/refresh/route_client-reference-manifest.js +1 -0
  275. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  276. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  277. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  278. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  279. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  280. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  281. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  282. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  283. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  284. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  285. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  286. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  287. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  288. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  289. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  290. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  291. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  292. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  293. package/app/.next-cli-build/server/app/api/providers/web-session/[id]/route.js +1 -1
  294. package/app/.next-cli-build/server/app/api/providers/web-session/[id]/route.js.nft.json +1 -1
  295. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  296. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  297. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  298. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  299. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  300. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  301. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  302. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  303. package/app/.next-cli-build/server/app/api/proxy-pools/netlify-deploy/route.js +2 -2
  304. package/app/.next-cli-build/server/app/api/proxy-pools/netlify-deploy/route.js.nft.json +1 -1
  305. package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  306. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  307. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +1 -1
  308. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  309. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
  310. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  311. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
  312. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  313. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js +2 -2
  314. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
  315. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
  316. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  317. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
  318. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  319. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
  320. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  321. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  322. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  323. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
  324. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  325. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  326. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  327. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  328. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  329. package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  330. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  331. package/app/.next-cli-build/server/app/api/settings/route.js +2 -2
  332. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  333. package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  334. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  335. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  336. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  337. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  338. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  339. package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  340. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  341. package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  342. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  343. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  344. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  345. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  346. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  347. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  348. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  349. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  350. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  351. package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  352. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  353. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  354. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  355. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  356. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  357. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  358. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  359. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  360. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  361. package/app/.next-cli-build/server/app/api/usage/[connectionId]/claude-reset/route.js +1 -1
  362. package/app/.next-cli-build/server/app/api/usage/[connectionId]/claude-reset/route.js.nft.json +1 -1
  363. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  364. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  365. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  366. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  367. package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  368. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  369. package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
  370. package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
  371. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  372. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  373. package/app/.next-cli-build/server/app/api/usage/rate-limit/route.js +1 -1
  374. package/app/.next-cli-build/server/app/api/usage/rate-limit/route.js.nft.json +1 -1
  375. package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  376. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  377. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  378. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  379. package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  380. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  381. package/app/.next-cli-build/server/app/api/usage/stream/route.js +1 -1
  382. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  383. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  384. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  385. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  386. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  387. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  388. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  389. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  390. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  391. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  392. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  393. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  394. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  395. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +3 -3
  396. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  397. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  398. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  399. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  400. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  401. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js +1 -1
  402. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js.nft.json +1 -1
  403. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  404. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  405. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  406. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  407. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  408. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  409. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  410. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  411. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  412. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  413. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  414. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  415. package/app/.next-cli-build/server/app/api/v1/systemone/route.js +1 -1
  416. package/app/.next-cli-build/server/app/api/v1/systemone/route.js.nft.json +1 -1
  417. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
  418. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
  419. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
  420. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
  421. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
  422. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
  423. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
  424. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
  425. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  426. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  427. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  428. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  429. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  430. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  431. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  432. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  433. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  434. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  435. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  436. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  437. package/app/.next-cli-build/server/app/callback/page.js +1 -1
  438. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  439. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  440. package/app/.next-cli-build/server/app/callback.html +1 -1
  441. package/app/.next-cli-build/server/app/callback.rsc +7 -7
  442. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +7 -7
  443. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  444. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +7 -7
  445. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  446. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +12 -12
  447. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +12 -12
  448. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +12 -12
  449. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  450. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  451. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +12 -12
  452. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +12 -12
  453. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +12 -12
  454. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  455. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  456. package/app/.next-cli-build/server/app/dashboard/combos.rsc +12 -12
  457. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +12 -12
  458. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +12 -12
  459. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  460. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  461. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +12 -12
  462. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +12 -12
  463. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +12 -12
  464. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  465. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  466. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +12 -12
  467. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +12 -12
  468. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +12 -12
  469. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  470. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  471. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +12 -12
  472. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +12 -12
  473. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +12 -12
  474. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  475. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  476. package/app/.next-cli-build/server/app/dashboard/profile.rsc +12 -12
  477. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +12 -12
  478. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +12 -12
  479. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  480. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  481. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +12 -12
  482. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +12 -12
  483. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +12 -12
  484. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  485. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  486. package/app/.next-cli-build/server/app/dashboard/providers.rsc +12 -12
  487. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +12 -12
  488. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +12 -12
  489. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  490. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  491. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +12 -12
  492. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +12 -12
  493. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +12 -12
  494. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  495. package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  496. package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +12 -12
  497. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +12 -12
  498. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +12 -12
  499. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
  500. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  501. package/app/.next-cli-build/server/app/dashboard/quota.rsc +13 -13
  502. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +13 -13
  503. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +13 -13
  504. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  505. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
  506. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  507. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  508. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  509. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +7 -7
  510. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +7 -7
  511. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  512. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +7 -7
  513. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  514. package/app/.next-cli-build/server/app/dashboard/skills.rsc +12 -12
  515. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +12 -12
  516. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +12 -12
  517. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
  518. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  519. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +12 -12
  520. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +12 -12
  521. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +12 -12
  522. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
  523. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  524. package/app/.next-cli-build/server/app/dashboard/translator.rsc +12 -12
  525. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +12 -12
  526. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +12 -12
  527. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  528. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  529. package/app/.next-cli-build/server/app/dashboard/usage.rsc +12 -12
  530. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +12 -12
  531. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +12 -12
  532. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  533. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  534. package/app/.next-cli-build/server/app/dashboard.rsc +12 -12
  535. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +12 -12
  536. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +12 -12
  537. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  538. package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
  539. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  540. package/app/.next-cli-build/server/app/index.html +1 -1
  541. package/app/.next-cli-build/server/app/index.rsc +7 -7
  542. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +7 -7
  543. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +7 -7
  544. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  545. package/app/.next-cli-build/server/app/landing/page.js +2 -2
  546. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  547. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  548. package/app/.next-cli-build/server/app/landing.html +1 -1
  549. package/app/.next-cli-build/server/app/landing.rsc +7 -7
  550. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +7 -7
  551. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  552. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +7 -7
  553. package/app/.next-cli-build/server/app/login/page.js +1 -1
  554. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  555. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  556. package/app/.next-cli-build/server/app/login.html +1 -1
  557. package/app/.next-cli-build/server/app/login.rsc +9 -9
  558. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +9 -9
  559. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  560. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +9 -9
  561. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  562. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  563. package/app/.next-cli-build/server/app/page.js +1 -1
  564. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  565. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  566. package/app/.next-cli-build/server/app-paths-manifest.json +16 -15
  567. package/app/.next-cli-build/server/chunks/1133.js +1 -1
  568. package/app/.next-cli-build/server/chunks/1220.js +3 -0
  569. package/app/.next-cli-build/server/chunks/1329.js +1 -1
  570. package/app/.next-cli-build/server/chunks/1772.js +1 -0
  571. package/app/.next-cli-build/server/chunks/24.js +1 -1
  572. package/app/.next-cli-build/server/chunks/2617.js +1 -1
  573. package/app/.next-cli-build/server/chunks/3943.js +1 -1
  574. package/app/.next-cli-build/server/chunks/412.js +1 -1
  575. package/app/.next-cli-build/server/chunks/4123.js +1 -1
  576. package/app/.next-cli-build/server/chunks/4125.js +1 -1
  577. package/app/.next-cli-build/server/chunks/4199.js +1 -1
  578. package/app/.next-cli-build/server/chunks/436.js +1 -1
  579. package/app/.next-cli-build/server/chunks/5615.js +1 -1
  580. package/app/.next-cli-build/server/chunks/5942.js +1 -0
  581. package/app/.next-cli-build/server/chunks/5961.js +2 -2
  582. package/app/.next-cli-build/server/chunks/6070.js +1 -1
  583. package/app/.next-cli-build/server/chunks/615.js +1 -1
  584. package/app/.next-cli-build/server/chunks/6500.js +1 -0
  585. package/app/.next-cli-build/server/chunks/6503.js +1 -1
  586. package/app/.next-cli-build/server/chunks/6723.js +1 -1
  587. package/app/.next-cli-build/server/chunks/7066.js +1 -1
  588. package/app/.next-cli-build/server/chunks/7073.js +1 -1
  589. package/app/.next-cli-build/server/chunks/7121.js +1 -1
  590. package/app/.next-cli-build/server/chunks/7211.js +1 -1
  591. package/app/.next-cli-build/server/chunks/7247.js +1 -1
  592. package/app/.next-cli-build/server/chunks/7431.js +2 -2
  593. package/app/.next-cli-build/server/chunks/7716.js +1 -1
  594. package/app/.next-cli-build/server/chunks/{5330.js → 7803.js} +5 -3
  595. package/app/.next-cli-build/server/chunks/7911.js +1 -1
  596. package/app/.next-cli-build/server/chunks/8064.js +14 -0
  597. package/app/.next-cli-build/server/chunks/820.js +1 -1
  598. package/app/.next-cli-build/server/chunks/8251.js +1 -1
  599. package/app/.next-cli-build/server/chunks/8287.js +1 -1
  600. package/app/.next-cli-build/server/chunks/8326.js +1 -0
  601. package/app/.next-cli-build/server/chunks/8401.js +1 -1
  602. package/app/.next-cli-build/server/chunks/8402.js +1 -1
  603. package/app/.next-cli-build/server/chunks/8525.js +1 -1
  604. package/app/.next-cli-build/server/chunks/8895.js +4 -4
  605. package/app/.next-cli-build/server/chunks/8910.js +1 -1
  606. package/app/.next-cli-build/server/chunks/{8499.js → 8932.js} +3 -3
  607. package/app/.next-cli-build/server/chunks/9300.js +1 -0
  608. package/app/.next-cli-build/server/chunks/9696.js +7 -0
  609. package/app/.next-cli-build/server/chunks/9771.js +1 -0
  610. package/app/.next-cli-build/server/instrumentation.js +1 -1
  611. package/app/.next-cli-build/server/instrumentation.js.nft.json +1 -1
  612. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  613. package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
  614. package/app/.next-cli-build/server/middleware.js.nft.json +1 -1
  615. package/app/.next-cli-build/server/pages/404.html +1 -1
  616. package/app/.next-cli-build/server/pages/500.html +1 -1
  617. package/app/.next-cli-build/static/chunks/2723-8f1ccbe51396e593.js +1 -0
  618. package/app/.next-cli-build/static/chunks/{5497-ff9981be1db3d2b6.js → 5497-df32bda6e3c66c2a.js} +2 -2
  619. package/app/.next-cli-build/static/chunks/6535-297e67715d4abb85.js +1 -0
  620. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/{page-be58ffbf710a5dec.js → page-87b0b2766b21ede6.js} +1 -1
  621. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/{page-2ee3f149ace63801.js → page-a0ef255d83660350.js} +1 -1
  622. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-033b10da013937e4.js → page-d5de86da01fac9bd.js} +1 -1
  623. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/{page-90317ba3e66b73c8.js → page-14edc70fcece9047.js} +1 -1
  624. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/{page-4773b0af283b77f7.js → page-70c28fbe58e17b0d.js} +1 -1
  625. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-c229336f166fc37b.js +1 -0
  626. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/{error-abf20f892d461b85.js → error-94a0159f99210870.js} +1 -1
  627. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-4431f9b1cc053b18.js → page-5fdea9fd546e0063.js} +1 -1
  628. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/{page-509dda0d0869b182.js → page-d7c1a50fa922ca83.js} +1 -1
  629. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-40f87ec4dfb87552.js → page-046a406b20197530.js} +1 -1
  630. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/{page-a4ab01f328185628.js → page-b50499e48b6a099c.js} +1 -1
  631. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-268b6a5d47d71042.js → page-3bba8935dd92bee4.js} +1 -1
  632. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-ca2960067152743b.js +1 -0
  633. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/{page-7b0e605f98432f1c.js → page-e6c7197f9c81efc3.js} +1 -1
  634. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-9504fe975ef84185.js → page-a1bacf350c4ae077.js} +5 -5
  635. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-4284719a1858706e.js → page-304a66b044fd4ff5.js} +1 -1
  636. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/{page-9c31829dd643cc3e.js → page-e69cdb11bcd71898.js} +1 -1
  637. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-f4cd8f5657152167.js → page-9f64fe08cd8dac8b.js} +1 -1
  638. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/{page-fbd06481ffdbb573.js → page-62e09cbc67d2d4f5.js} +1 -1
  639. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/{page-76c864ae857eec68.js → page-1cc460b62cf32862.js} +1 -1
  640. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/{page-6d6e4ef9ef854866.js → page-c53f4e20cf7b3120.js} +1 -1
  641. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/{page-277d1751a4a9a74b.js → page-541bcf5af0d03fb1.js} +1 -1
  642. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-7f602deed988a26d.js → page-5fab622f98217611.js} +1 -1
  643. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/{page-219ebab18ab5b82b.js → page-ae08604ee21ac8cf.js} +1 -1
  644. package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-c10319f075f1df9e.js → layout-af385a4b868c2a9d.js} +1 -1
  645. package/app/.next-cli-build/static/chunks/app/_global-error/{page-706c2ea1969b3c65.js → page-d2a5c6f6bbaeade2.js} +1 -1
  646. package/app/.next-cli-build/static/chunks/app/api/auth/login/{route-706c2ea1969b3c65.js → route-d2a5c6f6bbaeade2.js} +1 -1
  647. package/app/.next-cli-build/static/chunks/app/api/auth/logout/{route-706c2ea1969b3c65.js → route-d2a5c6f6bbaeade2.js} +1 -1
  648. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/{route-706c2ea1969b3c65.js → route-d2a5c6f6bbaeade2.js} +1 -1
  649. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-d2a5c6f6bbaeade2.js +1 -0
  650. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-d2a5c6f6bbaeade2.js +1 -0
  651. package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-d2a5c6f6bbaeade2.js +1 -0
  652. package/app/.next-cli-build/static/chunks/app/api/auth/saml/acs/route-d2a5c6f6bbaeade2.js +1 -0
  653. package/app/.next-cli-build/static/chunks/app/api/auth/saml/metadata/route-d2a5c6f6bbaeade2.js +1 -0
  654. package/app/.next-cli-build/static/chunks/app/api/auth/saml/start/route-d2a5c6f6bbaeade2.js +1 -0
  655. package/app/.next-cli-build/static/chunks/app/api/auth/saml/test/route-d2a5c6f6bbaeade2.js +1 -0
  656. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-d2a5c6f6bbaeade2.js +1 -0
  657. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-d2a5c6f6bbaeade2.js +1 -0
  658. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-d2a5c6f6bbaeade2.js +1 -0
  659. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-d2a5c6f6bbaeade2.js +1 -0
  660. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-d2a5c6f6bbaeade2.js +1 -0
  661. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-d2a5c6f6bbaeade2.js +1 -0
  662. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codewhale-settings/route-d2a5c6f6bbaeade2.js +1 -0
  663. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-profiles/route-d2a5c6f6bbaeade2.js +1 -0
  664. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-d2a5c6f6bbaeade2.js +1 -0
  665. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-d2a5c6f6bbaeade2.js +1 -0
  666. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-d2a5c6f6bbaeade2.js +1 -0
  667. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-d2a5c6f6bbaeade2.js +1 -0
  668. package/app/.next-cli-build/static/chunks/app/api/cli-tools/crush-settings/route-d2a5c6f6bbaeade2.js +1 -0
  669. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-d2a5c6f6bbaeade2.js +1 -0
  670. package/app/.next-cli-build/static/chunks/app/api/cli-tools/devin-settings/route-d2a5c6f6bbaeade2.js +1 -0
  671. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-d2a5c6f6bbaeade2.js +1 -0
  672. package/app/.next-cli-build/static/chunks/app/api/cli-tools/forge-settings/route-d2a5c6f6bbaeade2.js +1 -0
  673. package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-d2a5c6f6bbaeade2.js +1 -0
  674. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-profiles/route-d2a5c6f6bbaeade2.js +1 -0
  675. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-d2a5c6f6bbaeade2.js +1 -0
  676. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-d2a5c6f6bbaeade2.js +1 -0
  677. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-d2a5c6f6bbaeade2.js +1 -0
  678. package/app/.next-cli-build/static/chunks/app/api/cli-tools/omp-settings/route-d2a5c6f6bbaeade2.js +1 -0
  679. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-d2a5c6f6bbaeade2.js +1 -0
  680. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-d2a5c6f6bbaeade2.js +1 -0
  681. package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-d2a5c6f6bbaeade2.js +1 -0
  682. package/app/.next-cli-build/static/chunks/app/api/cli-tools/smelt-settings/route-d2a5c6f6bbaeade2.js +1 -0
  683. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-d2a5c6f6bbaeade2.js +1 -0
  684. package/app/.next-cli-build/static/chunks/app/api/combos/presets/route-d2a5c6f6bbaeade2.js +1 -0
  685. package/app/.next-cli-build/static/chunks/app/api/combos/route-d2a5c6f6bbaeade2.js +1 -0
  686. package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-d2a5c6f6bbaeade2.js +1 -0
  687. package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-d2a5c6f6bbaeade2.js +1 -0
  688. package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-d2a5c6f6bbaeade2.js +1 -0
  689. package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-d2a5c6f6bbaeade2.js +1 -0
  690. package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-d2a5c6f6bbaeade2.js +1 -0
  691. package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-d2a5c6f6bbaeade2.js +1 -0
  692. package/app/.next-cli-build/static/chunks/app/api/health/route-d2a5c6f6bbaeade2.js +1 -0
  693. package/app/.next-cli-build/static/chunks/app/api/init/route-d2a5c6f6bbaeade2.js +1 -0
  694. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-d2a5c6f6bbaeade2.js +1 -0
  695. package/app/.next-cli-build/static/chunks/app/api/keys/route-d2a5c6f6bbaeade2.js +1 -0
  696. package/app/.next-cli-build/static/chunks/app/api/locale/route-d2a5c6f6bbaeade2.js +1 -0
  697. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-d2a5c6f6bbaeade2.js +1 -0
  698. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-d2a5c6f6bbaeade2.js +1 -0
  699. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-d2a5c6f6bbaeade2.js +1 -0
  700. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-d2a5c6f6bbaeade2.js +1 -0
  701. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-d2a5c6f6bbaeade2.js +1 -0
  702. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-d2a5c6f6bbaeade2.js +1 -0
  703. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-d2a5c6f6bbaeade2.js +1 -0
  704. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-d2a5c6f6bbaeade2.js +1 -0
  705. package/app/.next-cli-build/static/chunks/app/api/models/chat/route-d2a5c6f6bbaeade2.js +1 -0
  706. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-d2a5c6f6bbaeade2.js +1 -0
  707. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-d2a5c6f6bbaeade2.js +1 -0
  708. package/app/.next-cli-build/static/chunks/app/api/models/route-d2a5c6f6bbaeade2.js +1 -0
  709. package/app/.next-cli-build/static/chunks/app/api/models/test/route-d2a5c6f6bbaeade2.js +1 -0
  710. package/app/.next-cli-build/static/chunks/app/api/models/test-batch/route-d2a5c6f6bbaeade2.js +1 -0
  711. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-d2a5c6f6bbaeade2.js +1 -0
  712. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-d2a5c6f6bbaeade2.js +1 -0
  713. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-d2a5c6f6bbaeade2.js +1 -0
  714. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-d2a5c6f6bbaeade2.js +1 -0
  715. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-d2a5c6f6bbaeade2.js +1 -0
  716. package/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-d2a5c6f6bbaeade2.js +1 -0
  717. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-d2a5c6f6bbaeade2.js +1 -0
  718. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-d2a5c6f6bbaeade2.js +1 -0
  719. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-d2a5c6f6bbaeade2.js +1 -0
  720. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-d2a5c6f6bbaeade2.js +1 -0
  721. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-d2a5c6f6bbaeade2.js +1 -0
  722. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-d2a5c6f6bbaeade2.js +1 -0
  723. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-d2a5c6f6bbaeade2.js +1 -0
  724. package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/api-key/route-d2a5c6f6bbaeade2.js +1 -0
  725. package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/auto-import/route-d2a5c6f6bbaeade2.js +1 -0
  726. package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/login/start/route-d2a5c6f6bbaeade2.js +1 -0
  727. package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/login/status/route-d2a5c6f6bbaeade2.js +1 -0
  728. package/app/.next-cli-build/static/chunks/app/api/oauth/zed/auto-import/route-d2a5c6f6bbaeade2.js +1 -0
  729. package/app/.next-cli-build/static/chunks/app/api/oauth/zed/import/route-d2a5c6f6bbaeade2.js +1 -0
  730. package/app/.next-cli-build/static/chunks/app/api/pricing/route-d2a5c6f6bbaeade2.js +1 -0
  731. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-d2a5c6f6bbaeade2.js +1 -0
  732. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-d2a5c6f6bbaeade2.js +1 -0
  733. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-d2a5c6f6bbaeade2.js +1 -0
  734. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-d2a5c6f6bbaeade2.js +1 -0
  735. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/overrides/route-d2a5c6f6bbaeade2.js +1 -0
  736. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/refresh/route-d2a5c6f6bbaeade2.js +1 -0
  737. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-d2a5c6f6bbaeade2.js +1 -0
  738. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-d2a5c6f6bbaeade2.js +1 -0
  739. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-d2a5c6f6bbaeade2.js +1 -0
  740. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-d2a5c6f6bbaeade2.js +1 -0
  741. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-d2a5c6f6bbaeade2.js +1 -0
  742. package/app/.next-cli-build/static/chunks/app/api/providers/route-d2a5c6f6bbaeade2.js +1 -0
  743. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-d2a5c6f6bbaeade2.js +1 -0
  744. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-d2a5c6f6bbaeade2.js +1 -0
  745. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-d2a5c6f6bbaeade2.js +1 -0
  746. package/app/.next-cli-build/static/chunks/app/api/providers/web-session/[id]/route-d2a5c6f6bbaeade2.js +1 -0
  747. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-d2a5c6f6bbaeade2.js +1 -0
  748. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-d2a5c6f6bbaeade2.js +1 -0
  749. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-d2a5c6f6bbaeade2.js +1 -0
  750. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-d2a5c6f6bbaeade2.js +1 -0
  751. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/netlify-deploy/route-d2a5c6f6bbaeade2.js +1 -0
  752. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-d2a5c6f6bbaeade2.js +1 -0
  753. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-d2a5c6f6bbaeade2.js +1 -0
  754. package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-d2a5c6f6bbaeade2.js +1 -0
  755. package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-d2a5c6f6bbaeade2.js +1 -0
  756. package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-d2a5c6f6bbaeade2.js +1 -0
  757. package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-d2a5c6f6bbaeade2.js +1 -0
  758. package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-d2a5c6f6bbaeade2.js +1 -0
  759. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-d2a5c6f6bbaeade2.js +1 -0
  760. package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-d2a5c6f6bbaeade2.js +1 -0
  761. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-d2a5c6f6bbaeade2.js +1 -0
  762. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-d2a5c6f6bbaeade2.js +1 -0
  763. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-d2a5c6f6bbaeade2.js +1 -0
  764. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-d2a5c6f6bbaeade2.js +1 -0
  765. package/app/.next-cli-build/static/chunks/app/api/settings/route-d2a5c6f6bbaeade2.js +1 -0
  766. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-d2a5c6f6bbaeade2.js +1 -0
  767. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-d2a5c6f6bbaeade2.js +1 -0
  768. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-d2a5c6f6bbaeade2.js +1 -0
  769. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-d2a5c6f6bbaeade2.js +1 -0
  770. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-d2a5c6f6bbaeade2.js +1 -0
  771. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-d2a5c6f6bbaeade2.js +1 -0
  772. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-d2a5c6f6bbaeade2.js +1 -0
  773. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-d2a5c6f6bbaeade2.js +1 -0
  774. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-d2a5c6f6bbaeade2.js +1 -0
  775. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-d2a5c6f6bbaeade2.js +1 -0
  776. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-d2a5c6f6bbaeade2.js +1 -0
  777. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-d2a5c6f6bbaeade2.js +1 -0
  778. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-d2a5c6f6bbaeade2.js +1 -0
  779. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-d2a5c6f6bbaeade2.js +1 -0
  780. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/claude-reset/route-d2a5c6f6bbaeade2.js +1 -0
  781. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-d2a5c6f6bbaeade2.js +1 -0
  782. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-d2a5c6f6bbaeade2.js +1 -0
  783. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-d2a5c6f6bbaeade2.js +1 -0
  784. package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-d2a5c6f6bbaeade2.js +1 -0
  785. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-d2a5c6f6bbaeade2.js +1 -0
  786. package/app/.next-cli-build/static/chunks/app/api/usage/rate-limit/route-d2a5c6f6bbaeade2.js +1 -0
  787. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-d2a5c6f6bbaeade2.js +1 -0
  788. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-d2a5c6f6bbaeade2.js +1 -0
  789. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-d2a5c6f6bbaeade2.js +1 -0
  790. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-d2a5c6f6bbaeade2.js +1 -0
  791. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-d2a5c6f6bbaeade2.js +1 -0
  792. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-d2a5c6f6bbaeade2.js +1 -0
  793. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-d2a5c6f6bbaeade2.js +1 -0
  794. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-d2a5c6f6bbaeade2.js +1 -0
  795. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-d2a5c6f6bbaeade2.js +1 -0
  796. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-d2a5c6f6bbaeade2.js +1 -0
  797. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-d2a5c6f6bbaeade2.js +1 -0
  798. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-d2a5c6f6bbaeade2.js +1 -0
  799. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-d2a5c6f6bbaeade2.js +1 -0
  800. package/app/.next-cli-build/static/chunks/app/api/v1/models/[...model]/route-d2a5c6f6bbaeade2.js +1 -0
  801. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-d2a5c6f6bbaeade2.js +1 -0
  802. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-d2a5c6f6bbaeade2.js +1 -0
  803. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-d2a5c6f6bbaeade2.js +1 -0
  804. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-d2a5c6f6bbaeade2.js +1 -0
  805. package/app/.next-cli-build/static/chunks/app/api/v1/route-d2a5c6f6bbaeade2.js +1 -0
  806. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-d2a5c6f6bbaeade2.js +1 -0
  807. package/app/.next-cli-build/static/chunks/app/api/v1/systemone/route-d2a5c6f6bbaeade2.js +1 -0
  808. package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-d2a5c6f6bbaeade2.js +1 -0
  809. package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-d2a5c6f6bbaeade2.js +1 -0
  810. package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-d2a5c6f6bbaeade2.js +1 -0
  811. package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-d2a5c6f6bbaeade2.js +1 -0
  812. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-d2a5c6f6bbaeade2.js +1 -0
  813. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-d2a5c6f6bbaeade2.js +1 -0
  814. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-d2a5c6f6bbaeade2.js +1 -0
  815. package/app/.next-cli-build/static/chunks/app/api/version/route-d2a5c6f6bbaeade2.js +1 -0
  816. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-d2a5c6f6bbaeade2.js +1 -0
  817. package/app/.next-cli-build/static/chunks/app/api/version/update/route-d2a5c6f6bbaeade2.js +1 -0
  818. package/app/.next-cli-build/static/chunks/app/login/{page-5b2e90e19afaec82.js → page-1e43af53f6214671.js} +1 -1
  819. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-d2a5c6f6bbaeade2.js +1 -0
  820. package/app/.next-cli-build/static/chunks/app/page-d2a5c6f6bbaeade2.js +1 -0
  821. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-d2a5c6f6bbaeade2.js +1 -0
  822. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-d2a5c6f6bbaeade2.js +1 -0
  823. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-d2a5c6f6bbaeade2.js +1 -0
  824. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-d2a5c6f6bbaeade2.js +1 -0
  825. package/app/.next-cli-build/static/chunks/{webpack-075fa8a8c2879e61.js → webpack-cec594678b7a1aaa.js} +1 -1
  826. package/app/.next-cli-build/static/css/73729572c2967c28.css +1 -0
  827. package/app/node_modules/node-forge/LICENSE +331 -0
  828. package/app/node_modules/node-forge/README.md +2071 -0
  829. package/app/node_modules/node-forge/dist/forge.all.min.js +2 -0
  830. package/app/node_modules/node-forge/dist/forge.all.min.js.map +1 -0
  831. package/app/node_modules/node-forge/dist/forge.min.js +2 -0
  832. package/app/node_modules/node-forge/dist/forge.min.js.map +1 -0
  833. package/app/node_modules/node-forge/dist/prime.worker.min.js +2 -0
  834. package/app/node_modules/node-forge/dist/prime.worker.min.js.map +1 -0
  835. package/app/node_modules/node-forge/flash/swf/SocketPool.swf +0 -0
  836. package/app/node_modules/node-forge/lib/aes.js +1091 -0
  837. package/app/node_modules/node-forge/lib/aesCipherSuites.js +282 -0
  838. package/app/node_modules/node-forge/lib/asn1-validator.js +91 -0
  839. package/app/node_modules/node-forge/lib/asn1.js +1520 -0
  840. package/app/node_modules/node-forge/lib/baseN.js +186 -0
  841. package/app/node_modules/node-forge/lib/cipher.js +230 -0
  842. package/app/node_modules/node-forge/lib/cipherModes.js +999 -0
  843. package/app/node_modules/node-forge/lib/des.js +496 -0
  844. package/app/node_modules/node-forge/lib/ed25519.js +1091 -0
  845. package/app/node_modules/node-forge/lib/forge.js +13 -0
  846. package/app/node_modules/node-forge/lib/form.js +149 -0
  847. package/app/node_modules/node-forge/lib/hmac.js +146 -0
  848. package/app/node_modules/node-forge/lib/http.js +1346 -0
  849. package/app/node_modules/node-forge/lib/index.all.js +16 -0
  850. package/app/node_modules/node-forge/lib/index.js +33 -0
  851. package/app/node_modules/node-forge/lib/jsbn.js +1294 -0
  852. package/app/node_modules/node-forge/lib/kem.js +168 -0
  853. package/app/node_modules/node-forge/lib/log.js +319 -0
  854. package/app/node_modules/node-forge/lib/md.all.js +13 -0
  855. package/app/node_modules/node-forge/lib/md.js +11 -0
  856. package/app/node_modules/node-forge/lib/md5.js +289 -0
  857. package/app/node_modules/node-forge/lib/mgf.js +12 -0
  858. package/app/node_modules/node-forge/lib/mgf1.js +57 -0
  859. package/app/node_modules/node-forge/lib/oids.js +180 -0
  860. package/app/node_modules/node-forge/lib/pbe.js +1023 -0
  861. package/app/node_modules/node-forge/lib/pbkdf2.js +211 -0
  862. package/app/node_modules/node-forge/lib/pem.js +237 -0
  863. package/app/node_modules/node-forge/lib/pkcs1.js +276 -0
  864. package/app/node_modules/node-forge/lib/pkcs12.js +1078 -0
  865. package/app/node_modules/node-forge/lib/pkcs7.js +1260 -0
  866. package/app/node_modules/node-forge/lib/pkcs7asn1.js +410 -0
  867. package/app/node_modules/node-forge/lib/pki.js +102 -0
  868. package/app/node_modules/node-forge/lib/prime.js +297 -0
  869. package/app/node_modules/node-forge/lib/prime.worker.js +168 -0
  870. package/app/node_modules/node-forge/lib/prng.js +419 -0
  871. package/app/node_modules/node-forge/lib/pss.js +241 -0
  872. package/app/node_modules/node-forge/lib/random.js +191 -0
  873. package/app/node_modules/node-forge/lib/rc2.js +410 -0
  874. package/app/node_modules/node-forge/lib/rsa.js +1968 -0
  875. package/app/node_modules/node-forge/lib/sha1.js +319 -0
  876. package/app/node_modules/node-forge/lib/sha256.js +327 -0
  877. package/app/node_modules/node-forge/lib/sha512.js +561 -0
  878. package/app/node_modules/node-forge/lib/socket.js +287 -0
  879. package/app/node_modules/node-forge/lib/ssh.js +236 -0
  880. package/app/node_modules/node-forge/lib/tls.js +4282 -0
  881. package/app/node_modules/node-forge/lib/tlssocket.js +249 -0
  882. package/app/node_modules/node-forge/lib/util.js +2652 -0
  883. package/app/node_modules/node-forge/lib/x509.js +3251 -0
  884. package/app/node_modules/node-forge/lib/xhr.js +738 -0
  885. package/app/node_modules/node-forge/package.json +123 -0
  886. package/app/package.json +6 -3
  887. package/app/src/mitm/server.js +27 -27
  888. package/hooks/postinstall.js +22 -0
  889. package/package.json +3 -2
  890. package/app/.next-cli-build/server/chunks/1375.js +0 -1
  891. package/app/.next-cli-build/server/chunks/2066.js +0 -1
  892. package/app/.next-cli-build/server/chunks/2712.js +0 -3
  893. package/app/.next-cli-build/server/chunks/2881.js +0 -1
  894. package/app/.next-cli-build/server/chunks/6908.js +0 -10
  895. package/app/.next-cli-build/server/chunks/7914.js +0 -1
  896. package/app/.next-cli-build/static/chunks/246-0bbd2c1424911b5c.js +0 -1
  897. package/app/.next-cli-build/static/chunks/2723-d221ebfdd8e24af9.js +0 -1
  898. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-22bd9a3196952cf5.js +0 -1
  899. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-631c216c13c7bd3d.js +0 -1
  900. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-706c2ea1969b3c65.js +0 -1
  901. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-706c2ea1969b3c65.js +0 -1
  902. package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-706c2ea1969b3c65.js +0 -1
  903. package/app/.next-cli-build/static/chunks/app/api/auth/saml/acs/route-706c2ea1969b3c65.js +0 -1
  904. package/app/.next-cli-build/static/chunks/app/api/auth/saml/metadata/route-706c2ea1969b3c65.js +0 -1
  905. package/app/.next-cli-build/static/chunks/app/api/auth/saml/start/route-706c2ea1969b3c65.js +0 -1
  906. package/app/.next-cli-build/static/chunks/app/api/auth/saml/test/route-706c2ea1969b3c65.js +0 -1
  907. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-706c2ea1969b3c65.js +0 -1
  908. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-706c2ea1969b3c65.js +0 -1
  909. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-706c2ea1969b3c65.js +0 -1
  910. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-706c2ea1969b3c65.js +0 -1
  911. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-706c2ea1969b3c65.js +0 -1
  912. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-706c2ea1969b3c65.js +0 -1
  913. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codewhale-settings/route-706c2ea1969b3c65.js +0 -1
  914. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-profiles/route-706c2ea1969b3c65.js +0 -1
  915. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-706c2ea1969b3c65.js +0 -1
  916. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-706c2ea1969b3c65.js +0 -1
  917. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-706c2ea1969b3c65.js +0 -1
  918. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-706c2ea1969b3c65.js +0 -1
  919. package/app/.next-cli-build/static/chunks/app/api/cli-tools/crush-settings/route-706c2ea1969b3c65.js +0 -1
  920. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-706c2ea1969b3c65.js +0 -1
  921. package/app/.next-cli-build/static/chunks/app/api/cli-tools/devin-settings/route-706c2ea1969b3c65.js +0 -1
  922. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-706c2ea1969b3c65.js +0 -1
  923. package/app/.next-cli-build/static/chunks/app/api/cli-tools/forge-settings/route-706c2ea1969b3c65.js +0 -1
  924. package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-706c2ea1969b3c65.js +0 -1
  925. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-profiles/route-706c2ea1969b3c65.js +0 -1
  926. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-706c2ea1969b3c65.js +0 -1
  927. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-706c2ea1969b3c65.js +0 -1
  928. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-706c2ea1969b3c65.js +0 -1
  929. package/app/.next-cli-build/static/chunks/app/api/cli-tools/omp-settings/route-706c2ea1969b3c65.js +0 -1
  930. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-706c2ea1969b3c65.js +0 -1
  931. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-706c2ea1969b3c65.js +0 -1
  932. package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-706c2ea1969b3c65.js +0 -1
  933. package/app/.next-cli-build/static/chunks/app/api/cli-tools/smelt-settings/route-706c2ea1969b3c65.js +0 -1
  934. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-706c2ea1969b3c65.js +0 -1
  935. package/app/.next-cli-build/static/chunks/app/api/combos/presets/route-706c2ea1969b3c65.js +0 -1
  936. package/app/.next-cli-build/static/chunks/app/api/combos/route-706c2ea1969b3c65.js +0 -1
  937. package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-706c2ea1969b3c65.js +0 -1
  938. package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-706c2ea1969b3c65.js +0 -1
  939. package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-706c2ea1969b3c65.js +0 -1
  940. package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-706c2ea1969b3c65.js +0 -1
  941. package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-706c2ea1969b3c65.js +0 -1
  942. package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-706c2ea1969b3c65.js +0 -1
  943. package/app/.next-cli-build/static/chunks/app/api/health/route-706c2ea1969b3c65.js +0 -1
  944. package/app/.next-cli-build/static/chunks/app/api/init/route-706c2ea1969b3c65.js +0 -1
  945. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-706c2ea1969b3c65.js +0 -1
  946. package/app/.next-cli-build/static/chunks/app/api/keys/route-706c2ea1969b3c65.js +0 -1
  947. package/app/.next-cli-build/static/chunks/app/api/locale/route-706c2ea1969b3c65.js +0 -1
  948. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-706c2ea1969b3c65.js +0 -1
  949. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-706c2ea1969b3c65.js +0 -1
  950. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-706c2ea1969b3c65.js +0 -1
  951. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-706c2ea1969b3c65.js +0 -1
  952. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-706c2ea1969b3c65.js +0 -1
  953. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-706c2ea1969b3c65.js +0 -1
  954. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-706c2ea1969b3c65.js +0 -1
  955. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-706c2ea1969b3c65.js +0 -1
  956. package/app/.next-cli-build/static/chunks/app/api/models/chat/route-706c2ea1969b3c65.js +0 -1
  957. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-706c2ea1969b3c65.js +0 -1
  958. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-706c2ea1969b3c65.js +0 -1
  959. package/app/.next-cli-build/static/chunks/app/api/models/route-706c2ea1969b3c65.js +0 -1
  960. package/app/.next-cli-build/static/chunks/app/api/models/test/route-706c2ea1969b3c65.js +0 -1
  961. package/app/.next-cli-build/static/chunks/app/api/models/test-batch/route-706c2ea1969b3c65.js +0 -1
  962. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-706c2ea1969b3c65.js +0 -1
  963. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-706c2ea1969b3c65.js +0 -1
  964. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-706c2ea1969b3c65.js +0 -1
  965. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-706c2ea1969b3c65.js +0 -1
  966. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-706c2ea1969b3c65.js +0 -1
  967. package/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-706c2ea1969b3c65.js +0 -1
  968. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-706c2ea1969b3c65.js +0 -1
  969. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-706c2ea1969b3c65.js +0 -1
  970. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-706c2ea1969b3c65.js +0 -1
  971. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-706c2ea1969b3c65.js +0 -1
  972. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-706c2ea1969b3c65.js +0 -1
  973. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-706c2ea1969b3c65.js +0 -1
  974. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-706c2ea1969b3c65.js +0 -1
  975. package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/api-key/route-706c2ea1969b3c65.js +0 -1
  976. package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/auto-import/route-706c2ea1969b3c65.js +0 -1
  977. package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/login/start/route-706c2ea1969b3c65.js +0 -1
  978. package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/login/status/route-706c2ea1969b3c65.js +0 -1
  979. package/app/.next-cli-build/static/chunks/app/api/oauth/zed/auto-import/route-706c2ea1969b3c65.js +0 -1
  980. package/app/.next-cli-build/static/chunks/app/api/oauth/zed/import/route-706c2ea1969b3c65.js +0 -1
  981. package/app/.next-cli-build/static/chunks/app/api/pricing/route-706c2ea1969b3c65.js +0 -1
  982. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-706c2ea1969b3c65.js +0 -1
  983. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-706c2ea1969b3c65.js +0 -1
  984. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-706c2ea1969b3c65.js +0 -1
  985. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-706c2ea1969b3c65.js +0 -1
  986. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/overrides/route-706c2ea1969b3c65.js +0 -1
  987. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-706c2ea1969b3c65.js +0 -1
  988. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-706c2ea1969b3c65.js +0 -1
  989. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-706c2ea1969b3c65.js +0 -1
  990. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-706c2ea1969b3c65.js +0 -1
  991. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-706c2ea1969b3c65.js +0 -1
  992. package/app/.next-cli-build/static/chunks/app/api/providers/route-706c2ea1969b3c65.js +0 -1
  993. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-706c2ea1969b3c65.js +0 -1
  994. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-706c2ea1969b3c65.js +0 -1
  995. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-706c2ea1969b3c65.js +0 -1
  996. package/app/.next-cli-build/static/chunks/app/api/providers/web-session/[id]/route-706c2ea1969b3c65.js +0 -1
  997. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-706c2ea1969b3c65.js +0 -1
  998. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-706c2ea1969b3c65.js +0 -1
  999. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-706c2ea1969b3c65.js +0 -1
  1000. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-706c2ea1969b3c65.js +0 -1
  1001. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/netlify-deploy/route-706c2ea1969b3c65.js +0 -1
  1002. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-706c2ea1969b3c65.js +0 -1
  1003. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-706c2ea1969b3c65.js +0 -1
  1004. package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-706c2ea1969b3c65.js +0 -1
  1005. package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-706c2ea1969b3c65.js +0 -1
  1006. package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-706c2ea1969b3c65.js +0 -1
  1007. package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-706c2ea1969b3c65.js +0 -1
  1008. package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-706c2ea1969b3c65.js +0 -1
  1009. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-706c2ea1969b3c65.js +0 -1
  1010. package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-706c2ea1969b3c65.js +0 -1
  1011. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-706c2ea1969b3c65.js +0 -1
  1012. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-706c2ea1969b3c65.js +0 -1
  1013. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-706c2ea1969b3c65.js +0 -1
  1014. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-706c2ea1969b3c65.js +0 -1
  1015. package/app/.next-cli-build/static/chunks/app/api/settings/route-706c2ea1969b3c65.js +0 -1
  1016. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-706c2ea1969b3c65.js +0 -1
  1017. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-706c2ea1969b3c65.js +0 -1
  1018. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-706c2ea1969b3c65.js +0 -1
  1019. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-706c2ea1969b3c65.js +0 -1
  1020. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-706c2ea1969b3c65.js +0 -1
  1021. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-706c2ea1969b3c65.js +0 -1
  1022. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-706c2ea1969b3c65.js +0 -1
  1023. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-706c2ea1969b3c65.js +0 -1
  1024. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-706c2ea1969b3c65.js +0 -1
  1025. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-706c2ea1969b3c65.js +0 -1
  1026. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-706c2ea1969b3c65.js +0 -1
  1027. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-706c2ea1969b3c65.js +0 -1
  1028. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-706c2ea1969b3c65.js +0 -1
  1029. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-706c2ea1969b3c65.js +0 -1
  1030. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/claude-reset/route-706c2ea1969b3c65.js +0 -1
  1031. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-706c2ea1969b3c65.js +0 -1
  1032. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-706c2ea1969b3c65.js +0 -1
  1033. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-706c2ea1969b3c65.js +0 -1
  1034. package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-706c2ea1969b3c65.js +0 -1
  1035. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-706c2ea1969b3c65.js +0 -1
  1036. package/app/.next-cli-build/static/chunks/app/api/usage/rate-limit/route-706c2ea1969b3c65.js +0 -1
  1037. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-706c2ea1969b3c65.js +0 -1
  1038. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-706c2ea1969b3c65.js +0 -1
  1039. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-706c2ea1969b3c65.js +0 -1
  1040. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-706c2ea1969b3c65.js +0 -1
  1041. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-706c2ea1969b3c65.js +0 -1
  1042. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-706c2ea1969b3c65.js +0 -1
  1043. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-706c2ea1969b3c65.js +0 -1
  1044. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-706c2ea1969b3c65.js +0 -1
  1045. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-706c2ea1969b3c65.js +0 -1
  1046. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-706c2ea1969b3c65.js +0 -1
  1047. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-706c2ea1969b3c65.js +0 -1
  1048. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-706c2ea1969b3c65.js +0 -1
  1049. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-706c2ea1969b3c65.js +0 -1
  1050. package/app/.next-cli-build/static/chunks/app/api/v1/models/[...model]/route-706c2ea1969b3c65.js +0 -1
  1051. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-706c2ea1969b3c65.js +0 -1
  1052. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-706c2ea1969b3c65.js +0 -1
  1053. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-706c2ea1969b3c65.js +0 -1
  1054. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-706c2ea1969b3c65.js +0 -1
  1055. package/app/.next-cli-build/static/chunks/app/api/v1/route-706c2ea1969b3c65.js +0 -1
  1056. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-706c2ea1969b3c65.js +0 -1
  1057. package/app/.next-cli-build/static/chunks/app/api/v1/systemone/route-706c2ea1969b3c65.js +0 -1
  1058. package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-706c2ea1969b3c65.js +0 -1
  1059. package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-706c2ea1969b3c65.js +0 -1
  1060. package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-706c2ea1969b3c65.js +0 -1
  1061. package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-706c2ea1969b3c65.js +0 -1
  1062. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-706c2ea1969b3c65.js +0 -1
  1063. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-706c2ea1969b3c65.js +0 -1
  1064. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-706c2ea1969b3c65.js +0 -1
  1065. package/app/.next-cli-build/static/chunks/app/api/version/route-706c2ea1969b3c65.js +0 -1
  1066. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-706c2ea1969b3c65.js +0 -1
  1067. package/app/.next-cli-build/static/chunks/app/api/version/update/route-706c2ea1969b3c65.js +0 -1
  1068. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-706c2ea1969b3c65.js +0 -1
  1069. package/app/.next-cli-build/static/chunks/app/page-706c2ea1969b3c65.js +0 -1
  1070. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-706c2ea1969b3c65.js +0 -1
  1071. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-706c2ea1969b3c65.js +0 -1
  1072. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-706c2ea1969b3c65.js +0 -1
  1073. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-706c2ea1969b3c65.js +0 -1
  1074. package/app/.next-cli-build/static/css/e8a9dbb2db708090.css +0 -1
  1075. /package/app/.next-cli-build/static/{6r83antfTY0m1gUj5v4UM → 0D7NGZMreo6dajRbh_Yfz}/_buildManifest.js +0 -0
  1076. /package/app/.next-cli-build/static/{6r83antfTY0m1gUj5v4UM → 0D7NGZMreo6dajRbh_Yfz}/_ssgManifest.js +0 -0
@@ -0,0 +1,1078 @@
1
+ /**
2
+ * Javascript implementation of PKCS#12.
3
+ *
4
+ * @author Dave Longley
5
+ * @author Stefan Siegl <stesie@brokenpipe.de>
6
+ *
7
+ * Copyright (c) 2010-2014 Digital Bazaar, Inc.
8
+ * Copyright (c) 2012 Stefan Siegl <stesie@brokenpipe.de>
9
+ *
10
+ * The ASN.1 representation of PKCS#12 is as follows
11
+ * (see ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-12/pkcs-12-tc1.pdf for details)
12
+ *
13
+ * PFX ::= SEQUENCE {
14
+ * version INTEGER {v3(3)}(v3,...),
15
+ * authSafe ContentInfo,
16
+ * macData MacData OPTIONAL
17
+ * }
18
+ *
19
+ * MacData ::= SEQUENCE {
20
+ * mac DigestInfo,
21
+ * macSalt OCTET STRING,
22
+ * iterations INTEGER DEFAULT 1
23
+ * }
24
+ * Note: The iterations default is for historical reasons and its use is
25
+ * deprecated. A higher value, like 1024, is recommended.
26
+ *
27
+ * DigestInfo is defined in PKCS#7 as follows:
28
+ *
29
+ * DigestInfo ::= SEQUENCE {
30
+ * digestAlgorithm DigestAlgorithmIdentifier,
31
+ * digest Digest
32
+ * }
33
+ *
34
+ * DigestAlgorithmIdentifier ::= AlgorithmIdentifier
35
+ *
36
+ * The AlgorithmIdentifier contains an Object Identifier (OID) and parameters
37
+ * for the algorithm, if any. In the case of SHA1 there is none.
38
+ *
39
+ * AlgorithmIdentifer ::= SEQUENCE {
40
+ * algorithm OBJECT IDENTIFIER,
41
+ * parameters ANY DEFINED BY algorithm OPTIONAL
42
+ * }
43
+ *
44
+ * Digest ::= OCTET STRING
45
+ *
46
+ *
47
+ * ContentInfo ::= SEQUENCE {
48
+ * contentType ContentType,
49
+ * content [0] EXPLICIT ANY DEFINED BY contentType OPTIONAL
50
+ * }
51
+ *
52
+ * ContentType ::= OBJECT IDENTIFIER
53
+ *
54
+ * AuthenticatedSafe ::= SEQUENCE OF ContentInfo
55
+ * -- Data if unencrypted
56
+ * -- EncryptedData if password-encrypted
57
+ * -- EnvelopedData if public key-encrypted
58
+ *
59
+ *
60
+ * SafeContents ::= SEQUENCE OF SafeBag
61
+ *
62
+ * SafeBag ::= SEQUENCE {
63
+ * bagId BAG-TYPE.&id ({PKCS12BagSet})
64
+ * bagValue [0] EXPLICIT BAG-TYPE.&Type({PKCS12BagSet}{@bagId}),
65
+ * bagAttributes SET OF PKCS12Attribute OPTIONAL
66
+ * }
67
+ *
68
+ * PKCS12Attribute ::= SEQUENCE {
69
+ * attrId ATTRIBUTE.&id ({PKCS12AttrSet}),
70
+ * attrValues SET OF ATTRIBUTE.&Type ({PKCS12AttrSet}{@attrId})
71
+ * } -- This type is compatible with the X.500 type 'Attribute'
72
+ *
73
+ * PKCS12AttrSet ATTRIBUTE ::= {
74
+ * friendlyName | -- from PKCS #9
75
+ * localKeyId, -- from PKCS #9
76
+ * ... -- Other attributes are allowed
77
+ * }
78
+ *
79
+ * CertBag ::= SEQUENCE {
80
+ * certId BAG-TYPE.&id ({CertTypes}),
81
+ * certValue [0] EXPLICIT BAG-TYPE.&Type ({CertTypes}{@certId})
82
+ * }
83
+ *
84
+ * x509Certificate BAG-TYPE ::= {OCTET STRING IDENTIFIED BY {certTypes 1}}
85
+ * -- DER-encoded X.509 certificate stored in OCTET STRING
86
+ *
87
+ * sdsiCertificate BAG-TYPE ::= {IA5String IDENTIFIED BY {certTypes 2}}
88
+ * -- Base64-encoded SDSI certificate stored in IA5String
89
+ *
90
+ * CertTypes BAG-TYPE ::= {
91
+ * x509Certificate |
92
+ * sdsiCertificate,
93
+ * ... -- For future extensions
94
+ * }
95
+ */
96
+ var forge = require('./forge');
97
+ require('./asn1');
98
+ require('./hmac');
99
+ require('./oids');
100
+ require('./pkcs7asn1');
101
+ require('./pbe');
102
+ require('./random');
103
+ require('./rsa');
104
+ require('./sha1');
105
+ require('./util');
106
+ require('./x509');
107
+
108
+ // shortcut for asn.1 & PKI API
109
+ var asn1 = forge.asn1;
110
+ var pki = forge.pki;
111
+
112
+ // shortcut for PKCS#12 API
113
+ var p12 = module.exports = forge.pkcs12 = forge.pkcs12 || {};
114
+
115
+ var contentInfoValidator = {
116
+ name: 'ContentInfo',
117
+ tagClass: asn1.Class.UNIVERSAL,
118
+ type: asn1.Type.SEQUENCE, // a ContentInfo
119
+ constructed: true,
120
+ value: [{
121
+ name: 'ContentInfo.contentType',
122
+ tagClass: asn1.Class.UNIVERSAL,
123
+ type: asn1.Type.OID,
124
+ constructed: false,
125
+ capture: 'contentType'
126
+ }, {
127
+ name: 'ContentInfo.content',
128
+ tagClass: asn1.Class.CONTEXT_SPECIFIC,
129
+ constructed: true,
130
+ captureAsn1: 'content'
131
+ }]
132
+ };
133
+
134
+ var pfxValidator = {
135
+ name: 'PFX',
136
+ tagClass: asn1.Class.UNIVERSAL,
137
+ type: asn1.Type.SEQUENCE,
138
+ constructed: true,
139
+ value: [{
140
+ name: 'PFX.version',
141
+ tagClass: asn1.Class.UNIVERSAL,
142
+ type: asn1.Type.INTEGER,
143
+ constructed: false,
144
+ capture: 'version'
145
+ },
146
+ contentInfoValidator, {
147
+ name: 'PFX.macData',
148
+ tagClass: asn1.Class.UNIVERSAL,
149
+ type: asn1.Type.SEQUENCE,
150
+ constructed: true,
151
+ optional: true,
152
+ captureAsn1: 'mac',
153
+ value: [{
154
+ name: 'PFX.macData.mac',
155
+ tagClass: asn1.Class.UNIVERSAL,
156
+ type: asn1.Type.SEQUENCE, // DigestInfo
157
+ constructed: true,
158
+ value: [{
159
+ name: 'PFX.macData.mac.digestAlgorithm',
160
+ tagClass: asn1.Class.UNIVERSAL,
161
+ type: asn1.Type.SEQUENCE, // DigestAlgorithmIdentifier
162
+ constructed: true,
163
+ value: [{
164
+ name: 'PFX.macData.mac.digestAlgorithm.algorithm',
165
+ tagClass: asn1.Class.UNIVERSAL,
166
+ type: asn1.Type.OID,
167
+ constructed: false,
168
+ capture: 'macAlgorithm'
169
+ }, {
170
+ name: 'PFX.macData.mac.digestAlgorithm.parameters',
171
+ optional: true,
172
+ tagClass: asn1.Class.UNIVERSAL,
173
+ captureAsn1: 'macAlgorithmParameters'
174
+ }]
175
+ }, {
176
+ name: 'PFX.macData.mac.digest',
177
+ tagClass: asn1.Class.UNIVERSAL,
178
+ type: asn1.Type.OCTETSTRING,
179
+ constructed: false,
180
+ capture: 'macDigest'
181
+ }]
182
+ }, {
183
+ name: 'PFX.macData.macSalt',
184
+ tagClass: asn1.Class.UNIVERSAL,
185
+ type: asn1.Type.OCTETSTRING,
186
+ constructed: false,
187
+ capture: 'macSalt'
188
+ }, {
189
+ name: 'PFX.macData.iterations',
190
+ tagClass: asn1.Class.UNIVERSAL,
191
+ type: asn1.Type.INTEGER,
192
+ constructed: false,
193
+ optional: true,
194
+ capture: 'macIterations'
195
+ }]
196
+ }]
197
+ };
198
+
199
+ var safeBagValidator = {
200
+ name: 'SafeBag',
201
+ tagClass: asn1.Class.UNIVERSAL,
202
+ type: asn1.Type.SEQUENCE,
203
+ constructed: true,
204
+ value: [{
205
+ name: 'SafeBag.bagId',
206
+ tagClass: asn1.Class.UNIVERSAL,
207
+ type: asn1.Type.OID,
208
+ constructed: false,
209
+ capture: 'bagId'
210
+ }, {
211
+ name: 'SafeBag.bagValue',
212
+ tagClass: asn1.Class.CONTEXT_SPECIFIC,
213
+ constructed: true,
214
+ captureAsn1: 'bagValue'
215
+ }, {
216
+ name: 'SafeBag.bagAttributes',
217
+ tagClass: asn1.Class.UNIVERSAL,
218
+ type: asn1.Type.SET,
219
+ constructed: true,
220
+ optional: true,
221
+ capture: 'bagAttributes'
222
+ }]
223
+ };
224
+
225
+ var attributeValidator = {
226
+ name: 'Attribute',
227
+ tagClass: asn1.Class.UNIVERSAL,
228
+ type: asn1.Type.SEQUENCE,
229
+ constructed: true,
230
+ value: [{
231
+ name: 'Attribute.attrId',
232
+ tagClass: asn1.Class.UNIVERSAL,
233
+ type: asn1.Type.OID,
234
+ constructed: false,
235
+ capture: 'oid'
236
+ }, {
237
+ name: 'Attribute.attrValues',
238
+ tagClass: asn1.Class.UNIVERSAL,
239
+ type: asn1.Type.SET,
240
+ constructed: true,
241
+ capture: 'values'
242
+ }]
243
+ };
244
+
245
+ var certBagValidator = {
246
+ name: 'CertBag',
247
+ tagClass: asn1.Class.UNIVERSAL,
248
+ type: asn1.Type.SEQUENCE,
249
+ constructed: true,
250
+ value: [{
251
+ name: 'CertBag.certId',
252
+ tagClass: asn1.Class.UNIVERSAL,
253
+ type: asn1.Type.OID,
254
+ constructed: false,
255
+ capture: 'certId'
256
+ }, {
257
+ name: 'CertBag.certValue',
258
+ tagClass: asn1.Class.CONTEXT_SPECIFIC,
259
+ constructed: true,
260
+ /* So far we only support X.509 certificates (which are wrapped in
261
+ an OCTET STRING, hence hard code that here). */
262
+ value: [{
263
+ name: 'CertBag.certValue[0]',
264
+ tagClass: asn1.Class.UNIVERSAL,
265
+ type: asn1.Class.OCTETSTRING,
266
+ constructed: false,
267
+ capture: 'cert'
268
+ }]
269
+ }]
270
+ };
271
+
272
+ /**
273
+ * Search SafeContents structure for bags with matching attributes.
274
+ *
275
+ * The search can optionally be narrowed by a certain bag type.
276
+ *
277
+ * @param safeContents the SafeContents structure to search in.
278
+ * @param attrName the name of the attribute to compare against.
279
+ * @param attrValue the attribute value to search for.
280
+ * @param [bagType] bag type to narrow search by.
281
+ *
282
+ * @return an array of matching bags.
283
+ */
284
+ function _getBagsByAttribute(safeContents, attrName, attrValue, bagType) {
285
+ var result = [];
286
+
287
+ for(var i = 0; i < safeContents.length; i++) {
288
+ for(var j = 0; j < safeContents[i].safeBags.length; j++) {
289
+ var bag = safeContents[i].safeBags[j];
290
+ if(bagType !== undefined && bag.type !== bagType) {
291
+ continue;
292
+ }
293
+ // only filter by bag type, no attribute specified
294
+ if(attrName === null) {
295
+ result.push(bag);
296
+ continue;
297
+ }
298
+ if(bag.attributes[attrName] !== undefined &&
299
+ bag.attributes[attrName].indexOf(attrValue) >= 0) {
300
+ result.push(bag);
301
+ }
302
+ }
303
+ }
304
+
305
+ return result;
306
+ }
307
+
308
+ /**
309
+ * Converts a PKCS#12 PFX in ASN.1 notation into a PFX object.
310
+ *
311
+ * @param obj The PKCS#12 PFX in ASN.1 notation.
312
+ * @param strict true to use strict DER decoding, false not to (default: true).
313
+ * @param {String} password Password to decrypt with (optional).
314
+ *
315
+ * @return PKCS#12 PFX object.
316
+ */
317
+ p12.pkcs12FromAsn1 = function(obj, strict, password) {
318
+ // handle args
319
+ if(typeof strict === 'string') {
320
+ password = strict;
321
+ strict = true;
322
+ } else if(strict === undefined) {
323
+ strict = true;
324
+ }
325
+
326
+ // validate PFX and capture data
327
+ var capture = {};
328
+ var errors = [];
329
+ if(!asn1.validate(obj, pfxValidator, capture, errors)) {
330
+ var error = new Error('Cannot read PKCS#12 PFX. ' +
331
+ 'ASN.1 object is not an PKCS#12 PFX.');
332
+ error.errors = error;
333
+ throw error;
334
+ }
335
+
336
+ var pfx = {
337
+ version: capture.version.charCodeAt(0),
338
+ safeContents: [],
339
+
340
+ /**
341
+ * Gets bags with matching attributes.
342
+ *
343
+ * @param filter the attributes to filter by:
344
+ * [localKeyId] the localKeyId to search for.
345
+ * [localKeyIdHex] the localKeyId in hex to search for.
346
+ * [friendlyName] the friendly name to search for.
347
+ * [bagType] bag type to narrow each attribute search by.
348
+ *
349
+ * @return a map of attribute type to an array of matching bags or, if no
350
+ * attribute was given but a bag type, the map key will be the
351
+ * bag type.
352
+ */
353
+ getBags: function(filter) {
354
+ var rval = {};
355
+
356
+ var localKeyId;
357
+ if('localKeyId' in filter) {
358
+ localKeyId = filter.localKeyId;
359
+ } else if('localKeyIdHex' in filter) {
360
+ localKeyId = forge.util.hexToBytes(filter.localKeyIdHex);
361
+ }
362
+
363
+ // filter on bagType only
364
+ if(localKeyId === undefined && !('friendlyName' in filter) &&
365
+ 'bagType' in filter) {
366
+ rval[filter.bagType] = _getBagsByAttribute(
367
+ pfx.safeContents, null, null, filter.bagType);
368
+ }
369
+
370
+ if(localKeyId !== undefined) {
371
+ rval.localKeyId = _getBagsByAttribute(
372
+ pfx.safeContents, 'localKeyId',
373
+ localKeyId, filter.bagType);
374
+ }
375
+ if('friendlyName' in filter) {
376
+ rval.friendlyName = _getBagsByAttribute(
377
+ pfx.safeContents, 'friendlyName',
378
+ filter.friendlyName, filter.bagType);
379
+ }
380
+
381
+ return rval;
382
+ },
383
+
384
+ /**
385
+ * DEPRECATED: use getBags() instead.
386
+ *
387
+ * Get bags with matching friendlyName attribute.
388
+ *
389
+ * @param friendlyName the friendly name to search for.
390
+ * @param [bagType] bag type to narrow search by.
391
+ *
392
+ * @return an array of bags with matching friendlyName attribute.
393
+ */
394
+ getBagsByFriendlyName: function(friendlyName, bagType) {
395
+ return _getBagsByAttribute(
396
+ pfx.safeContents, 'friendlyName', friendlyName, bagType);
397
+ },
398
+
399
+ /**
400
+ * DEPRECATED: use getBags() instead.
401
+ *
402
+ * Get bags with matching localKeyId attribute.
403
+ *
404
+ * @param localKeyId the localKeyId to search for.
405
+ * @param [bagType] bag type to narrow search by.
406
+ *
407
+ * @return an array of bags with matching localKeyId attribute.
408
+ */
409
+ getBagsByLocalKeyId: function(localKeyId, bagType) {
410
+ return _getBagsByAttribute(
411
+ pfx.safeContents, 'localKeyId', localKeyId, bagType);
412
+ }
413
+ };
414
+
415
+ if(capture.version.charCodeAt(0) !== 3) {
416
+ var error = new Error('PKCS#12 PFX of version other than 3 not supported.');
417
+ error.version = capture.version.charCodeAt(0);
418
+ throw error;
419
+ }
420
+
421
+ if(asn1.derToOid(capture.contentType) !== pki.oids.data) {
422
+ var error = new Error('Only PKCS#12 PFX in password integrity mode supported.');
423
+ error.oid = asn1.derToOid(capture.contentType);
424
+ throw error;
425
+ }
426
+
427
+ var data = capture.content.value[0];
428
+ if(data.tagClass !== asn1.Class.UNIVERSAL ||
429
+ data.type !== asn1.Type.OCTETSTRING) {
430
+ throw new Error('PKCS#12 authSafe content data is not an OCTET STRING.');
431
+ }
432
+ data = _decodePkcs7Data(data);
433
+
434
+ // check for MAC
435
+ if(capture.mac) {
436
+ var md = null;
437
+ var macKeyBytes = 0;
438
+ var macAlgorithm = asn1.derToOid(capture.macAlgorithm);
439
+ switch(macAlgorithm) {
440
+ case pki.oids.sha1:
441
+ md = forge.md.sha1.create();
442
+ macKeyBytes = 20;
443
+ break;
444
+ case pki.oids.sha256:
445
+ md = forge.md.sha256.create();
446
+ macKeyBytes = 32;
447
+ break;
448
+ case pki.oids.sha384:
449
+ md = forge.md.sha384.create();
450
+ macKeyBytes = 48;
451
+ break;
452
+ case pki.oids.sha512:
453
+ md = forge.md.sha512.create();
454
+ macKeyBytes = 64;
455
+ break;
456
+ case pki.oids.md5:
457
+ md = forge.md.md5.create();
458
+ macKeyBytes = 16;
459
+ break;
460
+ }
461
+ if(md === null) {
462
+ throw new Error('PKCS#12 uses unsupported MAC algorithm: ' + macAlgorithm);
463
+ }
464
+
465
+ // verify MAC (iterations default to 1)
466
+ var macSalt = new forge.util.ByteBuffer(capture.macSalt);
467
+ var macIterations = (('macIterations' in capture) ?
468
+ parseInt(forge.util.bytesToHex(capture.macIterations), 16) : 1);
469
+ var macKey = p12.generateKey(
470
+ password, macSalt, 3, macIterations, macKeyBytes, md);
471
+ var mac = forge.hmac.create();
472
+ mac.start(md, macKey);
473
+ mac.update(data.value);
474
+ var macValue = mac.getMac();
475
+ if(macValue.getBytes() !== capture.macDigest) {
476
+ throw new Error('PKCS#12 MAC could not be verified. Invalid password?');
477
+ }
478
+ } else if(Array.isArray(obj.value) && obj.value.length > 2) {
479
+ /* This is pfx data that should have mac and verify macDigest */
480
+ throw new Error('Invalid PKCS#12. macData field present but MAC was not validated.');
481
+ }
482
+
483
+ _decodeAuthenticatedSafe(pfx, data.value, strict, password);
484
+ return pfx;
485
+ };
486
+
487
+ /**
488
+ * Decodes PKCS#7 Data. PKCS#7 (RFC 2315) defines "Data" as an OCTET STRING,
489
+ * but it is sometimes an OCTET STRING that is composed/constructed of chunks,
490
+ * each its own OCTET STRING. This is BER-encoding vs. DER-encoding. This
491
+ * function transforms this corner-case into the usual simple,
492
+ * non-composed/constructed OCTET STRING.
493
+ *
494
+ * This function may be moved to ASN.1 at some point to better deal with
495
+ * more BER-encoding issues, should they arise.
496
+ *
497
+ * @param data the ASN.1 Data object to transform.
498
+ */
499
+ function _decodePkcs7Data(data) {
500
+ // handle special case of "chunked" data content: an octet string composed
501
+ // of other octet strings
502
+ if(data.composed || data.constructed) {
503
+ var value = forge.util.createBuffer();
504
+ for(var i = 0; i < data.value.length; ++i) {
505
+ value.putBytes(data.value[i].value);
506
+ }
507
+ data.composed = data.constructed = false;
508
+ data.value = value.getBytes();
509
+ }
510
+ return data;
511
+ }
512
+
513
+ /**
514
+ * Decode PKCS#12 AuthenticatedSafe (BER encoded) into PFX object.
515
+ *
516
+ * The AuthenticatedSafe is a BER-encoded SEQUENCE OF ContentInfo.
517
+ *
518
+ * @param pfx The PKCS#12 PFX object to fill.
519
+ * @param {String} authSafe BER-encoded AuthenticatedSafe.
520
+ * @param strict true to use strict DER decoding, false not to.
521
+ * @param {String} password Password to decrypt with (optional).
522
+ */
523
+ function _decodeAuthenticatedSafe(pfx, authSafe, strict, password) {
524
+ authSafe = asn1.fromDer(authSafe, strict); /* actually it's BER encoded */
525
+
526
+ if(authSafe.tagClass !== asn1.Class.UNIVERSAL ||
527
+ authSafe.type !== asn1.Type.SEQUENCE ||
528
+ authSafe.constructed !== true) {
529
+ throw new Error('PKCS#12 AuthenticatedSafe expected to be a ' +
530
+ 'SEQUENCE OF ContentInfo');
531
+ }
532
+
533
+ for(var i = 0; i < authSafe.value.length; i++) {
534
+ var contentInfo = authSafe.value[i];
535
+
536
+ // validate contentInfo and capture data
537
+ var capture = {};
538
+ var errors = [];
539
+ if(!asn1.validate(contentInfo, contentInfoValidator, capture, errors)) {
540
+ var error = new Error('Cannot read ContentInfo.');
541
+ error.errors = errors;
542
+ throw error;
543
+ }
544
+
545
+ var obj = {
546
+ encrypted: false
547
+ };
548
+ var safeContents = null;
549
+ var data = capture.content.value[0];
550
+ switch(asn1.derToOid(capture.contentType)) {
551
+ case pki.oids.data:
552
+ if(data.tagClass !== asn1.Class.UNIVERSAL ||
553
+ data.type !== asn1.Type.OCTETSTRING) {
554
+ throw new Error('PKCS#12 SafeContents Data is not an OCTET STRING.');
555
+ }
556
+ safeContents = _decodePkcs7Data(data).value;
557
+ break;
558
+ case pki.oids.encryptedData:
559
+ safeContents = _decryptSafeContents(data, password);
560
+ obj.encrypted = true;
561
+ break;
562
+ default:
563
+ var error = new Error('Unsupported PKCS#12 contentType.');
564
+ error.contentType = asn1.derToOid(capture.contentType);
565
+ throw error;
566
+ }
567
+
568
+ obj.safeBags = _decodeSafeContents(safeContents, strict, password);
569
+ pfx.safeContents.push(obj);
570
+ }
571
+ }
572
+
573
+ /**
574
+ * Decrypt PKCS#7 EncryptedData structure.
575
+ *
576
+ * @param data ASN.1 encoded EncryptedContentInfo object.
577
+ * @param password The user-provided password.
578
+ *
579
+ * @return The decrypted SafeContents (ASN.1 object).
580
+ */
581
+ function _decryptSafeContents(data, password) {
582
+ var capture = {};
583
+ var errors = [];
584
+ if(!asn1.validate(
585
+ data, forge.pkcs7.asn1.encryptedDataValidator, capture, errors)) {
586
+ var error = new Error('Cannot read EncryptedContentInfo.');
587
+ error.errors = errors;
588
+ throw error;
589
+ }
590
+
591
+ var oid = asn1.derToOid(capture.contentType);
592
+ if(oid !== pki.oids.data) {
593
+ var error = new Error(
594
+ 'PKCS#12 EncryptedContentInfo ContentType is not Data.');
595
+ error.oid = oid;
596
+ throw error;
597
+ }
598
+
599
+ // get cipher
600
+ oid = asn1.derToOid(capture.encAlgorithm);
601
+ var cipher = pki.pbe.getCipher(oid, capture.encParameter, password);
602
+
603
+ // get encrypted data
604
+ var encryptedContentAsn1 = _decodePkcs7Data(capture.encryptedContentAsn1);
605
+ var encrypted = forge.util.createBuffer(encryptedContentAsn1.value);
606
+
607
+ cipher.update(encrypted);
608
+ if(!cipher.finish()) {
609
+ throw new Error('Failed to decrypt PKCS#12 SafeContents.');
610
+ }
611
+
612
+ return cipher.output.getBytes();
613
+ }
614
+
615
+ /**
616
+ * Decode PKCS#12 SafeContents (BER-encoded) into array of Bag objects.
617
+ *
618
+ * The safeContents is a BER-encoded SEQUENCE OF SafeBag.
619
+ *
620
+ * @param {String} safeContents BER-encoded safeContents.
621
+ * @param strict true to use strict DER decoding, false not to.
622
+ * @param {String} password Password to decrypt with (optional).
623
+ *
624
+ * @return {Array} Array of Bag objects.
625
+ */
626
+ function _decodeSafeContents(safeContents, strict, password) {
627
+ // if strict and no safe contents, return empty safes
628
+ if(!strict && safeContents.length === 0) {
629
+ return [];
630
+ }
631
+
632
+ // actually it's BER-encoded
633
+ safeContents = asn1.fromDer(safeContents, strict);
634
+
635
+ if(safeContents.tagClass !== asn1.Class.UNIVERSAL ||
636
+ safeContents.type !== asn1.Type.SEQUENCE ||
637
+ safeContents.constructed !== true) {
638
+ throw new Error(
639
+ 'PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.');
640
+ }
641
+
642
+ var res = [];
643
+ for(var i = 0; i < safeContents.value.length; i++) {
644
+ var safeBag = safeContents.value[i];
645
+
646
+ // validate SafeBag and capture data
647
+ var capture = {};
648
+ var errors = [];
649
+ if(!asn1.validate(safeBag, safeBagValidator, capture, errors)) {
650
+ var error = new Error('Cannot read SafeBag.');
651
+ error.errors = errors;
652
+ throw error;
653
+ }
654
+
655
+ /* Create bag object and push to result array. */
656
+ var bag = {
657
+ type: asn1.derToOid(capture.bagId),
658
+ attributes: _decodeBagAttributes(capture.bagAttributes)
659
+ };
660
+ res.push(bag);
661
+
662
+ var validator, decoder;
663
+ var bagAsn1 = capture.bagValue.value[0];
664
+ switch(bag.type) {
665
+ case pki.oids.pkcs8ShroudedKeyBag:
666
+ /* bagAsn1 has a EncryptedPrivateKeyInfo, which we need to decrypt.
667
+ Afterwards we can handle it like a keyBag,
668
+ which is a PrivateKeyInfo. */
669
+ bagAsn1 = pki.decryptPrivateKeyInfo(bagAsn1, password);
670
+ if(bagAsn1 === null) {
671
+ throw new Error(
672
+ 'Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?');
673
+ }
674
+
675
+ /* fall through */
676
+ case pki.oids.keyBag:
677
+ /* A PKCS#12 keyBag is a simple PrivateKeyInfo as understood by our
678
+ PKI module, hence we don't have to do validation/capturing here,
679
+ just pass what we already got. */
680
+ try {
681
+ bag.key = pki.privateKeyFromAsn1(bagAsn1);
682
+ } catch(e) {
683
+ // ignore unknown key type, pass asn1 value
684
+ bag.key = null;
685
+ bag.asn1 = bagAsn1;
686
+ }
687
+ continue; /* Nothing more to do. */
688
+
689
+ case pki.oids.certBag:
690
+ /* A PKCS#12 certBag can wrap both X.509 and sdsi certificates.
691
+ Therefore put the SafeBag content through another validator to
692
+ capture the fields. Afterwards check & store the results. */
693
+ validator = certBagValidator;
694
+ decoder = function() {
695
+ if(asn1.derToOid(capture.certId) !== pki.oids.x509Certificate) {
696
+ var error = new Error(
697
+ 'Unsupported certificate type, only X.509 supported.');
698
+ error.oid = asn1.derToOid(capture.certId);
699
+ throw error;
700
+ }
701
+
702
+ // true=produce cert hash
703
+ var certAsn1 = asn1.fromDer(capture.cert, strict);
704
+ try {
705
+ bag.cert = pki.certificateFromAsn1(certAsn1, true);
706
+ } catch(e) {
707
+ // ignore unknown cert type, pass asn1 value
708
+ bag.cert = null;
709
+ bag.asn1 = certAsn1;
710
+ }
711
+ };
712
+ break;
713
+
714
+ default:
715
+ var error = new Error('Unsupported PKCS#12 SafeBag type.');
716
+ error.oid = bag.type;
717
+ throw error;
718
+ }
719
+
720
+ /* Validate SafeBag value (i.e. CertBag, etc.) and capture data if needed. */
721
+ if(validator !== undefined &&
722
+ !asn1.validate(bagAsn1, validator, capture, errors)) {
723
+ var error = new Error('Cannot read PKCS#12 ' + validator.name);
724
+ error.errors = errors;
725
+ throw error;
726
+ }
727
+
728
+ /* Call decoder function from above to store the results. */
729
+ decoder();
730
+ }
731
+
732
+ return res;
733
+ }
734
+
735
+ /**
736
+ * Decode PKCS#12 SET OF PKCS12Attribute into JavaScript object.
737
+ *
738
+ * @param attributes SET OF PKCS12Attribute (ASN.1 object).
739
+ *
740
+ * @return the decoded attributes.
741
+ */
742
+ function _decodeBagAttributes(attributes) {
743
+ var decodedAttrs = {};
744
+
745
+ if(attributes !== undefined) {
746
+ for(var i = 0; i < attributes.length; ++i) {
747
+ var capture = {};
748
+ var errors = [];
749
+ if(!asn1.validate(attributes[i], attributeValidator, capture, errors)) {
750
+ var error = new Error('Cannot read PKCS#12 BagAttribute.');
751
+ error.errors = errors;
752
+ throw error;
753
+ }
754
+
755
+ var oid = asn1.derToOid(capture.oid);
756
+ if(pki.oids[oid] === undefined) {
757
+ // unsupported attribute type, ignore.
758
+ continue;
759
+ }
760
+
761
+ decodedAttrs[pki.oids[oid]] = [];
762
+ for(var j = 0; j < capture.values.length; ++j) {
763
+ decodedAttrs[pki.oids[oid]].push(capture.values[j].value);
764
+ }
765
+ }
766
+ }
767
+
768
+ return decodedAttrs;
769
+ }
770
+
771
+ /**
772
+ * Wraps a private key and certificate in a PKCS#12 PFX wrapper. If a
773
+ * password is provided then the private key will be encrypted.
774
+ *
775
+ * An entire certificate chain may also be included. To do this, pass
776
+ * an array for the "cert" parameter where the first certificate is
777
+ * the one that is paired with the private key and each subsequent one
778
+ * verifies the previous one. The certificates may be in PEM format or
779
+ * have been already parsed by Forge.
780
+ *
781
+ * @todo implement password-based-encryption for the whole package
782
+ *
783
+ * @param key the private key.
784
+ * @param cert the certificate (may be an array of certificates in order
785
+ * to specify a certificate chain).
786
+ * @param password the password to use, null for none.
787
+ * @param options:
788
+ * algorithm the encryption algorithm to use
789
+ * ('aes128', 'aes192', 'aes256', '3des'), defaults to 'aes128'.
790
+ * count the iteration count to use.
791
+ * saltSize the salt size to use.
792
+ * useMac true to include a MAC, false not to, defaults to true.
793
+ * localKeyId the local key ID to use, in hex.
794
+ * friendlyName the friendly name to use.
795
+ * generateLocalKeyId true to generate a random local key ID,
796
+ * false not to, defaults to true.
797
+ *
798
+ * @return the PKCS#12 PFX ASN.1 object.
799
+ */
800
+ p12.toPkcs12Asn1 = function(key, cert, password, options) {
801
+ // set default options
802
+ options = options || {};
803
+ options.saltSize = options.saltSize || 8;
804
+ options.count = options.count || 2048;
805
+ options.algorithm = options.algorithm || options.encAlgorithm || 'aes128';
806
+ if(!('useMac' in options)) {
807
+ options.useMac = true;
808
+ }
809
+ if(!('localKeyId' in options)) {
810
+ options.localKeyId = null;
811
+ }
812
+ if(!('generateLocalKeyId' in options)) {
813
+ options.generateLocalKeyId = true;
814
+ }
815
+
816
+ var localKeyId = options.localKeyId;
817
+ var bagAttrs;
818
+ if(localKeyId !== null) {
819
+ localKeyId = forge.util.hexToBytes(localKeyId);
820
+ } else if(options.generateLocalKeyId) {
821
+ // use SHA-1 of paired cert, if available
822
+ if(cert) {
823
+ var pairedCert = forge.util.isArray(cert) ? cert[0] : cert;
824
+ if(typeof pairedCert === 'string') {
825
+ pairedCert = pki.certificateFromPem(pairedCert);
826
+ }
827
+ var sha1 = forge.md.sha1.create();
828
+ sha1.update(asn1.toDer(pki.certificateToAsn1(pairedCert)).getBytes());
829
+ localKeyId = sha1.digest().getBytes();
830
+ } else {
831
+ // FIXME: consider using SHA-1 of public key (which can be generated
832
+ // from private key components), see: cert.generateSubjectKeyIdentifier
833
+ // generate random bytes
834
+ localKeyId = forge.random.getBytes(20);
835
+ }
836
+ }
837
+
838
+ var attrs = [];
839
+ if(localKeyId !== null) {
840
+ attrs.push(
841
+ // localKeyID
842
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
843
+ // attrId
844
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
845
+ asn1.oidToDer(pki.oids.localKeyId).getBytes()),
846
+ // attrValues
847
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SET, true, [
848
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OCTETSTRING, false,
849
+ localKeyId)
850
+ ])
851
+ ]));
852
+ }
853
+ if('friendlyName' in options) {
854
+ attrs.push(
855
+ // friendlyName
856
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
857
+ // attrId
858
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
859
+ asn1.oidToDer(pki.oids.friendlyName).getBytes()),
860
+ // attrValues
861
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SET, true, [
862
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.BMPSTRING, false,
863
+ options.friendlyName)
864
+ ])
865
+ ]));
866
+ }
867
+
868
+ if(attrs.length > 0) {
869
+ bagAttrs = asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SET, true, attrs);
870
+ }
871
+
872
+ // collect contents for AuthenticatedSafe
873
+ var contents = [];
874
+
875
+ // create safe bag(s) for certificate chain
876
+ var chain = [];
877
+ if(cert !== null) {
878
+ if(forge.util.isArray(cert)) {
879
+ chain = cert;
880
+ } else {
881
+ chain = [cert];
882
+ }
883
+ }
884
+
885
+ var certSafeBags = [];
886
+ for(var i = 0; i < chain.length; ++i) {
887
+ // convert cert from PEM as necessary
888
+ cert = chain[i];
889
+ if(typeof cert === 'string') {
890
+ cert = pki.certificateFromPem(cert);
891
+ }
892
+
893
+ // SafeBag
894
+ var certBagAttrs = (i === 0) ? bagAttrs : undefined;
895
+ var certAsn1 = pki.certificateToAsn1(cert);
896
+ var certSafeBag =
897
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
898
+ // bagId
899
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
900
+ asn1.oidToDer(pki.oids.certBag).getBytes()),
901
+ // bagValue
902
+ asn1.create(asn1.Class.CONTEXT_SPECIFIC, 0, true, [
903
+ // CertBag
904
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
905
+ // certId
906
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
907
+ asn1.oidToDer(pki.oids.x509Certificate).getBytes()),
908
+ // certValue (x509Certificate)
909
+ asn1.create(asn1.Class.CONTEXT_SPECIFIC, 0, true, [
910
+ asn1.create(
911
+ asn1.Class.UNIVERSAL, asn1.Type.OCTETSTRING, false,
912
+ asn1.toDer(certAsn1).getBytes())
913
+ ])])]),
914
+ // bagAttributes (OPTIONAL)
915
+ certBagAttrs
916
+ ]);
917
+ certSafeBags.push(certSafeBag);
918
+ }
919
+
920
+ if(certSafeBags.length > 0) {
921
+ // SafeContents
922
+ var certSafeContents = asn1.create(
923
+ asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, certSafeBags);
924
+
925
+ // ContentInfo
926
+ var certCI =
927
+ // PKCS#7 ContentInfo
928
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
929
+ // contentType
930
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
931
+ // OID for the content type is 'data'
932
+ asn1.oidToDer(pki.oids.data).getBytes()),
933
+ // content
934
+ asn1.create(asn1.Class.CONTEXT_SPECIFIC, 0, true, [
935
+ asn1.create(
936
+ asn1.Class.UNIVERSAL, asn1.Type.OCTETSTRING, false,
937
+ asn1.toDer(certSafeContents).getBytes())
938
+ ])
939
+ ]);
940
+ contents.push(certCI);
941
+ }
942
+
943
+ // create safe contents for private key
944
+ var keyBag = null;
945
+ if(key !== null) {
946
+ // SafeBag
947
+ var pkAsn1 = pki.wrapRsaPrivateKey(pki.privateKeyToAsn1(key));
948
+ if(password === null) {
949
+ // no encryption
950
+ keyBag = asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
951
+ // bagId
952
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
953
+ asn1.oidToDer(pki.oids.keyBag).getBytes()),
954
+ // bagValue
955
+ asn1.create(asn1.Class.CONTEXT_SPECIFIC, 0, true, [
956
+ // PrivateKeyInfo
957
+ pkAsn1
958
+ ]),
959
+ // bagAttributes (OPTIONAL)
960
+ bagAttrs
961
+ ]);
962
+ } else {
963
+ // encrypted PrivateKeyInfo
964
+ keyBag = asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
965
+ // bagId
966
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
967
+ asn1.oidToDer(pki.oids.pkcs8ShroudedKeyBag).getBytes()),
968
+ // bagValue
969
+ asn1.create(asn1.Class.CONTEXT_SPECIFIC, 0, true, [
970
+ // EncryptedPrivateKeyInfo
971
+ pki.encryptPrivateKeyInfo(pkAsn1, password, options)
972
+ ]),
973
+ // bagAttributes (OPTIONAL)
974
+ bagAttrs
975
+ ]);
976
+ }
977
+
978
+ // SafeContents
979
+ var keySafeContents =
980
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [keyBag]);
981
+
982
+ // ContentInfo
983
+ var keyCI =
984
+ // PKCS#7 ContentInfo
985
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
986
+ // contentType
987
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
988
+ // OID for the content type is 'data'
989
+ asn1.oidToDer(pki.oids.data).getBytes()),
990
+ // content
991
+ asn1.create(asn1.Class.CONTEXT_SPECIFIC, 0, true, [
992
+ asn1.create(
993
+ asn1.Class.UNIVERSAL, asn1.Type.OCTETSTRING, false,
994
+ asn1.toDer(keySafeContents).getBytes())
995
+ ])
996
+ ]);
997
+ contents.push(keyCI);
998
+ }
999
+
1000
+ // create AuthenticatedSafe by stringing together the contents
1001
+ var safe = asn1.create(
1002
+ asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, contents);
1003
+
1004
+ var macData;
1005
+ if(options.useMac) {
1006
+ // MacData
1007
+ var sha1 = forge.md.sha1.create();
1008
+ var macSalt = new forge.util.ByteBuffer(
1009
+ forge.random.getBytes(options.saltSize));
1010
+ var count = options.count;
1011
+ // 160-bit key
1012
+ var key = p12.generateKey(password, macSalt, 3, count, 20);
1013
+ var mac = forge.hmac.create();
1014
+ mac.start(sha1, key);
1015
+ mac.update(asn1.toDer(safe).getBytes());
1016
+ var macValue = mac.getMac();
1017
+ macData = asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
1018
+ // mac DigestInfo
1019
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
1020
+ // digestAlgorithm
1021
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
1022
+ // algorithm = SHA-1
1023
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
1024
+ asn1.oidToDer(pki.oids.sha1).getBytes()),
1025
+ // parameters = Null
1026
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.NULL, false, '')
1027
+ ]),
1028
+ // digest
1029
+ asn1.create(
1030
+ asn1.Class.UNIVERSAL, asn1.Type.OCTETSTRING,
1031
+ false, macValue.getBytes())
1032
+ ]),
1033
+ // macSalt OCTET STRING
1034
+ asn1.create(
1035
+ asn1.Class.UNIVERSAL, asn1.Type.OCTETSTRING, false, macSalt.getBytes()),
1036
+ // iterations INTEGER (XXX: Only support count < 65536)
1037
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.INTEGER, false,
1038
+ asn1.integerToDer(count).getBytes()
1039
+ )
1040
+ ]);
1041
+ }
1042
+
1043
+ // PFX
1044
+ return asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
1045
+ // version (3)
1046
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.INTEGER, false,
1047
+ asn1.integerToDer(3).getBytes()),
1048
+ // PKCS#7 ContentInfo
1049
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
1050
+ // contentType
1051
+ asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OID, false,
1052
+ // OID for the content type is 'data'
1053
+ asn1.oidToDer(pki.oids.data).getBytes()),
1054
+ // content
1055
+ asn1.create(asn1.Class.CONTEXT_SPECIFIC, 0, true, [
1056
+ asn1.create(
1057
+ asn1.Class.UNIVERSAL, asn1.Type.OCTETSTRING, false,
1058
+ asn1.toDer(safe).getBytes())
1059
+ ])
1060
+ ]),
1061
+ macData
1062
+ ]);
1063
+ };
1064
+
1065
+ /**
1066
+ * Derives a PKCS#12 key.
1067
+ *
1068
+ * @param password the password to derive the key material from, null or
1069
+ * undefined for none.
1070
+ * @param salt the salt, as a ByteBuffer, to use.
1071
+ * @param id the PKCS#12 ID byte (1 = key material, 2 = IV, 3 = MAC).
1072
+ * @param iter the iteration count.
1073
+ * @param n the number of bytes to derive from the password.
1074
+ * @param md the message digest to use, defaults to SHA-1.
1075
+ *
1076
+ * @return a ByteBuffer with the bytes derived from the password.
1077
+ */
1078
+ p12.generateKey = forge.pbe.generatePkcs12Key;