omniroute 3.5.6 → 3.5.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/.env +3 -3
- package/app/.next/BUILD_ID +1 -1
- package/app/.next/build-manifest.json +3 -3
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/server/app/_global-error.html +1 -1
- package/app/.next/server/app/_global-error.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/chunks/[externals]_crypto_0xrgh93._.js +3 -0
- package/app/.next/server/chunks/[externals]_crypto_0xrgh93._.js.map +1 -0
- package/app/.next/server/chunks/[externals]_http2_0j-h654._.js +3 -0
- package/app/.next/server/chunks/[externals]_http2_0j-h654._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0-enwz-._.js +18 -0
- package/app/.next/server/chunks/[root-of-the-server]__0-enwz-._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0-fr5ja._.js +19 -0
- package/app/.next/server/chunks/[root-of-the-server]__0-fr5ja._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__01-~the._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__01-~the._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__01i4gu7._.js +18 -0
- package/app/.next/server/chunks/[root-of-the-server]__01i4gu7._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__01ojood._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__01ojood._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__07d.c68._.js +18 -0
- package/app/.next/server/chunks/[root-of-the-server]__07d.c68._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__07nqkc.._.js +122 -0
- package/app/.next/server/chunks/[root-of-the-server]__07nqkc.._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0_2yik1._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__0_2yik1._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0cw3r6y._.js +50 -0
- package/app/.next/server/chunks/[root-of-the-server]__0cw3r6y._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0cyn9~e._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__0cyn9~e._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0dsyo1x._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__0dsyo1x._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0dxko0l._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__0dxko0l._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0f1u4t6._.js +122 -0
- package/app/.next/server/chunks/[root-of-the-server]__0f1u4t6._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0hu93sh._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__0hu93sh._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0l5aoll._.js +18 -0
- package/app/.next/server/chunks/[root-of-the-server]__0l5aoll._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0n2oi9_._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__0n2oi9_._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0p5ts1u._.js +61 -0
- package/app/.next/server/chunks/[root-of-the-server]__0p5ts1u._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__0phr5~3._.js +4 -0
- package/app/.next/server/chunks/[root-of-the-server]__0phr5~3._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__10c78j0._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__10c78j0._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__10y3lxw._.js +4 -0
- package/app/.next/server/chunks/[root-of-the-server]__10y3lxw._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__11jk31n._.js +3 -0
- package/app/.next/server/chunks/[root-of-the-server]__11jk31n._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__12~7mse._.js +61 -0
- package/app/.next/server/chunks/[root-of-the-server]__12~7mse._.js.map +1 -0
- package/app/.next/server/chunks/[root-of-the-server]__139cb8-._.js +20 -0
- package/app/.next/server/chunks/[root-of-the-server]__139cb8-._.js.map +1 -0
- package/app/.next/server/chunks/[turbopack]_runtime.js +903 -0
- package/app/.next/server/chunks/[turbopack]_runtime.js.map +11 -0
- package/app/.next/server/chunks/_06r1mdf._.js +76 -0
- package/app/.next/server/chunks/_06r1mdf._.js.map +1 -0
- package/app/.next/server/chunks/_0de_n8y._.js +3 -0
- package/app/.next/server/chunks/_0de_n8y._.js.map +1 -0
- package/app/.next/server/chunks/_0kulm9g._.js +18 -0
- package/app/.next/server/chunks/_0kulm9g._.js.map +1 -0
- package/app/.next/server/chunks/_0wowtxm._.js +50 -0
- package/app/.next/server/chunks/_0wowtxm._.js.map +1 -0
- package/app/.next/server/chunks/_0wq4708._.js +3 -0
- package/app/.next/server/chunks/_0wq4708._.js.map +1 -0
- package/app/.next/server/chunks/open-sse_0mbytqi._.js +124 -0
- package/app/.next/server/chunks/open-sse_0mbytqi._.js.map +1 -0
- package/app/.next/server/chunks/open-sse_0wloce5._.js +124 -0
- package/app/.next/server/chunks/open-sse_0wloce5._.js.map +1 -0
- package/app/.next/server/chunks/open-sse_config_providerModels_ts_00ttvqi._.js +3 -0
- package/app/.next/server/chunks/open-sse_config_providerModels_ts_00ttvqi._.js.map +1 -0
- package/app/.next/server/chunks/open-sse_config_providerRegistry_ts_0864w9~._.js +3 -0
- package/app/.next/server/chunks/open-sse_config_providerRegistry_ts_0864w9~._.js.map +1 -0
- package/app/.next/server/chunks/open-sse_services_modelDeprecation_ts_0~mv_57._.js +3 -0
- package/app/.next/server/chunks/open-sse_services_modelDeprecation_ts_0~mv_57._.js.map +1 -0
- package/app/.next/server/chunks/src_0dt1kol._.js +3 -0
- package/app/.next/server/chunks/src_0dt1kol._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_0j-wze8._.js +4 -0
- package/app/.next/server/chunks/src_lib_0j-wze8._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_0tdayo3._.js +127 -0
- package/app/.next/server/chunks/src_lib_0tdayo3._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_db_0izfnmi._.js +3 -0
- package/app/.next/server/chunks/src_lib_db_0izfnmi._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_db_apiKeys_ts_0v6x4-3._.js +3 -0
- package/app/.next/server/chunks/src_lib_db_apiKeys_ts_0v6x4-3._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_db_core_ts_0aifyrs._.js +257 -0
- package/app/.next/server/chunks/src_lib_db_core_ts_0aifyrs._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_db_core_ts_0~nrtni._.js +257 -0
- package/app/.next/server/chunks/src_lib_db_core_ts_0~nrtni._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_db_settings_ts_09o1aq9._.js +29 -0
- package/app/.next/server/chunks/src_lib_db_settings_ts_09o1aq9._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_db_settings_ts_0ny_g49._.js +73 -0
- package/app/.next/server/chunks/src_lib_db_settings_ts_0ny_g49._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_localDb_ts_0dh.4vc._.js +127 -0
- package/app/.next/server/chunks/src_lib_localDb_ts_0dh.4vc._.js.map +1 -0
- package/app/.next/server/chunks/src_lib_localDb_ts_0x83si-._.js +3 -0
- package/app/.next/server/chunks/src_lib_localDb_ts_0x83si-._.js.map +1 -0
- package/app/.next/server/chunks/src_shared_constants_pricing_ts_02t1a1-._.js +3 -0
- package/app/.next/server/chunks/src_shared_constants_pricing_ts_02t1a1-._.js.map +1 -0
- package/app/.next/server/chunks/src_shared_constants_pricing_ts_0bfgtif._.js +3 -0
- package/app/.next/server/chunks/src_shared_constants_pricing_ts_0bfgtif._.js.map +1 -0
- package/app/.next/server/chunks/src_shared_utils_apiKey_ts_0gzf59_._.js +3 -0
- package/app/.next/server/chunks/src_shared_utils_apiKey_ts_0gzf59_._.js.map +1 -0
- package/app/.next/server/chunks/ssr/[root-of-the-server]__0.xiv_y._.js +3 -0
- package/app/.next/server/chunks/ssr/[root-of-the-server]__0.xiv_y._.js.map +1 -0
- package/app/.next/server/chunks/ssr/[root-of-the-server]__01qhfb1._.js.map +1 -0
- package/app/.next/server/chunks/ssr/[root-of-the-server]__0floa9z._.js +3 -0
- package/app/.next/server/chunks/ssr/[root-of-the-server]__0floa9z._.js.map +1 -0
- package/app/.next/server/chunks/ssr/[root-of-the-server]__0q.3i3e._.js.map +1 -0
- package/app/.next/server/chunks/ssr/[root-of-the-server]__0z3xot_._.js.map +1 -0
- package/app/.next/server/chunks/ssr/[turbopack]_runtime.js.map +11 -0
- package/app/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0k77kol.js.map +1 -0
- package/app/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0eq97pa.js +3 -0
- package/app/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0eq97pa.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_072iglk._.js +33 -0
- package/app/.next/server/chunks/ssr/node_modules_next_072iglk._.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_0ts8s-3._.js +3 -0
- package/app/.next/server/chunks/ssr/node_modules_next_0ts8s-3._.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_0.jrk~x._.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_06hehg4._.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js +3 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js +3 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js +3 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0fe_s9w.js +4 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0fe_s9w.js.map +1 -0
- package/app/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0rc3ul_.js.map +1 -0
- package/app/.next/server/middleware-build-manifest.js +3 -3
- package/app/.next/server/pages/500.html +1 -1
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/package.json +1 -1
- package/package.json +1 -1
- /package/app/.next/static/{9TUkHEpKqKCEgDWgoDnnr → vJza-v6XiiDX8AiVjjXuw}/_buildManifest.js +0 -0
- /package/app/.next/static/{9TUkHEpKqKCEgDWgoDnnr → vJza-v6XiiDX8AiVjjXuw}/_clientMiddlewareManifest.js +0 -0
- /package/app/.next/static/{9TUkHEpKqKCEgDWgoDnnr → vJza-v6XiiDX8AiVjjXuw}/_ssgManifest.js +0 -0
package/app/.env
CHANGED
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
# REQUIRED SECRETS — Generate strong values!
|
|
6
6
|
# ═══════════════════════════════════════════════════
|
|
7
7
|
# Generate with: openssl rand -base64 48
|
|
8
|
-
JWT_SECRET=
|
|
8
|
+
JWT_SECRET=590c8d57acfdd324527499709b9bfa3a40d791158db4c55e38ef30104ca96e7f2e9121a14b06cd5cef2729aedcb3d45b217c08bae264caf11bcce9689b49a765
|
|
9
9
|
# Generate with: openssl rand -hex 32
|
|
10
|
-
API_KEY_SECRET=
|
|
10
|
+
API_KEY_SECRET=0d28ddf3a400dea213e149d1394e72d4c61e9cf9668db31a2e9a2bf36998a651
|
|
11
11
|
# Initial admin password — CHANGE THIS before first use!
|
|
12
12
|
INITIAL_PASSWORD=CHANGEME
|
|
13
13
|
# DATA_DIR=/var/lib/omniroute
|
|
@@ -15,7 +15,7 @@ INITIAL_PASSWORD=CHANGEME
|
|
|
15
15
|
# Storage (SQLite)
|
|
16
16
|
STORAGE_DRIVER=sqlite
|
|
17
17
|
# Generate with: openssl rand -hex 32
|
|
18
|
-
STORAGE_ENCRYPTION_KEY=
|
|
18
|
+
STORAGE_ENCRYPTION_KEY=8597f38f72e22fd9e71dcdd0eb8e2b026144a714619aa6f38931f628927822c6
|
|
19
19
|
STORAGE_ENCRYPTION_KEY_VERSION=v1
|
|
20
20
|
APP_LOG_RETENTION_DAYS=90
|
|
21
21
|
CALL_LOG_RETENTION_DAYS=90
|
package/app/.next/BUILD_ID
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
vJza-v6XiiDX8AiVjjXuw
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
"static/chunks/03~yq9q893hmn.js"
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [
|
|
10
|
-
"static/
|
|
11
|
-
"static/
|
|
12
|
-
"static/
|
|
10
|
+
"static/vJza-v6XiiDX8AiVjjXuw/_buildManifest.js",
|
|
11
|
+
"static/vJza-v6XiiDX8AiVjjXuw/_ssgManifest.js",
|
|
12
|
+
"static/vJza-v6XiiDX8AiVjjXuw/_clientMiddlewareManifest.js"
|
|
13
13
|
],
|
|
14
14
|
"rootMainFiles": [
|
|
15
15
|
"static/chunks/0y4owm4nk34-r.js",
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
"dynamicRoutes": {},
|
|
30
30
|
"notFoundRoutes": [],
|
|
31
31
|
"preview": {
|
|
32
|
-
"previewModeId": "
|
|
33
|
-
"previewModeSigningKey": "
|
|
34
|
-
"previewModeEncryptionKey": "
|
|
32
|
+
"previewModeId": "7201081964dcc3093376ad46a36a992e",
|
|
33
|
+
"previewModeSigningKey": "e808a9d4f8533d7fc5c824666a27c1f4a2a3278a517970c50bf475060aa7fb58",
|
|
34
|
+
"previewModeEncryptionKey": "1fa9b160cd8bd5e33f65edfcd86669704c644a8f0ce43de91d3d43ee1f800517"
|
|
35
35
|
}
|
|
36
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0y4owm4nk34-r.js"/><script src="/_next/static/chunks/11lo3114sf5s~.js" async=""></script><script src="/_next/static/chunks/09kooxfhfj.kl.js" async=""></script><script src="/_next/static/chunks/turbopack-0g2ns72va9e6x.js" async=""></script><script src="/_next/static/chunks/18dya1.0omc0k.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0y4owm4nk34-r.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"
|
|
1
|
+
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0y4owm4nk34-r.js"/><script src="/_next/static/chunks/11lo3114sf5s~.js" async=""></script><script src="/_next/static/chunks/09kooxfhfj.kl.js" async=""></script><script src="/_next/static/chunks/turbopack-0g2ns72va9e6x.js" async=""></script><script src="/_next/static/chunks/18dya1.0omc0k.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0y4owm4nk34-r.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/18dya1.0omc0k.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"vJza-v6XiiDX8AiVjjXuw\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
8:I[97367,["/_next/static/chunks/18dya1.0omc0k.js"],"ViewportBoundary"]
|
|
7
7
|
a:I[97367,["/_next/static/chunks/18dya1.0omc0k.js"],"MetadataBoundary"]
|
|
8
8
|
c:I[68027,["/_next/static/chunks/18dya1.0omc0k.js"],"default",1]
|
|
9
|
-
0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"
|
|
9
|
+
0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"vJza-v6XiiDX8AiVjjXuw"}
|
|
10
10
|
d:[]
|
|
11
11
|
7:"$Wd"
|
|
12
12
|
9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[97367,["/_next/static/chunks/18dya1.0omc0k.js"],"OutletBoundary"]
|
|
3
3
|
3:"$Sreact.suspense"
|
|
4
|
-
0:{"rsc":["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"
|
|
4
|
+
0:{"rsc":["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"vJza-v6XiiDX8AiVjjXuw"}
|
|
5
5
|
4:null
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
8:I[97367,["/_next/static/chunks/18dya1.0omc0k.js"],"ViewportBoundary"]
|
|
7
7
|
a:I[97367,["/_next/static/chunks/18dya1.0omc0k.js"],"MetadataBoundary"]
|
|
8
8
|
c:I[68027,["/_next/static/chunks/18dya1.0omc0k.js"],"default",1]
|
|
9
|
-
0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"
|
|
9
|
+
0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"vJza-v6XiiDX8AiVjjXuw"}
|
|
10
10
|
d:[]
|
|
11
11
|
7:"$Wd"
|
|
12
12
|
9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
2:I[97367,["/_next/static/chunks/18dya1.0omc0k.js"],"ViewportBoundary"]
|
|
3
3
|
3:I[97367,["/_next/static/chunks/18dya1.0omc0k.js"],"MetadataBoundary"]
|
|
4
4
|
4:"$Sreact.suspense"
|
|
5
|
-
0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[]}]}]}],null]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"
|
|
5
|
+
0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[]}]}]}],null]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"vJza-v6XiiDX8AiVjjXuw"}
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
2:I[39756,["/_next/static/chunks/18dya1.0omc0k.js"],"default"]
|
|
3
3
|
3:I[37457,["/_next/static/chunks/18dya1.0omc0k.js"],"default"]
|
|
4
4
|
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"
|
|
5
|
+
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"vJza-v6XiiDX8AiVjjXuw"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
0:{"tree":{"name":"","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"
|
|
1
|
+
0:{"tree":{"name":"","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"vJza-v6XiiDX8AiVjjXuw"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
module.exports=[7095,e=>{"use strict";function t(e,t){let r=e[t];return null!=r&&""!==r.trim()}function r(e,t,n,o={}){let s=e[t];if(null==s||""===s.trim())return n;let i=Number(s);return Number.isFinite(i)&&(o.allowZero?i>=0:i>0)?Math.floor(i):(o.logger?.(`Invalid ${t}="${s}". Using default ${n}ms.`),n)}function n(e=process.env,o){let s=t(e,"REQUEST_TIMEOUT_MS")?r(e,"REQUEST_TIMEOUT_MS",6e5,{allowZero:!0,logger:o}):void 0,i=r(e,"FETCH_TIMEOUT_MS",s??6e5,{allowZero:!0,logger:o});return{fetchTimeoutMs:i,streamIdleTimeoutMs:r(e,"STREAM_IDLE_TIMEOUT_MS",s??6e5,{allowZero:!0,logger:o}),fetchHeadersTimeoutMs:r(e,"FETCH_HEADERS_TIMEOUT_MS",i,{allowZero:!0,logger:o}),fetchBodyTimeoutMs:r(e,"FETCH_BODY_TIMEOUT_MS",i,{allowZero:!0,logger:o}),fetchConnectTimeoutMs:r(e,"FETCH_CONNECT_TIMEOUT_MS",3e4,{allowZero:!0,logger:o}),fetchKeepAliveTimeoutMs:r(e,"FETCH_KEEPALIVE_TIMEOUT_MS",4e3,{logger:o})}}e.s(["getApiBridgeTimeoutConfig",0,function(e=process.env,n){let o=t(e,"REQUEST_TIMEOUT_MS")?r(e,"REQUEST_TIMEOUT_MS",6e5,{allowZero:!0,logger:n}):void 0,s=r(e,"API_BRIDGE_PROXY_TIMEOUT_MS",o??3e4,{allowZero:!0,logger:n}),i=s>0?Math.max(s,3e5):3e5,a=r(e,"API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS",5e3,{allowZero:!0,logger:n}),l=r(e,"API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS",6e4,{allowZero:!0,logger:n});return{proxyTimeoutMs:s,serverRequestTimeoutMs:r(e,"API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS",o?Math.max(o,i):i,{allowZero:!0,logger:n}),serverHeadersTimeoutMs:l>0&&a>0?Math.max(l,a+1e3):l,serverKeepAliveTimeoutMs:a,serverSocketTimeoutMs:r(e,"API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS",0,{allowZero:!0,logger:n})}},"getTlsClientTimeoutConfig",0,function(e=process.env,t){let o=n(e,t);return{timeoutMs:r(e,"TLS_CLIENT_TIMEOUT_MS",o.fetchTimeoutMs,{allowZero:!0,logger:t})}},"getUpstreamTimeoutConfig",0,n])},78500,(e,t,r)=>{t.exports=e.x("node:async_hooks",()=>require("node:async_hooks"))},27699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},88947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},88617,e=>{"use strict";var t=e.i(42225);let r=(0,t.generateModels)(),n=(0,t.generateAliasMap)();e.s(["PROVIDER_ID_TO_ALIAS",0,n,"PROVIDER_MODELS",0,r,"findModelName",0,function(e,t){let n=r[e];if(!n)return t;let o=n.find(e=>e.id===t);return o?.name||t},"getDefaultModel",0,function(e){let t=r[e];return t?.[0]?.id||null},"getModelTargetFormat",0,function(e,t){let n=r[e];if(!n)return null;let o=n.find(e=>e.id===t);return o?.targetFormat||null},"getModelsByProviderId",0,function(e){return r[n[e]||e]||[]},"getProviderModels",0,function(e){return r[e]||[]},"isValidModel",0,function(e,t,n=new Set){if(n.has(e))return!0;let o=r[e];return!!o&&o.some(e=>e.id===t)}])},94611,e=>{"use strict";let t=e.i(14747).default.join(process.cwd(),"logs","application","app.log");function r(e,t){if(!e)return t;let r=Number.parseInt(e,10);return Number.isInteger(r)&&r>0?r:t}e.s(["getAppLogFilePath",0,function(){return process.env.APP_LOG_FILE_PATH||t},"getAppLogRetentionDays",0,function(){return r(process.env.APP_LOG_RETENTION_DAYS,7)},"getAppLogToFile",0,function(){return"false"!==process.env.APP_LOG_TO_FILE},"getCallLogMaxEntries",0,function(){return r(process.env.CALL_LOG_MAX_ENTRIES,1e4)},"getCallLogRetentionDays",0,function(){return r(process.env.CALL_LOG_RETENTION_DAYS,7)}])},96596,e=>{"use strict";var t=e.i(96039),r=e.i(94611);function n(){try{return(0,t.getDbInstance)()}catch{return null}}function o(e){let t=n();if(t)try{t.prepare(`
|
|
2
|
+
INSERT INTO audit_log (action, actor, target, details, ip_address)
|
|
3
|
+
VALUES (?, ?, ?, ?, ?)
|
|
4
|
+
`).run(e.action,e.actor||"system",e.target||null,"object"==typeof e.details?JSON.stringify(e.details):e.details||null,e.ipAddress||null)}catch{}}let s=new Set,i=new Map,a=!1,l=!1;for(let e of(process.env.NO_LOG_API_KEY_IDS||"").split(",").map(e=>e.trim()).filter(Boolean))s.add(e);e.s(["cleanupExpiredLogs",0,function(){let e=n(),t=(0,r.getAppLogRetentionDays)(),s=(0,r.getCallLogRetentionDays)();if(!e)return{deletedUsage:0,deletedCallLogs:0,deletedProxyLogs:0,deletedRequestDetailLogs:0,deletedAuditLogs:0,deletedMcpAuditLogs:0,appRetentionDays:t,callRetentionDays:s};let i=new Date(Date.now()-24*s*36e5).toISOString(),a=new Date(Date.now()-24*t*36e5).toISOString(),l=0,_=0,u=0,E=0,c=0,T=0;try{l=e.prepare("DELETE FROM usage_history WHERE timestamp < ?").run(i).changes}catch{}try{_=e.prepare("DELETE FROM call_logs WHERE timestamp < ?").run(i).changes}catch{}try{u=e.prepare("DELETE FROM proxy_logs WHERE timestamp < ?").run(i).changes}catch{}try{E=e.prepare("DELETE FROM request_detail_logs WHERE timestamp < ?").run(i).changes}catch{}try{c=e.prepare("DELETE FROM audit_log WHERE timestamp < ?").run(a).changes}catch{}try{T=e.prepare("DELETE FROM mcp_tool_audit WHERE created_at < ?").run(a).changes}catch{}return o({action:"compliance.cleanup",details:{deletedUsage:l,deletedCallLogs:_,deletedProxyLogs:u,deletedRequestDetailLogs:E,deletedAuditLogs:c,deletedMcpAuditLogs:T,appRetentionDays:t,callRetentionDays:s}}),{deletedUsage:l,deletedCallLogs:_,deletedProxyLogs:u,deletedRequestDetailLogs:E,deletedAuditLogs:c,deletedMcpAuditLogs:T,appRetentionDays:t,callRetentionDays:s}},"initAuditLog",0,function(){let e=n();e&&e.exec(`
|
|
5
|
+
CREATE TABLE IF NOT EXISTS audit_log (
|
|
6
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
7
|
+
timestamp TEXT NOT NULL DEFAULT (datetime('now')),
|
|
8
|
+
action TEXT NOT NULL,
|
|
9
|
+
actor TEXT NOT NULL DEFAULT 'system',
|
|
10
|
+
target TEXT,
|
|
11
|
+
details TEXT,
|
|
12
|
+
ip_address TEXT
|
|
13
|
+
);
|
|
14
|
+
CREATE INDEX IF NOT EXISTS idx_audit_timestamp ON audit_log(timestamp);
|
|
15
|
+
CREATE INDEX IF NOT EXISTS idx_audit_action ON audit_log(action);
|
|
16
|
+
`)},"isNoLog",0,function(e){if(!e)return!1;if(s.has(e))return!0;let t=function(e){let t=n();if(!t||!e||!function(e){if(a)return l;try{l=e.prepare("PRAGMA table_info(api_keys)").all().some(e=>"no_log"===e.name)}catch{l=!1}return a=!0,l}(t))return!1;let r=i.get(e);if(r&&Date.now()-r.timestamp<3e4)return r.value;try{let r=t.prepare("SELECT no_log FROM api_keys WHERE id = ?").get(e),n=!!(r&&1===Number(r.no_log));return i.set(e,{value:n,timestamp:Date.now()}),n}catch{return!1}}(e);return t&&s.add(e),t},"logAuditEvent",0,o,"setNoLog",0,function(e,t){t?s.add(e):s.delete(e),i.set(e,{value:t,timestamp:Date.now()})}])},36388,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0_2yik1._.js","server/chunks/src_lib_db_core_ts_0~nrtni._.js","server/chunks/src_lib_db_settings_ts_0ny_g49._.js","server/chunks/open-sse_config_providerRegistry_ts_0864w9~._.js"].map(t=>e.l(t))).then(()=>t(74210)))},33389,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_db_0izfnmi._.js","server/chunks/[root-of-the-server]__0cw3r6y._.js","server/chunks/src_lib_db_core_ts_0~nrtni._.js"].map(t=>e.l(t))).then(()=>t(43125)))},93231,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__01ojood._.js"].map(t=>e.l(t))).then(()=>t(36886)))},38463,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0bfgtif._.js"].map(t=>e.l(t))).then(()=>t(84064)))},22244,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0dsyo1x._.js","server/chunks/open-sse_config_providerRegistry_ts_0864w9~._.js"].map(t=>e.l(t))).then(()=>t(88617)))}];
|
|
17
|
+
|
|
18
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0-enwz-._.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/shared/utils/runtimeTimeouts.ts","../../../open-sse/config/providerModels.ts","../../../src/lib/logEnv.ts","../../../src/lib/compliance/index.ts"],"sourcesContent":["type EnvSource = Record<string, string | undefined>;\ntype TimeoutLogger = (message: string) => void;\n\ntype ReadTimeoutOptions = {\n allowZero?: boolean;\n logger?: TimeoutLogger;\n};\n\nexport const DEFAULT_FETCH_TIMEOUT_MS = 600_000;\nexport const DEFAULT_STREAM_IDLE_TIMEOUT_MS = 600_000;\nexport const DEFAULT_FETCH_CONNECT_TIMEOUT_MS = 30_000;\nexport const DEFAULT_FETCH_KEEPALIVE_TIMEOUT_MS = 4_000;\nexport const DEFAULT_API_BRIDGE_PROXY_TIMEOUT_MS = 30_000;\nexport const DEFAULT_API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS = 300_000;\nexport const DEFAULT_API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS = 60_000;\nexport const DEFAULT_API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS = 5_000;\nexport const DEFAULT_API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS = 0;\n\nfunction hasEnvValue(env: EnvSource, name: string): boolean {\n const raw = env[name];\n return raw != null && raw.trim() !== \"\";\n}\n\nexport type UpstreamTimeoutConfig = {\n fetchTimeoutMs: number;\n streamIdleTimeoutMs: number;\n fetchHeadersTimeoutMs: number;\n fetchBodyTimeoutMs: number;\n fetchConnectTimeoutMs: number;\n fetchKeepAliveTimeoutMs: number;\n};\n\nexport type TlsClientTimeoutConfig = {\n timeoutMs: number;\n};\n\nexport type ApiBridgeTimeoutConfig = {\n proxyTimeoutMs: number;\n serverRequestTimeoutMs: number;\n serverHeadersTimeoutMs: number;\n serverKeepAliveTimeoutMs: number;\n serverSocketTimeoutMs: number;\n};\n\nfunction readTimeoutMs(\n env: EnvSource,\n name: string,\n defaultValue: number,\n options: ReadTimeoutOptions = {}\n): number {\n const raw = env[name];\n if (raw == null || raw.trim() === \"\") return defaultValue;\n\n const parsed = Number(raw);\n const isValid = Number.isFinite(parsed) && (options.allowZero ? parsed >= 0 : parsed > 0);\n if (!isValid) {\n options.logger?.(`Invalid ${name}=\"${raw}\". Using default ${defaultValue}ms.`);\n return defaultValue;\n }\n\n return Math.floor(parsed);\n}\n\nexport function getUpstreamTimeoutConfig(\n env: EnvSource = process.env,\n logger?: TimeoutLogger\n): UpstreamTimeoutConfig {\n const sharedRequestTimeoutMs = hasEnvValue(env, \"REQUEST_TIMEOUT_MS\")\n ? readTimeoutMs(env, \"REQUEST_TIMEOUT_MS\", DEFAULT_FETCH_TIMEOUT_MS, {\n allowZero: true,\n logger,\n })\n : undefined;\n const fetchTimeoutMs = readTimeoutMs(\n env,\n \"FETCH_TIMEOUT_MS\",\n sharedRequestTimeoutMs ?? DEFAULT_FETCH_TIMEOUT_MS,\n {\n allowZero: true,\n logger,\n }\n );\n const streamIdleTimeoutMs = readTimeoutMs(\n env,\n \"STREAM_IDLE_TIMEOUT_MS\",\n sharedRequestTimeoutMs ?? DEFAULT_STREAM_IDLE_TIMEOUT_MS,\n {\n allowZero: true,\n logger,\n }\n );\n\n return {\n fetchTimeoutMs,\n streamIdleTimeoutMs,\n fetchHeadersTimeoutMs: readTimeoutMs(env, \"FETCH_HEADERS_TIMEOUT_MS\", fetchTimeoutMs, {\n allowZero: true,\n logger,\n }),\n fetchBodyTimeoutMs: readTimeoutMs(env, \"FETCH_BODY_TIMEOUT_MS\", fetchTimeoutMs, {\n allowZero: true,\n logger,\n }),\n fetchConnectTimeoutMs: readTimeoutMs(\n env,\n \"FETCH_CONNECT_TIMEOUT_MS\",\n DEFAULT_FETCH_CONNECT_TIMEOUT_MS,\n {\n allowZero: true,\n logger,\n }\n ),\n fetchKeepAliveTimeoutMs: readTimeoutMs(\n env,\n \"FETCH_KEEPALIVE_TIMEOUT_MS\",\n DEFAULT_FETCH_KEEPALIVE_TIMEOUT_MS,\n {\n logger,\n }\n ),\n };\n}\n\nexport function getTlsClientTimeoutConfig(\n env: EnvSource = process.env,\n logger?: TimeoutLogger\n): TlsClientTimeoutConfig {\n const upstream = getUpstreamTimeoutConfig(env, logger);\n\n return {\n timeoutMs: readTimeoutMs(env, \"TLS_CLIENT_TIMEOUT_MS\", upstream.fetchTimeoutMs, {\n allowZero: true,\n logger,\n }),\n };\n}\n\nexport function getApiBridgeTimeoutConfig(\n env: EnvSource = process.env,\n logger?: TimeoutLogger\n): ApiBridgeTimeoutConfig {\n const sharedRequestTimeoutMs = hasEnvValue(env, \"REQUEST_TIMEOUT_MS\")\n ? readTimeoutMs(env, \"REQUEST_TIMEOUT_MS\", DEFAULT_FETCH_TIMEOUT_MS, {\n allowZero: true,\n logger,\n })\n : undefined;\n const proxyTimeoutMs = readTimeoutMs(\n env,\n \"API_BRIDGE_PROXY_TIMEOUT_MS\",\n sharedRequestTimeoutMs ?? DEFAULT_API_BRIDGE_PROXY_TIMEOUT_MS,\n {\n allowZero: true,\n logger,\n }\n );\n const derivedRequestTimeoutMs =\n proxyTimeoutMs > 0\n ? Math.max(proxyTimeoutMs, DEFAULT_API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS)\n : DEFAULT_API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS;\n const serverKeepAliveTimeoutMs = readTimeoutMs(\n env,\n \"API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS\",\n DEFAULT_API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS,\n {\n allowZero: true,\n logger,\n }\n );\n const serverHeadersTimeoutMs = readTimeoutMs(\n env,\n \"API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS\",\n DEFAULT_API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS,\n {\n allowZero: true,\n logger,\n }\n );\n\n return {\n proxyTimeoutMs,\n serverRequestTimeoutMs: readTimeoutMs(\n env,\n \"API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS\",\n sharedRequestTimeoutMs\n ? Math.max(sharedRequestTimeoutMs, derivedRequestTimeoutMs)\n : derivedRequestTimeoutMs,\n {\n allowZero: true,\n logger,\n }\n ),\n serverHeadersTimeoutMs:\n serverHeadersTimeoutMs > 0 && serverKeepAliveTimeoutMs > 0\n ? Math.max(serverHeadersTimeoutMs, serverKeepAliveTimeoutMs + 1_000)\n : serverHeadersTimeoutMs,\n serverKeepAliveTimeoutMs,\n serverSocketTimeoutMs: readTimeoutMs(\n env,\n \"API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS\",\n DEFAULT_API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS,\n {\n allowZero: true,\n logger,\n }\n ),\n };\n}\n","import { generateModels, generateAliasMap, type RegistryModel } from \"./providerRegistry.ts\";\n\n// Provider models - Generated from providerRegistry.js (single source of truth)\nexport const PROVIDER_MODELS = generateModels();\n\n// Provider ID to alias mapping - Generated from providerRegistry.js\nexport const PROVIDER_ID_TO_ALIAS = generateAliasMap();\n\n// Helper functions\nexport function getProviderModels(aliasOrId: string): RegistryModel[] {\n return PROVIDER_MODELS[aliasOrId] || [];\n}\n\nexport function getDefaultModel(aliasOrId: string): string | null {\n const models = PROVIDER_MODELS[aliasOrId];\n return models?.[0]?.id || null;\n}\n\nexport function isValidModel(\n aliasOrId: string,\n modelId: string,\n passthroughProviders = new Set<string>()\n): boolean {\n if (passthroughProviders.has(aliasOrId)) return true;\n const models = PROVIDER_MODELS[aliasOrId];\n if (!models) return false;\n return models.some((m) => m.id === modelId);\n}\n\nexport function findModelName(aliasOrId: string, modelId: string): string {\n const models = PROVIDER_MODELS[aliasOrId];\n if (!models) return modelId;\n const found = models.find((m) => m.id === modelId);\n return found?.name || modelId;\n}\n\nexport function getModelTargetFormat(aliasOrId: string, modelId: string): string | null {\n const models = PROVIDER_MODELS[aliasOrId];\n if (!models) return null;\n const found = models.find((m) => m.id === modelId);\n return found?.targetFormat || null;\n}\n\nexport function getModelsByProviderId(providerId: string): RegistryModel[] {\n const alias = PROVIDER_ID_TO_ALIAS[providerId] || providerId;\n return PROVIDER_MODELS[alias] || [];\n}\n","import path from \"path\";\n\nconst DEFAULT_APP_LOG_RETENTION_DAYS = 7;\nconst DEFAULT_CALL_LOG_RETENTION_DAYS = 7;\nconst DEFAULT_APP_LOG_MAX_SIZE = 50 * 1024 * 1024;\nconst DEFAULT_APP_LOG_MAX_FILES = 20;\nconst DEFAULT_CALL_LOG_MAX_ENTRIES = 10000;\nconst DEFAULT_APP_LOG_PATH = path.join(process.cwd(), \"logs\", \"application\", \"app.log\");\n\nfunction parsePositiveInt(value: string | undefined, fallback: number): number {\n if (!value) return fallback;\n const parsed = Number.parseInt(value, 10);\n return Number.isInteger(parsed) && parsed > 0 ? parsed : fallback;\n}\n\nexport function parseFileSize(raw: string | undefined): number {\n if (!raw) return DEFAULT_APP_LOG_MAX_SIZE;\n const match = raw.match(/^(\\d+)\\s*(k|m|g|kb|mb|gb)?$/i);\n if (!match) return DEFAULT_APP_LOG_MAX_SIZE;\n const num = parseInt(match[1], 10);\n const unit = (match[2] || \"\").toLowerCase();\n switch (unit) {\n case \"k\":\n case \"kb\":\n return num * 1024;\n case \"m\":\n case \"mb\":\n return num * 1024 * 1024;\n case \"g\":\n case \"gb\":\n return num * 1024 * 1024 * 1024;\n default:\n return num;\n }\n}\n\nexport function getAppLogToFile(): boolean {\n return process.env.APP_LOG_TO_FILE !== \"false\";\n}\n\nexport function getAppLogFilePath(): string {\n return process.env.APP_LOG_FILE_PATH || DEFAULT_APP_LOG_PATH;\n}\n\nexport function getAppLogMaxFileSize(): number {\n return parseFileSize(process.env.APP_LOG_MAX_FILE_SIZE);\n}\n\nexport function getAppLogRetentionDays(): number {\n return parsePositiveInt(process.env.APP_LOG_RETENTION_DAYS, DEFAULT_APP_LOG_RETENTION_DAYS);\n}\n\nexport function getCallLogRetentionDays(): number {\n return parsePositiveInt(process.env.CALL_LOG_RETENTION_DAYS, DEFAULT_CALL_LOG_RETENTION_DAYS);\n}\n\nexport function getAppLogMaxFiles(): number {\n return parsePositiveInt(process.env.APP_LOG_MAX_FILES, DEFAULT_APP_LOG_MAX_FILES);\n}\n\nexport function getCallLogMaxEntries(): number {\n return parsePositiveInt(process.env.CALL_LOG_MAX_ENTRIES, DEFAULT_CALL_LOG_MAX_ENTRIES);\n}\n\nexport function getAppLogLevel(defaultLevel: string): string {\n return process.env.APP_LOG_LEVEL || defaultLevel;\n}\n\nexport function getAppLogFormat(defaultFormat: string): string {\n return process.env.APP_LOG_FORMAT || defaultFormat;\n}\n","/**\n * Compliance Controls — T-43\n *\n * Implements compliance features:\n * - APP_LOG_RETENTION_DAYS / CALL_LOG_RETENTION_DAYS: automatic log cleanup\n * - noLog opt-out per API key\n * - audit_log table for administrative actions\n *\n * @module lib/compliance\n */\n\nimport { getDbInstance } from \"../db/core\";\nimport { getAppLogRetentionDays, getCallLogRetentionDays } from \"../logEnv\";\n\n/** @returns {import(\"better-sqlite3\").Database | null} */\nfunction getDb() {\n try {\n return getDbInstance();\n } catch {\n return null;\n }\n}\n\n/**\n * Initialize the audit_log table.\n */\nexport function initAuditLog() {\n const db = getDb();\n if (!db) return;\n\n db.exec(`\n CREATE TABLE IF NOT EXISTS audit_log (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n timestamp TEXT NOT NULL DEFAULT (datetime('now')),\n action TEXT NOT NULL,\n actor TEXT NOT NULL DEFAULT 'system',\n target TEXT,\n details TEXT,\n ip_address TEXT\n );\n CREATE INDEX IF NOT EXISTS idx_audit_timestamp ON audit_log(timestamp);\n CREATE INDEX IF NOT EXISTS idx_audit_action ON audit_log(action);\n `);\n}\n\n/**\n * Log an administrative action.\n *\n * @param {Object} entry\n * @param {string} entry.action - Action type (e.g. \"settings.update\", \"apiKey.create\", \"password.reset\")\n * @param {string} [entry.actor=\"system\"] - Who performed the action\n * @param {string} [entry.target] - What was affected\n * @param {Object|string} [entry.details] - Additional details\n * @param {string} [entry.ipAddress] - Client IP\n */\nexport function logAuditEvent(entry: {\n action: string;\n actor?: string;\n target?: string;\n details?: unknown;\n ipAddress?: string;\n}) {\n const db = getDb();\n if (!db) return;\n\n try {\n const stmt = db.prepare(`\n INSERT INTO audit_log (action, actor, target, details, ip_address)\n VALUES (?, ?, ?, ?, ?)\n `);\n stmt.run(\n entry.action,\n entry.actor || \"system\",\n entry.target || null,\n typeof entry.details === \"object\" ? JSON.stringify(entry.details) : entry.details || null,\n entry.ipAddress || null\n );\n } catch {\n // Silently fail — audit logging should never break the main flow\n }\n}\n\n/**\n * Query audit log entries.\n *\n * @param {Object} [filter={}]\n * @param {string} [filter.action] - Filter by action type\n * @param {string} [filter.actor] - Filter by actor\n * @param {number} [filter.limit=100] - Max results\n * @param {number} [filter.offset=0] - Pagination offset\n * @returns {Array<{ id: number, timestamp: string, action: string, actor: string, target: string, details: any, ip_address: string }>}\n */\nexport function getAuditLog(\n filter: { action?: string; actor?: string; limit?: number; offset?: number } = {}\n) {\n const db = getDb();\n if (!db) return [];\n\n const conditions: string[] = [];\n const params: (string | number)[] = [];\n\n if (filter.action) {\n conditions.push(\"action = ?\");\n params.push(filter.action);\n }\n if (filter.actor) {\n conditions.push(\"actor = ?\");\n params.push(filter.actor);\n }\n\n const where = conditions.length > 0 ? `WHERE ${conditions.join(\" AND \")}` : \"\";\n const limit = filter.limit || 100;\n const offset = filter.offset || 0;\n\n const rows = db\n .prepare(`SELECT * FROM audit_log ${where} ORDER BY timestamp DESC LIMIT ? OFFSET ?`)\n .all(...params, limit, offset) as Array<Record<string, unknown> & { details?: string | null }>;\n\n return rows.map((row) => ({\n ...(row as Record<string, unknown>),\n details: row.details ? JSON.parse(String(row.details)) : null,\n }));\n}\n\n// ─── No-Log Opt-Out ────────────────\n\n/** @type {Set<string>} API key IDs with logging disabled */\nconst noLogKeys = new Set();\nconst noLogDbCache = new Map<string, { value: boolean; timestamp: number }>();\nlet noLogColumnVerified = false;\nlet hasNoLogColumn = false;\nconst NO_LOG_CACHE_TTL_MS = 30_000;\nconst noLogIdsFromEnv = (process.env.NO_LOG_API_KEY_IDS || \"\")\n .split(\",\")\n .map((value) => value.trim())\n .filter(Boolean);\nfor (const id of noLogIdsFromEnv) {\n noLogKeys.add(id);\n}\n\n/**\n * Set whether an API key opts out of request logging.\n *\n * @param {string} apiKeyId\n * @param {boolean} noLog\n */\nexport function setNoLog(apiKeyId: string, noLog: boolean) {\n if (noLog) {\n noLogKeys.add(apiKeyId);\n } else {\n noLogKeys.delete(apiKeyId);\n }\n noLogDbCache.set(apiKeyId, { value: noLog, timestamp: Date.now() });\n}\n\nfunction ensureNoLogColumn(db: import(\"better-sqlite3\").Database) {\n if (noLogColumnVerified) {\n return hasNoLogColumn;\n }\n\n try {\n const columns = db.prepare(\"PRAGMA table_info(api_keys)\").all() as Array<{ name: string }>;\n hasNoLogColumn = columns.some((column) => column.name === \"no_log\");\n } catch {\n hasNoLogColumn = false;\n }\n\n noLogColumnVerified = true;\n return hasNoLogColumn;\n}\n\nfunction readNoLogFromDb(apiKeyId: string): boolean {\n const db = getDb();\n if (!db || !apiKeyId) return false;\n if (!ensureNoLogColumn(db)) return false;\n\n const cached = noLogDbCache.get(apiKeyId);\n if (cached && Date.now() - cached.timestamp < NO_LOG_CACHE_TTL_MS) {\n return cached.value;\n }\n\n try {\n const row = db.prepare(\"SELECT no_log FROM api_keys WHERE id = ?\").get(apiKeyId) as\n | { no_log?: number }\n | undefined;\n const value = Boolean(row && Number(row.no_log) === 1);\n noLogDbCache.set(apiKeyId, { value, timestamp: Date.now() });\n return value;\n } catch {\n return false;\n }\n}\n\n/**\n * Check if an API key has opted out of logging.\n *\n * @param {string} apiKeyId\n * @returns {boolean}\n */\nexport function isNoLog(apiKeyId: string) {\n if (!apiKeyId) return false;\n if (noLogKeys.has(apiKeyId)) return true;\n\n const persistedNoLog = readNoLogFromDb(apiKeyId);\n if (persistedNoLog) {\n noLogKeys.add(apiKeyId);\n }\n return persistedNoLog;\n}\n\n// ─── Log Retention / Cleanup ────────────────\n\n/**\n * Get the configured retention periods.\n */\nexport function getRetentionDays() {\n return {\n app: getAppLogRetentionDays(),\n call: getCallLogRetentionDays(),\n };\n}\n\n/**\n * Clean up logs using split APP/CALL retention windows.\n * Should be called periodically (e.g. daily cron or on startup).\n *\n * @returns {{\n * deletedUsage: number,\n * deletedCallLogs: number,\n * deletedProxyLogs: number,\n * deletedRequestDetailLogs: number,\n * deletedAuditLogs: number,\n * deletedMcpAuditLogs: number,\n * appRetentionDays: number,\n * callRetentionDays: number\n * }}\n */\nexport function cleanupExpiredLogs() {\n const db = getDb();\n const appRetentionDays = getAppLogRetentionDays();\n const callRetentionDays = getCallLogRetentionDays();\n\n if (!db) {\n return {\n deletedUsage: 0,\n deletedCallLogs: 0,\n deletedProxyLogs: 0,\n deletedRequestDetailLogs: 0,\n deletedAuditLogs: 0,\n deletedMcpAuditLogs: 0,\n appRetentionDays,\n callRetentionDays,\n };\n }\n\n const callCutoff = new Date(Date.now() - callRetentionDays * 24 * 60 * 60 * 1000).toISOString();\n const appCutoff = new Date(Date.now() - appRetentionDays * 24 * 60 * 60 * 1000).toISOString();\n\n let deletedUsage = 0;\n let deletedCallLogs = 0;\n let deletedProxyLogs = 0;\n let deletedRequestDetailLogs = 0;\n let deletedAuditLogs = 0;\n let deletedMcpAuditLogs = 0;\n\n try {\n const r1 = db.prepare(\"DELETE FROM usage_history WHERE timestamp < ?\").run(callCutoff);\n deletedUsage = r1.changes;\n } catch {\n /* table may not exist */\n }\n\n try {\n const r2 = db.prepare(\"DELETE FROM call_logs WHERE timestamp < ?\").run(callCutoff);\n deletedCallLogs = r2.changes;\n } catch {\n /* table may not exist */\n }\n\n try {\n const r3 = db.prepare(\"DELETE FROM proxy_logs WHERE timestamp < ?\").run(callCutoff);\n deletedProxyLogs = r3.changes;\n } catch {\n /* table may not exist */\n }\n\n try {\n const r4 = db.prepare(\"DELETE FROM request_detail_logs WHERE timestamp < ?\").run(callCutoff);\n deletedRequestDetailLogs = r4.changes;\n } catch {\n /* legacy table may not exist */\n }\n\n try {\n const r5 = db.prepare(\"DELETE FROM audit_log WHERE timestamp < ?\").run(appCutoff);\n deletedAuditLogs = r5.changes;\n } catch {\n /* table may not exist */\n }\n\n try {\n const r6 = db.prepare(\"DELETE FROM mcp_tool_audit WHERE created_at < ?\").run(appCutoff);\n deletedMcpAuditLogs = r6.changes;\n } catch {\n /* table may not exist */\n }\n\n logAuditEvent({\n action: \"compliance.cleanup\",\n details: {\n deletedUsage,\n deletedCallLogs,\n deletedProxyLogs,\n deletedRequestDetailLogs,\n deletedAuditLogs,\n deletedMcpAuditLogs,\n appRetentionDays,\n callRetentionDays,\n },\n });\n\n return {\n deletedUsage,\n deletedCallLogs,\n deletedProxyLogs,\n deletedRequestDetailLogs,\n deletedAuditLogs,\n deletedMcpAuditLogs,\n appRetentionDays,\n callRetentionDays,\n };\n}\n"],"names":["DEFAULT_FETCH_TIMEOUT_MS","DEFAULT_STREAM_IDLE_TIMEOUT_MS","DEFAULT_FETCH_CONNECT_TIMEOUT_MS","DEFAULT_FETCH_KEEPALIVE_TIMEOUT_MS","DEFAULT_API_BRIDGE_PROXY_TIMEOUT_MS","DEFAULT_API_BRIDGE_SERVER_REQUEST_TIMEOUT_MS","DEFAULT_API_BRIDGE_SERVER_HEADERS_TIMEOUT_MS","DEFAULT_API_BRIDGE_SERVER_KEEPALIVE_TIMEOUT_MS","DEFAULT_API_BRIDGE_SERVER_SOCKET_TIMEOUT_MS","hasEnvValue","env","name","raw","trim","readTimeoutMs","defaultValue","options","parsed","Number","isValid","isFinite","allowZero","logger","Math","floor","getUpstreamTimeoutConfig","process","sharedRequestTimeoutMs","undefined","fetchTimeoutMs","streamIdleTimeoutMs","fetchHeadersTimeoutMs","fetchBodyTimeoutMs","fetchConnectTimeoutMs","fetchKeepAliveTimeoutMs","getTlsClientTimeoutConfig","upstream","timeoutMs","getApiBridgeTimeoutConfig","proxyTimeoutMs","derivedRequestTimeoutMs","max","serverKeepAliveTimeoutMs","serverHeadersTimeoutMs","serverRequestTimeoutMs","serverSocketTimeoutMs","PROVIDER_MODELS","PROVIDER_ID_TO_ALIAS","getProviderModels","aliasOrId","getDefaultModel","models","id","isValidModel","modelId","passthroughProviders","Set","has","some","m","findModelName","found","find","getModelTargetFormat","targetFormat","getModelsByProviderId","providerId","alias","DEFAULT_APP_LOG_RETENTION_DAYS","DEFAULT_CALL_LOG_RETENTION_DAYS","DEFAULT_APP_LOG_MAX_SIZE","DEFAULT_APP_LOG_MAX_FILES","DEFAULT_CALL_LOG_MAX_ENTRIES","DEFAULT_APP_LOG_PATH","join","cwd","parsePositiveInt","value","fallback","parseInt","isInteger","parseFileSize","match","num","unit","toLowerCase","getAppLogToFile","APP_LOG_TO_FILE","getAppLogFilePath","APP_LOG_FILE_PATH","getAppLogMaxFileSize","APP_LOG_MAX_FILE_SIZE","getAppLogRetentionDays","APP_LOG_RETENTION_DAYS","getCallLogRetentionDays","CALL_LOG_RETENTION_DAYS","getAppLogMaxFiles","APP_LOG_MAX_FILES","getCallLogMaxEntries","CALL_LOG_MAX_ENTRIES","getAppLogLevel","defaultLevel","APP_LOG_LEVEL","getAppLogFormat","defaultFormat","APP_LOG_FORMAT","getDb","initAuditLog","db","exec","logAuditEvent","entry","stmt","prepare","run","action","actor","target","details","JSON","stringify","ipAddress","getAuditLog","filter","conditions","params","push","where","length","limit","offset","rows","all","map","row","parse","String","noLogKeys","noLogDbCache","Map","noLogColumnVerified","hasNoLogColumn","NO_LOG_CACHE_TTL_MS","noLogIdsFromEnv","NO_LOG_API_KEY_IDS","split","Boolean","add","setNoLog","apiKeyId","noLog","delete","set","timestamp","Date","now","ensureNoLogColumn","columns","column","readNoLogFromDb","cached","get","no_log","isNoLog","persistedNoLog","getRetentionDays","app","call","cleanupExpiredLogs","appRetentionDays","callRetentionDays","deletedUsage","deletedCallLogs","deletedProxyLogs","deletedRequestDetailLogs","deletedAuditLogs","deletedMcpAuditLogs","callCutoff","toISOString","appCutoff","r1","changes","r2","r3","r4","r5","r6"],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module.exports=[6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},84603,(e,t,r)=>{"use strict";let n=new Int32Array([0,0x77073096,0xee0e612c,0x990951ba,0x76dc419,0x706af48f,0xe963a535,0x9e6495a3,0xedb8832,0x79dcb8a4,0xe0d5e91e,0x97d2d988,0x9b64c2b,0x7eb17cbd,0xe7b82d07,0x90bf1d91,0x1db71064,0x6ab020f2,0xf3b97148,0x84be41de,0x1adad47d,0x6ddde4eb,0xf4d4b551,0x83d385c7,0x136c9856,0x646ba8c0,0xfd62f97a,0x8a65c9ec,0x14015c4f,0x63066cd9,0xfa0f3d63,0x8d080df5,0x3b6e20c8,0x4c69105e,0xd56041e4,0xa2677172,0x3c03e4d1,0x4b04d447,0xd20d85fd,0xa50ab56b,0x35b5a8fa,0x42b2986c,0xdbbbc9d6,0xacbcf940,0x32d86ce3,0x45df5c75,0xdcd60dcf,0xabd13d59,0x26d930ac,0x51de003a,0xc8d75180,0xbfd06116,0x21b4f4b5,0x56b3c423,0xcfba9599,0xb8bda50f,0x2802b89e,0x5f058808,0xc60cd9b2,0xb10be924,0x2f6f7c87,0x58684c11,0xc1611dab,0xb6662d3d,0x76dc4190,0x1db7106,0x98d220bc,0xefd5102a,0x71b18589,0x6b6b51f,0x9fbfe4a5,0xe8b8d433,0x7807c9a2,0xf00f934,0x9609a88e,0xe10e9818,0x7f6a0dbb,0x86d3d2d,0x91646c97,0xe6635c01,0x6b6b51f4,0x1c6c6162,0x856530d8,0xf262004e,0x6c0695ed,0x1b01a57b,0x8208f4c1,0xf50fc457,0x65b0d9c6,0x12b7e950,0x8bbeb8ea,0xfcb9887c,0x62dd1ddf,0x15da2d49,0x8cd37cf3,0xfbd44c65,0x4db26158,0x3ab551ce,0xa3bc0074,0xd4bb30e2,0x4adfa541,0x3dd895d7,0xa4d1c46d,0xd3d6f4fb,0x4369e96a,0x346ed9fc,0xad678846,0xda60b8d0,0x44042d73,0x33031de5,0xaa0a4c5f,0xdd0d7cc9,0x5005713c,0x270241aa,0xbe0b1010,0xc90c2086,0x5768b525,0x206f85b3,0xb966d409,0xce61e49f,0x5edef90e,0x29d9c998,0xb0d09822,0xc7d7a8b4,0x59b33d17,0x2eb40d81,0xb7bd5c3b,0xc0ba6cad,0xedb88320,0x9abfb3b6,0x3b6e20c,0x74b1d29a,0xead54739,0x9dd277af,0x4db2615,0x73dc1683,0xe3630b12,0x94643b84,0xd6d6a3e,0x7a6a5aa8,0xe40ecf0b,0x9309ff9d,0xa00ae27,0x7d079eb1,0xf00f9344,0x8708a3d2,0x1e01f268,0x6906c2fe,0xf762575d,0x806567cb,0x196c3671,0x6e6b06e7,0xfed41b76,0x89d32be0,0x10da7a5a,0x67dd4acc,0xf9b9df6f,0x8ebeeff9,0x17b7be43,0x60b08ed5,0xd6d6a3e8,0xa1d1937e,0x38d8c2c4,0x4fdff252,0xd1bb67f1,0xa6bc5767,0x3fb506dd,0x48b2364b,0xd80d2bda,0xaf0a1b4c,0x36034af6,0x41047a60,0xdf60efc3,0xa867df55,0x316e8eef,0x4669be79,0xcb61b38c,0xbc66831a,0x256fd2a0,0x5268e236,0xcc0c7795,0xbb0b4703,0x220216b9,0x5505262f,0xc5ba3bbe,0xb2bd0b28,0x2bb45a92,0x5cb36a04,0xc2d7ffa7,0xb5d0cf31,0x2cd99e8b,0x5bdeae1d,0x9b64c2b0,0xec63f226,0x756aa39c,0x26d930a,0x9c0906a9,0xeb0e363f,0x72076785,0x5005713,0x95bf4a82,0xe2b87a14,0x7bb12bae,0xcb61b38,0x92d28e9b,0xe5d5be0d,0x7cdcefb7,0xbdbdf21,0x86d3d2d4,0xf1d4e242,0x68ddb3f8,0x1fda836e,0x81be16cd,0xf6b9265b,0x6fb077e1,0x18b74777,0x88085ae6,0xff0f6a70,0x66063bca,0x11010b5c,0x8f659eff,0xf862ae69,0x616bffd3,0x166ccf45,0xa00ae278,0xd70dd2ee,0x4e048354,0x3903b3c2,0xa7672661,0xd06016f7,0x4969474d,0x3e6e77db,0xaed16a4a,0xd9d65adc,0x40df0b66,936918e3,0xa9bcae53,0xdebb9ec5,0x47b2cf7f,0x30b5ffe9,0xbdbdf21c,0xcabac28a,0x53b39330,0x24b4a3a6,0xbad03605,0xcdd70693,0x54de5729,0x23d967bf,0xb3667a2e,0xc4614ab8,0x5d681b02,0x2a6f2b94,0xb40bbe37,0xc30c8ea1,0x5a05df1b,0x2d02ef8d]);function i(e){if(Buffer.isBuffer(e))return e;if("number"==typeof e)return Buffer.alloc(e);if("string"==typeof e)return Buffer.from(e);throw Error("input must be buffer, number, or string, received "+typeof e)}function o(e,t){e=i(e),Buffer.isBuffer(t)&&(t=t.readUInt32BE(0));let r=-1^~~t;for(var o=0;o<e.length;o++)r=n[(r^e[o])&255]^r>>>8;return -1^r}function a(){var e;let t;return e=o.apply(null,arguments),(t=i(4)).writeInt32BE(e,0),t}a.signed=function(){return o.apply(null,arguments)},a.unsigned=function(){return o.apply(null,arguments)>>>0},t.exports=a&&a.__esModule&&Object.prototype.hasOwnProperty.call(a,"default")?a.default:a},42945,(e,t,r)=>{var n=e.r(22734),i=e.r(88947).Transform,o=e.r(88947).PassThrough,a=e.r(6461),s=e.r(24361),f=e.r(27699).EventEmitter,c=e.r(27699).errorMonitor,l=e.r(84603);function d(){this.outputStream=new o,this.entries=[],this.outputStreamCursor=0,this.ended=!1,this.allDone=!1,this.forceZip64Eocd=!1,this.errored=!1,this.on(c,function(){this.errored=!0})}r.ZipFile=d,r.dateToDosDateTime=T,s.inherits(d,f),d.prototype.addFile=function(e,t,r){var i=this;if(t=S(t,!1),null==r&&(r={}),!p(i)){var o=new w(t,!1,r);i.entries.push(o),n.stat(e,function(t,a){return t?i.emit("error",t):a.isFile()?void(o.uncompressedSize=a.size,null==r.mtime&&o.setLastModDate(a.mtime),null==r.mode&&o.setFileAttributesMode(a.mode),o.setFileDataPumpFunction(function(){var t=n.createReadStream(e);o.state=w.FILE_DATA_IN_PROGRESS,t.on("error",function(e){i.emit("error",e)}),m(i,o,t)}),h(i)):i.emit("error",Error("not a file: "+e))})}},d.prototype.addReadStream=function(e,t,r){this.addReadStreamLazy(t,r,function(t){t(null,e)})},d.prototype.addReadStreamLazy=function(e,t,r){var n=this;if("function"==typeof t&&(r=t,t=null),null==t&&(t={}),e=S(e,!1),!p(n)){var i=new w(e,!1,t);n.entries.push(i),i.setFileDataPumpFunction(function(){i.state=w.FILE_DATA_IN_PROGRESS,r(function(e,t){if(e)return n.emit("error",e);m(n,i,t)})}),h(n)}},d.prototype.addBuffer=function(e,t,r){var n=this;if(t=S(t,!1),e.length>0x3fffffff)throw Error("buffer too large: "+e.length+" > 1073741823");if(null==r&&(r={}),null!=r.size)throw Error("options.size not allowed");if(!p(n)){var i=new w(t,!1,r);i.uncompressedSize=e.length,i.crc32=l.unsigned(e),i.crcAndFileSizeKnown=!0,n.entries.push(i),0===i.compressionLevel?o(e):a.deflateRaw(e,{level:i.compressionLevel},function(e,t){o(t)})}function o(e){i.compressedSize=e.length,i.setFileDataPumpFunction(function(){x(n,e),x(n,i.getDataDescriptor()),i.state=w.FILE_DATA_DONE,setImmediate(function(){h(n)})}),h(n)}},d.prototype.addEmptyDirectory=function(e,t){var r=this;if(e=S(e,!0),null==t&&(t={}),null!=t.size)throw Error("options.size not allowed");if(null!=t.compress)throw Error("options.compress not allowed");if(null!=t.compressionLevel)throw Error("options.compressionLevel not allowed");if(!p(r)){var n=new w(e,!0,t);r.entries.push(n),n.setFileDataPumpFunction(function(){x(r,n.getDataDescriptor()),n.state=w.FILE_DATA_DONE,h(r)}),h(r)}};var u=B([80,75,5,6]);function x(e,t){e.outputStream.write(t),e.outputStreamCursor+=t.length}function m(e,t,r){var n=new k,i=new N,s=0!==t.compressionLevel?new a.DeflateRaw({level:t.compressionLevel}):new o,f=new N;r.pipe(n).pipe(i).pipe(s).pipe(f).pipe(e.outputStream,{end:!1}),f.on("end",function(){if(t.crc32=n.crc32,null==t.uncompressedSize)t.uncompressedSize=i.byteCount;else if(t.uncompressedSize!==i.byteCount)return e.emit("error",Error("file data stream has unexpected number of bytes"));t.compressedSize=f.byteCount,e.outputStreamCursor+=t.compressedSize,x(e,t.getDataDescriptor()),t.state=w.FILE_DATA_DONE,h(e)})}function h(e){if(!e.allDone&&!e.errored){if(e.ended&&null!=e.calculatedTotalSizeCallback){var t=function(e){for(var t=0,r=0,n=0;n<e.entries.length;n++){var i=e.entries[n];if(0!==i.compressionLevel)return -1;if(i.state>=w.READY_TO_PUMP_FILE_DATA){if(null==i.uncompressedSize)return -1}else if(null==i.uncompressedSize)return null;i.relativeOffsetOfLocalHeader=t;var o=i.useZip64Format();t+=I+i.utf8FileName.length,t+=i.uncompressedSize,i.crcAndFileSizeKnown||(o?t+=_:t+=v),r+=F+i.utf8FileName.length+i.fileComment.length,i.forceDosTimestamp||(r+=A),o&&(r+=U)}var a=0;return(e.forceZip64Eocd||e.entries.length>=65535||r>=65535||t>=0xffffffff)&&(a+=b+g),t+r+(a+=y+e.comment.length)}(e);null!=t&&(e.calculatedTotalSizeCallback(t),e.calculatedTotalSizeCallback=null)}var r=function(){for(var t=0;t<e.entries.length;t++){var r=e.entries[t];if(r.state<w.FILE_DATA_DONE)return r}return null}();if(null!=r){if(r.state<w.READY_TO_PUMP_FILE_DATA||r.state===w.FILE_DATA_IN_PROGRESS)return;r.relativeOffsetOfLocalHeader=e.outputStreamCursor,x(e,r.getLocalFileHeader()),r.doFileDataPump()}else e.ended&&(e.offsetOfStartOfCentralDirectory=e.outputStreamCursor,e.entries.forEach(function(t){x(e,t.getCentralDirectoryRecord())}),x(e,function(e){var t=!1,r=e.entries.length;(e.forceZip64Eocd||e.entries.length>=65535)&&(r=65535,t=!0);var n=e.outputStreamCursor-e.offsetOfStartOfCentralDirectory,i=n;(e.forceZip64Eocd||n>=0xffffffff)&&(i=0xffffffff,t=!0);var o=e.offsetOfStartOfCentralDirectory;void((e.forceZip64Eocd||e.offsetOfStartOfCentralDirectory>=0xffffffff)&&(o=0xffffffff,t=!0));var a=P(y+e.comment.length);if(a.writeUInt32LE(0x6054b50,0),a.writeUInt16LE(0,4),a.writeUInt16LE(0,6),a.writeUInt16LE(r,8),a.writeUInt16LE(r,10),a.writeUInt32LE(i,12),a.writeUInt32LE(o,16),a.writeUInt16LE(e.comment.length,20),e.comment.copy(a,22),!t)return a;var s=P(b);s.writeUInt32LE(0x6064b50,0),z(s,b-12,4),s.writeUInt16LE(D,12),s.writeUInt16LE(L,14),s.writeUInt32LE(0,16),s.writeUInt32LE(0,20),z(s,e.entries.length,24),z(s,e.entries.length,32),z(s,n,40),z(s,e.offsetOfStartOfCentralDirectory,48);var f=P(g);return f.writeUInt32LE(0x7064b50,0),f.writeUInt32LE(0,4),z(f,e.outputStreamCursor,8),f.writeUInt32LE(1,16),Buffer.concat([s,f,a])}(e)),e.outputStream.end(),e.allDone=!0)}}function p(e){if(e.ended)throw Error("cannot add entries after calling end()");return!!e.errored}d.prototype.end=function(e,t){if(("function"==typeof e&&(t=e,e=null),null==e&&(e={}),!this.ended)&&(this.ended=!0,!this.errored)){if(this.calculatedTotalSizeCallback=t,this.forceZip64Eocd=!!e.forceZip64Format,e.comment){if("string"==typeof e.comment?this.comment=function(e){if(/^[\x20-\x7e]*$/.test(e))return B(e,"utf-8");if(null==M){M={};for(var t=0;t<R.length;t++)M[R[t]]=t}for(var r=P(e.length),t=0;t<e.length;t++){var n=M[e[t]];if(null==n)throw Error("character not encodable in CP437: "+JSON.stringify(e[t]));r[t]=n}return r}(e.comment):this.comment=e.comment,this.comment.length>65535)throw Error("comment is too large");if(j(this.comment,u))throw Error("comment contains end of central directory record signature")}else this.comment=E;h(this)}};var b=56,g=20,y=22;function S(e,t){if(""===e)throw Error("empty metadataPath");if(e=e.replace(/\\/g,"/"),/^[a-zA-Z]:/.test(e)||/^\//.test(e))throw Error("absolute path: "+e);if(-1!==e.split("/").indexOf(".."))throw Error("invalid relative path: "+e);var r=/\/$/.test(e);if(t)r||(e+="/");else if(r)throw Error("file path cannot end with '/': "+e);return e}var E=P(0);function w(e,t,r){if(this.utf8FileName=B(e),this.utf8FileName.length>65535)throw Error("utf8 file name too long. "+utf8FileName.length+" > 65535");if(this.isDirectory=t,this.state=w.WAITING_FOR_METADATA,this.setLastModDate(null!=r.mtime?r.mtime:new Date),this.forceDosTimestamp=!!r.forceDosTimestamp,null!=r.mode?this.setFileAttributesMode(r.mode):this.setFileAttributesMode(t?16893:33204),t?(this.crcAndFileSizeKnown=!0,this.crc32=0,this.uncompressedSize=0,this.compressedSize=0):(this.crcAndFileSizeKnown=!1,this.crc32=null,this.uncompressedSize=null,this.compressedSize=null,null!=r.size&&(this.uncompressedSize=r.size)),t?this.compressionLevel=0:this.compressionLevel=function(e){if(null!=e.compress&&null!=e.compressionLevel&&!!e.compress!=!!e.compressionLevel)throw Error("conflicting settings for compress and compressionLevel");return null!=e.compressionLevel?e.compressionLevel:6*(!1!==e.compress)}(r),this.forceZip64Format=!!r.forceZip64Format,r.fileComment){if("string"==typeof r.fileComment?this.fileComment=B(r.fileComment,"utf-8"):this.fileComment=r.fileComment,this.fileComment.length>65535)throw Error("fileComment is too large")}else this.fileComment=E}w.WAITING_FOR_METADATA=0,w.READY_TO_PUMP_FILE_DATA=1,w.FILE_DATA_IN_PROGRESS=2,w.FILE_DATA_DONE=3,w.prototype.setLastModDate=function(e){this.mtime=e;var t=T(e);this.lastModFileTime=t.time,this.lastModFileDate=t.date},w.prototype.setFileAttributesMode=function(e){if((65535&e)!==e)throw Error("invalid mode. expected: 0 <= "+e+" <= 65535");this.externalFileAttributes=e<<16>>>0},w.prototype.setFileDataPumpFunction=function(e){this.doFileDataPump=e,this.state=w.READY_TO_PUMP_FILE_DATA},w.prototype.useZip64Format=function(){return this.forceZip64Format||null!=this.uncompressedSize&&this.uncompressedSize>0xfffffffe||null!=this.compressedSize&&this.compressedSize>0xfffffffe||null!=this.relativeOffsetOfLocalHeader&&this.relativeOffsetOfLocalHeader>0xfffffffe};var I=30,L=45,D=831;w.prototype.getLocalFileHeader=function(){var e=0,t=0,r=0;this.crcAndFileSizeKnown&&(e=this.crc32,t=this.compressedSize,r=this.uncompressedSize);var n=P(I),i=2048;return this.crcAndFileSizeKnown||(i|=8),n.writeUInt32LE(0x4034b50,0),n.writeUInt16LE(20,4),n.writeUInt16LE(i,6),n.writeUInt16LE(this.getCompressionMethod(),8),n.writeUInt16LE(this.lastModFileTime,10),n.writeUInt16LE(this.lastModFileDate,12),n.writeUInt32LE(e,14),n.writeUInt32LE(t,18),n.writeUInt32LE(r,22),n.writeUInt16LE(this.utf8FileName.length,26),n.writeUInt16LE(0,28),Buffer.concat([n,this.utf8FileName])};var v=16,_=24;w.prototype.getDataDescriptor=function(){if(this.crcAndFileSizeKnown)return E;if(this.useZip64Format()){var e=P(_);return e.writeUInt32LE(0x8074b50,0),e.writeUInt32LE(this.crc32,4),z(e,this.compressedSize,8),z(e,this.uncompressedSize,16),e}var e=P(v);return e.writeUInt32LE(0x8074b50,0),e.writeUInt32LE(this.crc32,4),e.writeUInt32LE(this.compressedSize,8),e.writeUInt32LE(this.uncompressedSize,12),e};var F=46,A=9,U=28;w.prototype.getCentralDirectoryRecord=function(){var e=P(F),t=2048;this.crcAndFileSizeKnown||(t|=8);var r=E;if(!this.forceDosTimestamp){(r=P(A)).writeUInt16LE(21589,0),r.writeUInt16LE(A-4,2),r.writeUInt8(3,4);var n=Math.floor(this.mtime.getTime()/1e3);n<-0x80000000&&(n=-0x80000000),n>0x7fffffff&&(n=0x7fffffff),r.writeUInt32LE(n,5)}var i=this.compressedSize,o=this.uncompressedSize,a=this.relativeOffsetOfLocalHeader,s=20,f=E;return this.useZip64Format()&&(i=0xffffffff,o=0xffffffff,a=0xffffffff,s=L,(f=P(U)).writeUInt16LE(1,0),f.writeUInt16LE(U-4,2),z(f,this.uncompressedSize,4),z(f,this.compressedSize,12),z(f,this.relativeOffsetOfLocalHeader,20)),e.writeUInt32LE(0x2014b50,0),e.writeUInt16LE(D,4),e.writeUInt16LE(s,6),e.writeUInt16LE(t,8),e.writeUInt16LE(this.getCompressionMethod(),10),e.writeUInt16LE(this.lastModFileTime,12),e.writeUInt16LE(this.lastModFileDate,14),e.writeUInt32LE(this.crc32,16),e.writeUInt32LE(i,20),e.writeUInt32LE(o,24),e.writeUInt16LE(this.utf8FileName.length,28),e.writeUInt16LE(r.length+f.length,30),e.writeUInt16LE(this.fileComment.length,32),e.writeUInt16LE(0,34),e.writeUInt16LE(0,36),e.writeUInt32LE(this.externalFileAttributes,38),e.writeUInt32LE(a,42),Buffer.concat([e,this.utf8FileName,r,f,this.fileComment])},w.prototype.getCompressionMethod=function(){return 8*(0!==this.compressionLevel)};var O=new Date(1980,0,1),C=new Date(2107,11,31,23,59,58);function T(e){return e<O?e=O:e>C&&(e=C),{date:31&e.getDate()|(e.getMonth()+1&15)<<5|(e.getFullYear()-1980&127)<<9,time:Math.floor(e.getSeconds()/2)|(63&e.getMinutes())<<5|(31&e.getHours())<<11}}function z(e,t,r){var n=Math.floor(t/0x100000000);e.writeUInt32LE(t%0x100000000,r),e.writeUInt32LE(n,r+4)}function N(e){i.call(this,e),this.byteCount=0}function k(e){i.call(this,e),this.crc32=0}s.inherits(N,i),N.prototype._transform=function(e,t,r){this.byteCount+=e.length,r(null,e)},s.inherits(k,i),k.prototype._transform=function(e,t,r){this.crc32=l.unsigned(e,this.crc32),r(null,e)};var R="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ";if(256!==R.length)throw Error("assertion failure");var M=null;function P(e){P=function(e){return Buffer.allocUnsafe(e)};try{return P(e)}catch(t){return(P=function(e){return new Buffer(e)})(e)}}function B(e,t){B=function(e,t){return Buffer.from(e,t)};try{return B(e,t)}catch(r){return(B=function(e,t){return new Buffer(e,t)})(e,t)}}function j(e,t){j=function(e,t){return e.includes(t)};try{return j(e,t)}catch(r){return(j=function(e,t){for(var r=0;r<=e.length-t.length;r++)for(var n=0;;n++){if(n===t.length)return!0;if(e[r+n]!==t[n])break}return!1})(e,t)}}},95713,e=>e.a(async(t,r)=>{try{var n=e.i(22734),i=e.i(14747),o=e.i(42945),a=e.i(96039),s=e.i(2755);let t=!a.isCloud&&!a.isBuildPhase,x=a.isCloud?null:(0,s.getLegacyDotDataDir)(),m=a.isCloud?null:i.default.join(a.DATA_DIR,"call_logs"),h=a.isCloud?null:i.default.join(a.DATA_DIR,"log_archives"),p=a.isCloud||!h?null:i.default.join(h,"legacy-request-logs.json"),b=a.isCloud?null:i.default.join(a.DATA_DIR,"logs"),g=a.isCloud?null:i.default.join(a.DATA_DIR,"log.txt"),y=a.isCloud||!x?null:i.default.join(x,"usage.json"),S=a.isCloud||!x?null:i.default.join(x,"call_logs.json"),E=a.isCloud?null:i.default.join(a.DATA_DIR,"usage.json"),w=a.isCloud?null:i.default.join(a.DATA_DIR,"call_logs.json");function f(e,t,r){!e||!t||!n.default.existsSync(e)||n.default.existsSync(t)||(n.default.statSync(e).isDirectory()?n.default.cpSync(e,t,{recursive:!0}):n.default.copyFileSync(e,t),console.log(`[usageDb] Migrated ${r}: ${e} -> ${t}`))}function c(){h&&n.default.mkdirSync(h,{recursive:!0})}function l(){if(t&&x&&!(0,s.isSamePath)(a.DATA_DIR,x))try{f(y,E,"usage history"),f(S,w,"call log index")}catch(e){console.error("[usageDb] Legacy migration failed:",e.message)}}async function d(){let e;if(!t||p&&n.default.existsSync(p))return null;let r=(e=[],b&&n.default.existsSync(b)&&e.push({sourcePath:b,archiveRoot:"data/logs",deleteAfterArchive:!0}),g&&n.default.existsSync(g)&&e.push({sourcePath:g,archiveRoot:"data/log.txt",deleteAfterArchive:!0}),m&&function(e){if(!e||!n.default.existsSync(e))return!1;try{for(let t of n.default.readdirSync(e)){let r=i.default.join(e,t),o=n.default.statSync(r);if(o.isFile()&&/^\d{6}_.+_\d{3}\.json$/i.test(t))return!0;if(o.isDirectory()){for(let e of n.default.readdirSync(r))if(/^\d{6}_.+_\d{3}\.json$/i.test(e))return!0}}}catch{}return!1}(m)&&e.push({sourcePath:m,archiveRoot:"data/call_logs",deleteAfterArchive:!0}),e);if(0===r.length)return null;let a=await new Promise((e,t)=>{if(!h)return void t(Error("LOG_ARCHIVES_DIR is not configured"));c();let a=new Date().toISOString().replace(/[:]/g,"-"),s=`${a}_legacy-request-logs.zip`,f=i.default.join(h,s),l=new o.ZipFile,d=n.default.createWriteStream(f);d.on("close",()=>e(s)),d.on("error",e=>{n.default.rmSync(f,{force:!0}),t(e)}),l.outputStream.pipe(d);try{for(let e of r)!function e(t,r,o){if(n.default.statSync(r).isDirectory()){let a=n.default.readdirSync(r);if(0===a.length)return void t.addEmptyDirectory(o);for(let n of a)e(t,i.default.join(r,n),i.default.posix.join(o,n));return}t.addFile(r,o)}(l,e.sourcePath,e.archiveRoot);l.end()}catch(e){n.default.rmSync(f,{force:!0}),l.end(),t(e)}});for(let e of r)e.deleteAfterArchive&&n.default.existsSync(e.sourcePath)&&(n.default.statSync(e.sourcePath).isDirectory()?n.default.rmSync(e.sourcePath,{recursive:!0,force:!0}):n.default.rmSync(e.sourcePath,{force:!0}));return p&&(c(),n.default.writeFileSync(p,JSON.stringify({migratedAt:new Date().toISOString(),archiveFilename:a},null,2))),console.log(`[usageDb] Archived legacy request logs to ${a}`),a}function u(){if(!t)return;let e=(0,a.getDbInstance)();if(E&&n.default.existsSync(E))try{let t=n.default.readFileSync(E,"utf-8"),r=JSON.parse(t).history||[];if(r.length>0){console.log(`[usageDb] Migrating ${r.length} usage entries from JSON → SQLite...`);let t=e.prepare(`
|
|
2
|
+
INSERT INTO usage_history (provider, model, connection_id, api_key_id, api_key_name,
|
|
3
|
+
tokens_input, tokens_output, tokens_cache_read, tokens_cache_creation, tokens_reasoning,
|
|
4
|
+
status, success, latency_ms, ttft_ms, error_code, timestamp)
|
|
5
|
+
VALUES (@provider, @model, @connectionId, @apiKeyId, @apiKeyName,
|
|
6
|
+
@tokensInput, @tokensOutput, @tokensCacheRead, @tokensCacheCreation, @tokensReasoning,
|
|
7
|
+
@status, @success, @latencyMs, @ttftMs, @errorCode, @timestamp)
|
|
8
|
+
`);e.transaction(()=>{for(let e of r)t.run({provider:e.provider||null,model:e.model||null,connectionId:e.connectionId||null,apiKeyId:e.apiKeyId||null,apiKeyName:e.apiKeyName||null,tokensInput:e.tokens?.input??e.tokens?.prompt_tokens??0,tokensOutput:e.tokens?.output??e.tokens?.completion_tokens??0,tokensCacheRead:e.tokens?.cacheRead??e.tokens?.cached_tokens??0,tokensCacheCreation:e.tokens?.cacheCreation??e.tokens?.cache_creation_input_tokens??0,tokensReasoning:e.tokens?.reasoning??e.tokens?.reasoning_tokens??0,status:e.status||null,success:+(!1!==e.success),latencyMs:Number.isFinite(Number(e.latencyMs))?Number(e.latencyMs):0,ttftMs:Number.isFinite(Number(e.timeToFirstTokenMs))?Number(e.timeToFirstTokenMs):Number.isFinite(Number(e.latencyMs))?Number(e.latencyMs):0,errorCode:e.errorCode||null,timestamp:e.timestamp||new Date().toISOString()})})(),console.log(`[usageDb] ✓ Migrated ${r.length} usage entries`)}n.default.renameSync(E,`${E}.migrated`)}catch(e){console.error("[usageDb] Failed to migrate usage.json:",e.message)}if(w&&n.default.existsSync(w))try{let t=n.default.readFileSync(w,"utf-8"),r=JSON.parse(t).logs||[];if(r.length>0){console.log(`[usageDb] Migrating ${r.length} call log entries from JSON → SQLite...`);let t=e.prepare(`
|
|
9
|
+
INSERT OR IGNORE INTO call_logs (id, timestamp, method, path, status, model, provider,
|
|
10
|
+
account, connection_id, duration, tokens_in, tokens_out, source_format, target_format,
|
|
11
|
+
api_key_id, api_key_name, combo_name, request_body, response_body, error,
|
|
12
|
+
artifact_relpath, has_pipeline_details)
|
|
13
|
+
VALUES (@id, @timestamp, @method, @path, @status, @model, @provider,
|
|
14
|
+
@account, @connectionId, @duration, @tokensIn, @tokensOut, @sourceFormat, @targetFormat,
|
|
15
|
+
@apiKeyId, @apiKeyName, @comboName, @requestBody, @responseBody, @error,
|
|
16
|
+
NULL, 0)
|
|
17
|
+
`);e.transaction(()=>{for(let e of r)t.run({id:e.id||`${Date.now()}-${Math.random().toString(36).slice(2,6)}`,timestamp:e.timestamp||new Date().toISOString(),method:e.method||"POST",path:e.path||null,status:e.status||0,model:e.model||null,provider:e.provider||null,account:e.account||null,connectionId:e.connectionId||null,duration:e.duration||0,tokensIn:e.tokens?.in??0,tokensOut:e.tokens?.out??0,sourceFormat:e.sourceFormat||null,targetFormat:e.targetFormat||null,apiKeyId:e.apiKeyId||null,apiKeyName:e.apiKeyName||null,comboName:e.comboName||null,requestBody:e.requestBody?JSON.stringify(e.requestBody):null,responseBody:e.responseBody?JSON.stringify(e.responseBody):null,error:e.error||null})})(),console.log(`[usageDb] ✓ Migrated ${r.length} call log entries`)}n.default.renameSync(w,`${w}.migrated`)}catch(e){console.error("[usageDb] Failed to migrate call_logs.json:",e.message)}}if(l(),t){try{await d()}catch(e){console.error("[usageDb] Failed to archive legacy request logs:",e.message)}try{u()}catch{}}e.s(["CALL_LOGS_DIR",0,m,"LOG_ARCHIVES_DIR",0,h,"archiveLegacyRequestLogs",0,d,"migrateLegacyUsageFiles",0,l,"migrateUsageJsonToSqlite",0,u,"shouldPersistToDisk",0,t]),r()}catch(e){r(e)}},!0)];
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0-fr5ja._.js.map
|