@thangnm.nip/arouter 0.1.12 → 0.1.13

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 (208) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +9 -8
  3. package/.next/standalone/.next/build-manifest.json +4 -4
  4. package/.next/standalone/.next/prerender-manifest.json +3 -3
  5. package/.next/standalone/.next/required-server-files.json +4 -4
  6. package/.next/standalone/.next/routes-manifest.json +6 -0
  7. package/.next/standalone/.next/server/app/(dashboard)/mitm/page.js +2 -2
  8. package/.next/standalone/.next/server/app/(dashboard)/mitm/page.js.nft.json +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/mitm/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/page.js +2 -2
  11. package/.next/standalone/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/_global-error/page.js +3 -3
  14. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  15. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  17. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  18. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  19. package/.next/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  20. package/.next/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  21. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  22. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  23. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  24. package/.next/standalone/.next/server/app/_not-found/page.js +2 -2
  25. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  28. package/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  29. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  30. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  31. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  32. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  33. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  34. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  35. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  36. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  37. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/console-logs/route.js +2 -2
  38. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/console-logs/route_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/logs/route.js +8 -0
  40. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/logs/route.js.nft.json +1 -0
  41. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/logs/route_client-reference-manifest.js +1 -0
  42. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  43. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/settings/route.js +2 -2
  45. package/.next/standalone/.next/server/app/api/cli-tools/antigravity-mitm/settings/route_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
  47. package/.next/standalone/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/api/cli-tools/codex-settings/route.js +3 -3
  49. package/.next/standalone/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  51. package/.next/standalone/.next/server/app/api/cli-tools/copilot-settings/route_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/api/cli-tools/droid-settings/route.js +1 -1
  53. package/.next/standalone/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  54. package/.next/standalone/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  55. package/.next/standalone/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  57. package/.next/standalone/.next/server/app/api/cli-tools/opencode-settings/route_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/api/keys/[id]/route.js +1 -1
  59. package/.next/standalone/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/api/keys/route.js +1 -1
  61. package/.next/standalone/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/locale/route.js +2 -2
  63. package/.next/standalone/.next/server/app/api/locale/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/models/alias/route.js +1 -1
  65. package/.next/standalone/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/models/route.js +1 -1
  67. package/.next/standalone/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/providers/route.js +1 -1
  69. package/.next/standalone/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/settings/route.js +1 -1
  71. package/.next/standalone/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/version/route.js +1 -1
  73. package/.next/standalone/.next/server/app/api/version/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/index.html +1 -1
  75. package/.next/standalone/.next/server/app/index.rsc +4 -4
  76. package/.next/standalone/.next/server/app/index.segments/!KGRhc2hib2FyZCk/__PAGE__.segment.rsc +1 -1
  77. package/.next/standalone/.next/server/app/index.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  78. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +4 -4
  79. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  80. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +3 -3
  81. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  82. package/.next/standalone/.next/server/app/mitm.html +1 -1
  83. package/.next/standalone/.next/server/app/mitm.rsc +5 -5
  84. package/.next/standalone/.next/server/app/mitm.segments/!KGRhc2hib2FyZCk/mitm/__PAGE__.segment.rsc +2 -2
  85. package/.next/standalone/.next/server/app/mitm.segments/!KGRhc2hib2FyZCk/mitm.segment.rsc +1 -1
  86. package/.next/standalone/.next/server/app/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  87. package/.next/standalone/.next/server/app/mitm.segments/_full.segment.rsc +5 -5
  88. package/.next/standalone/.next/server/app/mitm.segments/_head.segment.rsc +1 -1
  89. package/.next/standalone/.next/server/app/mitm.segments/_index.segment.rsc +3 -3
  90. package/.next/standalone/.next/server/app/mitm.segments/_tree.segment.rsc +1 -1
  91. package/.next/standalone/.next/server/app-paths-manifest.json +9 -8
  92. package/.next/standalone/.next/server/chunks/138.js +1 -1
  93. package/.next/standalone/.next/server/chunks/182.js +9 -2
  94. package/.next/standalone/.next/server/chunks/219.js +1 -0
  95. package/.next/standalone/.next/server/chunks/471.js +13 -0
  96. package/.next/standalone/.next/server/chunks/741.js +2 -2
  97. package/.next/standalone/.next/server/chunks/900.js +7 -0
  98. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  99. package/.next/standalone/.next/server/middleware.js +2 -2
  100. package/.next/standalone/.next/server/next-font-manifest.js +1 -1
  101. package/.next/standalone/.next/server/next-font-manifest.json +1 -1
  102. package/.next/standalone/.next/server/pages/404.html +1 -1
  103. package/.next/standalone/.next/server/pages/500.html +2 -2
  104. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  106. package/.next/standalone/.next/static/chunks/{702-726ccbcada41f8fa.js → 702-c4610efa55dfb155.js} +1 -1
  107. package/.next/standalone/.next/static/chunks/{794-e4409998c8ba5c29.js → 794-37dad9bbc14b04b8.js} +1 -1
  108. package/.next/standalone/.next/static/chunks/{852-6b2b2eefb2d99b28.js → 852-d8cad4b0d71288a2.js} +3 -3
  109. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-579c25ca675b41ac.js +1 -0
  110. package/.next/standalone/.next/static/chunks/app/(dashboard)/mitm/page-d25cf1803f6924ee.js +7 -0
  111. package/.next/standalone/.next/static/chunks/app/(dashboard)/{page-a4e7c4e324778903.js → page-5c09ac097fc0cc9b.js} +1 -1
  112. package/.next/standalone/.next/static/chunks/app/_global-error/{page-a4e7c4e324778903.js → page-5c09ac097fc0cc9b.js} +1 -1
  113. package/.next/standalone/.next/static/chunks/app/_not-found/{page-f6a07fd1289f84a5.js → page-038730efde50428c.js} +1 -1
  114. package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/{route-a4e7c4e324778903.js → route-5c09ac097fc0cc9b.js} +1 -1
  115. package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/console-logs/{route-a4e7c4e324778903.js → route-5c09ac097fc0cc9b.js} +1 -1
  116. package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/logs/route-5c09ac097fc0cc9b.js +1 -0
  117. package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-5c09ac097fc0cc9b.js +1 -0
  118. package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/settings/route-5c09ac097fc0cc9b.js +1 -0
  119. package/.next/standalone/.next/static/chunks/app/api/cli-tools/claude-settings/route-5c09ac097fc0cc9b.js +1 -0
  120. package/.next/standalone/.next/static/chunks/app/api/cli-tools/codex-settings/route-5c09ac097fc0cc9b.js +1 -0
  121. package/.next/standalone/.next/static/chunks/app/api/cli-tools/copilot-settings/route-5c09ac097fc0cc9b.js +1 -0
  122. package/.next/standalone/.next/static/chunks/app/api/cli-tools/droid-settings/route-5c09ac097fc0cc9b.js +1 -0
  123. package/.next/standalone/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-5c09ac097fc0cc9b.js +1 -0
  124. package/.next/standalone/.next/static/chunks/app/api/cli-tools/opencode-settings/route-5c09ac097fc0cc9b.js +1 -0
  125. package/.next/standalone/.next/static/chunks/app/api/keys/[id]/route-5c09ac097fc0cc9b.js +1 -0
  126. package/.next/standalone/.next/static/chunks/app/api/keys/route-5c09ac097fc0cc9b.js +1 -0
  127. package/.next/standalone/.next/static/chunks/app/api/locale/route-5c09ac097fc0cc9b.js +1 -0
  128. package/.next/standalone/.next/static/chunks/app/api/models/alias/route-5c09ac097fc0cc9b.js +1 -0
  129. package/.next/standalone/.next/static/chunks/app/api/models/route-5c09ac097fc0cc9b.js +1 -0
  130. package/.next/standalone/.next/static/chunks/app/api/providers/route-5c09ac097fc0cc9b.js +1 -0
  131. package/.next/standalone/.next/static/chunks/app/api/settings/route-5c09ac097fc0cc9b.js +1 -0
  132. package/.next/standalone/.next/static/chunks/app/api/version/route-5c09ac097fc0cc9b.js +1 -0
  133. package/.next/standalone/.next/static/chunks/app/{layout-6de9a5310276adf9.js → layout-6e491caa4df42293.js} +1 -1
  134. package/.next/standalone/.next/static/chunks/{main-9b410d84e10d7a77.js → main-842bf1ddb8ee9ec0.js} +2 -2
  135. package/.next/standalone/.next/static/chunks/{main-app-2ed2446a2e4f75e7.js → main-app-0fea626ed7ee1281.js} +1 -1
  136. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-5c09ac097fc0cc9b.js +1 -0
  137. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-5c09ac097fc0cc9b.js +1 -0
  138. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/global-error-89d8af6ad4f69554.js +1 -0
  139. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-5c09ac097fc0cc9b.js +1 -0
  140. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-5c09ac097fc0cc9b.js +1 -0
  141. package/.next/standalone/.next/static/rZAYFVGk5tWg3Az1gc9jl/_buildManifest.js +1 -0
  142. package/.next/standalone/node_modules/@next/env/package.json +1 -1
  143. package/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
  144. package/.next/standalone/node_modules/next/dist/build/webpack-config.js +3 -3
  145. package/.next/standalone/node_modules/next/dist/compiled/http-proxy/index.js +5 -5
  146. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-experimental.runtime.prod.js +3 -3
  147. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +12 -12
  148. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +3 -3
  149. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js +3 -3
  150. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js +2 -2
  151. package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +2 -2
  152. package/.next/standalone/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js +2 -2
  153. package/.next/standalone/node_modules/next/dist/server/app-render/action-handler.js +7 -11
  154. package/.next/standalone/node_modules/next/dist/server/base-server.js +22 -8
  155. package/.next/standalone/node_modules/next/dist/server/config-schema.js +0 -1
  156. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +1 -1
  157. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  158. package/.next/standalone/node_modules/next/dist/server/image-optimizer.js +22 -148
  159. package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  160. package/.next/standalone/node_modules/next/dist/server/lib/lru-cache.js +1 -2
  161. package/.next/standalone/node_modules/next/dist/server/lib/patch-fetch.js +6 -15
  162. package/.next/standalone/node_modules/next/dist/server/lib/router-server.js +3 -3
  163. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/{block-cross-site-dev.js → block-cross-site.js} +17 -11
  164. package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
  165. package/.next/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +1 -1
  166. package/.next/standalone/node_modules/next/dist/shared/lib/image-config.js +0 -1
  167. package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  168. package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
  169. package/.next/standalone/node_modules/next/package.json +16 -16
  170. package/.next/standalone/package.json +1 -1
  171. package/.next/standalone/server.js +1 -1
  172. package/.next/standalone/src/mitm/manager.js +30 -9
  173. package/bin/arouter.js +292 -0
  174. package/bin/arouter.mjs +264 -111
  175. package/bin/paths.js +23 -0
  176. package/bin/paths.mjs +23 -0
  177. package/package.json +1 -1
  178. package/scripts/postinstall.mjs +0 -4
  179. package/.next/standalone/.next/server/chunks/411.js +0 -1
  180. package/.next/standalone/.next/server/chunks/63.js +0 -13
  181. package/.next/standalone/.next/server/chunks/724.js +0 -7
  182. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-384bfa634ec14bbe.js +0 -1
  183. package/.next/standalone/.next/static/chunks/app/(dashboard)/mitm/page-3dca1ab0735aaa0f.js +0 -7
  184. package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-a4e7c4e324778903.js +0 -1
  185. package/.next/standalone/.next/static/chunks/app/api/cli-tools/antigravity-mitm/settings/route-a4e7c4e324778903.js +0 -1
  186. package/.next/standalone/.next/static/chunks/app/api/cli-tools/claude-settings/route-a4e7c4e324778903.js +0 -1
  187. package/.next/standalone/.next/static/chunks/app/api/cli-tools/codex-settings/route-a4e7c4e324778903.js +0 -1
  188. package/.next/standalone/.next/static/chunks/app/api/cli-tools/copilot-settings/route-a4e7c4e324778903.js +0 -1
  189. package/.next/standalone/.next/static/chunks/app/api/cli-tools/droid-settings/route-a4e7c4e324778903.js +0 -1
  190. package/.next/standalone/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-a4e7c4e324778903.js +0 -1
  191. package/.next/standalone/.next/static/chunks/app/api/cli-tools/opencode-settings/route-a4e7c4e324778903.js +0 -1
  192. package/.next/standalone/.next/static/chunks/app/api/keys/[id]/route-a4e7c4e324778903.js +0 -1
  193. package/.next/standalone/.next/static/chunks/app/api/keys/route-a4e7c4e324778903.js +0 -1
  194. package/.next/standalone/.next/static/chunks/app/api/locale/route-a4e7c4e324778903.js +0 -1
  195. package/.next/standalone/.next/static/chunks/app/api/models/alias/route-a4e7c4e324778903.js +0 -1
  196. package/.next/standalone/.next/static/chunks/app/api/models/route-a4e7c4e324778903.js +0 -1
  197. package/.next/standalone/.next/static/chunks/app/api/providers/route-a4e7c4e324778903.js +0 -1
  198. package/.next/standalone/.next/static/chunks/app/api/settings/route-a4e7c4e324778903.js +0 -1
  199. package/.next/standalone/.next/static/chunks/app/api/version/route-a4e7c4e324778903.js +0 -1
  200. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-a4e7c4e324778903.js +0 -1
  201. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-a4e7c4e324778903.js +0 -1
  202. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/global-error-a42479e2ca7868a9.js +0 -1
  203. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-a4e7c4e324778903.js +0 -1
  204. package/.next/standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-a4e7c4e324778903.js +0 -1
  205. package/.next/standalone/.next/static/uPrRUZ-734mcKsKT6Fb28/_buildManifest.js +0 -1
  206. package/.next/standalone/node_modules/next/dist/server/lib/disk-lru-cache.external.js +0 -57
  207. package/.next/standalone/node_modules/next/dist/server/lib/postponed-request-body.js +0 -64
  208. /package/.next/standalone/.next/static/{uPrRUZ-734mcKsKT6Fb28 → rZAYFVGk5tWg3Az1gc9jl}/_ssgManifest.js +0 -0
@@ -1,10 +1,10 @@
1
1
  1:"$Sreact.fragment"
2
- 2:I[1110,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-384bfa634ec14bbe.js"],"ThemeProvider"]
3
- 3:I[4635,["702","static/chunks/702-726ccbcada41f8fa.js","558","static/chunks/app/layout-6de9a5310276adf9.js"],"RuntimeI18nProvider"]
2
+ 2:I[1110,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-579c25ca675b41ac.js"],"ThemeProvider"]
3
+ 3:I[4635,["702","static/chunks/702-c4610efa55dfb155.js","558","static/chunks/app/layout-6e491caa4df42293.js"],"RuntimeI18nProvider"]
4
4
  4:I[7121,[],""]
5
5
  5:I[4581,[],""]
6
- 6:I[1738,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-384bfa634ec14bbe.js"],"default"]
7
- 7:I[2302,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","46","static/chunks/app/(dashboard)/mitm/page-3dca1ab0735aaa0f.js"],"default"]
6
+ 6:I[1738,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-579c25ca675b41ac.js"],"default"]
7
+ 7:I[2302,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","46","static/chunks/app/(dashboard)/mitm/page-d25cf1803f6924ee.js"],"default"]
8
8
  8:I[484,[],"OutletBoundary"]
9
9
  9:"$Sreact.suspense"
10
10
  b:I[484,[],"ViewportBoundary"]
@@ -13,7 +13,7 @@ f:I[7123,[],""]
13
13
  :HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
14
14
  :HL["/_next/static/css/fb5cc32bdf7f639b.css","style"]
15
15
  :HL["https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","style"]
16
- 0:{"P":null,"b":"uPrRUZ-734mcKsKT6Fb28","c":["","mitm"],"q":"","i":false,"f":[[["",{"children":["(dashboard)",{"children":["mitm",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/fb5cc32bdf7f639b.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"__variable_f367f3 font-sans antialiased","children":["$","$L2",null,{"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L6",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L7",null,{}],null,["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Le"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$f",[]],"S":true}
16
+ 0:{"P":null,"b":"rZAYFVGk5tWg3Az1gc9jl","c":["","mitm"],"q":"","i":false,"f":[[["",{"children":["(dashboard)",{"children":["mitm",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/fb5cc32bdf7f639b.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"__variable_f367f3 font-sans antialiased","children":["$","$L2",null,{"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L6",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L7",null,{}],null,["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Le"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$f",[]],"S":true}
17
17
  c:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","2",{"name":"theme-color","content":"#0a0a0a"}]]
18
18
  10:I[6869,[],"IconMark"]
19
19
  a:null
@@ -1,6 +1,6 @@
1
1
  1:"$Sreact.fragment"
2
- 2:I[2302,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","46","static/chunks/app/(dashboard)/mitm/page-3dca1ab0735aaa0f.js"],"default"]
2
+ 2:I[2302,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","46","static/chunks/app/(dashboard)/mitm/page-d25cf1803f6924ee.js"],"default"]
3
3
  3:I[484,[],"OutletBoundary"]
4
4
  4:"$Sreact.suspense"
5
- 0:{"buildId":"uPrRUZ-734mcKsKT6Fb28","rsc":["$","$1","c",{"children":[["$","$L2",null,{}],null,["$","$L3",null,{"children":["$","$4",null,{"name":"Next.MetadataOutlet","children":"$@5"}]}]]}],"loading":null,"isPartial":false}
5
+ 0:{"buildId":"rZAYFVGk5tWg3Az1gc9jl","rsc":["$","$1","c",{"children":[["$","$L2",null,{}],null,["$","$L3",null,{"children":["$","$4",null,{"name":"Next.MetadataOutlet","children":"$@5"}]}]]}],"loading":null,"isPartial":false}
6
6
  5:null
@@ -1,4 +1,4 @@
1
1
  1:"$Sreact.fragment"
2
2
  2:I[7121,[],""]
3
3
  3:I[4581,[],""]
4
- 0:{"buildId":"uPrRUZ-734mcKsKT6Fb28","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"loading":null,"isPartial":false}
4
+ 0:{"buildId":"rZAYFVGk5tWg3Az1gc9jl","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"loading":null,"isPartial":false}
@@ -1,5 +1,5 @@
1
1
  1:"$Sreact.fragment"
2
- 2:I[1738,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-384bfa634ec14bbe.js"],"default"]
2
+ 2:I[1738,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-579c25ca675b41ac.js"],"default"]
3
3
  3:I[7121,[],""]
4
4
  4:I[4581,[],""]
5
- 0:{"buildId":"uPrRUZ-734mcKsKT6Fb28","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","template":["$","$L4",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]]}],"loading":null,"isPartial":false}
5
+ 0:{"buildId":"rZAYFVGk5tWg3Az1gc9jl","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","template":["$","$L4",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]]}],"loading":null,"isPartial":false}
@@ -1,10 +1,10 @@
1
1
  1:"$Sreact.fragment"
2
- 2:I[1110,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-384bfa634ec14bbe.js"],"ThemeProvider"]
3
- 3:I[4635,["702","static/chunks/702-726ccbcada41f8fa.js","558","static/chunks/app/layout-6de9a5310276adf9.js"],"RuntimeI18nProvider"]
2
+ 2:I[1110,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-579c25ca675b41ac.js"],"ThemeProvider"]
3
+ 3:I[4635,["702","static/chunks/702-c4610efa55dfb155.js","558","static/chunks/app/layout-6e491caa4df42293.js"],"RuntimeI18nProvider"]
4
4
  4:I[7121,[],""]
5
5
  5:I[4581,[],""]
6
- 6:I[1738,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-384bfa634ec14bbe.js"],"default"]
7
- 7:I[2302,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","46","static/chunks/app/(dashboard)/mitm/page-3dca1ab0735aaa0f.js"],"default"]
6
+ 6:I[1738,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-579c25ca675b41ac.js"],"default"]
7
+ 7:I[2302,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","46","static/chunks/app/(dashboard)/mitm/page-d25cf1803f6924ee.js"],"default"]
8
8
  8:I[484,[],"OutletBoundary"]
9
9
  9:"$Sreact.suspense"
10
10
  b:I[484,[],"ViewportBoundary"]
@@ -13,7 +13,7 @@ f:I[7123,[],""]
13
13
  :HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
14
14
  :HL["/_next/static/css/fb5cc32bdf7f639b.css","style"]
15
15
  :HL["https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","style"]
16
- 0:{"P":null,"b":"uPrRUZ-734mcKsKT6Fb28","c":["","mitm"],"q":"","i":false,"f":[[["",{"children":["(dashboard)",{"children":["mitm",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/fb5cc32bdf7f639b.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"__variable_f367f3 font-sans antialiased","children":["$","$L2",null,{"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L6",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L7",null,{}],null,["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Le"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$f",[]],"S":true}
16
+ 0:{"P":null,"b":"rZAYFVGk5tWg3Az1gc9jl","c":["","mitm"],"q":"","i":false,"f":[[["",{"children":["(dashboard)",{"children":["mitm",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/fb5cc32bdf7f639b.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"__variable_f367f3 font-sans antialiased","children":["$","$L2",null,{"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L6",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L7",null,{}],null,["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Le"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$f",[]],"S":true}
17
17
  c:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","2",{"name":"theme-color","content":"#0a0a0a"}]]
18
18
  10:I[6869,[],"IconMark"]
19
19
  a:null
@@ -3,4 +3,4 @@
3
3
  3:I[484,[],"MetadataBoundary"]
4
4
  4:"$Sreact.suspense"
5
5
  5:I[6869,[],"IconMark"]
6
- 0:{"buildId":"uPrRUZ-734mcKsKT6Fb28","rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","2",{"name":"theme-color","content":"#0a0a0a"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"aRouter - Power by C' Jay Nguyen"}],["$","meta","1",{"name":"description","content":"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly."}],["$","link","2",{"rel":"icon","href":"/favicon.svg"}],["$","$L5","3",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"loading":null,"isPartial":false}
6
+ 0:{"buildId":"rZAYFVGk5tWg3Az1gc9jl","rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","2",{"name":"theme-color","content":"#0a0a0a"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"aRouter - Power by C' Jay Nguyen"}],["$","meta","1",{"name":"description","content":"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly."}],["$","link","2",{"rel":"icon","href":"/favicon.svg"}],["$","$L5","3",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"loading":null,"isPartial":false}
@@ -1,8 +1,8 @@
1
1
  1:"$Sreact.fragment"
2
- 2:I[1110,["852","static/chunks/852-6b2b2eefb2d99b28.js","702","static/chunks/702-726ccbcada41f8fa.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-384bfa634ec14bbe.js"],"ThemeProvider"]
3
- 3:I[4635,["702","static/chunks/702-726ccbcada41f8fa.js","558","static/chunks/app/layout-6de9a5310276adf9.js"],"RuntimeI18nProvider"]
2
+ 2:I[1110,["852","static/chunks/852-d8cad4b0d71288a2.js","702","static/chunks/702-c4610efa55dfb155.js","497","static/chunks/497-ccc7bd75dbf8f86a.js","305","static/chunks/app/(dashboard)/layout-579c25ca675b41ac.js"],"ThemeProvider"]
3
+ 3:I[4635,["702","static/chunks/702-c4610efa55dfb155.js","558","static/chunks/app/layout-6e491caa4df42293.js"],"RuntimeI18nProvider"]
4
4
  4:I[7121,[],""]
5
5
  5:I[4581,[],""]
6
6
  :HL["/_next/static/css/fb5cc32bdf7f639b.css","style"]
7
7
  :HL["https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","style"]
8
- 0:{"buildId":"uPrRUZ-734mcKsKT6Fb28","rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/fb5cc32bdf7f639b.css","precedence":"next"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"__variable_f367f3 font-sans antialiased","children":["$","$L2",null,{"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","template":["$","$L5",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]}]]}]]}],"loading":null,"isPartial":false}
8
+ 0:{"buildId":"rZAYFVGk5tWg3Az1gc9jl","rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/fb5cc32bdf7f639b.css","precedence":"next"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[["$","link",null,{"rel":"preconnect","href":"https://fonts.googleapis.com"}],["$","link",null,{"rel":"preconnect","href":"https://fonts.gstatic.com","crossOrigin":"anonymous"}],["$","link",null,{"href":"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","rel":"stylesheet"}]]}],["$","body",null,{"className":"__variable_f367f3 font-sans antialiased","children":["$","$L2",null,{"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","template":["$","$L5",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]}]]}]]}],"loading":null,"isPartial":false}
@@ -1,4 +1,4 @@
1
1
  :HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
2
2
  :HL["/_next/static/css/fb5cc32bdf7f639b.css","style"]
3
3
  :HL["https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap","style"]
4
- 0:{"buildId":"uPrRUZ-734mcKsKT6Fb28","tree":{"name":"","paramType":null,"paramKey":"","hasRuntimePrefetch":false,"slots":{"children":{"name":"(dashboard)","paramType":null,"paramKey":"(dashboard)","hasRuntimePrefetch":false,"slots":{"children":{"name":"mitm","paramType":null,"paramKey":"mitm","hasRuntimePrefetch":false,"slots":{"children":{"name":"__PAGE__","paramType":null,"paramKey":"__PAGE__","hasRuntimePrefetch":false,"slots":null,"isRootLayout":false}},"isRootLayout":false}},"isRootLayout":false}},"isRootLayout":true},"staleTime":300}
4
+ 0:{"buildId":"rZAYFVGk5tWg3Az1gc9jl","tree":{"name":"","paramType":null,"paramKey":"","hasRuntimePrefetch":false,"slots":{"children":{"name":"(dashboard)","paramType":null,"paramKey":"(dashboard)","hasRuntimePrefetch":false,"slots":{"children":{"name":"mitm","paramType":null,"paramKey":"mitm","hasRuntimePrefetch":false,"slots":{"children":{"name":"__PAGE__","paramType":null,"paramKey":"__PAGE__","hasRuntimePrefetch":false,"slots":null,"isRootLayout":false}},"isRootLayout":false}},"isRootLayout":false}},"isRootLayout":true},"staleTime":300}
@@ -1,24 +1,25 @@
1
1
  {
2
- "/_not-found/page": "app/_not-found/page.js",
3
- "/_global-error/page": "app/_global-error/page.js",
4
2
  "/api/cli-tools/antigravity-mitm/alias/route": "app/api/cli-tools/antigravity-mitm/alias/route.js",
5
3
  "/api/cli-tools/antigravity-mitm/route": "app/api/cli-tools/antigravity-mitm/route.js",
6
- "/api/cli-tools/droid-settings/route": "app/api/cli-tools/droid-settings/route.js",
7
4
  "/api/cli-tools/antigravity-mitm/settings/route": "app/api/cli-tools/antigravity-mitm/settings/route.js",
8
5
  "/api/cli-tools/claude-settings/route": "app/api/cli-tools/claude-settings/route.js",
9
- "/api/cli-tools/openclaw-settings/route": "app/api/cli-tools/openclaw-settings/route.js",
10
6
  "/api/cli-tools/codex-settings/route": "app/api/cli-tools/codex-settings/route.js",
11
7
  "/api/cli-tools/copilot-settings/route": "app/api/cli-tools/copilot-settings/route.js",
8
+ "/api/cli-tools/droid-settings/route": "app/api/cli-tools/droid-settings/route.js",
9
+ "/api/cli-tools/openclaw-settings/route": "app/api/cli-tools/openclaw-settings/route.js",
12
10
  "/api/cli-tools/opencode-settings/route": "app/api/cli-tools/opencode-settings/route.js",
13
- "/api/locale/route": "app/api/locale/route.js",
14
11
  "/api/keys/[id]/route": "app/api/keys/[id]/route.js",
12
+ "/api/locale/route": "app/api/locale/route.js",
15
13
  "/api/models/route": "app/api/models/route.js",
16
14
  "/api/providers/route": "app/api/providers/route.js",
17
15
  "/api/settings/route": "app/api/settings/route.js",
18
16
  "/api/version/route": "app/api/version/route.js",
19
- "/api/keys/route": "app/api/keys/route.js",
17
+ "/api/cli-tools/antigravity-mitm/logs/route": "app/api/cli-tools/antigravity-mitm/logs/route.js",
18
+ "/_not-found/page": "app/_not-found/page.js",
19
+ "/_global-error/page": "app/_global-error/page.js",
20
20
  "/api/cli-tools/antigravity-mitm/console-logs/route": "app/api/cli-tools/antigravity-mitm/console-logs/route.js",
21
+ "/api/keys/route": "app/api/keys/route.js",
21
22
  "/api/models/alias/route": "app/api/models/alias/route.js",
22
- "/(dashboard)/mitm/page": "app/(dashboard)/mitm/page.js",
23
- "/(dashboard)/page": "app/(dashboard)/page.js"
23
+ "/(dashboard)/page": "app/(dashboard)/page.js",
24
+ "/(dashboard)/mitm/page": "app/(dashboard)/mitm/page.js"
24
25
  }
@@ -1,3 +1,3 @@
1
- exports.id=138,exports.ids=[138],exports.modules={300:(a,b,c)=>{"use strict";c.d(b,{Zr:()=>e});let d=a=>b=>{try{let c=a(b);if(c instanceof Promise)return c;return{then:a=>d(a)(c),catch(a){return this}}}catch(a){return{then(a){return this},catch:b=>d(b)(a)}}},e=(a,b)=>(c,e,f)=>{let g,h={storage:function(a,b){let c;try{c=a()}catch(a){return}return{getItem:a=>{var b;let d=a=>null===a?null:JSON.parse(a,void 0),e=null!=(b=c.getItem(a))?b:null;return e instanceof Promise?e.then(d):d(e)},setItem:(a,b)=>c.setItem(a,JSON.stringify(b,void 0)),removeItem:a=>c.removeItem(a)}}(()=>window.localStorage),partialize:a=>a,version:0,merge:(a,b)=>({...b,...a}),...b},i=!1,j=0,k=new Set,l=new Set,m=h.storage;if(!m)return a((...a)=>{console.warn(`[zustand persist middleware] Unable to update item '${h.name}', the given storage is currently unavailable.`),c(...a)},e,f);let n=()=>{let a=h.partialize({...e()});return m.setItem(h.name,{state:a,version:h.version})},o=f.setState;f.setState=(a,b)=>(o(a,b),n());let p=a((...a)=>(c(...a),n()),e,f);f.getInitialState=()=>p;let q=()=>{var a,b;if(!m)return;let f=++j;i=!1,k.forEach(a=>{var b;return a(null!=(b=e())?b:p)});let o=(null==(b=h.onRehydrateStorage)?void 0:b.call(h,null!=(a=e())?a:p))||void 0;return d(m.getItem.bind(m))(h.name).then(a=>{if(a)if("number"!=typeof a.version||a.version===h.version)return[!1,a.state];else{if(h.migrate){let b=h.migrate(a.state,a.version);return b instanceof Promise?b.then(a=>[!0,a]):[!0,b]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]}).then(a=>{var b;if(f!==j)return;let[d,i]=a;if(c(g=h.merge(i,null!=(b=e())?b:p),!0),d)return n()}).then(()=>{f===j&&(null==o||o(e(),void 0),g=e(),i=!0,l.forEach(a=>a(g)))}).catch(a=>{f===j&&(null==o||o(void 0,a))})};return f.persist={setOptions:a=>{h={...h,...a},a.storage&&(m=a.storage)},clearStorage:()=>{null==m||m.removeItem(h.name)},getOptions:()=>h,rehydrate:()=>q(),hasHydrated:()=>i,onHydrate:a=>(k.add(a),()=>{k.delete(a)}),onFinishHydration:a=>(l.add(a),()=>{l.delete(a)})},h.skipHydration||q(),g||p}},2116:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={default:function(){return q},useLinkStatus:function(){return s}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(24814),g=c(48249),h=f._(c(67484)),i=c(79925),j=c(30836),k=c(57272),l=c(30167),m=c(75729);c(95478);let n=c(78756);c(52836);let o=c(10881);function p(a){return"string"==typeof a?a:(0,i.formatUrl)(a)}function q(a){var b;let c,d,e,[f,i]=(0,h.useOptimistic)(n.IDLE_LINK_STATUS),q=(0,h.useRef)(null),{href:s,as:t,children:u,prefetch:v=null,passHref:w,replace:x,shallow:y,scroll:z,onClick:A,onMouseEnter:B,onTouchStart:C,legacyBehavior:D=!1,onNavigate:E,ref:F,unstable_dynamicOnHover:G,...H}=a;c=u,D&&("string"==typeof c||"number"==typeof c)&&(c=(0,g.jsx)("a",{children:c}));let I=h.default.useContext(j.AppRouterContext),J=!1!==v,K=!1!==v?null===(b=v)||"auto"===b?o.FetchStrategy.PPR:o.FetchStrategy.Full:o.FetchStrategy.PPR,{href:L,as:M}=h.default.useMemo(()=>{let a=p(s);return{href:a,as:t?p(t):a}},[s,t]);if(D){if(c?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});d=h.default.Children.only(c)}let N=D?d&&"object"==typeof d&&d.ref:F,O=h.default.useCallback(a=>(null!==I&&(q.current=(0,n.mountLinkInstance)(a,L,I,K,J,i)),()=>{q.current&&((0,n.unmountLinkForCurrentNavigation)(q.current),q.current=null),(0,n.unmountPrefetchableInstance)(a)}),[J,L,I,K,i]),P={ref:(0,k.useMergedRef)(O,N),onClick(a){if((D||"function"!=typeof A||A(a),D&&d.props&&"function"==typeof d.props.onClick&&d.props.onClick(a),I)&&!a.defaultPrevented);},onMouseEnter(a){D||"function"!=typeof B||B(a),D&&d.props&&"function"==typeof d.props.onMouseEnter&&d.props.onMouseEnter(a),I&&J&&(0,n.onNavigationIntent)(a.currentTarget,!0===G)},onTouchStart:function(a){D||"function"!=typeof C||C(a),D&&d.props&&"function"==typeof d.props.onTouchStart&&d.props.onTouchStart(a),I&&J&&(0,n.onNavigationIntent)(a.currentTarget,!0===G)}};return(0,l.isAbsoluteUrl)(M)?P.href=M:D&&!w&&("a"!==d.type||"href"in d.props)||(P.href=(0,m.addBasePath)(M)),e=D?h.default.cloneElement(d,P):(0,g.jsx)("a",{...H,...P,children:c}),(0,g.jsx)(r.Provider,{value:f,children:e})}c(13366);let r=(0,h.createContext)(n.IDLE_LINK_STATUS),s=()=>(0,h.useContext)(r);("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},8834:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={VALID_LOADERS:function(){return e},imageConfigDefault:function(){return f}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});let e=["default","imgix","cloudinary","akamai","custom"],f={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},10571:(a,b)=>{"use strict";function c(a){let b=a.indexOf("#"),c=a.indexOf("?"),d=c>-1&&(b<0||c<b);return d||b>-1?{pathname:a.substring(0,d?c:b),query:d?a.substring(c,b>-1?b:void 0):"",hash:b>-1?a.slice(b):""}:{pathname:a,query:"",hash:""}}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"parsePath",{enumerable:!0,get:function(){return c}})},13366:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"errorOnce",{enumerable:!0,get:function(){return c}});let c=a=>{}},14953:(a,b,c)=>{"use strict";var d=c(68662);function e(){}function f(){}f.resetWarningCache=e,a.exports=function(){function a(a,b,c,e,f,g){if(g!==d){var h=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw h.name="Invariant Violation",h}}function b(){return a}a.isRequired=a;var c={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:b,element:a,elementType:a,instanceOf:b,node:a,objectOf:b,oneOf:b,oneOfType:b,shape:b,exact:b,checkPropTypes:f,resetWarningCache:e};return c.PropTypes=c,c}},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"usePathname")&&c.d(b,{usePathname:function(){return d.usePathname}}),c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}})},19226:(a,b,c)=>{"use strict";a.exports=c(81155).vendored.contexts.RouterContext},25374:(a,b)=>{"use strict";function c({widthInt:a,heightInt:b,blurWidth:c,blurHeight:d,blurDataURL:e,objectFit:f}){let g=c?40*c:a,h=d?40*d:b,i=g&&h?`viewBox='0 0 ${g} ${h}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${i}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${i?"none":"contain"===f?"xMidYMid":"cover"===f?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${e}'/%3E%3C/svg%3E`}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getImageBlurSvg",{enumerable:!0,get:function(){return c}})},26201:(a,b,c)=>{"use strict";a.exports=c(81155).vendored.contexts.ImageConfigContext},28039:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return g}});let d=c(92873),e=c(44217);function f({config:a,src:b,width:c,quality:f}){if(b.startsWith("/")&&b.includes("?")&&a.localPatterns?.length===1&&"**"===a.localPatterns[0].pathname&&""===a.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${b}" is using a query string which is not configured in images.localPatterns.
1
+ exports.id=138,exports.ids=[138],exports.modules={300:(a,b,c)=>{"use strict";c.d(b,{Zr:()=>e});let d=a=>b=>{try{let c=a(b);if(c instanceof Promise)return c;return{then:a=>d(a)(c),catch(a){return this}}}catch(a){return{then(a){return this},catch:b=>d(b)(a)}}},e=(a,b)=>(c,e,f)=>{let g,h={storage:function(a,b){let c;try{c=a()}catch(a){return}return{getItem:a=>{var b;let d=a=>null===a?null:JSON.parse(a,void 0),e=null!=(b=c.getItem(a))?b:null;return e instanceof Promise?e.then(d):d(e)},setItem:(a,b)=>c.setItem(a,JSON.stringify(b,void 0)),removeItem:a=>c.removeItem(a)}}(()=>window.localStorage),partialize:a=>a,version:0,merge:(a,b)=>({...b,...a}),...b},i=!1,j=0,k=new Set,l=new Set,m=h.storage;if(!m)return a((...a)=>{console.warn(`[zustand persist middleware] Unable to update item '${h.name}', the given storage is currently unavailable.`),c(...a)},e,f);let n=()=>{let a=h.partialize({...e()});return m.setItem(h.name,{state:a,version:h.version})},o=f.setState;f.setState=(a,b)=>(o(a,b),n());let p=a((...a)=>(c(...a),n()),e,f);f.getInitialState=()=>p;let q=()=>{var a,b;if(!m)return;let f=++j;i=!1,k.forEach(a=>{var b;return a(null!=(b=e())?b:p)});let o=(null==(b=h.onRehydrateStorage)?void 0:b.call(h,null!=(a=e())?a:p))||void 0;return d(m.getItem.bind(m))(h.name).then(a=>{if(a)if("number"!=typeof a.version||a.version===h.version)return[!1,a.state];else{if(h.migrate){let b=h.migrate(a.state,a.version);return b instanceof Promise?b.then(a=>[!0,a]):[!0,b]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]}).then(a=>{var b;if(f!==j)return;let[d,i]=a;if(c(g=h.merge(i,null!=(b=e())?b:p),!0),d)return n()}).then(()=>{f===j&&(null==o||o(e(),void 0),g=e(),i=!0,l.forEach(a=>a(g)))}).catch(a=>{f===j&&(null==o||o(void 0,a))})};return f.persist={setOptions:a=>{h={...h,...a},a.storage&&(m=a.storage)},clearStorage:()=>{null==m||m.removeItem(h.name)},getOptions:()=>h,rehydrate:()=>q(),hasHydrated:()=>i,onHydrate:a=>(k.add(a),()=>{k.delete(a)}),onFinishHydration:a=>(l.add(a),()=>{l.delete(a)})},h.skipHydration||q(),g||p}},2116:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={default:function(){return q},useLinkStatus:function(){return s}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(24814),g=c(48249),h=f._(c(67484)),i=c(79925),j=c(30836),k=c(57272),l=c(30167),m=c(75729);c(95478);let n=c(78756);c(52836);let o=c(10881);function p(a){return"string"==typeof a?a:(0,i.formatUrl)(a)}function q(a){var b;let c,d,e,[f,i]=(0,h.useOptimistic)(n.IDLE_LINK_STATUS),q=(0,h.useRef)(null),{href:s,as:t,children:u,prefetch:v=null,passHref:w,replace:x,shallow:y,scroll:z,onClick:A,onMouseEnter:B,onTouchStart:C,legacyBehavior:D=!1,onNavigate:E,ref:F,unstable_dynamicOnHover:G,...H}=a;c=u,D&&("string"==typeof c||"number"==typeof c)&&(c=(0,g.jsx)("a",{children:c}));let I=h.default.useContext(j.AppRouterContext),J=!1!==v,K=!1!==v?null===(b=v)||"auto"===b?o.FetchStrategy.PPR:o.FetchStrategy.Full:o.FetchStrategy.PPR,{href:L,as:M}=h.default.useMemo(()=>{let a=p(s);return{href:a,as:t?p(t):a}},[s,t]);if(D){if(c?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});d=h.default.Children.only(c)}let N=D?d&&"object"==typeof d&&d.ref:F,O=h.default.useCallback(a=>(null!==I&&(q.current=(0,n.mountLinkInstance)(a,L,I,K,J,i)),()=>{q.current&&((0,n.unmountLinkForCurrentNavigation)(q.current),q.current=null),(0,n.unmountPrefetchableInstance)(a)}),[J,L,I,K,i]),P={ref:(0,k.useMergedRef)(O,N),onClick(a){if((D||"function"!=typeof A||A(a),D&&d.props&&"function"==typeof d.props.onClick&&d.props.onClick(a),I)&&!a.defaultPrevented);},onMouseEnter(a){D||"function"!=typeof B||B(a),D&&d.props&&"function"==typeof d.props.onMouseEnter&&d.props.onMouseEnter(a),I&&J&&(0,n.onNavigationIntent)(a.currentTarget,!0===G)},onTouchStart:function(a){D||"function"!=typeof C||C(a),D&&d.props&&"function"==typeof d.props.onTouchStart&&d.props.onTouchStart(a),I&&J&&(0,n.onNavigationIntent)(a.currentTarget,!0===G)}};return(0,l.isAbsoluteUrl)(M)?P.href=M:D&&!w&&("a"!==d.type||"href"in d.props)||(P.href=(0,m.addBasePath)(M)),e=D?h.default.cloneElement(d,P):(0,g.jsx)("a",{...H,...P,children:c}),(0,g.jsx)(r.Provider,{value:f,children:e})}c(13366);let r=(0,h.createContext)(n.IDLE_LINK_STATUS),s=()=>(0,h.useContext)(r);("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},8834:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={VALID_LOADERS:function(){return e},imageConfigDefault:function(){return f}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});let e=["default","imgix","cloudinary","akamai","custom"],f={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},10571:(a,b)=>{"use strict";function c(a){let b=a.indexOf("#"),c=a.indexOf("?"),d=c>-1&&(b<0||c<b);return d||b>-1?{pathname:a.substring(0,d?c:b),query:d?a.substring(c,b>-1?b:void 0):"",hash:b>-1?a.slice(b):""}:{pathname:a,query:"",hash:""}}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"parsePath",{enumerable:!0,get:function(){return c}})},13366:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"errorOnce",{enumerable:!0,get:function(){return c}});let c=a=>{}},14953:(a,b,c)=>{"use strict";var d=c(68662);function e(){}function f(){}f.resetWarningCache=e,a.exports=function(){function a(a,b,c,e,f,g){if(g!==d){var h=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw h.name="Invariant Violation",h}}function b(){return a}a.isRequired=a;var c={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:b,element:a,elementType:a,instanceOf:b,node:a,objectOf:b,oneOf:b,oneOfType:b,shape:b,exact:b,checkPropTypes:f,resetWarningCache:e};return c.PropTypes=c,c}},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"usePathname")&&c.d(b,{usePathname:function(){return d.usePathname}}),c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}})},19226:(a,b,c)=>{"use strict";a.exports=c(81155).vendored.contexts.RouterContext},25374:(a,b)=>{"use strict";function c({widthInt:a,heightInt:b,blurWidth:c,blurHeight:d,blurDataURL:e,objectFit:f}){let g=c?40*c:a,h=d?40*d:b,i=g&&h?`viewBox='0 0 ${g} ${h}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${i}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${i?"none":"contain"===f?"xMidYMid":"cover"===f?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${e}'/%3E%3C/svg%3E`}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getImageBlurSvg",{enumerable:!0,get:function(){return c}})},26201:(a,b,c)=>{"use strict";a.exports=c(81155).vendored.contexts.ImageConfigContext},28039:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return g}});let d=c(92873),e=c(44217);function f({config:a,src:b,width:c,quality:f}){if(b.startsWith("/")&&b.includes("?")&&a.localPatterns?.length===1&&"**"===a.localPatterns[0].pathname&&""===a.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${b}" is using a query string which is not configured in images.localPatterns.
2
2
  Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let g=(0,d.findClosestQuality)(f,a),h=(0,e.getDeploymentId)();return`${a.path}?url=${encodeURIComponent(b)}&w=${c}&q=${g}${b.startsWith("/")&&h?`&dpl=${h}`:""}`}f.__next_img_default=!0;let g=f},30167:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={DecodeError:function(){return q},MiddlewareNotFoundError:function(){return u},MissingStaticPage:function(){return t},NormalizeError:function(){return r},PageNotFoundError:function(){return s},SP:function(){return o},ST:function(){return p},WEB_VITALS:function(){return e},execOnce:function(){return f},getDisplayName:function(){return k},getLocationOrigin:function(){return i},getURL:function(){return j},isAbsoluteUrl:function(){return h},isResSent:function(){return l},loadGetInitialProps:function(){return n},normalizeRepeatedSlashes:function(){return m},stringifyError:function(){return v}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});let e=["CLS","FCP","FID","INP","LCP","TTFB"];function f(a){let b,c=!1;return(...d)=>(c||(c=!0,b=a(...d)),b)}let g=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,h=a=>g.test(a);function i(){let{protocol:a,hostname:b,port:c}=window.location;return`${a}//${b}${c?":"+c:""}`}function j(){let{href:a}=window.location,b=i();return a.substring(b.length)}function k(a){return"string"==typeof a?a:a.displayName||a.name||"Unknown"}function l(a){return a.finished||a.headersSent}function m(a){let b=a.split("?");return b[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(b[1]?`?${b.slice(1).join("?")}`:"")}async function n(a,b){let c=b.res||b.ctx&&b.ctx.res;if(!a.getInitialProps)return b.ctx&&b.Component?{pageProps:await n(b.Component,b.ctx)}:{};let d=await a.getInitialProps(b);if(c&&l(c))return d;if(!d)throw Object.defineProperty(Error(`"${k(a)}.getInitialProps()" should resolve to an object. But found "${d}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return d}let o="u">typeof performance,p=o&&["mark","measure","getEntriesByName"].every(a=>"function"==typeof performance[a]);class q extends Error{}class r extends Error{}class s extends Error{constructor(a){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${a}`}}class t extends Error{constructor(a,b){super(),this.message=`Failed to load static file for page: ${a} ${b}`}}class u extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function v(a){return JSON.stringify({message:a.message,stack:a.stack})}},31417:(a,b,c)=>{"use strict";c.d(b,{v:()=>g});var d=c(67484);let e=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a))},g=b=a(d,e,f);return f},f=a=>{let b=a?e(a):e,c=a=>(function(a,b=a=>a){let c=d.useSyncExternalStore(a.subscribe,d.useCallback(()=>b(a.getState()),[a,b]),d.useCallback(()=>b(a.getInitialState()),[a,b]));return d.useDebugValue(c),c})(b,a);return Object.assign(c,b),c},g=a=>a?f(a):f},34956:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"normalizePathTrailingSlash",{enumerable:!0,get:function(){return f}});let d=c(62043),e=c(10571),f=a=>{if(!a.startsWith("/"))return a;let{pathname:b,query:c,hash:f}=(0,e.parsePath)(a);return`${(0,d.removeTrailingSlash)(b)}${c}${f}`};("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},38895:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"getImgProps",{enumerable:!0,get:function(){return j}}),c(95478);let d=c(44217),e=c(25374),f=c(8834),g=["-moz-initial","fill","none","scale-down",void 0];function h(a){return void 0!==a.default}function i(a){return void 0===a?a:"number"==typeof a?Number.isFinite(a)?a:NaN:"string"==typeof a&&/^[0-9]+$/.test(a)?parseInt(a,10):NaN}function j({src:a,sizes:b,unoptimized:c=!1,priority:j=!1,preload:k=!1,loading:l,className:m,quality:n,width:o,height:p,fill:q=!1,style:r,overrideSrc:s,onLoad:t,onLoadingComplete:u,placeholder:v="empty",blurDataURL:w,fetchPriority:x,decoding:y="async",layout:z,objectFit:A,objectPosition:B,lazyBoundary:C,lazyRoot:D,...E},F){var G;let H,I,J,{imgConf:K,showAltText:L,blurComplete:M,defaultLoader:N}=F,O=K||f.imageConfigDefault;if("allSizes"in O)H=O;else{let a=[...O.deviceSizes,...O.imageSizes].sort((a,b)=>a-b),b=O.deviceSizes.sort((a,b)=>a-b),c=O.qualities?.sort((a,b)=>a-b);H={...O,allSizes:a,deviceSizes:b,qualities:c}}if(void 0===N)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let P=E.loader||N;delete E.loader,delete E.srcSet;let Q="__next_img_default"in P;if(Q){if("custom"===H.loader)throw Object.defineProperty(Error(`Image with src "${a}" is missing "loader" prop.
3
3
  Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let a=P;P=b=>{let{config:c,...d}=b;return a(d)}}if(z){"fill"===z&&(q=!0);let a={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[z];a&&(r={...r,...a});let c={responsive:"100vw",fill:"100vw"}[z];c&&!b&&(b=c)}let R="",S=i(o),T=i(p);if((G=a)&&"object"==typeof G&&(h(G)||void 0!==G.src)){let b=h(a)?a.default:a;if(!b.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(b)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!b.height||!b.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(b)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(I=b.blurWidth,J=b.blurHeight,w=w||b.blurDataURL,R=b.src,!q)if(S||T){if(S&&!T){let a=S/b.width;T=Math.round(b.height*a)}else if(!S&&T){let a=T/b.height;S=Math.round(b.width*a)}}else S=b.width,T=b.height}let U=!j&&!k&&("lazy"===l||void 0===l);(!(a="string"==typeof a?a:R)||a.startsWith("data:")||a.startsWith("blob:"))&&(c=!0,U=!1),H.unoptimized&&(c=!0),Q&&!H.dangerouslyAllowSVG&&a.split("?",1)[0].endsWith(".svg")&&(c=!0);let V=i(n),W=Object.assign(q?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:A,objectPosition:B}:{},L?{}:{color:"transparent"},r),X=M||"empty"===v?null:"blur"===v?`url("data:image/svg+xml;charset=utf-8,${(0,e.getImageBlurSvg)({widthInt:S,heightInt:T,blurWidth:I,blurHeight:J,blurDataURL:w||"",objectFit:W.objectFit})}")`:`url("${v}")`,Y=g.includes(W.objectFit)?"fill"===W.objectFit?"100% 100%":"cover":W.objectFit,Z=X?{backgroundSize:Y,backgroundPosition:W.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:X}:{},$=function({config:a,src:b,unoptimized:c,width:e,quality:f,sizes:g,loader:h}){if(c){let a=(0,d.getDeploymentId)();if(b.startsWith("/")&&!b.startsWith("//")&&a){let c=b.includes("?")?"&":"?";b=`${b}${c}dpl=${a}`}return{src:b,srcSet:void 0,sizes:void 0}}let{widths:i,kind:j}=function({deviceSizes:a,allSizes:b},c,d){if(d){let c=/(^|\s)(1?\d?\d)vw/g,e=[];for(let a;a=c.exec(d);)e.push(parseInt(a[2]));if(e.length){let c=.01*Math.min(...e);return{widths:b.filter(b=>b>=a[0]*c),kind:"w"}}return{widths:b,kind:"w"}}return"number"!=typeof c?{widths:a,kind:"w"}:{widths:[...new Set([c,2*c].map(a=>b.find(b=>b>=a)||b[b.length-1]))],kind:"x"}}(a,e,g),k=i.length-1;return{sizes:g||"w"!==j?g:"100vw",srcSet:i.map((c,d)=>`${h({config:a,src:b,quality:f,width:c})} ${"w"===j?c:d+1}${j}`).join(", "),src:h({config:a,src:b,quality:f,width:i[k]})}}({config:H,src:a,unoptimized:c,width:S,quality:V,sizes:b,loader:P}),_=U?"lazy":l;return{props:{...E,loading:_,fetchPriority:x,width:S,height:T,decoding:y,className:m,style:{...W,...Z},sizes:$.sizes,srcSet:$.srcSet,src:s||$.src},meta:{unoptimized:c,preload:k||j,placeholder:v,fill:q}}}},49646:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={default:function(){return p},defaultHead:function(){return l}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(40399),g=c(24814),h=c(48249),i=g._(c(67484)),j=f._(c(98917)),k=c(89719);function l(){return[(0,h.jsx)("meta",{charSet:"utf-8"},"charset"),(0,h.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function m(a,b){return"string"==typeof b||"number"==typeof b?a:b.type===i.default.Fragment?a.concat(i.default.Children.toArray(b.props.children).reduce((a,b)=>"string"==typeof b||"number"==typeof b?a:a.concat(b),[])):a.concat(b)}c(95478);let n=["name","httpEquiv","charSet","itemProp"];function o(a){let b,c,d,e;return a.reduce(m,[]).reverse().concat(l().reverse()).filter((b=new Set,c=new Set,d=new Set,e={},a=>{let f=!0,g=!1;if(a.key&&"number"!=typeof a.key&&a.key.indexOf("$")>0){g=!0;let c=a.key.slice(a.key.indexOf("$")+1);b.has(c)?f=!1:b.add(c)}switch(a.type){case"title":case"base":c.has(a.type)?f=!1:c.add(a.type);break;case"meta":for(let b=0,c=n.length;b<c;b++){let c=n[b];if(a.props.hasOwnProperty(c))if("charSet"===c)d.has(c)?f=!1:d.add(c);else{let b=a.props[c],d=e[c]||new Set;("name"!==c||!g)&&d.has(b)?f=!1:(d.add(b),e[c]=d)}}}return f})).reverse().map((a,b)=>{let c=a.key||b;return i.default.cloneElement(a,{key:c})})}let p=function({children:a}){let b=(0,i.useContext)(k.HeadManagerContext);return(0,h.jsx)(j.default,{reduceComponentsToState:o,headManager:b,children:a})};("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},49885:(a,b,c)=>{a.exports=c(14953)()},52836:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isLocalURL",{enumerable:!0,get:function(){return f}});let d=c(30167),e=c(71742);function f(a){if(!(0,d.isAbsoluteUrl)(a))return!0;try{let b=(0,d.getLocationOrigin)(),c=new URL(a,b);return c.origin===b&&(0,e.hasBasePath)(c.pathname)}catch(a){return!1}}},55091:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return f}});let d=c(5735),e=c(22675);function f(){return(0,d.jsx)(e.HTTPAccessErrorFallback,{status:404,message:"This page could not be found."})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},55729:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"pathHasPrefix",{enumerable:!0,get:function(){return e}});let d=c(10571);function e(a,b){if("string"!=typeof a)return!1;let{pathname:c}=(0,d.parsePath)(a);return c===b||c.startsWith(b+"/")}},57272:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"useMergedRef",{enumerable:!0,get:function(){return e}});let d=c(67484);function e(a,b){let c=(0,d.useRef)(null),e=(0,d.useRef)(null);return(0,d.useCallback)(d=>{if(null===d){let a=c.current;a&&(c.current=null,a());let b=e.current;b&&(e.current=null,b())}else a&&(c.current=f(a,d)),b&&(e.current=f(b,d))},[a,b])}function f(a,b){if("function"!=typeof a)return a.current=b,()=>{a.current=null};{let c=a(b);return"function"==typeof c?c:()=>a(null)}}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},62043:(a,b)=>{"use strict";function c(a){return a.replace(/\/$/,"")||"/"}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"removeTrailingSlash",{enumerable:!0,get:function(){return c}})},67095:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={default:function(){return k},getImageProps:function(){return j}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(40399),g=c(38895),h=c(73836),i=f._(c(28039));function j(a){let{props:b}=(0,g.getImgProps)(a,{defaultLoader:i.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0}});for(let[a,c]of Object.entries(b))void 0===c&&delete b[a];return{props:b}}let k=h.Image},68662:a=>{"use strict";a.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},71e3:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"addPathPrefix",{enumerable:!0,get:function(){return e}});let d=c(10571);function e(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:e,hash:f}=(0,d.parsePath)(a);return`${b}${c}${e}${f}`}},71742:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"hasBasePath",{enumerable:!0,get:function(){return e}});let d=c(55729);function e(a){return(0,d.pathHasPrefix)(a,"")}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},73836:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"Image",{enumerable:!0,get:function(){return u}});let d=c(40399),e=c(24814),f=c(48249),g=e._(c(67484)),h=d._(c(74429)),i=d._(c(49646)),j=c(38895),k=c(8834),l=c(26201);c(95478);let m=c(19226),n=d._(c(28039)),o=c(57272),p={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0};function q(a,b,c,d,e,f,g){let h=a?.src;a&&a["data-loaded-src"]!==h&&(a["data-loaded-src"]=h,("decode"in a?a.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(a.parentElement&&a.isConnected){if("empty"!==b&&e(!0),c?.current){let b=new Event("load");Object.defineProperty(b,"target",{writable:!1,value:a});let d=!1,e=!1;c.current({...b,nativeEvent:b,currentTarget:a,target:a,isDefaultPrevented:()=>d,isPropagationStopped:()=>e,persist:()=>{},preventDefault:()=>{d=!0,b.preventDefault()},stopPropagation:()=>{e=!0,b.stopPropagation()}})}d?.current&&d.current(a)}}))}function r(a){return g.use?{fetchPriority:a}:{fetchpriority:a}}globalThis.__NEXT_IMAGE_IMPORTED=!0;let s=(0,g.forwardRef)(({src:a,srcSet:b,sizes:c,height:d,width:e,decoding:h,className:i,style:j,fetchPriority:k,placeholder:l,loading:m,unoptimized:n,fill:p,onLoadRef:s,onLoadingCompleteRef:t,setBlurComplete:u,setShowAltText:v,sizesInput:w,onLoad:x,onError:y,...z},A)=>{let B=(0,g.useCallback)(a=>{a&&(y&&(a.src=a.src),a.complete&&q(a,l,s,t,u,n,w))},[a,l,s,t,u,y,n,w]),C=(0,o.useMergedRef)(A,B);return(0,f.jsx)("img",{...z,...r(k),loading:m,width:e,height:d,decoding:h,"data-nimg":p?"fill":"1",className:i,style:j,sizes:c,srcSet:b,src:a,ref:C,onLoad:a=>{q(a.currentTarget,l,s,t,u,n,w)},onError:a=>{v(!0),"empty"!==l&&u(!0),y&&y(a)}})});function t({isAppRouter:a,imgAttributes:b}){let c={as:"image",imageSrcSet:b.srcSet,imageSizes:b.sizes,crossOrigin:b.crossOrigin,referrerPolicy:b.referrerPolicy,...r(b.fetchPriority)};return a&&h.default.preload?(h.default.preload(b.src,c),null):(0,f.jsx)(i.default,{children:(0,f.jsx)("link",{rel:"preload",href:b.srcSet?void 0:b.src,...c},"__nimg-"+b.src+b.srcSet+b.sizes)})}let u=(0,g.forwardRef)((a,b)=>{let c=(0,g.useContext)(m.RouterContext),d=(0,g.useContext)(l.ImageConfigContext),e=(0,g.useMemo)(()=>{let a=p||d||k.imageConfigDefault,b=[...a.deviceSizes,...a.imageSizes].sort((a,b)=>a-b),c=a.deviceSizes.sort((a,b)=>a-b),e=a.qualities?.sort((a,b)=>a-b);return{...a,allSizes:b,deviceSizes:c,qualities:e,localPatterns:d?.localPatterns}},[d]),{onLoad:h,onLoadingComplete:i}=a,o=(0,g.useRef)(h);(0,g.useEffect)(()=>{o.current=h},[h]);let q=(0,g.useRef)(i);(0,g.useEffect)(()=>{q.current=i},[i]);let[r,u]=(0,g.useState)(!1),[v,w]=(0,g.useState)(!1),{props:x,meta:y}=(0,j.getImgProps)(a,{defaultLoader:n.default,imgConf:e,blurComplete:r,showAltText:v});return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(s,{...x,unoptimized:y.unoptimized,placeholder:y.placeholder,fill:y.fill,onLoadRef:o,onLoadingCompleteRef:q,setBlurComplete:u,setShowAltText:w,sizesInput:a.sizes,ref:b}),y.preload?(0,f.jsx)(t,{isAppRouter:!c,imgAttributes:x}):null]})});("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},75329:a=>{a.exports={style:{fontFamily:"'Inter', 'Inter Fallback'",fontStyle:"normal"},className:"__className_f367f3",variable:"__variable_f367f3"}},75729:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"addBasePath",{enumerable:!0,get:function(){return f}});let d=c(71e3),e=c(34956);function f(a,b){return(0,e.normalizePathTrailingSlash)((0,d.addPathPrefix)(a,""))}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},79925:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var d={formatUrl:function(){return h},formatWithValidation:function(){return j},urlObjectKeys:function(){return i}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(24814)._(c(90485)),g=/https?|ftp|gopher|file/;function h(a){let{auth:b,hostname:c}=a,d=a.protocol||"",e=a.pathname||"",h=a.hash||"",i=a.query||"",j=!1;b=b?encodeURIComponent(b).replace(/%3A/i,":")+"@":"",a.host?j=b+a.host:c&&(j=b+(~c.indexOf(":")?`[${c}]`:c),a.port&&(j+=":"+a.port)),i&&"object"==typeof i&&(i=String(f.urlQueryToSearchParams(i)));let k=a.search||i&&`?${i}`||"";return d&&!d.endsWith(":")&&(d+=":"),a.slashes||(!d||g.test(d))&&!1!==j?(j="//"+(j||""),e&&"/"!==e[0]&&(e="/"+e)):j||(j=""),h&&"#"!==h[0]&&(h="#"+h),k&&"?"!==k[0]&&(k="?"+k),e=e.replace(/[?#]/g,encodeURIComponent),k=k.replace("#","%23"),`${d}${j}${e}${k}${h}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function j(a){return h(a)}},81220:(a,b,c)=>{"use strict";c.d(b,{default:()=>e.a});var d=c(67095),e=c.n(d)},89719:(a,b,c)=>{"use strict";a.exports=c(81155).vendored.contexts.HeadManagerContext},90485:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={assign:function(){return h},searchParamsToUrlQuery:function(){return e},urlQueryToSearchParams:function(){return g}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});function e(a){let b={};for(let[c,d]of a.entries()){let a=b[c];void 0===a?b[c]=d:Array.isArray(a)?a.push(d):b[c]=[a,d]}return b}function f(a){return"string"==typeof a?a:("number"!=typeof a||isNaN(a))&&"boolean"!=typeof a?"":String(a)}function g(a){let b=new URLSearchParams;for(let[c,d]of Object.entries(a))if(Array.isArray(d))for(let a of d)b.append(c,f(a));else b.set(c,f(d));return b}function h(a,...b){for(let c of b){for(let b of c.keys())a.delete(b);for(let[b,d]of c.entries())a.append(b,d)}return a}},92873:(a,b)=>{"use strict";function c(a,b){let c=a||75;return b?.qualities?.length?b.qualities.reduce((a,b)=>Math.abs(b-c)<Math.abs(a-c)?b:a,0):c}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"findClosestQuality",{enumerable:!0,get:function(){return c}})},98917:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return f}});let d=c(67484),e=()=>{};function f(a){let{headManager:b,reduceComponentsToState:c}=a;function f(){if(b&&b.mountedInstances){let a=d.Children.toArray(Array.from(b.mountedInstances).filter(Boolean));b.updateHead(c(a))}}return b?.mountedInstances?.add(a.children),f(),e(()=>(b?.mountedInstances?.add(a.children),()=>{b?.mountedInstances?.delete(a.children)})),e(()=>(b&&(b._pendingUpdate=f),()=>{b&&(b._pendingUpdate=f)})),null}}};
@@ -1,5 +1,12 @@
1
1
  "use strict";exports.id=182,exports.ids=[182],exports.modules={8578:(a,b,c)=>{let d=c(33873),e=c(29021),f=c(15296),{MITM_DIR:g}=c(82193),h=d.join(g,"rootCA.key"),i=d.join(g,"rootCA.crt");function j(a){try{let b=f.pki.certificateFromPem(e.readFileSync(a,"utf8")),c=new Date(Date.now()+2592e6);return b.validity.notAfter<c}catch{return!0}}a.exports={generateRootCA:async function a(){let a=e.existsSync(h)&&e.existsSync(i);if(a&&!j(i))return console.log("✅ Root CA already exists"),{key:h,cert:i};if(a){console.log("\uD83D\uDD10 Root CA expired or expiring soon — regenerating...");try{e.unlinkSync(h)}catch{}try{e.unlinkSync(i)}catch{}}e.existsSync(g)||e.mkdirSync(g,{recursive:!0}),console.log("\uD83D\uDD10 Generating Root CA certificate...");let b=f.pki.rsa.generateKeyPair(2048),c=f.pki.createCertificate();c.publicKey=b.publicKey,c.serialNumber="01",c.validity.notBefore=new Date,c.validity.notAfter=new Date,c.validity.notAfter.setFullYear(c.validity.notBefore.getFullYear()+10);let d=[{name:"commonName",value:"arouter MITM Root CA"},{name:"organizationName",value:"arouter"},{name:"countryName",value:"US"}];c.setSubject(d),c.setIssuer(d),c.setExtensions([{name:"basicConstraints",cA:!0,critical:!0},{name:"keyUsage",keyCertSign:!0,cRLSign:!0,critical:!0},{name:"subjectKeyIdentifier"}]),c.sign(b.privateKey,f.md.sha256.create());let k=f.pki.privateKeyToPem(b.privateKey),l=f.pki.certificateToPem(c);return e.writeFileSync(h,k),e.writeFileSync(i,l),console.log("✅ Root CA generated successfully"),{key:h,cert:i}},loadRootCA:function(){if(!e.existsSync(h)||!e.existsSync(i))throw Error("Root CA not found. Generate it first.");let a=e.readFileSync(h,"utf8"),b=e.readFileSync(i,"utf8");return{key:f.pki.privateKeyFromPem(a),cert:f.pki.certificateFromPem(b)}},generateLeafCert:function(a,b){let c=f.pki.rsa.generateKeyPair(2048),d=f.pki.createCertificate();return d.publicKey=c.publicKey,d.serialNumber=Math.floor(1e6*Math.random()).toString(),d.validity.notBefore=new Date,d.validity.notAfter=new Date,d.validity.notAfter.setFullYear(d.validity.notBefore.getFullYear()+1),d.setSubject([{name:"commonName",value:a}]),d.setIssuer(b.cert.subject.attributes),d.setExtensions([{name:"basicConstraints",cA:!1},{name:"keyUsage",digitalSignature:!0,keyEncipherment:!0},{name:"extKeyUsage",serverAuth:!0,clientAuth:!0},{name:"subjectAltName",altNames:[{type:2,value:a},{type:2,value:`*.${a}`}]}]),d.sign(b.key,f.md.sha256.create()),{key:f.pki.privateKeyToPem(c.privateKey),cert:f.pki.certificateToPem(d)}},isCertExpired:j,ROOT_CA_CERT_PATH:i,ROOT_CA_KEY_PATH:h}},9631:(a,b,c)=>{let d=c(29021),e=c(55511),{exec:f}=c(79646),{execWithPassword:g}=c(66936),{log:h,err:i}=c(87777),j="win32"===process.platform,k="darwin"===process.platform,l="/usr/local/share/ca-certificates";function m(a){let b=d.readFileSync(a,"utf-8"),c=Buffer.from(b.replace(/-----[^-]+-----/g,"").replace(/\s/g,""),"base64");return e.createHash("sha1").update(c).digest("hex").toUpperCase().match(/.{2}/g).join(":")}async function n(a){var b;let c;return j?new Promise(a=>{f('certutil -store Root "arouter MITM Root CA"',{windowsHide:!0},b=>{a(!b)})}):k?(b=a,new Promise(a=>{try{let c=m(b).replace(/:/g,"");f(`security verify-cert -c "${b}" -p ssl -k /Library/Keychains/System.keychain 2>/dev/null`,b=>{if(!b)return a(!0);f(`security dump-trust-settings -d 2>/dev/null | grep -i "${c}"`,(b,c)=>{a(!b&&!!c?.trim())})})}catch{a(!1)}})):(c=`${l}/arouter-root-ca.crt`,Promise.resolve(d.existsSync(c)))}async function o(a,b){let c=`security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain "${b}"`;try{await g(`security delete-certificate -c "arouter MITM Root CA" /Library/Keychains/System.keychain 2>/dev/null || true && ${c}`,a),h("\uD83D\uDD10 Cert: ✅ installed to system keychain")}catch(a){throw Error(a.message?.includes("canceled")?"User canceled authorization":"Certificate install failed")}}async function p(a){return new Promise((b,c)=>{f(`certutil -addstore Root "${a}"`,{windowsHide:!0},a=>{a?c(Error(`Failed to install certificate: ${a.message}`)):(h("\uD83D\uDD10 Cert: ✅ installed to Windows Root store"),b())})})}async function q(a,b){let c=m(b).replace(/:/g,""),d=`security delete-certificate -Z "${c}" /Library/Keychains/System.keychain`;try{await g(d,a),h("\uD83D\uDD10 Cert: ✅ uninstalled from system keychain")}catch(a){throw Error("Failed to uninstall certificate")}}async function r(){return new Promise((a,b)=>{f('certutil -delstore Root "arouter MITM Root CA"',{windowsHide:!0},c=>{c?b(Error(`Failed to uninstall certificate: ${c.message}`)):(h("\uD83D\uDD10 Cert: ✅ uninstalled from Windows Root store"),a())})})}async function s(a,b){let c=`${l}/arouter-root-ca.crt`,d=`cp "${b}" "${c}" && (update-ca-certificates 2>/dev/null || update-ca-trust 2>/dev/null || true)`;try{await g(d,a),h("\uD83D\uDD10 Cert: ✅ installed to Linux trust store")}catch(a){throw Error("Certificate install failed")}}async function t(a){let b=`${l}/arouter-root-ca.crt`,c=`rm -f "${b}" && (update-ca-certificates 2>/dev/null || update-ca-trust 2>/dev/null || true)`;try{await g(c,a),h("\uD83D\uDD10 Cert: ✅ uninstalled from Linux trust store")}catch(a){throw Error("Failed to uninstall certificate")}}a.exports={installCert:async function a(a,b){if(!d.existsSync(b))throw Error(`Certificate file not found: ${b}`);await n(b)?h("\uD83D\uDD10 Cert: already trusted ✅"):j?await p(b):k?await o(a,b):await s(a,b)},uninstallCert:async function a(a,b){await n(b)?j?await r():k?await q(a,b):await t(a):h("\uD83D\uDD10 Cert: not found in system store")},checkCertInstalled:n}},26033:(a,b,c)=>{c(33873),c(29021);let{MITM_DIR:d}=c(82193),{generateRootCA:e,loadRootCA:f,generateLeafCert:g}=c(8578);a.exports={generateCert:async function a(){return await e()},getCertForDomain:function(a){try{let b=f(),c=g(a,b);return{key:c.key,cert:c.cert}}catch(b){return console.error(`Failed to generate cert for ${a}:`,b.message),null}}}},66936:(a,b,c)=>{let{exec:d,spawn:e}=c(79646),f=c(29021),g=c(33873),h=c(21820),{log:i,err:j}=c(87777),k={antigravity:["daily-cloudcode-pa.googleapis.com","cloudcode-pa.googleapis.com"],copilot:["api.individual.githubcopilot.com"]},l="win32"===process.platform,m="darwin"===process.platform,n=l?g.join(process.env.SystemRoot||"C:\\Windows","System32","drivers","etc","hosts"):"/etc/hosts";function o(a,b){return new Promise((c,d)=>{let f=e("sudo",["-S","sh","-c",a],{stdio:["pipe","pipe","pipe"]}),g="",h="";f.stdout.on("data",a=>{g+=a}),f.stderr.on("data",a=>{h+=a}),f.on("close",a=>{0===a?c(g):d(Error(h||`Exit code ${a}`))}),f.stdin.write(`${b}
2
2
  `),f.stdin.end()})}async function p(a){l||(m?await o("dscacheutil -flushcache && killall -HUP mDNSResponder",a):await o("resolvectl flush-caches 2>/dev/null || true",a))}function q(a=null){try{let b=f.readFileSync(n,"utf8");if(a)return b.includes(a);return k.antigravity.every(a=>b.includes(a))}catch{return!1}}async function r(a,b){let d=k[a];if(!d)throw Error(`Unknown tool: ${a}`);let e=d.filter(a=>!q(a));if(0===e.length)return void i(`🌐 DNS ${a}: already active`);let g=e.map(a=>`127.0.0.1 ${a}`).join("\n");try{if(l){let a=e.map(a=>`127.0.0.1 ${a}`).join("\r\n")+"\r\n";f.appendFileSync(n,a,"utf8"),c(79646).execSync("ipconfig /flushdns",{windowsHide:!0})}else await o(`echo "${g}" >> ${n}`,b),await p(b);i(`🌐 DNS ${a}: ✅ added ${e.join(", ")}`)}catch(a){throw Error(a.message?.includes("incorrect password")?"Wrong sudo password":"Failed to add DNS entry")}}async function s(a,b){let d=k[a];if(!d)throw Error(`Unknown tool: ${a}`);let e=d.filter(a=>q(a));if(0===e.length)return void i(`🌐 DNS ${a}: already inactive`);try{if(l){let a=f.readFileSync(n,"utf8").split(/\r?\n/).filter(a=>!e.some(b=>a.includes(b))).join("\r\n");f.writeFileSync(n,a,"utf8"),c(79646).execSync("ipconfig /flushdns",{windowsHide:!0})}else{for(let a of e){let c=m?`sed -i '' '/${a}/d' ${n}`:`sed -i '/${a}/d' ${n}`;await o(c,b)}await p(b)}i(`🌐 DNS ${a}: ✅ removed ${e.join(", ")}`)}catch(a){throw Error(a.message?.includes("incorrect password")?"Wrong sudo password":"Failed to remove DNS entry")}}async function t(a){for(let b of Object.keys(k))try{await s(b,a)}catch(a){j(`DNS ${b}: failed to remove — ${a.message}`)}}a.exports={TOOL_HOSTS:k,addDNSEntry:r,removeDNSEntry:s,removeAllDNSEntries:t,execWithPassword:o,executeElevatedPowerShell:function(a,b=3e4){let c=g.join(h.tmpdir(),`ps_done_${Date.now()}.flag`),e=f.readFileSync(a,"utf8");e+=`
3
3
  Set-Content -Path '${c.replace(/'/g,"''")}' -Value 'done' -Encoding UTF8
4
- `,f.writeFileSync(a,e,"utf8");let i=`Start-Process powershell -ArgumentList '-NoProfile','-ExecutionPolicy','Bypass','-WindowStyle','Hidden','-File','${a.replace(/'/g,"''")}' -Verb RunAs -WindowStyle Hidden`;return new Promise((e,g)=>{let h=!1,j=(a,b)=>{h||(h=!0,a(b))};d(`powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command "${i}"`,{windowsHide:!0},()=>{});let k=Date.now()+b,l=()=>{if(!h){if(f.existsSync(c)){try{f.unlinkSync(c),f.unlinkSync(a)}catch{}return j(e)}if(Date.now()>k){try{f.unlinkSync(a)}catch{}return j(g,Error("Timed out waiting for UAC confirmation"))}setTimeout(l,500)}};setTimeout(l,300)})},checkDNSEntry:q,checkAllDNSStatus:function(){try{let a=f.readFileSync(n,"utf8"),b={};for(let[c,d]of Object.entries(k))b[c]=d.every(b=>a.includes(b));return b}catch{return Object.fromEntries(Object.keys(k).map(a=>[a,!1]))}}}},82193:(a,b,c)=>{let d=c(33873),e=c(21820),f=process.env.DATA_DIR?process.env.DATA_DIR:"win32"===process.platform?d.join(process.env.APPDATA||d.join(e.homedir(),"AppData","Roaming"),"arouter"):d.join(e.homedir(),".arouter"),g=d.join(f,"mitm");a.exports={DATA_DIR:f,MITM_DIR:g}},87777:a=>{function b(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}a.exports={log:a=>console.log(`[${b()}] [MITM] ${a}`),err:a=>console.error(`[${b()}] ❌ [MITM] ${a}`)}},96182:(a,b,c)=>{let{exec:d,spawn:e,execSync:f}=c(79646),g=c(33873),h=c(29021);c(21820);let i=c(91645),j=c(55591),k=c(55511),{addDNSEntry:l,removeDNSEntry:m,removeAllDNSEntries:n,checkAllDNSStatus:o,TOOL_HOSTS:p}=c(66936),q="win32"===process.platform,{generateCert:r}=c(26033),{installCert:s,uninstallCert:t}=c(9631),{isCertExpired:u}=c(8578),{MITM_DIR:v}=c(82193),{log:w,err:x}=c(87777),y=g.join(v,".mitm.pid"),z=[5e3,1e4,2e4,3e4,6e4],A=0,B=0,C=!1,D=function(){if(process.env.MITM_SERVER_PATH)return process.env.MITM_SERVER_PATH;let a=g.join(__dirname,"server.js");if(h.existsSync(a))return a;let b=g.join(process.cwd(),"src","mitm","server.js");if(h.existsSync(b))return b;let c=g.join(process.cwd(),"..","src","mitm","server.js");return h.existsSync(c)?c:b}(),E="aes-256-gcm",F="9router-mitm-pwd",G=null,H=null;function I(){return globalThis.__mitmSudoPassword||null}function J(a){globalThis.__mitmSudoPassword=a}function K(a){try{return process.kill(a,0),!0}catch(a){return"EACCES"===a.code}}function L(a,b=!1,e=null){if(q)d(`taskkill ${b?"/F ":""}/PID ${a}`,{windowsHide:!0},()=>{});else{let f=b?"SIGKILL":"SIGTERM",g=`pkill -${f} -P ${a} 2>/dev/null; kill -${f} ${a} 2>/dev/null`;if(e){let{execWithPassword:a}=c(66936);a(g,e).catch(()=>d(g,()=>{}))}else d(g,()=>{})}}function M(){try{let{machineIdSync:a}=c(19713),b=a();return k.createHash("sha256").update(b+F).digest()}catch{return k.createHash("sha256").update(F).digest()}}let N=null,O=null;async function P(a,b){if(O)try{let c,d,e,f,g,h={mitmEnabled:a};b&&(c=M(),d=k.randomBytes(12),e=k.createCipheriv(E,c,d),f=Buffer.concat([e.update(b,"utf8"),e.final()]),g=e.getAuthTag(),h.mitmSudoEncrypted=`${d.toString("hex")}:${g.toString("hex")}:${f.toString("hex")}`),await O(h)}catch(a){x(`Failed to save settings: ${a.message}`)}}async function Q(){if(!N)return null;try{let a=await N();if(!a.mitmSudoEncrypted)return null;return function(a){try{let[b,c,d]=a.split(":");if(!b||!c||!d)return null;let e=M(),f=k.createDecipheriv(E,e,Buffer.from(b,"hex"));return f.setAuthTag(Buffer.from(c,"hex")),f.update(Buffer.from(d,"hex"))+f.final("utf8")}catch{return null}}(a.mitmSudoEncrypted)}catch{return null}}async function R(a){if(G&&!G.killed){try{G.kill("SIGKILL")}catch{}G=null,H=null}try{if(h.existsSync(y)){let b=parseInt(h.readFileSync(y,"utf-8").trim(),10);b&&K(b)&&(L(b,!0,a),await new Promise(a=>setTimeout(a,500))),h.unlinkSync(y)}}catch{}if(!q&&D)try{let b=D.replace(/'/g,"'\\''");if(a){let{execWithPassword:d}=c(66936);await d(`pkill -SIGKILL -f "${b}" 2>/dev/null || true`,a).catch(()=>{})}else d(`pkill -SIGKILL -f "${b}" 2>/dev/null || true`,()=>{});await new Promise(a=>setTimeout(a,500))}catch{}}function S(a,b=443){return new Promise(c=>{let d=Date.now()+a,e=()=>{let a=j.request({hostname:"127.0.0.1",port:b,path:"/_mitm_health",method:"GET",rejectUnauthorized:!1},a=>{let b="";a.on("data",a=>{b+=a}),a.on("end",()=>{try{let a=JSON.parse(b);c(!0===a.ok?{ok:!0,pid:a.pid||null}:null)}catch{c(null)}})});a.on("error",()=>{Date.now()<d?setTimeout(e,500):c(null)}),a.end()};e()})}async function T(){let a=null!==G&&!G.killed,b=H;if(!a)try{if(h.existsSync(y)){let c=parseInt(h.readFileSync(y,"utf-8").trim(),10);c&&K(c)?(a=!0,b=c):h.unlinkSync(y)}}catch{}if(!a){let c=await S(1e3,443);if(c&&c.ok){a=!0,b=c.pid;try{h.writeFileSync(y,String(b))}catch{}}}let d=o(),e=g.join(v,"rootCA.crt"),f=h.existsSync(e),{checkCertInstalled:i}=c(9631),j=!!f&&await i(e);return{running:a,pid:b,certExists:f,certTrusted:j,dnsStatus:d}}async function U(a){if(C)return;if(Date.now()-B>=6e4&&(A=0),A>=5)return void x("Max restart attempts reached. Giving up.");let b=z[Math.min(A,z.length-1)];A++,C=!0,w(`Restarting in ${b/1e3}s... (${A}/5)`),await new Promise(a=>setTimeout(a,b));try{let b=N?await N():null;if(b&&!b.mitmEnabled){w("MITM disabled, skipping restart"),C=!1;return}let c=I()||await Q();if(!c&&!q){x("No cached password, cannot auto-restart"),C=!1;return}await V(a,c),w("\uD83D\uDD04 Restarted successfully"),A=0,C=!1}catch(b){x(`Restart attempt ${A}/5 failed: ${b.message}`),C=!1,U(a)}}async function V(a,b){if(!G||G.killed)try{if(h.existsSync(y)){let a=parseInt(h.readFileSync(y,"utf-8").trim(),10);if(a&&K(a))return H=a,w(`♻️ Reusing existing process (PID: ${a})`),await P(!0,b),b&&J(b),{running:!0,pid:a};h.unlinkSync(y)}}catch{}if(!G||G.killed){let a=await S(1e3,443);if(a&&a.ok){H=a.pid,w(`♻️ Found running MITM server (PID: ${a.pid}). Adopting it.`);try{h.writeFileSync(y,String(H))}catch{}return await P(!0,b),b&&J(b),{running:!0,pid:H}}}if(G&&!G.killed)throw Error("MITM server is already running");if(await R(b),!q){let a=await new Promise(a=>{let b=i.createServer();b.once("error",b=>{"EADDRINUSE"===b.code?a("in-use"):a("no-permission")}),b.once("listening",()=>{b.close(()=>a("free"))}),b.listen(443,"127.0.0.1")});if("in-use"===a||"no-permission"===a){let a=await new Promise(a=>{q?d('powershell -NonInteractive -WindowStyle Hidden -Command "$c = Get-NetTCPConnection -LocalPort 443 -State Listen -ErrorAction SilentlyContinue | Select-Object -First 1; if ($c) { $c.OwningProcess } else { 0 }"',{windowsHide:!0},(b,c)=>{if(b)return a(null);let e=parseInt(c.trim(),10);if(!e||e<=4)return a(null);d(`tasklist /FI "PID eq ${e}" /FO CSV /NH`,{windowsHide:!0},(b,c)=>{let d=c?.match(/"([^"]+)"/);a({pid:e,name:d?d[1]:"unknown"})})}):d('ps aux | grep "[s]erver.js"',(b,c)=>{if(!c?.trim())return a(null);for(let b of c.split("\n")){let c=parseInt(b.trim().split(/\s+/)[1],10);if(!isNaN(c))return a({pid:c,name:"node"})}a(null)})});if(a&&"node"===a.name){w(`Killing orphan node process on port 443 (PID ${a.pid})...`);try{let{execWithPassword:d}=c(66936);await d(`kill -9 ${a.pid}`,b),await new Promise(a=>setTimeout(a,800))}catch{}}else if(a){let b=a.name.includes("/")?a.name.split("/").filter(Boolean).pop():a.name;throw Error(`Port 443 is already in use by "${b}" (PID ${a.pid}). Stop that process first.`)}}}let j=g.join(v,"rootCA.crt"),k=g.join(v,"rootCA.key"),l=h.existsSync(j)&&h.existsSync(k);if(!l||u(j)){if(l){w("\uD83D\uDD10 Cert expired — uninstalling old cert...");let a=b||I()||await Q();try{await t(a,j)}catch{}}w("\uD83D\uDD10 Generating Root CA..."),await r()}let{checkCertInstalled:m}=c(9631);if(await m(j))w("\uD83D\uDD10 Cert: already trusted ✅");else{w("\uD83D\uDD10 Cert: not trusted → installing...");let a=b||I()||await Q();if(!a&&!q)throw Error("Sudo password required to install Root CA certificate");try{await s(a,j),w("\uD83D\uDD10 Cert: ✅ trusted")}catch(a){throw Error(`Failed to trust certificate: ${a.message}`)}}if(w("\uD83D\uDE80 Starting server..."),q){try{f('powershell -NonInteractive -WindowStyle Hidden -Command "$c = Get-NetTCPConnection -LocalPort 443 -State Listen -ErrorAction SilentlyContinue | Select-Object -First 1; if ($c -and $c.OwningProcess -gt 4) { Stop-Process -Id $c.OwningProcess -Force -ErrorAction SilentlyContinue }"',{windowsHide:!0}),await new Promise(a=>setTimeout(a,500))}catch{}G=e(process.execPath,[D],{detached:!1,windowsHide:!0,stdio:["ignore","pipe","pipe"],env:{...process.env,ROUTER_API_KEY:a,NODE_ENV:"production"}}),O&&await O({mitmCertInstalled:!0}).catch(()=>{})}else(G=e("sudo",["-S","-E","sh","-c",`ROUTER_API_KEY='${a}' NODE_ENV='production' '${process.execPath}' '${D}'`],{detached:!1,stdio:["pipe","pipe","pipe"]})).stdin.write(`${b}
5
- `),G.stdin.end();G&&(H=G.pid,h.writeFileSync(y,String(H)),B=Date.now());let n=null;G&&(G.stdout.on("data",a=>{let b=a.toString().trimEnd();b&&console.log(b)}),G.stderr.on("data",a=>{let b=a.toString().trim();b&&(q||!b.includes("Password:")&&!b.includes("password for"))&&(x(b),n=b)}),G.on("exit",b=>{w(`Server exited (code: ${b})`),G=null,H=null;try{h.unlinkSync(y)}catch{}0===b||C||U(a)}));let p=await S(8e3,443);if(!p){if(G&&!G.killed){try{G.kill()}catch{}G=null}let a=function(){try{if(q){let a=f('powershell -NonInteractive -WindowStyle Hidden -Command "$c = Get-NetTCPConnection -LocalPort 443 -State Listen -ErrorAction SilentlyContinue | Select-Object -First 1; if ($c) { $c.OwningProcess } else { 0 }"',{encoding:"utf8",windowsHide:!0}).trim(),b=parseInt(a,10);if(b&&b>4){let a=f(`tasklist /FI "PID eq ${b}" /FO CSV /NH`,{encoding:"utf8",windowsHide:!0}).match(/"([^"]+)"/);if(a)return a[1].replace(".exe","")}}else{let a=f("lsof -i :443",{encoding:"utf8"}).trim().split("\n");if(a.length>1)return a[1].split(/\s+/)[0]}}catch{}return null}(),b=a?` Port 443 already in use by ${a}.`:"",c=n||`Check sudo password or port 443 access.${b}`;throw Error(`MITM server failed to start. ${c}`)}for(let[a,b]of(O&&await O({mitmCertInstalled:!0}).catch(()=>{}),w(`✅ Server healthy (PID: ${H||p.pid})`),Object.entries(o())))w(`🌐 DNS ${a}: ${b?"✅ active":"❌ inactive"}`);return await P(!0,b),b&&J(b),{running:!0,pid:H}}async function W(a){let b=a||I()||await Q();C=!0,A=0,w("⏹ Stopping server...");let d=G,e=d&&!d.killed?d.pid:(()=>{try{return parseInt(h.readFileSync(y,"utf-8").trim(),10)}catch{return null}})();if(e&&K(e)&&(w(`Killing server (PID: ${e})...`),L(e,!1,b),await new Promise(a=>setTimeout(a,1e3)),K(e)&&L(e,!0,b)),G=null,H=null,q){let a=g.join(process.env.SystemRoot||"C:\\Windows","System32","drivers","etc","hosts"),b=Object.values(p).flat();try{let d=h.readFileSync(a,"utf8").split(/\r?\n/).filter(a=>!b.some(b=>a.includes(b))).join("\r\n");h.writeFileSync(a,d,"utf8"),c(79646).execSync("ipconfig /flushdns",{windowsHide:!0})}catch(a){x(`Failed to clean hosts: ${a.message}`)}}else await n(b);try{h.unlinkSync(y)}catch{}return await P(!1,null),C=!1,{running:!1,pid:null}}async function X(a,b){if(!(await T()).running)throw Error("MITM server is not running. Start the server first.");let c=b||I()||await Q();return await l(a,c),{success:!0}}a.exports={getMitmStatus:T,startServer:V,stopServer:W,enableToolDNS:X,disableToolDNS:async function a(a,b){let c=b||I()||await Q();return await m(a,c),{success:!0}},trustCert:async function a(a){let b=g.join(v,"rootCA.crt");if(!h.existsSync(b))throw Error("Root CA not found. Start server first to generate it.");let{installCert:d}=c(9631),e=a||I()||await Q();if(!e&&!q)throw Error("Sudo password required to trust certificate");await d(e,b),e&&J(e)},startMitm:V,stopMitm:W,getCachedPassword:I,setCachedPassword:J,loadEncryptedPassword:Q,initDbHooks:function(a,b){N=a,O=b}}}};
4
+ `,f.writeFileSync(a,e,"utf8");let i=`Start-Process powershell -ArgumentList '-NoProfile','-ExecutionPolicy','Bypass','-WindowStyle','Hidden','-File','${a.replace(/'/g,"''")}' -Verb RunAs -WindowStyle Hidden`;return new Promise((e,g)=>{let h=!1,j=(a,b)=>{h||(h=!0,a(b))};d(`powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command "${i}"`,{windowsHide:!0},()=>{});let k=Date.now()+b,l=()=>{if(!h){if(f.existsSync(c)){try{f.unlinkSync(c),f.unlinkSync(a)}catch{}return j(e)}if(Date.now()>k){try{f.unlinkSync(a)}catch{}return j(g,Error("Timed out waiting for UAC confirmation"))}setTimeout(l,500)}};setTimeout(l,300)})},checkDNSEntry:q,checkAllDNSStatus:function(){try{let a=f.readFileSync(n,"utf8"),b={};for(let[c,d]of Object.entries(k))b[c]=d.every(b=>a.includes(b));return b}catch{return Object.fromEntries(Object.keys(k).map(a=>[a,!1]))}}}},82193:(a,b,c)=>{let d=c(33873),e=c(21820),f=process.env.DATA_DIR?process.env.DATA_DIR:"win32"===process.platform?d.join(process.env.APPDATA||d.join(e.homedir(),"AppData","Roaming"),"arouter"):d.join(e.homedir(),".arouter"),g=d.join(f,"mitm");a.exports={DATA_DIR:f,MITM_DIR:g}},87777:a=>{function b(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}a.exports={log:a=>console.log(`[${b()}] [MITM] ${a}`),err:a=>console.error(`[${b()}] ❌ [MITM] ${a}`)}},96182:(a,b,c)=>{let{exec:d,spawn:e,execSync:f}=c(79646),g=c(33873),h=c(29021);c(21820);let i=c(91645),j=c(55591),k=c(55511),{addDNSEntry:l,removeDNSEntry:m,removeAllDNSEntries:n,checkAllDNSStatus:o,TOOL_HOSTS:p}=c(66936),q="win32"===process.platform,{generateCert:r}=c(26033),{installCert:s,uninstallCert:t}=c(9631),{isCertExpired:u}=c(8578),{MITM_DIR:v}=c(82193),{log:w,err:x}=c(87777),y=g.join(v,".mitm.pid"),z=[5e3,1e4,2e4,3e4,6e4],A=0,B=0,C=!1,D=function(){if(process.env.MITM_SERVER_PATH)return process.env.MITM_SERVER_PATH;let a=g.join(__dirname,"server.js");if(h.existsSync(a))return a;let b=g.join(process.cwd(),"src","mitm","server.js");if(h.existsSync(b))return b;let c=g.join(process.cwd(),"..","src","mitm","server.js");return h.existsSync(c)?c:b}(),E="aes-256-gcm",F="9router-mitm-pwd",G=null,H=null;function I(){return globalThis.__mitmSudoPassword||null}function J(a){globalThis.__mitmSudoPassword=a}function K(a){try{return process.kill(a,0),!0}catch(a){return"EACCES"===a.code||"EPERM"===a.code}}async function L(a,b=!1,e=null){if(q){let c=b?"/F ":"";return new Promise(b=>d(`taskkill ${c}/PID ${a}`,{windowsHide:!0},b))}{let f=b?"KILL":"TERM",g=`pkill -${f} -P ${a} 2>/dev/null || true; kill -${f} ${a} 2>/dev/null || true`;if(!e)return new Promise(a=>d(g,a));{let{execWithPassword:f}=c(66936),h=c(29021),i=c(21820).homedir()+"/.arouter/mitm_kill.log";try{w(`Executing sudo kill for PID ${a}...`),h.appendFileSync(i,`
5
+
6
+ [${new Date().toISOString()}] Attempting kill for PID ${a} with force=${b}
7
+ Cmd: ${g}
8
+ `);let c=await f(g,e);h.appendFileSync(i,`execWithPassword SUCCESS: ${c}
9
+ `),w(`Sudo kill output: ${c}`)}catch(a){return h.appendFileSync(i,`execWithPassword FAILED: ${a.message}
10
+ `),x(`Sudo kill failed: ${a.message}`),new Promise(a=>d(`echo "${e.replace(/"/g,'\\"')}" | sudo -S sh -c "${g}"`,(b,c,d)=>{h.appendFileSync(i,`Fallback Result -> err: ${b?.message}, stdout: ${c}, stderr: ${d}
11
+ `),b&&x(`Raw sudo kill failed too: ${d||b.message}`),a()}))}}}}function M(){try{let{machineIdSync:a}=c(19713),b=a();return k.createHash("sha256").update(b+F).digest()}catch{return k.createHash("sha256").update(F).digest()}}let N=null,O=null;async function P(a,b){if(O)try{let c,d,e,f,g,h={mitmEnabled:a};b&&(c=M(),d=k.randomBytes(12),e=k.createCipheriv(E,c,d),f=Buffer.concat([e.update(b,"utf8"),e.final()]),g=e.getAuthTag(),h.mitmSudoEncrypted=`${d.toString("hex")}:${g.toString("hex")}:${f.toString("hex")}`),await O(h)}catch(a){x(`Failed to save settings: ${a.message}`)}}async function Q(){if(!N)return null;try{let a=await N();if(!a.mitmSudoEncrypted)return null;return function(a){try{let[b,c,d]=a.split(":");if(!b||!c||!d)return null;let e=M(),f=k.createDecipheriv(E,e,Buffer.from(b,"hex"));return f.setAuthTag(Buffer.from(c,"hex")),f.update(Buffer.from(d,"hex"))+f.final("utf8")}catch{return null}}(a.mitmSudoEncrypted)}catch{return null}}async function R(a){if(G&&!G.killed){try{G.kill("SIGKILL")}catch{}G=null,H=null}try{if(h.existsSync(y)){let b=parseInt(h.readFileSync(y,"utf-8").trim(),10);b&&K(b)&&(L(b,!0,a),await new Promise(a=>setTimeout(a,500))),h.unlinkSync(y)}}catch{}if(!q&&D)try{let b=D.replace(/'/g,"'\\''");if(a){let{execWithPassword:d}=c(66936);await d(`pkill -SIGKILL -f "${b}" 2>/dev/null || true`,a).catch(()=>{})}else d(`pkill -SIGKILL -f "${b}" 2>/dev/null || true`,()=>{});await new Promise(a=>setTimeout(a,500))}catch{}}function S(a,b=443){return new Promise(c=>{let d=Date.now()+a,e=()=>{let a=j.request({hostname:"127.0.0.1",port:b,path:"/_mitm_health",method:"GET",rejectUnauthorized:!1},a=>{let b="";a.on("data",a=>{b+=a}),a.on("end",()=>{try{let a=JSON.parse(b);c(!0===a.ok?{ok:!0,pid:a.pid||null}:null)}catch{c(null)}})});a.on("error",()=>{Date.now()<d?setTimeout(e,500):c(null)}),a.end()};e()})}async function T(){let a=null!==G&&!G.killed,b=H;if(!a)try{if(h.existsSync(y)){let c=parseInt(h.readFileSync(y,"utf-8").trim(),10);c&&K(c)?(a=!0,b=c):h.unlinkSync(y)}}catch{}if(!a){let c=await S(1e3,443);if(c&&c.ok){a=!0,b=c.pid;try{h.writeFileSync(y,String(b))}catch{}}}let d=o(),e=g.join(v,"rootCA.crt"),f=h.existsSync(e),{checkCertInstalled:i}=c(9631),j=!!f&&await i(e);return{running:a,pid:b,certExists:f,certTrusted:j,dnsStatus:d}}async function U(a){if(C)return;if(Date.now()-B>=6e4&&(A=0),A>=5)return void x("Max restart attempts reached. Giving up.");let b=z[Math.min(A,z.length-1)];A++,C=!0,w(`Restarting in ${b/1e3}s... (${A}/5)`),await new Promise(a=>setTimeout(a,b));try{let b=N?await N():null;if(b&&!b.mitmEnabled){w("MITM disabled, skipping restart"),C=!1;return}let c=I()||await Q();if(!c&&!q){x("No cached password, cannot auto-restart"),C=!1;return}await V(a,c),w("\uD83D\uDD04 Restarted successfully"),A=0,C=!1}catch(b){x(`Restart attempt ${A}/5 failed: ${b.message}`),C=!1,U(a)}}async function V(a,b){if(!G||G.killed)try{if(h.existsSync(y)){let a=parseInt(h.readFileSync(y,"utf-8").trim(),10);if(a&&K(a))return H=a,w(`♻️ Reusing existing process (PID: ${a})`),await P(!0,b),b&&J(b),{running:!0,pid:a};h.unlinkSync(y)}}catch{}if(!G||G.killed){let a=await S(1e3,443);if(a&&a.ok){H=a.pid,w(`♻️ Found running MITM server (PID: ${a.pid}). Adopting it.`);try{h.writeFileSync(y,String(H))}catch{}return await P(!0,b),b&&J(b),{running:!0,pid:H}}}if(G&&!G.killed)throw Error("MITM server is already running");if(await R(b),!q){let a=await new Promise(a=>{let b=i.createServer();b.once("error",b=>{"EADDRINUSE"===b.code?a("in-use"):a("no-permission")}),b.once("listening",()=>{b.close(()=>a("free"))}),b.listen(443,"127.0.0.1")});if("in-use"===a||"no-permission"===a){let a=await new Promise(a=>{q?d('powershell -NonInteractive -WindowStyle Hidden -Command "$c = Get-NetTCPConnection -LocalPort 443 -State Listen -ErrorAction SilentlyContinue | Select-Object -First 1; if ($c) { $c.OwningProcess } else { 0 }"',{windowsHide:!0},(b,c)=>{if(b)return a(null);let e=parseInt(c.trim(),10);if(!e||e<=4)return a(null);d(`tasklist /FI "PID eq ${e}" /FO CSV /NH`,{windowsHide:!0},(b,c)=>{let d=c?.match(/"([^"]+)"/);a({pid:e,name:d?d[1]:"unknown"})})}):d('ps aux | grep "[s]erver.js"',(b,c)=>{if(!c?.trim())return a(null);for(let b of c.split("\n")){let c=parseInt(b.trim().split(/\s+/)[1],10);if(!isNaN(c))return a({pid:c,name:"node"})}a(null)})});if(a&&"node"===a.name){w(`Killing orphan node process on port 443 (PID ${a.pid})...`);try{let{execWithPassword:d}=c(66936);await d(`kill -9 ${a.pid}`,b),await new Promise(a=>setTimeout(a,800))}catch{}}else if(a){let b=a.name.includes("/")?a.name.split("/").filter(Boolean).pop():a.name;throw Error(`Port 443 is already in use by "${b}" (PID ${a.pid}). Stop that process first.`)}}}let j=g.join(v,"rootCA.crt"),k=g.join(v,"rootCA.key"),l=h.existsSync(j)&&h.existsSync(k);if(!l||u(j)){if(l){w("\uD83D\uDD10 Cert expired — uninstalling old cert...");let a=b||I()||await Q();try{await t(a,j)}catch{}}w("\uD83D\uDD10 Generating Root CA..."),await r()}let{checkCertInstalled:m}=c(9631);if(await m(j))w("\uD83D\uDD10 Cert: already trusted ✅");else{w("\uD83D\uDD10 Cert: not trusted → installing...");let a=b||I()||await Q();if(!a&&!q)throw Error("Sudo password required to install Root CA certificate");try{await s(a,j),w("\uD83D\uDD10 Cert: ✅ trusted")}catch(a){throw Error(`Failed to trust certificate: ${a.message}`)}}if(w("\uD83D\uDE80 Starting server..."),q){try{f('powershell -NonInteractive -WindowStyle Hidden -Command "$c = Get-NetTCPConnection -LocalPort 443 -State Listen -ErrorAction SilentlyContinue | Select-Object -First 1; if ($c -and $c.OwningProcess -gt 4) { Stop-Process -Id $c.OwningProcess -Force -ErrorAction SilentlyContinue }"',{windowsHide:!0}),await new Promise(a=>setTimeout(a,500))}catch{}G=e(process.execPath,[D],{detached:!1,windowsHide:!0,stdio:["ignore","pipe","pipe"],env:{...process.env,ROUTER_API_KEY:a,NODE_ENV:"production"}}),O&&await O({mitmCertInstalled:!0}).catch(()=>{})}else(G=e("sudo",["-S","-E","sh","-c",`ROUTER_API_KEY='${a}' NODE_ENV='production' '${process.execPath}' '${D}'`],{detached:!1,stdio:["pipe","pipe","pipe"]})).stdin.write(`${b}
12
+ `),G.stdin.end();G&&(H=G.pid,h.writeFileSync(y,String(H)),B=Date.now());let n=null;G&&(G.stdout.on("data",a=>{let b=a.toString().trimEnd();b&&console.log(b)}),G.stderr.on("data",a=>{let b=a.toString().trim();b&&(q||!b.includes("Password:")&&!b.includes("password for"))&&(x(b),n=b)}),G.on("exit",b=>{w(`Server exited (code: ${b})`),G=null,H=null;try{h.unlinkSync(y)}catch{}0===b||C||U(a)}));let p=await S(8e3,443);if(!p){if(G&&!G.killed){try{G.kill()}catch{}G=null}let a=function(){try{if(q){let a=f('powershell -NonInteractive -WindowStyle Hidden -Command "$c = Get-NetTCPConnection -LocalPort 443 -State Listen -ErrorAction SilentlyContinue | Select-Object -First 1; if ($c) { $c.OwningProcess } else { 0 }"',{encoding:"utf8",windowsHide:!0}).trim(),b=parseInt(a,10);if(b&&b>4){let a=f(`tasklist /FI "PID eq ${b}" /FO CSV /NH`,{encoding:"utf8",windowsHide:!0}).match(/"([^"]+)"/);if(a)return a[1].replace(".exe","")}}else{let a=f("lsof -i :443",{encoding:"utf8"}).trim().split("\n");if(a.length>1)return a[1].split(/\s+/)[0]}}catch{}return null}(),b=a?` Port 443 already in use by ${a}.`:"",c=n||`Check sudo password or port 443 access.${b}`;throw Error(`MITM server failed to start. ${c}`)}for(let[a,b]of(O&&await O({mitmCertInstalled:!0}).catch(()=>{}),w(`✅ Server healthy (PID: ${H||p.pid})`),Object.entries(o())))w(`🌐 DNS ${a}: ${b?"✅ active":"❌ inactive"}`);return await P(!0,b),b&&J(b),{running:!0,pid:H}}async function W(a){let b=a||I()||await Q();C=!0,A=0,w("⏹ Stopping server...");let d=G,e=d&&!d.killed?d.pid:(()=>{try{return parseInt(h.readFileSync(y,"utf-8").trim(),10)}catch{return null}})();if(e&&K(e)&&(w(`Killing server (PID: ${e})...`),await L(e,!1,b),await new Promise(a=>setTimeout(a,1e3)),K(e)&&await L(e,!0,b),await new Promise(a=>setTimeout(a,1e3)),K(e)))throw Error("Cannot kill server process. Sudo password may be missing or incorrect.");if(G=null,H=null,q){let a=g.join(process.env.SystemRoot||"C:\\Windows","System32","drivers","etc","hosts"),b=Object.values(p).flat();try{let d=h.readFileSync(a,"utf8").split(/\r?\n/).filter(a=>!b.some(b=>a.includes(b))).join("\r\n");h.writeFileSync(a,d,"utf8"),c(79646).execSync("ipconfig /flushdns",{windowsHide:!0})}catch(a){x(`Failed to clean hosts: ${a.message}`)}}else await n(b);try{h.unlinkSync(y)}catch{}return await P(!1,null),C=!1,{running:!1,pid:null}}async function X(a,b){if(!(await T()).running)throw Error("MITM server is not running. Start the server first.");let c=b||I()||await Q();return await l(a,c),{success:!0}}a.exports={getMitmStatus:T,startServer:V,stopServer:W,enableToolDNS:X,disableToolDNS:async function a(a,b){let c=b||I()||await Q();return await m(a,c),{success:!0}},trustCert:async function a(a){let b=g.join(v,"rootCA.crt");if(!h.existsSync(b))throw Error("Root CA not found. Start server first to generate it.");let{installCert:d}=c(9631),e=a||I()||await Q();if(!e&&!q)throw Error("Sudo password required to trust certificate");await d(e,b),e&&J(e)},startMitm:V,stopMitm:W,getCachedPassword:I,setCachedPassword:J,loadEncryptedPassword:Q,initDbHooks:function(a,b){N=a,O=b}}}};