From d2ca021b50caad8378d3761e1b1a36d3dab833e4 Mon Sep 17 00:00:00 2001
From: Sukadia <37813632+Sukadia@users.noreply.github.com>
Date: Fri, 5 Jan 2024 16:26:22 -0800
Subject: [PATCH] Add /poster redirect
---
.next/BUILD_ID | 2 +-
.next/app-build-manifest.json | 102 +-
.next/app-path-routes-manifest.json | 9 +-
.next/build-manifest.json | 24 +-
.next/next-minimal-server.js.nft.json | 1 +
.next/next-server.js.nft.json | 2 +-
.next/prerender-manifest.js | 2 +-
.next/prerender-manifest.json | 2 +-
.next/required-server-files.json | 2 +-
.next/routes-manifest.json | 2 +-
.next/server/app-paths-manifest.json | 7 +-
.next/server/app/_not-found.html | 1 +
.next/server/app/_not-found.js | 1 +
.next/server/app/_not-found.js.nft.json | 1 +
.next/server/app/_not-found.meta | 5 +
.next/server/app/_not-found.rsc | 11 +
.../_not-found_client-reference-manifest.js | 1 +
.next/server/app/everyone-votes/privacy.html | 2 +-
.next/server/app/everyone-votes/privacy.meta | 6 +-
.next/server/app/everyone-votes/privacy.rsc | 13 +-
.../server/app/everyone-votes/privacy/page.js | 416 +-
.../everyone-votes/privacy/page.js.nft.json | 2 +-
.../privacy/page_client-reference-manifest.js | 1 +
.next/server/app/everyone-votes/terms.html | 2 +-
.next/server/app/everyone-votes/terms.meta | 6 +-
.next/server/app/everyone-votes/terms.rsc | 13 +-
.next/server/app/everyone-votes/terms/page.js | 408 +-
.../app/everyone-votes/terms/page.js.nft.json | 2 +-
.../terms/page_client-reference-manifest.js | 1 +
.next/server/app/favicon.ico.meta | 2 +-
.next/server/app/favicon.ico/route.js | 143 +-
.../server/app/favicon.ico/route.js.nft.json | 2 +-
.next/server/app/index.html | 2 +-
.next/server/app/index.meta | 6 +-
.next/server/app/index.rsc | 19 +-
.next/server/app/page.js | 602 +-
.next/server/app/page.js.nft.json | 2 +-
.../app/page_client-reference-manifest.js | 1 +
.next/server/app/space.html | 2 +-
.next/server/app/space.meta | 6 +-
.next/server/app/space.rsc | 17 +-
.next/server/app/space/page.js | 721 +-
.next/server/app/space/page.js.nft.json | 2 +-
.../space/page_client-reference-manifest.js | 1 +
.next/server/app/wiston.html | 2 +-
.next/server/app/wiston.meta | 6 +-
.next/server/app/wiston.rsc | 15 +-
.next/server/app/wiston/page.js | 594 +-
.next/server/app/wiston/page.js.nft.json | 2 +-
.../wiston/page_client-reference-manifest.js | 1 +
.next/server/chunks/106.js | 113 +
.next/server/chunks/2.js | 1 +
.next/server/chunks/201.js | 12 +
.next/server/chunks/310.js | 1 +
.next/server/chunks/323.js | 6 +
.next/server/chunks/405.js | 509 -
.next/server/chunks/421.js | 690 -
.next/server/chunks/572.js | 5338 -
.next/server/chunks/616.js | 9000 -
.next/server/chunks/622.js | 1 +
.next/server/chunks/676.js | 6 +
.next/server/chunks/816.js | 90 -
.next/server/chunks/837.js | 1 +
.next/server/chunks/840.js | 1 +
.next/server/chunks/862.js | 1 +
.next/server/chunks/864.js | 267004 ---------------
.next/server/chunks/984.js | 11502 +
.next/server/client-reference-manifest.js | 1 -
.next/server/client-reference-manifest.json | 1 -
.next/server/flight-server-css-manifest.js | 1 -
.next/server/flight-server-css-manifest.json | 1 -
.next/server/functions-config-manifest.json | 1 +
.next/server/middleware-build-manifest.js | 2 +-
.../middleware-react-loadable-manifest.js | 2 +-
.next/server/next-font-manifest.js | 2 +-
.next/server/next-font-manifest.json | 7 +-
.next/server/pages-manifest.json | 7 +-
.next/server/pages/404.html | 2 +-
.next/server/pages/500.html | 2 +-
.next/server/pages/_app.js | 95 +-
.next/server/pages/_app.js.nft.json | 2 +-
.next/server/pages/_document.js | 931 +-
.next/server/pages/_document.js.nft.json | 2 +-
.next/server/pages/_error.js | 413 +-
.next/server/pages/_error.js.nft.json | 2 +-
.next/server/server-reference-manifest.js | 2 +-
.next/server/server-reference-manifest.json | 2 +-
.next/server/webpack-runtime.js | 191 +-
.../9CqSqX2Hqhh4fwiD8kSfJ/_buildManifest.js | 1 +
.../_ssgManifest.js | 0
.../Qb5fVlqLpQAODnw100j4z/_buildManifest.js | 1 -
.next/static/chunks/173-2ffa9652644381a8.js | 11507 +
.../chunks/1f3d3139-f107a678ff6361e9.js | 1 +
.next/static/chunks/23-fb41cbadaf19fac2.js | 11400 -
.../chunks/2443530c-097fe1871e1d7679.js | 9 -
.../chunks/43cb4aaa-0dfcb2e81cc1cbc1.js | 1 -
.next/static/chunks/472-51fd3a56159f1e5b.js | 25 +
.next/static/chunks/488-66ca2c1db348e680.js | 25 -
.../chunks/51231e76-cf1b2fc1d6b83e48.js | 1 -
.../chunks/53417c1a-c755bb806ffa7a5d.js | 1 -
.../chunks/537cd76e-7aba1cf7a4752418.js | 1 +
.../chunks/604a08ec-59af37265fb99b3d.js | 4 +
.next/static/chunks/716.9317a587abbcf60a.js | 1 -
.next/static/chunks/751.591370f90aaa22a6.js | 1 +
.next/static/chunks/986-37229c658d9b7b30.js | 9 +
.../chunks/app/_not-found-fbdfab077d258bb2.js | 1 +
.../privacy/page-29a62894605199e6.js | 1 +
.../privacy/page-4d788de82a96b899.js | 1 -
.../terms/page-5aa776690a4e5edf.js | 1 -
.../terms/page-c0da9088d7e5e9ae.js | 1 +
.../chunks/app/layout-3d94fcc1098e9e97.js | 1 -
.../chunks/app/layout-ca25527909104096.js | 1 +
.../chunks/app/page-39b6caed82efc627.js | 1 +
.../chunks/app/page-8204c3b0f59bd205.js | 9 -
.../app/space/loading-12fd180f06101306.js | 1 +
.../app/space/loading-df1b886b524be596.js | 1 -
.../chunks/app/space/page-aa0f5917bd776cea.js | 1 -
.../chunks/app/space/page-b8120f6d5470d1c7.js | 1 +
.../app/wiston/page-becb82f49ed47545.js | 9 -
.../app/wiston/page-c31b345ea6ea73af.js | 1 +
.../chunks/d67c510a-e497b3cd5bf43bb4.js | 1 +
.../chunks/e1206f8c-ab5b5541f866e530.js | 1 +
.../chunks/f126df28-0647fc1012c29407.js | 1 -
.../chunks/f75787ed-011198ef7e5d7754.js | 1 -
.../chunks/fd9d1056-ba10bf844a47945b.js | 9 +
.../chunks/framework-8883d1e9be70c3da.js | 8 +-
.next/static/chunks/main-07bf56c05aa7cd6e.js | 1 +
.../chunks/main-app-0be5dce44311dbbf.js | 1 -
.../chunks/main-app-cf3eb22ffef632f7.js | 1 +
.next/static/chunks/main-dba5d122367f02b7.js | 1 -
.../chunks/pages/_app-1534f180665c857f.js | 1 +
.../chunks/pages/_app-b555d5e1eab47959.js | 1 -
...86538ac0.js => _error-b646007f40c4f0a8.js} | 2 +-
.../static/chunks/webpack-54b114c68857d808.js | 1 -
.../static/chunks/webpack-c42a79c5d8b7c910.js | 1 +
...0d1a0ca01c66f.css => 1d2d59615145af7d.css} | 2 +-
.next/static/media/05a31a2ca4975f99-s.woff2 | Bin 0 -> 10496 bytes
.next/static/media/2aaf0723e720e8b9-s.p.woff2 | Bin 37780 -> 0 bytes
.next/static/media/513657b02c5c193f-s.woff2 | Bin 0 -> 17612 bytes
.next/static/media/51ed15f9841b9f9d-s.woff2 | Bin 0 -> 22524 bytes
.next/static/media/9c4f34569c9b36ca-s.woff2 | Bin 57244 -> 0 bytes
.next/static/media/ae9ae6716d4f8bf8-s.woff2 | Bin 11924 -> 0 bytes
.next/static/media/b1db3e28af9ef94a-s.woff2 | Bin 8652 -> 0 bytes
.next/static/media/b967158bc7d7a9fb-s.woff2 | Bin 17040 -> 0 bytes
.next/static/media/c0f5ec5bbf5913b7-s.woff2 | Bin 21960 -> 0 bytes
.next/static/media/c9a5bc6a7c948fb0-s.p.woff2 | Bin 0 -> 46552 bytes
.next/static/media/d1d9458b69004127-s.woff2 | Bin 26728 -> 0 bytes
.next/static/media/d6b16ce4a6175f26-s.woff2 | Bin 0 -> 80044 bytes
.next/static/media/ec159349637c90ad-s.woff2 | Bin 0 -> 27316 bytes
.next/static/media/fd4db3eb5472fc27-s.woff2 | Bin 0 -> 12768 bytes
.next/trace | 37 +-
.../types/app/everyone-votes/privacy/page.ts | 11 +-
.next/types/app/everyone-votes/terms/page.ts | 11 +-
.next/types/app/page.ts | 11 +-
.next/types/app/space/page.ts | 11 +-
.next/types/app/wiston/page.ts | 11 +-
app/wiston/page.tsx | 2 -
next.config.js | 5 +
package-lock.json | 777 +-
package.json | 2 +-
160 files changed, 23932 insertions(+), 299138 deletions(-)
create mode 100644 .next/next-minimal-server.js.nft.json
create mode 100644 .next/server/app/_not-found.html
create mode 100644 .next/server/app/_not-found.js
create mode 100644 .next/server/app/_not-found.js.nft.json
create mode 100644 .next/server/app/_not-found.meta
create mode 100644 .next/server/app/_not-found.rsc
create mode 100644 .next/server/app/_not-found_client-reference-manifest.js
create mode 100644 .next/server/app/everyone-votes/privacy/page_client-reference-manifest.js
create mode 100644 .next/server/app/everyone-votes/terms/page_client-reference-manifest.js
create mode 100644 .next/server/app/page_client-reference-manifest.js
create mode 100644 .next/server/app/space/page_client-reference-manifest.js
create mode 100644 .next/server/app/wiston/page_client-reference-manifest.js
create mode 100644 .next/server/chunks/106.js
create mode 100644 .next/server/chunks/2.js
create mode 100644 .next/server/chunks/201.js
create mode 100644 .next/server/chunks/310.js
create mode 100644 .next/server/chunks/323.js
delete mode 100644 .next/server/chunks/405.js
delete mode 100644 .next/server/chunks/421.js
delete mode 100644 .next/server/chunks/572.js
delete mode 100644 .next/server/chunks/616.js
create mode 100644 .next/server/chunks/622.js
create mode 100644 .next/server/chunks/676.js
delete mode 100644 .next/server/chunks/816.js
create mode 100644 .next/server/chunks/837.js
create mode 100644 .next/server/chunks/840.js
create mode 100644 .next/server/chunks/862.js
delete mode 100644 .next/server/chunks/864.js
create mode 100644 .next/server/chunks/984.js
delete mode 100644 .next/server/client-reference-manifest.js
delete mode 100644 .next/server/client-reference-manifest.json
delete mode 100644 .next/server/flight-server-css-manifest.js
delete mode 100644 .next/server/flight-server-css-manifest.json
create mode 100644 .next/server/functions-config-manifest.json
create mode 100644 .next/static/9CqSqX2Hqhh4fwiD8kSfJ/_buildManifest.js
rename .next/static/{Qb5fVlqLpQAODnw100j4z => 9CqSqX2Hqhh4fwiD8kSfJ}/_ssgManifest.js (100%)
delete mode 100644 .next/static/Qb5fVlqLpQAODnw100j4z/_buildManifest.js
create mode 100644 .next/static/chunks/173-2ffa9652644381a8.js
create mode 100644 .next/static/chunks/1f3d3139-f107a678ff6361e9.js
delete mode 100644 .next/static/chunks/23-fb41cbadaf19fac2.js
delete mode 100644 .next/static/chunks/2443530c-097fe1871e1d7679.js
delete mode 100644 .next/static/chunks/43cb4aaa-0dfcb2e81cc1cbc1.js
create mode 100644 .next/static/chunks/472-51fd3a56159f1e5b.js
delete mode 100644 .next/static/chunks/488-66ca2c1db348e680.js
delete mode 100644 .next/static/chunks/51231e76-cf1b2fc1d6b83e48.js
delete mode 100644 .next/static/chunks/53417c1a-c755bb806ffa7a5d.js
create mode 100644 .next/static/chunks/537cd76e-7aba1cf7a4752418.js
create mode 100644 .next/static/chunks/604a08ec-59af37265fb99b3d.js
delete mode 100644 .next/static/chunks/716.9317a587abbcf60a.js
create mode 100644 .next/static/chunks/751.591370f90aaa22a6.js
create mode 100644 .next/static/chunks/986-37229c658d9b7b30.js
create mode 100644 .next/static/chunks/app/_not-found-fbdfab077d258bb2.js
create mode 100644 .next/static/chunks/app/everyone-votes/privacy/page-29a62894605199e6.js
delete mode 100644 .next/static/chunks/app/everyone-votes/privacy/page-4d788de82a96b899.js
delete mode 100644 .next/static/chunks/app/everyone-votes/terms/page-5aa776690a4e5edf.js
create mode 100644 .next/static/chunks/app/everyone-votes/terms/page-c0da9088d7e5e9ae.js
delete mode 100644 .next/static/chunks/app/layout-3d94fcc1098e9e97.js
create mode 100644 .next/static/chunks/app/layout-ca25527909104096.js
create mode 100644 .next/static/chunks/app/page-39b6caed82efc627.js
delete mode 100644 .next/static/chunks/app/page-8204c3b0f59bd205.js
create mode 100644 .next/static/chunks/app/space/loading-12fd180f06101306.js
delete mode 100644 .next/static/chunks/app/space/loading-df1b886b524be596.js
delete mode 100644 .next/static/chunks/app/space/page-aa0f5917bd776cea.js
create mode 100644 .next/static/chunks/app/space/page-b8120f6d5470d1c7.js
delete mode 100644 .next/static/chunks/app/wiston/page-becb82f49ed47545.js
create mode 100644 .next/static/chunks/app/wiston/page-c31b345ea6ea73af.js
create mode 100644 .next/static/chunks/d67c510a-e497b3cd5bf43bb4.js
create mode 100644 .next/static/chunks/e1206f8c-ab5b5541f866e530.js
delete mode 100644 .next/static/chunks/f126df28-0647fc1012c29407.js
delete mode 100644 .next/static/chunks/f75787ed-011198ef7e5d7754.js
create mode 100644 .next/static/chunks/fd9d1056-ba10bf844a47945b.js
create mode 100644 .next/static/chunks/main-07bf56c05aa7cd6e.js
delete mode 100644 .next/static/chunks/main-app-0be5dce44311dbbf.js
create mode 100644 .next/static/chunks/main-app-cf3eb22ffef632f7.js
delete mode 100644 .next/static/chunks/main-dba5d122367f02b7.js
create mode 100644 .next/static/chunks/pages/_app-1534f180665c857f.js
delete mode 100644 .next/static/chunks/pages/_app-b555d5e1eab47959.js
rename .next/static/chunks/pages/{_error-d79168f986538ac0.js => _error-b646007f40c4f0a8.js} (74%)
delete mode 100644 .next/static/chunks/webpack-54b114c68857d808.js
create mode 100644 .next/static/chunks/webpack-c42a79c5d8b7c910.js
rename .next/static/css/{3930d1a0ca01c66f.css => 1d2d59615145af7d.css} (90%)
create mode 100644 .next/static/media/05a31a2ca4975f99-s.woff2
delete mode 100644 .next/static/media/2aaf0723e720e8b9-s.p.woff2
create mode 100644 .next/static/media/513657b02c5c193f-s.woff2
create mode 100644 .next/static/media/51ed15f9841b9f9d-s.woff2
delete mode 100644 .next/static/media/9c4f34569c9b36ca-s.woff2
delete mode 100644 .next/static/media/ae9ae6716d4f8bf8-s.woff2
delete mode 100644 .next/static/media/b1db3e28af9ef94a-s.woff2
delete mode 100644 .next/static/media/b967158bc7d7a9fb-s.woff2
delete mode 100644 .next/static/media/c0f5ec5bbf5913b7-s.woff2
create mode 100644 .next/static/media/c9a5bc6a7c948fb0-s.p.woff2
delete mode 100644 .next/static/media/d1d9458b69004127-s.woff2
create mode 100644 .next/static/media/d6b16ce4a6175f26-s.woff2
create mode 100644 .next/static/media/ec159349637c90ad-s.woff2
create mode 100644 .next/static/media/fd4db3eb5472fc27-s.woff2
diff --git a/.next/BUILD_ID b/.next/BUILD_ID
index b79c999..44f36d8 100644
--- a/.next/BUILD_ID
+++ b/.next/BUILD_ID
@@ -1 +1 @@
-Qb5fVlqLpQAODnw100j4z
\ No newline at end of file
+9CqSqX2Hqhh4fwiD8kSfJ
\ No newline at end of file
diff --git a/.next/app-build-manifest.json b/.next/app-build-manifest.json
index 4c849a5..3d95bc5 100644
--- a/.next/app-build-manifest.json
+++ b/.next/app-build-manifest.json
@@ -1,61 +1,69 @@
{
"pages": {
+ "/_not-found": [
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js",
+ "static/chunks/app/_not-found-fbdfab077d258bb2.js"
+ ],
"/layout": [
- "static/chunks/webpack-54b114c68857d808.js",
- "static/chunks/2443530c-097fe1871e1d7679.js",
- "static/chunks/488-66ca2c1db348e680.js",
- "static/chunks/main-app-0be5dce44311dbbf.js",
- "static/css/3930d1a0ca01c66f.css",
- "static/chunks/app/layout-3d94fcc1098e9e97.js"
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js",
+ "static/css/1d2d59615145af7d.css",
+ "static/chunks/app/layout-ca25527909104096.js"
+ ],
+ "/everyone-votes/terms/page": [
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js",
+ "static/chunks/app/everyone-votes/terms/page-c0da9088d7e5e9ae.js"
+ ],
+ "/everyone-votes/privacy/page": [
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js",
+ "static/chunks/app/everyone-votes/privacy/page-29a62894605199e6.js"
],
"/page": [
- "static/chunks/webpack-54b114c68857d808.js",
- "static/chunks/2443530c-097fe1871e1d7679.js",
- "static/chunks/488-66ca2c1db348e680.js",
- "static/chunks/main-app-0be5dce44311dbbf.js",
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js",
+ "static/chunks/986-37229c658d9b7b30.js",
"static/css/60c69e914bf8dd4b.css",
- "static/chunks/app/page-8204c3b0f59bd205.js"
- ],
- "/wiston/page": [
- "static/chunks/webpack-54b114c68857d808.js",
- "static/chunks/2443530c-097fe1871e1d7679.js",
- "static/chunks/488-66ca2c1db348e680.js",
- "static/chunks/main-app-0be5dce44311dbbf.js",
- "static/chunks/app/wiston/page-becb82f49ed47545.js"
+ "static/chunks/app/page-39b6caed82efc627.js"
],
"/space/page": [
- "static/chunks/webpack-54b114c68857d808.js",
- "static/chunks/2443530c-097fe1871e1d7679.js",
- "static/chunks/488-66ca2c1db348e680.js",
- "static/chunks/main-app-0be5dce44311dbbf.js",
- "static/chunks/f75787ed-011198ef7e5d7754.js",
- "static/chunks/43cb4aaa-0dfcb2e81cc1cbc1.js",
- "static/chunks/f126df28-0647fc1012c29407.js",
- "static/chunks/51231e76-cf1b2fc1d6b83e48.js",
- "static/chunks/53417c1a-c755bb806ffa7a5d.js",
- "static/chunks/23-fb41cbadaf19fac2.js",
- "static/chunks/app/space/page-aa0f5917bd776cea.js"
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js",
+ "static/chunks/e1206f8c-ab5b5541f866e530.js",
+ "static/chunks/1f3d3139-f107a678ff6361e9.js",
+ "static/chunks/604a08ec-59af37265fb99b3d.js",
+ "static/chunks/d67c510a-e497b3cd5bf43bb4.js",
+ "static/chunks/537cd76e-7aba1cf7a4752418.js",
+ "static/chunks/173-2ffa9652644381a8.js",
+ "static/chunks/app/space/page-b8120f6d5470d1c7.js"
],
"/space/loading": [
- "static/chunks/webpack-54b114c68857d808.js",
- "static/chunks/2443530c-097fe1871e1d7679.js",
- "static/chunks/488-66ca2c1db348e680.js",
- "static/chunks/main-app-0be5dce44311dbbf.js",
- "static/chunks/app/space/loading-df1b886b524be596.js"
- ],
- "/everyone-votes/privacy/page": [
- "static/chunks/webpack-54b114c68857d808.js",
- "static/chunks/2443530c-097fe1871e1d7679.js",
- "static/chunks/488-66ca2c1db348e680.js",
- "static/chunks/main-app-0be5dce44311dbbf.js",
- "static/chunks/app/everyone-votes/privacy/page-4d788de82a96b899.js"
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js",
+ "static/chunks/app/space/loading-12fd180f06101306.js"
],
- "/everyone-votes/terms/page": [
- "static/chunks/webpack-54b114c68857d808.js",
- "static/chunks/2443530c-097fe1871e1d7679.js",
- "static/chunks/488-66ca2c1db348e680.js",
- "static/chunks/main-app-0be5dce44311dbbf.js",
- "static/chunks/app/everyone-votes/terms/page-5aa776690a4e5edf.js"
+ "/wiston/page": [
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js",
+ "static/chunks/app/wiston/page-c31b345ea6ea73af.js"
]
}
}
\ No newline at end of file
diff --git a/.next/app-path-routes-manifest.json b/.next/app-path-routes-manifest.json
index 2eae688..e5fc0ac 100644
--- a/.next/app-path-routes-manifest.json
+++ b/.next/app-path-routes-manifest.json
@@ -1,8 +1 @@
-{
- "/favicon.ico/route": "/favicon.ico",
- "/page": "/",
- "/wiston/page": "/wiston",
- "/space/page": "/space",
- "/everyone-votes/privacy/page": "/everyone-votes/privacy",
- "/everyone-votes/terms/page": "/everyone-votes/terms"
-}
\ No newline at end of file
+{"/_not-found":"/_not-found","/everyone-votes/terms/page":"/everyone-votes/terms","/everyone-votes/privacy/page":"/everyone-votes/privacy","/favicon.ico/route":"/favicon.ico","/page":"/","/space/page":"/space","/wiston/page":"/wiston"}
\ No newline at end of file
diff --git a/.next/build-manifest.json b/.next/build-manifest.json
index 3f555bb..6aea16f 100644
--- a/.next/build-manifest.json
+++ b/.next/build-manifest.json
@@ -5,27 +5,27 @@
"devFiles": [],
"ampDevFiles": [],
"lowPriorityFiles": [
- "static/Qb5fVlqLpQAODnw100j4z/_buildManifest.js",
- "static/Qb5fVlqLpQAODnw100j4z/_ssgManifest.js"
+ "static/9CqSqX2Hqhh4fwiD8kSfJ/_buildManifest.js",
+ "static/9CqSqX2Hqhh4fwiD8kSfJ/_ssgManifest.js"
],
"rootMainFiles": [
- "static/chunks/webpack-54b114c68857d808.js",
- "static/chunks/2443530c-097fe1871e1d7679.js",
- "static/chunks/488-66ca2c1db348e680.js",
- "static/chunks/main-app-0be5dce44311dbbf.js"
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
+ "static/chunks/fd9d1056-ba10bf844a47945b.js",
+ "static/chunks/472-51fd3a56159f1e5b.js",
+ "static/chunks/main-app-cf3eb22ffef632f7.js"
],
"pages": {
"/_app": [
- "static/chunks/webpack-54b114c68857d808.js",
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
"static/chunks/framework-8883d1e9be70c3da.js",
- "static/chunks/main-dba5d122367f02b7.js",
- "static/chunks/pages/_app-b555d5e1eab47959.js"
+ "static/chunks/main-07bf56c05aa7cd6e.js",
+ "static/chunks/pages/_app-1534f180665c857f.js"
],
"/_error": [
- "static/chunks/webpack-54b114c68857d808.js",
+ "static/chunks/webpack-c42a79c5d8b7c910.js",
"static/chunks/framework-8883d1e9be70c3da.js",
- "static/chunks/main-dba5d122367f02b7.js",
- "static/chunks/pages/_error-d79168f986538ac0.js"
+ "static/chunks/main-07bf56c05aa7cd6e.js",
+ "static/chunks/pages/_error-b646007f40c4f0a8.js"
]
},
"ampFirstPages": []
diff --git a/.next/next-minimal-server.js.nft.json b/.next/next-minimal-server.js.nft.json
new file mode 100644
index 0000000..9f9db74
--- /dev/null
+++ b/.next/next-minimal-server.js.nft.json
@@ -0,0 +1 @@
+{"version":1,"files":["../node_modules/styled-jsx/index.js","../node_modules/styled-jsx/package.json","../node_modules/styled-jsx/dist/index/index.js","../node_modules/react/package.json","../node_modules/react/index.js","../node_modules/client-only/package.json","../node_modules/react/cjs/react.production.min.js","../node_modules/client-only/index.js","../node_modules/styled-jsx/style.js","../node_modules/next/dist/compiled/next-server/server.runtime.prod.js","../node_modules/next/package.json","../node_modules/next/dist/server/body-streams.js","../node_modules/next/dist/shared/lib/constants.js","../node_modules/next/dist/server/web/utils.js","../node_modules/next/dist/client/components/app-router-headers.js","../node_modules/next/dist/server/lib/trace/tracer.js","../node_modules/next/dist/server/lib/trace/constants.js","../node_modules/next/dist/shared/lib/modern-browserslist-target.js","../node_modules/next/dist/shared/lib/runtime-config.external.js","../node_modules/next/dist/compiled/ws/package.json","../node_modules/@swc/helpers/_/_interop_require_default/package.json","../node_modules/next/dist/compiled/ws/index.js","../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../node_modules/next/dist/compiled/jsonwebtoken/package.json","../node_modules/@swc/helpers/package.json","../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../node_modules/next/dist/compiled/jsonwebtoken/index.js","../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../node_modules/next/dist/lib/semver-noop.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/amp-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/entrypoints.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/head-manager-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/hooks-client-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/html-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/image-config-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/loadable-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/loadable.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/router-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/server-inserted-html.js","../node_modules/next/dist/server/future/route-modules/app-page/module.compiled.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/amp-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/app-router-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/entrypoints.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/head-manager-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/hooks-client-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/html-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/image-config-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/loadable-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/loadable.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/router-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/server-inserted-html.js","../node_modules/next/dist/server/future/route-modules/pages/module.compiled.js"]}
\ No newline at end of file
diff --git a/.next/next-server.js.nft.json b/.next/next-server.js.nft.json
index ee817aa..4e0328b 100644
--- a/.next/next-server.js.nft.json
+++ b/.next/next-server.js.nft.json
@@ -1 +1 @@
-{"version":1,"cacheKey":"b3e86ffef9547a098a3078a4d5597d5e0ecd63676df688a95520b81c124ec042","files":["../node_modules/next/dist/server/next-server.js","../node_modules/next/package.json","../node_modules/next/dist/server/node-environment.js","../node_modules/next/dist/server/require-hook.js","../node_modules/next/dist/server/base-server.js","../node_modules/next/dist/server/node-polyfill-form.js","../node_modules/next/dist/server/node-polyfill-fetch.js","../node_modules/next/dist/server/node-polyfill-web-streams.js","../node_modules/next/dist/server/node-polyfill-crypto.js","../node_modules/next/dist/server/request-meta.js","../node_modules/next/dist/server/server-route-utils.js","../node_modules/next/dist/server/serve-static.js","../node_modules/next/dist/server/render.js","../node_modules/next/dist/server/require.js","../node_modules/next/dist/server/load-components.js","../node_modules/next/dist/server/body-streams.js","../node_modules/next/dist/server/api-utils/node.js","../node_modules/next/dist/server/config.js","../node_modules/next/dist/server/image-optimizer.js","../node_modules/next/dist/server/lib/recursive-readdir-sync.js","../node_modules/next/dist/server/lib/node-fs-methods.js","../node_modules/next/dist/server/lib/mock-request.js","../node_modules/next/dist/server/lib/server-ipc/invoke-request.js","../node_modules/next/dist/server/lib/server-ipc/utils.js","../node_modules/next/dist/lib/find-pages-dir.js","../node_modules/next/dist/lib/is-error.js","../node_modules/next/dist/lib/constants.js","../node_modules/next/dist/server/base-http/node.js","../node_modules/next/dist/server/web/utils.js","../node_modules/next/dist/server/future/route-kind.js","../node_modules/next/dist/server/lib/trace/constants.js","../node_modules/next/dist/server/lib/trace/tracer.js","../node_modules/next/dist/server/app-render/app-render.js","../node_modules/next/dist/shared/lib/constants.js","../node_modules/next/dist/shared/lib/utils.js","../node_modules/next/dist/shared/lib/page-path/denormalize-page-path.js","../node_modules/next/dist/shared/lib/page-path/normalize-page-path.js","../node_modules/next/dist/shared/lib/router/utils/route-matcher.js","../node_modules/next/dist/shared/lib/router/utils/path-match.js","../node_modules/next/dist/shared/lib/router/utils/get-route-from-asset-path.js","../node_modules/next/dist/shared/lib/router/utils/parse-url.js","../node_modules/next/dist/shared/lib/router/utils/relativize-url.js","../node_modules/next/dist/shared/lib/router/utils/prepare-destination.js","../node_modules/next/dist/shared/lib/router/utils/querystring.js","../node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.js","../node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js","../node_modules/next/dist/shared/lib/router/utils/get-next-pathname-info.js","../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../node_modules/next/dist/shared/lib/router/utils/route-regex.js","../node_modules/next/dist/shared/lib/router/utils/remove-path-prefix.js","../node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js","../node_modules/next/dist/shared/lib/router/utils/path-has-prefix.js","../node_modules/next/dist/build/output/log.js","../node_modules/next/dist/server/send-payload/index.js","../node_modules/next/dist/server/api-utils/index.js","../node_modules/next/dist/server/response-cache/index.js","../node_modules/next/dist/server/lib/incremental-cache/index.js","../node_modules/next/dist/server/lib/server-ipc/index.js","../node_modules/next/dist/server/web/sandbox/index.js","../node_modules/next/dist/server/utils.js","../node_modules/next/dist/lib/redirect-status.js","../node_modules/next/dist/lib/is-edge-runtime.js","../node_modules/next/dist/shared/lib/runtime-config.js","../node_modules/next/dist/server/send-payload/revalidate-headers.js","../node_modules/next/dist/server/router.js","../node_modules/next/dist/server/render-result.js","../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../node_modules/next/dist/shared/lib/router/utils/escape-path-delimiters.js","../node_modules/next/dist/server/server-utils.js","../node_modules/next/dist/shared/lib/get-hostname.js","../node_modules/next/dist/server/send-response.js","../node_modules/next/dist/lib/interop-default.js","../node_modules/next/dist/lib/is-serializable-props.js","../node_modules/next/dist/shared/lib/amp-mode.js","../node_modules/next/dist/shared/lib/amp-context.js","../node_modules/next/dist/shared/lib/head-manager-context.js","../node_modules/next/dist/shared/lib/head.js","../node_modules/next/dist/shared/lib/loadable.js","../node_modules/next/dist/shared/lib/loadable-context.js","../node_modules/next/dist/shared/lib/router-context.js","../node_modules/next/dist/shared/lib/router/utils/is-dynamic.js","../node_modules/next/dist/shared/lib/html-context.js","../node_modules/next/dist/server/internal-utils.js","../node_modules/next/dist/shared/lib/image-config-context.js","../node_modules/next/dist/shared/lib/router/adapters.js","../node_modules/next/dist/shared/lib/hooks-client-context.js","../node_modules/next/dist/shared/lib/app-router-context.js","../node_modules/next/dist/server/post-process.js","../node_modules/next/dist/lib/chalk.js","../node_modules/next/dist/server/config-shared.js","../node_modules/next/dist/server/config-utils.js","../node_modules/next/dist/lib/find-root.js","../node_modules/next/dist/shared/lib/image-config.js","../node_modules/next/dist/shared/lib/image-blur-svg.js","../node_modules/next/dist/shared/lib/match-remote-pattern.js","../node_modules/next/dist/server/future/route-handler-managers/route-handler-manager.js","../node_modules/next/dist/server/future/normalizers/locale-route-normalizer.js","../node_modules/next/dist/server/future/route-matcher-managers/default-route-matcher-manager.js","../node_modules/next/dist/server/future/route-matcher-providers/app-page-route-matcher-provider.js","../node_modules/next/dist/server/future/route-matcher-providers/app-route-route-matcher-provider.js","../node_modules/next/dist/server/future/route-matcher-providers/pages-api-route-matcher-provider.js","../node_modules/next/dist/server/future/route-matcher-providers/pages-route-matcher-provider.js","../node_modules/next/dist/server/future/helpers/i18n-provider.js","../node_modules/next/dist/shared/lib/i18n/get-locale-redirect.js","../node_modules/next/dist/shared/lib/i18n/normalize-locale-path.js","../node_modules/next/dist/server/stream-utils/node-web-streams-helper.js","../node_modules/next/dist/server/lib/etag.js","../node_modules/next/dist/server/crypto-utils.js","../node_modules/next/dist/telemetry/flush-and-exit.js","../node_modules/next/dist/server/lib/squoosh/main.js","../node_modules/next/dist/client/components/app-router-headers.js","../node_modules/next/dist/server/future/route-modules/helpers/response-handlers.js","../node_modules/next/dist/server/future/route-matcher-providers/helpers/manifest-loaders/server-manifest-loader.js","../node_modules/next/dist/shared/lib/is-plain-object.js","../node_modules/next/dist/server/base-http/index.js","../node_modules/next/dist/server/web/spec-extension/cookies.js","../node_modules/next/dist/server/web/spec-extension/adapters/headers.js","../node_modules/next/dist/server/web/spec-extension/adapters/reflect.js","../node_modules/next/dist/client/components/error.js","../node_modules/next/dist/client/components/match-segments.js","../node_modules/next/dist/server/app-render/create-server-components-renderer.js","../node_modules/next/dist/shared/lib/server-inserted-html.js","../node_modules/next/dist/lib/client-reference.js","../node_modules/next/dist/server/lib/app-dir-module.js","../node_modules/next/dist/client/components/redirect.js","../node_modules/next/dist/client/components/not-found.js","../node_modules/next/dist/server/lib/patch-fetch.js","../node_modules/next/dist/server/app-render/interop-default.js","../node_modules/next/dist/server/app-render/flight-render-result.js","../node_modules/next/dist/server/app-render/preload-component.js","../node_modules/next/dist/server/app-render/create-error-handler.js","../node_modules/next/dist/server/app-render/get-short-dynamic-param-type.js","../node_modules/next/dist/server/app-render/get-segment-param.js","../node_modules/next/dist/server/app-render/get-css-inlined-link-tags.js","../node_modules/next/dist/server/app-render/get-server-css-for-entries.js","../node_modules/next/dist/server/app-render/get-preloadable-fonts.js","../node_modules/next/dist/server/app-render/get-script-nonce-from-header.js","../node_modules/next/dist/server/app-render/render-to-string.js","../node_modules/next/dist/server/app-render/parse-and-validate-flight-router-state.js","../node_modules/next/dist/server/app-render/validate-url.js","../node_modules/next/dist/server/app-render/action-handler.js","../node_modules/next/dist/server/app-render/create-flight-router-state-from-loader-tree.js","../node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.js","../node_modules/next/dist/server/async-storage/request-async-storage-wrapper.js","../node_modules/next/dist/lib/metadata/metadata.js","../node_modules/next/dist/server/async-storage/static-generation-async-storage-wrapper.js","../node_modules/next/dist/shared/lib/lazy-dynamic/no-ssr-error.js","../node_modules/next/dist/shared/lib/modern-browserslist-target.js","../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../node_modules/next/dist/shared/lib/page-path/normalize-path-sep.js","../node_modules/next/dist/shared/lib/escape-regexp.js","../node_modules/next/dist/server/future/helpers/interception-routes.js","../node_modules/next/dist/shared/lib/router/utils/parse-relative-url.js","../node_modules/next/dist/shared/lib/router/utils/parse-path.js","../node_modules/next/dist/shared/lib/router/utils/index.js","../node_modules/next/dist/server/lib/render-server.js","../node_modules/next/dist/server/lib/worker-utils.js","../node_modules/next/dist/server/lib/utils.js","../node_modules/next/dist/server/response-cache/types.js","../node_modules/next/dist/lib/is-api-route.js","../node_modules/next/dist/shared/lib/router/utils/format-next-pathname-info.js","../node_modules/next/dist/shared/lib/i18n/detect-locale-cookie.js","../node_modules/next/dist/server/accept-header.js","../node_modules/next/dist/shared/lib/i18n/detect-domain-locale.js","../node_modules/next/dist/server/lib/incremental-cache/file-system-cache.js","../node_modules/next/dist/server/lib/incremental-cache/fetch-cache.js","../node_modules/next/dist/server/stream-utils/encode-decode.js","../node_modules/next/dist/shared/lib/base64-arraybuffer.js","../node_modules/next/dist/shared/lib/utils/warn-once.js","../node_modules/next/dist/shared/lib/side-effect.js","../node_modules/next/dist/lib/non-nullable.js","../node_modules/next/dist/server/font-utils.js","../node_modules/next/dist/server/optimize-amp.js","../node_modules/next/dist/server/web/sandbox/sandbox.js","../node_modules/next/dist/server/web/sandbox/context.js","../node_modules/next/dist/shared/lib/isomorphic/path.js","../node_modules/next/dist/lib/web/chalk.js","../node_modules/next/dist/server/web/spec-extension/adapters/next-request.js","../node_modules/next/dist/lib/is-app-page-route.js","../node_modules/next/dist/server/future/route-matcher-providers/manifest-route-matcher-provider.js","../node_modules/next/dist/lib/is-app-route-route.js","../node_modules/next/dist/shared/lib/router/utils/format-url.js","../node_modules/next/dist/server/app-render/use-flight-response.js","../node_modules/next/dist/lib/format-server-error.js","../node_modules/next/dist/client/components/hooks-server-context.js","../node_modules/next/dist/server/htmlescape.js","../node_modules/next/dist/server/app-render/types.js","../node_modules/next/dist/server/future/helpers/module-loader/node-module-loader.js","../node_modules/next/dist/server/future/helpers/module-loader/route-module-loader.js","../node_modules/next/dist/server/future/route-matchers/app-page-route-matcher.js","../node_modules/next/dist/server/future/route-matchers/locale-route-matcher.js","../node_modules/next/dist/server/future/route-matchers/pages-route-matcher.js","../node_modules/next/dist/server/future/route-matchers/app-route-route-matcher.js","../node_modules/next/dist/server/future/route-matchers/pages-api-route-matcher.js","../node_modules/next/dist/trace/shared.js","../node_modules/next/dist/server/dev/log-app-dir-error.js","../node_modules/next/dist/client/components/request-async-storage.js","../node_modules/next/dist/compiled/react-experimental/package.json","../node_modules/next/dist/compiled/react-experimental/jsx-runtime.js","../node_modules/next/dist/compiled/react-experimental/jsx-dev-runtime.js","../node_modules/next/dist/compiled/react/package.json","../node_modules/next/dist/compiled/react/jsx-runtime.js","../node_modules/next/dist/compiled/react/jsx-dev-runtime.js","../node_modules/next/dist/compiled/react-dom-experimental/package.json","../node_modules/next/dist/compiled/react-dom-experimental/client.js","../node_modules/next/dist/compiled/react-dom-experimental/server-rendering-stub.js","../node_modules/next/dist/compiled/react-dom-experimental/server.js","../node_modules/next/dist/compiled/react-dom-experimental/server.browser.js","../node_modules/next/dist/compiled/react-dom-experimental/server.edge.js","../node_modules/next/dist/compiled/react-dom/package.json","../node_modules/next/dist/compiled/react-dom/server-rendering-stub.js","../node_modules/next/dist/compiled/react-dom/client.js","../node_modules/next/dist/compiled/react-dom/server.browser.js","../node_modules/next/dist/compiled/react-dom/server.js","../node_modules/next/dist/compiled/react-dom/server.edge.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/client.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/client.edge.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/server.node.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/server.edge.js","../node_modules/next/dist/compiled/react-server-dom-webpack/client.js","../node_modules/next/dist/compiled/react-server-dom-webpack/server.edge.js","../node_modules/next/dist/compiled/react-server-dom-webpack/client.edge.js","../node_modules/next/dist/compiled/react-server-dom-webpack/server.node.js","../node_modules/styled-jsx/style.js","../node_modules/next/dist/server/async-storage/draft-mode-provider.js","../node_modules/next/dist/lib/metadata/resolve-metadata.js","../node_modules/next/dist/shared/lib/router/utils/sorted-routes.js","../node_modules/next/dist/next-config-validate.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/fetch.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/streams.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/blob.js","../node_modules/react/package.json","../node_modules/next/dist/lib/metadata/generate/basic.js","../node_modules/next/dist/lib/metadata/generate/opengraph.js","../node_modules/next/dist/lib/metadata/generate/alternate.js","../node_modules/next/dist/lib/metadata/generate/icons.js","../node_modules/next/dist/compiled/react-server-dom-webpack/package.json","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/package.json","../node_modules/react/jsx-runtime.js","../node_modules/react/jsx-dev-runtime.js","../node_modules/styled-jsx/package.json","../node_modules/react-dom/package.json","../node_modules/next/dist/server/next.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/package.json","../node_modules/next/dist/compiled/@next/react-dev-overlay/dist/middleware.js","../node_modules/react-dom/server.browser.js","../node_modules/next/dist/shared/lib/router/utils/add-path-suffix.js","../node_modules/next/dist/shared/lib/router/utils/add-locale.js","../node_modules/next/dist/server/lib/incremental-cache/utils.js","../node_modules/next/dist/server/web/sandbox/fetch-inline-assets.js","../node_modules/next/dist/lib/pick.js","../node_modules/react/index.js","../node_modules/next/dist/server/future/normalizers/built/app/index.js","../node_modules/next/dist/server/future/normalizers/built/pages/index.js","../node_modules/next/dist/build/webpack/plugins/nextjs-require-cache-hot-reloader.js","../node_modules/next/dist/compiled/webpack/webpack.js","../node_modules/styled-jsx/index.js","../node_modules/next/dist/server/web/spec-extension/request.js","../node_modules/next/dist/server/future/route-matcher-providers/helpers/cached-route-matcher-provider.js","../node_modules/next/dist/compiled/webpack/package.json","../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.production.min.js","../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.development.js","../node_modules/next/dist/compiled/react/cjs/react-jsx-dev-runtime.production.min.js","../node_modules/next/dist/compiled/react/cjs/react-jsx-dev-runtime.development.js","../node_modules/next/dist/compiled/react-experimental/cjs/react-jsx-runtime.production.min.js","../node_modules/next/dist/compiled/react-experimental/cjs/react-jsx-runtime.development.js","../node_modules/next/dist/compiled/react-experimental/cjs/react-jsx-dev-runtime.development.js","../node_modules/next/dist/compiled/react-experimental/cjs/react-jsx-dev-runtime.production.min.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.production.min.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-legacy.browser.production.min.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.development.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server.browser.production.min.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-legacy.browser.development.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server.browser.development.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server.edge.production.min.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server.edge.development.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server-rendering-stub.production.min.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server-rendering-stub.development.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.min.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.min.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.development.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server.browser.development.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server.edge.development.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server.edge.production.min.js","../node_modules/next/dist/server/future/route-matchers/route-matcher.js","../node_modules/next/dist/client/components/async-local-storage.js","../node_modules/next/dist/compiled/path-to-regexp/index.js","../node_modules/next/dist/compiled/react/index.js","../node_modules/next/dist/compiled/react-dom-experimental/server.node.js","../node_modules/next/dist/compiled/react-dom/server.node.js","../node_modules/next/dist/compiled/react-experimental/index.js","../node_modules/next/dist/lib/metadata/default-metadata.js","../node_modules/next/dist/lib/metadata/generate/utils.js","../node_modules/next/dist/lib/metadata/clone-metadata.js","../node_modules/@next/env/package.json","../node_modules/@next/env/dist/index.js","../node_modules/next/dist/compiled/chalk/package.json","../node_modules/next/dist/compiled/chalk/index.js","../node_modules/next/dist/compiled/compression/package.json","../node_modules/next/dist/compiled/compression/index.js","../node_modules/next/dist/compiled/http-proxy/package.json","../node_modules/next/dist/compiled/http-proxy/index.js","../node_modules/next/dist/compiled/ws/package.json","../node_modules/next/dist/compiled/ws/index.js","../node_modules/next/dist/compiled/undici/package.json","../node_modules/next/dist/compiled/undici/index.js","../node_modules/next/dist/compiled/edge-runtime/package.json","../node_modules/next/dist/compiled/edge-runtime/index.js","../node_modules/next/dist/compiled/send/package.json","../node_modules/next/dist/compiled/send/index.js","../node_modules/next/dist/compiled/lru-cache/package.json","../node_modules/next/dist/compiled/lru-cache/index.js","../node_modules/next/dist/compiled/strip-ansi/package.json","../node_modules/next/dist/compiled/strip-ansi/index.js","../node_modules/next/dist/compiled/react-is/package.json","../node_modules/next/dist/compiled/react-is/index.js","../node_modules/next/dist/compiled/content-disposition/package.json","../node_modules/next/dist/compiled/content-disposition/index.js","../node_modules/next/dist/compiled/find-up/package.json","../node_modules/next/dist/compiled/find-up/index.js","../node_modules/next/dist/compiled/get-orientation/package.json","../node_modules/next/dist/compiled/get-orientation/index.js","../node_modules/next/dist/compiled/bytes/package.json","../node_modules/next/dist/compiled/bytes/index.js","../node_modules/next/dist/compiled/image-size/package.json","../node_modules/next/dist/compiled/image-size/index.js","../node_modules/next/dist/compiled/is-animated/package.json","../node_modules/next/dist/compiled/is-animated/index.js","../node_modules/next/dist/compiled/content-type/package.json","../node_modules/next/dist/compiled/content-type/index.js","../node_modules/next/dist/compiled/cookie/package.json","../node_modules/next/dist/compiled/cookie/index.js","../node_modules/next/dist/compiled/nanoid/package.json","../node_modules/next/dist/compiled/nanoid/index.cjs","../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.min.js","../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js","../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.min.js","../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.development.js","../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.min.js","../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js","../node_modules/next/dist/compiled/raw-body/package.json","../node_modules/next/dist/compiled/raw-body/index.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.min.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.development.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.production.min.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.development.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.development.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.min.js","../node_modules/next/dist/compiled/jsonwebtoken/package.json","../node_modules/next/dist/compiled/jsonwebtoken/index.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-opengraph.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-title.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-basics.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-icons.js","../node_modules/next/dist/compiled/react-server-dom-webpack/client.browser.js","../node_modules/next/dist/compiled/@hapi/accept/package.json","../node_modules/next/dist/compiled/@hapi/accept/index.js","../node_modules/next/dist/compiled/@segment/ajv-human-errors/package.json","../node_modules/next/dist/compiled/@segment/ajv-human-errors/index.js","../node_modules/react/cjs/react-jsx-runtime.development.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react-jsx-dev-runtime.production.min.js","../node_modules/react/cjs/react-jsx-dev-runtime.development.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/cjs/react.development.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/client.browser.js","../node_modules/next/dist/lib/metadata/generate/meta.js","../node_modules/next/dist/server/next-typescript.js","../node_modules/next/dist/server/dev/next-dev-server.js","../node_modules/next/dist/server/lib/render-server-standalone.js","../node_modules/next/dist/server/capsize-font-metrics.json","../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.min.js","../node_modules/react-dom/cjs/react-dom-server.browser.production.min.js","../node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../node_modules/react-dom/cjs/react-dom-server.browser.development.js","../node_modules/next/dist/compiled/fresh/package.json","../node_modules/next/dist/compiled/fresh/index.js","../node_modules/next/dist/compiled/micromatch/package.json","../node_modules/next/dist/compiled/micromatch/index.js","../node_modules/next/dist/compiled/node-html-parser/package.json","../node_modules/next/dist/compiled/node-html-parser/index.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/abort-controller.js","../node_modules/busboy/package.json","../node_modules/busboy/lib/index.js","../node_modules/next/dist/server/web/next-url.js","../node_modules/next/dist/server/web/error.js","../node_modules/next/dist/compiled/react/cjs/react.production.min.js","../node_modules/next/dist/compiled/react/cjs/react.development.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server.node.development.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.development.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server.node.production.min.js","../node_modules/next/dist/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.min.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server.node.production.min.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-legacy.node.production.min.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-legacy.node.development.js","../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server.node.development.js","../node_modules/next/dist/compiled/string-hash/package.json","../node_modules/next/dist/compiled/string-hash/index.js","../node_modules/next/dist/server/future/normalizers/built/app/app-bundle-path-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/app/app-filename-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/app/app-page-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/app/app-pathname-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/pages/pages-bundle-path-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/pages/pages-filename-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/pages/pages-page-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/pages/pages-pathname-normalizer.js","../node_modules/next/dist/compiled/react-experimental/cjs/react.production.min.js","../node_modules/next/dist/compiled/react-experimental/cjs/react.development.js","../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js","../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.production.min.js","../node_modules/next/dist/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.development.js","../node_modules/next/dist/compiled/@edge-runtime/cookies/package.json","../node_modules/next/dist/compiled/@edge-runtime/cookies/index.js","../node_modules/styled-jsx/dist/index/index.js","../node_modules/next/dist/compiled/react-is/cjs/react-is.production.min.js","../node_modules/next/dist/compiled/react-is/cjs/react-is.development.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-url.js","../node_modules/next/dist/lib/metadata/constants.js","../node_modules/next/dist/lib/file-exists.js","../node_modules/next/dist/lib/load-custom-routes.js","../node_modules/next/dist/lib/verifyTypeScriptSetup.js","../node_modules/next/dist/lib/verify-partytown-setup.js","../node_modules/next/dist/shared/lib/page-path/absolute-path-to-page.js","../node_modules/next/dist/telemetry/storage.js","../node_modules/next/dist/server/dev/hot-reloader.js","../node_modules/next/dist/server/lib/find-page-file.js","../node_modules/next/dist/build/entries.js","../node_modules/next/dist/lib/coalesced-function.js","../node_modules/next/dist/build/utils.js","../node_modules/next/dist/build/webpack-config.js","../node_modules/next/dist/build/load-jsconfig.js","../node_modules/next/dist/build/webpack/plugins/next-types-plugin.js","../node_modules/next/dist/server/future/route-matcher-managers/dev-route-matcher-manager.js","../node_modules/next/dist/server/future/route-matcher-providers/helpers/manifest-loaders/node-manifest-loader.js","../node_modules/next/dist/build/build-context.js","../node_modules/next/dist/lib/create-client-router-filter.js","../node_modules/next/dist/lib/generate-interception-routes-rewrites.js","../node_modules/next/dist/server/dev/static-paths-worker.js","../node_modules/next/dist/server/future/route-matcher-providers/dev/dev-pages-api-route-matcher-provider.js","../node_modules/next/dist/server/future/route-matcher-providers/dev/dev-pages-route-matcher-provider.js","../node_modules/next/dist/server/future/route-matcher-providers/dev/dev-app-page-route-matcher-provider.js","../node_modules/next/dist/server/future/route-matcher-providers/dev/dev-app-route-route-matcher-provider.js","../node_modules/next/dist/lib/realpath.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/events.js","../node_modules/next/dist/server/future/route-matcher-providers/dev/helpers/file-reader/cached-file-reader.js","../node_modules/next/dist/server/future/route-matcher-providers/dev/helpers/file-reader/default-file-reader.js","../node_modules/react-dom/index.js","../node_modules/zod/package.json","../node_modules/@swc/helpers/_/_interop_require_default/package.json","../node_modules/@swc/helpers/_/_interop_require_wildcard/package.json","../node_modules/busboy/lib/utils.js","../node_modules/next/dist/server/future/normalizers/normalizers.js","../node_modules/next/dist/server/future/normalizers/prefixing-normalizer.js","../node_modules/next/dist/server/future/normalizers/wrap-normalizer-fn.js","../node_modules/next/dist/server/future/normalizers/absolute-filename-normalizer.js","../node_modules/next/dist/server/future/normalizers/underscore-normalizer.js","../node_modules/next/dist/compiled/path-browserify/package.json","../node_modules/next/dist/compiled/path-browserify/index.js","../node_modules/zod/lib/index.js","../node_modules/next/dist/trace/index.js","../node_modules/next/dist/build/output/index.js","../node_modules/@swc/helpers/package.json","../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs","../node_modules/next/dist/telemetry/events/index.js","../node_modules/busboy/lib/types/multipart.js","../node_modules/busboy/lib/types/urlencoded.js","../node_modules/next/dist/server/typescript/index.js","../node_modules/next/dist/compiled/@next/react-dev-overlay/dist/client.js","../node_modules/next/dist/lib/has-necessary-dependencies.js","../node_modules/next/dist/lib/try-to-parse-path.js","../node_modules/next/dist/lib/compile-error.js","../node_modules/next/dist/lib/fatal-error.js","../node_modules/next/dist/lib/install-dependencies.js","../node_modules/next/dist/telemetry/ci-info.js","../node_modules/next/dist/lib/recursive-delete.js","../node_modules/next/dist/shared/lib/page-path/remove-page-path-tail.js","../node_modules/next/dist/lib/metadata/get-metadata-route.js","../node_modules/next/dist/telemetry/anonymous-meta.js","../node_modules/next/dist/telemetry/detached-flush.js","../node_modules/next/dist/telemetry/project-id.js","../node_modules/next/dist/telemetry/post-payload.js","../node_modules/next/dist/shared/lib/page-path/get-page-paths.js","../node_modules/next/dist/lib/metadata/is-metadata-route.js","../node_modules/next/dist/server/dev/on-demand-entry-handler.js","../node_modules/next/dist/server/dev/hot-middleware.js","../node_modules/next/dist/server/get-route-from-entrypoint.js","../node_modules/next/dist/server/dev/parse-version-info.js","../node_modules/next/dist/lib/is-internal-pathname.js","../node_modules/next/dist/client/router.js","../node_modules/next/dist/lib/pretty-bytes.js","../node_modules/next/dist/server/web/http.js","../node_modules/next/dist/client/components/static-generation-async-storage.js","../node_modules/next/dist/shared/lib/bloom-filter.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/cjs/react-dom.development.js","../node_modules/next/dist/lib/typescript/writeAppTypeDeclarations.js","../node_modules/next/dist/lib/typescript/getTypeScriptIntent.js","../node_modules/next/dist/lib/typescript/runTypeCheck.js","../node_modules/next/dist/lib/typescript/missingDependencyError.js","../node_modules/next/dist/lib/typescript/writeConfigurationDefaults.js","../node_modules/next/dist/lib/typescript/getTypeScriptConfiguration.js","../node_modules/next/dist/lib/helpers/get-pkg-manager.js","../node_modules/next/dist/lib/helpers/get-registry.js","../node_modules/next/dist/build/webpack/loaders/next-route-loader.js","../node_modules/next/dist/build/webpack/loaders/next-middleware-loader.js","../node_modules/next/dist/build/analysis/get-page-static-info.js","../node_modules/next/dist/server/future/route-matcher-providers/dev/file-cache-route-matcher-provider.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/encoding.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/crypto.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/url.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/structured-clone.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/console.js","../node_modules/next/dist/compiled/@edge-runtime/primitives/cache.js","../node_modules/next/dist/trace/trace.js","../node_modules/next/dist/build/output/store.js","../node_modules/zod/lib/external.js","../node_modules/next/dist/telemetry/events/build.js","../node_modules/next/dist/telemetry/events/version.js","../node_modules/next/dist/telemetry/events/plugins.js","../node_modules/next/dist/client/dev/error-overlay/format-webpack-messages.js","../node_modules/next/dist/lib/resolve-from.js","../node_modules/next/dist/server/typescript/utils.js","../node_modules/next/dist/server/typescript/constant.js","../node_modules/next/dist/lib/helpers/install.js","../node_modules/next/dist/lib/helpers/get-online.js","../node_modules/next/dist/shared/lib/hash.js","../node_modules/next/dist/lib/get-project-dir.js","../node_modules/next/dist/shared/lib/flatten.js","../node_modules/next/dist/server/match-bundle.js","../node_modules/next/dist/server/get-app-route-from-entrypoint.js","../node_modules/next/dist/shared/lib/router/router.js","../node_modules/next/dist/client/with-router.js","../node_modules/next/dist/compiled/shell-quote/package.json","../node_modules/next/dist/compiled/shell-quote/index.js","../node_modules/next/dist/compiled/stacktrace-parser/package.json","../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../node_modules/next/dist/compiled/data-uri-to-buffer/package.json","../node_modules/next/dist/compiled/data-uri-to-buffer/index.js","../node_modules/next/dist/server/typescript/rules/client-boundary.js","../node_modules/next/dist/server/typescript/rules/entry.js","../node_modules/next/dist/server/typescript/rules/server.js","../node_modules/next/dist/server/typescript/rules/config.js","../node_modules/next/dist/server/typescript/rules/metadata.js","../node_modules/next/dist/server/typescript/rules/error.js","../node_modules/next/dist/compiled/babel/code-frame.js","../node_modules/next/dist/compiled/watchpack/package.json","../node_modules/next/dist/compiled/watchpack/watchpack.js","../node_modules/next/dist/compiled/amphtml-validator/package.json","../node_modules/next/dist/compiled/amphtml-validator/index.js","../node_modules/next/dist/lib/recursive-readdir.js","../node_modules/next/dist/lib/oxford-comma-list.js","../node_modules/next/dist/lib/typescript/diagnosticFormatter.js","../node_modules/next/dist/build/webpack/loaders/get-module-build-info.js","../node_modules/next/dist/build/webpack/stringify-request.js","../node_modules/next/dist/build/analysis/extract-const-value.js","../node_modules/next/dist/build/analysis/parse-module.js","../node_modules/next/dist/compiled/babel/package.json","../node_modules/client-only/package.json","../node_modules/client-only/index.js","../node_modules/next/dist/compiled/debug/package.json","../node_modules/next/dist/compiled/debug/index.js","../node_modules/next/dist/compiled/p-limit/package.json","../node_modules/next/dist/compiled/p-limit/index.js","../node_modules/next/dist/compiled/semver/package.json","../node_modules/next/dist/compiled/semver/index.js","../node_modules/zod/lib/errors.js","../node_modules/zod/lib/types.js","../node_modules/zod/lib/ZodError.js","../node_modules/zod/lib/helpers/parseUtil.js","../node_modules/zod/lib/helpers/typeAliases.js","../node_modules/zod/lib/helpers/util.js","../node_modules/next/dist/lib/commands.js","../node_modules/next/dist/lib/detect-typo.js","../node_modules/next/dist/compiled/gzip-size/package.json","../node_modules/next/dist/compiled/gzip-size/index.js","../node_modules/next/dist/compiled/text-table/package.json","../node_modules/next/dist/compiled/text-table/index.js","../node_modules/next/dist/compiled/browserslist/package.json","../node_modules/next/dist/compiled/browserslist/index.js","../node_modules/next/dist/compiled/json5/package.json","../node_modules/next/dist/compiled/json5/index.js","../node_modules/next/dist/compiled/async-sema/package.json","../node_modules/next/dist/compiled/async-sema/index.js","../node_modules/scheduler/package.json","../node_modules/scheduler/index.js","../node_modules/next/dist/compiled/conf/package.json","../node_modules/next/dist/compiled/conf/index.js","../node_modules/next/dist/compiled/is-docker/package.json","../node_modules/next/dist/compiled/is-docker/index.js","../node_modules/next/dist/client/route-loader.js","../node_modules/next/dist/client/script.js","../node_modules/next/dist/shared/lib/mitt.js","../node_modules/next/dist/client/detect-domain-locale.js","../node_modules/next/dist/shared/lib/router/utils/resolve-rewrites.js","../node_modules/next/dist/client/add-locale.js","../node_modules/next/dist/client/has-base-path.js","../node_modules/next/dist/client/remove-base-path.js","../node_modules/next/dist/client/remove-locale.js","../node_modules/next/dist/client/add-base-path.js","../node_modules/next/dist/shared/lib/router/utils/compare-states.js","../node_modules/next/dist/shared/lib/router/utils/is-local-url.js","../node_modules/next/dist/shared/lib/router/utils/omit.js","../node_modules/next/dist/shared/lib/router/utils/interpolate-as.js","../node_modules/next/dist/shared/lib/router/utils/resolve-href.js","../node_modules/next/dist/shared/lib/router/utils/handle-smooth-scroll.js","../node_modules/next/dist/lib/with-promise-cache.js","../node_modules/next/dist/compiled/babel/bundle.js","../node_modules/next/dist/trace/report/index.js","../node_modules/next/dist/build/swc/index.js","../node_modules/streamsearch/package.json","../node_modules/streamsearch/lib/sbmh.js","../node_modules/next/dist/compiled/babel/core.js","../node_modules/next/dist/compiled/unistore/package.json","../node_modules/next/dist/compiled/unistore/unistore.js","../node_modules/zod/lib/helpers/errorUtil.js","../node_modules/next/dist/compiled/platform/package.json","../node_modules/next/dist/compiled/platform/platform.js","../node_modules/next/dist/compiled/anser/package.json","../node_modules/next/dist/compiled/anser/index.js","../node_modules/next/dist/compiled/css.escape/package.json","../node_modules/next/dist/compiled/css.escape/css.escape.js","../node_modules/zod/lib/locales/en.js","../node_modules/next/dist/compiled/ci-info/package.json","../node_modules/next/dist/compiled/ci-info/index.js","../node_modules/next/dist/compiled/is-wsl/package.json","../node_modules/next/dist/compiled/is-wsl/index.js","../node_modules/next/dist/compiled/async-retry/package.json","../node_modules/next/dist/compiled/async-retry/index.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/cjs/scheduler.development.js","../node_modules/next/dist/cli/next-build.js","../node_modules/next/dist/cli/next-dev.js","../node_modules/next/dist/cli/next-telemetry.js","../node_modules/next/dist/cli/next-start.js","../node_modules/next/dist/cli/next-export.js","../node_modules/next/dist/cli/next-lint.js","../node_modules/next/dist/cli/next-info.js","../node_modules/next/dist/shared/lib/router/utils/get-asset-path-from-route.js","../node_modules/next/dist/client/trusted-types.js","../node_modules/next/dist/client/request-idle-callback.js","../node_modules/next/dist/client/head-manager.js","../node_modules/next/dist/client/normalize-trailing-slash.js","../node_modules/next/dist/compiled/comment-json/package.json","../node_modules/next/dist/compiled/comment-json/index.js","../node_modules/next/dist/trace/report/to-telemetry.js","../node_modules/next/dist/trace/report/to-json.js","../node_modules/next/dist/telemetry/events/swc-load-failure.js","../node_modules/next/dist/build/swc/options.js","../node_modules/next/dist/lib/patch-incorrect-lockfile.js","../node_modules/next/dist/lib/download-wasm-swc.js","../node_modules/next/dist/compiled/cross-spawn/package.json","../node_modules/next/dist/compiled/cross-spawn/index.js","../node_modules/next/dist/server/lib/start-server.js","../node_modules/next/dist/telemetry/events/session-stopped.js","../node_modules/next/dist/build/worker.js","../node_modules/next/dist/lib/get-package-version.js","../node_modules/next/dist/lib/turbopack-warning.js","../node_modules/next/dist/lib/helpers/get-npx-command.js","../node_modules/next/dist/lib/eslint/runLintCheck.js","../node_modules/next/dist/build/index.js","../node_modules/next/dist/export/index.js","../node_modules/next/dist/export/worker.js","../node_modules/next/dist/compiled/arg/index.js","../node_modules/next/dist/lib/eslint/hasEslintConfiguration.js","../node_modules/next/dist/lib/eslint/customFormatter.js","../node_modules/next/dist/lib/eslint/writeOutputFile.js","../node_modules/next/dist/lib/eslint/writeDefaultConfig.js","../node_modules/next/dist/compiled/arg/package.json","../node_modules/next/dist/compiled/@next/react-refresh-utils/dist/loader.js","../node_modules/next/dist/compiled/@napi-rs/triples/package.json","../node_modules/next/dist/compiled/@napi-rs/triples/index.js","../node_modules/next/dist/lib/server-external-packages.json","../node_modules/next/dist/lib/worker.js","../node_modules/next/dist/build/spinner.js","../node_modules/next/dist/lib/recursive-copy.js","../node_modules/caniuse-lite/dist/unpacker/agents.js","../node_modules/caniuse-lite/dist/unpacker/region.js","../node_modules/caniuse-lite/dist/unpacker/feature.js","../node_modules/next/dist/build/webpack/plugins/middleware-plugin.js","../node_modules/next/dist/build/webpack/plugins/build-manifest-plugin.js","../node_modules/next/dist/build/webpack/plugins/next-drop-client-page-plugin.js","../node_modules/next/dist/build/webpack/plugins/jsconfig-paths-plugin.js","../node_modules/next/dist/build/webpack/plugins/pages-manifest-plugin.js","../node_modules/next/dist/build/webpack/plugins/react-loadable-plugin.js","../node_modules/next/dist/build/webpack/plugins/profiling-plugin.js","../node_modules/next/dist/build/webpack/plugins/copy-file-plugin.js","../node_modules/next/dist/build/webpack/plugins/flight-manifest-plugin.js","../node_modules/next/dist/build/webpack/plugins/flight-client-entry-plugin.js","../node_modules/next/dist/build/webpack/plugins/app-build-manifest-plugin.js","../node_modules/next/dist/build/webpack/plugins/subresource-integrity-plugin.js","../node_modules/next/dist/build/webpack/plugins/next-font-manifest-plugin.js","../node_modules/next/dist/build/webpack/plugins/css-minimizer-plugin.js","../node_modules/next/dist/build/webpack/plugins/terser-webpack-plugin/src/index.js","../node_modules/next/dist/build/webpack/plugins/next-trace-entrypoints-plugin.js","../node_modules/next/dist/build/webpack/plugins/font-stylesheet-gathering-plugin.js","../node_modules/next/dist/build/webpack/plugins/telemetry-plugin.js","../node_modules/next/dist/compiled/babel-packages/package.json","../node_modules/next/dist/compiled/babel-packages/packages-bundle.js","../node_modules/next/dist/build/webpack/loaders/metadata/discover.js","../node_modules/next/dist/build/polyfills/process.js","../node_modules/next/dist/build/polyfills/polyfill-nomodule.js","../node_modules/next/dist/compiled/regenerator-runtime/package.json","../node_modules/next/dist/compiled/regenerator-runtime/runtime.js","../node_modules/next/dist/compiled/tar/package.json","../node_modules/next/dist/compiled/tar/index.js","../node_modules/next/dist/build/babel/loader/index.js","../node_modules/caniuse-lite/package.json","../node_modules/next/dist/build/webpack/config/index.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/index.js","../node_modules/next/dist/compiled/@next/react-refresh-utils/dist/ReactRefreshWebpackPlugin.js","../node_modules/next/dist/compiled/@next/react-refresh-utils/dist/runtime.js","../node_modules/next/head.js","../node_modules/next/dynamic.js","../node_modules/next/dist/build/webpack/config/blocks/css/index.js","../node_modules/next/dist/compiled/buffer/package.json","../node_modules/next/dist/compiled/buffer/index.js","../node_modules/next/dist/compiled/events/package.json","../node_modules/next/dist/compiled/events/events.js","../node_modules/next/dist/compiled/@next/react-refresh-utils/dist/internal/ReactRefreshModule.runtime.js","../node_modules/next/dist/compiled/util/package.json","../node_modules/next/dist/compiled/util/util.js","../node_modules/next/dist/build/webpack/loaders/utils.js","../node_modules/next/dist/build/webpack/utils.js","../node_modules/next/dist/client/link.js","../node_modules/next/dist/client/image.js","../node_modules/next/dist/client/components/navigation.js","../node_modules/next/dist/client/components/noop-head.js","../node_modules/next/dist/client/components/headers.js","../node_modules/next/dist/shared/lib/app-dynamic.js","../node_modules/next/dist/shared/lib/dynamic.js","../node_modules/next/dist/compiled/cli-select/package.json","../node_modules/next/dist/compiled/cli-select/index.js","../node_modules/caniuse-lite/dist/unpacker/browsers.js","../node_modules/caniuse-lite/dist/unpacker/browserVersions.js","../node_modules/next/dist/lib/setup-exception-listeners.js","../node_modules/next/dist/build/generate-build-id.js","../node_modules/next/dist/lib/flat-readdir.js","../node_modules/next/dist/build/write-build-id.js","../node_modules/next/dist/telemetry/events/swc-plugins.js","../node_modules/next/dist/build/type-check.js","../node_modules/next/dist/build/is-writeable.js","../node_modules/caniuse-lite/data/agents.js","../node_modules/caniuse-lite/dist/lib/statuses.js","../node_modules/caniuse-lite/dist/lib/supported.js","../node_modules/next/dist/build/babel/loader/transform.js","../node_modules/next/dist/compiled/@next/react-refresh-utils/dist/internal/helpers.js","../node_modules/next/dist/build/webpack/config/blocks/base.js","../node_modules/next/dist/build/webpack/config/utils.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/webpackModuleError.js","../node_modules/next/dist/compiled/native-url/package.json","../node_modules/next/dist/compiled/native-url/index.js","../node_modules/next/dist/client/components/client-hook-in-server-component-error.js","../node_modules/next/dist/client/components/bailout-to-client-rendering.js","../node_modules/next/dist/client/components/action-async-storage.js","../node_modules/next/dist/client/components/static-generation-bailout.js","../node_modules/next/dist/client/components/draft-mode.js","../node_modules/next/dist/compiled/assert/package.json","../node_modules/next/dist/compiled/assert/assert.js","../node_modules/next/dist/compiled/domain-browser/package.json","../node_modules/next/dist/compiled/domain-browser/index.js","../node_modules/next/dist/compiled/constants-browserify/package.json","../node_modules/next/dist/compiled/constants-browserify/constants.json","../node_modules/next/dist/compiled/crypto-browserify/package.json","../node_modules/next/dist/compiled/crypto-browserify/index.js","../node_modules/next/dist/compiled/punycode/package.json","../node_modules/next/dist/compiled/punycode/punycode.js","../node_modules/next/dist/compiled/stream-http/package.json","../node_modules/next/dist/compiled/stream-http/index.js","../node_modules/next/dist/compiled/https-browserify/package.json","../node_modules/next/dist/compiled/https-browserify/index.js","../node_modules/next/dist/compiled/os-browserify/package.json","../node_modules/next/dist/compiled/os-browserify/browser.js","../node_modules/next/dist/compiled/querystring-es3/package.json","../node_modules/next/dist/compiled/querystring-es3/index.js","../node_modules/next/dist/compiled/string_decoder/package.json","../node_modules/next/dist/compiled/string_decoder/string_decoder.js","../node_modules/next/dist/compiled/stream-browserify/package.json","../node_modules/next/dist/compiled/stream-browserify/index.js","../node_modules/next/dist/compiled/vm-browserify/package.json","../node_modules/next/dist/compiled/vm-browserify/index.js","../node_modules/next/dist/compiled/timers-browserify/package.json","../node_modules/next/dist/compiled/timers-browserify/main.js","../node_modules/next/dist/compiled/tty-browserify/package.json","../node_modules/next/dist/compiled/tty-browserify/index.js","../node_modules/next/dist/compiled/setimmediate/package.json","../node_modules/next/dist/compiled/setimmediate/setImmediate.js","../node_modules/next/dist/compiled/browserify-zlib/package.json","../node_modules/next/dist/compiled/browserify-zlib/index.js","../node_modules/next/dist/client/get-domain-locale.js","../node_modules/next/dist/client/use-intersection.js","../node_modules/next/node_modules/postcss/package.json","../node_modules/next/dist/build/webpack-build/index.js","../node_modules/next/dist/compiled/process/package.json","../node_modules/next/dist/compiled/process/browser.js","../node_modules/next/dist/client/components/router-reducer/router-reducer-types.js","../node_modules/next/dist/client/components/router-reducer/reducers/get-segment-value.js","../node_modules/next/dist/shared/lib/lazy-dynamic/loadable.js","../node_modules/caniuse-lite/data/browsers.js","../node_modules/caniuse-lite/data/browserVersions.js","../node_modules/next/node_modules/postcss/lib/postcss.js","../node_modules/next/dist/lib/verifyAndLint.js","../node_modules/next/dist/build/webpack/config/blocks/images/index.js","../node_modules/next/dist/compiled/cssnano-simple/index.js","../node_modules/next/dist/shared/lib/image-loader.js","../node_modules/next/dist/build/babel/loader/get-config.js","../node_modules/next/dist/build/babel/loader/util.js","../node_modules/next/dist/compiled/ora/package.json","../node_modules/next/dist/compiled/ora/index.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseBabel.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseCss.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseScss.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseNotFoundError.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseRSC.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseNextFontError.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseNextAppLoaderError.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/parseNextInvalidImportError.js","../node_modules/next/dist/compiled/devalue/package.json","../node_modules/next/dist/compiled/devalue/devalue.umd.js","../node_modules/next/dist/compiled/loader-utils3/package.json","../node_modules/next/dist/compiled/loader-utils3/index.js","../node_modules/next/dist/compiled/babel/parser.js","../node_modules/next/dist/compiled/babel/traverse.js","../node_modules/next/dist/compiled/babel/types.js","../node_modules/next/dist/compiled/postcss-scss/package.json","../node_modules/next/dist/compiled/postcss-scss/scss-syntax.js","../node_modules/next/dist/shared/lib/lazy-dynamic/dynamic-no-ssr.js","../node_modules/next/dist/compiled/react-refresh/runtime.js","../node_modules/next/dist/client/normalize-locale-path.js","../node_modules/next/dist/build/webpack-build/impl.js","../node_modules/next/node_modules/postcss/lib/result.js","../node_modules/next/dist/compiled/react-refresh/package.json","../node_modules/next/dist/compiled/@vercel/nft/package.json","../node_modules/next/dist/compiled/@vercel/nft/index.js","../node_modules/next/dist/compiled/glob/package.json","../node_modules/next/dist/compiled/glob/glob.js","../node_modules/next/node_modules/postcss/lib/css-syntax-error.js","../node_modules/next/node_modules/postcss/lib/declaration.js","../node_modules/next/node_modules/postcss/lib/lazy-result.js","../node_modules/next/node_modules/postcss/lib/container.js","../node_modules/next/node_modules/postcss/lib/stringify.js","../node_modules/next/node_modules/postcss/lib/processor.js","../node_modules/next/node_modules/postcss/lib/fromJSON.js","../node_modules/next/node_modules/postcss/lib/comment.js","../node_modules/next/node_modules/postcss/lib/document.js","../node_modules/next/node_modules/postcss/lib/at-rule.js","../node_modules/next/node_modules/postcss/lib/warning.js","../node_modules/next/node_modules/postcss/lib/input.js","../node_modules/next/node_modules/postcss/lib/parse.js","../node_modules/next/node_modules/postcss/lib/rule.js","../node_modules/next/node_modules/postcss/lib/list.js","../node_modules/next/node_modules/postcss/lib/node.js","../node_modules/next/node_modules/postcss/lib/root.js","../node_modules/next/dist/build/webpack/config/blocks/images/messages.js","../node_modules/next/dist/build/webpack/config/helpers.js","../node_modules/next/dist/compiled/babel/generator.js","../node_modules/next/dist/compiled/babel/core-lib-normalize-file.js","../node_modules/next/dist/compiled/babel/core-lib-block-hoist-plugin.js","../node_modules/next/dist/compiled/babel/core-lib-normalize-opts.js","../node_modules/next/dist/compiled/babel/core-lib-plugin-pass.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/simpleWebpackError.js","../node_modules/next/dist/build/webpack/plugins/wellknown-errors-plugin/getModuleTrace.js","../node_modules/next/dist/build/babel/plugins/next-ssg-transform.js","../node_modules/next/dist/build/babel/plugins/next-font-unsupported.js","../node_modules/next/dist/build/babel/plugins/commonjs.js","../node_modules/next/dist/build/babel/plugins/next-page-disallow-re-export-all-exports.js","../node_modules/next/dist/build/babel/plugins/next-page-config.js","../node_modules/next/dist/compiled/react-refresh/cjs/react-refresh-runtime.production.min.js","../node_modules/next/dist/compiled/react-refresh/cjs/react-refresh-runtime.development.js","../node_modules/next/dist/build/compiler.js","../node_modules/next/dist/compiled/sass-loader/package.json","../node_modules/next/dist/compiled/babel/core-lib-config.js","../node_modules/next/dist/compiled/react-refresh/babel.js","../node_modules/next/dist/compiled/babel/plugin-transform-modules-commonjs.js","../node_modules/next/dist/compiled/babel/plugin-transform-define.js","../node_modules/next/node_modules/postcss/lib/terminal-highlight.js","../node_modules/next/node_modules/postcss/lib/map-generator.js","../node_modules/next/node_modules/postcss/lib/symbols.js","../node_modules/next/node_modules/postcss/lib/warn-once.js","../node_modules/next/node_modules/postcss/lib/no-work-result.js","../node_modules/next/node_modules/postcss/lib/stringifier.js","../node_modules/next/node_modules/postcss/lib/previous-map.js","../node_modules/next/node_modules/postcss/lib/parser.js","../node_modules/caniuse-lite/dist/unpacker/index.js","../node_modules/next/dist/compiled/lodash.curry/package.json","../node_modules/next/dist/compiled/lodash.curry/index.js","../node_modules/next/dist/compiled/@vercel/nft/LICENSE","../node_modules/next/dist/compiled/react-refresh/cjs/react-refresh-babel.production.min.js","../node_modules/next/dist/compiled/react-refresh/cjs/react-refresh-babel.development.js","../node_modules/next/node_modules/postcss/lib/tokenize.js","../node_modules/caniuse-lite/dist/unpacker/features.js","../node_modules/next/dist/compiled/postcss-plugin-stub-for-cssnano-simple/index.js","../node_modules/next/dist/compiled/postcss-value-parser/package.json","../node_modules/next/dist/compiled/postcss-value-parser/index.js","../node_modules/caniuse-lite/data/features.js","../node_modules/picocolors/package.json","../node_modules/picocolors/picocolors.js","../node_modules/source-map-js/package.json","../node_modules/source-map-js/source-map.js","../node_modules/caniuse-lite/data/features/aac.js","../node_modules/caniuse-lite/data/features/abortcontroller.js","../node_modules/caniuse-lite/data/features/ac3-ec3.js","../node_modules/caniuse-lite/data/features/accelerometer.js","../node_modules/caniuse-lite/data/features/ambient-light.js","../node_modules/caniuse-lite/data/features/addeventlistener.js","../node_modules/caniuse-lite/data/features/alternate-stylesheet.js","../node_modules/caniuse-lite/data/features/array-find-index.js","../node_modules/caniuse-lite/data/features/apng.js","../node_modules/caniuse-lite/data/features/array-includes.js","../node_modules/caniuse-lite/data/features/array-find.js","../node_modules/caniuse-lite/data/features/array-flat.js","../node_modules/caniuse-lite/data/features/arrow-functions.js","../node_modules/caniuse-lite/data/features/asmjs.js","../node_modules/caniuse-lite/data/features/async-clipboard.js","../node_modules/caniuse-lite/data/features/async-functions.js","../node_modules/caniuse-lite/data/features/atob-btoa.js","../node_modules/caniuse-lite/data/features/audio-api.js","../node_modules/caniuse-lite/data/features/audio.js","../node_modules/caniuse-lite/data/features/autofocus.js","../node_modules/caniuse-lite/data/features/audiotracks.js","../node_modules/caniuse-lite/data/features/auxclick.js","../node_modules/caniuse-lite/data/features/av1.js","../node_modules/caniuse-lite/data/features/avif.js","../node_modules/caniuse-lite/data/features/background-clip-text.js","../node_modules/caniuse-lite/data/features/background-img-opts.js","../node_modules/caniuse-lite/data/features/background-attachment.js","../node_modules/caniuse-lite/data/features/background-position-x-y.js","../node_modules/caniuse-lite/data/features/background-repeat-round-space.js","../node_modules/caniuse-lite/data/features/background-sync.js","../node_modules/caniuse-lite/data/features/battery-status.js","../node_modules/caniuse-lite/data/features/beacon.js","../node_modules/caniuse-lite/data/features/beforeafterprint.js","../node_modules/caniuse-lite/data/features/bigint.js","../node_modules/caniuse-lite/data/features/blobbuilder.js","../node_modules/caniuse-lite/data/features/border-image.js","../node_modules/caniuse-lite/data/features/bloburls.js","../node_modules/caniuse-lite/data/features/border-radius.js","../node_modules/caniuse-lite/data/features/brotli.js","../node_modules/caniuse-lite/data/features/broadcastchannel.js","../node_modules/caniuse-lite/data/features/calc.js","../node_modules/caniuse-lite/data/features/canvas-blending.js","../node_modules/caniuse-lite/data/features/canvas-text.js","../node_modules/caniuse-lite/data/features/canvas.js","../node_modules/caniuse-lite/data/features/ch-unit.js","../node_modules/caniuse-lite/data/features/chacha20-poly1305.js","../node_modules/caniuse-lite/data/features/channel-messaging.js","../node_modules/caniuse-lite/data/features/childnode-remove.js","../node_modules/caniuse-lite/data/features/classlist.js","../node_modules/caniuse-lite/data/features/client-hints-dpr-width-viewport.js","../node_modules/caniuse-lite/data/features/colr-v1.js","../node_modules/caniuse-lite/data/features/clipboard.js","../node_modules/caniuse-lite/data/features/colr.js","../node_modules/caniuse-lite/data/features/comparedocumentposition.js","../node_modules/caniuse-lite/data/features/console-time.js","../node_modules/caniuse-lite/data/features/console-basic.js","../node_modules/caniuse-lite/data/features/constraint-validation.js","../node_modules/caniuse-lite/data/features/const.js","../node_modules/caniuse-lite/data/features/contenteditable.js","../node_modules/caniuse-lite/data/features/contentsecuritypolicy.js","../node_modules/caniuse-lite/data/features/contentsecuritypolicy2.js","../node_modules/caniuse-lite/data/features/cookie-store-api.js","../node_modules/caniuse-lite/data/features/cors.js","../node_modules/caniuse-lite/data/features/createimagebitmap.js","../node_modules/caniuse-lite/data/features/credential-management.js","../node_modules/caniuse-lite/data/features/cryptography.js","../node_modules/caniuse-lite/data/features/css-animation.js","../node_modules/caniuse-lite/data/features/css-any-link.js","../node_modules/caniuse-lite/data/features/css-appearance.js","../node_modules/caniuse-lite/data/features/css-at-counter-style.js","../node_modules/caniuse-lite/data/features/css-autofill.js","../node_modules/caniuse-lite/data/features/css-backdrop-filter.js","../node_modules/caniuse-lite/data/features/css-background-offsets.js","../node_modules/caniuse-lite/data/features/css-backgroundblendmode.js","../node_modules/caniuse-lite/data/features/css-all.js","../node_modules/caniuse-lite/data/features/css-boxdecorationbreak.js","../node_modules/caniuse-lite/data/features/css-boxshadow.js","../node_modules/caniuse-lite/data/features/css-caret-color.js","../node_modules/caniuse-lite/data/features/css-canvas.js","../node_modules/caniuse-lite/data/features/css-cascade-scope.js","../node_modules/caniuse-lite/data/features/css-cascade-layers.js","../node_modules/caniuse-lite/data/features/css-case-insensitive.js","../node_modules/caniuse-lite/data/features/css-color-adjust.js","../node_modules/caniuse-lite/data/features/css-clip-path.js","../node_modules/caniuse-lite/data/features/css-color-function.js","../node_modules/caniuse-lite/data/features/css-conic-gradients.js","../node_modules/caniuse-lite/data/features/css-container-queries.js","../node_modules/caniuse-lite/data/features/css-container-queries-style.js","../node_modules/caniuse-lite/data/features/css-containment.js","../node_modules/caniuse-lite/data/features/css-container-query-units.js","../node_modules/caniuse-lite/data/features/css-counters.js","../node_modules/caniuse-lite/data/features/css-content-visibility.js","../node_modules/caniuse-lite/data/features/css-crisp-edges.js","../node_modules/caniuse-lite/data/features/css-cross-fade.js","../node_modules/caniuse-lite/data/features/css-default-pseudo.js","../node_modules/caniuse-lite/data/features/css-descendant-gtgt.js","../node_modules/caniuse-lite/data/features/css-dir-pseudo.js","../node_modules/caniuse-lite/data/features/css-deviceadaptation.js","../node_modules/caniuse-lite/data/features/css-display-contents.js","../node_modules/caniuse-lite/data/features/css-element-function.js","../node_modules/caniuse-lite/data/features/css-env-function.js","../node_modules/caniuse-lite/data/features/css-featurequeries.js","../node_modules/caniuse-lite/data/features/css-exclusions.js","../node_modules/caniuse-lite/data/features/css-file-selector-button.js","../node_modules/caniuse-lite/data/features/css-filter-function.js","../node_modules/caniuse-lite/data/features/css-filters.js","../node_modules/caniuse-lite/data/features/css-first-letter.js","../node_modules/caniuse-lite/data/features/css-first-line.js","../node_modules/caniuse-lite/data/features/css-fixed.js","../node_modules/caniuse-lite/data/features/css-focus-within.js","../node_modules/caniuse-lite/data/features/css-focus-visible.js","../node_modules/caniuse-lite/data/features/css-font-palette.js","../node_modules/caniuse-lite/data/features/css-font-rendering-controls.js","../node_modules/caniuse-lite/data/features/css-font-stretch.js","../node_modules/caniuse-lite/data/features/css-gencontent.js","../node_modules/caniuse-lite/data/features/css-gradients.js","../node_modules/caniuse-lite/data/features/css-grid-animation.js","../node_modules/caniuse-lite/data/features/css-grid.js","../node_modules/caniuse-lite/data/features/css-hanging-punctuation.js","../node_modules/caniuse-lite/data/features/css-has.js","../node_modules/caniuse-lite/data/features/css-hyphens.js","../node_modules/caniuse-lite/data/features/css-image-orientation.js","../node_modules/caniuse-lite/data/features/css-image-set.js","../node_modules/caniuse-lite/data/features/css-in-out-of-range.js","../node_modules/caniuse-lite/data/features/css-indeterminate-pseudo.js","../node_modules/caniuse-lite/data/features/css-initial-letter.js","../node_modules/caniuse-lite/data/features/css-initial-value.js","../node_modules/caniuse-lite/data/features/css-lch-lab.js","../node_modules/caniuse-lite/data/features/css-logical-props.js","../node_modules/caniuse-lite/data/features/css-line-clamp.js","../node_modules/caniuse-lite/data/features/css-marker-pseudo.js","../node_modules/caniuse-lite/data/features/css-letter-spacing.js","../node_modules/caniuse-lite/data/features/css-masks.js","../node_modules/caniuse-lite/data/features/css-matches-pseudo.js","../node_modules/caniuse-lite/data/features/css-math-functions.js","../node_modules/caniuse-lite/data/features/css-media-interaction.js","../node_modules/caniuse-lite/data/features/css-media-range-syntax.js","../node_modules/caniuse-lite/data/features/css-media-resolution.js","../node_modules/caniuse-lite/data/features/css-mediaqueries.js","../node_modules/caniuse-lite/data/features/css-media-scripting.js","../node_modules/caniuse-lite/data/features/css-mixblendmode.js","../node_modules/caniuse-lite/data/features/css-motion-paths.js","../node_modules/caniuse-lite/data/features/css-namespaces.js","../node_modules/caniuse-lite/data/features/css-nesting.js","../node_modules/caniuse-lite/data/features/css-nth-child-of.js","../node_modules/caniuse-lite/data/features/css-not-sel-list.js","../node_modules/caniuse-lite/data/features/css-opacity.js","../node_modules/caniuse-lite/data/features/css-optional-pseudo.js","../node_modules/caniuse-lite/data/features/css-overflow-anchor.js","../node_modules/caniuse-lite/data/features/css-overflow-overlay.js","../node_modules/caniuse-lite/data/features/css-overflow.js","../node_modules/caniuse-lite/data/features/css-overscroll-behavior.js","../node_modules/caniuse-lite/data/features/css-page-break.js","../node_modules/caniuse-lite/data/features/css-paged-media.js","../node_modules/caniuse-lite/data/features/css-paint-api.js","../node_modules/caniuse-lite/data/features/css-placeholder-shown.js","../node_modules/caniuse-lite/data/features/css-placeholder.js","../node_modules/caniuse-lite/data/features/css-print-color-adjust.js","../node_modules/caniuse-lite/data/features/css-rebeccapurple.js","../node_modules/caniuse-lite/data/features/css-read-only-write.js","../node_modules/caniuse-lite/data/features/css-reflections.js","../node_modules/caniuse-lite/data/features/css-regions.js","../node_modules/caniuse-lite/data/features/css-relative-colors.js","../node_modules/caniuse-lite/data/features/css-repeating-gradients.js","../node_modules/caniuse-lite/data/features/css-resize.js","../node_modules/caniuse-lite/data/features/css-revert-value.js","../node_modules/caniuse-lite/data/features/css-rrggbbaa.js","../node_modules/caniuse-lite/data/features/css-scroll-behavior.js","../node_modules/caniuse-lite/data/features/css-scroll-timeline.js","../node_modules/caniuse-lite/data/features/css-scrollbar.js","../node_modules/caniuse-lite/data/features/css-sel2.js","../node_modules/caniuse-lite/data/features/css-sel3.js","../node_modules/caniuse-lite/data/features/css-shapes.js","../node_modules/caniuse-lite/data/features/css-selection.js","../node_modules/caniuse-lite/data/features/css-snappoints.js","../node_modules/caniuse-lite/data/features/css-sticky.js","../node_modules/caniuse-lite/data/features/css-subgrid.js","../node_modules/caniuse-lite/data/features/css-supports-api.js","../node_modules/caniuse-lite/data/features/css-table.js","../node_modules/caniuse-lite/data/features/css-text-align-last.js","../node_modules/caniuse-lite/data/features/css-text-box-trim.js","../node_modules/caniuse-lite/data/features/css-text-justify.js","../node_modules/caniuse-lite/data/features/css-text-orientation.js","../node_modules/caniuse-lite/data/features/css-text-spacing.js","../node_modules/caniuse-lite/data/features/css-text-wrap-balance.js","../node_modules/caniuse-lite/data/features/css-textshadow.js","../node_modules/caniuse-lite/data/features/css-touch-action.js","../node_modules/caniuse-lite/data/features/css-transitions.js","../node_modules/caniuse-lite/data/features/css-unicode-bidi.js","../node_modules/caniuse-lite/data/features/css-unset-value.js","../node_modules/caniuse-lite/data/features/css-variables.js","../node_modules/caniuse-lite/data/features/css-when-else.js","../node_modules/caniuse-lite/data/features/css-widows-orphans.js","../node_modules/caniuse-lite/data/features/css-width-stretch.js","../node_modules/caniuse-lite/data/features/css-writing-mode.js","../node_modules/caniuse-lite/data/features/css-zoom.js","../node_modules/caniuse-lite/data/features/css3-attr.js","../node_modules/caniuse-lite/data/features/css3-colors.js","../node_modules/caniuse-lite/data/features/css3-cursors-grab.js","../node_modules/caniuse-lite/data/features/css3-cursors-newer.js","../node_modules/caniuse-lite/data/features/css3-cursors.js","../node_modules/caniuse-lite/data/features/css3-tabsize.js","../node_modules/caniuse-lite/data/features/currentcolor.js","../node_modules/caniuse-lite/data/features/custom-elements.js","../node_modules/caniuse-lite/data/features/css3-boxsizing.js","../node_modules/caniuse-lite/data/features/custom-elementsv1.js","../node_modules/caniuse-lite/data/features/datalist.js","../node_modules/caniuse-lite/data/features/customevent.js","../node_modules/caniuse-lite/data/features/dataset.js","../node_modules/caniuse-lite/data/features/datauri.js","../node_modules/caniuse-lite/data/features/date-tolocaledatestring.js","../node_modules/caniuse-lite/data/features/declarative-shadow-dom.js","../node_modules/caniuse-lite/data/features/decorators.js","../node_modules/caniuse-lite/data/features/details.js","../node_modules/caniuse-lite/data/features/css-text-indent.js","../node_modules/caniuse-lite/data/features/deviceorientation.js","../node_modules/caniuse-lite/data/features/devicepixelratio.js","../node_modules/caniuse-lite/data/features/dialog.js","../node_modules/caniuse-lite/data/features/dispatchevent.js","../node_modules/caniuse-lite/data/features/dnssec.js","../node_modules/caniuse-lite/data/features/do-not-track.js","../node_modules/caniuse-lite/data/features/document-currentscript.js","../node_modules/caniuse-lite/data/features/document-evaluate-xpath.js","../node_modules/caniuse-lite/data/features/document-policy.js","../node_modules/caniuse-lite/data/features/document-execcommand.js","../node_modules/caniuse-lite/data/features/document-scrollingelement.js","../node_modules/caniuse-lite/data/features/dom-manip-convenience.js","../node_modules/caniuse-lite/data/features/documenthead.js","../node_modules/caniuse-lite/data/features/dom-range.js","../node_modules/caniuse-lite/data/features/domcontentloaded.js","../node_modules/caniuse-lite/data/features/dommatrix.js","../node_modules/caniuse-lite/data/features/dragndrop.js","../node_modules/caniuse-lite/data/features/download.js","../node_modules/caniuse-lite/data/features/element-closest.js","../node_modules/caniuse-lite/data/features/element-scroll-methods.js","../node_modules/caniuse-lite/data/features/element-from-point.js","../node_modules/caniuse-lite/data/features/eot.js","../node_modules/caniuse-lite/data/features/eme.js","../node_modules/caniuse-lite/data/features/es5.js","../node_modules/caniuse-lite/data/features/es6-class.js","../node_modules/caniuse-lite/data/features/es6-module-dynamic-import.js","../node_modules/caniuse-lite/data/features/es6-generators.js","../node_modules/caniuse-lite/data/features/es6-number.js","../node_modules/caniuse-lite/data/features/es6-module.js","../node_modules/caniuse-lite/data/features/es6-string-includes.js","../node_modules/caniuse-lite/data/features/es6.js","../node_modules/caniuse-lite/data/features/eventsource.js","../node_modules/caniuse-lite/data/features/feature-policy.js","../node_modules/caniuse-lite/data/features/fetch.js","../node_modules/caniuse-lite/data/features/extended-system-fonts.js","../node_modules/caniuse-lite/data/features/fieldset-disabled.js","../node_modules/caniuse-lite/data/features/fileapi.js","../node_modules/caniuse-lite/data/features/filereader.js","../node_modules/caniuse-lite/data/features/filereadersync.js","../node_modules/caniuse-lite/data/features/filesystem.js","../node_modules/caniuse-lite/data/features/flac.js","../node_modules/caniuse-lite/data/features/flexbox-gap.js","../node_modules/caniuse-lite/data/features/flexbox.js","../node_modules/caniuse-lite/data/features/focusin-focusout-events.js","../node_modules/caniuse-lite/data/features/flow-root.js","../node_modules/caniuse-lite/data/features/font-family-system-ui.js","../node_modules/caniuse-lite/data/features/font-feature.js","../node_modules/caniuse-lite/data/features/font-kerning.js","../node_modules/caniuse-lite/data/features/font-loading.js","../node_modules/caniuse-lite/data/features/font-smooth.js","../node_modules/caniuse-lite/data/features/font-size-adjust.js","../node_modules/caniuse-lite/data/features/font-unicode-range.js","../node_modules/caniuse-lite/data/features/font-variant-alternates.js","../node_modules/caniuse-lite/data/features/font-variant-numeric.js","../node_modules/caniuse-lite/data/features/form-attribute.js","../node_modules/caniuse-lite/data/features/fontface.js","../node_modules/caniuse-lite/data/features/form-submit-attributes.js","../node_modules/caniuse-lite/data/features/form-validation.js","../node_modules/caniuse-lite/data/features/forms.js","../node_modules/caniuse-lite/data/features/fullscreen.js","../node_modules/caniuse-lite/data/features/gamepad.js","../node_modules/caniuse-lite/data/features/geolocation.js","../node_modules/caniuse-lite/data/features/getboundingclientrect.js","../node_modules/caniuse-lite/data/features/getelementsbyclassname.js","../node_modules/caniuse-lite/data/features/getcomputedstyle.js","../node_modules/caniuse-lite/data/features/getrandomvalues.js","../node_modules/caniuse-lite/data/features/gyroscope.js","../node_modules/caniuse-lite/data/features/hashchange.js","../node_modules/caniuse-lite/data/features/hardwareconcurrency.js","../node_modules/caniuse-lite/data/features/heif.js","../node_modules/caniuse-lite/data/features/hevc.js","../node_modules/caniuse-lite/data/features/hidden.js","../node_modules/caniuse-lite/data/features/high-resolution-time.js","../node_modules/caniuse-lite/data/features/history.js","../node_modules/caniuse-lite/data/features/html-media-capture.js","../node_modules/caniuse-lite/data/features/http-live-streaming.js","../node_modules/caniuse-lite/data/features/html5semantic.js","../node_modules/caniuse-lite/data/features/http2.js","../node_modules/caniuse-lite/data/features/iframe-sandbox.js","../node_modules/caniuse-lite/data/features/http3.js","../node_modules/caniuse-lite/data/features/iframe-seamless.js","../node_modules/caniuse-lite/data/features/iframe-srcdoc.js","../node_modules/caniuse-lite/data/features/imagecapture.js","../node_modules/caniuse-lite/data/features/ime.js","../node_modules/caniuse-lite/data/features/img-naturalwidth-naturalheight.js","../node_modules/caniuse-lite/data/features/import-maps.js","../node_modules/caniuse-lite/data/features/imports.js","../node_modules/caniuse-lite/data/features/indeterminate-checkbox.js","../node_modules/caniuse-lite/data/features/indexeddb.js","../node_modules/caniuse-lite/data/features/indexeddb2.js","../node_modules/caniuse-lite/data/features/innertext.js","../node_modules/caniuse-lite/data/features/inline-block.js","../node_modules/caniuse-lite/data/features/input-autocomplete-onoff.js","../node_modules/caniuse-lite/data/features/input-color.js","../node_modules/caniuse-lite/data/features/input-datetime.js","../node_modules/caniuse-lite/data/features/input-email-tel-url.js","../node_modules/caniuse-lite/data/features/input-file-accept.js","../node_modules/caniuse-lite/data/features/input-event.js","../node_modules/caniuse-lite/data/features/input-file-directory.js","../node_modules/caniuse-lite/data/features/input-file-multiple.js","../node_modules/caniuse-lite/data/features/input-inputmode.js","../node_modules/caniuse-lite/data/features/input-number.js","../node_modules/caniuse-lite/data/features/input-minlength.js","../node_modules/caniuse-lite/data/features/input-pattern.js","../node_modules/caniuse-lite/data/features/input-placeholder.js","../node_modules/caniuse-lite/data/features/input-search.js","../node_modules/caniuse-lite/data/features/input-range.js","../node_modules/caniuse-lite/data/features/input-selection.js","../node_modules/caniuse-lite/data/features/insert-adjacent.js","../node_modules/caniuse-lite/data/features/insertadjacenthtml.js","../node_modules/caniuse-lite/data/features/internationalization.js","../node_modules/caniuse-lite/data/features/intersectionobserver-v2.js","../node_modules/caniuse-lite/data/features/intl-pluralrules.js","../node_modules/caniuse-lite/data/features/intrinsic-width.js","../node_modules/caniuse-lite/data/features/intersectionobserver.js","../node_modules/caniuse-lite/data/features/jpeg2000.js","../node_modules/caniuse-lite/data/features/jpegxl.js","../node_modules/caniuse-lite/data/features/jpegxr.js","../node_modules/caniuse-lite/data/features/js-regexp-lookbehind.js","../node_modules/caniuse-lite/data/features/json.js","../node_modules/caniuse-lite/data/features/kerning-pairs-ligatures.js","../node_modules/caniuse-lite/data/features/keyboardevent-charcode.js","../node_modules/caniuse-lite/data/features/justify-content-space-evenly.js","../node_modules/caniuse-lite/data/features/keyboardevent-code.js","../node_modules/caniuse-lite/data/features/keyboardevent-getmodifierstate.js","../node_modules/caniuse-lite/data/features/keyboardevent-key.js","../node_modules/caniuse-lite/data/features/keyboardevent-location.js","../node_modules/caniuse-lite/data/features/keyboardevent-which.js","../node_modules/caniuse-lite/data/features/lazyload.js","../node_modules/caniuse-lite/data/features/let.js","../node_modules/caniuse-lite/data/features/link-icon-png.js","../node_modules/caniuse-lite/data/features/link-icon-svg.js","../node_modules/caniuse-lite/data/features/link-rel-dns-prefetch.js","../node_modules/caniuse-lite/data/features/link-rel-modulepreload.js","../node_modules/caniuse-lite/data/features/link-rel-preconnect.js","../node_modules/caniuse-lite/data/features/link-rel-preload.js","../node_modules/caniuse-lite/data/features/link-rel-prefetch.js","../node_modules/caniuse-lite/data/features/link-rel-prerender.js","../node_modules/caniuse-lite/data/features/loading-lazy-attr.js","../node_modules/caniuse-lite/data/features/localecompare.js","../node_modules/caniuse-lite/data/features/magnetometer.js","../node_modules/caniuse-lite/data/features/matchesselector.js","../node_modules/caniuse-lite/data/features/matchmedia.js","../node_modules/caniuse-lite/data/features/mathml.js","../node_modules/caniuse-lite/data/features/mdn-css-backdrop-pseudo-element.js","../node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate-override.js","../node_modules/caniuse-lite/data/features/maxlength.js","../node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate.js","../node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-plaintext.js","../node_modules/caniuse-lite/data/features/mdn-text-decoration-color.js","../node_modules/caniuse-lite/data/features/mdn-text-decoration-line.js","../node_modules/caniuse-lite/data/features/mdn-text-decoration-shorthand.js","../node_modules/caniuse-lite/data/features/mdn-text-decoration-style.js","../node_modules/caniuse-lite/data/features/mediacapture-fromelement.js","../node_modules/caniuse-lite/data/features/media-fragments.js","../node_modules/caniuse-lite/data/features/mediarecorder.js","../node_modules/caniuse-lite/data/features/menu.js","../node_modules/caniuse-lite/data/features/mediasource.js","../node_modules/caniuse-lite/data/features/meta-theme-color.js","../node_modules/caniuse-lite/data/features/meter.js","../node_modules/caniuse-lite/data/features/midi.js","../node_modules/caniuse-lite/data/features/minmaxwh.js","../node_modules/caniuse-lite/data/features/mpeg-dash.js","../node_modules/caniuse-lite/data/features/mp3.js","../node_modules/caniuse-lite/data/features/mpeg4.js","../node_modules/caniuse-lite/data/features/multibackgrounds.js","../node_modules/caniuse-lite/data/features/multicolumn.js","../node_modules/caniuse-lite/data/features/mutation-events.js","../node_modules/caniuse-lite/data/features/mutationobserver.js","../node_modules/caniuse-lite/data/features/namevalue-storage.js","../node_modules/caniuse-lite/data/features/native-filesystem-api.js","../node_modules/caniuse-lite/data/features/nav-timing.js","../node_modules/caniuse-lite/data/features/netinfo.js","../node_modules/caniuse-lite/data/features/notifications.js","../node_modules/caniuse-lite/data/features/object-entries.js","../node_modules/caniuse-lite/data/features/object-fit.js","../node_modules/caniuse-lite/data/features/object-observe.js","../node_modules/caniuse-lite/data/features/object-values.js","../node_modules/caniuse-lite/data/features/objectrtc.js","../node_modules/caniuse-lite/data/features/offline-apps.js","../node_modules/caniuse-lite/data/features/offscreencanvas.js","../node_modules/caniuse-lite/data/features/ogg-vorbis.js","../node_modules/caniuse-lite/data/features/ogv.js","../node_modules/caniuse-lite/data/features/ol-reversed.js","../node_modules/caniuse-lite/data/features/once-event-listener.js","../node_modules/caniuse-lite/data/features/online-status.js","../node_modules/caniuse-lite/data/features/opus.js","../node_modules/caniuse-lite/data/features/orientation-sensor.js","../node_modules/caniuse-lite/data/features/outline.js","../node_modules/caniuse-lite/data/features/pad-start-end.js","../node_modules/caniuse-lite/data/features/page-transition-events.js","../node_modules/caniuse-lite/data/features/pagevisibility.js","../node_modules/caniuse-lite/data/features/passive-event-listener.js","../node_modules/caniuse-lite/data/features/passkeys.js","../node_modules/caniuse-lite/data/features/passwordrules.js","../node_modules/caniuse-lite/data/features/path2d.js","../node_modules/caniuse-lite/data/features/payment-request.js","../node_modules/caniuse-lite/data/features/pdf-viewer.js","../node_modules/caniuse-lite/data/features/permissions-api.js","../node_modules/caniuse-lite/data/features/permissions-policy.js","../node_modules/caniuse-lite/data/features/picture-in-picture.js","../node_modules/caniuse-lite/data/features/picture.js","../node_modules/caniuse-lite/data/features/ping.js","../node_modules/caniuse-lite/data/features/png-alpha.js","../node_modules/caniuse-lite/data/features/pointer.js","../node_modules/caniuse-lite/data/features/pointer-events.js","../node_modules/caniuse-lite/data/features/pointerlock.js","../node_modules/caniuse-lite/data/features/portals.js","../node_modules/caniuse-lite/data/features/prefers-color-scheme.js","../node_modules/caniuse-lite/data/features/prefers-reduced-motion.js","../node_modules/caniuse-lite/data/features/progress.js","../node_modules/caniuse-lite/data/features/promise-finally.js","../node_modules/caniuse-lite/data/features/promises.js","../node_modules/caniuse-lite/data/features/proximity.js","../node_modules/caniuse-lite/data/features/proxy.js","../node_modules/caniuse-lite/data/features/publickeypinning.js","../node_modules/caniuse-lite/data/features/push-api.js","../node_modules/caniuse-lite/data/features/queryselector.js","../node_modules/caniuse-lite/data/features/readonly-attr.js","../node_modules/caniuse-lite/data/features/referrer-policy.js","../node_modules/caniuse-lite/data/features/registerprotocolhandler.js","../node_modules/caniuse-lite/data/features/rel-noopener.js","../node_modules/caniuse-lite/data/features/rel-noreferrer.js","../node_modules/caniuse-lite/data/features/rellist.js","../node_modules/caniuse-lite/data/features/rem.js","../node_modules/caniuse-lite/data/features/requestanimationframe.js","../node_modules/caniuse-lite/data/features/requestidlecallback.js","../node_modules/caniuse-lite/data/features/resource-timing.js","../node_modules/caniuse-lite/data/features/resizeobserver.js","../node_modules/caniuse-lite/data/features/ruby.js","../node_modules/caniuse-lite/data/features/rtcpeerconnection.js","../node_modules/caniuse-lite/data/features/rest-parameters.js","../node_modules/caniuse-lite/data/features/same-site-cookie-attribute.js","../node_modules/caniuse-lite/data/features/run-in.js","../node_modules/caniuse-lite/data/features/screen-orientation.js","../node_modules/caniuse-lite/data/features/script-defer.js","../node_modules/caniuse-lite/data/features/script-async.js","../node_modules/caniuse-lite/data/features/scrollintoviewifneeded.js","../node_modules/caniuse-lite/data/features/scrollintoview.js","../node_modules/caniuse-lite/data/features/sdch.js","../node_modules/caniuse-lite/data/features/selection-api.js","../node_modules/caniuse-lite/data/features/server-timing.js","../node_modules/caniuse-lite/data/features/serviceworkers.js","../node_modules/caniuse-lite/data/features/setimmediate.js","../node_modules/caniuse-lite/data/features/shadowdom.js","../node_modules/caniuse-lite/data/features/shadowdomv1.js","../node_modules/caniuse-lite/data/features/sharedworkers.js","../node_modules/caniuse-lite/data/features/sharedarraybuffer.js","../node_modules/caniuse-lite/data/features/sni.js","../node_modules/caniuse-lite/data/features/spdy.js","../node_modules/caniuse-lite/data/features/speech-recognition.js","../node_modules/caniuse-lite/data/features/speech-synthesis.js","../node_modules/caniuse-lite/data/features/spellcheck-attribute.js","../node_modules/caniuse-lite/data/features/srcset.js","../node_modules/caniuse-lite/data/features/sql-storage.js","../node_modules/caniuse-lite/data/features/stream.js","../node_modules/caniuse-lite/data/features/streams.js","../node_modules/caniuse-lite/data/features/stricttransportsecurity.js","../node_modules/caniuse-lite/data/features/style-scoped.js","../node_modules/caniuse-lite/data/features/subresource-bundling.js","../node_modules/caniuse-lite/data/features/subresource-integrity.js","../node_modules/caniuse-lite/data/features/svg-css.js","../node_modules/caniuse-lite/data/features/svg-filters.js","../node_modules/caniuse-lite/data/features/svg-html.js","../node_modules/caniuse-lite/data/features/svg-fragment.js","../node_modules/caniuse-lite/data/features/svg-html5.js","../node_modules/caniuse-lite/data/features/svg-img.js","../node_modules/caniuse-lite/data/features/svg-fonts.js","../node_modules/caniuse-lite/data/features/svg.js","../node_modules/caniuse-lite/data/features/svg-smil.js","../node_modules/caniuse-lite/data/features/sxg.js","../node_modules/caniuse-lite/data/features/tabindex-attr.js","../node_modules/caniuse-lite/data/features/template-literals.js","../node_modules/caniuse-lite/data/features/template.js","../node_modules/caniuse-lite/data/features/testfeat.js","../node_modules/caniuse-lite/data/features/temporal.js","../node_modules/caniuse-lite/data/features/text-decoration.js","../node_modules/caniuse-lite/data/features/text-emphasis.js","../node_modules/caniuse-lite/data/features/text-overflow.js","../node_modules/caniuse-lite/data/features/text-size-adjust.js","../node_modules/caniuse-lite/data/features/text-stroke.js","../node_modules/caniuse-lite/data/features/textcontent.js","../node_modules/caniuse-lite/data/features/tls1-1.js","../node_modules/caniuse-lite/data/features/textencoder.js","../node_modules/caniuse-lite/data/features/tls1-2.js","../node_modules/caniuse-lite/data/features/tls1-3.js","../node_modules/caniuse-lite/data/features/transforms2d.js","../node_modules/caniuse-lite/data/features/touch.js","../node_modules/caniuse-lite/data/features/transforms3d.js","../node_modules/caniuse-lite/data/features/trusted-types.js","../node_modules/caniuse-lite/data/features/ttf.js","../node_modules/caniuse-lite/data/features/typedarrays.js","../node_modules/caniuse-lite/data/features/u2f.js","../node_modules/caniuse-lite/data/features/unhandledrejection.js","../node_modules/caniuse-lite/data/features/upgradeinsecurerequests.js","../node_modules/caniuse-lite/data/features/url-scroll-to-text-fragment.js","../node_modules/caniuse-lite/data/features/url.js","../node_modules/caniuse-lite/data/features/urlsearchparams.js","../node_modules/caniuse-lite/data/features/use-strict.js","../node_modules/caniuse-lite/data/features/user-select-none.js","../node_modules/caniuse-lite/data/features/user-timing.js","../node_modules/caniuse-lite/data/features/variable-fonts.js","../node_modules/caniuse-lite/data/features/vector-effect.js","../node_modules/caniuse-lite/data/features/vibration.js","../node_modules/caniuse-lite/data/features/video.js","../node_modules/caniuse-lite/data/features/videotracks.js","../node_modules/caniuse-lite/data/features/view-transitions.js","../node_modules/caniuse-lite/data/features/viewport-unit-variants.js","../node_modules/caniuse-lite/data/features/viewport-units.js","../node_modules/caniuse-lite/data/features/wai-aria.js","../node_modules/caniuse-lite/data/features/wake-lock.js","../node_modules/caniuse-lite/data/features/wasm.js","../node_modules/caniuse-lite/data/features/wav.js","../node_modules/caniuse-lite/data/features/wbr-element.js","../node_modules/caniuse-lite/data/features/web-animation.js","../node_modules/caniuse-lite/data/features/web-app-manifest.js","../node_modules/caniuse-lite/data/features/web-bluetooth.js","../node_modules/caniuse-lite/data/features/web-serial.js","../node_modules/caniuse-lite/data/features/web-share.js","../node_modules/caniuse-lite/data/features/webcodecs.js","../node_modules/caniuse-lite/data/features/webauthn.js","../node_modules/caniuse-lite/data/features/webgl.js","../node_modules/caniuse-lite/data/features/webgl2.js","../node_modules/caniuse-lite/data/features/webgpu.js","../node_modules/caniuse-lite/data/features/webhid.js","../node_modules/caniuse-lite/data/features/webkit-user-drag.js","../node_modules/caniuse-lite/data/features/webnfc.js","../node_modules/caniuse-lite/data/features/webm.js","../node_modules/caniuse-lite/data/features/webp.js","../node_modules/caniuse-lite/data/features/websockets.js","../node_modules/caniuse-lite/data/features/webtransport.js","../node_modules/caniuse-lite/data/features/webusb.js","../node_modules/caniuse-lite/data/features/webvr.js","../node_modules/caniuse-lite/data/features/webvtt.js","../node_modules/caniuse-lite/data/features/webworkers.js","../node_modules/caniuse-lite/data/features/webxr.js","../node_modules/caniuse-lite/data/features/will-change.js","../node_modules/caniuse-lite/data/features/woff.js","../node_modules/caniuse-lite/data/features/woff2.js","../node_modules/caniuse-lite/data/features/word-break.js","../node_modules/caniuse-lite/data/features/wordwrap.js","../node_modules/caniuse-lite/data/features/x-doc-messaging.js","../node_modules/caniuse-lite/data/features/x-frame-options.js","../node_modules/caniuse-lite/data/features/xhr2.js","../node_modules/caniuse-lite/data/features/xhtml.js","../node_modules/caniuse-lite/data/features/xhtmlsmil.js","../node_modules/caniuse-lite/data/features/xml-serializer.js","../node_modules/caniuse-lite/data/features/zstd.js","../node_modules/nanoid/non-secure/package.json","../node_modules/next/dist/compiled/acorn/package.json","../node_modules/next/dist/compiled/acorn/acorn.js","../node_modules/source-map-js/lib/source-map-generator.js","../node_modules/source-map-js/lib/source-map-consumer.js","../node_modules/source-map-js/lib/source-node.js","../node_modules/nanoid/package.json","../node_modules/nanoid/non-secure/index.cjs","../node_modules/source-map-js/lib/base64-vlq.js","../node_modules/source-map-js/lib/util.js","../node_modules/source-map-js/lib/mapping-list.js","../node_modules/source-map-js/lib/array-set.js","../node_modules/source-map-js/lib/binary-search.js","../node_modules/source-map-js/lib/quick-sort.js","../node_modules/source-map-js/lib/base64.js","../node_modules/next/font/google/target.css","../node_modules/next/dist/compiled/@next/font/google/loader.js","../node_modules/next/dist/compiled/@next/font/local/loader.js","../node_modules/next/dist/compiled/sass-loader/cjs.js","../node_modules/next/dist/compiled/@next/font/package.json","../node_modules/next/dist/build/webpack/config/blocks/css/messages.js","../node_modules/next/dist/build/webpack/config/blocks/css/loaders/next-font.js","../node_modules/next/dist/build/webpack/config/blocks/css/plugins.js","../node_modules/next/dist/build/webpack/loaders/next-flight-css-loader.js","../node_modules/next/dist/build/webpack/plugins/mini-css-extract-plugin.js","../node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js","../node_modules/next/dist/build/webpack/config/blocks/css/loaders/index.js","../node_modules/next/dist/build/webpack/config/blocks/css/loaders/client.js","../node_modules/next/dist/build/webpack/config/blocks/css/loaders/file-resolve.js","../node_modules/next/dist/compiled/@next/font/dist/google/loader.js","../node_modules/next/dist/build/webpack/loaders/resolve-url-loader/lib/join-function.js","../node_modules/next/dist/build/webpack/loaders/resolve-url-loader/lib/value-processor.js","../node_modules/next/dist/build/webpack/loaders/resolve-url-loader/lib/postcss.js","../node_modules/next/dist/build/webpack/config/blocks/css/loaders/global.js","../node_modules/next/dist/build/webpack/config/blocks/css/loaders/modules.js","../node_modules/next/dist/compiled/@next/font/dist/local/loader.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js","../node_modules/next/dist/compiled/ignore-loader/package.json","../node_modules/next/dist/compiled/ignore-loader/index.js","../node_modules/next/dist/compiled/@next/font/dist/google/validate-google-font-function-call.js","../node_modules/next/dist/compiled/@next/font/dist/google/get-font-axes.js","../node_modules/next/dist/compiled/@next/font/dist/google/get-google-fonts-url.js","../node_modules/next/dist/compiled/@next/font/dist/next-font-error.js","../node_modules/next/dist/compiled/@next/font/dist/google/find-font-files-in-css.js","../node_modules/next/dist/compiled/@next/font/dist/google/get-fallback-font-override-metrics.js","../node_modules/next/dist/compiled/@next/font/dist/google/fetch-css-from-google-fonts.js","../node_modules/next/dist/compiled/@next/font/dist/google/fetch-font-file.js","../node_modules/next/dist/build/webpack/loaders/resolve-url-loader/lib/file-protocol.js","../node_modules/next/dist/build/webpack/config/blocks/css/loaders/getCssModuleLocalIdent.js","../node_modules/next/dist/compiled/@next/font/dist/local/get-fallback-metrics-from-font-file.js","../node_modules/next/dist/compiled/@next/font/dist/local/pick-font-file-for-fallback-generation.js","../node_modules/next/dist/compiled/@next/font/dist/local/validate-local-font-function-call.js","../node_modules/next/dist/compiled/postcss-flexbugs-fixes/package.json","../node_modules/next/dist/compiled/postcss-flexbugs-fixes/index.js","../node_modules/next/dist/compiled/mini-css-extract-plugin/package.json","../node_modules/next/dist/compiled/mini-css-extract-plugin/cjs.js","../node_modules/sass/package.json","../node_modules/next/dist/build/webpack/loaders/css-loader/src/CssSyntaxError.js","../node_modules/next/dist/build/webpack/loaders/postcss-loader/src/Warning.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/utils.js","../node_modules/sass/sass.node.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/runtime/api.js","../node_modules/next/dist/compiled/@next/font/dist/constants.js","../node_modules/next/dist/compiled/@next/font/dist/format-available-values.js","../node_modules/next/dist/compiled/@next/font/dist/google/google-fonts-metadata.js","../node_modules/next/dist/compiled/@next/font/dist/google/get-proxy-agent.js","../node_modules/next/dist/compiled/neo-async/package.json","../node_modules/next/dist/compiled/neo-async/async.js","../node_modules/next/dist/compiled/source-map/package.json","../node_modules/next/dist/compiled/source-map/source-map.js","../node_modules/next/dist/lib/find-config.js","../node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js","../node_modules/next/dist/compiled/@next/font/dist/fontkit/index.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/plugins/index.js","../node_modules/next/dist/compiled/mini-css-extract-plugin/index.js","../node_modules/next/dist/compiled/@next/font/dist/google/font-data.json","../node_modules/sass/sass.dart.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/camelcase.js","../node_modules/next/dist/build/webpack/loaders/postcss-loader/src/Error.js","../node_modules/next/dist/build/webpack/loaders/postcss-loader/src/utils.js","../node_modules/next/dist/compiled/loader-utils2/package.json","../node_modules/next/dist/compiled/loader-utils2/index.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/plugins/postcss-icss-parser.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/plugins/postcss-import-parser.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/plugins/postcss-url-parser.js","../node_modules/next/dist/compiled/node-fetch/package.json","../node_modules/next/dist/compiled/node-fetch/index.js","../node_modules/next/dist/compiled/postcss-preset-env/package.json","../node_modules/next/dist/compiled/postcss-preset-env/index.cjs","../node_modules/immutable/package.json","../node_modules/immutable/dist/immutable.js","../node_modules/next/dist/build/webpack/loaders/css-loader/src/runtime/getUrl.js","../node_modules/next/dist/compiled/https-proxy-agent/package.json","../node_modules/next/dist/compiled/https-proxy-agent/index.js","../node_modules/next/dist/compiled/http-proxy-agent/package.json","../node_modules/next/dist/compiled/http-proxy-agent/index.js","../node_modules/next/dist/compiled/postcss-modules-values/package.json","../node_modules/next/dist/compiled/postcss-modules-values/index.js","../node_modules/next/dist/compiled/postcss-modules-local-by-default/package.json","../node_modules/next/dist/compiled/postcss-modules-local-by-default/index.js","../node_modules/next/dist/compiled/postcss-modules-scope/package.json","../node_modules/next/dist/compiled/postcss-modules-scope/index.js","../node_modules/next/dist/compiled/postcss-modules-extract-imports/package.json","../node_modules/next/dist/compiled/postcss-modules-extract-imports/index.js","../node_modules/next/dist/compiled/schema-utils3/package.json","../node_modules/next/dist/compiled/schema-utils3/index.js","../node_modules/next/dist/compiled/icss-utils/package.json","../node_modules/next/dist/compiled/icss-utils/index.js"]}
\ No newline at end of file
+{"version":1,"files":["../node_modules/styled-jsx/index.js","../node_modules/styled-jsx/package.json","../node_modules/styled-jsx/dist/index/index.js","../node_modules/react/package.json","../node_modules/react/index.js","../node_modules/client-only/package.json","../node_modules/react/cjs/react.production.min.js","../node_modules/client-only/index.js","../node_modules/styled-jsx/style.js","../node_modules/next/dist/server/next-server.js","../node_modules/next/package.json","../node_modules/next/dist/server/base-server.js","../node_modules/next/dist/server/node-environment.js","../node_modules/next/dist/server/require-hook.js","../node_modules/next/dist/server/node-polyfill-crypto.js","../node_modules/next/dist/server/request-meta.js","../node_modules/next/dist/lib/find-pages-dir.js","../node_modules/next/dist/server/send-payload.js","../node_modules/next/dist/server/require.js","../node_modules/next/dist/lib/is-error.js","../node_modules/next/dist/server/load-components.js","../node_modules/next/dist/lib/constants.js","../node_modules/next/dist/server/body-streams.js","../node_modules/next/dist/server/setup-http-agent-env.js","../node_modules/next/dist/server/pipe-readable.js","../node_modules/next/dist/server/load-manifest.js","../node_modules/next/dist/lib/format-server-error.js","../node_modules/next/dist/server/image-optimizer.js","../node_modules/next/dist/server/serve-static.js","../node_modules/next/dist/lib/picocolors.js","../node_modules/next/dist/shared/lib/utils.js","../node_modules/next/dist/shared/lib/constants.js","../node_modules/next/dist/server/base-http/node.js","../node_modules/next/dist/build/output/log.js","../node_modules/next/dist/server/web/utils.js","../node_modules/next/dist/server/lib/node-fs-methods.js","../node_modules/next/dist/client/components/app-router-headers.js","../node_modules/next/dist/server/lib/mock-request.js","../node_modules/next/dist/experimental/testmode/server.js","../node_modules/next/dist/shared/lib/page-path/denormalize-page-path.js","../node_modules/next/dist/shared/lib/page-path/normalize-page-path.js","../node_modules/next/dist/server/lib/trace/tracer.js","../node_modules/next/dist/server/lib/trace/constants.js","../node_modules/next/dist/server/lib/server-ipc/utils.js","../node_modules/next/dist/server/lib/server-ipc/invoke-request.js","../node_modules/next/dist/server/future/route-matches/pages-api-route-match.js","../node_modules/next/dist/shared/lib/router/utils/route-matcher.js","../node_modules/next/dist/shared/lib/router/utils/parse-url.js","../node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.js","../node_modules/next/dist/shared/lib/router/utils/querystring.js","../node_modules/next/dist/shared/lib/router/utils/get-next-pathname-info.js","../node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js","../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../node_modules/next/dist/shared/lib/router/utils/route-regex.js","../node_modules/next/dist/server/future/helpers/module-loader/route-module-loader.js","../node_modules/next/dist/server/web/spec-extension/adapters/next-request.js","../node_modules/next/dist/server/future/route-modules/app-page/module.render.js","../node_modules/next/dist/server/future/route-modules/pages/module.render.js","../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../node_modules/next/dist/client/components/request-async-storage.external.js","../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../node_modules/next/dist/server/api-utils/index.js","../node_modules/next/dist/server/response-cache/index.js","../node_modules/next/dist/server/lib/incremental-cache/index.js","../node_modules/next/dist/server/web/sandbox/index.js","../node_modules/next/dist/lib/interop-default.js","../node_modules/next/dist/lib/wait.js","../node_modules/next/dist/lib/detached-promise.js","../node_modules/@next/env/package.json","../node_modules/next/dist/server/lib/revalidate.js","../node_modules/next/dist/server/lib/etag.js","../node_modules/next/dist/shared/lib/is-plain-object.js","../node_modules/next/dist/shared/lib/image-blur-svg.js","../node_modules/next/dist/shared/lib/match-remote-pattern.js","../node_modules/next/dist/shared/lib/i18n/normalize-locale-path.js","../node_modules/next/dist/server/lib/squoosh/main.js","../node_modules/next/dist/server/base-http/index.js","../node_modules/next/dist/shared/lib/modern-browserslist-target.js","../node_modules/next/dist/lib/redirect-status.js","../node_modules/next/dist/lib/is-edge-runtime.js","../node_modules/next/dist/server/utils.js","../node_modules/next/dist/server/render-result.js","../node_modules/next/dist/server/server-utils.js","../node_modules/next/dist/server/internal-utils.js","../node_modules/next/dist/server/send-response.js","../node_modules/next/dist/shared/lib/runtime-config.external.js","../node_modules/next/dist/server/lib/format-hostname.js","../node_modules/next/dist/shared/lib/get-hostname.js","../node_modules/next/dist/server/future/route-kind.js","../node_modules/next/dist/server/lib/match-next-data-pathname.js","../node_modules/next/dist/server/future/normalizers/locale-route-normalizer.js","../node_modules/next/dist/server/future/helpers/i18n-provider.js","../node_modules/next/dist/server/future/route-matcher-providers/pages-api-route-matcher-provider.js","../node_modules/next/dist/server/future/route-matcher-managers/default-route-matcher-manager.js","../node_modules/next/dist/server/future/route-matcher-providers/app-page-route-matcher-provider.js","../node_modules/next/dist/server/future/route-matcher-providers/pages-route-matcher-provider.js","../node_modules/next/dist/server/api-utils/node/try-get-preview-data.js","../node_modules/next/dist/server/future/route-matcher-providers/app-route-route-matcher-provider.js","../node_modules/next/dist/shared/lib/i18n/get-locale-redirect.js","../node_modules/next/dist/client/components/async-local-storage.js","../node_modules/@next/env/dist/index.js","../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../node_modules/next/dist/shared/lib/page-path/normalize-path-sep.js","../node_modules/next/dist/shared/lib/segment.js","../node_modules/next/dist/shared/lib/escape-regexp.js","../node_modules/next/dist/shared/lib/router/utils/escape-path-delimiters.js","../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../node_modules/next/dist/shared/lib/router/utils/remove-path-prefix.js","../node_modules/next/dist/server/future/normalizers/request/rsc.js","../node_modules/next/dist/shared/lib/router/utils/get-route-from-asset-path.js","../node_modules/next/dist/server/future/normalizers/request/postponed.js","../node_modules/next/dist/server/future/route-modules/helpers/response-handlers.js","../node_modules/next/dist/lib/batcher.js","../node_modules/next/dist/lib/scheduler.js","../node_modules/next/dist/server/future/helpers/interception-routes.js","../node_modules/next/dist/server/web/spec-extension/request.js","../node_modules/next/dist/server/future/route-matcher-providers/helpers/manifest-loaders/server-manifest-loader.js","../node_modules/next/dist/server/response-cache/types.js","../node_modules/next/dist/shared/lib/router/utils/parse-relative-url.js","../node_modules/next/dist/shared/lib/router/utils/path-has-prefix.js","../node_modules/next/dist/shared/lib/router/utils/prepare-destination.js","../node_modules/next/dist/server/future/helpers/module-loader/node-module-loader.js","../node_modules/next/dist/server/future/route-modules/app-page/module.compiled.js","../node_modules/next/dist/server/future/route-modules/pages/module.compiled.js","../node_modules/next/dist/server/web/spec-extension/adapters/headers.js","../node_modules/next/dist/server/lib/incremental-cache/fetch-cache.js","../node_modules/next/dist/shared/lib/isomorphic/path.js","../node_modules/next/dist/server/lib/incremental-cache/file-system-cache.js","../node_modules/next/dist/server/lib/server-ipc/request-utils.js","../node_modules/next/dist/server/web/sandbox/context.js","../node_modules/next/dist/server/web/sandbox/sandbox.js","../node_modules/next/dist/shared/lib/router/utils/index.js","../node_modules/react-dom/package.json","../node_modules/next/dist/compiled/fresh/package.json","../node_modules/next/dist/compiled/ws/package.json","../node_modules/next/dist/compiled/lru-cache/package.json","../node_modules/next/dist/compiled/image-size/package.json","../node_modules/next/dist/compiled/is-animated/package.json","../node_modules/next/dist/compiled/content-disposition/package.json","../node_modules/next/dist/compiled/get-orientation/package.json","../node_modules/next/dist/compiled/send/package.json","../node_modules/next/dist/server/stream-utils/node-web-streams-helper.js","../node_modules/next/dist/server/api-utils/get-cookie-parser.js","../node_modules/next/dist/compiled/@hapi/accept/package.json","../node_modules/@swc/helpers/_/_interop_require_default/package.json","../node_modules/next/dist/server/lib/is-ipv6.js","../node_modules/next/dist/lib/is-api-route.js","../node_modules/next/dist/server/crypto-utils.js","../node_modules/next/dist/lib/is-app-page-route.js","../node_modules/next/dist/server/accept-header.js","../node_modules/next/dist/lib/is-app-route-route.js","../node_modules/next/dist/shared/lib/router/utils/path-match.js","../node_modules/react-dom/server.browser.js","../node_modules/next/dist/server/web/spec-extension/cookies.js","../node_modules/next/dist/server/future/route-matchers/locale-route-matcher.js","../node_modules/next/dist/server/future/route-matchers/pages-api-route-matcher.js","../node_modules/next/dist/server/future/route-matchers/app-page-route-matcher.js","../node_modules/next/dist/server/future/route-matcher-providers/manifest-route-matcher-provider.js","../node_modules/next/dist/shared/lib/i18n/detect-domain-locale.js","../node_modules/next/dist/server/future/route-matchers/app-route-route-matcher.js","../node_modules/next/dist/server/future/route-matchers/pages-route-matcher.js","../node_modules/next/dist/compiled/fresh/index.js","../node_modules/next/dist/compiled/ws/index.js","../node_modules/next/dist/compiled/lru-cache/index.js","../node_modules/next/dist/compiled/image-size/index.js","../node_modules/next/dist/compiled/is-animated/index.js","../node_modules/next/dist/server/web/next-url.js","../node_modules/next/dist/compiled/content-disposition/index.js","../node_modules/next/dist/compiled/get-orientation/index.js","../node_modules/next/dist/compiled/send/index.js","../node_modules/next/dist/server/web/error.js","../node_modules/next/dist/compiled/@mswjs/interceptors/ClientRequest/package.json","../node_modules/next/dist/shared/lib/router/utils/format-url.js","../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../node_modules/next/dist/compiled/jsonwebtoken/package.json","../node_modules/next/dist/compiled/node-html-parser/package.json","../node_modules/@swc/helpers/package.json","../node_modules/next/dist/compiled/cookie/package.json","../node_modules/next/dist/shared/lib/router/utils/is-dynamic.js","../node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.js","../node_modules/next/dist/compiled/@hapi/accept/index.js","../node_modules/next/dist/lib/pick.js","../node_modules/next/dist/shared/lib/router/utils/parse-path.js","../node_modules/next/dist/server/web/sandbox/fetch-inline-assets.js","../node_modules/next/dist/server/web/sandbox/resource-managers.js","../node_modules/next/dist/server/web/spec-extension/adapters/reflect.js","../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../node_modules/next/dist/compiled/jsonwebtoken/index.js","../node_modules/next/dist/compiled/node-html-parser/index.js","../node_modules/next/dist/compiled/cookie/index.js","../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../node_modules/next/dist/compiled/@mswjs/interceptors/ClientRequest/index.js","../node_modules/react-dom/cjs/react-dom-server.browser.production.min.js","../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.min.js","../node_modules/next/dist/shared/lib/router/utils/sorted-routes.js","../node_modules/next/dist/server/future/normalizers/built/app/index.js","../node_modules/next/dist/server/future/normalizers/built/pages/index.js","../node_modules/next/dist/server/stream-utils/encode-decode.js","../node_modules/next/dist/compiled/micromatch/package.json","../node_modules/next/dist/server/future/route-matchers/route-matcher.js","../node_modules/next/dist/compiled/micromatch/index.js","../node_modules/next/dist/server/future/route-matcher-providers/helpers/cached-route-matcher-provider.js","../node_modules/next/dist/compiled/next-server/app-page-experimental.runtime.prod.js","../node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js","../node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js","../node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js","../node_modules/next/dist/shared/lib/router/utils/format-next-pathname-info.js","../node_modules/next/dist/server/future/route-modules/app-page/module.js","../node_modules/next/dist/server/future/route-modules/pages/module.js","../node_modules/next/dist/compiled/path-browserify/package.json","../node_modules/next/dist/compiled/edge-runtime/package.json","../node_modules/next/dist/compiled/path-to-regexp/index.js","../node_modules/next/dist/compiled/path-browserify/index.js","../node_modules/next/dist/compiled/edge-runtime/index.js","../node_modules/next/dist/server/future/normalizers/built/app/app-pathname-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/app/app-bundle-path-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/app/app-filename-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/app/app-page-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/pages/pages-bundle-path-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/pages/pages-pathname-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/pages/pages-page-normalizer.js","../node_modules/next/dist/server/future/normalizers/built/pages/pages-filename-normalizer.js","../node_modules/next/dist/compiled/debug/package.json","../node_modules/next/dist/compiled/@edge-runtime/cookies/package.json","../node_modules/@swc/helpers/_/_interop_require_wildcard/package.json","../node_modules/next/dist/lib/semver-noop.js","../node_modules/next/dist/server/render.js","../node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js","../node_modules/next/dist/shared/lib/router/utils/add-locale.js","../node_modules/next/dist/shared/lib/router/utils/add-path-suffix.js","../node_modules/next/dist/server/app-render/app-render.js","../node_modules/next/dist/compiled/debug/index.js","../node_modules/next/dist/server/future/route-modules/route-module.js","../node_modules/next/dist/compiled/@edge-runtime/cookies/index.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/entrypoints.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/entrypoints.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/entrypoints.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/entrypoints.js","../node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs","../node_modules/next/dist/server/future/normalizers/wrap-normalizer-fn.js","../node_modules/next/dist/server/future/normalizers/normalizers.js","../node_modules/next/dist/server/future/normalizers/underscore-normalizer.js","../node_modules/next/dist/server/future/normalizers/prefixing-normalizer.js","../node_modules/next/dist/server/future/normalizers/absolute-filename-normalizer.js","../node_modules/next/dist/lib/is-serializable-props.js","../node_modules/next/dist/server/post-process.js","../node_modules/next/dist/shared/lib/amp-mode.js","../node_modules/next/dist/shared/lib/amp-context.shared-runtime.js","../node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.js","../node_modules/next/dist/shared/lib/head.js","../node_modules/next/dist/shared/lib/loadable.shared-runtime.js","../node_modules/next/dist/shared/lib/router-context.shared-runtime.js","../node_modules/next/dist/shared/lib/loadable-context.shared-runtime.js","../node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js","../node_modules/next/dist/shared/lib/html-context.shared-runtime.js","../node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.js","../node_modules/next/dist/shared/lib/app-router-context.shared-runtime.js","../node_modules/next/dist/shared/lib/router/adapters.js","../node_modules/next/dist/client/components/match-segments.js","../node_modules/next/dist/server/app-render/create-server-components-renderer.js","../node_modules/next/dist/client/components/get-redirect-status-code-from-error.js","../node_modules/next/dist/client/components/not-found.js","../node_modules/next/dist/server/lib/patch-fetch.js","../node_modules/next/dist/client/components/redirect.js","../node_modules/next/dist/server/async-storage/static-generation-async-storage-wrapper.js","../node_modules/next/dist/server/app-render/get-segment-param.js","../node_modules/next/dist/server/async-storage/request-async-storage-wrapper.js","../node_modules/next/dist/lib/metadata/metadata.js","../node_modules/next/dist/server/app-render/create-error-handler.js","../node_modules/next/dist/server/app-render/get-script-nonce-from-header.js","../node_modules/next/dist/server/app-render/flight-render-result.js","../node_modules/next/dist/server/app-render/get-short-dynamic-param-type.js","../node_modules/next/dist/server/app-render/action-handler.js","../node_modules/next/dist/server/app-render/parse-and-validate-flight-router-state.js","../node_modules/next/dist/server/app-render/server-inserted-html.js","../node_modules/next/dist/server/app-render/validate-url.js","../node_modules/next/dist/server/app-render/walk-tree-with-flight-router-state.js","../node_modules/next/dist/server/app-render/create-flight-router-state-from-loader-tree.js","../node_modules/next/dist/server/app-render/required-scripts.js","../node_modules/next/dist/server/app-render/action-encryption-utils.js","../node_modules/next/dist/server/app-render/make-get-server-inserted-html.js","../node_modules/next/dist/server/app-render/get-asset-query-string.js","../node_modules/next/dist/server/app-render/create-component-tree.js","../node_modules/next/dist/client/components/dev-root-not-found-boundary.js","../node_modules/next/dist/shared/lib/lazy-dynamic/no-ssr-error.js","../node_modules/next/dist/server/app-render/static/static-renderer.js","../node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.js","../node_modules/next/dist/lib/non-nullable.js","../node_modules/next/dist/server/optimize-amp.js","../node_modules/next/dist/shared/lib/page-path/absolute-path-to-page.js","../node_modules/next/dist/shared/lib/side-effect.js","../node_modules/next/dist/shared/lib/image-config.js","../node_modules/next/dist/server/htmlescape.js","../node_modules/next/dist/lib/client-reference.js","../node_modules/next/dist/compiled/strip-ansi/package.json","../node_modules/next/dist/compiled/react-is/package.json","../node_modules/next/dist/shared/lib/utils/warn-once.js","../node_modules/next/dist/client/components/maybe-postpone.js","../node_modules/next/dist/client/components/hooks-server-context.js","../node_modules/next/dist/server/app-render/use-flight-response.js","../node_modules/next/dist/lib/metadata/resolve-metadata.js","../node_modules/next/dist/server/dev/log-app-dir-error.js","../node_modules/next/dist/lib/metadata/default-metadata.js","../node_modules/next/dist/server/async-storage/draft-mode-provider.js","../node_modules/next/dist/server/app-render/react-server.node.js","../node_modules/next/dist/server/app-render/types.js","../node_modules/next/dist/server/app-render/get-css-inlined-link-tags.js","../node_modules/next/dist/server/app-render/get-preloadable-fonts.js","../node_modules/next/dist/server/app-render/parse-loader-tree.js","../node_modules/next/dist/server/app-render/get-layer-assets.js","../node_modules/next/dist/server/app-render/has-loading-component-in-tree.js","../node_modules/next/dist/client/components/not-found-boundary.js","../node_modules/next/dist/server/app-render/interop-default.js","../node_modules/next/dist/server/lib/app-dir-module.js","../node_modules/next/dist/server/app-render/preload-component.js","../node_modules/next/dist/server/app-render/create-component-styles-and-scripts.js","../node_modules/next/dist/lib/metadata/generate/alternate.js","../node_modules/next/dist/lib/metadata/generate/basic.js","../node_modules/next/dist/lib/metadata/generate/meta.js","../node_modules/next/dist/lib/metadata/generate/icons.js","../node_modules/next/dist/lib/metadata/generate/opengraph.js","../node_modules/next/dist/compiled/nanoid/package.json","../node_modules/next/dist/shared/lib/router/utils/as-path-to-search-params.js","../node_modules/next/dist/compiled/strip-ansi/index.js","../node_modules/next/dist/compiled/react-is/index.js","../node_modules/next/dist/compiled/nanoid/index.cjs","../node_modules/react/jsx-dev-runtime.js","../node_modules/react/jsx-runtime.js","../node_modules/next/dist/lib/metadata/get-metadata-route.js","../node_modules/busboy/package.json","../node_modules/next/dist/shared/lib/page-path/remove-page-path-tail.js","../node_modules/next/dist/lib/metadata/clone-metadata.js","../node_modules/next/dist/client/components/navigation.js","../node_modules/busboy/lib/index.js","../node_modules/next/dist/lib/metadata/generate/utils.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-opengraph.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-title.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-icons.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-basics.js","../node_modules/next/dist/compiled/string-hash/package.json","../node_modules/next/dist/compiled/superstruct/package.json","../node_modules/next/dist/lib/metadata/constants.js","../node_modules/next/dist/compiled/bytes/package.json","../node_modules/react/cjs/react-jsx-dev-runtime.production.min.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react-dom/index.js","../node_modules/next/dist/compiled/react-is/cjs/react-is.production.min.js","../node_modules/next/dist/compiled/react-is/cjs/react-is.development.js","../node_modules/next/dist/compiled/string-hash/index.js","../node_modules/next/dist/compiled/superstruct/index.cjs","../node_modules/next/dist/compiled/bytes/index.js","../node_modules/next/dist/lib/metadata/is-metadata-route.js","../node_modules/next/dist/shared/lib/hash.js","../node_modules/busboy/lib/utils.js","../node_modules/busboy/lib/types/urlencoded.js","../node_modules/busboy/lib/types/multipart.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/next/dist/client/components/client-hook-in-server-component-error.js","../node_modules/next/dist/client/components/bailout-to-client-rendering.js","../node_modules/next/dist/client/components/router-reducer/reducers/get-segment-value.js","../node_modules/next/dist/lib/metadata/resolvers/resolve-url.js","../node_modules/scheduler/package.json","../node_modules/streamsearch/package.json","../node_modules/scheduler/index.js","../node_modules/streamsearch/lib/sbmh.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/cjs/scheduler.development.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/amp-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/head-manager-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/hooks-client-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/html-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/image-config-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/loadable-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/loadable.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/router-context.js","../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/server-inserted-html.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/amp-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/app-router-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/head-manager-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/hooks-client-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/html-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/image-config-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/loadable-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/loadable.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/router-context.js","../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/server-inserted-html.js"]}
\ No newline at end of file
diff --git a/.next/prerender-manifest.js b/.next/prerender-manifest.js
index 667acd6..e75d976 100644
--- a/.next/prerender-manifest.js
+++ b/.next/prerender-manifest.js
@@ -1 +1 @@
-self.__PRERENDER_MANIFEST={"version":4,"routes":{"/everyone-votes/terms":{"initialRevalidateSeconds":false,"srcRoute":"/everyone-votes/terms","dataRoute":"/everyone-votes/terms.rsc"},"/wiston":{"initialRevalidateSeconds":false,"srcRoute":"/wiston","dataRoute":"/wiston.rsc"},"/":{"initialRevalidateSeconds":false,"srcRoute":"/","dataRoute":"/index.rsc"},"/favicon.ico":{"initialHeaders":{"cache-control":"public, max-age=0, must-revalidate","content-type":"image/x-icon","x-next-cache-tags":"/favicon.ico/route"},"initialRevalidateSeconds":false,"srcRoute":"/favicon.ico","dataRoute":null},"/everyone-votes/privacy":{"initialRevalidateSeconds":false,"srcRoute":"/everyone-votes/privacy","dataRoute":"/everyone-votes/privacy.rsc"},"/space":{"initialRevalidateSeconds":false,"srcRoute":"/space","dataRoute":"/space.rsc"}},"dynamicRoutes":{},"notFoundRoutes":[],"preview":{"previewModeId":"f535f6d20b30f970858e245d10a15b60","previewModeSigningKey":"f446dbbf3baeceb78d5e2462b883019e0919e4c2c24b58ac3e046f3155c62382","previewModeEncryptionKey":"205f3708ebefd9d3ecffd81ac6d85216affc98a5490c5e20d03447d2181ab750"}}
\ No newline at end of file
+self.__PRERENDER_MANIFEST="{\"version\":4,\"routes\":{\"/favicon.ico\":{\"initialHeaders\":{\"cache-control\":\"public, max-age=0, must-revalidate\",\"content-type\":\"image/x-icon\",\"x-next-cache-tags\":\"_N_T_/layout,_N_T_/favicon.ico/layout,_N_T_/favicon.ico/route,_N_T_/favicon.ico\"},\"experimentalBypassFor\":[{\"type\":\"header\",\"key\":\"Next-Action\"},{\"type\":\"header\",\"key\":\"content-type\",\"value\":\"multipart/form-data\"}],\"initialRevalidateSeconds\":false,\"srcRoute\":\"/favicon.ico\",\"dataRoute\":null},\"/everyone-votes/privacy\":{\"experimentalBypassFor\":[{\"type\":\"header\",\"key\":\"Next-Action\"},{\"type\":\"header\",\"key\":\"content-type\",\"value\":\"multipart/form-data\"}],\"initialRevalidateSeconds\":false,\"srcRoute\":\"/everyone-votes/privacy\",\"dataRoute\":\"/everyone-votes/privacy.rsc\"},\"/wiston\":{\"experimentalBypassFor\":[{\"type\":\"header\",\"key\":\"Next-Action\"},{\"type\":\"header\",\"key\":\"content-type\",\"value\":\"multipart/form-data\"}],\"initialRevalidateSeconds\":false,\"srcRoute\":\"/wiston\",\"dataRoute\":\"/wiston.rsc\"},\"/everyone-votes/terms\":{\"experimentalBypassFor\":[{\"type\":\"header\",\"key\":\"Next-Action\"},{\"type\":\"header\",\"key\":\"content-type\",\"value\":\"multipart/form-data\"}],\"initialRevalidateSeconds\":false,\"srcRoute\":\"/everyone-votes/terms\",\"dataRoute\":\"/everyone-votes/terms.rsc\"},\"/\":{\"experimentalBypassFor\":[{\"type\":\"header\",\"key\":\"Next-Action\"},{\"type\":\"header\",\"key\":\"content-type\",\"value\":\"multipart/form-data\"}],\"initialRevalidateSeconds\":false,\"srcRoute\":\"/\",\"dataRoute\":\"/index.rsc\"},\"/space\":{\"experimentalBypassFor\":[{\"type\":\"header\",\"key\":\"Next-Action\"},{\"type\":\"header\",\"key\":\"content-type\",\"value\":\"multipart/form-data\"}],\"initialRevalidateSeconds\":false,\"srcRoute\":\"/space\",\"dataRoute\":\"/space.rsc\"}},\"dynamicRoutes\":{},\"notFoundRoutes\":[],\"preview\":{\"previewModeId\":\"2ee7fa1dc80c077ce79225eb3cdc3971\",\"previewModeSigningKey\":\"bb0a0599827d52ceae33d3a5056574c66cefc41260f72eb521a7388635317a07\",\"previewModeEncryptionKey\":\"aa1eb598971c55ffca35521acca7df54e69c0ec6c1e86d4b5cded46c9e2dc6a5\"}}"
\ No newline at end of file
diff --git a/.next/prerender-manifest.json b/.next/prerender-manifest.json
index 4d3bffe..9e34226 100644
--- a/.next/prerender-manifest.json
+++ b/.next/prerender-manifest.json
@@ -1 +1 @@
-{"version":4,"routes":{"/everyone-votes/terms":{"initialRevalidateSeconds":false,"srcRoute":"/everyone-votes/terms","dataRoute":"/everyone-votes/terms.rsc"},"/wiston":{"initialRevalidateSeconds":false,"srcRoute":"/wiston","dataRoute":"/wiston.rsc"},"/":{"initialRevalidateSeconds":false,"srcRoute":"/","dataRoute":"/index.rsc"},"/favicon.ico":{"initialHeaders":{"cache-control":"public, max-age=0, must-revalidate","content-type":"image/x-icon","x-next-cache-tags":"/favicon.ico/route"},"initialRevalidateSeconds":false,"srcRoute":"/favicon.ico","dataRoute":null},"/everyone-votes/privacy":{"initialRevalidateSeconds":false,"srcRoute":"/everyone-votes/privacy","dataRoute":"/everyone-votes/privacy.rsc"},"/space":{"initialRevalidateSeconds":false,"srcRoute":"/space","dataRoute":"/space.rsc"}},"dynamicRoutes":{},"notFoundRoutes":[],"preview":{"previewModeId":"f535f6d20b30f970858e245d10a15b60","previewModeSigningKey":"f446dbbf3baeceb78d5e2462b883019e0919e4c2c24b58ac3e046f3155c62382","previewModeEncryptionKey":"205f3708ebefd9d3ecffd81ac6d85216affc98a5490c5e20d03447d2181ab750"}}
\ No newline at end of file
+{"version":4,"routes":{"/favicon.ico":{"initialHeaders":{"cache-control":"public, max-age=0, must-revalidate","content-type":"image/x-icon","x-next-cache-tags":"_N_T_/layout,_N_T_/favicon.ico/layout,_N_T_/favicon.ico/route,_N_T_/favicon.ico"},"experimentalBypassFor":[{"type":"header","key":"Next-Action"},{"type":"header","key":"content-type","value":"multipart/form-data"}],"initialRevalidateSeconds":false,"srcRoute":"/favicon.ico","dataRoute":null},"/everyone-votes/privacy":{"experimentalBypassFor":[{"type":"header","key":"Next-Action"},{"type":"header","key":"content-type","value":"multipart/form-data"}],"initialRevalidateSeconds":false,"srcRoute":"/everyone-votes/privacy","dataRoute":"/everyone-votes/privacy.rsc"},"/wiston":{"experimentalBypassFor":[{"type":"header","key":"Next-Action"},{"type":"header","key":"content-type","value":"multipart/form-data"}],"initialRevalidateSeconds":false,"srcRoute":"/wiston","dataRoute":"/wiston.rsc"},"/everyone-votes/terms":{"experimentalBypassFor":[{"type":"header","key":"Next-Action"},{"type":"header","key":"content-type","value":"multipart/form-data"}],"initialRevalidateSeconds":false,"srcRoute":"/everyone-votes/terms","dataRoute":"/everyone-votes/terms.rsc"},"/":{"experimentalBypassFor":[{"type":"header","key":"Next-Action"},{"type":"header","key":"content-type","value":"multipart/form-data"}],"initialRevalidateSeconds":false,"srcRoute":"/","dataRoute":"/index.rsc"},"/space":{"experimentalBypassFor":[{"type":"header","key":"Next-Action"},{"type":"header","key":"content-type","value":"multipart/form-data"}],"initialRevalidateSeconds":false,"srcRoute":"/space","dataRoute":"/space.rsc"}},"dynamicRoutes":{},"notFoundRoutes":[],"preview":{"previewModeId":"2ee7fa1dc80c077ce79225eb3cdc3971","previewModeSigningKey":"bb0a0599827d52ceae33d3a5056574c66cefc41260f72eb521a7388635317a07","previewModeEncryptionKey":"aa1eb598971c55ffca35521acca7df54e69c0ec6c1e86d4b5cded46c9e2dc6a5"}}
\ No newline at end of file
diff --git a/.next/required-server-files.json b/.next/required-server-files.json
index 883c60b..c35d7d7 100644
--- a/.next/required-server-files.json
+++ b/.next/required-server-files.json
@@ -1 +1 @@
-{"version":1,"config":{"env":{},"webpack":null,"eslint":{"ignoreDuringBuilds":false},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"distDir":".next","cleanDistDir":true,"assetPrefix":"","configOrigin":"next.config.js","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"analyticsId":"","images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"inline","remotePatterns":[],"unoptimized":false},"devIndicators":{"buildActivity":true,"buildActivityPosition":"bottom-right"},"onDemandEntries":{"maxInactiveAge":15000,"pagesBufferLength":2},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"optimizeFonts":true,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactStrictMode":false,"httpAgentOptions":{"keepAlive":true},"outputFileTracing":true,"staticPageGenerationTimeout":60,"swcMinify":true,"experimental":{"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","middlewarePrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"legacyBrowsers":false,"newNextLinkBehavior":true,"cpus":19,"memoryBasedWorkersCount":false,"sharedPool":true,"isrFlushToDisk":true,"workerThreads":false,"pageEnv":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"swcFileReading":true,"craCompat":false,"esmExternals":true,"appDir":true,"isrMemoryCacheSize":52428800,"fullySpecified":false,"outputFileTracingRoot":"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev","swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"adjustFontFallbacks":false,"adjustFontFallbacksWithSizeAdjust":false,"typedRoutes":false,"instrumentationHook":false,"trustHostHeader":false},"configFileName":"next.config.js","_originalRedirects":[{"source":"/:slug(yt|youtube)","destination":"https://www.youtube.com/Sukadia","permanent":false},{"source":"/:slug(vod|vods)","destination":"https://www.youtube.com/channel/UC8S8l4sY8YsVcngSBTVyoSA","permanent":false},{"source":"/:slug(dev|update|updates)","destination":"https://www.youtube.com/channel/UCbzmy3xP2E0rLhCPFktbwAQ","permanent":false},{"source":"/:slug(ttv|twitch)","destination":"https://www.twitch.tv/Sukadia","permanent":false},{"source":"/:slug(hub|discord)","destination":"https://discord.gg/ReSCjYpXnK","permanent":false},{"source":"/:slug(ev|everyonevotes|everyone-votes)","destination":"https://top.gg/bot/805922495705251891","permanent":false},{"source":"/:slug(kofi|ko-fi)","destination":"https://ko-fi.com/sukadia/tiers","permanent":false},{"source":"/dark","destination":"https://marketplace.visualstudio.com/items?itemName=Sukadia.sukadia-dev-dark","permanent":false},{"source":"/banner","destination":"https://www.youtube.com/watch?v=tvq5aBROV_s","permanent":false},{"source":"/nsfw","destination":"https://www.youtube.com/watch?v=dQw4w9WgXcQ","permanent":false}]},"appDir":"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev","relativeAppDir":"","files":[".next\\routes-manifest.json",".next\\server\\pages-manifest.json",".next\\build-manifest.json",".next\\prerender-manifest.json",".next\\server\\middleware-manifest.json",".next\\server\\middleware-build-manifest.js",".next\\server\\middleware-react-loadable-manifest.js",".next\\server\\app-paths-manifest.json",".next\\app-build-manifest.json",".next\\server\\client-reference-manifest.js",".next\\server\\client-reference-manifest.json",".next\\server\\flight-server-css-manifest.js",".next\\server\\flight-server-css-manifest.json",".next\\server\\server-reference-manifest.js",".next\\server\\server-reference-manifest.json",".next\\react-loadable-manifest.json",".next\\server\\font-manifest.json",".next\\BUILD_ID",".next\\server\\app-paths-manifest.json",".next\\server\\next-font-manifest.js",".next\\server\\next-font-manifest.json"],"ignore":["node_modules\\next\\dist\\compiled\\@ampproject\\toolbox-optimizer\\**\\*"]}
\ No newline at end of file
+{"version":1,"config":{"env":{},"webpack":null,"eslint":{"ignoreDuringBuilds":false},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"distDir":".next","cleanDistDir":true,"assetPrefix":"","configOrigin":"next.config.js","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"analyticsId":"","images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"inline","remotePatterns":[],"unoptimized":false},"devIndicators":{"buildActivity":true,"buildActivityPosition":"bottom-right"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"optimizeFonts":true,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactProductionProfiling":false,"reactStrictMode":null,"httpAgentOptions":{"keepAlive":true},"outputFileTracing":true,"staticPageGenerationTimeout":60,"swcMinify":true,"modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"date-fns":{"transform":"date-fns/{{member}}"},"lodash":{"transform":"lodash/{{member}}"},"lodash-es":{"transform":"lodash-es/{{member}}"},"ramda":{"transform":"ramda/es/{{member}}"},"react-bootstrap":{"transform":{"useAccordionButton":"modularize-import-loader?name=useAccordionButton&from=named&as=default!react-bootstrap/AccordionButton","*":"react-bootstrap/{{member}}"}},"antd":{"transform":"antd/lib/{{kebabCase member}}"},"ahooks":{"transform":{"createUpdateEffect":"modularize-import-loader?name=createUpdateEffect&from=named&as=default!ahooks/es/createUpdateEffect","*":"ahooks/es/{{member}}"}},"@ant-design/icons":{"transform":{"IconProvider":"modularize-import-loader?name=IconProvider&from=named&as=default!@ant-design/icons","createFromIconfontCN":"@ant-design/icons/es/components/IconFont","getTwoToneColor":"modularize-import-loader?name=getTwoToneColor&from=named&as=default!@ant-design/icons/es/components/twoTonePrimaryColor","setTwoToneColor":"modularize-import-loader?name=setTwoToneColor&from=named&as=default!@ant-design/icons/es/components/twoTonePrimaryColor","*":"@ant-design/icons/lib/icons/{{member}}"}},"next/server":{"transform":"next/dist/server/web/exports/{{ kebabCase member }}"}},"experimental":{"serverMinification":true,"serverSourceMaps":false,"caseSensitiveRoutes":false,"useDeploymentId":false,"useDeploymentIdServerActions":false,"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","middlewarePrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"cpus":15,"memoryBasedWorkersCount":false,"isrFlushToDisk":true,"workerThreads":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"craCompat":false,"esmExternals":true,"isrMemoryCacheSize":52428800,"fullySpecified":false,"outputFileTracingRoot":"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev","swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"adjustFontFallbacks":false,"adjustFontFallbacksWithSizeAdjust":false,"typedRoutes":false,"instrumentationHook":false,"bundlePagesExternals":false,"optimizePackageImports":["lucide-react","@headlessui/react","@headlessui-float/react","@heroicons/react/20/solid","@heroicons/react/24/solid","@heroicons/react/24/outline","@visx/visx","@tremor/react","rxjs","@mui/material","@mui/icons-material","recharts","react-use","@material-ui/core","@material-ui/icons","@tabler/icons-react","mui-core","react-icons/ai","react-icons/bi","react-icons/bs","react-icons/cg","react-icons/ci","react-icons/di","react-icons/fa","react-icons/fa6","react-icons/fc","react-icons/fi","react-icons/gi","react-icons/go","react-icons/gr","react-icons/hi","react-icons/hi2","react-icons/im","react-icons/io","react-icons/io5","react-icons/lia","react-icons/lib","react-icons/lu","react-icons/md","react-icons/pi","react-icons/ri","react-icons/rx","react-icons/si","react-icons/sl","react-icons/tb","react-icons/tfi","react-icons/ti","react-icons/vsc","react-icons/wi"],"trustHostHeader":false,"isExperimentalCompile":false},"configFileName":"next.config.js","_originalRedirects":[{"source":"/:slug(yt|youtube)","destination":"https://www.youtube.com/Sukadia","permanent":false},{"source":"/:slug(vod|vods)","destination":"https://www.youtube.com/channel/UC8S8l4sY8YsVcngSBTVyoSA","permanent":false},{"source":"/:slug(dev|update|updates)","destination":"https://www.youtube.com/channel/UCbzmy3xP2E0rLhCPFktbwAQ","permanent":false},{"source":"/:slug(ttv|twitch)","destination":"https://www.twitch.tv/Sukadia","permanent":false},{"source":"/:slug(hub|discord)","destination":"https://discord.gg/ReSCjYpXnK","permanent":false},{"source":"/:slug(ev|everyonevotes|everyone-votes)","destination":"https://top.gg/bot/805922495705251891","permanent":false},{"source":"/:slug(kofi|ko-fi)","destination":"https://ko-fi.com/sukadia/tiers","permanent":false},{"source":"/poster","destination":"https://ko-fi.com/s/3cf296742e","permanent":false},{"source":"/dark","destination":"https://marketplace.visualstudio.com/items?itemName=Sukadia.sukadia-dev-dark","permanent":false},{"source":"/banner","destination":"https://www.youtube.com/watch?v=tvq5aBROV_s","permanent":false},{"source":"/nsfw","destination":"https://www.youtube.com/watch?v=dQw4w9WgXcQ","permanent":false}]},"appDir":"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev","relativeAppDir":"","files":[".next\\routes-manifest.json",".next\\server\\pages-manifest.json",".next\\build-manifest.json",".next\\prerender-manifest.json",".next\\prerender-manifest.js",".next\\server\\middleware-manifest.json",".next\\server\\middleware-build-manifest.js",".next\\server\\middleware-react-loadable-manifest.js",".next\\server\\app-paths-manifest.json",".next\\app-path-routes-manifest.json",".next\\app-build-manifest.json",".next\\server\\server-reference-manifest.js",".next\\server\\server-reference-manifest.json",".next\\react-loadable-manifest.json",".next\\server\\font-manifest.json",".next\\BUILD_ID",".next\\server\\next-font-manifest.js",".next\\server\\next-font-manifest.json"],"ignore":["node_modules\\next\\dist\\compiled\\@ampproject\\toolbox-optimizer\\**\\*"]}
\ No newline at end of file
diff --git a/.next/routes-manifest.json b/.next/routes-manifest.json
index 58b125c..d0ad8ac 100644
--- a/.next/routes-manifest.json
+++ b/.next/routes-manifest.json
@@ -1 +1 @@
-{"version":3,"pages404":true,"basePath":"","redirects":[{"source":"/:path+/","destination":"/:path+","internal":true,"statusCode":308,"regex":"^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"},{"source":"/:slug(yt|youtube)","destination":"https://www.youtube.com/Sukadia","statusCode":307,"regex":"^(?!/_next)(?:/(yt|youtube))(?:/)?$"},{"source":"/:slug(vod|vods)","destination":"https://www.youtube.com/channel/UC8S8l4sY8YsVcngSBTVyoSA","statusCode":307,"regex":"^(?!/_next)(?:/(vod|vods))(?:/)?$"},{"source":"/:slug(dev|update|updates)","destination":"https://www.youtube.com/channel/UCbzmy3xP2E0rLhCPFktbwAQ","statusCode":307,"regex":"^(?!/_next)(?:/(dev|update|updates))(?:/)?$"},{"source":"/:slug(ttv|twitch)","destination":"https://www.twitch.tv/Sukadia","statusCode":307,"regex":"^(?!/_next)(?:/(ttv|twitch))(?:/)?$"},{"source":"/:slug(hub|discord)","destination":"https://discord.gg/ReSCjYpXnK","statusCode":307,"regex":"^(?!/_next)(?:/(hub|discord))(?:/)?$"},{"source":"/:slug(ev|everyonevotes|everyone-votes)","destination":"https://top.gg/bot/805922495705251891","statusCode":307,"regex":"^(?!/_next)(?:/(ev|everyonevotes|everyone-votes))(?:/)?$"},{"source":"/:slug(kofi|ko-fi)","destination":"https://ko-fi.com/sukadia/tiers","statusCode":307,"regex":"^(?!/_next)(?:/(kofi|ko-fi))(?:/)?$"},{"source":"/dark","destination":"https://marketplace.visualstudio.com/items?itemName=Sukadia.sukadia-dev-dark","statusCode":307,"regex":"^(?!/_next)/dark(?:/)?$"},{"source":"/banner","destination":"https://www.youtube.com/watch?v=tvq5aBROV_s","statusCode":307,"regex":"^(?!/_next)/banner(?:/)?$"},{"source":"/nsfw","destination":"https://www.youtube.com/watch?v=dQw4w9WgXcQ","statusCode":307,"regex":"^(?!/_next)/nsfw(?:/)?$"}],"headers":[],"dynamicRoutes":[],"staticRoutes":[{"page":"/","regex":"^/(?:/)?$","routeKeys":{},"namedRegex":"^/(?:/)?$"},{"page":"/everyone-votes/privacy","regex":"^/everyone\\-votes/privacy(?:/)?$","routeKeys":{},"namedRegex":"^/everyone\\-votes/privacy(?:/)?$"},{"page":"/everyone-votes/terms","regex":"^/everyone\\-votes/terms(?:/)?$","routeKeys":{},"namedRegex":"^/everyone\\-votes/terms(?:/)?$"},{"page":"/favicon.ico","regex":"^/favicon\\.ico(?:/)?$","routeKeys":{},"namedRegex":"^/favicon\\.ico(?:/)?$"},{"page":"/space","regex":"^/space(?:/)?$","routeKeys":{},"namedRegex":"^/space(?:/)?$"},{"page":"/wiston","regex":"^/wiston(?:/)?$","routeKeys":{},"namedRegex":"^/wiston(?:/)?$"}],"dataRoutes":[],"rsc":{"header":"RSC","varyHeader":"RSC, Next-Router-State-Tree, Next-Router-Prefetch","contentTypeHeader":"text/x-component; charset=utf-8"},"rewrites":[]}
\ No newline at end of file
+{"version":3,"pages404":true,"caseSensitive":false,"basePath":"","redirects":[{"source":"/:path+/","destination":"/:path+","internal":true,"statusCode":308,"regex":"^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"},{"source":"/:slug(yt|youtube)","destination":"https://www.youtube.com/Sukadia","statusCode":307,"regex":"^(?!/_next)(?:/(yt|youtube))(?:/)?$"},{"source":"/:slug(vod|vods)","destination":"https://www.youtube.com/channel/UC8S8l4sY8YsVcngSBTVyoSA","statusCode":307,"regex":"^(?!/_next)(?:/(vod|vods))(?:/)?$"},{"source":"/:slug(dev|update|updates)","destination":"https://www.youtube.com/channel/UCbzmy3xP2E0rLhCPFktbwAQ","statusCode":307,"regex":"^(?!/_next)(?:/(dev|update|updates))(?:/)?$"},{"source":"/:slug(ttv|twitch)","destination":"https://www.twitch.tv/Sukadia","statusCode":307,"regex":"^(?!/_next)(?:/(ttv|twitch))(?:/)?$"},{"source":"/:slug(hub|discord)","destination":"https://discord.gg/ReSCjYpXnK","statusCode":307,"regex":"^(?!/_next)(?:/(hub|discord))(?:/)?$"},{"source":"/:slug(ev|everyonevotes|everyone-votes)","destination":"https://top.gg/bot/805922495705251891","statusCode":307,"regex":"^(?!/_next)(?:/(ev|everyonevotes|everyone-votes))(?:/)?$"},{"source":"/:slug(kofi|ko-fi)","destination":"https://ko-fi.com/sukadia/tiers","statusCode":307,"regex":"^(?!/_next)(?:/(kofi|ko-fi))(?:/)?$"},{"source":"/poster","destination":"https://ko-fi.com/s/3cf296742e","statusCode":307,"regex":"^(?!/_next)/poster(?:/)?$"},{"source":"/dark","destination":"https://marketplace.visualstudio.com/items?itemName=Sukadia.sukadia-dev-dark","statusCode":307,"regex":"^(?!/_next)/dark(?:/)?$"},{"source":"/banner","destination":"https://www.youtube.com/watch?v=tvq5aBROV_s","statusCode":307,"regex":"^(?!/_next)/banner(?:/)?$"},{"source":"/nsfw","destination":"https://www.youtube.com/watch?v=dQw4w9WgXcQ","statusCode":307,"regex":"^(?!/_next)/nsfw(?:/)?$"}],"headers":[],"dynamicRoutes":[],"staticRoutes":[{"page":"/","regex":"^/(?:/)?$","routeKeys":{},"namedRegex":"^/(?:/)?$"},{"page":"/_not-found","regex":"^/_not\\-found(?:/)?$","routeKeys":{},"namedRegex":"^/_not\\-found(?:/)?$"},{"page":"/everyone-votes/privacy","regex":"^/everyone\\-votes/privacy(?:/)?$","routeKeys":{},"namedRegex":"^/everyone\\-votes/privacy(?:/)?$"},{"page":"/everyone-votes/terms","regex":"^/everyone\\-votes/terms(?:/)?$","routeKeys":{},"namedRegex":"^/everyone\\-votes/terms(?:/)?$"},{"page":"/favicon.ico","regex":"^/favicon\\.ico(?:/)?$","routeKeys":{},"namedRegex":"^/favicon\\.ico(?:/)?$"},{"page":"/space","regex":"^/space(?:/)?$","routeKeys":{},"namedRegex":"^/space(?:/)?$"},{"page":"/wiston","regex":"^/wiston(?:/)?$","routeKeys":{},"namedRegex":"^/wiston(?:/)?$"}],"dataRoutes":[],"rsc":{"header":"RSC","varyHeader":"RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Url","prefetchHeader":"Next-Router-Prefetch","contentTypeHeader":"text/x-component"},"rewrites":[]}
\ No newline at end of file
diff --git a/.next/server/app-paths-manifest.json b/.next/server/app-paths-manifest.json
index aabd92c..e1286d6 100644
--- a/.next/server/app-paths-manifest.json
+++ b/.next/server/app-paths-manifest.json
@@ -1,8 +1,9 @@
{
+ "/_not-found": "app/_not-found.js",
+ "/everyone-votes/terms/page": "app/everyone-votes/terms/page.js",
+ "/everyone-votes/privacy/page": "app/everyone-votes/privacy/page.js",
"/favicon.ico/route": "app/favicon.ico/route.js",
"/page": "app/page.js",
- "/wiston/page": "app/wiston/page.js",
"/space/page": "app/space/page.js",
- "/everyone-votes/privacy/page": "app/everyone-votes/privacy/page.js",
- "/everyone-votes/terms/page": "app/everyone-votes/terms/page.js"
+ "/wiston/page": "app/wiston/page.js"
}
\ No newline at end of file
diff --git a/.next/server/app/_not-found.html b/.next/server/app/_not-found.html
new file mode 100644
index 0000000..adf7e8f
--- /dev/null
+++ b/.next/server/app/_not-found.html
@@ -0,0 +1 @@
+
404: This page could not be found. sukadia.dev 404
This page could not be found.
\ No newline at end of file
diff --git a/.next/server/app/_not-found.js b/.next/server/app/_not-found.js
new file mode 100644
index 0000000..23a8d9c
--- /dev/null
+++ b/.next/server/app/_not-found.js
@@ -0,0 +1 @@
+"use strict";(()=>{var e={};e.id=165,e.ids=[165],e.modules={5403:e=>{e.exports=require("next/dist/client/components/request-async-storage.external")},4749:e=>{e.exports=require("next/dist/client/components/static-generation-async-storage.external")},399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},5528:e=>{e.exports=require("next/dist\\client\\components\\action-async-storage.external.js")},1877:e=>{e.exports=require("next/dist\\client\\components\\request-async-storage.external.js")},5319:e=>{e.exports=require("next/dist\\client\\components\\static-generation-async-storage.external.js")},6813:(e,t,n)=>{n.r(t),n.d(t,{GlobalError:()=>a.a,__next_app__:()=>c,originalPathname:()=>u,pages:()=>p,routeModule:()=>x,tree:()=>d});var r=n(7096),o=n(6132),s=n(7284),a=n.n(s),i=n(2564),l={};for(let e in i)0>["default","tree","pages","GlobalError","originalPathname","__next_app__","routeModule"].indexOf(e)&&(l[e]=()=>i[e]);n.d(t,l);let d=["",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(n.t.bind(n,9291,23)),"next/dist/client/components/not-found-error"]}]},{layout:[()=>Promise.resolve().then(n.bind(n,5345)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],"not-found":[()=>Promise.resolve().then(n.t.bind(n,9291,23)),"next/dist/client/components/not-found-error"]}],p=[],u="/_not-found",c={require:n,loadChunk:()=>Promise.resolve()},x=new r.AppPageRouteModule({definition:{kind:o.x.APP_PAGE,page:"/_not-found",pathname:"/_not-found",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:d}})}};var t=require("../webpack-runtime.js");t.C(e);var __webpack_exec__=e=>t(t.s=e),n=t.X(0,[862,622],()=>__webpack_exec__(6813));module.exports=n})();
\ No newline at end of file
diff --git a/.next/server/app/_not-found.js.nft.json b/.next/server/app/_not-found.js.nft.json
new file mode 100644
index 0000000..3eecb82
--- /dev/null
+++ b/.next/server/app/_not-found.js.nft.json
@@ -0,0 +1 @@
+{"version":1,"files":["../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../node_modules/next/dist/client/components/async-local-storage.js","../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../node_modules/next/dist/server/lib/trace/constants.js","../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../node_modules/next/package.json","../../package.json","../chunks/106.js","../chunks/2.js","../chunks/201.js","../chunks/310.js","../chunks/323.js","../chunks/622.js","../chunks/676.js","../chunks/837.js","../chunks/840.js","../chunks/862.js","../chunks/984.js","../chunks/font-manifest.json","../webpack-runtime.js","_not-found_client-reference-manifest.js"]}
\ No newline at end of file
diff --git a/.next/server/app/_not-found.meta b/.next/server/app/_not-found.meta
new file mode 100644
index 0000000..fc1dcd9
--- /dev/null
+++ b/.next/server/app/_not-found.meta
@@ -0,0 +1,5 @@
+{
+ "headers": {
+ "x-next-cache-tags": "_N_T_/layout,_N_T_/_not-found/layout,_N_T_/_not-found"
+ }
+}
\ No newline at end of file
diff --git a/.next/server/app/_not-found.rsc b/.next/server/app/_not-found.rsc
new file mode 100644
index 0000000..12dc2e3
--- /dev/null
+++ b/.next/server/app/_not-found.rsc
@@ -0,0 +1,11 @@
+1:HL["/_next/static/css/1d2d59615145af7d.css","style",{"crossOrigin":""}]
+0:["9CqSqX2Hqhh4fwiD8kSfJ",[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/1d2d59615145af7d.css","precedence":"next","crossOrigin":""}]],"$L3"]]]]
+4:I[6954,[],""]
+5:I[7264,[],""]
+7:{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"}
+8:{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"}
+9:{"display":"inline-block"}
+a:{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0}
+2:[null,["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_e66fe9","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$L6",[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$7","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$8","children":"404"}],["$","div",null,{"style":"$9","children":["$","h2",null,{"style":"$a","children":"This page could not be found."}]}]]}]}]],null],"segment":"__PAGE__"},"styles":null}]}]}],null]
+3:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"sukadia.dev"}],["$","meta","3",{"name":"description","content":"I code, stream, and create videos."}]]
+6:null
diff --git a/.next/server/app/_not-found_client-reference-manifest.js b/.next/server/app/_not-found_client-reference-manifest.js
new file mode 100644
index 0000000..18ebb4c
--- /dev/null
+++ b/.next/server/app/_not-found_client-reference-manifest.js
@@ -0,0 +1 @@
+globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/_not-found"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"3170":{"*":{"id":"4714","name":"*","chunks":[],"async":false}},"3728":{"*":{"id":"3724","name":"*","chunks":[],"async":false}},"6916":{"*":{"id":"5698","name":"*","chunks":[],"async":false}},"6954":{"*":{"id":"4900","name":"*","chunks":[],"async":false}},"7264":{"*":{"id":"5392","name":"*","chunks":[],"async":false}},"8297":{"*":{"id":"8898","name":"*","chunks":[],"async":false}},"9928":{"*":{"id":"5365","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\font\\google\\target.css?{\"path\":\"app\\\\layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":1371,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\globals.scss":{"id":595,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx":{"id":6916,"name":"*","chunks":["986","static/chunks/986-37229c658d9b7b30.js","931","static/chunks/app/page-39b6caed82efc627.js"],"async":false}},"entryCSSFiles":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\_not-found":[],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout":["static/css/1d2d59615145af7d.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page":["static/css/60c69e914bf8dd4b.css"]}}
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/privacy.html b/.next/server/app/everyone-votes/privacy.html
index 4c59327..df64de9 100644
--- a/.next/server/app/everyone-votes/privacy.html
+++ b/.next/server/app/everyone-votes/privacy.html
@@ -1 +1 @@
-sukadia.dev Everyone Votes Privacy Policy Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following use of your data:
What We Store By voting on a poll with Everyone Votes, we store: This data is stored for up to 24 hours, and is wiped every day at UTC midnight.
A cumulative count of the number of votes for each poll option is saved indefinitely.
By setting up Everyone Votes, we store: - The server id, poll channel ids, and current poll messages
- Config settings
This data is stored for as long as Everyone Votes is setup within the server.
By adding server-wide polls on Everyone Votes, we store: This data is stored up until the results are tallied for it. Moderators can also manually remove the poll by using the corresponding command.
In summary, I don't use your data for anything malicious, just for getting poll result counts.
Removal of Data Server data is erased once Everyone Votes is kicked from the server. Any server moderator can kick the bot to trigger this erasure.
User vote data is erased at UTC midnight every day. Since user vote data lasts such a small window of time, erasure requests cannot be fulfilled for this data.
Contact If you have questions or concerns about these terms, please join the support server on Discord, or email contact@sukadia.dev .
\ No newline at end of file
+sukadia.dev Everyone Votes Privacy Policy Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following use of your data:
What We Store By voting on a poll with Everyone Votes, we store: This data is stored for up to 24 hours, and is wiped every day at UTC midnight.
A cumulative count of the number of votes for each poll option is saved indefinitely.
By setting up Everyone Votes, we store: - The server id, poll channel ids, and current poll messages
- Config settings
This data is stored for as long as Everyone Votes is setup within the server.
By adding server-wide polls on Everyone Votes, we store: This data is stored up until the results are tallied for it. Moderators can also manually remove the poll by using the corresponding command.
In summary, I don't use your data for anything malicious, just for getting poll result counts.
Removal of Data Server data is erased once Everyone Votes is kicked from the server. Any server moderator can kick the bot to trigger this erasure.
User vote data is erased at UTC midnight every day. Since user vote data lasts such a small window of time, erasure requests cannot be fulfilled for this data.
Contact If you have questions or concerns about these terms, please join the support server on Discord, or email contact@sukadia.dev .
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/privacy.meta b/.next/server/app/everyone-votes/privacy.meta
index 13ae687..7ffd6ee 100644
--- a/.next/server/app/everyone-votes/privacy.meta
+++ b/.next/server/app/everyone-votes/privacy.meta
@@ -1 +1,5 @@
-{"headers":{"x-next-cache-tags":"/everyone-votes/privacy/page"}}
\ No newline at end of file
+{
+ "headers": {
+ "x-next-cache-tags": "_N_T_/layout,_N_T_/everyone-votes/layout,_N_T_/everyone-votes/privacy/layout,_N_T_/everyone-votes/privacy/page,_N_T_/everyone-votes/privacy"
+ }
+}
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/privacy.rsc b/.next/server/app/everyone-votes/privacy.rsc
index 0da0bec..909619c 100644
--- a/.next/server/app/everyone-votes/privacy.rsc
+++ b/.next/server/app/everyone-votes/privacy.rsc
@@ -1,6 +1,7 @@
-1:HL["/_next/static/css/3930d1a0ca01c66f.css",{"as":"style"}]
-0:[[["",{"children":["everyone-votes",{"children":["privacy",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/3930d1a0ca01c66f.css","precedence":"next"}]],["$L3",null]]]]
-4:I{"id":"4463","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-5:I{"id":"1010","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-2:[["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_0ec1f4","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","everyone-votes","children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","everyone-votes","children","privacy","children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":[["$","main",null,{"className":"ml-[10%] mt-[5%] mr-[10%]","children":[["$","h1",null,{"className":"text-3xl","children":"Everyone Votes Privacy Policy"}],["$","p",null,{"children":"Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following use of your data:"}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"What We Store"}],["$","h3",null,{"className":"text-xl","children":"By voting on a poll with Everyone Votes, we store:"}],["$","ul",null,{"children":[["$","p",null,{"children":"- The poll option(s) you voted on"}],["$","p",null,{"children":"- Your Discord user id"}]]}],["$","p",null,{"children":"This data is stored for up to 24 hours, and is wiped every day at UTC midnight."}],["$","p",null,{"children":"A cumulative count of the number of votes for each poll option is saved indefinitely."}],["$","br",null,{}],["$","h3",null,{"className":"text-xl","children":"By setting up Everyone Votes, we store:"}],["$","ul",null,{"children":[["$","p",null,{"children":"- The server id, poll channel ids, and current poll messages"}],["$","p",null,{"children":"- Config settings"}]]}],["$","p",null,{"children":"This data is stored for as long as Everyone Votes is setup within the server."}],["$","br",null,{}],["$","h3",null,{"className":"text-xl","children":"By adding server-wide polls on Everyone Votes, we store:"}],["$","ul",null,{"children":["$","p",null,{"children":"- All of those polls' data"}]}],["$","p",null,{"children":"This data is stored up until the results are tallied for it. Moderators can also manually remove the poll by using the corresponding command."}],["$","br",null,{}],["$","p",null,{"children":"In summary, I don't use your data for anything malicious, just for getting poll result counts."}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"Removal of Data"}],["$","p",null,{"children":"Server data is erased once Everyone Votes is kicked from the server. Any server moderator can kick the bot to trigger this erasure."}],["$","p",null,{"children":"User vote data is erased at UTC midnight every day. Since user vote data lasts such a small window of time, erasure requests cannot be fulfilled for this data."}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"Contact"}],["$","p",null,{"children":["If you have questions or concerns about these terms, please join the ",["$","a",null,{"href":"https://discord.gg/pc6EcNjuZU","className":"text-blue-500","children":"support server"}]," on Discord, or email ",["$","span",null,{"className":"font-mono","children":"contact@sukadia.dev"}],"."]}]]}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"privacy"},"styles":[]}],"segment":"everyone-votes"},"styles":[]}]}]}],null]
-3:[[["$","meta",null,{"charSet":"utf-8"}],["$","title",null,{"children":"sukadia.dev"}],["$","meta",null,{"name":"description","content":"I code, stream, and create videos."}],null,null,null,null,null,null,null,null,["$","meta",null,{"name":"viewport","content":"width=device-width, initial-scale=1"}],null,null,null,null,null,null,null,null,null,null,[]],[null,null,null,null],null,null,[null,null,null,null,null],null,null,null,null,[null,[["$","link",null,{"rel":"icon","href":"\\favicon.ico","type":"image/x-icon","sizes":"any"}]],[],null]]
+1:HL["/_next/static/css/1d2d59615145af7d.css","style",{"crossOrigin":""}]
+0:["9CqSqX2Hqhh4fwiD8kSfJ",[[["",{"children":["everyone-votes",{"children":["privacy",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/1d2d59615145af7d.css","precedence":"next","crossOrigin":""}]],"$L3"]]]]
+4:I[6954,[],""]
+5:I[7264,[],""]
+2:[null,["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_e66fe9","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","everyone-votes","children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","everyone-votes","children","privacy","children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$L6",["$","main",null,{"className":"ml-[10%] mt-[5%] mr-[10%]","children":[["$","h1",null,{"className":"text-3xl","children":"Everyone Votes Privacy Policy"}],["$","p",null,{"children":"Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following use of your data:"}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"What We Store"}],["$","h3",null,{"className":"text-xl","children":"By voting on a poll with Everyone Votes, we store:"}],["$","ul",null,{"children":[["$","p",null,{"children":"- The poll option(s) you voted on"}],["$","p",null,{"children":"- Your Discord user id"}]]}],["$","p",null,{"children":"This data is stored for up to 24 hours, and is wiped every day at UTC midnight."}],["$","p",null,{"children":"A cumulative count of the number of votes for each poll option is saved indefinitely."}],["$","br",null,{}],["$","h3",null,{"className":"text-xl","children":"By setting up Everyone Votes, we store:"}],["$","ul",null,{"children":[["$","p",null,{"children":"- The server id, poll channel ids, and current poll messages"}],["$","p",null,{"children":"- Config settings"}]]}],["$","p",null,{"children":"This data is stored for as long as Everyone Votes is setup within the server."}],["$","br",null,{}],["$","h3",null,{"className":"text-xl","children":"By adding server-wide polls on Everyone Votes, we store:"}],["$","ul",null,{"children":["$","p",null,{"children":"- All of those polls' data"}]}],["$","p",null,{"children":"This data is stored up until the results are tallied for it. Moderators can also manually remove the poll by using the corresponding command."}],["$","br",null,{}],["$","p",null,{"children":"In summary, I don't use your data for anything malicious, just for getting poll result counts."}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"Removal of Data"}],["$","p",null,{"children":"Server data is erased once Everyone Votes is kicked from the server. Any server moderator can kick the bot to trigger this erasure."}],["$","p",null,{"children":"User vote data is erased at UTC midnight every day. Since user vote data lasts such a small window of time, erasure requests cannot be fulfilled for this data."}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"Contact"}],["$","p",null,{"children":["If you have questions or concerns about these terms, please join the ",["$","a",null,{"href":"https://discord.gg/pc6EcNjuZU","className":"text-blue-500","children":"support server"}]," on Discord, or email ",["$","span",null,{"className":"font-mono","children":"contact@sukadia.dev"}],"."]}]]}],null],"segment":"__PAGE__"},"styles":null}],"segment":"privacy"},"styles":null}],"segment":"everyone-votes"},"styles":null}]}]}],null]
+3:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"sukadia.dev"}],["$","meta","3",{"name":"description","content":"I code, stream, and create videos."}],["$","link","4",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]]
+6:null
diff --git a/.next/server/app/everyone-votes/privacy/page.js b/.next/server/app/everyone-votes/privacy/page.js
index 3b28418..1c827f1 100644
--- a/.next/server/app/everyone-votes/privacy/page.js
+++ b/.next/server/app/everyone-votes/privacy/page.js
@@ -1,415 +1 @@
-(() => {
-var exports = {};
-exports.id = 369;
-exports.ids = [369];
-exports.modules = {
-
-/***/ 252:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/cookie");
-
-/***/ }),
-
-/***/ 7999:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/path-to-regexp");
-
-/***/ }),
-
-/***/ 8038:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react");
-
-/***/ }),
-
-/***/ 8704:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-dom/server-rendering-stub");
-
-/***/ }),
-
-/***/ 7897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-server-dom-webpack/client");
-
-/***/ }),
-
-/***/ 6786:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react/jsx-runtime");
-
-/***/ }),
-
-/***/ 1090:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/app-render/get-segment-param.js");
-
-/***/ }),
-
-/***/ 8652:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/future/helpers/interception-routes.js");
-
-/***/ }),
-
-/***/ 3280:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/app-router-context.js");
-
-/***/ }),
-
-/***/ 9274:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/hooks-client-context.js");
-
-/***/ }),
-
-/***/ 1751:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
-
-/***/ }),
-
-/***/ 1668:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/handle-smooth-scroll.js");
-
-/***/ }),
-
-/***/ 1897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
-
-/***/ }),
-
-/***/ 8854:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
-
-/***/ }),
-
-/***/ 3297:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
-
-/***/ }),
-
-/***/ 3349:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/server-inserted-html.js");
-
-/***/ }),
-
-/***/ 1017:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("path");
-
-/***/ }),
-
-/***/ 7310:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("url");
-
-/***/ }),
-
-/***/ 6058:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "AppRouter": () => (/* reexport default from dynamic */ next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default.a),
-/* harmony export */ "GlobalError": () => (/* reexport default from dynamic */ next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default.a),
-/* harmony export */ "LayoutRouter": () => (/* reexport default from dynamic */ next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default.a),
-/* harmony export */ "RenderFromTemplateContext": () => (/* reexport default from dynamic */ next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default.a),
-/* harmony export */ "StaticGenerationSearchParamsBailoutProvider": () => (/* reexport default from dynamic */ next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default.a),
-/* harmony export */ "__next_app_webpack_require__": () => (/* binding */ __next_app_webpack_require__),
-/* harmony export */ "actionAsyncStorage": () => (/* reexport safe */ next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__.actionAsyncStorage),
-/* harmony export */ "createSearchParamsBailoutProxy": () => (/* reexport safe */ next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__.createSearchParamsBailoutProxy),
-/* harmony export */ "decodeAction": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeAction),
-/* harmony export */ "decodeReply": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeReply),
-/* harmony export */ "originalPathname": () => (/* binding */ originalPathname),
-/* harmony export */ "pages": () => (/* binding */ pages),
-/* harmony export */ "preconnect": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preconnect),
-/* harmony export */ "preloadFont": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadFont),
-/* harmony export */ "preloadStyle": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadStyle),
-/* harmony export */ "renderToReadableStream": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.renderToReadableStream),
-/* harmony export */ "requestAsyncStorage": () => (/* reexport safe */ next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__.requestAsyncStorage),
-/* harmony export */ "serverHooks": () => (/* reexport module object */ next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__),
-/* harmony export */ "staticGenerationAsyncStorage": () => (/* reexport safe */ next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__.staticGenerationAsyncStorage),
-/* harmony export */ "staticGenerationBailout": () => (/* reexport safe */ next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__.staticGenerationBailout),
-/* harmony export */ "tree": () => (/* binding */ tree)
-/* harmony export */ });
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4592);
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6301);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7431);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2673);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(94);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4437);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6127);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(5486);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(6404);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(2527);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(3332);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__);
-/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(7902);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(3099);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__);
-
- const tree = {
- children: [
- '',
- {
- children: [
- 'everyone-votes',
- {
- children: [
- 'privacy',
- {
- children: ['__PAGE__', {}, {
- page: [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4182)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\privacy\\page.tsx"],
-
- }]
- },
- {
-
-
- }
- ]
- },
- {
-
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- },
- {
- 'layout': [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 729)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- }.children;
- const pages = ["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\privacy\\page.tsx"];
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- const __next_app_webpack_require__ = __webpack_require__
-
-
- const originalPathname = "/everyone-votes/privacy/page"
-
-
-/***/ }),
-
-/***/ 3259:
-/***/ (() => {
-
-
-
-/***/ }),
-
-/***/ 4182:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "default": () => (/* binding */ Privacy)
-/* harmony export */ });
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6786);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
-
-function Privacy() {
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("main", {
- className: "ml-[10%] mt-[5%] mr-[10%]",
- children: [
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h1", {
- className: "text-3xl",
- children: "Everyone Votes Privacy Policy"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following use of your data:"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h2", {
- className: "text-2xl",
- children: "What We Store"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h3", {
- className: "text-xl",
- children: "By voting on a poll with Everyone Votes, we store:"
- }),
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("ul", {
- children: [
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "- The poll option(s) you voted on"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "- Your Discord user id"
- })
- ]
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "This data is stored for up to 24 hours, and is wiped every day at UTC midnight."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "A cumulative count of the number of votes for each poll option is saved indefinitely."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h3", {
- className: "text-xl",
- children: "By setting up Everyone Votes, we store:"
- }),
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("ul", {
- children: [
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "- The server id, poll channel ids, and current poll messages"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "- Config settings"
- })
- ]
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "This data is stored for as long as Everyone Votes is setup within the server."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h3", {
- className: "text-xl",
- children: "By adding server-wide polls on Everyone Votes, we store:"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("ul", {
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "- All of those polls' data"
- })
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "This data is stored up until the results are tallied for it. Moderators can also manually remove the poll by using the corresponding command."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "In summary, I don't use your data for anything malicious, just for getting poll result counts."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h2", {
- className: "text-2xl",
- children: "Removal of Data"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "Server data is erased once Everyone Votes is kicked from the server. Any server moderator can kick the bot to trigger this erasure."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "User vote data is erased at UTC midnight every day. Since user vote data lasts such a small window of time, erasure requests cannot be fulfilled for this data."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h2", {
- className: "text-2xl",
- children: "Contact"
- }),
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("p", {
- children: [
- "If you have questions or concerns about these terms, please join the ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("a", {
- href: "https://discord.gg/pc6EcNjuZU",
- className: "text-blue-500",
- children: "support server"
- }),
- " on Discord, or email ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
- className: "font-mono",
- children: "contact@sukadia.dev"
- }),
- "."
- ]
- })
- ]
- });
-}
-
-
-/***/ })
-
-};
-;
-
-// load runtime
-var __webpack_require__ = require("../../../webpack-runtime.js");
-__webpack_require__.C(exports);
-var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
-var __webpack_exports__ = __webpack_require__.X(0, [405,616,816], () => (__webpack_exec__(6058)));
-module.exports = __webpack_exports__;
-
-})();
\ No newline at end of file
+(()=>{var e={};e.id=369,e.ids=[369],e.modules={5403:e=>{"use strict";e.exports=require("next/dist/client/components/request-async-storage.external")},4749:e=>{"use strict";e.exports=require("next/dist/client/components/static-generation-async-storage.external")},399:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},5528:e=>{"use strict";e.exports=require("next/dist\\client\\components\\action-async-storage.external.js")},1877:e=>{"use strict";e.exports=require("next/dist\\client\\components\\request-async-storage.external.js")},5319:e=>{"use strict";e.exports=require("next/dist\\client\\components\\static-generation-async-storage.external.js")},1017:e=>{"use strict";e.exports=require("path")},7310:e=>{"use strict";e.exports=require("url")},2668:(e,t,s)=>{"use strict";s.r(t),s.d(t,{GlobalError:()=>i.a,__next_app__:()=>u,originalPathname:()=>p,pages:()=>c,routeModule:()=>x,tree:()=>d});var r=s(7096),a=s(6132),o=s(7284),i=s.n(o),n=s(2564),l={};for(let e in n)0>["default","tree","pages","GlobalError","originalPathname","__next_app__","routeModule"].indexOf(e)&&(l[e]=()=>n[e]);s.d(t,l);let d=["",{children:["everyone-votes",{children:["privacy",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(s.bind(s,2330)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\privacy\\page.tsx"]}]},{}]},{metadata:{icon:[async e=>(await Promise.resolve().then(s.bind(s,7481))).default(e)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(s.bind(s,5345)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],"not-found":[()=>Promise.resolve().then(s.t.bind(s,9291,23)),"next/dist/client/components/not-found-error"],metadata:{icon:[async e=>(await Promise.resolve().then(s.bind(s,7481))).default(e)],apple:[],openGraph:[],twitter:[],manifest:void 0}}],c=["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\privacy\\page.tsx"],p="/everyone-votes/privacy/page",u={require:s,loadChunk:()=>Promise.resolve()},x=new r.AppPageRouteModule({definition:{kind:a.x.APP_PAGE,page:"/everyone-votes/privacy/page",pathname:"/everyone-votes/privacy",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:d}})},5303:()=>{},2330:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>Privacy});var r=s(4656);function Privacy(){return(0,r.jsxs)("main",{className:"ml-[10%] mt-[5%] mr-[10%]",children:[r.jsx("h1",{className:"text-3xl",children:"Everyone Votes Privacy Policy"}),r.jsx("p",{children:"Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following use of your data:"}),r.jsx("br",{}),r.jsx("h2",{className:"text-2xl",children:"What We Store"}),r.jsx("h3",{className:"text-xl",children:"By voting on a poll with Everyone Votes, we store:"}),(0,r.jsxs)("ul",{children:[r.jsx("p",{children:"- The poll option(s) you voted on"}),r.jsx("p",{children:"- Your Discord user id"})]}),r.jsx("p",{children:"This data is stored for up to 24 hours, and is wiped every day at UTC midnight."}),r.jsx("p",{children:"A cumulative count of the number of votes for each poll option is saved indefinitely."}),r.jsx("br",{}),r.jsx("h3",{className:"text-xl",children:"By setting up Everyone Votes, we store:"}),(0,r.jsxs)("ul",{children:[r.jsx("p",{children:"- The server id, poll channel ids, and current poll messages"}),r.jsx("p",{children:"- Config settings"})]}),r.jsx("p",{children:"This data is stored for as long as Everyone Votes is setup within the server."}),r.jsx("br",{}),r.jsx("h3",{className:"text-xl",children:"By adding server-wide polls on Everyone Votes, we store:"}),r.jsx("ul",{children:r.jsx("p",{children:"- All of those polls' data"})}),r.jsx("p",{children:"This data is stored up until the results are tallied for it. Moderators can also manually remove the poll by using the corresponding command."}),r.jsx("br",{}),r.jsx("p",{children:"In summary, I don't use your data for anything malicious, just for getting poll result counts."}),r.jsx("br",{}),r.jsx("h2",{className:"text-2xl",children:"Removal of Data"}),r.jsx("p",{children:"Server data is erased once Everyone Votes is kicked from the server. Any server moderator can kick the bot to trigger this erasure."}),r.jsx("p",{children:"User vote data is erased at UTC midnight every day. Since user vote data lasts such a small window of time, erasure requests cannot be fulfilled for this data."}),r.jsx("br",{}),r.jsx("h2",{className:"text-2xl",children:"Contact"}),(0,r.jsxs)("p",{children:["If you have questions or concerns about these terms, please join the ",r.jsx("a",{href:"https://discord.gg/pc6EcNjuZU",className:"text-blue-500",children:"support server"})," on Discord, or email ",r.jsx("span",{className:"font-mono",children:"contact@sukadia.dev"}),"."]})]})}},7481:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var r=s(8531);let __WEBPACK_DEFAULT_EXPORT__=e=>{let t=(0,r.fillMetadataSegment)(".",e.params,"favicon.ico");return[{type:"image/x-icon",sizes:"16x16",url:t+""}]}}};var t=require("../../../webpack-runtime.js");t.C(e);var __webpack_exec__=e=>t(t.s=e),s=t.X(0,[862,323,622],()=>__webpack_exec__(2668));module.exports=s})();
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/privacy/page.js.nft.json b/.next/server/app/everyone-votes/privacy/page.js.nft.json
index bd3de18..1bff456 100644
--- a/.next/server/app/everyone-votes/privacy/page.js.nft.json
+++ b/.next/server/app/everyone-votes/privacy/page.js.nft.json
@@ -1 +1 @@
-{"version":1,"files":["../../../webpack-runtime.js","../../../chunks/405.js","../../../chunks/616.js","../../../chunks/816.js","../../../../package.json","../../../../../node_modules/next/package.json","../../../../../node_modules/next/dist/shared/lib/app-router-context.js","../../../../../node_modules/next/dist/shared/lib/hooks-client-context.js","../../../../../node_modules/next/dist/shared/lib/server-inserted-html.js","../../../../../node_modules/next/dist/server/app-render/get-segment-param.js","../../../../../node_modules/next/dist/server/future/helpers/interception-routes.js","../../../../../node_modules/react/package.json","../../../../../node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js","../../../../../node_modules/next/dist/shared/lib/router/utils/handle-smooth-scroll.js","../../../../../node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js","../../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../../node_modules/next/dist/shared/lib/router/utils/parse-path.js","../../../../../node_modules/react/index.js","../../../../../node_modules/next/dist/compiled/react/jsx-runtime.js","../../../../../node_modules/next/dist/compiled/react-dom/server-rendering-stub.js","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.js","../../../../../node_modules/next/dist/compiled/react/package.json","../../../../../node_modules/next/dist/compiled/react-dom/package.json","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/package.json","../../../../../node_modules/next/dist/compiled/path-to-regexp/index.js","../../../../../node_modules/next/dist/compiled/react/index.js","../../../../../node_modules/react/cjs/react.production.min.js","../../../../../node_modules/react/cjs/react.development.js","../../../../../node_modules/next/dist/compiled/cookie/package.json","../../../../../node_modules/next/dist/compiled/cookie/index.js","../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.production.min.js","../../../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.development.js","../../../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.production.min.js","../../../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.development.js","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.browser.js","../../../../../node_modules/next/dist/compiled/react/cjs/react.production.min.js","../../../../../node_modules/next/dist/compiled/react/cjs/react.development.js","../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js","../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../node_modules/@swc/helpers/_/_interop_require_wildcard/package.json","../../../../../node_modules/@swc/helpers/package.json","../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs","../../../../../node_modules/react-dom/package.json","../../../../../node_modules/react-dom/index.js","../../../../../node_modules/react-dom/cjs/react-dom.production.min.js","../../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../../node_modules/scheduler/package.json","../../../../../node_modules/scheduler/index.js","../../../../../node_modules/scheduler/cjs/scheduler.production.min.js","../../../../../node_modules/scheduler/cjs/scheduler.development.js","../../../../../package.json"]}
\ No newline at end of file
+{"version":1,"files":["../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../../package.json","../../../chunks/106.js","../../../chunks/2.js","../../../chunks/201.js","../../../chunks/310.js","../../../chunks/323.js","../../../chunks/622.js","../../../chunks/676.js","../../../chunks/837.js","../../../chunks/840.js","../../../chunks/862.js","../../../chunks/984.js","../../../chunks/font-manifest.json","../../../webpack-runtime.js","page_client-reference-manifest.js"]}
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/privacy/page_client-reference-manifest.js b/.next/server/app/everyone-votes/privacy/page_client-reference-manifest.js
new file mode 100644
index 0000000..747de8d
--- /dev/null
+++ b/.next/server/app/everyone-votes/privacy/page_client-reference-manifest.js
@@ -0,0 +1 @@
+globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/everyone-votes/privacy/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"3170":{"*":{"id":"4714","name":"*","chunks":[],"async":false}},"3728":{"*":{"id":"3724","name":"*","chunks":[],"async":false}},"6916":{"*":{"id":"5698","name":"*","chunks":[],"async":false}},"6954":{"*":{"id":"4900","name":"*","chunks":[],"async":false}},"7264":{"*":{"id":"5392","name":"*","chunks":[],"async":false}},"8297":{"*":{"id":"8898","name":"*","chunks":[],"async":false}},"9928":{"*":{"id":"5365","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\font\\google\\target.css?{\"path\":\"app\\\\layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":1371,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\globals.scss":{"id":595,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx":{"id":6916,"name":"*","chunks":["986","static/chunks/986-37229c658d9b7b30.js","931","static/chunks/app/page-39b6caed82efc627.js"],"async":false}},"entryCSSFiles":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\_not-found":[],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout":["static/css/1d2d59615145af7d.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page":["static/css/60c69e914bf8dd4b.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\privacy\\page":[]}}
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/terms.html b/.next/server/app/everyone-votes/terms.html
index be33f18..e0d677a 100644
--- a/.next/server/app/everyone-votes/terms.html
+++ b/.next/server/app/everyone-votes/terms.html
@@ -1 +1 @@
-sukadia.dev Everyone Votes Terms of Service Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following terms:
User Conduct "Users" include any Discord user interacting with Everyone Votes through Discord's slash commands or buttons. Users must adhere to the following guidelines:
Failure to follow these terms may result in the user being blacklisted from using Everyone Vote's features, either automatically or at the discretion of the developer.
Paid Content Everyone Votes offers certain features that require supporting the bot monthly on Ko-fi . In order to gain access to these features, the supporter must be in the Discord support server to properly track subscription status.
Benefits may not immediately appear for the supporter, and may not work fully as expected. Please follow the contact information below to report any issues so they may be resolved in a timely fashion.
Refunds are not guaranteed and will be given at the discretion of the developer. (I'm a pretty reasonable person though!)
Contact If you have questions or concerns about these terms, please join the support server on Discord, or email contact@sukadia.dev .
I appreciate you for reading these terms, not many do that!
\ No newline at end of file
+sukadia.dev Everyone Votes Terms of Service Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following terms:
User Conduct "Users" include any Discord user interacting with Everyone Votes through Discord's slash commands or buttons. Users must adhere to the following guidelines:
Failure to follow these terms may result in the user being blacklisted from using Everyone Vote's features, either automatically or at the discretion of the developer.
Paid Content Everyone Votes offers certain features that require supporting the bot monthly on Ko-fi . In order to gain access to these features, the supporter must be in the Discord support server to properly track subscription status.
Benefits may not immediately appear for the supporter, and may not work fully as expected. Please follow the contact information below to report any issues so they may be resolved in a timely fashion.
Refunds are not guaranteed and will be given at the discretion of the developer. (I'm a pretty reasonable person though!)
Contact If you have questions or concerns about these terms, please join the support server on Discord, or email contact@sukadia.dev .
I appreciate you for reading these terms, not many do that!
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/terms.meta b/.next/server/app/everyone-votes/terms.meta
index 5d31670..f3547ee 100644
--- a/.next/server/app/everyone-votes/terms.meta
+++ b/.next/server/app/everyone-votes/terms.meta
@@ -1 +1,5 @@
-{"headers":{"x-next-cache-tags":"/everyone-votes/terms/page"}}
\ No newline at end of file
+{
+ "headers": {
+ "x-next-cache-tags": "_N_T_/layout,_N_T_/everyone-votes/layout,_N_T_/everyone-votes/terms/layout,_N_T_/everyone-votes/terms/page,_N_T_/everyone-votes/terms"
+ }
+}
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/terms.rsc b/.next/server/app/everyone-votes/terms.rsc
index f3a0f86..cc0b5ae 100644
--- a/.next/server/app/everyone-votes/terms.rsc
+++ b/.next/server/app/everyone-votes/terms.rsc
@@ -1,6 +1,7 @@
-1:HL["/_next/static/css/3930d1a0ca01c66f.css",{"as":"style"}]
-0:[[["",{"children":["everyone-votes",{"children":["terms",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/3930d1a0ca01c66f.css","precedence":"next"}]],["$L3",null]]]]
-4:I{"id":"4463","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-5:I{"id":"1010","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-2:[["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_0ec1f4","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","everyone-votes","children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","everyone-votes","children","terms","children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":[["$","main",null,{"className":"ml-[10%] mt-[5%] mr-[10%]","children":[["$","h1",null,{"className":"text-3xl","children":"Everyone Votes Terms of Service"}],["$","p",null,{"children":"Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following terms:"}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"User Conduct"}],["$","p",null,{"children":"\"Users\" include any Discord user interacting with Everyone Votes through Discord's slash commands or buttons. Users must adhere to the following guidelines:"}],["$","ul",null,{"children":[["$","p",null,{"children":"- Spamming bot interactions is not allowed."}],["$","p",null,{"children":"- Only one account per person may vote on polls."}],["$","p",null,{"children":["- Follow ",["$","a",null,{"href":"https://discord.com/terms","className":"text-blue-500","children":"Discord's Terms of Service"}],"."]}]]}],["$","p",null,{"children":"Failure to follow these terms may result in the user being blacklisted from using Everyone Vote's features, either automatically or at the discretion of the developer."}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"Paid Content"}],["$","p",null,{"children":["Everyone Votes offers certain features that require supporting the bot monthly on ",["$","a",null,{"href":"https://ko-fi.com/everyonevotes/tiers","className":"text-blue-500","children":"Ko-fi"}],". In order to gain access to these features, the supporter must be in the Discord ",["$","a",null,{"href":"https://discord.gg/pc6EcNjuZU","className":"text-blue-500","children":"support server"}]," to properly track subscription status."]}],["$","p",null,{"children":"Benefits may not immediately appear for the supporter, and may not work fully as expected. Please follow the contact information below to report any issues so they may be resolved in a timely fashion."}],["$","p",null,{"children":"Refunds are not guaranteed and will be given at the discretion of the developer. (I'm a pretty reasonable person though!)"}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"Contact"}],["$","p",null,{"children":["If you have questions or concerns about these terms, please join the ",["$","a",null,{"href":"https://discord.gg/pc6EcNjuZU","className":"text-blue-500","children":"support server"}]," on Discord, or email ",["$","span",null,{"className":"font-mono","children":"contact@sukadia.dev"}],"."]}],["$","p",null,{"children":"I appreciate you for reading these terms, not many do that!"}]]}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"terms"},"styles":[]}],"segment":"everyone-votes"},"styles":[]}]}]}],null]
-3:[[["$","meta",null,{"charSet":"utf-8"}],["$","title",null,{"children":"sukadia.dev"}],["$","meta",null,{"name":"description","content":"I code, stream, and create videos."}],null,null,null,null,null,null,null,null,["$","meta",null,{"name":"viewport","content":"width=device-width, initial-scale=1"}],null,null,null,null,null,null,null,null,null,null,[]],[null,null,null,null],null,null,[null,null,null,null,null],null,null,null,null,[null,[["$","link",null,{"rel":"icon","href":"\\favicon.ico","type":"image/x-icon","sizes":"any"}]],[],null]]
+1:HL["/_next/static/css/1d2d59615145af7d.css","style",{"crossOrigin":""}]
+0:["9CqSqX2Hqhh4fwiD8kSfJ",[[["",{"children":["everyone-votes",{"children":["terms",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/1d2d59615145af7d.css","precedence":"next","crossOrigin":""}]],"$L3"]]]]
+4:I[6954,[],""]
+5:I[7264,[],""]
+2:[null,["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_e66fe9","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","everyone-votes","children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","everyone-votes","children","terms","children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$L6",["$","main",null,{"className":"ml-[10%] mt-[5%] mr-[10%]","children":[["$","h1",null,{"className":"text-3xl","children":"Everyone Votes Terms of Service"}],["$","p",null,{"children":"Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following terms:"}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"User Conduct"}],["$","p",null,{"children":"\"Users\" include any Discord user interacting with Everyone Votes through Discord's slash commands or buttons. Users must adhere to the following guidelines:"}],["$","ul",null,{"children":[["$","p",null,{"children":"- Spamming bot interactions is not allowed."}],["$","p",null,{"children":"- Only one account per person may vote on polls."}],["$","p",null,{"children":["- Follow ",["$","a",null,{"href":"https://discord.com/terms","className":"text-blue-500","children":"Discord's Terms of Service"}],"."]}]]}],["$","p",null,{"children":"Failure to follow these terms may result in the user being blacklisted from using Everyone Vote's features, either automatically or at the discretion of the developer."}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"Paid Content"}],["$","p",null,{"children":["Everyone Votes offers certain features that require supporting the bot monthly on ",["$","a",null,{"href":"https://ko-fi.com/everyonevotes/tiers","className":"text-blue-500","children":"Ko-fi"}],". In order to gain access to these features, the supporter must be in the Discord ",["$","a",null,{"href":"https://discord.gg/pc6EcNjuZU","className":"text-blue-500","children":"support server"}]," to properly track subscription status."]}],["$","p",null,{"children":"Benefits may not immediately appear for the supporter, and may not work fully as expected. Please follow the contact information below to report any issues so they may be resolved in a timely fashion."}],["$","p",null,{"children":"Refunds are not guaranteed and will be given at the discretion of the developer. (I'm a pretty reasonable person though!)"}],["$","br",null,{}],["$","h2",null,{"className":"text-2xl","children":"Contact"}],["$","p",null,{"children":["If you have questions or concerns about these terms, please join the ",["$","a",null,{"href":"https://discord.gg/pc6EcNjuZU","className":"text-blue-500","children":"support server"}]," on Discord, or email ",["$","span",null,{"className":"font-mono","children":"contact@sukadia.dev"}],"."]}],["$","p",null,{"children":"I appreciate you for reading these terms, not many do that!"}]]}],null],"segment":"__PAGE__"},"styles":null}],"segment":"terms"},"styles":null}],"segment":"everyone-votes"},"styles":null}]}]}],null]
+3:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"sukadia.dev"}],["$","meta","3",{"name":"description","content":"I code, stream, and create videos."}],["$","link","4",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]]
+6:null
diff --git a/.next/server/app/everyone-votes/terms/page.js b/.next/server/app/everyone-votes/terms/page.js
index 2e28582..e6dc224 100644
--- a/.next/server/app/everyone-votes/terms/page.js
+++ b/.next/server/app/everyone-votes/terms/page.js
@@ -1,407 +1 @@
-(() => {
-var exports = {};
-exports.id = 181;
-exports.ids = [181];
-exports.modules = {
-
-/***/ 252:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/cookie");
-
-/***/ }),
-
-/***/ 7999:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/path-to-regexp");
-
-/***/ }),
-
-/***/ 8038:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react");
-
-/***/ }),
-
-/***/ 8704:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-dom/server-rendering-stub");
-
-/***/ }),
-
-/***/ 7897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-server-dom-webpack/client");
-
-/***/ }),
-
-/***/ 6786:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react/jsx-runtime");
-
-/***/ }),
-
-/***/ 1090:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/app-render/get-segment-param.js");
-
-/***/ }),
-
-/***/ 8652:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/future/helpers/interception-routes.js");
-
-/***/ }),
-
-/***/ 3280:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/app-router-context.js");
-
-/***/ }),
-
-/***/ 9274:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/hooks-client-context.js");
-
-/***/ }),
-
-/***/ 1751:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
-
-/***/ }),
-
-/***/ 1668:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/handle-smooth-scroll.js");
-
-/***/ }),
-
-/***/ 1897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
-
-/***/ }),
-
-/***/ 8854:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
-
-/***/ }),
-
-/***/ 3297:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
-
-/***/ }),
-
-/***/ 3349:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/server-inserted-html.js");
-
-/***/ }),
-
-/***/ 1017:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("path");
-
-/***/ }),
-
-/***/ 7310:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("url");
-
-/***/ }),
-
-/***/ 8125:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "AppRouter": () => (/* reexport default from dynamic */ next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default.a),
-/* harmony export */ "GlobalError": () => (/* reexport default from dynamic */ next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default.a),
-/* harmony export */ "LayoutRouter": () => (/* reexport default from dynamic */ next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default.a),
-/* harmony export */ "RenderFromTemplateContext": () => (/* reexport default from dynamic */ next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default.a),
-/* harmony export */ "StaticGenerationSearchParamsBailoutProvider": () => (/* reexport default from dynamic */ next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default.a),
-/* harmony export */ "__next_app_webpack_require__": () => (/* binding */ __next_app_webpack_require__),
-/* harmony export */ "actionAsyncStorage": () => (/* reexport safe */ next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__.actionAsyncStorage),
-/* harmony export */ "createSearchParamsBailoutProxy": () => (/* reexport safe */ next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__.createSearchParamsBailoutProxy),
-/* harmony export */ "decodeAction": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeAction),
-/* harmony export */ "decodeReply": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeReply),
-/* harmony export */ "originalPathname": () => (/* binding */ originalPathname),
-/* harmony export */ "pages": () => (/* binding */ pages),
-/* harmony export */ "preconnect": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preconnect),
-/* harmony export */ "preloadFont": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadFont),
-/* harmony export */ "preloadStyle": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadStyle),
-/* harmony export */ "renderToReadableStream": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.renderToReadableStream),
-/* harmony export */ "requestAsyncStorage": () => (/* reexport safe */ next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__.requestAsyncStorage),
-/* harmony export */ "serverHooks": () => (/* reexport module object */ next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__),
-/* harmony export */ "staticGenerationAsyncStorage": () => (/* reexport safe */ next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__.staticGenerationAsyncStorage),
-/* harmony export */ "staticGenerationBailout": () => (/* reexport safe */ next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__.staticGenerationBailout),
-/* harmony export */ "tree": () => (/* binding */ tree)
-/* harmony export */ });
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4592);
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6301);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7431);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2673);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(94);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4437);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6127);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(5486);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(6404);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(2527);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(3332);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__);
-/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(7902);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(3099);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__);
-
- const tree = {
- children: [
- '',
- {
- children: [
- 'everyone-votes',
- {
- children: [
- 'terms',
- {
- children: ['__PAGE__', {}, {
- page: [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2871)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\terms\\page.tsx"],
-
- }]
- },
- {
-
-
- }
- ]
- },
- {
-
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- },
- {
- 'layout': [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 729)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- }.children;
- const pages = ["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\terms\\page.tsx"];
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- const __next_app_webpack_require__ = __webpack_require__
-
-
- const originalPathname = "/everyone-votes/terms/page"
-
-
-/***/ }),
-
-/***/ 3259:
-/***/ (() => {
-
-
-
-/***/ }),
-
-/***/ 2871:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "default": () => (/* binding */ Terms)
-/* harmony export */ });
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6786);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
-
-function Terms() {
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("main", {
- className: "ml-[10%] mt-[5%] mr-[10%]",
- children: [
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h1", {
- className: "text-3xl",
- children: "Everyone Votes Terms of Service"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following terms:"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h2", {
- className: "text-2xl",
- children: "User Conduct"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: '"Users" include any Discord user interacting with Everyone Votes through Discord\'s slash commands or buttons. Users must adhere to the following guidelines:'
- }),
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("ul", {
- children: [
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "- Spamming bot interactions is not allowed."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "- Only one account per person may vote on polls."
- }),
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("p", {
- children: [
- "- Follow ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("a", {
- href: "https://discord.com/terms",
- className: "text-blue-500",
- children: "Discord's Terms of Service"
- }),
- "."
- ]
- })
- ]
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "Failure to follow these terms may result in the user being blacklisted from using Everyone Vote's features, either automatically or at the discretion of the developer."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h2", {
- className: "text-2xl",
- children: "Paid Content"
- }),
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("p", {
- children: [
- "Everyone Votes offers certain features that require supporting the bot monthly on ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("a", {
- href: "https://ko-fi.com/everyonevotes/tiers",
- className: "text-blue-500",
- children: "Ko-fi"
- }),
- ". In order to gain access to these features, the supporter must be in the Discord ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("a", {
- href: "https://discord.gg/pc6EcNjuZU",
- className: "text-blue-500",
- children: "support server"
- }),
- " to properly track subscription status."
- ]
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "Benefits may not immediately appear for the supporter, and may not work fully as expected. Please follow the contact information below to report any issues so they may be resolved in a timely fashion."
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "Refunds are not guaranteed and will be given at the discretion of the developer. (I'm a pretty reasonable person though!)"
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h2", {
- className: "text-2xl",
- children: "Contact"
- }),
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("p", {
- children: [
- "If you have questions or concerns about these terms, please join the ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("a", {
- href: "https://discord.gg/pc6EcNjuZU",
- className: "text-blue-500",
- children: "support server"
- }),
- " on Discord, or email ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
- className: "font-mono",
- children: "contact@sukadia.dev"
- }),
- "."
- ]
- }),
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("p", {
- children: "I appreciate you for reading these terms, not many do that!"
- })
- ]
- });
-}
-
-
-/***/ })
-
-};
-;
-
-// load runtime
-var __webpack_require__ = require("../../../webpack-runtime.js");
-__webpack_require__.C(exports);
-var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
-var __webpack_exports__ = __webpack_require__.X(0, [405,616,816], () => (__webpack_exec__(8125)));
-module.exports = __webpack_exports__;
-
-})();
\ No newline at end of file
+(()=>{var e={};e.id=181,e.ids=[181],e.modules={5403:e=>{"use strict";e.exports=require("next/dist/client/components/request-async-storage.external")},4749:e=>{"use strict";e.exports=require("next/dist/client/components/static-generation-async-storage.external")},399:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},5528:e=>{"use strict";e.exports=require("next/dist\\client\\components\\action-async-storage.external.js")},1877:e=>{"use strict";e.exports=require("next/dist\\client\\components\\request-async-storage.external.js")},5319:e=>{"use strict";e.exports=require("next/dist\\client\\components\\static-generation-async-storage.external.js")},1017:e=>{"use strict";e.exports=require("path")},7310:e=>{"use strict";e.exports=require("url")},9167:(e,t,s)=>{"use strict";s.r(t),s.d(t,{GlobalError:()=>a.a,__next_app__:()=>u,originalPathname:()=>p,pages:()=>d,routeModule:()=>m,tree:()=>c});var r=s(7096),o=s(6132),n=s(7284),a=s.n(n),i=s(2564),l={};for(let e in i)0>["default","tree","pages","GlobalError","originalPathname","__next_app__","routeModule"].indexOf(e)&&(l[e]=()=>i[e]);s.d(t,l);let c=["",{children:["everyone-votes",{children:["terms",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(s.bind(s,4182)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\terms\\page.tsx"]}]},{}]},{metadata:{icon:[async e=>(await Promise.resolve().then(s.bind(s,7481))).default(e)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(s.bind(s,5345)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],"not-found":[()=>Promise.resolve().then(s.t.bind(s,9291,23)),"next/dist/client/components/not-found-error"],metadata:{icon:[async e=>(await Promise.resolve().then(s.bind(s,7481))).default(e)],apple:[],openGraph:[],twitter:[],manifest:void 0}}],d=["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\terms\\page.tsx"],p="/everyone-votes/terms/page",u={require:s,loadChunk:()=>Promise.resolve()},m=new r.AppPageRouteModule({definition:{kind:o.x.APP_PAGE,page:"/everyone-votes/terms/page",pathname:"/everyone-votes/terms",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:c}})},5303:()=>{},4182:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>Terms});var r=s(4656);function Terms(){return(0,r.jsxs)("main",{className:"ml-[10%] mt-[5%] mr-[10%]",children:[r.jsx("h1",{className:"text-3xl",children:"Everyone Votes Terms of Service"}),r.jsx("p",{children:"Everyone Votes is an application on Discord that delivers and tallies daily polls to Discord servers. By being a user, you agree to the following terms:"}),r.jsx("br",{}),r.jsx("h2",{className:"text-2xl",children:"User Conduct"}),r.jsx("p",{children:'"Users" include any Discord user interacting with Everyone Votes through Discord\'s slash commands or buttons. Users must adhere to the following guidelines:'}),(0,r.jsxs)("ul",{children:[r.jsx("p",{children:"- Spamming bot interactions is not allowed."}),r.jsx("p",{children:"- Only one account per person may vote on polls."}),(0,r.jsxs)("p",{children:["- Follow ",r.jsx("a",{href:"https://discord.com/terms",className:"text-blue-500",children:"Discord's Terms of Service"}),"."]})]}),r.jsx("p",{children:"Failure to follow these terms may result in the user being blacklisted from using Everyone Vote's features, either automatically or at the discretion of the developer."}),r.jsx("br",{}),r.jsx("h2",{className:"text-2xl",children:"Paid Content"}),(0,r.jsxs)("p",{children:["Everyone Votes offers certain features that require supporting the bot monthly on ",r.jsx("a",{href:"https://ko-fi.com/everyonevotes/tiers",className:"text-blue-500",children:"Ko-fi"}),". In order to gain access to these features, the supporter must be in the Discord ",r.jsx("a",{href:"https://discord.gg/pc6EcNjuZU",className:"text-blue-500",children:"support server"})," to properly track subscription status."]}),r.jsx("p",{children:"Benefits may not immediately appear for the supporter, and may not work fully as expected. Please follow the contact information below to report any issues so they may be resolved in a timely fashion."}),r.jsx("p",{children:"Refunds are not guaranteed and will be given at the discretion of the developer. (I'm a pretty reasonable person though!)"}),r.jsx("br",{}),r.jsx("h2",{className:"text-2xl",children:"Contact"}),(0,r.jsxs)("p",{children:["If you have questions or concerns about these terms, please join the ",r.jsx("a",{href:"https://discord.gg/pc6EcNjuZU",className:"text-blue-500",children:"support server"})," on Discord, or email ",r.jsx("span",{className:"font-mono",children:"contact@sukadia.dev"}),"."]}),r.jsx("p",{children:"I appreciate you for reading these terms, not many do that!"})]})}},7481:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var r=s(8531);let __WEBPACK_DEFAULT_EXPORT__=e=>{let t=(0,r.fillMetadataSegment)(".",e.params,"favicon.ico");return[{type:"image/x-icon",sizes:"16x16",url:t+""}]}}};var t=require("../../../webpack-runtime.js");t.C(e);var __webpack_exec__=e=>t(t.s=e),s=t.X(0,[862,323,622],()=>__webpack_exec__(9167));module.exports=s})();
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/terms/page.js.nft.json b/.next/server/app/everyone-votes/terms/page.js.nft.json
index bd3de18..1bff456 100644
--- a/.next/server/app/everyone-votes/terms/page.js.nft.json
+++ b/.next/server/app/everyone-votes/terms/page.js.nft.json
@@ -1 +1 @@
-{"version":1,"files":["../../../webpack-runtime.js","../../../chunks/405.js","../../../chunks/616.js","../../../chunks/816.js","../../../../package.json","../../../../../node_modules/next/package.json","../../../../../node_modules/next/dist/shared/lib/app-router-context.js","../../../../../node_modules/next/dist/shared/lib/hooks-client-context.js","../../../../../node_modules/next/dist/shared/lib/server-inserted-html.js","../../../../../node_modules/next/dist/server/app-render/get-segment-param.js","../../../../../node_modules/next/dist/server/future/helpers/interception-routes.js","../../../../../node_modules/react/package.json","../../../../../node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js","../../../../../node_modules/next/dist/shared/lib/router/utils/handle-smooth-scroll.js","../../../../../node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js","../../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../../node_modules/next/dist/shared/lib/router/utils/parse-path.js","../../../../../node_modules/react/index.js","../../../../../node_modules/next/dist/compiled/react/jsx-runtime.js","../../../../../node_modules/next/dist/compiled/react-dom/server-rendering-stub.js","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.js","../../../../../node_modules/next/dist/compiled/react/package.json","../../../../../node_modules/next/dist/compiled/react-dom/package.json","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/package.json","../../../../../node_modules/next/dist/compiled/path-to-regexp/index.js","../../../../../node_modules/next/dist/compiled/react/index.js","../../../../../node_modules/react/cjs/react.production.min.js","../../../../../node_modules/react/cjs/react.development.js","../../../../../node_modules/next/dist/compiled/cookie/package.json","../../../../../node_modules/next/dist/compiled/cookie/index.js","../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.production.min.js","../../../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.development.js","../../../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.production.min.js","../../../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.development.js","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.browser.js","../../../../../node_modules/next/dist/compiled/react/cjs/react.production.min.js","../../../../../node_modules/next/dist/compiled/react/cjs/react.development.js","../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js","../../../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js","../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../node_modules/@swc/helpers/_/_interop_require_wildcard/package.json","../../../../../node_modules/@swc/helpers/package.json","../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs","../../../../../node_modules/react-dom/package.json","../../../../../node_modules/react-dom/index.js","../../../../../node_modules/react-dom/cjs/react-dom.production.min.js","../../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../../node_modules/scheduler/package.json","../../../../../node_modules/scheduler/index.js","../../../../../node_modules/scheduler/cjs/scheduler.production.min.js","../../../../../node_modules/scheduler/cjs/scheduler.development.js","../../../../../package.json"]}
\ No newline at end of file
+{"version":1,"files":["../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../../package.json","../../../chunks/106.js","../../../chunks/2.js","../../../chunks/201.js","../../../chunks/310.js","../../../chunks/323.js","../../../chunks/622.js","../../../chunks/676.js","../../../chunks/837.js","../../../chunks/840.js","../../../chunks/862.js","../../../chunks/984.js","../../../chunks/font-manifest.json","../../../webpack-runtime.js","page_client-reference-manifest.js"]}
\ No newline at end of file
diff --git a/.next/server/app/everyone-votes/terms/page_client-reference-manifest.js b/.next/server/app/everyone-votes/terms/page_client-reference-manifest.js
new file mode 100644
index 0000000..dbee375
--- /dev/null
+++ b/.next/server/app/everyone-votes/terms/page_client-reference-manifest.js
@@ -0,0 +1 @@
+globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/everyone-votes/terms/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"3170":{"*":{"id":"4714","name":"*","chunks":[],"async":false}},"3728":{"*":{"id":"3724","name":"*","chunks":[],"async":false}},"6916":{"*":{"id":"5698","name":"*","chunks":[],"async":false}},"6954":{"*":{"id":"4900","name":"*","chunks":[],"async":false}},"7264":{"*":{"id":"5392","name":"*","chunks":[],"async":false}},"8297":{"*":{"id":"8898","name":"*","chunks":[],"async":false}},"9928":{"*":{"id":"5365","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\font\\google\\target.css?{\"path\":\"app\\\\layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":1371,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\globals.scss":{"id":595,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx":{"id":6916,"name":"*","chunks":["986","static/chunks/986-37229c658d9b7b30.js","931","static/chunks/app/page-39b6caed82efc627.js"],"async":false}},"entryCSSFiles":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\_not-found":[],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout":["static/css/1d2d59615145af7d.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page":["static/css/60c69e914bf8dd4b.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\everyone-votes\\terms\\page":[]}}
\ No newline at end of file
diff --git a/.next/server/app/favicon.ico.meta b/.next/server/app/favicon.ico.meta
index b22e0a8..b5516f2 100644
--- a/.next/server/app/favicon.ico.meta
+++ b/.next/server/app/favicon.ico.meta
@@ -1 +1 @@
-{"status":200,"headers":{"cache-control":"public, max-age=0, must-revalidate","content-type":"image/x-icon","x-next-cache-tags":"/favicon.ico/route"}}
\ No newline at end of file
+{"status":200,"headers":{"cache-control":"public, max-age=0, must-revalidate","content-type":"image/x-icon","x-next-cache-tags":"_N_T_/layout,_N_T_/favicon.ico/layout,_N_T_/favicon.ico/route,_N_T_/favicon.ico"}}
\ No newline at end of file
diff --git a/.next/server/app/favicon.ico/route.js b/.next/server/app/favicon.ico/route.js
index de85ec2..8a36246 100644
--- a/.next/server/app/favicon.ico/route.js
+++ b/.next/server/app/favicon.ico/route.js
@@ -1,142 +1 @@
-"use strict";
-(() => {
-var exports = {};
-exports.id = 155;
-exports.ids = [155];
-exports.modules = {
-
-/***/ 7783:
-/***/ ((module) => {
-
-module.exports = require("next/dist/compiled/@edge-runtime/cookies");
-
-/***/ }),
-
-/***/ 8530:
-/***/ ((module) => {
-
-module.exports = require("next/dist/compiled/@opentelemetry/api");
-
-/***/ }),
-
-/***/ 4426:
-/***/ ((module) => {
-
-module.exports = require("next/dist/compiled/chalk");
-
-/***/ }),
-
-/***/ 252:
-/***/ ((module) => {
-
-module.exports = require("next/dist/compiled/cookie");
-
-/***/ }),
-
-/***/ 2196:
-/***/ ((module) => {
-
-module.exports = require("next/dist/compiled/ua-parser-js");
-
-/***/ }),
-
-/***/ 4021:
-/***/ ((module) => {
-
-module.exports = import("next/dist/compiled/@vercel/og/index.node.js");;
-
-/***/ }),
-
-/***/ 8396:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-// ESM COMPAT FLAG
-__webpack_require__.r(__webpack_exports__);
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- "headerHooks": () => (/* binding */ headerHooks),
- "originalPathname": () => (/* binding */ originalPathname),
- "requestAsyncStorage": () => (/* binding */ requestAsyncStorage),
- "routeModule": () => (/* binding */ routeModule),
- "serverHooks": () => (/* binding */ serverHooks),
- "staticGenerationAsyncStorage": () => (/* binding */ staticGenerationAsyncStorage),
- "staticGenerationBailout": () => (/* binding */ staticGenerationBailout)
-});
-
-// NAMESPACE OBJECT: ./node_modules/next/dist/build/webpack/loaders/next-metadata-route-loader.js?page=%2Ffavicon.ico%2Froute&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js!./app/favicon.ico?__next_metadata
-var favicon_next_metadata_namespaceObject = {};
-__webpack_require__.r(favicon_next_metadata_namespaceObject);
-__webpack_require__.d(favicon_next_metadata_namespaceObject, {
- "GET": () => (GET),
- "dynamic": () => (dynamic)
-});
-
-// EXTERNAL MODULE: ./node_modules/next/dist/server/node-polyfill-headers.js
-var node_polyfill_headers = __webpack_require__(5387);
-// EXTERNAL MODULE: ./node_modules/next/dist/server/future/route-modules/app-route/module.js
-var app_route_module = __webpack_require__(9267);
-var module_default = /*#__PURE__*/__webpack_require__.n(app_route_module);
-// EXTERNAL MODULE: ./node_modules/next/server.js
-var server = __webpack_require__(4664);
-;// CONCATENATED MODULE: ./node_modules/next/dist/build/webpack/loaders/next-metadata-route-loader.js?page=%2Ffavicon.ico%2Froute&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js!./app/favicon.ico?__next_metadata
-
-
-const contentType = "image/x-icon"
-const buffer = Buffer.from("AAABAAMAEBAAAAEAIABoBAAANgAAACAgAAABACAAKBEAAJ4EAAAwMAAAAQAgAGgmAADGFQAAKAAAABAAAAAgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg1Ukx1stHl7asSdmmoF75uLcS+bGvQtmppyCXsbF9MQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOPGOQnCuEeaxL10/q6qjf9aW5L/S02N/29xb/+9vbz/3tzR/7a0k/6hnxea4+PGCQAAAAAAAAAAAAAAAOPGOQnFu0PCr9DM/+H7/v/8/v//9PT8/3N44/9qcPb/s7f0///////d3f//mZaR/3h9U8Jxxv8JAAAAAAAAAADHu0Sag6Ka/5Xj+/+k8v7/qfL+/936/v/+/v//h4rv/56h8///////+/v//83N9/9visX/Uaf6mgAAAADg1UkxpLF+/p7u/v9wvfL/kOP+/4bc/f+V7v3/u8bP/8yfqP/Trrv/8ufp/87X+f+Al+//oqX7/1+F7v4+h+8x4tVKl5i+sP+c7/7/cMD0/2S39v9swfj/ku78/8aWov/ZkZz/9NDT/9yzuP98lO3/FTvi/2Rt9P9MdOr/PX31l+LVS9mOsKj/lur9/3LJ/P94we3/Wanz/4Le+/+7Wmf/5be8//nq7P/bkZr/1czk/3R89/94qe7/Tn/r/zx7+tm4r0P6q9rv/4vW9/9uxv3/idb0/2Kx8v9gt/z/ilZt/6EyOf/KXmP/s1dq/5aU+P9zh+7/eNf0/1Cj9f87ePT6uK9E+qbq9f+Z3vb/d8n3/3/P8/93yvb/TJv4/0+F4f+OlbP/hcno/3fE7f9twez/eeH4/1iw8P9DiPr/U4Dr+uLVS9mXr47/m/D9/5br/f93zPr/cMf8/0+c9P9xwPL/eOT7/3Hi+/9r2vn/cOP7/1aw8P8/gPf/Pnz0/4WF+NnczkmXqKhc/42+zf+H1/b/eMv9/3PC/P9wt/z/XK37/1iw+/9Sp/v/Uqb3/02Q8v8+gPb/Pn/4/3SN7f+YkfeXjZKxMZiu7P6i2fP/pev6/5fk+P99xfj/fr76/1uo+/9PoPv/TJv7/0qX+f9IkvT/Uo3r/7/R9P/4+P/+29v/MQAAAAC00fOavfT+/5rb9f+V3PX/gMry/3C79P9oxvv/cN37/125+/9So/L/b9P6/3HU+f+MwvD//Pz9mgAAAAAAAAAA4///CbT3/8Kr9v//pvb//5DV8v93yfL/h9f2/3fp+/935vv/XK/y/4LZ9f981fP/cszvwlVxxgkAAAAAAAAAAAAAAACq//8JqfX/mqb2//6R4/r/b63t/1ye9f+C1/X/fOr7/2a/8v+Z8/7+nfX/mo7j/wkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACn9f8xit3/l12n/9lWn//5gaKB+ZG7p9mAyeeXp/X/MQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAACAAAABAAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdzEQPk4swWmNcIZuGg2LLnpqM6a+qiv2loxD9uLcS6by7Esu9vBCbtbMOWoiIEQ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADk10om49VLnePVS/Xj1Uv/49VL/+PVS//czkn/cGsg/8/OFv+3tRL/nJhP/7m2ev+opTf/qaUQ9aumcJ3d3bwmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADj41UJ49VLi+LUSvrSxEX/q6E4/4+GNv99d0H/dG9F/3hyQ/94cjH/RkQO/4iIDf+zsGf///////Tz7/+dmW7/1dO3/5WRLfqenA+Ljo4ACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA49VHJN/RSdSZkUL/oqCI/7y8vP/W1t7/qKro/1pg4v8dJeD/HCTj/yIs3P9udd//f4TB/2Rnmf/e3vL/9PT7//Py7v/V08b/mpig/6+sGP+Vkx/U4+O/JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODRRzLd0EnrgX1X/+/v7////////////////////////////9LU8/9JUNr/GSHY/1lf8v+jqf//hozw/+vr+f/////////////////Pz///kY15/8K/jf+EezfrR1xmMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADj1Uck49VL65GLNv+g4uz/q/P+/7f1/v/P+P7/8v3///////////////////r7/v9wdN3/QUfp/2pv//+co/r/wcPu////////////+fn//6ys//+Libv/h4OC/4Z1Df9oj7XratX4JAAAAAAAAAAAAAAAAAAAAAAAAAAA4+NVCePWS9Sglzr/VHCC/57t/v+m8/7/pfL+/6Ty/v+j8v7/wvb+//X9//////////////39/v90eeL/VVn8/3h++P/Exe//////////////////8fH+/7e39P+NjfD/fXiB/1qOzP9YtPrUceP/CQAAAAAAAAAAAAAAAAAAAADj1UuLoJg6/5W3uv+EzPL/br3z/6Hv/v+l8v7/pPL+/6Hx/v+e8f7/oPH9/+D6/v////////////j4/f9cYOP/Sk7p//Pz/P////////////////////////////Pz+v+foOb/RoHi/0qZ+f9TqfuLAAAAAAAAAAAAAAAA5NdKJtPGRfp9kYr/q/P+/5Pm/v9ipub/hNj+/6Xy/v+b6/7/f9X+/5nt/f+Y7/3/k+79/9T4/v/y6ev/yJ2k/7ODl/+ZbZP/5dLV//////////////////z8/v/Y3/r/7/L9/+Tk//+PlPn/Unvi/0WP9PpDlPgmAAAAAAAAAADj1UudiYM3/7nr8/+f8f7/ne7+/3vK9v9frO7/i9/+/3fQ/v90zf7/jeP9/5fv/f+R7v3/id3t/59baP/FipP/8dHU//bU1//Xpqz/yqGo///////3+f7/Rmno/xlE4v8hSeP/hY33/5GR//+Oj/7/WXnk/0GF8p0AAAAA3cxED+PVS/V/h17/tPT9/57w/v+h8v7/etL+/2Cm6P9rxf7/cMn+/3DH/P9+1v3/l+/9/5Dt/P+VlqT/6aaw/+ihq/+9eoT/9tTX//fV2P/mvcH/z6yy/8fR+P8ZROL/GUTi/xlE4v88Uev/fYLz/1Bw4v9Qdeb/O3rs9UR37g/j1Upa49VL/3+KaP+v8/3/m+/+/5jq/v+K3/7/Xaru/1qy+P9anuT/V6Ls/23G/f+U7v3/j+38/7eFkf/lmKT/+bjB/8VzgP/txcn/9tLW//bU1//Gj5b/6uz3/yZO4/8UOOL/EC3i/1Rg8v+Dg///VHHn/zt6+f8+fvr/PoD5WuPUSpvj1Uv/goNK/7Lz/f+c8P3/i+D+/5Pm/v9ht/j/RIPb/5jo+v9Pmen/Yrv9/4Te/f+N6fn/wHB8/9hzgv/rr7f/+e/x//vz9P/43+L/8MDF/9+vtf/jz9L/ydH5/05g7f9aZvL/b4Lt/2mI6P9hc+r/OHLx/zt6+v8/f/qb49ZLzN/SSv9jc2n/oNfy/5vw/f+W6v7/bsf+/2W//v9mp+P/nvH+/1ig6P9asf3/bMT9/43s+/+sXmr/qCk2/75ZZP/05OX///////PZ3P/RbHj/y2t2/9rBxv/Ozv//np7//4uN/f99sOj/jOz7/2ao6f86cen/O3j6/z5++szk1kvqnZQ1/7DZ3/+Fs+X/n+z8/4/k/v9wyP7/aMD8/3i/7P+d8P7/abDp/1Sp+/9XrP3/ftz8/5l8iv+ZICr/nyUu/6AyPv/KX2j/y15n/8xgaf+1T1v/o5nn/5ub//+QkP//bYHs/5vn+f9x5/r/VrD6/0qT5/86dvb/Pn376uPVS/+BgkX/vPT9/7zq+v+BtOf/ftP9/3LL/v9ux/7/dLvr/5zw/f+E2Pj/SZPr/1Km/f9Zrfz/YozM/5UvNP+fNDT/pT1F/8pcXf/KXmD/v1tj/45Sgv+Nj/v/jIz+/3iC9P9XiNv/arfo/2nX9P9YtPr/Spf4/zl15/89fPr/49VL/4GCRv+49P3/nO/8/7Ln+P96tuj/fdL8/3DI/v9ster/m/D9/4jf/f9ZoOf/UKP8/06e/P9Mmvz/YWOj/4Q4Tf+Ea5f/hJrH/4K15P+Lxez/h8Tr/1mN2P9tquT/f9Hx/4fp+v9pxe3/aNT0/0qY+v9Chfr/Qofl/zt28f/k1kvqnZQ1/63Y3v+Y7vz/l+/9/6Pu/P99xe7/dMTz/2m58f+N3vT/lO39/2e79/9Jkev/Spn8/0iT/P9Ihuj/isHs/6bw/P+P7fz/fur7/27b9v9bref/e+X5/3Lo+/9x5/r/buL6/0mX5f9Gj/r/P4D6/0KE+v9Xg+L/e4D06uPWS8zf0kr/cYBq/7Hz/f+X7/3/mfD9/5vw/f+I3v3/ftX8/3vL8f+I3/n/asH9/1Gd7/9GkPT/SYbo/5zg9v+H6/v/duf7/3To+/9z6Pv/XsD0/3Hn+/9y6Pv/cuj7/2/i+v9Xs+7/Pn/v/0GC+v8+fvr/QYP3/2p66/+Qiv/M49RKm+PVS/+8sT7/gJmT/6Px/f+Z8P3/mvD9/5rv/f92zv3/bMT9/2rC/f9kuv3/XLD8/0mT8f9isfD/fer7/3bl+/9t2Pv/dOj7/2jS+/9s2/v/cuj7/3Lo+/9p1vv/VKzx/z5/6P9Agvr/Pn/6/z59+v89cuf/jIn8/5SM/5vj1Upa49VL/+PVS/+wpTr/W29r/5fn+P+Z8P3/luz9/3XM/f9sxP3/aL/9/2+//P91vfz/Vqf8/1Wo+/9lw/v/Vqz7/2zW+/9o0Pv/TZ77/2DC+/9kyvr/Wqr3/z195/88e+v/PoD6/z1++v8/gPr/Pn3z/2d24f+Wjvn/nJP/Wt3MRA/QxEX1hoZI/4aiov+y3+f/ksLr/3u66v9zxfb/dc39/4zQ/f9xwv3/hcf8/4bE/P9xtvz/VqP7/1+l+/9Onfv/UKD7/0ya+/9IlPv/RY36/z6A7/9bkvH/Qob6/0CE+v8+gfr/P4H6/z5+8v92kOf/t7L5/5yV8PV3d90PAAAAAHV7n52BneL/k77q/7vy/P+l8v3/nvD9/4vZ9P9/z/H/ouL4/47Y/f+Cxfz/hsT8/3y7/P9Ypfv/bq/7/0+e+/9NnPv/TJn7/0mW+/9IlPv/SJL5/0iU+/9Ik/v/RpD6/0GH9v9OhOb/t8nu////////////5eL/nQAAAAAAAAAA8vL/JsTD/fqInOn/j7no/5rG7P++8vz/r/P9/6Dw/f+c7vz/fcjy/2mw9P+Fw/z/c7X1/1Om+v9Tpvv/UaT7/1Ci+/9PoPv/Tp77/06e+/9MmfX/SZPv/0aN6/8+fd7/haLg//n6/f///////////+Pi//rDvP8mAAAAAAAAAAAAAAAAqbD2i6LF7f/Z+v//oOj6/4XA6/+LwOv/hsHr/4DE7P93tOf/bcb8/2m4/P9ytO7/V6r7/2XH+/9t2Pv/Z8z7/1as+/9SpPr/VKf3/1So+/9kw/v/dN37/23Q+/9ZrvP/bJ3l/+nu+f//////////iwAAAAAAAAAAAAAAAAAAAAA5VcYJ2fn/1NL6//+r9v//rPb//6v2//+p9v//pvb//4a/6v+V7vz/cdD8/3Oy6/9rvvv/eOn7/3bo+/926Pv/dOT7/1mx+/9TpfL/T5nk/2fF+P9+6Pv/f+r7/37p+/902fv/aaXm//f4/dT///8JAAAAAAAAAAAAAAAAAAAAAAAAAADc+P8kyfr/66v2//+s9v//q/b//6j2//+l9v//er3q/6ft+/+A5vz/YKPp/5bY+/956fv/d+n7/3bo+/946fv/ctz7/1aq+/9fr+j/dMbu/2e46f9ov+v/eNr1/3/p+v974vjrXIDVJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACt9f8yq/b/66v2//+q9v//qPb//6X2//+Z6/v/h77q/4rs/P9yrun/dqzo/5bu/P936fv/d+n7/3np+/976fv/Ybz7/1mo6v+U8f7/mPT//5Ls/P9+zvH/ZKfj61eK1jIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACq+P8kq/f/1Kr2//+o9v//pPb//6D1//95w+z/ot/1/3Cp6f9RlvX/fbbp/5Dt+/946fv/een7/3zq+/9v0Pv/Wajr/5Pu/P+b9f//nPX//5z1/9Sc8f8kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACq//8Jqfb/i6f2//qk9v//oPX//4vh//9amen/UZLu/1Wc//9Okff/aKDm/5ro+f9/6vv/fer7/3bc+/9cqen/mvX//531//qg9v+Lqv//CQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqPj/JqT3/52f9v/1fc///2Gt//9Zov//U5f//1CU//9wx+3/WmVL/4Sytv+V7vz/fOL4/4C15fWm9f+dofj/JgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJnu/w9xwf9aYa3/m1mh/8tRlv/pZrj//WKPf/3f0UnpraM6y3aWlJuTzNVaRGZ3DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAAAABgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//gALSw0sReHAlIlRNG0yOimeDyMWztNfVxdTj4M/uta+E/oqHDf6hoA/upaQO1KemELSnpRCDq6sNTLy8DyKlpQ8RgIAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//0AE5dVJMeHUTHbf0UmxtKk85qOZNv+fljT/mZA0/5SMP/+Ri1T/XVor/8jHFf/FwxT/s7AS/6ShFP+npBn/qKUQ/7W0EebCwRGxs7MRdnhyCjG/v4AEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN/XSCDi1Uqe49RL4+LUSvrj1Uv/49VL/+PVS//j1Uv/49VL/+LUS//WyEb/SkcS/8nIFf/QzxX/yMcU/5OPMP/j4tD/1NK1/6mla/+OiRr/nJcO+pKMU+Ps7NKdv7ePIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAHm2U0U4tNLc+LUSvDi1Ev/281I/9LFRf/Lv0P/xblF/8G2R/++s0j/vLFJ/72ySP/BtUb/oJc3/0E/Dv+RkA//vr0T/6CcLf/r6uP///////n59v+vq4r/sa6H/+jn0P/Fwp7/iIUe8JmXDXOMjA0U//8AAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOPTTEDj1Uu31slG+qidOf+clEr/nZdg/5iUcP9vbnX/OTp7/xsfhv8WG5T/ExmV/xQZkf8dIYj/LjR7/z5AcP9HSGH/UVI7/2VjLv/Kyc///Pz+///////n5tz/uLWX/7i0lP+SjnD/mZUe/7i2EfqioA+3fX0MPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAB4tVLYuHTS+ijmjf+cm5R/8LBt//j4uD/6+vr//Ly8//s7Pb/3d73/56h6v89Q9f/HCTf/x0l5P8cJOD/HifZ/2Fo4P+jqfT/mqDn/32Cy/+bndP/0tLu/+Xl9f/7+/3/+Pj1//Dv6v/e3e7/mpm8/4uGIf+7uRL+ioY56Ojow2IAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANvbSQfk1kpx4NJK9JqRPP+OjYb/9vb2///////////////////////////////////////z8/z/lJfi/zE41v8dJd3/GSHX/0xR6v+WnP//qbD//5ui+f+go+r/+/z+///////////////////////8/P//s7P//3x3dP+JhD//ycaa/62ocfRdVhdxSW1tBwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAeTWSnHj1UrtoZg1/22Egf/N8PX/2Pn+/+H7/v/u/P7//f///////////////////////////////////9PU8/9hZtz/HSTU/z1C5P9nbP//mJ7//6Kp/P+Sl+r/8PD7///////////////////////x8f//ra3//4mGof+5to//q6dx/31wGf9iYTrteqnJcQD//wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4tVLYuPVS/Tj1Uv/TFAs/6Ho8/+n8/7/qPP+/6vz/v+v8/7/uvX+/+D6/v/8///////////////////////////////t7fr/am7Z/ysy1v9aXv//Zmv//6Kp/v+Kj+n/6er5//////////////////v7///Nzf//oKD//5ST7v+HhLD/f3yg/3ZpEf9zc0f/grfh9GvY+mIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAHj00xA5NVL6NLFRv+Bfjr/NU9j/6Hv/v+m8/7/pvP+/6bz/v+l8v7/pPL+/6Py/v+19P7/5Pv///n+////////////////////////+/v+/2lu3P9OU/P/V1v//3p//f+Ijen/6ur5///////////////////////+/v//29v8/6Gh8/+Vlfj/kpL6/4B8mP9eZ1j/ca7p/1av+uhp2/s/AP//AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAObZTRTj1Uu3zcBD/m5uQP+JrbL/W5TZ/3/R+f+f7f7/pvP+/6by/v+l8v7/pPL+/6Ly/v+g8f7/ofH+/7/1/v/q/P7//v///////////////////+jp+f9pbeL/Ulb5/1lc+v+Giuf/8vL7//////////////////////////////////f3/f/T0/H/ra3q/4aG2/9adK7/Upvx/0yd+v5Zt/m3Wb/yFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLTS3PYy0f6V1Qq/6bGy/+n7fz/fcTv/1ie5v+J3f7/o/D+/6by/v+l8v7/pPL+/6Ly/v+g8f7/nfD9/5rw/f+m8f3/4/v+//////////////////7+///P0PL/R0zf/09T8/+doOf//v7/////////////////////////////////////////////+Pj9/9HR9v9vguD/QHvh/0mW+P9Mnvr6Tp34cwAAAAAAAAAAAAAAAAAAAAAAAAAA39dIIOHTSvCOhzX/k6yq/7n1/v+h8v7/i9/+/1yb4P9twPb/leX+/6Xy/v+k8v7/n+/+/4zg/v+M4f7/nO/9/5nw/f+V7v3/le/9/9z5/v/8////+PP0/+TR1P/Koaf/hVaD/2lHkv/Yytn/+vf3/////////////////////////////f3///P1/f/z9f3//f3///b2//+ys///fIrv/0Vz2v9Fi/D/SZf68EiP/yAAAAAAAAAAAAAAAAD//0AE4tVKntDDRf93f17/uuXs/6Lx/v+h8v7/juH+/3/M9f9epef/eM78/57t/v+Y6f7/gNf+/3XO/v9/1v7/me39/5nw/f+V7v3/kO79/5Tu/P/D3OT/toKM/72Ejf/ftLr/5bzA/9iorv/FjZX/wpKa/+jY2//////////////////t8P3/mq3y/2iE7P9ohOz/lKfx/9fZ/f+np///lZX//4iO+P9YeuT/QYLr/0aR+p1AgP8EAAAAAAAAAADl1Ukx49RL47mvQ/9+lZX/s/L9/5/x/v+h8f7/n+/+/3fO/f9nq+f/aLz3/4HX/v980/7/dc7+/3XN/v93z/7/luv9/5jw/f+U7v3/j+79/4rk8/+Lf47/ql1p/7Jlcv/Ikpn/89PW//bV2P/00dT/573B/7Z5g//fyMz///////v8/v+QpfH/IUrj/xlE4v8ZROL/HETj/0td7P+Ulf//jo7//4yM//+JjPv/U3Tf/z1+7ONEjfoxAAAAAP//gALh1Ex24tRK+o6KPv+bu7//pvL9/57x/v+g8f7/ovL+/3/V/v9vvfP/V5/o/2zG/v9wyf7/csv+/3LK/f9yyv7/jOP9/5jw/f+U7v3/j+38/4vH1v+9gY3/6aOu/+igqv+9bnr/1aWr//bU1//31dj/99XY/+7Hy/+8hI3/7+Tm/+3w/f9Wdun/GUTi/xlE4v8ZROL/GUTi/yJA5f92evL/dH3s/2B26P9jeev/YHno/zVs2fpBhvl2AID/AuHSSxHk1Uux49VL/3h3PP+oztP/o/H9/5zw/v+b7f7/ofH+/5Hk/v9vx/3/To3e/2O+/f9mv/z/WqXs/1uo7f9ux/7/e9P9/5fv/f+T7v3/ju38/5CMm//bmKP/6J+q//e1v//poq3/qlxo//TQ1P/209f/9tTX//bU1//brLH/w5ad/+/y/f9dfOr/GUTi/xhC4v8VO+L/FDji/yA55v97fvv/gIP8/0ps3f82b+f/OXbu/z199f8/gvuxPHjwEejaSyLi1Uvm49VL/358Pf+jytD/ofH9/5zx/v+S5v7/nO7+/5vs/v9vyf7/Wp/n/1Om8v9Omuj/dbvr/0iK4P9pwv3/bMT9/5Ps/f+S7v3/ju38/5tjcf/noKv/5pmk//Svuv/zrLf/sFdl/+Cyt//20dX/9tLW//bT1v/00dT/rGhy//Tv8f+arvL/IErj/xU64v8RLuL/Dyri/0JS7v+Ghv//goL//3B79P85bub/O3r6/z19+v8+gPnmPID/IuHTSkzj1Uv/49VL/52XQf+PsbT/ovH9/5zw/f+W6v7/iN3+/5vt/v950f7/X7Dz/0KH4P9mq+b/mur7/0SE3f9ivP3/ZL39/4Da/f+R7v3/jOj3/6pea//cgI3/44qX/+6msP/01Nj/8uLl//Xq6//66On/9tPX//TLzv/1z9L/y5Oa/9a6vv/3+P7/hpvw/ydC5v8kPOb/RVTu/4CG+f9pfuv/cX7y/3N69v9Gb+b/OXb3/zt5+v89ffr/PID4TOLVS4Xj1Uv/49VL/6SeQP90kJ7/p/D8/5vw/f+d8P7/hdz+/37U/v9yy/7/YLn7/z1z0f+K1PP/nvH+/06N3f9asvv/X7b9/2zE/f+O6/3/jOf3/6hbaP/IXmz/vkVU/8hib//78/T/////////////////9d/i/92Nl//imqL/0o2V/8Wco///////1NT//5ye/f+Pkvz/j4///2eA5/+Cvur/dLrp/2SN4/9BbN//OXT2/zp4+v88fPr/P4D5hePVS7Xj1Uv/2cxI/01XTf9/qtj/rOb4/5rw/f+d8P3/len+/2/I/v9rxP7/ZL7+/02G2P+d7v3/nvH+/2et5/9PoPP/WbD9/1+2/f+A3P3/jO38/5VWZP+1SVX/picz/6wwPP/OhIz/9Obn///////9+vr/5a+1/9Bpdv/Ra3f/w2Fu/8SZof/v7///srL//56e//+UlP//g4f6/2SW3v+e7fv/eun6/2i69v9XkOH/OnPw/zp3+v88e/r/P3/5teTVS9fj1Uv/hHws/4yttP+cyu7/lcLr/6Lw/f+a7v3/kOX+/3HJ/v9txv7/Zb37/12c3/+e8f7/nPD+/4HP9P9Jken/Vaz9/1et/f9qw/z/iOr8/4p/jv+pQkz/nCEr/6AkLv+mKjX/mjNB/8hgav/NZG7/zF9q/81ha//NY23/rklW/6aNx/+lpf//nJz//5SU//+MjP//XXjk/5ra9P+J6/v/cef6/2PM+v9PmfX/PXrb/zt2+P88e/r/P3761+PVS/Lf0kr/TU4s/8Hv9v/D8vz/hLHl/4/H7v+N3/3/etH+/3LK/v9vyP7/acH8/16e4P+e8f7/nPD9/4LV+P9VnOf/Uqb6/1So/f9YrPz/dtP8/3yw0P+TO0n/mSYs/5wpLv+jMjn/nDQ//8lYXv/JWmD/ylxh/8tdYv/FWWD/lEVk/5qW9/+Wlv//kpL//42N//99hPf/bqDl/6Dw/P915/r/cef6/2jW+v9Chfr/UaXr/zZu5f88evr/Pn368uPVS//SxUb/V2JQ/8H1/f+08/3/w/D8/4Ow5f+FxvD/etH+/3PL/v9xyv7/bsb+/1eX3/+c8P7/m/D9/4rh/P9jquf/UJ/1/1Km/f9RpPz/Vaj8/1af8v9xUnz/lzEy/583Nf+ZMzn/t01Q/8tdXf/MX17/yGBh/7tdaP+bRVn/g2m4/4aL9f+LjP7/iYr+/3J/8P9Obtv/ToXW/1qW3P9VpOH/bd73/2fU+v8/f/r/Uab5/zt42v88evn/Pn36/+PVS//RxEX/WGNS/8H1/f+d7/z/rPH9/7/v+/+AsuX/gs3y/3rQ/f9zy/7/cMf+/12i5f+R4/j/mvD9/5Pp/f9wwPP/S5Dl/1Gl/f9Pofz/T5/8/02c/P9ShNv/ez9b/5U5PP+WQlH/oGZ//31xpP9kfMH/YJHY/22j4P91reP/dKzj/2GW2/9JedL/VYva/3e35/+R2/T/lez7/4Hh9/9dtef/bd73/1q4+v8+ffr/Ro76/0aR4P87d/P/PXr3/+PVS/Lf0Un/TU8t/7/v9v+m8f3/lO79/6Hw/f+r6vr/iMHr/3m/7P95zPj/csr9/2q68v99x+z/me/9/5Xt/f960vz/Vpvj/0qX8v9On/z/S5r8/0qY/P9IlPv/SnfV/15Vk/99lsj/i8Hq/5/f9f+k7vv/nfD8/5bv/P+M4Pb/eLfn/2605v980vL/hur7/3vp+v9y5/r/cef6/2XP8v9Nnef/Wrn6/0SJ+v8+fvr/Q4b6/0uV3/9IceX/UHTq8uTVS9fj1Uv/g3ss/4qrsP+08/3/lu79/5bu/f+a8P3/nu/8/5De9/93wO3/cb7v/3HG+v9tt+n/kuf4/5fv/f+A2P3/aL35/0eI3/9Mm/n/SZb8/0eS/P9BhO//V43f/6Ha9P+s7fv/le77/4Dq+/966fv/dun7/3Dh+P9Wquf/aczy/3Xm+v9z6Pv/cuj7/3Hn+v9x5/r/atn6/0yd4/9Ag/H/Qof6/0CA+v8+ffr/Roz6/0yH3v+Agvf/iIb71+PVS7Xj1Uv/2cxI/0xUQv+35ez/nvD9/5bu/f+Y8P3/mvD9/5vw/f+R5/3/gdj8/4bb+/96zvf/fMfq/4/n+/+F3v3/Zbv9/1mp8/9Eien/SJX7/0OK9P9gl+P/q+n5/5rv/P996vv/duf7/3Xo+/9z6Pv/c+j7/2XO9f9dvfL/cuf7/3Lo+/9y6Pv/cuj7/3Hm+v9q2vr/Wbbv/zl14f9Ch/r/QIL6/z9/+v8+ffr/SI/4/0xv3P+OiP//kIr/teLVS4Xj1Uv/49VL/6WdPf96j4f/tOz1/5jv/f+Y8P3/mvD9/5vw/f+b8P3/j+X9/3PL/f91zP3/d8z4/3jM9v9sw/3/Y7n9/1uv+/9LlO//Qonu/0iG4P+I1PX/h+z7/3rp+/915fv/cuH7/3To+/9z6Pv/cOL7/2DF+v9w4/v/cuj7/3Lo+/9y6Pv/cuj7/2jV+v9YtfH/P4Lg/0CD9/9Bg/r/P4D6/z59+v8+fPr/OnTo/2166/+Riv//kor/heHTSkzj1Uv/49VL/97QSf+Jgzj/f5iX/7Tz/f+Y8P3/mvD9/5rw/f+a8P3/mvD9/3/W/f9uxv3/a8P9/2nB/f9nvv3/Y7n9/16z/P9WqPv/SpX0/1ak8P953vv/fOr7/3jn+/9pz/v/ceD7/3Xo+/9y5Pv/W7n7/2zb+/9y6Pv/cuj7/3Lo+/9w5Pv/Xbz7/1Gn9f9BhuH/Pn/z/0CC+v8/gPr/Pn76/z5++v8+fPf/Q23c/4+L/f+Ujf//lI3/TOjaSyLj1Uvm49VL/+PVS//g0kr/d3Ao/2J3dv+b3ej/me/8/5rw/f+a8P3/mO79/33U/f9uxv3/a8P9/2nA/f9mvv3/a7z8/227/P9er/z/UqL8/1Ki/P9u0Pv/cdj7/1+7+/9ct/v/cuL7/3Hi+/9fv/v/TZz7/2TJ+/9v4Pv/bd37/2fM+v9Lmff/RY7t/zt53f87fPP/PoD6/z5/+v8+f/r/P4D6/0CA+f89c+X/d4Dt/5eP/P+Zkf7mnpb/IuHSSxHk1Uux49VL/9rNSP+flzn/h4lR/2R0a/93nrn/e73q/5Hg+P+L4v3/f9b9/3HI/f9zyP3/fcn9/2zB/f9tv/3/hcf8/4fF/P96vfz/Wqn8/1Cf/P9Tn/v/T577/1Cg+/9Vqfv/YsX7/1q0+/9Nnfv/SZX7/0mW+/9Nnfb/RIzt/1SK7f9Mgun/Onjq/z+A+P8+gPr/Pn/6/z1++v8+f/r/QYL6/z966/9keeH/jIbr/46G6/+Qh+6xlofwEf//gALf0kl2sKY6+mJjOP+MqaX/td3j/7vs8/+37Pn/rdv0/3yu5P9mqOT/e832/3zU/f+Bz/3/j9H9/33I/f90wv3/icj8/4fF/P+Ewfz/bLL8/1Sj+/9srfv/W6P7/02c+/9Onfv/Tp37/0ya+/9Jlvv/R5L7/0aP+/9Eivn/QYb3/1CO9/9Vk/n/Qof7/0GG+/8/g/r/P4L6/z+C+v9Ag/n/OXbl/3mU5P/Dwvv/zMn9/6+q+/qel/Z2gID/AgAAAAA5OSoxUV+H416F0/+Wwez/uOX4/7zz/P+l8v3/nPD9/6Dx/f+b5vn/eL/r/2626P+Fye7/n932/57j/f9/y/z/h8f8/4bF/P+Ewfz/d7j8/1Wk+/9vr/v/Z6r7/06d+/9Onfv/TJv7/0ya+/9Klvv/SJT7/0eS+/9Hkfv/R5H7/0eR+/9Hkfv/R5D7/0WO+/9Di/r/QYb4/0GC8v9ShOL/sMLr/////////////////+/u/+Osp/8xAAAAAAAAAAD///8E09P8nbi6+P+Wo+3/cJPe/4q35/+z4fb/u/T9/6vz/f+d8P3/mPD9/5fv/f+b7/3/q/D9/57l/f91xvv/gL/4/4bE/P+Ewfz/dLX4/1Ok+v9dqfv/XKj7/1Ci+/9QoPv/Tp77/02d+/9Mm/v/TJr7/0uZ+/9Kl/n/R5Dy/0WN8P9GjfD/Ro3w/0OI7v9Ihej/aJbo/5m06f/b4/X//f7/////////////9/b//+Df/56/v/8EAAAAAAAAAAAAAAAA9/f/IM/P/vCusvn/b5He/7fe9f+BruT/hrLm/8Hu+v/F9v7/ufT9/6ny/f+f8P3/lur8/3fB7/9Wn+n/cLf3/4bE/P+Dwfz/Za3t/1Sn+/9Up/v/VKb7/1Kl+/9RpPv/UKP7/1Ch+/9PoPv/T5/7/0+f+/9Qofv/T5/4/0+f9/9NmvP/SJLt/0KF4/9Rgtn/pbrn//n7/f/////////////////19P//zMn/8L+3/yAAAAAAAAAAAAAAAAAAAAAAAAAAALy8+3OIner6utz0/9r7///A9v7/kNTy/2yf3/91puH/hbXn/3+x5f9uo+D/Z6Xh/2Wh4P9vvfT/Zbz8/266/P9nrPX/gsLw/1eq+/9Yrfv/YL37/2fM+/9lyfv/W7b7/1Oo+/9RpPv/UaP7/1Ol+f9Tpvv/VKf7/1mw+/9s0fv/b9T7/2bF+/9asfn/SpTq/2OQ3v/T3vT//f3+///////////6//3/cwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHOM2RScvO231PT9/tr7///A+P//qvX//6r1/v+p7vz/oOT4/57n+v+l8v3/pvb//3Gv5f+Y3/j/g+P8/2zI/P9Qm+//ltT0/12v+/9nyfv/d+f7/3fp+/926Pv/dOX7/2rS+/9Zsvv/U6b6/1Ki8P9VpvH/Wa76/2C7+/975/v/fur7/33q+/965Pv/cNT6/2C59v9ineb/x9Xx//////7///+3////FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wHO8/s/2/v/6Nj7//+59///rPb//6z2//+s9v//q/b//6r2//+o9v//pfb//3q86v+e2vP/je38/3/j/P9WpfD/jcfv/3i//P9w2fv/eOn7/3bo+/926fv/duj7/3fo+/9t1/v/WK37/1Wo+f9NluT/S5Hd/2O88/912/v/f+n7/4Dq+/9/6vv/fun7/3zm+/9v0fj/WZPf/+fs+Oj///9A////AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2/z/YtX7//Sz9///rPb//6z2//+s9v//q/b//6n2//+n9v//pfb//47a9P+MwOr/lu78/4Pp/P9ow/j/ZqDi/5zV/P963/v/eOn7/3fp+/936Pv/duj7/3fp+/946fv/aMr7/1aq+/9ZrvL/Y7Hm/2ez5/9apeL/b8rw/3jb9v974fj/fub5/4Dp+/9/6vv/cdP19FuC1WIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AdD9/3Gu9v/tq/b//6z2//+r9v//q/b//6n2//+n9v//pPb//5np+/98t+f/p+r5/4Tr/P9/2vz/Vo3b/4zB7v+W5fz/e+n7/3fp+/936fv/d+n7/3jp+/956fv/eeb7/1y0+/9guvr/UZbe/5Tz//+O6Pr/eMjv/2686v9quen/aLjp/2W36P9mt+jteNv2cQD//wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALb//wes+P9xq/b/9Kv2//+r9v//qvb//6n2//+n9v//pPb//6D0//93vuv/ntPx/5bu/P+W6/z/VYze/1SO4v+e2fT/ke77/3fp+/936fv/eOn7/3jp+/966fv/fOr7/23P+/9ft/v/T5bf/5Ht/P+X9P//mPX//5j0//+U7fz/j+b6/4bZ9fRhmd1xbbbbBwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8BrPf/Yqv2/+ir9v/+qvb//6j2//+m9v//pPb//6H1//+W6/v/YZze/63n+P+l5/j/U4zi/1ac+f9dl+P/o9/2/4zt+/956fv/eOn7/3np+/966fv/fOr7/3jg+/9hufz/Upvh/47n+v+Z9f//mvX//5v1//+c9f/+m/X/6Jz1/2IA//8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKr3/z+q9/+3qfb/+qj2//+m9v//o/b//6H1//+d9f//fc71/2ad4v+DuOf/VZbw/1if//9PkvX/WZPl/47L7v+W7fv/fer7/3np+/976fv/fer7/3vk+/9oxfz/TpLe/5bx/f+b9f//nPX//531//qd9f+3m/P/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wGm8v8UqfT/c6j2//Cm9v//o/b//6D1//+d9f//e87//1uj9f9Ni+X/Vp36/1ac//9TmP//T5P7/02J6P96s+f/p+77/4fr+/976fv/fur7/3zm+/9uzPr/VZje/5r1//+c9f//nvX/8J30/3Om8v8U////AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ/3/yCm9/+do/b/45/1//qb8v//cL7//2Ku//9eqP//WKH//1SZ//9Rlf//UJP//2a4/P9Tj6X/V21n/53R1/+W6vb/hOv7/37n+/9mu+3/k8Tt+qP2/+Od9f+en/f/IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC///8EofX/MaD0/3aT6f+xbLn/5mKu//9dp///WJ///1OY//9Qk///Xan//3rX5v9yhVb/tKg7/3p7QP94l4//ouLr/5Xo9eZfocexsdrudsb6/zG///8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAID//wKH0v8Rabz/ImGr/0xdp/+DVqD/tFKY/9RRl//ue9z//mGdmf6nnzru49VL1NnMSLSKhjqDeZeXTKzo+CJah5YRgICAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", 'base64'
- )
-
-function GET() {
- return new server.NextResponse(buffer, {
- headers: {
- 'Content-Type': contentType,
- 'Cache-Control': "public, max-age=0, must-revalidate",
- },
- })
-}
-
-const dynamic = 'force-static'
-
-;// CONCATENATED MODULE: ./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?page=%2Ffavicon.ico%2Froute&name=app%2Ffavicon.ico%2Froute&pagePath=private-next-app-dir%2Ffavicon.ico&appDir=X%3A%5CSome%20Useful%20Stuff%5CApplications%5CWeb%5Cnext-sukadia.dev%5Capp&appPaths=%2Ffavicon.ico&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=!
-
-
-
-
-
-
-
- const routeModule = new (module_default())({
- userland: favicon_next_metadata_namespaceObject,
- pathname: "/favicon.ico",
- resolvedPagePath: "next-metadata-route-loader?page=%2Ffavicon.ico%2Froute&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js!X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\favicon.ico?__next_metadata",
- nextConfigOutput: undefined,
- })
-
- // Pull out the exports that we need to expose from the module. This should
- // be eliminated when we've moved the other routes to the new format. These
- // are used to hook into the route.
- const {
- requestAsyncStorage,
- staticGenerationAsyncStorage,
- serverHooks,
- headerHooks,
- staticGenerationBailout
- } = routeModule
-
- const originalPathname = "/favicon.ico/route"
-
-
-
-/***/ })
-
-};
-;
-
-// load runtime
-var __webpack_require__ = require("../../webpack-runtime.js");
-__webpack_require__.C(exports);
-var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
-var __webpack_exports__ = __webpack_require__.X(0, [405,572], () => (__webpack_exec__(8396)));
-module.exports = __webpack_exports__;
-
-})();
\ No newline at end of file
+"use strict";(()=>{var A={};A.id=155,A.ids=[155],A.modules={517:A=>{A.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},8837:(A,v,f)=>{f.r(v),f.d(v,{headerHooks:()=>t,originalPathname:()=>p,requestAsyncStorage:()=>j,routeModule:()=>L,serverHooks:()=>o,staticGenerationAsyncStorage:()=>u,staticGenerationBailout:()=>a});var P={};f.r(P),f.d(P,{GET:()=>GET,dynamic:()=>b});var r=f(884),n=f(6132),e=f(1057);let z=Buffer.from("AAABAAMAEBAAAAEAIABoBAAANgAAACAgAAABACAAKBEAAJ4EAAAwMAAAAQAgAGgmAADGFQAAKAAAABAAAAAgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADg1Ukx1stHl7asSdmmoF75uLcS+bGvQtmppyCXsbF9MQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOPGOQnCuEeaxL10/q6qjf9aW5L/S02N/29xb/+9vbz/3tzR/7a0k/6hnxea4+PGCQAAAAAAAAAAAAAAAOPGOQnFu0PCr9DM/+H7/v/8/v//9PT8/3N44/9qcPb/s7f0///////d3f//mZaR/3h9U8Jxxv8JAAAAAAAAAADHu0Sag6Ka/5Xj+/+k8v7/qfL+/936/v/+/v//h4rv/56h8///////+/v//83N9/9visX/Uaf6mgAAAADg1UkxpLF+/p7u/v9wvfL/kOP+/4bc/f+V7v3/u8bP/8yfqP/Trrv/8ufp/87X+f+Al+//oqX7/1+F7v4+h+8x4tVKl5i+sP+c7/7/cMD0/2S39v9swfj/ku78/8aWov/ZkZz/9NDT/9yzuP98lO3/FTvi/2Rt9P9MdOr/PX31l+LVS9mOsKj/lur9/3LJ/P94we3/Wanz/4Le+/+7Wmf/5be8//nq7P/bkZr/1czk/3R89/94qe7/Tn/r/zx7+tm4r0P6q9rv/4vW9/9uxv3/idb0/2Kx8v9gt/z/ilZt/6EyOf/KXmP/s1dq/5aU+P9zh+7/eNf0/1Cj9f87ePT6uK9E+qbq9f+Z3vb/d8n3/3/P8/93yvb/TJv4/0+F4f+OlbP/hcno/3fE7f9twez/eeH4/1iw8P9DiPr/U4Dr+uLVS9mXr47/m/D9/5br/f93zPr/cMf8/0+c9P9xwPL/eOT7/3Hi+/9r2vn/cOP7/1aw8P8/gPf/Pnz0/4WF+NnczkmXqKhc/42+zf+H1/b/eMv9/3PC/P9wt/z/XK37/1iw+/9Sp/v/Uqb3/02Q8v8+gPb/Pn/4/3SN7f+YkfeXjZKxMZiu7P6i2fP/pev6/5fk+P99xfj/fr76/1uo+/9PoPv/TJv7/0qX+f9IkvT/Uo3r/7/R9P/4+P/+29v/MQAAAAC00fOavfT+/5rb9f+V3PX/gMry/3C79P9oxvv/cN37/125+/9So/L/b9P6/3HU+f+MwvD//Pz9mgAAAAAAAAAA4///CbT3/8Kr9v//pvb//5DV8v93yfL/h9f2/3fp+/935vv/XK/y/4LZ9f981fP/cszvwlVxxgkAAAAAAAAAAAAAAACq//8JqfX/mqb2//6R4/r/b63t/1ye9f+C1/X/fOr7/2a/8v+Z8/7+nfX/mo7j/wkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACn9f8xit3/l12n/9lWn//5gaKB+ZG7p9mAyeeXp/X/MQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAACAAAABAAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADdzEQPk4swWmNcIZuGg2LLnpqM6a+qiv2loxD9uLcS6by7Esu9vBCbtbMOWoiIEQ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADk10om49VLnePVS/Xj1Uv/49VL/+PVS//czkn/cGsg/8/OFv+3tRL/nJhP/7m2ev+opTf/qaUQ9aumcJ3d3bwmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADj41UJ49VLi+LUSvrSxEX/q6E4/4+GNv99d0H/dG9F/3hyQ/94cjH/RkQO/4iIDf+zsGf///////Tz7/+dmW7/1dO3/5WRLfqenA+Ljo4ACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA49VHJN/RSdSZkUL/oqCI/7y8vP/W1t7/qKro/1pg4v8dJeD/HCTj/yIs3P9udd//f4TB/2Rnmf/e3vL/9PT7//Py7v/V08b/mpig/6+sGP+Vkx/U4+O/JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODRRzLd0EnrgX1X/+/v7////////////////////////////9LU8/9JUNr/GSHY/1lf8v+jqf//hozw/+vr+f/////////////////Pz///kY15/8K/jf+EezfrR1xmMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADj1Uck49VL65GLNv+g4uz/q/P+/7f1/v/P+P7/8v3///////////////////r7/v9wdN3/QUfp/2pv//+co/r/wcPu////////////+fn//6ys//+Libv/h4OC/4Z1Df9oj7XratX4JAAAAAAAAAAAAAAAAAAAAAAAAAAA4+NVCePWS9Sglzr/VHCC/57t/v+m8/7/pfL+/6Ty/v+j8v7/wvb+//X9//////////////39/v90eeL/VVn8/3h++P/Exe//////////////////8fH+/7e39P+NjfD/fXiB/1qOzP9YtPrUceP/CQAAAAAAAAAAAAAAAAAAAADj1UuLoJg6/5W3uv+EzPL/br3z/6Hv/v+l8v7/pPL+/6Hx/v+e8f7/oPH9/+D6/v////////////j4/f9cYOP/Sk7p//Pz/P////////////////////////////Pz+v+foOb/RoHi/0qZ+f9TqfuLAAAAAAAAAAAAAAAA5NdKJtPGRfp9kYr/q/P+/5Pm/v9ipub/hNj+/6Xy/v+b6/7/f9X+/5nt/f+Y7/3/k+79/9T4/v/y6ev/yJ2k/7ODl/+ZbZP/5dLV//////////////////z8/v/Y3/r/7/L9/+Tk//+PlPn/Unvi/0WP9PpDlPgmAAAAAAAAAADj1UudiYM3/7nr8/+f8f7/ne7+/3vK9v9frO7/i9/+/3fQ/v90zf7/jeP9/5fv/f+R7v3/id3t/59baP/FipP/8dHU//bU1//Xpqz/yqGo///////3+f7/Rmno/xlE4v8hSeP/hY33/5GR//+Oj/7/WXnk/0GF8p0AAAAA3cxED+PVS/V/h17/tPT9/57w/v+h8v7/etL+/2Cm6P9rxf7/cMn+/3DH/P9+1v3/l+/9/5Dt/P+VlqT/6aaw/+ihq/+9eoT/9tTX//fV2P/mvcH/z6yy/8fR+P8ZROL/GUTi/xlE4v88Uev/fYLz/1Bw4v9Qdeb/O3rs9UR37g/j1Upa49VL/3+KaP+v8/3/m+/+/5jq/v+K3/7/Xaru/1qy+P9anuT/V6Ls/23G/f+U7v3/j+38/7eFkf/lmKT/+bjB/8VzgP/txcn/9tLW//bU1//Gj5b/6uz3/yZO4/8UOOL/EC3i/1Rg8v+Dg///VHHn/zt6+f8+fvr/PoD5WuPUSpvj1Uv/goNK/7Lz/f+c8P3/i+D+/5Pm/v9ht/j/RIPb/5jo+v9Pmen/Yrv9/4Te/f+N6fn/wHB8/9hzgv/rr7f/+e/x//vz9P/43+L/8MDF/9+vtf/jz9L/ydH5/05g7f9aZvL/b4Lt/2mI6P9hc+r/OHLx/zt6+v8/f/qb49ZLzN/SSv9jc2n/oNfy/5vw/f+W6v7/bsf+/2W//v9mp+P/nvH+/1ig6P9asf3/bMT9/43s+/+sXmr/qCk2/75ZZP/05OX///////PZ3P/RbHj/y2t2/9rBxv/Ozv//np7//4uN/f99sOj/jOz7/2ao6f86cen/O3j6/z5++szk1kvqnZQ1/7DZ3/+Fs+X/n+z8/4/k/v9wyP7/aMD8/3i/7P+d8P7/abDp/1Sp+/9XrP3/ftz8/5l8iv+ZICr/nyUu/6AyPv/KX2j/y15n/8xgaf+1T1v/o5nn/5ub//+QkP//bYHs/5vn+f9x5/r/VrD6/0qT5/86dvb/Pn376uPVS/+BgkX/vPT9/7zq+v+BtOf/ftP9/3LL/v9ux/7/dLvr/5zw/f+E2Pj/SZPr/1Km/f9Zrfz/YozM/5UvNP+fNDT/pT1F/8pcXf/KXmD/v1tj/45Sgv+Nj/v/jIz+/3iC9P9XiNv/arfo/2nX9P9YtPr/Spf4/zl15/89fPr/49VL/4GCRv+49P3/nO/8/7Ln+P96tuj/fdL8/3DI/v9ster/m/D9/4jf/f9ZoOf/UKP8/06e/P9Mmvz/YWOj/4Q4Tf+Ea5f/hJrH/4K15P+Lxez/h8Tr/1mN2P9tquT/f9Hx/4fp+v9pxe3/aNT0/0qY+v9Chfr/Qofl/zt28f/k1kvqnZQ1/63Y3v+Y7vz/l+/9/6Pu/P99xe7/dMTz/2m58f+N3vT/lO39/2e79/9Jkev/Spn8/0iT/P9Ihuj/isHs/6bw/P+P7fz/fur7/27b9v9bref/e+X5/3Lo+/9x5/r/buL6/0mX5f9Gj/r/P4D6/0KE+v9Xg+L/e4D06uPWS8zf0kr/cYBq/7Hz/f+X7/3/mfD9/5vw/f+I3v3/ftX8/3vL8f+I3/n/asH9/1Gd7/9GkPT/SYbo/5zg9v+H6/v/duf7/3To+/9z6Pv/XsD0/3Hn+/9y6Pv/cuj7/2/i+v9Xs+7/Pn/v/0GC+v8+fvr/QYP3/2p66/+Qiv/M49RKm+PVS/+8sT7/gJmT/6Px/f+Z8P3/mvD9/5rv/f92zv3/bMT9/2rC/f9kuv3/XLD8/0mT8f9isfD/fer7/3bl+/9t2Pv/dOj7/2jS+/9s2/v/cuj7/3Lo+/9p1vv/VKzx/z5/6P9Agvr/Pn/6/z59+v89cuf/jIn8/5SM/5vj1Upa49VL/+PVS/+wpTr/W29r/5fn+P+Z8P3/luz9/3XM/f9sxP3/aL/9/2+//P91vfz/Vqf8/1Wo+/9lw/v/Vqz7/2zW+/9o0Pv/TZ77/2DC+/9kyvr/Wqr3/z195/88e+v/PoD6/z1++v8/gPr/Pn3z/2d24f+Wjvn/nJP/Wt3MRA/QxEX1hoZI/4aiov+y3+f/ksLr/3u66v9zxfb/dc39/4zQ/f9xwv3/hcf8/4bE/P9xtvz/VqP7/1+l+/9Onfv/UKD7/0ya+/9IlPv/RY36/z6A7/9bkvH/Qob6/0CE+v8+gfr/P4H6/z5+8v92kOf/t7L5/5yV8PV3d90PAAAAAHV7n52BneL/k77q/7vy/P+l8v3/nvD9/4vZ9P9/z/H/ouL4/47Y/f+Cxfz/hsT8/3y7/P9Ypfv/bq/7/0+e+/9NnPv/TJn7/0mW+/9IlPv/SJL5/0iU+/9Ik/v/RpD6/0GH9v9OhOb/t8nu////////////5eL/nQAAAAAAAAAA8vL/JsTD/fqInOn/j7no/5rG7P++8vz/r/P9/6Dw/f+c7vz/fcjy/2mw9P+Fw/z/c7X1/1Om+v9Tpvv/UaT7/1Ci+/9PoPv/Tp77/06e+/9MmfX/SZPv/0aN6/8+fd7/haLg//n6/f///////////+Pi//rDvP8mAAAAAAAAAAAAAAAAqbD2i6LF7f/Z+v//oOj6/4XA6/+LwOv/hsHr/4DE7P93tOf/bcb8/2m4/P9ytO7/V6r7/2XH+/9t2Pv/Z8z7/1as+/9SpPr/VKf3/1So+/9kw/v/dN37/23Q+/9ZrvP/bJ3l/+nu+f//////////iwAAAAAAAAAAAAAAAAAAAAA5VcYJ2fn/1NL6//+r9v//rPb//6v2//+p9v//pvb//4a/6v+V7vz/cdD8/3Oy6/9rvvv/eOn7/3bo+/926Pv/dOT7/1mx+/9TpfL/T5nk/2fF+P9+6Pv/f+r7/37p+/902fv/aaXm//f4/dT///8JAAAAAAAAAAAAAAAAAAAAAAAAAADc+P8kyfr/66v2//+s9v//q/b//6j2//+l9v//er3q/6ft+/+A5vz/YKPp/5bY+/956fv/d+n7/3bo+/946fv/ctz7/1aq+/9fr+j/dMbu/2e46f9ov+v/eNr1/3/p+v974vjrXIDVJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACt9f8yq/b/66v2//+q9v//qPb//6X2//+Z6/v/h77q/4rs/P9yrun/dqzo/5bu/P936fv/d+n7/3np+/976fv/Ybz7/1mo6v+U8f7/mPT//5Ls/P9+zvH/ZKfj61eK1jIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACq+P8kq/f/1Kr2//+o9v//pPb//6D1//95w+z/ot/1/3Cp6f9RlvX/fbbp/5Dt+/946fv/een7/3zq+/9v0Pv/Wajr/5Pu/P+b9f//nPX//5z1/9Sc8f8kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACq//8Jqfb/i6f2//qk9v//oPX//4vh//9amen/UZLu/1Wc//9Okff/aKDm/5ro+f9/6vv/fer7/3bc+/9cqen/mvX//531//qg9v+Lqv//CQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqPj/JqT3/52f9v/1fc///2Gt//9Zov//U5f//1CU//9wx+3/WmVL/4Sytv+V7vz/fOL4/4C15fWm9f+dofj/JgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJnu/w9xwf9aYa3/m1mh/8tRlv/pZrj//WKPf/3f0UnpraM6y3aWlJuTzNVaRGZ3DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAAAABgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//gALSw0sReHAlIlRNG0yOimeDyMWztNfVxdTj4M/uta+E/oqHDf6hoA/upaQO1KemELSnpRCDq6sNTLy8DyKlpQ8RgIAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//0AE5dVJMeHUTHbf0UmxtKk85qOZNv+fljT/mZA0/5SMP/+Ri1T/XVor/8jHFf/FwxT/s7AS/6ShFP+npBn/qKUQ/7W0EebCwRGxs7MRdnhyCjG/v4AEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN/XSCDi1Uqe49RL4+LUSvrj1Uv/49VL/+PVS//j1Uv/49VL/+LUS//WyEb/SkcS/8nIFf/QzxX/yMcU/5OPMP/j4tD/1NK1/6mla/+OiRr/nJcO+pKMU+Ps7NKdv7ePIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAHm2U0U4tNLc+LUSvDi1Ev/281I/9LFRf/Lv0P/xblF/8G2R/++s0j/vLFJ/72ySP/BtUb/oJc3/0E/Dv+RkA//vr0T/6CcLf/r6uP///////n59v+vq4r/sa6H/+jn0P/Fwp7/iIUe8JmXDXOMjA0U//8AAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOPTTEDj1Uu31slG+qidOf+clEr/nZdg/5iUcP9vbnX/OTp7/xsfhv8WG5T/ExmV/xQZkf8dIYj/LjR7/z5AcP9HSGH/UVI7/2VjLv/Kyc///Pz+///////n5tz/uLWX/7i0lP+SjnD/mZUe/7i2EfqioA+3fX0MPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAB4tVLYuHTS+ijmjf+cm5R/8LBt//j4uD/6+vr//Ly8//s7Pb/3d73/56h6v89Q9f/HCTf/x0l5P8cJOD/HifZ/2Fo4P+jqfT/mqDn/32Cy/+bndP/0tLu/+Xl9f/7+/3/+Pj1//Dv6v/e3e7/mpm8/4uGIf+7uRL+ioY56Ojow2IAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANvbSQfk1kpx4NJK9JqRPP+OjYb/9vb2///////////////////////////////////////z8/z/lJfi/zE41v8dJd3/GSHX/0xR6v+WnP//qbD//5ui+f+go+r/+/z+///////////////////////8/P//s7P//3x3dP+JhD//ycaa/62ocfRdVhdxSW1tBwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAeTWSnHj1UrtoZg1/22Egf/N8PX/2Pn+/+H7/v/u/P7//f///////////////////////////////////9PU8/9hZtz/HSTU/z1C5P9nbP//mJ7//6Kp/P+Sl+r/8PD7///////////////////////x8f//ra3//4mGof+5to//q6dx/31wGf9iYTrteqnJcQD//wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4tVLYuPVS/Tj1Uv/TFAs/6Ho8/+n8/7/qPP+/6vz/v+v8/7/uvX+/+D6/v/8///////////////////////////////t7fr/am7Z/ysy1v9aXv//Zmv//6Kp/v+Kj+n/6er5//////////////////v7///Nzf//oKD//5ST7v+HhLD/f3yg/3ZpEf9zc0f/grfh9GvY+mIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAHj00xA5NVL6NLFRv+Bfjr/NU9j/6Hv/v+m8/7/pvP+/6bz/v+l8v7/pPL+/6Py/v+19P7/5Pv///n+////////////////////////+/v+/2lu3P9OU/P/V1v//3p//f+Ijen/6ur5///////////////////////+/v//29v8/6Gh8/+Vlfj/kpL6/4B8mP9eZ1j/ca7p/1av+uhp2/s/AP//AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAObZTRTj1Uu3zcBD/m5uQP+JrbL/W5TZ/3/R+f+f7f7/pvP+/6by/v+l8v7/pPL+/6Ly/v+g8f7/ofH+/7/1/v/q/P7//v///////////////////+jp+f9pbeL/Ulb5/1lc+v+Giuf/8vL7//////////////////////////////////f3/f/T0/H/ra3q/4aG2/9adK7/Upvx/0yd+v5Zt/m3Wb/yFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLTS3PYy0f6V1Qq/6bGy/+n7fz/fcTv/1ie5v+J3f7/o/D+/6by/v+l8v7/pPL+/6Ly/v+g8f7/nfD9/5rw/f+m8f3/4/v+//////////////////7+///P0PL/R0zf/09T8/+doOf//v7/////////////////////////////////////////////+Pj9/9HR9v9vguD/QHvh/0mW+P9Mnvr6Tp34cwAAAAAAAAAAAAAAAAAAAAAAAAAA39dIIOHTSvCOhzX/k6yq/7n1/v+h8v7/i9/+/1yb4P9twPb/leX+/6Xy/v+k8v7/n+/+/4zg/v+M4f7/nO/9/5nw/f+V7v3/le/9/9z5/v/8////+PP0/+TR1P/Koaf/hVaD/2lHkv/Yytn/+vf3/////////////////////////////f3///P1/f/z9f3//f3///b2//+ys///fIrv/0Vz2v9Fi/D/SZf68EiP/yAAAAAAAAAAAAAAAAD//0AE4tVKntDDRf93f17/uuXs/6Lx/v+h8v7/juH+/3/M9f9epef/eM78/57t/v+Y6f7/gNf+/3XO/v9/1v7/me39/5nw/f+V7v3/kO79/5Tu/P/D3OT/toKM/72Ejf/ftLr/5bzA/9iorv/FjZX/wpKa/+jY2//////////////////t8P3/mq3y/2iE7P9ohOz/lKfx/9fZ/f+np///lZX//4iO+P9YeuT/QYLr/0aR+p1AgP8EAAAAAAAAAADl1Ukx49RL47mvQ/9+lZX/s/L9/5/x/v+h8f7/n+/+/3fO/f9nq+f/aLz3/4HX/v980/7/dc7+/3XN/v93z/7/luv9/5jw/f+U7v3/j+79/4rk8/+Lf47/ql1p/7Jlcv/Ikpn/89PW//bV2P/00dT/573B/7Z5g//fyMz///////v8/v+QpfH/IUrj/xlE4v8ZROL/HETj/0td7P+Ulf//jo7//4yM//+JjPv/U3Tf/z1+7ONEjfoxAAAAAP//gALh1Ex24tRK+o6KPv+bu7//pvL9/57x/v+g8f7/ovL+/3/V/v9vvfP/V5/o/2zG/v9wyf7/csv+/3LK/f9yyv7/jOP9/5jw/f+U7v3/j+38/4vH1v+9gY3/6aOu/+igqv+9bnr/1aWr//bU1//31dj/99XY/+7Hy/+8hI3/7+Tm/+3w/f9Wdun/GUTi/xlE4v8ZROL/GUTi/yJA5f92evL/dH3s/2B26P9jeev/YHno/zVs2fpBhvl2AID/AuHSSxHk1Uux49VL/3h3PP+oztP/o/H9/5zw/v+b7f7/ofH+/5Hk/v9vx/3/To3e/2O+/f9mv/z/WqXs/1uo7f9ux/7/e9P9/5fv/f+T7v3/ju38/5CMm//bmKP/6J+q//e1v//poq3/qlxo//TQ1P/209f/9tTX//bU1//brLH/w5ad/+/y/f9dfOr/GUTi/xhC4v8VO+L/FDji/yA55v97fvv/gIP8/0ps3f82b+f/OXbu/z199f8/gvuxPHjwEejaSyLi1Uvm49VL/358Pf+jytD/ofH9/5zx/v+S5v7/nO7+/5vs/v9vyf7/Wp/n/1Om8v9Omuj/dbvr/0iK4P9pwv3/bMT9/5Ps/f+S7v3/ju38/5tjcf/noKv/5pmk//Svuv/zrLf/sFdl/+Cyt//20dX/9tLW//bT1v/00dT/rGhy//Tv8f+arvL/IErj/xU64v8RLuL/Dyri/0JS7v+Ghv//goL//3B79P85bub/O3r6/z19+v8+gPnmPID/IuHTSkzj1Uv/49VL/52XQf+PsbT/ovH9/5zw/f+W6v7/iN3+/5vt/v950f7/X7Dz/0KH4P9mq+b/mur7/0SE3f9ivP3/ZL39/4Da/f+R7v3/jOj3/6pea//cgI3/44qX/+6msP/01Nj/8uLl//Xq6//66On/9tPX//TLzv/1z9L/y5Oa/9a6vv/3+P7/hpvw/ydC5v8kPOb/RVTu/4CG+f9pfuv/cX7y/3N69v9Gb+b/OXb3/zt5+v89ffr/PID4TOLVS4Xj1Uv/49VL/6SeQP90kJ7/p/D8/5vw/f+d8P7/hdz+/37U/v9yy/7/YLn7/z1z0f+K1PP/nvH+/06N3f9asvv/X7b9/2zE/f+O6/3/jOf3/6hbaP/IXmz/vkVU/8hib//78/T/////////////////9d/i/92Nl//imqL/0o2V/8Wco///////1NT//5ye/f+Pkvz/j4///2eA5/+Cvur/dLrp/2SN4/9BbN//OXT2/zp4+v88fPr/P4D5hePVS7Xj1Uv/2cxI/01XTf9/qtj/rOb4/5rw/f+d8P3/len+/2/I/v9rxP7/ZL7+/02G2P+d7v3/nvH+/2et5/9PoPP/WbD9/1+2/f+A3P3/jO38/5VWZP+1SVX/picz/6wwPP/OhIz/9Obn///////9+vr/5a+1/9Bpdv/Ra3f/w2Fu/8SZof/v7///srL//56e//+UlP//g4f6/2SW3v+e7fv/eun6/2i69v9XkOH/OnPw/zp3+v88e/r/P3/5teTVS9fj1Uv/hHws/4yttP+cyu7/lcLr/6Lw/f+a7v3/kOX+/3HJ/v9txv7/Zb37/12c3/+e8f7/nPD+/4HP9P9Jken/Vaz9/1et/f9qw/z/iOr8/4p/jv+pQkz/nCEr/6AkLv+mKjX/mjNB/8hgav/NZG7/zF9q/81ha//NY23/rklW/6aNx/+lpf//nJz//5SU//+MjP//XXjk/5ra9P+J6/v/cef6/2PM+v9PmfX/PXrb/zt2+P88e/r/P3761+PVS/Lf0kr/TU4s/8Hv9v/D8vz/hLHl/4/H7v+N3/3/etH+/3LK/v9vyP7/acH8/16e4P+e8f7/nPD9/4LV+P9VnOf/Uqb6/1So/f9YrPz/dtP8/3yw0P+TO0n/mSYs/5wpLv+jMjn/nDQ//8lYXv/JWmD/ylxh/8tdYv/FWWD/lEVk/5qW9/+Wlv//kpL//42N//99hPf/bqDl/6Dw/P915/r/cef6/2jW+v9Chfr/UaXr/zZu5f88evr/Pn368uPVS//SxUb/V2JQ/8H1/f+08/3/w/D8/4Ow5f+FxvD/etH+/3PL/v9xyv7/bsb+/1eX3/+c8P7/m/D9/4rh/P9jquf/UJ/1/1Km/f9RpPz/Vaj8/1af8v9xUnz/lzEy/583Nf+ZMzn/t01Q/8tdXf/MX17/yGBh/7tdaP+bRVn/g2m4/4aL9f+LjP7/iYr+/3J/8P9Obtv/ToXW/1qW3P9VpOH/bd73/2fU+v8/f/r/Uab5/zt42v88evn/Pn36/+PVS//RxEX/WGNS/8H1/f+d7/z/rPH9/7/v+/+AsuX/gs3y/3rQ/f9zy/7/cMf+/12i5f+R4/j/mvD9/5Pp/f9wwPP/S5Dl/1Gl/f9Pofz/T5/8/02c/P9ShNv/ez9b/5U5PP+WQlH/oGZ//31xpP9kfMH/YJHY/22j4P91reP/dKzj/2GW2/9JedL/VYva/3e35/+R2/T/lez7/4Hh9/9dtef/bd73/1q4+v8+ffr/Ro76/0aR4P87d/P/PXr3/+PVS/Lf0Un/TU8t/7/v9v+m8f3/lO79/6Hw/f+r6vr/iMHr/3m/7P95zPj/csr9/2q68v99x+z/me/9/5Xt/f960vz/Vpvj/0qX8v9On/z/S5r8/0qY/P9IlPv/SnfV/15Vk/99lsj/i8Hq/5/f9f+k7vv/nfD8/5bv/P+M4Pb/eLfn/2605v980vL/hur7/3vp+v9y5/r/cef6/2XP8v9Nnef/Wrn6/0SJ+v8+fvr/Q4b6/0uV3/9IceX/UHTq8uTVS9fj1Uv/g3ss/4qrsP+08/3/lu79/5bu/f+a8P3/nu/8/5De9/93wO3/cb7v/3HG+v9tt+n/kuf4/5fv/f+A2P3/aL35/0eI3/9Mm/n/SZb8/0eS/P9BhO//V43f/6Ha9P+s7fv/le77/4Dq+/966fv/dun7/3Dh+P9Wquf/aczy/3Xm+v9z6Pv/cuj7/3Hn+v9x5/r/atn6/0yd4/9Ag/H/Qof6/0CA+v8+ffr/Roz6/0yH3v+Agvf/iIb71+PVS7Xj1Uv/2cxI/0xUQv+35ez/nvD9/5bu/f+Y8P3/mvD9/5vw/f+R5/3/gdj8/4bb+/96zvf/fMfq/4/n+/+F3v3/Zbv9/1mp8/9Eien/SJX7/0OK9P9gl+P/q+n5/5rv/P996vv/duf7/3Xo+/9z6Pv/c+j7/2XO9f9dvfL/cuf7/3Lo+/9y6Pv/cuj7/3Hm+v9q2vr/Wbbv/zl14f9Ch/r/QIL6/z9/+v8+ffr/SI/4/0xv3P+OiP//kIr/teLVS4Xj1Uv/49VL/6WdPf96j4f/tOz1/5jv/f+Y8P3/mvD9/5vw/f+b8P3/j+X9/3PL/f91zP3/d8z4/3jM9v9sw/3/Y7n9/1uv+/9LlO//Qonu/0iG4P+I1PX/h+z7/3rp+/915fv/cuH7/3To+/9z6Pv/cOL7/2DF+v9w4/v/cuj7/3Lo+/9y6Pv/cuj7/2jV+v9YtfH/P4Lg/0CD9/9Bg/r/P4D6/z59+v8+fPr/OnTo/2166/+Riv//kor/heHTSkzj1Uv/49VL/97QSf+Jgzj/f5iX/7Tz/f+Y8P3/mvD9/5rw/f+a8P3/mvD9/3/W/f9uxv3/a8P9/2nB/f9nvv3/Y7n9/16z/P9WqPv/SpX0/1ak8P953vv/fOr7/3jn+/9pz/v/ceD7/3Xo+/9y5Pv/W7n7/2zb+/9y6Pv/cuj7/3Lo+/9w5Pv/Xbz7/1Gn9f9BhuH/Pn/z/0CC+v8/gPr/Pn76/z5++v8+fPf/Q23c/4+L/f+Ujf//lI3/TOjaSyLj1Uvm49VL/+PVS//g0kr/d3Ao/2J3dv+b3ej/me/8/5rw/f+a8P3/mO79/33U/f9uxv3/a8P9/2nA/f9mvv3/a7z8/227/P9er/z/UqL8/1Ki/P9u0Pv/cdj7/1+7+/9ct/v/cuL7/3Hi+/9fv/v/TZz7/2TJ+/9v4Pv/bd37/2fM+v9Lmff/RY7t/zt53f87fPP/PoD6/z5/+v8+f/r/P4D6/0CA+f89c+X/d4Dt/5eP/P+Zkf7mnpb/IuHSSxHk1Uux49VL/9rNSP+flzn/h4lR/2R0a/93nrn/e73q/5Hg+P+L4v3/f9b9/3HI/f9zyP3/fcn9/2zB/f9tv/3/hcf8/4fF/P96vfz/Wqn8/1Cf/P9Tn/v/T577/1Cg+/9Vqfv/YsX7/1q0+/9Nnfv/SZX7/0mW+/9Nnfb/RIzt/1SK7f9Mgun/Onjq/z+A+P8+gPr/Pn/6/z1++v8+f/r/QYL6/z966/9keeH/jIbr/46G6/+Qh+6xlofwEf//gALf0kl2sKY6+mJjOP+MqaX/td3j/7vs8/+37Pn/rdv0/3yu5P9mqOT/e832/3zU/f+Bz/3/j9H9/33I/f90wv3/icj8/4fF/P+Ewfz/bLL8/1Sj+/9srfv/W6P7/02c+/9Onfv/Tp37/0ya+/9Jlvv/R5L7/0aP+/9Eivn/QYb3/1CO9/9Vk/n/Qof7/0GG+/8/g/r/P4L6/z+C+v9Ag/n/OXbl/3mU5P/Dwvv/zMn9/6+q+/qel/Z2gID/AgAAAAA5OSoxUV+H416F0/+Wwez/uOX4/7zz/P+l8v3/nPD9/6Dx/f+b5vn/eL/r/2626P+Fye7/n932/57j/f9/y/z/h8f8/4bF/P+Ewfz/d7j8/1Wk+/9vr/v/Z6r7/06d+/9Onfv/TJv7/0ya+/9Klvv/SJT7/0eS+/9Hkfv/R5H7/0eR+/9Hkfv/R5D7/0WO+/9Di/r/QYb4/0GC8v9ShOL/sMLr/////////////////+/u/+Osp/8xAAAAAAAAAAD///8E09P8nbi6+P+Wo+3/cJPe/4q35/+z4fb/u/T9/6vz/f+d8P3/mPD9/5fv/f+b7/3/q/D9/57l/f91xvv/gL/4/4bE/P+Ewfz/dLX4/1Ok+v9dqfv/XKj7/1Ci+/9QoPv/Tp77/02d+/9Mm/v/TJr7/0uZ+/9Kl/n/R5Dy/0WN8P9GjfD/Ro3w/0OI7v9Ihej/aJbo/5m06f/b4/X//f7/////////////9/b//+Df/56/v/8EAAAAAAAAAAAAAAAA9/f/IM/P/vCusvn/b5He/7fe9f+BruT/hrLm/8Hu+v/F9v7/ufT9/6ny/f+f8P3/lur8/3fB7/9Wn+n/cLf3/4bE/P+Dwfz/Za3t/1Sn+/9Up/v/VKb7/1Kl+/9RpPv/UKP7/1Ch+/9PoPv/T5/7/0+f+/9Qofv/T5/4/0+f9/9NmvP/SJLt/0KF4/9Rgtn/pbrn//n7/f/////////////////19P//zMn/8L+3/yAAAAAAAAAAAAAAAAAAAAAAAAAAALy8+3OIner6utz0/9r7///A9v7/kNTy/2yf3/91puH/hbXn/3+x5f9uo+D/Z6Xh/2Wh4P9vvfT/Zbz8/266/P9nrPX/gsLw/1eq+/9Yrfv/YL37/2fM+/9lyfv/W7b7/1Oo+/9RpPv/UaP7/1Ol+f9Tpvv/VKf7/1mw+/9s0fv/b9T7/2bF+/9asfn/SpTq/2OQ3v/T3vT//f3+///////////6//3/cwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHOM2RScvO231PT9/tr7///A+P//qvX//6r1/v+p7vz/oOT4/57n+v+l8v3/pvb//3Gv5f+Y3/j/g+P8/2zI/P9Qm+//ltT0/12v+/9nyfv/d+f7/3fp+/926Pv/dOX7/2rS+/9Zsvv/U6b6/1Ki8P9VpvH/Wa76/2C7+/975/v/fur7/33q+/965Pv/cNT6/2C59v9ineb/x9Xx//////7///+3////FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wHO8/s/2/v/6Nj7//+59///rPb//6z2//+s9v//q/b//6r2//+o9v//pfb//3q86v+e2vP/je38/3/j/P9WpfD/jcfv/3i//P9w2fv/eOn7/3bo+/926fv/duj7/3fo+/9t1/v/WK37/1Wo+f9NluT/S5Hd/2O88/912/v/f+n7/4Dq+/9/6vv/fun7/3zm+/9v0fj/WZPf/+fs+Oj///9A////AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2/z/YtX7//Sz9///rPb//6z2//+s9v//q/b//6n2//+n9v//pfb//47a9P+MwOr/lu78/4Pp/P9ow/j/ZqDi/5zV/P963/v/eOn7/3fp+/936Pv/duj7/3fp+/946fv/aMr7/1aq+/9ZrvL/Y7Hm/2ez5/9apeL/b8rw/3jb9v974fj/fub5/4Dp+/9/6vv/cdP19FuC1WIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AdD9/3Gu9v/tq/b//6z2//+r9v//q/b//6n2//+n9v//pPb//5np+/98t+f/p+r5/4Tr/P9/2vz/Vo3b/4zB7v+W5fz/e+n7/3fp+/936fv/d+n7/3jp+/956fv/eeb7/1y0+/9guvr/UZbe/5Tz//+O6Pr/eMjv/2686v9quen/aLjp/2W36P9mt+jteNv2cQD//wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALb//wes+P9xq/b/9Kv2//+r9v//qvb//6n2//+n9v//pPb//6D0//93vuv/ntPx/5bu/P+W6/z/VYze/1SO4v+e2fT/ke77/3fp+/936fv/eOn7/3jp+/966fv/fOr7/23P+/9ft/v/T5bf/5Ht/P+X9P//mPX//5j0//+U7fz/j+b6/4bZ9fRhmd1xbbbbBwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8BrPf/Yqv2/+ir9v/+qvb//6j2//+m9v//pPb//6H1//+W6/v/YZze/63n+P+l5/j/U4zi/1ac+f9dl+P/o9/2/4zt+/956fv/eOn7/3np+/966fv/fOr7/3jg+/9hufz/Upvh/47n+v+Z9f//mvX//5v1//+c9f/+m/X/6Jz1/2IA//8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKr3/z+q9/+3qfb/+qj2//+m9v//o/b//6H1//+d9f//fc71/2ad4v+DuOf/VZbw/1if//9PkvX/WZPl/47L7v+W7fv/fer7/3np+/976fv/fer7/3vk+/9oxfz/TpLe/5bx/f+b9f//nPX//531//qd9f+3m/P/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wGm8v8UqfT/c6j2//Cm9v//o/b//6D1//+d9f//e87//1uj9f9Ni+X/Vp36/1ac//9TmP//T5P7/02J6P96s+f/p+77/4fr+/976fv/fur7/3zm+/9uzPr/VZje/5r1//+c9f//nvX/8J30/3Om8v8U////AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ/3/yCm9/+do/b/45/1//qb8v//cL7//2Ku//9eqP//WKH//1SZ//9Rlf//UJP//2a4/P9Tj6X/V21n/53R1/+W6vb/hOv7/37n+/9mu+3/k8Tt+qP2/+Od9f+en/f/IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC///8EofX/MaD0/3aT6f+xbLn/5mKu//9dp///WJ///1OY//9Qk///Xan//3rX5v9yhVb/tKg7/3p7QP94l4//ouLr/5Xo9eZfocexsdrudsb6/zG///8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAID//wKH0v8Rabz/ImGr/0xdp/+DVqD/tFKY/9RRl//ue9z//mGdmf6nnzru49VL1NnMSLSKhjqDeZeXTKzo+CJah5YRgICAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==","base64");function GET(){return new e.NextResponse(z,{headers:{"Content-Type":"image/x-icon","Cache-Control":"public, max-age=0, must-revalidate"}})}let b="force-static",L=new r.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/favicon.ico/route",pathname:"/favicon.ico",filename:"favicon",bundlePath:"app/favicon.ico/route"},resolvedPagePath:"next-metadata-route-loader?page=%2Ffavicon.ico%2Froute&isDynamic=0!X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\favicon.ico?__next_metadata_route__",nextConfigOutput:"",userland:P}),{requestAsyncStorage:j,staticGenerationAsyncStorage:u,serverHooks:o,headerHooks:t,staticGenerationBailout:a}=L,p="/favicon.ico/route"}};var v=require("../../webpack-runtime.js");v.C(A);var __webpack_exec__=A=>v(v.s=A),f=v.X(0,[201],()=>__webpack_exec__(8837));module.exports=f})();
\ No newline at end of file
diff --git a/.next/server/app/favicon.ico/route.js.nft.json b/.next/server/app/favicon.ico/route.js.nft.json
index 8c8cba9..ce8b1e2 100644
--- a/.next/server/app/favicon.ico/route.js.nft.json
+++ b/.next/server/app/favicon.ico/route.js.nft.json
@@ -1 +1 @@
-{"version":1,"files":["../../webpack-runtime.js","../../chunks/405.js","../../chunks/572.js","../../../package.json","../../../../node_modules/next/dist/compiled/@vercel/og/index.node.js","../../../../node_modules/next/dist/compiled/@vercel/og/package.json","../../../../node_modules/next/dist/compiled/chalk/package.json","../../../../node_modules/next/dist/compiled/chalk/index.js","../../../../node_modules/next/dist/compiled/cookie/package.json","../../../../node_modules/next/dist/compiled/cookie/index.js","../../../../node_modules/next/dist/compiled/ua-parser-js/package.json","../../../../node_modules/next/dist/compiled/ua-parser-js/ua-parser.js","../../../../node_modules/next/dist/compiled/@edge-runtime/cookies/package.json","../../../../node_modules/next/dist/compiled/@edge-runtime/cookies/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@vercel/og/noto-sans-v27-latin-regular.ttf","../../../../node_modules/next/dist/compiled/@vercel/og/yoga.wasm","../../../../node_modules/next/dist/compiled/@vercel/og/resvg.wasm","../../../../package.json"]}
\ No newline at end of file
+{"version":1,"files":["../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/package.json","../../../../package.json","../../../package.json","../../chunks/106.js","../../chunks/2.js","../../chunks/201.js","../../chunks/310.js","../../chunks/323.js","../../chunks/622.js","../../chunks/676.js","../../chunks/837.js","../../chunks/840.js","../../chunks/862.js","../../chunks/984.js","../../chunks/font-manifest.json","../../webpack-runtime.js"]}
\ No newline at end of file
diff --git a/.next/server/app/index.html b/.next/server/app/index.html
index 743288d..41ec058 100644
--- a/.next/server/app/index.html
+++ b/.next/server/app/index.html
@@ -1 +1 @@
-sukadia.dev
\ No newline at end of file
+sukadia.dev
\ No newline at end of file
diff --git a/.next/server/app/index.meta b/.next/server/app/index.meta
index c0c305a..4bb6676 100644
--- a/.next/server/app/index.meta
+++ b/.next/server/app/index.meta
@@ -1 +1,5 @@
-{"headers":{"x-next-cache-tags":"/page"}}
\ No newline at end of file
+{
+ "headers": {
+ "x-next-cache-tags": "_N_T_/layout,_N_T_/page,_N_T_/"
+ }
+}
\ No newline at end of file
diff --git a/.next/server/app/index.rsc b/.next/server/app/index.rsc
index 55f6629..9756229 100644
--- a/.next/server/app/index.rsc
+++ b/.next/server/app/index.rsc
@@ -1,9 +1,10 @@
-1:HL["/_next/static/css/3930d1a0ca01c66f.css",{"as":"style"}]
-0:[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/3930d1a0ca01c66f.css","precedence":"next"}]],["$L3",null]]]]
-4:HL["/_next/static/css/60c69e914bf8dd4b.css",{"as":"style"}]
-5:I{"id":"4463","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-6:I{"id":"1010","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-7:I{"id":"4143","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-8:I{"id":"2645","chunks":["931:static/chunks/app/page-8204c3b0f59bd205.js"],"name":"","async":false}
-2:[["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_0ec1f4","children":["$","$L5",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L6",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":[["$","$L7",null,{"propsForComponent":{"params":{}},"Component":"$8"}],null],"segment":"__PAGE__"},"styles":[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/60c69e914bf8dd4b.css","precedence":"next"}]]}]}]}],null]
-3:[[["$","meta",null,{"charSet":"utf-8"}],["$","title",null,{"children":"sukadia.dev"}],["$","meta",null,{"name":"description","content":"I code, stream, and create videos."}],null,null,null,null,null,null,null,null,["$","meta",null,{"name":"viewport","content":"width=device-width, initial-scale=1"}],null,null,null,null,null,null,null,null,null,null,[]],[null,null,null,null],null,null,[null,null,null,null,null],null,null,null,null,[null,[["$","link",null,{"rel":"icon","href":"\\favicon.ico","type":"image/x-icon","sizes":"any"}]],[],null]]
+1:HL["/_next/static/css/1d2d59615145af7d.css","style",{"crossOrigin":""}]
+0:["9CqSqX2Hqhh4fwiD8kSfJ",[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/1d2d59615145af7d.css","precedence":"next","crossOrigin":""}]],"$L3"]]]]
+4:HL["/_next/static/css/60c69e914bf8dd4b.css","style",{"crossOrigin":""}]
+5:I[6954,[],""]
+6:I[7264,[],""]
+8:I[8297,[],""]
+9:I[6916,["986","static/chunks/986-37229c658d9b7b30.js","931","static/chunks/app/page-39b6caed82efc627.js"],""]
+2:[null,["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_e66fe9","children":["$","$L5",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$L7",["$","$L8",null,{"propsForComponent":{"params":{}},"Component":"$9","isStaticGeneration":true}],null],"segment":"__PAGE__"},"styles":[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/60c69e914bf8dd4b.css","precedence":"next","crossOrigin":""}]]}]}]}],null]
+3:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"sukadia.dev"}],["$","meta","3",{"name":"description","content":"I code, stream, and create videos."}],["$","link","4",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]]
+7:null
diff --git a/.next/server/app/page.js b/.next/server/app/page.js
index bf226d3..11b5551 100644
--- a/.next/server/app/page.js
+++ b/.next/server/app/page.js
@@ -1,601 +1 @@
-(() => {
-var exports = {};
-exports.id = 931;
-exports.ids = [931];
-exports.modules = {
-
-/***/ 252:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/cookie");
-
-/***/ }),
-
-/***/ 7999:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/path-to-regexp");
-
-/***/ }),
-
-/***/ 8038:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react");
-
-/***/ }),
-
-/***/ 8704:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-dom/server-rendering-stub");
-
-/***/ }),
-
-/***/ 7897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-server-dom-webpack/client");
-
-/***/ }),
-
-/***/ 6786:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react/jsx-runtime");
-
-/***/ }),
-
-/***/ 1090:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/app-render/get-segment-param.js");
-
-/***/ }),
-
-/***/ 8652:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/future/helpers/interception-routes.js");
-
-/***/ }),
-
-/***/ 3918:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/amp-context.js");
-
-/***/ }),
-
-/***/ 5732:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/amp-mode.js");
-
-/***/ }),
-
-/***/ 3280:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/app-router-context.js");
-
-/***/ }),
-
-/***/ 2796:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/head-manager-context.js");
-
-/***/ }),
-
-/***/ 9274:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/hooks-client-context.js");
-
-/***/ }),
-
-/***/ 4486:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/image-blur-svg.js");
-
-/***/ }),
-
-/***/ 744:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/image-config-context.js");
-
-/***/ }),
-
-/***/ 5843:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/image-config.js");
-
-/***/ }),
-
-/***/ 9552:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/image-loader");
-
-/***/ }),
-
-/***/ 1751:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
-
-/***/ }),
-
-/***/ 1668:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/handle-smooth-scroll.js");
-
-/***/ }),
-
-/***/ 1897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
-
-/***/ }),
-
-/***/ 8854:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
-
-/***/ }),
-
-/***/ 3297:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
-
-/***/ }),
-
-/***/ 3349:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/server-inserted-html.js");
-
-/***/ }),
-
-/***/ 2470:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/side-effect.js");
-
-/***/ }),
-
-/***/ 618:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/utils/warn-once.js");
-
-/***/ }),
-
-/***/ 1017:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("path");
-
-/***/ }),
-
-/***/ 7310:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("url");
-
-/***/ }),
-
-/***/ 4394:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "AppRouter": () => (/* reexport default from dynamic */ next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default.a),
-/* harmony export */ "GlobalError": () => (/* reexport default from dynamic */ next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default.a),
-/* harmony export */ "LayoutRouter": () => (/* reexport default from dynamic */ next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default.a),
-/* harmony export */ "RenderFromTemplateContext": () => (/* reexport default from dynamic */ next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default.a),
-/* harmony export */ "StaticGenerationSearchParamsBailoutProvider": () => (/* reexport default from dynamic */ next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default.a),
-/* harmony export */ "__next_app_webpack_require__": () => (/* binding */ __next_app_webpack_require__),
-/* harmony export */ "actionAsyncStorage": () => (/* reexport safe */ next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__.actionAsyncStorage),
-/* harmony export */ "createSearchParamsBailoutProxy": () => (/* reexport safe */ next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__.createSearchParamsBailoutProxy),
-/* harmony export */ "decodeAction": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeAction),
-/* harmony export */ "decodeReply": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeReply),
-/* harmony export */ "originalPathname": () => (/* binding */ originalPathname),
-/* harmony export */ "pages": () => (/* binding */ pages),
-/* harmony export */ "preconnect": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preconnect),
-/* harmony export */ "preloadFont": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadFont),
-/* harmony export */ "preloadStyle": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadStyle),
-/* harmony export */ "renderToReadableStream": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.renderToReadableStream),
-/* harmony export */ "requestAsyncStorage": () => (/* reexport safe */ next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__.requestAsyncStorage),
-/* harmony export */ "serverHooks": () => (/* reexport module object */ next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__),
-/* harmony export */ "staticGenerationAsyncStorage": () => (/* reexport safe */ next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__.staticGenerationAsyncStorage),
-/* harmony export */ "staticGenerationBailout": () => (/* reexport safe */ next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__.staticGenerationBailout),
-/* harmony export */ "tree": () => (/* binding */ tree)
-/* harmony export */ });
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4592);
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6301);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7431);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2673);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(94);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4437);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6127);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(5486);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(6404);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(2527);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(3332);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__);
-/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(7902);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(3099);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__);
-
- const tree = {
- children: [
- '',
- {
- children: ['__PAGE__', {}, {
- page: [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 3428)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx"],
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }]
- },
- {
- 'layout': [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 729)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- }.children;
- const pages = ["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx"];
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- const __next_app_webpack_require__ = __webpack_require__
-
-
- const originalPathname = "/page"
-
-
-/***/ }),
-
-/***/ 9603:
-/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
-
-Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 5157))
-
-/***/ }),
-
-/***/ 5157:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-// ESM COMPAT FLAG
-__webpack_require__.r(__webpack_exports__);
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- "default": () => (/* binding */ Home)
-});
-
-// EXTERNAL MODULE: external "next/dist/compiled/react/jsx-runtime"
-var jsx_runtime_ = __webpack_require__(6786);
-// EXTERNAL MODULE: external "next/dist/compiled/react"
-var react_ = __webpack_require__(8038);
-// EXTERNAL MODULE: ./app/style.scss
-var style = __webpack_require__(3009);
-// EXTERNAL MODULE: ./node_modules/next/image.js
-var next_image = __webpack_require__(8421);
-var image_default = /*#__PURE__*/__webpack_require__.n(next_image);
-;// CONCATENATED MODULE: ./app/Card.tsx
-/* __next_internal_client_entry_do_not_use__ default auto */
-
-
-function Card(props) {
- //w-[20rem] h-[8rem] on 4k screen
- return /*#__PURE__*/ (0,jsx_runtime_.jsxs)("a", {
- className: `w-[20rem] h-[8rem] p-2 rounded-2xl bg-slate-800 shadow-lg ${props.shadow} flex flex-col flex-shrink-0 ease-out duration-300 hover:scale-105 hover:-translate-y-1 transition-all`,
- href: props.link,
- target: "_blank",
- children: [
- /*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
- className: "flex flex-row items-center gap-1 ml-2 h-[2rem] w-full rounded-2xl",
- children: [
- /*#__PURE__*/ jsx_runtime_.jsx("span", {
- className: "text-l font-bold text-cyan-500",
- children: "sukadia.dev"
- }),
- /*#__PURE__*/ (0,jsx_runtime_.jsxs)("span", {
- className: "text-xl font-bold dark:text-white",
- children: [
- "/ ",
- props.title
- ]
- })
- ]
- }),
- /*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
- className: "flex flex-row w-full overflow-clip h-[84px]",
- children: [
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "h-full aspect-square rounded-2xl relative",
- children: /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "h-full w-full aspect-square relative rounded-2xl overflow-hidden",
- children: /*#__PURE__*/ jsx_runtime_.jsx((image_default()), {
- fill: true,
- src: props.icon,
- sizes: "128px",
- alt: "thumbnail",
- className: ""
- })
- })
- }),
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "h-full w-full m-2 ml-4 rounded-2xl",
- children: /*#__PURE__*/ jsx_runtime_.jsx("p", {
- children: props.description
- })
- })
- ]
- })
- ]
- });
-}
-
-;// CONCATENATED MODULE: ./app/page.tsx
-/* __next_internal_client_entry_do_not_use__ default auto */
-
-
-
-let dotHoldSound;
-function Home() {
- const [clickedOption, setOption] = (0,react_.useState)("");
- const sound = (0,react_.useRef)(typeof Audio !== "undefined" ? new Audio("audio/the-fabled-period-button.mp3") : undefined).current;
- let sukadiaClick = (e)=>{
- setOption(clickedOption == "sukadia" ? "" : "sukadia");
- };
- let dotclickcount = 0;
- let dotHoldSecret;
- let dotClick = (e)=>{
- setOption(clickedOption == "." ? "" : ".");
- dotclickcount++;
- let currentclick = dotclickcount;
- //TODO: Want it to be based off pushed-downness, if already pushed down it still needs to wait
- dotHoldSound = setTimeout(()=>{
- if (dotclickcount == currentclick) {
- (sound?.cloneNode()).play();
- }
- }, 100);
- };
- let dotLeave = (e)=>{
- //BUG: Stays held down since onMouseUp doesn't capture when it happens not over the element
- setOption("");
- clearTimeout(dotHoldSound);
- };
- let devClick = (e)=>{
- setOption(clickedOption == "dev" ? "" : "dev");
- };
- return /*#__PURE__*/ (0,jsx_runtime_.jsxs)("main", {
- className: "select-none",
- children: [
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "flex flex-col items-center h-screen overflow-hidden",
- children: /*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
- className: (clickedOption == "sukadia" || clickedOption == "dev" ? "-translate-y-24" : "") + " flex flex-row w-screen items-center justify-center overflow-hidden text-6xl min-[437px]:text-7xl min-[577px]:text-8xl md:text-9xl m-auto transition-all duration-500 z-20",
- children: [
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "overflow-hidden flex-shrink",
- onMouseDown: sukadiaClick,
- children: /*#__PURE__*/ jsx_runtime_.jsx("div", {
- id: "sukadia",
- className: (clickedOption == "sukadia" ? "maintitle-pressed top-2" : "maintitle hover:-translate-y-0.5") + " transition-all hover:m-2",
- children: "sukadia"
- })
- }),
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "overflow-hidden flex-shrink",
- onMouseDown: dotClick,
- onMouseUp: dotLeave,
- children: /*#__PURE__*/ jsx_runtime_.jsx("div", {
- id: ".",
- className: (clickedOption == "." ? "maintitle-pressed top-2" : "maintitle hover:-translate-y-0.5") + " transition-all hover:m-2",
- children: "."
- })
- }),
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "overflow-hidden flex-shrink",
- onMouseDown: devClick,
- children: /*#__PURE__*/ jsx_runtime_.jsx("div", {
- id: "dev",
- className: (clickedOption == "dev" ? "maintitle-pressed top-2" : "maintitle hover:-translate-y-0.5") + " transition-all hover:m-2",
- children: "dev"
- })
- })
- ]
- })
- }),
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: (clickedOption == "sukadia" ? "" : "pointer-events-none") + " flex flex-col items-center absolute h-1/2 p-4 mt-4 -translate-y-4 inset-x-0 top-1/2 overflow-y-auto overflow-x-hidden",
- children: /*#__PURE__*/ (0,jsx_runtime_.jsxs)("li", {
- className: (clickedOption == "sukadia" ? "opacity-100 z-10" : "opacity-0 pointer-events-none -translate-y-12 z-1") + " flex flex-wrap flex-row items-center justify-center w-3/5 max-w-[1200px] gap-8 transition-all duration-500",
- children: [
- /*#__PURE__*/ jsx_runtime_.jsx(Card, {
- title: "Youtube",
- description: "Lots of VRChat videos focusing on roleplay.",
- icon: "/images/YoutubeIcon.png",
- link: "/youtube",
- shadow: "shadow-red-950"
- }),
- /*#__PURE__*/ jsx_runtime_.jsx(Card, {
- title: "Twitch",
- description: "Occasional streams for whatever seems fun at the moment.",
- icon: "/images/TwitchIcon.png",
- link: "/twitch",
- shadow: "shadow-violet-950"
- }),
- /*#__PURE__*/ jsx_runtime_.jsx(Card, {
- title: "Discord",
- description: "The hub for all my socials & projects. Join to stay updated!",
- icon: "/images/DiscordIcon.png",
- link: "/discord",
- shadow: "shadow-blue-900"
- }),
- /*#__PURE__*/ jsx_runtime_.jsx(Card, {
- title: "Ko-fi",
- description: "Support me monthly to help me make more content.",
- icon: "/images/KofiIcon.png",
- link: "/ko-fi",
- shadow: "shadow-sky-900"
- })
- ]
- })
- }),
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: (clickedOption == "dev" ? "" : "pointer-events-none") + " flex flex-col items-center absolute h-1/2 p-4 mt-4 -translate-y-4 inset-x-0 top-1/2 overflow-y-auto overflow-x-hidden",
- children: /*#__PURE__*/ (0,jsx_runtime_.jsxs)("li", {
- className: (clickedOption == "dev" ? "opacity-100 z-10" : "opacity-0 -translate-y-12 z-0") + " flex flex-wrap flex-row items-center justify-center w-3/5 max-w-[1200px] gap-8 transition-all duration-500",
- children: [
- /*#__PURE__*/ jsx_runtime_.jsx(Card, {
- title: "Everyone-Votes",
- description: "A Discord bot that sends and tallies daily polls from thousands of servers.",
- icon: "/images/EveryoneVotesIcon.png",
- link: "/everyone-votes",
- shadow: "shadow-blue-900"
- }),
- /*#__PURE__*/ jsx_runtime_.jsx(Card, {
- title: "Space",
- description: "A WebGPU space/nebula image generator with lots of parameters to modify.",
- icon: "/images/SpaceIcon.png",
- link: "/space",
- shadow: "shadow-violet-950"
- }),
- /*#__PURE__*/ jsx_runtime_.jsx(Card, {
- title: "Dark",
- description: "A VSCode color theme based off of Brackets Dark.",
- icon: "/images/DarkIcon.png",
- link: "/dark",
- shadow: "shadow-yellow-950"
- })
- ]
- })
- })
- ]
- });
-}
-
-
-/***/ }),
-
-/***/ 3428:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "$$typeof": () => (/* binding */ $$typeof),
-/* harmony export */ "__esModule": () => (/* binding */ __esModule),
-/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
-/* harmony export */ });
-/* harmony import */ var next_dist_build_webpack_loaders_next_flight_loader_module_proxy__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1313);
-
-const proxy = (0,next_dist_build_webpack_loaders_next_flight_loader_module_proxy__WEBPACK_IMPORTED_MODULE_0__.createProxy)(String.raw`X:\Some Useful Stuff\Applications\Web\next-sukadia.dev\app\page.tsx`)
-
-// Accessing the __esModule property and exporting $$typeof are required here.
-// The __esModule getter forces the proxy target to create the default export
-// and the $$typeof value is for rendering logic to determine if the module
-// is a client boundary.
-const { __esModule, $$typeof } = proxy;
-const __default__ = proxy.default;
-
-
-/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__default__);
-
-/***/ }),
-
-/***/ 3009:
-/***/ (() => {
-
-
-
-/***/ })
-
-};
-;
-
-// load runtime
-var __webpack_require__ = require("../webpack-runtime.js");
-__webpack_require__.C(exports);
-var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
-var __webpack_exports__ = __webpack_require__.X(0, [405,616,421,816], () => (__webpack_exec__(4394)));
-module.exports = __webpack_exports__;
-
-})();
\ No newline at end of file
+(()=>{var e={};e.id=931,e.ids=[931],e.modules={5403:e=>{"use strict";e.exports=require("next/dist/client/components/request-async-storage.external")},4749:e=>{"use strict";e.exports=require("next/dist/client/components/static-generation-async-storage.external")},399:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},5528:e=>{"use strict";e.exports=require("next/dist\\client\\components\\action-async-storage.external.js")},1877:e=>{"use strict";e.exports=require("next/dist\\client\\components\\request-async-storage.external.js")},5319:e=>{"use strict";e.exports=require("next/dist\\client\\components\\static-generation-async-storage.external.js")},1017:e=>{"use strict";e.exports=require("path")},7310:e=>{"use strict";e.exports=require("url")},4345:(e,t,s)=>{"use strict";s.r(t),s.d(t,{GlobalError:()=>n.a,__next_app__:()=>u,originalPathname:()=>p,pages:()=>c,routeModule:()=>x,tree:()=>d});var a=s(7096),i=s(6132),o=s(7284),n=s.n(o),r=s(2564),l={};for(let e in r)0>["default","tree","pages","GlobalError","originalPathname","__next_app__","routeModule"].indexOf(e)&&(l[e]=()=>r[e]);s.d(t,l);let d=["",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(s.bind(s,3982)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx"],metadata:{icon:[async e=>(await Promise.resolve().then(s.bind(s,7481))).default(e)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(s.bind(s,5345)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],"not-found":[()=>Promise.resolve().then(s.t.bind(s,9291,23)),"next/dist/client/components/not-found-error"],metadata:{icon:[async e=>(await Promise.resolve().then(s.bind(s,7481))).default(e)],apple:[],openGraph:[],twitter:[],manifest:void 0}}],c=["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx"],p="/page",u={require:s,loadChunk:()=>Promise.resolve()},x=new a.AppPageRouteModule({definition:{kind:i.x.APP_PAGE,page:"/page",pathname:"/",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:d}})},8530:(e,t,s)=>{Promise.resolve().then(s.bind(s,5698))},5698:(e,t,s)=>{"use strict";let a;s.r(t),s.d(t,{default:()=>Home});var i=s(784),o=s(9885);s(8294);var n=s(2451),r=s.n(n);function Card(e){return(0,i.jsxs)("a",{className:`w-[20rem] h-[8rem] p-2 rounded-2xl bg-slate-800 shadow-lg ${e.shadow} flex flex-col flex-shrink-0 ease-out duration-300 hover:scale-105 hover:-translate-y-1 transition-all`,href:e.link,target:"_blank",children:[(0,i.jsxs)("div",{className:"flex flex-row items-center gap-1 ml-2 h-[2rem] w-full rounded-2xl",children:[i.jsx("span",{className:"text-l font-bold text-cyan-500",children:"sukadia.dev"}),(0,i.jsxs)("span",{className:"text-xl font-bold dark:text-white",children:["/ ",e.title]})]}),(0,i.jsxs)("div",{className:"flex flex-row w-full overflow-clip h-[84px]",children:[i.jsx("div",{className:"h-full aspect-square rounded-2xl relative",children:i.jsx("div",{className:"h-full w-full aspect-square relative rounded-2xl overflow-hidden",children:i.jsx(r(),{fill:!0,src:e.icon,sizes:"128px",alt:"thumbnail",className:""})})}),i.jsx("div",{className:"h-full w-full m-2 ml-4 rounded-2xl",children:i.jsx("p",{children:e.description})})]})]})}function Home(){let[e,t]=(0,o.useState)(""),s=(0,o.useRef)("undefined"!=typeof Audio?new Audio("audio/the-fabled-period-button.mp3"):void 0).current,n=0;return(0,i.jsxs)("main",{className:"select-none",children:[i.jsx("div",{className:"flex flex-col items-center h-screen overflow-hidden",children:(0,i.jsxs)("div",{className:("sukadia"==e||"dev"==e?"-translate-y-24":"")+" flex flex-row w-screen items-center justify-center overflow-hidden text-6xl min-[437px]:text-7xl min-[577px]:text-8xl md:text-9xl m-auto transition-all duration-500 z-20",children:[i.jsx("div",{className:"overflow-hidden flex-shrink",onMouseDown:s=>{t("sukadia"==e?"":"sukadia")},children:i.jsx("div",{id:"sukadia",className:("sukadia"==e?"maintitle-pressed top-2":"maintitle hover:-translate-y-0.5")+" transition-all hover:m-2",children:"sukadia"})}),i.jsx("div",{className:"overflow-hidden flex-shrink",onMouseDown:i=>{t("."==e?"":".");let o=++n;a=setTimeout(()=>{n==o&&s?.cloneNode().play()},100)},onMouseUp:e=>{t(""),clearTimeout(a)},children:i.jsx("div",{id:".",className:("."==e?"maintitle-pressed top-2":"maintitle hover:-translate-y-0.5")+" transition-all hover:m-2",children:"."})}),i.jsx("div",{className:"overflow-hidden flex-shrink",onMouseDown:s=>{t("dev"==e?"":"dev")},children:i.jsx("div",{id:"dev",className:("dev"==e?"maintitle-pressed top-2":"maintitle hover:-translate-y-0.5")+" transition-all hover:m-2",children:"dev"})})]})}),i.jsx("div",{className:("sukadia"==e?"":"pointer-events-none")+" flex flex-col items-center absolute h-1/2 p-4 mt-4 -translate-y-4 inset-x-0 top-1/2 overflow-y-auto overflow-x-hidden",children:(0,i.jsxs)("li",{className:("sukadia"==e?"opacity-100 z-10":"opacity-0 pointer-events-none -translate-y-12 z-1")+" flex flex-wrap flex-row items-center justify-center w-3/5 max-w-[1200px] gap-8 transition-all duration-500",children:[i.jsx(Card,{title:"Youtube",description:"Lots of VRChat videos focusing on roleplay.",icon:"/images/YoutubeIcon.png",link:"/youtube",shadow:"shadow-red-950"}),i.jsx(Card,{title:"Twitch",description:"Occasional streams for whatever seems fun at the moment.",icon:"/images/TwitchIcon.png",link:"/twitch",shadow:"shadow-violet-950"}),i.jsx(Card,{title:"Discord",description:"The hub for all my socials & projects. Join to stay updated!",icon:"/images/DiscordIcon.png",link:"/discord",shadow:"shadow-blue-900"}),i.jsx(Card,{title:"Ko-fi",description:"Support me monthly to help me make more content.",icon:"/images/KofiIcon.png",link:"/ko-fi",shadow:"shadow-sky-900"})]})}),i.jsx("div",{className:("dev"==e?"":"pointer-events-none")+" flex flex-col items-center absolute h-1/2 p-4 mt-4 -translate-y-4 inset-x-0 top-1/2 overflow-y-auto overflow-x-hidden",children:(0,i.jsxs)("li",{className:("dev"==e?"opacity-100 z-10":"opacity-0 -translate-y-12 z-0")+" flex flex-wrap flex-row items-center justify-center w-3/5 max-w-[1200px] gap-8 transition-all duration-500",children:[i.jsx(Card,{title:"Everyone-Votes",description:"A Discord bot that sends and tallies daily polls from thousands of servers.",icon:"/images/EveryoneVotesIcon.png",link:"/everyone-votes",shadow:"shadow-blue-900"}),i.jsx(Card,{title:"Space",description:"A WebGPU space/nebula image generator with lots of parameters to modify.",icon:"/images/SpaceIcon.png",link:"/space",shadow:"shadow-violet-950"}),i.jsx(Card,{title:"Dark",description:"A VSCode color theme based off of Brackets Dark.",icon:"/images/DarkIcon.png",link:"/dark",shadow:"shadow-yellow-950"})]})})]})}},3982:(e,t,s)=>{"use strict";s.r(t),s.d(t,{$$typeof:()=>n,__esModule:()=>o,default:()=>l});var a=s(5153);let i=(0,a.createProxy)(String.raw`X:\Some Useful Stuff\Applications\Web\next-sukadia.dev\app\page.tsx`),{__esModule:o,$$typeof:n}=i,r=i.default,l=r},7481:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var a=s(8531);let __WEBPACK_DEFAULT_EXPORT__=e=>{let t=(0,a.fillMetadataSegment)(".",e.params,"favicon.ico");return[{type:"image/x-icon",sizes:"16x16",url:t+""}]}},8294:()=>{}};var t=require("../webpack-runtime.js");t.C(e);var __webpack_exec__=e=>t(t.s=e),s=t.X(0,[862,323,837,622],()=>__webpack_exec__(4345));module.exports=s})();
\ No newline at end of file
diff --git a/.next/server/app/page.js.nft.json b/.next/server/app/page.js.nft.json
index 92352fb..d933c24 100644
--- a/.next/server/app/page.js.nft.json
+++ b/.next/server/app/page.js.nft.json
@@ -1 +1 @@
-{"version":1,"files":["../webpack-runtime.js","../chunks/405.js","../chunks/616.js","../chunks/421.js","../chunks/816.js","../../package.json","../../../node_modules/next/package.json","../../../node_modules/next/dist/shared/lib/amp-context.js","../../../node_modules/next/dist/shared/lib/amp-mode.js","../../../node_modules/next/dist/shared/lib/side-effect.js","../../../node_modules/next/dist/shared/lib/head-manager-context.js","../../../node_modules/next/dist/shared/lib/app-router-context.js","../../../node_modules/next/dist/shared/lib/hooks-client-context.js","../../../node_modules/next/dist/shared/lib/image-blur-svg.js","../../../node_modules/next/dist/shared/lib/image-config-context.js","../../../node_modules/next/dist/shared/lib/image-config.js","../../../node_modules/next/dist/shared/lib/server-inserted-html.js","../../../node_modules/next/dist/server/app-render/get-segment-param.js","../../../node_modules/next/dist/shared/lib/image-loader.js","../../../node_modules/next/dist/shared/lib/utils/warn-once.js","../../../node_modules/next/dist/server/future/helpers/interception-routes.js","../../../node_modules/react/package.json","../../../node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js","../../../node_modules/next/dist/shared/lib/router/utils/handle-smooth-scroll.js","../../../node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js","../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../node_modules/next/dist/shared/lib/router/utils/parse-path.js","../../../node_modules/react/index.js","../../../node_modules/next/dist/compiled/react/jsx-runtime.js","../../../node_modules/next/dist/compiled/react-dom/server-rendering-stub.js","../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.js","../../../node_modules/next/dist/compiled/react/package.json","../../../node_modules/next/dist/compiled/react-dom/package.json","../../../node_modules/next/dist/compiled/react-server-dom-webpack/package.json","../../../node_modules/next/dist/compiled/path-to-regexp/index.js","../../../node_modules/next/dist/shared/lib/match-remote-pattern.js","../../../node_modules/next/dist/compiled/react/index.js","../../../node_modules/react/cjs/react.production.min.js","../../../node_modules/react/cjs/react.development.js","../../../node_modules/next/dist/compiled/cookie/package.json","../../../node_modules/next/dist/compiled/cookie/index.js","../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.production.min.js","../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.development.js","../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.production.min.js","../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.development.js","../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.browser.js","../../../node_modules/next/dist/compiled/react/cjs/react.production.min.js","../../../node_modules/next/dist/compiled/react/cjs/react.development.js","../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js","../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js","../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../node_modules/@swc/helpers/_/_interop_require_wildcard/package.json","../../../node_modules/@swc/helpers/package.json","../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs","../../../node_modules/next/dist/compiled/micromatch/package.json","../../../node_modules/next/dist/compiled/micromatch/index.js","../../../node_modules/react-dom/package.json","../../../node_modules/react-dom/index.js","../../../node_modules/react-dom/cjs/react-dom.production.min.js","../../../node_modules/react-dom/cjs/react-dom.development.js","../../../node_modules/scheduler/package.json","../../../node_modules/scheduler/index.js","../../../node_modules/scheduler/cjs/scheduler.production.min.js","../../../node_modules/scheduler/cjs/scheduler.development.js","../../../package.json"]}
\ No newline at end of file
+{"version":1,"files":["../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../node_modules/next/dist/client/components/async-local-storage.js","../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../node_modules/next/dist/server/lib/trace/constants.js","../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../node_modules/next/package.json","../../../package.json","../../package.json","../chunks/106.js","../chunks/2.js","../chunks/201.js","../chunks/310.js","../chunks/323.js","../chunks/622.js","../chunks/676.js","../chunks/837.js","../chunks/840.js","../chunks/862.js","../chunks/984.js","../chunks/font-manifest.json","../webpack-runtime.js","page_client-reference-manifest.js"]}
\ No newline at end of file
diff --git a/.next/server/app/page_client-reference-manifest.js b/.next/server/app/page_client-reference-manifest.js
new file mode 100644
index 0000000..0143196
--- /dev/null
+++ b/.next/server/app/page_client-reference-manifest.js
@@ -0,0 +1 @@
+globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"3170":{"*":{"id":"4714","name":"*","chunks":[],"async":false}},"3728":{"*":{"id":"3724","name":"*","chunks":[],"async":false}},"6916":{"*":{"id":"5698","name":"*","chunks":[],"async":false}},"6954":{"*":{"id":"4900","name":"*","chunks":[],"async":false}},"7264":{"*":{"id":"5392","name":"*","chunks":[],"async":false}},"8297":{"*":{"id":"8898","name":"*","chunks":[],"async":false}},"9928":{"*":{"id":"5365","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\font\\google\\target.css?{\"path\":\"app\\\\layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":1371,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\globals.scss":{"id":595,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx":{"id":6916,"name":"*","chunks":["986","static/chunks/986-37229c658d9b7b30.js","931","static/chunks/app/page-39b6caed82efc627.js"],"async":false}},"entryCSSFiles":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\_not-found":[],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout":["static/css/1d2d59615145af7d.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page":["static/css/60c69e914bf8dd4b.css"]}}
\ No newline at end of file
diff --git a/.next/server/app/space.html b/.next/server/app/space.html
index 9070b92..c4a93a3 100644
--- a/.next/server/app/space.html
+++ b/.next/server/app/space.html
@@ -1 +1 @@
-sukadia.dev
\ No newline at end of file
+sukadia.dev
\ No newline at end of file
diff --git a/.next/server/app/space.meta b/.next/server/app/space.meta
index e5bae34..2f18811 100644
--- a/.next/server/app/space.meta
+++ b/.next/server/app/space.meta
@@ -1 +1,5 @@
-{"headers":{"x-next-cache-tags":"/space/page"}}
\ No newline at end of file
+{
+ "headers": {
+ "x-next-cache-tags": "_N_T_/layout,_N_T_/space/layout,_N_T_/space/page,_N_T_/space"
+ }
+}
\ No newline at end of file
diff --git a/.next/server/app/space.rsc b/.next/server/app/space.rsc
index cbbec08..3167a19 100644
--- a/.next/server/app/space.rsc
+++ b/.next/server/app/space.rsc
@@ -1,8 +1,9 @@
-1:HL["/_next/static/css/3930d1a0ca01c66f.css",{"as":"style"}]
-0:[[["",{"children":["space",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/3930d1a0ca01c66f.css","precedence":"next"}]],["$L3",null]]]]
-4:I{"id":"4463","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-5:I{"id":"1010","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-6:I{"id":"4143","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-7:I{"id":"476","chunks":["995:static/chunks/f75787ed-011198ef7e5d7754.js","267:static/chunks/43cb4aaa-0dfcb2e81cc1cbc1.js","9:static/chunks/f126df28-0647fc1012c29407.js","669:static/chunks/51231e76-cf1b2fc1d6b83e48.js","369:static/chunks/53417c1a-c755bb806ffa7a5d.js","23:static/chunks/23-fb41cbadaf19fac2.js","514:static/chunks/app/space/page-aa0f5917bd776cea.js"],"name":"","async":false}
-2:[["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_0ec1f4","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","space","children"],"error":"$undefined","errorStyles":"$undefined","loading":["$","div",null,{"className":"flex h-screen justify-center items-center","children":["$","div",null,{"className":"flex items-center justify-center rounded-full w-14 h-14 bg-gradient-to-tr from-cyan-400 to-blue-900 animate-spin","children":["$","div",null,{"className":"h-10 w-10 rounded-full bg-black"}]}]}],"loadingStyles":[],"hasLoading":true,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":[["$","$L6",null,{"propsForComponent":{"params":{}},"Component":"$7"}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"space"},"styles":[]}]}]}],null]
-3:[[["$","meta",null,{"charSet":"utf-8"}],["$","title",null,{"children":"sukadia.dev"}],["$","meta",null,{"name":"description","content":"I code, stream, and create videos."}],null,null,null,null,null,null,null,null,["$","meta",null,{"name":"viewport","content":"width=device-width, initial-scale=1"}],null,null,null,null,null,null,null,null,null,null,[]],[null,null,null,null],null,null,[null,null,null,null,null],null,null,null,null,[null,[["$","link",null,{"rel":"icon","href":"\\favicon.ico","type":"image/x-icon","sizes":"any"}]],[],null]]
+1:HL["/_next/static/css/1d2d59615145af7d.css","style",{"crossOrigin":""}]
+0:["9CqSqX2Hqhh4fwiD8kSfJ",[[["",{"children":["space",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/1d2d59615145af7d.css","precedence":"next","crossOrigin":""}]],"$L3"]]]]
+4:I[6954,[],""]
+5:I[7264,[],""]
+7:I[8297,[],""]
+8:I[341,["732","static/chunks/e1206f8c-ab5b5541f866e530.js","105","static/chunks/1f3d3139-f107a678ff6361e9.js","735","static/chunks/604a08ec-59af37265fb99b3d.js","790","static/chunks/d67c510a-e497b3cd5bf43bb4.js","116","static/chunks/537cd76e-7aba1cf7a4752418.js","173","static/chunks/173-2ffa9652644381a8.js","514","static/chunks/app/space/page-b8120f6d5470d1c7.js"],""]
+2:[null,["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_e66fe9","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","space","children"],"loading":["$","div",null,{"className":"flex h-screen justify-center items-center","children":["$","div",null,{"className":"flex items-center justify-center rounded-full w-14 h-14 bg-gradient-to-tr from-cyan-400 to-blue-900 animate-spin","children":["$","div",null,{"className":"h-10 w-10 rounded-full bg-black"}]}]}],"loadingStyles":[],"loadingScripts":[],"hasLoading":true,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$L6",["$","$L7",null,{"propsForComponent":{"params":{}},"Component":"$8","isStaticGeneration":true}],null],"segment":"__PAGE__"},"styles":null}],"segment":"space"},"styles":null}]}]}],null]
+3:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"sukadia.dev"}],["$","meta","3",{"name":"description","content":"I code, stream, and create videos."}],["$","link","4",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]]
+6:null
diff --git a/.next/server/app/space/page.js b/.next/server/app/space/page.js
index c108e51..dfd8869 100644
--- a/.next/server/app/space/page.js
+++ b/.next/server/app/space/page.js
@@ -1,720 +1 @@
-(() => {
-var exports = {};
-exports.id = 514;
-exports.ids = [514];
-exports.modules = {
-
-/***/ 252:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/cookie");
-
-/***/ }),
-
-/***/ 7999:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/path-to-regexp");
-
-/***/ }),
-
-/***/ 8038:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react");
-
-/***/ }),
-
-/***/ 8704:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-dom/server-rendering-stub");
-
-/***/ }),
-
-/***/ 7897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-server-dom-webpack/client");
-
-/***/ }),
-
-/***/ 6786:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react/jsx-runtime");
-
-/***/ }),
-
-/***/ 1090:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/app-render/get-segment-param.js");
-
-/***/ }),
-
-/***/ 8652:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/future/helpers/interception-routes.js");
-
-/***/ }),
-
-/***/ 3280:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/app-router-context.js");
-
-/***/ }),
-
-/***/ 9274:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/hooks-client-context.js");
-
-/***/ }),
-
-/***/ 1751:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
-
-/***/ }),
-
-/***/ 1668:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/handle-smooth-scroll.js");
-
-/***/ }),
-
-/***/ 1897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
-
-/***/ }),
-
-/***/ 8854:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
-
-/***/ }),
-
-/***/ 3297:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
-
-/***/ }),
-
-/***/ 3349:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/server-inserted-html.js");
-
-/***/ }),
-
-/***/ 1017:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("path");
-
-/***/ }),
-
-/***/ 7310:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("url");
-
-/***/ }),
-
-/***/ 3014:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "AppRouter": () => (/* reexport default from dynamic */ next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default.a),
-/* harmony export */ "GlobalError": () => (/* reexport default from dynamic */ next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default.a),
-/* harmony export */ "LayoutRouter": () => (/* reexport default from dynamic */ next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default.a),
-/* harmony export */ "RenderFromTemplateContext": () => (/* reexport default from dynamic */ next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default.a),
-/* harmony export */ "StaticGenerationSearchParamsBailoutProvider": () => (/* reexport default from dynamic */ next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default.a),
-/* harmony export */ "__next_app_webpack_require__": () => (/* binding */ __next_app_webpack_require__),
-/* harmony export */ "actionAsyncStorage": () => (/* reexport safe */ next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__.actionAsyncStorage),
-/* harmony export */ "createSearchParamsBailoutProxy": () => (/* reexport safe */ next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__.createSearchParamsBailoutProxy),
-/* harmony export */ "decodeAction": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeAction),
-/* harmony export */ "decodeReply": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeReply),
-/* harmony export */ "originalPathname": () => (/* binding */ originalPathname),
-/* harmony export */ "pages": () => (/* binding */ pages),
-/* harmony export */ "preconnect": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preconnect),
-/* harmony export */ "preloadFont": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadFont),
-/* harmony export */ "preloadStyle": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadStyle),
-/* harmony export */ "renderToReadableStream": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.renderToReadableStream),
-/* harmony export */ "requestAsyncStorage": () => (/* reexport safe */ next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__.requestAsyncStorage),
-/* harmony export */ "serverHooks": () => (/* reexport module object */ next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__),
-/* harmony export */ "staticGenerationAsyncStorage": () => (/* reexport safe */ next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__.staticGenerationAsyncStorage),
-/* harmony export */ "staticGenerationBailout": () => (/* reexport safe */ next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__.staticGenerationBailout),
-/* harmony export */ "tree": () => (/* binding */ tree)
-/* harmony export */ });
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4592);
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6301);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7431);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2673);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(94);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4437);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6127);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(5486);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(6404);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(2527);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(3332);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__);
-/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(7902);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(3099);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__);
-
- const tree = {
- children: [
- '',
- {
- children: [
- 'space',
- {
- children: ['__PAGE__', {}, {
- page: [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 6374)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\page.tsx"],
-
- }]
- },
- {
- 'loading': [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4494)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\loading.tsx"],
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- },
- {
- 'layout': [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 729)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- }.children;
- const pages = ["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\page.tsx"];
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- const __next_app_webpack_require__ = __webpack_require__
-
-
- const originalPathname = "/space/page"
-
-
-/***/ }),
-
-/***/ 8522:
-/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
-
-Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 7711))
-
-/***/ }),
-
-/***/ 3259:
-/***/ (() => {
-
-
-
-/***/ }),
-
-/***/ 7711:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-// ESM COMPAT FLAG
-__webpack_require__.r(__webpack_exports__);
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- "default": () => (/* binding */ Sp)
-});
-
-// EXTERNAL MODULE: external "next/dist/compiled/react/jsx-runtime"
-var jsx_runtime_ = __webpack_require__(6786);
-// EXTERNAL MODULE: external "next/dist/compiled/react"
-var react_ = __webpack_require__(8038);
-// EXTERNAL MODULE: ./node_modules/next/dist/shared/lib/app-dynamic.js
-var app_dynamic = __webpack_require__(5319);
-var app_dynamic_default = /*#__PURE__*/__webpack_require__.n(app_dynamic);
-;// CONCATENATED MODULE: ./app/space/loading.tsx
-
-function Loading() {
- return /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "flex h-screen justify-center items-center",
- children: /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "flex items-center justify-center rounded-full w-14 h-14 bg-gradient-to-tr from-cyan-400 to-blue-900 animate-spin",
- children: /*#__PURE__*/ jsx_runtime_.jsx("div", {
- className: "h-10 w-10 rounded-full bg-black"
- })
- })
- });
-}
-
-// EXTERNAL MODULE: ./node_modules/tweakpane/dist/tweakpane.js
-var tweakpane = __webpack_require__(1853);
-// EXTERNAL MODULE: ./node_modules/@babylonjs/core/index.js + 1254 modules
-var core = __webpack_require__(6803);
-;// CONCATENATED MODULE: ./app/space/BabylonInteractivity.tsx
-/* __next_internal_client_entry_do_not_use__ default auto */
-
-let canvas;
-let engine;
-let scene;
-let camera;
-let starshader;
-let nebulashaders = [];
-function hashString(string) {
- var hash = 0, i, chr;
- for(i = 0; i < string.length; i++){
- chr = string.charCodeAt(i);
- hash = (hash << 5) - hash + chr;
- hash |= 0; // Convert to 32bit integer
- }
- return Math.abs(hash);
-}
-function mulberry32(a) {
- var t = a += 0x6D2B79F5;
- t = Math.imul(t ^ t >>> 15, t | 1);
- t ^= t + Math.imul(t ^ t >>> 7, t | 61);
- return ((t ^ t >>> 14) >>> 0) / 4294967296;
-}
-let lastseed;
-let seednum;
-class BabylonInteractivity {
- static generateFrame() {
- if (!canvas) return;
- let starttime = performance.now();
- const parameters = getParameters();
- // Resize canvas if necessary
- if (canvas.width != parameters.width || canvas.height != parameters.height) {
- this.resizeFrame(parameters.width, parameters.height);
- }
- // Only rehash seed if necessary
- if (lastseed != parameters.seed) {
- seednum = mulberry32(hashString(parameters.seed));
- lastseed = parameters.seed;
- console.log(1);
- }
- // Apply new parameters
- starshader.onApply = (effect)=>{
- effect.setFloat("seed", seednum + 5);
- effect.setFloat("density", parameters.density / 100);
- effect.setFloat("brightness", parameters.brightness / 100);
- };
- for(let i = 0; i < nebulashaders.length; i++){
- camera.detachPostProcess(nebulashaders[i]);
- }
- for(let i = 0; i < parameters.count; i++){
- camera.attachPostProcess(nebulashaders[i]);
- nebulashaders[i].onApply = (effect)=>{
- effect.setFloat("seed", seednum * 1000 * (i + 1));
- effect.setFloat4("color", parameters[`color${i + 1}`].r / 255, parameters[`color${i + 1}`].g / 255, parameters[`color${i + 1}`].b / 255, 1);
- effect.setUInt("nebulascale", parameters.scale);
- effect.setUInt("depth", parameters.depth);
- effect.setFloat("intensity", parameters.intensity / 100 - 1);
- effect.setFloat("falloff", parameters.falloff);
- effect.setFloat("persistence", parameters.persistence);
- };
- //BUG: Renders are delayed by one render
- nebulashaders[i].onApplyObservable.add((effect)=>{
- effect.setTextureSampler("textureSamplerSampler", nebulashaders[i].inputTexture.texture);
- });
- }
- scene.onAfterRenderObservable.addOnce(()=>{
- console.log(`Rendered in ${Math.round((performance.now() - starttime) * 100) / 100}ms`);
- });
- engine.beginFrame();
- scene.render();
- engine.endFrame();
- }
- static resizeFrame(width, height) {
- canvas.style.width = width.toString() + "px";
- canvas.style.height = height.toString() + "px";
- engine.resize();
- }
- static async exportFrame() {
- const parameters = getParameters();
- core/* Tools.CreateScreenshotUsingRenderTarget */.w1W.CreateScreenshotUsingRenderTarget(engine, camera, {
- width: canvas.width,
- height: canvas.height
- }, undefined, undefined, undefined, undefined, `nebula-${parameters.seed}`);
- this.generateFrame();
- }
- static setTransparency(bool) {
- if (bool) scene.clearColor = new core/* Color4 */.HEv(0, 0, 0, 0);
- else scene.clearColor = new core/* Color4 */.HEv(0, 0, 0, 1);
- }
- static initialize(newcanvas, newengine, newscene, newcamera) {
- canvas = newcanvas;
- engine = newengine;
- scene = newscene;
- camera = newcamera;
- starshader = new core/* PostProcess */.Dso("StarShader", "stars", null, null, 1, camera, undefined, engine, true, undefined, undefined, undefined, undefined, undefined, undefined, core/* ShaderLanguage.WGSL */.xeF.WGSL);
- camera.attachPostProcess(starshader);
- for(let i = 0; i < 10; i++){
- nebulashaders.push(new core/* PostProcess */.Dso("NebulaShader", "nebulas", null, null, 1, camera, undefined, engine, true, undefined, undefined, undefined, undefined, undefined, undefined, core/* ShaderLanguage.WGSL */.xeF.WGSL));
- }
- }
-}
-
-;// CONCATENATED MODULE: ./app/space/ParameterPanel.tsx
-/* __next_internal_client_entry_do_not_use__ default,getParameters auto */
-
-let pane;
-function ParameterPanel() {
- pane = new tweakpane.Pane({
- title: "Parameters",
- container: document.getElementById("TweakPane") || undefined
- });
- let canvasparameters = {
- width: window.innerWidth,
- height: window.innerHeight,
- transparent: false,
- autoupdate: false
- };
- let canvasfolder = pane.addFolder({
- title: "Canvas",
- expanded: true
- });
- canvasfolder.addInput(canvasparameters, "width", {
- min: 100,
- max: 7680,
- step: 1
- });
- canvasfolder.addInput(canvasparameters, "height", {
- min: 100,
- max: 4320,
- step: 1
- });
- canvasfolder.addInput(canvasparameters, "transparent").on("change", ()=>{
- console.log(1);
- BabylonInteractivity.setTransparency(canvasparameters.transparent);
- });
- let starparameters = {
- density: 1.5,
- brightness: 100
- };
- let starfolder = pane.addFolder({
- title: "Stars",
- expanded: true
- });
- starfolder.addInput(starparameters, "density", {
- min: 0,
- max: 10,
- step: 0.01,
- format: (value)=>value.toFixed(2) + "%"
- });
- starfolder.addInput(starparameters, "brightness", {
- min: 0,
- max: 200,
- step: 0.1,
- format: (value)=>value.toFixed(1) + "%"
- });
- let nebulaparameters = {
- count: 2,
- scale: 5,
- depth: 2,
- intensity: 100,
- falloff: 2,
- persistence: 0.5
- };
- let nebulafolder = pane.addFolder({
- title: "Nebula",
- expanded: true
- });
- nebulafolder.addInput(nebulaparameters, "count", {
- min: 0,
- max: 3,
- step: 1
- }).on("change", ()=>{
- if (nebulaparameters.count == 0) {
- colorfolder.hidden = true;
- } else {
- colorfolder.hidden = false;
- for(let i = 0; i < colorinputs.length; i++){
- if (i < nebulaparameters.count) {
- colorinputs[i].hidden = false;
- } else {
- colorinputs[i].hidden = true;
- }
- }
- }
- pane.refresh();
- });
- let colorparameters = {};
- let colorfolder = nebulafolder.addFolder({
- title: "Colors",
- expanded: false
- });
- let colorinputs = [];
- for(let i = 0; i < 3; i++){
- colorparameters["color" + (i + 1)] = {
- r: Math.ceil(255 * Math.random()),
- g: Math.ceil(255 * Math.random()),
- b: Math.ceil(255 * Math.random())
- };
- colorinputs.push(colorfolder.addInput(colorparameters, "color" + (i + 1)));
- if (i > nebulaparameters.count - 1) {
- colorinputs[i].hidden = true;
- }
- }
- nebulafolder.addInput(nebulaparameters, "scale", {
- min: 1,
- max: 50,
- step: 1
- });
- nebulafolder.addInput(nebulaparameters, "depth", {
- min: 0,
- max: 20,
- step: 1
- });
- nebulafolder.addInput(nebulaparameters, "intensity", {
- min: 50,
- max: 150,
- step: 1,
- format: (value)=>value + "%"
- });
- nebulafolder.addInput(nebulaparameters, "falloff", {
- min: 1,
- max: 10,
- step: 0.1
- });
- nebulafolder.addInput(nebulaparameters, "persistence", {
- min: 0,
- max: 1,
- step: 0.01
- });
- let seedparameters = {
- seed: "" + Math.floor(Math.random() * Math.pow(10, 12))
- };
- let seedfolder = pane.addFolder({
- title: "Seed",
- expanded: false
- });
- seedfolder.addInput(seedparameters, "seed", {
- format: (value)=>value.toFixed(0)
- });
- seedfolder.addButton({
- title: "Randomize seed"
- }).on("click", ()=>{
- seedparameters.seed = Math.floor(Math.random() * 10 ** 12).toString();
- pane.refresh();
- BabylonInteractivity.generateFrame();
- });
- pane.addSeparator();
- pane.addButton({
- title: "Render"
- }).on("click", ()=>{
- BabylonInteractivity.generateFrame();
- });
- pane.addButton({
- title: "Render Random"
- }).on("click", ()=>{
- seedparameters.seed = Math.floor(Math.random() * Math.pow(10, 12)).toString();
- for(let i = 0; i < 3; i++){
- colorparameters["color" + (i + 1)] = {
- r: Math.ceil(255 * Math.random()),
- g: Math.ceil(255 * Math.random()),
- b: Math.ceil(255 * Math.random())
- };
- }
- pane.refresh();
- BabylonInteractivity.generateFrame();
- });
- pane.addSeparator();
- pane.addButton({
- title: "Save Image"
- }).on("click", ()=>{
- BabylonInteractivity.exportFrame();
- });
- pane.addSeparator();
- pane.addInput(canvasparameters, "autoupdate");
- pane.on("change", (event)=>{
- let changedvalue = event.presetKey;
- if (canvasparameters.autoupdate) {
- if (changedvalue == "width" || changedvalue == "height") {
- BabylonInteractivity.resizeFrame(canvasparameters.width, canvasparameters.height);
- }
- BabylonInteractivity.generateFrame();
- }
- });
-}
-function getParameters() {
- return pane.exportPreset();
-}
-
-;// CONCATENATED MODULE: ./app/space/page.tsx
-/* __next_internal_client_entry_do_not_use__ default auto */
-
-
-
-
-const BabylonScene = app_dynamic_default()(null, {
- loadableGenerated: {
- modules: [
- "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\page.tsx -> " + "./BabylonScene"
- ]
- },
- ssr: false
-});
-function Sp() {
- const [loaded, setLoaded] = (0,react_.useState)(false);
- // Execute setLoaded(true) on the client side immediately after
- // HomePage() is rendered. This will change the state and trigger
- // re-render of HomePage().
- // We want the immediate re-rendering to happen because
- // 1) first time (back when `loaded === false` was true) when we render
- // we ddon't render BabylonScene component at all
- // (see `loaded && ...` line below) and so the page *renders completely*
- // (and, hopefully, on the server) except with no Babylon.js scene/stuff
- // on it (crawlers, bots, page speed analysers will love that!).
- // 2) rendering it for the second time immediately after, we will actually
- // render BabylonScene component, and so BabylonScene.render() will add the
- // canvas node to the DOM tree and BabylonScene.componentDidMount() will
- // execute all our Babylon {engine, scene, cameras, light, etc} setup on
- // the client side immediately after the component (canvas element)
- // is mounted to the DOM.
- (0,react_.useEffect)(()=>{
- setLoaded(true);
- ParameterPanel();
- }, []);
- return /*#__PURE__*/ (0,jsx_runtime_.jsxs)("main", {
- children: [
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
- id: "TweakPane",
- className: "fixed top-2.5 right-2.5"
- }),
- loaded && /*#__PURE__*/ jsx_runtime_.jsx(BabylonScene, {}),
- !loaded && /*#__PURE__*/ jsx_runtime_.jsx(Loading, {})
- ]
- });
-}
-
-
-/***/ }),
-
-/***/ 4494:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "default": () => (/* binding */ Loading)
-/* harmony export */ });
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6786);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
-
-function Loading() {
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
- className: "flex h-screen justify-center items-center",
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
- className: "flex items-center justify-center rounded-full w-14 h-14 bg-gradient-to-tr from-cyan-400 to-blue-900 animate-spin",
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
- className: "h-10 w-10 rounded-full bg-black"
- })
- })
- });
-}
-
-
-/***/ }),
-
-/***/ 6374:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "$$typeof": () => (/* binding */ $$typeof),
-/* harmony export */ "__esModule": () => (/* binding */ __esModule),
-/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
-/* harmony export */ });
-/* harmony import */ var next_dist_build_webpack_loaders_next_flight_loader_module_proxy__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1313);
-
-const proxy = (0,next_dist_build_webpack_loaders_next_flight_loader_module_proxy__WEBPACK_IMPORTED_MODULE_0__.createProxy)(String.raw`X:\Some Useful Stuff\Applications\Web\next-sukadia.dev\app\space\page.tsx`)
-
-// Accessing the __esModule property and exporting $$typeof are required here.
-// The __esModule getter forces the proxy target to create the default export
-// and the $$typeof value is for rendering logic to determine if the module
-// is a client boundary.
-const { __esModule, $$typeof } = proxy;
-const __default__ = proxy.default;
-
-
-/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__default__);
-
-/***/ })
-
-};
-;
-
-// load runtime
-var __webpack_require__ = require("../../webpack-runtime.js");
-__webpack_require__.C(exports);
-var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
-var __webpack_exports__ = __webpack_require__.X(0, [405,616,864,816], () => (__webpack_exec__(3014)));
-module.exports = __webpack_exports__;
-
-})();
\ No newline at end of file
+(()=>{var e={};e.id=514,e.ids=[514],e.modules={5403:e=>{"use strict";e.exports=require("next/dist/client/components/request-async-storage.external")},4749:e=>{"use strict";e.exports=require("next/dist/client/components/static-generation-async-storage.external")},399:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},5528:e=>{"use strict";e.exports=require("next/dist\\client\\components\\action-async-storage.external.js")},1877:e=>{"use strict";e.exports=require("next/dist\\client\\components\\request-async-storage.external.js")},5319:e=>{"use strict";e.exports=require("next/dist\\client\\components\\static-generation-async-storage.external.js")},1017:e=>{"use strict";e.exports=require("path")},7310:e=>{"use strict";e.exports=require("url")},8899:(e,t,a)=>{"use strict";a.r(t),a.d(t,{GlobalError:()=>i.a,__next_app__:()=>u,originalPathname:()=>p,pages:()=>c,routeModule:()=>h,tree:()=>l});var n=a(7096),r=a(6132),s=a(7284),i=a.n(s),o=a(2564),d={};for(let e in o)0>["default","tree","pages","GlobalError","originalPathname","__next_app__","routeModule"].indexOf(e)&&(d[e]=()=>o[e]);a.d(t,d);let l=["",{children:["space",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(a.bind(a,5237)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\page.tsx"]}]},{loading:[()=>Promise.resolve().then(a.bind(a,9771)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\loading.tsx"],metadata:{icon:[async e=>(await Promise.resolve().then(a.bind(a,7481))).default(e)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(a.bind(a,5345)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],"not-found":[()=>Promise.resolve().then(a.t.bind(a,9291,23)),"next/dist/client/components/not-found-error"],metadata:{icon:[async e=>(await Promise.resolve().then(a.bind(a,7481))).default(e)],apple:[],openGraph:[],twitter:[],manifest:void 0}}],c=["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\page.tsx"],p="/space/page",u={require:a,loadChunk:()=>Promise.resolve()},h=new n.AppPageRouteModule({definition:{kind:r.x.APP_PAGE,page:"/space/page",pathname:"/space",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:l}})},4038:(e,t,a)=>{Promise.resolve().then(a.bind(a,9663))},5303:()=>{},7690:(e,t,a)=>{"use strict";let n,r,s,i,o,d,l;a.d(t,{Z:()=>BabylonInteractivity});var c=a(4494),p=a(102);let u=[];function hashString(e){var t,a=0;for(t=0;t>>15,1|t),(((t^=t+Math.imul(t^t>>>7,61|t))^t>>>14)>>>0)/4294967296}let BabylonInteractivity=class BabylonInteractivity{static generateFrame(){if(!n)return;let e=performance.now(),t=(0,p.g)();(n.width!=t.width||n.height!=t.height)&&this.resizeFrame(t.width,t.height),d!=t.seed&&(l=mulberry32(hashString(t.seed)),d=t.seed,console.log(1)),o.onApply=e=>{e.setFloat("seed",l+5),e.setFloat("density",t.density/100),e.setFloat("brightness",t.brightness/100)};for(let e=0;e{a.setFloat("seed",1e3*l*(e+1)),a.setFloat4("color",t[`color${e+1}`].r/255,t[`color${e+1}`].g/255,t[`color${e+1}`].b/255,1),a.setUInt("nebulascale",t.scale),a.setUInt("depth",t.depth),a.setFloat("intensity",t.intensity/100-1),a.setFloat("falloff",t.falloff),a.setFloat("persistence",t.persistence)},u[e].onApplyObservable.add(t=>{t.setTextureSampler("textureSamplerSampler",u[e].inputTexture.texture)});s.onAfterRenderObservable.addOnce(()=>{console.log(`Rendered in ${Math.round((performance.now()-e)*100)/100}ms`)}),r.beginFrame(),s.render(),r.endFrame()}static resizeFrame(e,t){n.style.width=e.toString()+"px",n.style.height=t.toString()+"px",r.resize()}static async exportFrame(){let e=(0,p.g)();c.w1W.CreateScreenshotUsingRenderTarget(r,i,{width:n.width,height:n.height},void 0,void 0,void 0,void 0,`nebula-${e.seed}`),this.generateFrame()}static setTransparency(e){e?s.clearColor=new c.HEv(0,0,0,0):s.clearColor=new c.HEv(0,0,0,1)}static initialize(e,t,a,d){n=e,r=t,s=a,i=d,o=new c.Dso("StarShader","stars",null,null,1,i,void 0,r,!0,void 0,void 0,void 0,void 0,void 0,void 0,c.xeF.WGSL),i.attachPostProcess(o);for(let e=0;e<10;e++)u.push(new c.Dso("NebulaShader","nebulas",null,null,1,i,void 0,r,!0,void 0,void 0,void 0,void 0,void 0,void 0,c.xeF.WGSL))}}},102:(e,t,a)=>{"use strict";let n;a.d(t,{Z:()=>ParameterPanel,g:()=>getParameters});var r=a(6224),s=a(7690);function ParameterPanel(){n=new r.Pane({title:"Parameters",container:document.getElementById("TweakPane")||void 0});let e={width:window.innerWidth,height:window.innerHeight,transparent:!1,autoupdate:!1},t=n.addFolder({title:"Canvas",expanded:!0});t.addInput(e,"width",{min:100,max:7680,step:1}),t.addInput(e,"height",{min:100,max:4320,step:1}),t.addInput(e,"transparent").on("change",()=>{console.log(1),s.Z.setTransparency(e.transparent)});let a={density:1.5,brightness:100},i=n.addFolder({title:"Stars",expanded:!0});i.addInput(a,"density",{min:0,max:10,step:.01,format:e=>e.toFixed(2)+"%"}),i.addInput(a,"brightness",{min:0,max:200,step:.1,format:e=>e.toFixed(1)+"%"});let o={count:2,scale:5,depth:2,intensity:100,falloff:2,persistence:.5},d=n.addFolder({title:"Nebula",expanded:!0});d.addInput(o,"count",{min:0,max:3,step:1}).on("change",()=>{if(0==o.count)c.hidden=!0;else{c.hidden=!1;for(let e=0;eo.count-1&&(p[e].hidden=!0);d.addInput(o,"scale",{min:1,max:50,step:1}),d.addInput(o,"depth",{min:0,max:20,step:1}),d.addInput(o,"intensity",{min:50,max:150,step:1,format:e=>e+"%"}),d.addInput(o,"falloff",{min:1,max:10,step:.1}),d.addInput(o,"persistence",{min:0,max:1,step:.01});let u={seed:""+Math.floor(1e12*Math.random())},h=n.addFolder({title:"Seed",expanded:!1});h.addInput(u,"seed",{format:e=>e.toFixed(0)}),h.addButton({title:"Randomize seed"}).on("click",()=>{u.seed=Math.floor(1e12*Math.random()).toString(),n.refresh(),s.Z.generateFrame()}),n.addSeparator(),n.addButton({title:"Render"}).on("click",()=>{s.Z.generateFrame()}),n.addButton({title:"Render Random"}).on("click",()=>{u.seed=Math.floor(1e12*Math.random()).toString();for(let e=0;e<3;e++)l["color"+(e+1)]={r:Math.ceil(255*Math.random()),g:Math.ceil(255*Math.random()),b:Math.ceil(255*Math.random())};n.refresh(),s.Z.generateFrame()}),n.addSeparator(),n.addButton({title:"Save Image"}).on("click",()=>{s.Z.exportFrame()}),n.addSeparator(),n.addInput(e,"autoupdate"),n.on("change",t=>{let a=t.presetKey;e.autoupdate&&(("width"==a||"height"==a)&&s.Z.resizeFrame(e.width,e.height),s.Z.generateFrame())})}function getParameters(){return n.exportPreset()}},9663:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>Sp});var n=a(784),r=a(9885),s=a(3642),i=a.n(s);function Loading(){return n.jsx("div",{className:"flex h-screen justify-center items-center",children:n.jsx("div",{className:"flex items-center justify-center rounded-full w-14 h-14 bg-gradient-to-tr from-cyan-400 to-blue-900 animate-spin",children:n.jsx("div",{className:"h-10 w-10 rounded-full bg-black"})})})}var o=a(102);let d=i()(()=>a.e(106).then(a.bind(a,4106)),{loadableGenerated:{modules:["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\page.tsx -> ./BabylonScene"]},ssr:!1});function Sp(){let[e,t]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{t(!0),(0,o.Z)()},[]),(0,n.jsxs)("main",{children:[n.jsx("div",{id:"TweakPane",className:"fixed top-2.5 right-2.5"}),e&&n.jsx(d,{}),!e&&n.jsx(Loading,{})]})}},9771:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>Loading});var n=a(4656);function Loading(){return n.jsx("div",{className:"flex h-screen justify-center items-center",children:n.jsx("div",{className:"flex items-center justify-center rounded-full w-14 h-14 bg-gradient-to-tr from-cyan-400 to-blue-900 animate-spin",children:n.jsx("div",{className:"h-10 w-10 rounded-full bg-black"})})})}},5237:(e,t,a)=>{"use strict";a.r(t),a.d(t,{$$typeof:()=>i,__esModule:()=>s,default:()=>d});var n=a(5153);let r=(0,n.createProxy)(String.raw`X:\Some Useful Stuff\Applications\Web\next-sukadia.dev\app\space\page.tsx`),{__esModule:s,$$typeof:i}=r,o=r.default,d=o},7481:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var n=a(8531);let __WEBPACK_DEFAULT_EXPORT__=e=>{let t=(0,n.fillMetadataSegment)(".",e.params,"favicon.ico");return[{type:"image/x-icon",sizes:"16x16",url:t+""}]}}};var t=require("../../webpack-runtime.js");t.C(e);var __webpack_exec__=e=>t(t.s=e),a=t.X(0,[862,323,984,622],()=>__webpack_exec__(8899));module.exports=a})();
\ No newline at end of file
diff --git a/.next/server/app/space/page.js.nft.json b/.next/server/app/space/page.js.nft.json
index e3639a7..886634f 100644
--- a/.next/server/app/space/page.js.nft.json
+++ b/.next/server/app/space/page.js.nft.json
@@ -1 +1 @@
-{"version":1,"files":["../../webpack-runtime.js","../../chunks/405.js","../../chunks/616.js","../../chunks/864.js","../../chunks/816.js","../../../package.json","../../../../node_modules/next/package.json","../../../../node_modules/next/dist/shared/lib/app-router-context.js","../../../../node_modules/next/dist/shared/lib/hooks-client-context.js","../../../../node_modules/next/dist/shared/lib/server-inserted-html.js","../../../../node_modules/next/dist/server/app-render/get-segment-param.js","../../../../node_modules/next/dist/server/future/helpers/interception-routes.js","../../../../node_modules/react/package.json","../../../../node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js","../../../../node_modules/next/dist/shared/lib/router/utils/handle-smooth-scroll.js","../../../../node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../node_modules/next/dist/shared/lib/router/utils/parse-path.js","../../../../node_modules/react/index.js","../../../../node_modules/next/dist/compiled/react/jsx-runtime.js","../../../../node_modules/next/dist/compiled/react-dom/server-rendering-stub.js","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.js","../../../../node_modules/next/dist/compiled/react/package.json","../../../../node_modules/next/dist/compiled/react-dom/package.json","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/package.json","../../../../node_modules/next/dist/compiled/path-to-regexp/index.js","../../../../node_modules/next/dist/compiled/react/index.js","../../../../node_modules/react/cjs/react.production.min.js","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/next/dist/compiled/cookie/package.json","../../../../node_modules/next/dist/compiled/cookie/index.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.production.min.js","../../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.development.js","../../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.production.min.js","../../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.development.js","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.browser.js","../../../../node_modules/next/dist/compiled/react/cjs/react.production.min.js","../../../../node_modules/next/dist/compiled/react/cjs/react.development.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js","../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../node_modules/@swc/helpers/_/_interop_require_wildcard/package.json","../../../../node_modules/@swc/helpers/package.json","../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs","../../../../node_modules/react-dom/package.json","../../../../node_modules/react-dom/index.js","../../../../node_modules/react-dom/cjs/react-dom.production.min.js","../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../node_modules/scheduler/package.json","../../../../node_modules/scheduler/index.js","../../../../node_modules/scheduler/cjs/scheduler.production.min.js","../../../../node_modules/scheduler/cjs/scheduler.development.js","../../../../package.json"]}
\ No newline at end of file
+{"version":1,"files":["../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/package.json","../../../../package.json","../../../package.json","../../chunks/106.js","../../chunks/2.js","../../chunks/201.js","../../chunks/310.js","../../chunks/323.js","../../chunks/622.js","../../chunks/676.js","../../chunks/837.js","../../chunks/840.js","../../chunks/862.js","../../chunks/984.js","../../chunks/font-manifest.json","../../webpack-runtime.js","page_client-reference-manifest.js"]}
\ No newline at end of file
diff --git a/.next/server/app/space/page_client-reference-manifest.js b/.next/server/app/space/page_client-reference-manifest.js
new file mode 100644
index 0000000..2c62eb3
--- /dev/null
+++ b/.next/server/app/space/page_client-reference-manifest.js
@@ -0,0 +1 @@
+globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/space/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"341":{"*":{"id":"9663","name":"*","chunks":[],"async":false}},"3170":{"*":{"id":"4714","name":"*","chunks":[],"async":false}},"3728":{"*":{"id":"3724","name":"*","chunks":[],"async":false}},"6916":{"*":{"id":"5698","name":"*","chunks":[],"async":false}},"6954":{"*":{"id":"4900","name":"*","chunks":[],"async":false}},"7264":{"*":{"id":"5392","name":"*","chunks":[],"async":false}},"8297":{"*":{"id":"8898","name":"*","chunks":[],"async":false}},"9928":{"*":{"id":"5365","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\font\\google\\target.css?{\"path\":\"app\\\\layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":1371,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\globals.scss":{"id":595,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx":{"id":6916,"name":"*","chunks":["986","static/chunks/986-37229c658d9b7b30.js","931","static/chunks/app/page-39b6caed82efc627.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\page.tsx":{"id":341,"name":"*","chunks":["732","static/chunks/e1206f8c-ab5b5541f866e530.js","105","static/chunks/1f3d3139-f107a678ff6361e9.js","735","static/chunks/604a08ec-59af37265fb99b3d.js","790","static/chunks/d67c510a-e497b3cd5bf43bb4.js","116","static/chunks/537cd76e-7aba1cf7a4752418.js","173","static/chunks/173-2ffa9652644381a8.js","514","static/chunks/app/space/page-b8120f6d5470d1c7.js"],"async":false}},"entryCSSFiles":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\_not-found":[],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout":["static/css/1d2d59615145af7d.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page":["static/css/60c69e914bf8dd4b.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\page":[],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\space\\loading":[]}}
\ No newline at end of file
diff --git a/.next/server/app/wiston.html b/.next/server/app/wiston.html
index ab9b752..f44fe18 100644
--- a/.next/server/app/wiston.html
+++ b/.next/server/app/wiston.html
@@ -1 +1 @@
-sukadia.dev ‎ -+=-:. - ‎ .*%#%#%%%%#*+-. ++= .:-==: ‎ =%%########%##%%%*-. ++-# .-+*%%%###%#- ‎ .#%%################%%#=:=+- .+=--+= -+#%%##########%#. ‎ -%%####################%%+--=*: ==-----# --. -*%%%###############%= ‎ *%%#####################%+-----+=-------*:+=-+--*%%%#################%#%# ‎ .#%%###############%#%#####---*+-----------+--=*%%#######################%%%: ‎ .%%################%@=+*%%%=--+**#=---***=-=++#%############################%%- ‎ .%%#################%@+---+*---#***#=+#***#*%%%%####################%%%######%%%- ‎ %%###################%*--------#**********#%%######################%%#%%%######%@- ‎ #%####################%%--=+===+*********#%%#######################%%###%%#######%@- ‎ +%%#####################@+-=#**********#%%%########################%%#####%%#######%@: ‎ .%######################%%%--+******##%%%%%########################%%#######%%%######%%. ‎ #%###########%%%%%%%%%%%%%%#--==*##%%%%%##########################%@#########%%#######%% ‎ :%%###########%%###%%%%%%%%#%%#*%%###%%###########################%%%##########%%#######%* ‎ *%######%%##%%%%%#######%#####%%####%%#############################@##%%%%#####%%#######%%= ‎ .%%######%%%%%%%%%##################%%#############################%%#%%##%%##%#%%#########%. ‎ =%#######%@%%%######################%##############################%%%%####%%@%%#@%########%# ‎ ######%%%%%%%######################################################%@%######%%#%#%##########%- ‎ %%#%%%%%%%%########################################################%@%#########%%%###########% ‎ .%%%%%%%%%###########################################################%###########%@###########%+ ‎ =#%%%%%%########################################################################################% ‎ +%%%%%############################################%%#%############################################%- ‎ =%%%%##########%#########################################%%##########################################%%**++======+**#% ‎ -#%%%#########################################################%####################################%###################%. ‎ *%%%#####################################################################################################%###%##########% ‎ .#%###################################################################%##%###############%###############################%# ‎ .+%##############################################################################%#########################################%= ‎ .+%#########################################################################################################################%% ‎ +%##########################################################################################################################%%. ‎ =%#################################################################################%%@%%#####################################%%: ‎ -#################################################################################%@@@%#######################################%%. ‎ :################################################################################%@@#%########################################%%+ ‎ +%#############################################################################%@@#- +######################################%+. ‎ -#############################################################################%@@#= :*#################################%*- ‎ =%##########################################################################%@%*- :==- +################################%. ‎ -.:+######################################################################%%@%* =#####: ####+=---::--=+*##################. ‎ - :+###################################################################%%##- *#%%*=- =-. .-*##############%+: ‎ : .-+####################################################################: #%@+--- =############%#= ‎ - :=+################################################################+ -%%%%%+ +%%%%%%%%#*=: ‎ .:. :-+*############################################################: :+*+- - .... ‎ ::. .:=+*########################################################=. = ‎ ::. .:-=*####################################################*: .- ‎ ::. .:-=+*##########################################*=: .- ‎ .:: ..:--==++***################***++===-::. .- ‎ :-. ..... ..:::. .= ‎ .::. .-+****+====+==: + ‎ :::. .-+#*=:. . + ‎ .::. .=*#+: .::::. =: ‎ .... =*=. ::::: .+ ‎ .:::. ::::. + ‎ .:::::.. .:::::. .= ‎ .::::::::::::.......::::::::::+-. =. ‎ ...... .+. + ‎ .::+ .- ‎ .::. +. .: ‎ -: :-. :: ‎ -- .-=: .:::. :. ‎ --.-=:. .---. :. ‎ -=. ==: :=-. :. ‎ :+: :-+. .-=: - ‎ :+- .=-. :=-. - ‎ .+- :-- :=- :. - ‎ .+=. = -=: :: .- ‎ .+=. =:-: -+: .-. .- ‎ .==. .:::::--:.=+ .=: :- .: ‎ ::=:---: .---. .:--+: .-. :: ‎ --. .+-:. .--: :- :. ‎ :- .. .:: .-. -. ‎ :: : .=. :: -. ‎ = .: .+: ::. -. ‎ =. - +. .:. -. ‎ + - .+ :: :: ‎ + . :-. + .:. :: ‎ + .: :- =. .:. .- ‎ -. .: :- .--. .:: .- ‎ = ::. .= == :: .- ‎ :: ::: :: .:-- .:. - ‎ -. .:::: = :---. .:. :. ‎ :. .:::::::=:--:. :: :. ‎ .:. :-= .: ‎ .:: .-. .: ‎ ::. .-: - ‎ .::. :-. = ‎ :::: .-. .= ‎ ::::. :: .- ‎ .::::::::::::. :- ‎ - -: ‎ - = ‎ ::::-----:::::=. = ‎ ::--:. .: .: ‎ :--:. : : ‎ :--. .-: : ‎ ----------. .==. - ‎ = -+. .- ‎ =. .+- = ‎ +. .*: + ‎ .::--: .*. + ‎ .- .+. :- ‎ :: +. --: ‎ -. :- .---::::. ‎ .: + .- ‎ = .- .- ‎ -. -. := ‎ = = .-=: ‎ -: - .=---: ‎ = -. .--:- ‎ = ....:::-= .=. ‎ ..::::......:::::::::::. + .:.. .::::. :== ‎ :::::::. .::-::::: = .... :---:. .:-==: ‎ .- .. .:-::: = .:.. .:--:. -- ‎ .:=. :+ .:. ::::. .* ‎ -: :: ::. :::: *. ‎ .: -. .-. .. .:. -- ‎ - .-: .=. .= .=- =. .+ ‎ - -=. .=. -. :+. +: .+ ‎ - =- .=. = :*. +: + ‎ .: := -: - .*. :+ =. ‎ :. * .-. + +: *. .- ‎ :: + :-. --:. .* .* ::. ‎ ::. + --. ...-:. := .+ :-: ‎ .::. =: .::.....::::::::::::::::.... .:. .::. .::= .+ :-:. ‎ ..-.::::::.. ...... .:::::::. .::::--. + .. .:--: ‎ .:::::::::... ..... + .... .:--:: ‎ ..::::::::..:- .:..:::::. .::-:::::
\ No newline at end of file
+wiston ‎ -+=-:. - ‎ .*%#%#%%%%#*+-. ++= .:-==: ‎ =%%########%##%%%*-. ++-# .-+*%%%###%#- ‎ .#%%################%%#=:=+- .+=--+= -+#%%##########%#. ‎ -%%####################%%+--=*: ==-----# --. -*%%%###############%= ‎ *%%#####################%+-----+=-------*:+=-+--*%%%#################%#%# ‎ .#%%###############%#%#####---*+-----------+--=*%%#######################%%%: ‎ .%%################%@=+*%%%=--+**#=---***=-=++#%############################%%- ‎ .%%#################%@+---+*---#***#=+#***#*%%%%####################%%%######%%%- ‎ %%###################%*--------#**********#%%######################%%#%%%######%@- ‎ #%####################%%--=+===+*********#%%#######################%%###%%#######%@- ‎ +%%#####################@+-=#**********#%%%########################%%#####%%#######%@: ‎ .%######################%%%--+******##%%%%%########################%%#######%%%######%%. ‎ #%###########%%%%%%%%%%%%%%#--==*##%%%%%##########################%@#########%%#######%% ‎ :%%###########%%###%%%%%%%%#%%#*%%###%%###########################%%%##########%%#######%* ‎ *%######%%##%%%%%#######%#####%%####%%#############################@##%%%%#####%%#######%%= ‎ .%%######%%%%%%%%%##################%%#############################%%#%%##%%##%#%%#########%. ‎ =%#######%@%%%######################%##############################%%%%####%%@%%#@%########%# ‎ ######%%%%%%%######################################################%@%######%%#%#%##########%- ‎ %%#%%%%%%%%########################################################%@%#########%%%###########% ‎ .%%%%%%%%%###########################################################%###########%@###########%+ ‎ =#%%%%%%########################################################################################% ‎ +%%%%%############################################%%#%############################################%- ‎ =%%%%##########%#########################################%%##########################################%%**++======+**#% ‎ -#%%%#########################################################%####################################%###################%. ‎ *%%%#####################################################################################################%###%##########% ‎ .#%###################################################################%##%###############%###############################%# ‎ .+%##############################################################################%#########################################%= ‎ .+%#########################################################################################################################%% ‎ +%##########################################################################################################################%%. ‎ =%#################################################################################%%@%%#####################################%%: ‎ -#################################################################################%@@@%#######################################%%. ‎ :################################################################################%@@#%########################################%%+ ‎ +%#############################################################################%@@#- +######################################%+. ‎ -#############################################################################%@@#= :*#################################%*- ‎ =%##########################################################################%@%*- :==- +################################%. ‎ -.:+######################################################################%%@%* =#####: ####+=---::--=+*##################. ‎ - :+###################################################################%%##- *#%%*=- =-. .-*##############%+: ‎ : .-+####################################################################: #%@+--- =############%#= ‎ - :=+################################################################+ -%%%%%+ +%%%%%%%%#*=: ‎ .:. :-+*############################################################: :+*+- - .... ‎ ::. .:=+*########################################################=. = ‎ ::. .:-=*####################################################*: .- ‎ ::. .:-=+*##########################################*=: .- ‎ .:: ..:--==++***################***++===-::. .- ‎ :-. ..... ..:::. .= ‎ .::. .-+****+====+==: + ‎ :::. .-+#*=:. . + ‎ .::. .=*#+: .::::. =: ‎ .... =*=. ::::: .+ ‎ .:::. ::::. + ‎ .:::::.. .:::::. .= ‎ .::::::::::::.......::::::::::+-. =. ‎ ...... .+. + ‎ .::+ .- ‎ .::. +. .: ‎ -: :-. :: ‎ -- .-=: .:::. :. ‎ --.-=:. .---. :. ‎ -=. ==: :=-. :. ‎ :+: :-+. .-=: - ‎ :+- .=-. :=-. - ‎ .+- :-- :=- :. - ‎ .+=. = -=: :: .- ‎ .+=. =:-: -+: .-. .- ‎ .==. .:::::--:.=+ .=: :- .: ‎ ::=:---: .---. .:--+: .-. :: ‎ --. .+-:. .--: :- :. ‎ :- .. .:: .-. -. ‎ :: : .=. :: -. ‎ = .: .+: ::. -. ‎ =. - +. .:. -. ‎ + - .+ :: :: ‎ + . :-. + .:. :: ‎ + .: :- =. .:. .- ‎ -. .: :- .--. .:: .- ‎ = ::. .= == :: .- ‎ :: ::: :: .:-- .:. - ‎ -. .:::: = :---. .:. :. ‎ :. .:::::::=:--:. :: :. ‎ .:. :-= .: ‎ .:: .-. .: ‎ ::. .-: - ‎ .::. :-. = ‎ :::: .-. .= ‎ ::::. :: .- ‎ .::::::::::::. :- ‎ - -: ‎ - = ‎ ::::-----:::::=. = ‎ ::--:. .: .: ‎ :--:. : : ‎ :--. .-: : ‎ ----------. .==. - ‎ = -+. .- ‎ =. .+- = ‎ +. .*: + ‎ .::--: .*. + ‎ .- .+. :- ‎ :: +. --: ‎ -. :- .---::::. ‎ .: + .- ‎ = .- .- ‎ -. -. := ‎ = = .-=: ‎ -: - .=---: ‎ = -. .--:- ‎ = ....:::-= .=. ‎ ..::::......:::::::::::. + .:.. .::::. :== ‎ :::::::. .::-::::: = .... :---:. .:-==: ‎ .- .. .:-::: = .:.. .:--:. -- ‎ .:=. :+ .:. ::::. .* ‎ -: :: ::. :::: *. ‎ .: -. .-. .. .:. -- ‎ - .-: .=. .= .=- =. .+ ‎ - -=. .=. -. :+. +: .+ ‎ - =- .=. = :*. +: + ‎ .: := -: - .*. :+ =. ‎ :. * .-. + +: *. .- ‎ :: + :-. --:. .* .* ::. ‎ ::. + --. ...-:. := .+ :-: ‎ .::. =: .::.....::::::::::::::::.... .:. .::. .::= .+ :-:. ‎ ..-.::::::.. ...... .:::::::. .::::--. + .. .:--: ‎ .:::::::::... ..... + .... .:--:: ‎ ..::::::::..:- .:..:::::. .::-:::::
\ No newline at end of file
diff --git a/.next/server/app/wiston.meta b/.next/server/app/wiston.meta
index 8dc4f28..ddd29df 100644
--- a/.next/server/app/wiston.meta
+++ b/.next/server/app/wiston.meta
@@ -1 +1,5 @@
-{"headers":{"x-next-cache-tags":"/wiston/page"}}
\ No newline at end of file
+{
+ "headers": {
+ "x-next-cache-tags": "_N_T_/layout,_N_T_/wiston/layout,_N_T_/wiston/page,_N_T_/wiston"
+ }
+}
\ No newline at end of file
diff --git a/.next/server/app/wiston.rsc b/.next/server/app/wiston.rsc
index d4bc822..d07b312 100644
--- a/.next/server/app/wiston.rsc
+++ b/.next/server/app/wiston.rsc
@@ -1,8 +1,7 @@
-1:HL["/_next/static/css/3930d1a0ca01c66f.css",{"as":"style"}]
-0:[[["",{"children":["wiston",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/3930d1a0ca01c66f.css","precedence":"next"}]],["$L3",null]]]]
-4:I{"id":"4463","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-5:I{"id":"1010","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-6:I{"id":"4143","chunks":["272:static/chunks/webpack-54b114c68857d808.js","667:static/chunks/2443530c-097fe1871e1d7679.js","488:static/chunks/488-66ca2c1db348e680.js"],"name":"","async":false}
-7:I{"id":"1899","chunks":["619:static/chunks/app/wiston/page-becb82f49ed47545.js"],"name":"","async":false}
-2:[["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_0ec1f4","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","wiston","children"],"error":"$undefined","errorStyles":"$undefined","loading":"$undefined","loadingStyles":"$undefined","hasLoading":false,"template":["$","$L5",null,{}],"templateStyles":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":[["$","$L6",null,{"propsForComponent":{"params":{}},"Component":"$7"}],null],"segment":"__PAGE__"},"styles":[]}],"segment":"wiston"},"styles":[]}]}]}],null]
-3:[[["$","meta",null,{"charSet":"utf-8"}],["$","title",null,{"children":"sukadia.dev"}],["$","meta",null,{"name":"description","content":"I code, stream, and create videos."}],null,null,null,null,null,null,null,null,["$","meta",null,{"name":"viewport","content":"width=device-width, initial-scale=1"}],null,null,null,null,null,null,null,null,null,null,[]],[null,null,null,null],null,null,[null,null,null,null,null],null,null,null,null,[null,[["$","link",null,{"rel":"icon","href":"\\favicon.ico","type":"image/x-icon","sizes":"any"}]],[],null]]
+1:HL["/_next/static/css/1d2d59615145af7d.css","style",{"crossOrigin":""}]
+0:["9CqSqX2Hqhh4fwiD8kSfJ",[[["",{"children":["wiston",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/1d2d59615145af7d.css","precedence":"next","crossOrigin":""}]],"$L3"]]]]
+4:I[6954,[],""]
+5:I[7264,[],""]
+2:[null,["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__className_e66fe9","children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[],"childProp":{"current":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","wiston","children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","childProp":{"current":["$L6",["$","main",null,{"className":"flex flex-col items-center","children":["$","span",null,{"className":"whitespace-pre-wrap font-mono text-[0.2rem] leading-[0.25rem]","children":["‎ -+=-:. - ",["$","br",null,{}],"‎ .*%#%#%%%%#*+-. ++= .:-==: ",["$","br",null,{}],"‎ =%%########%##%%%*-. ++-# .-+*%%%###%#- ",["$","br",null,{}],"‎ .#%%################%%#=:=+- .+=--+= -+#%%##########%#. ",["$","br",null,{}],"‎ -%%####################%%+--=*: ==-----# --. -*%%%###############%= ",["$","br",null,{}],"‎ *%%#####################%+-----+=-------*:+=-+--*%%%#################%#%# ",["$","br",null,{}],"‎ .#%%###############%#%#####---*+-----------+--=*%%#######################%%%: ",["$","br",null,{}],"‎ .%%################%@=+*%%%=--+**#=---***=-=++#%############################%%- ",["$","br",null,{}],"‎ .%%#################%@+---+*---#***#=+#***#*%%%%####################%%%######%%%- ",["$","br",null,{}],"‎ %%###################%*--------#**********#%%######################%%#%%%######%@- ",["$","br",null,{}],"‎ #%####################%%--=+===+*********#%%#######################%%###%%#######%@- ",["$","br",null,{}],"‎ +%%#####################@+-=#**********#%%%########################%%#####%%#######%@: ",["$","br",null,{}],"‎ .%######################%%%--+******##%%%%%########################%%#######%%%######%%. ",["$","br",null,{}],"‎ #%###########%%%%%%%%%%%%%%#--==*##%%%%%##########################%@#########%%#######%% ",["$","br",null,{}],"‎ :%%###########%%###%%%%%%%%#%%#*%%###%%###########################%%%##########%%#######%* ",["$","br",null,{}],"‎ *%######%%##%%%%%#######%#####%%####%%#############################@##%%%%#####%%#######%%= ",["$","br",null,{}],"‎ .%%######%%%%%%%%%##################%%#############################%%#%%##%%##%#%%#########%. ",["$","br",null,{}],"‎ =%#######%@%%%######################%##############################%%%%####%%@%%#@%########%# ",["$","br",null,{}],"‎ ######%%%%%%%######################################################%@%######%%#%#%##########%- ",["$","br",null,{}],"‎ %%#%%%%%%%%########################################################%@%#########%%%###########% ",["$","br",null,{}],"‎ .%%%%%%%%%###########################################################%###########%@###########%+ ",["$","br",null,{}],"‎ =#%%%%%%########################################################################################% ",["$","br",null,{}],"‎ +%%%%%############################################%%#%############################################%- ",["$","br",null,{}],"‎ =%%%%##########%#########################################%%##########################################%%**++======+**#% ",["$","br",null,{}],"‎ -#%%%#########################################################%####################################%###################%. ",["$","br",null,{}],"‎ *%%%#####################################################################################################%###%##########% ",["$","br",null,{}],"‎ .#%###################################################################%##%###############%###############################%# ",["$","br",null,{}],"‎ .+%##############################################################################%#########################################%= ",["$","br",null,{}],"‎ .+%#########################################################################################################################%% ",["$","br",null,{}],"‎ +%##########################################################################################################################%%. ",["$","br",null,{}],"‎ =%#################################################################################%%@%%#####################################%%: ",["$","br",null,{}],"‎ -#################################################################################%@@@%#######################################%%. ",["$","br",null,{}],"‎ :################################################################################%@@#%########################################%%+ ",["$","br",null,{}],"‎ +%#############################################################################%@@#- +######################################%+. ",["$","br",null,{}],"‎ -#############################################################################%@@#= :*#################################%*- ",["$","br",null,{}],"‎ =%##########################################################################%@%*- :==- +################################%. ",["$","br",null,{}],"‎ -.:+######################################################################%%@%* =#####: ####+=---::--=+*##################. ",["$","br",null,{}],"‎ - :+###################################################################%%##- *#%%*=- =-. .-*##############%+: ",["$","br",null,{}],"‎ : .-+####################################################################: #%@+--- =############%#= ",["$","br",null,{}],"‎ - :=+################################################################+ -%%%%%+ +%%%%%%%%#*=: ",["$","br",null,{}],"‎ .:. :-+*############################################################: :+*+- - .... ",["$","br",null,{}],"‎ ::. .:=+*########################################################=. = ",["$","br",null,{}],"‎ ::. .:-=*####################################################*: .- ",["$","br",null,{}],"‎ ::. .:-=+*##########################################*=: .- ",["$","br",null,{}],"‎ .:: ..:--==++***################***++===-::. .- ",["$","br",null,{}],"‎ :-. ..... ..:::. .= ",["$","br",null,{}],"‎ .::. .-+****+====+==: + ",["$","br",null,{}],"‎ :::. .-+#*=:. . + ",["$","br",null,{}],"‎ .::. .=*#+: .::::. =: ",["$","br",null,{}],"‎ .... =*=. ::::: .+ ",["$","br",null,{}],"‎ .:::. ::::. + ",["$","br",null,{}],"‎ .:::::.. .:::::. .= ",["$","br",null,{}],"‎ .::::::::::::.......::::::::::+-. =. ",["$","br",null,{}],"‎ ...... .+. + ",["$","br",null,{}],"‎ .::+ .- ",["$","br",null,{}],"‎ .::. +. .: ",["$","br",null,{}],"‎ -: :-. :: ",["$","br",null,{}],"‎ -- .-=: .:::. :. ",["$","br",null,{}],"‎ --.-=:. .---. :. ",["$","br",null,{}],"‎ -=. ==: :=-. :. ",["$","br",null,{}],"‎ :+: :-+. .-=: - ",["$","br",null,{}],"‎ :+- .=-. :=-. - ",["$","br",null,{}],"‎ .+- :-- :=- :. - ",["$","br",null,{}],"‎ .+=. = -=: :: .- ",["$","br",null,{}],"‎ .+=. =:-: -+: .-. .- ",["$","br",null,{}],"‎ .==. .:::::--:.=+ .=: :- .: ",["$","br",null,{}],"‎ ::=:---: .---. .:--+: .-. :: ",["$","br",null,{}],"‎ --. .+-:. .--: :- :. ",["$","br",null,{}],"‎ :- .. .:: .-. -. ",["$","br",null,{}],"‎ :: : .=. :: -. ",["$","br",null,{}],"‎ = .: .+: ::. -. ",["$","br",null,{}],"‎ =. - +. .:. -. ",["$","br",null,{}],"‎ + - .+ :: :: ",["$","br",null,{}],"‎ + . :-. + .:. :: ",["$","br",null,{}],"‎ + .: :- =. .:. .- ",["$","br",null,{}],"‎ -. .: :- .--. .:: .- ",["$","br",null,{}],"‎ = ::. .= == :: .- ",["$","br",null,{}],"‎ :: ::: :: .:-- .:. - ",["$","br",null,{}],"‎ -. .:::: = :---. .:. :. ",["$","br",null,{}],"‎ :. .:::::::=:--:. :: :. ",["$","br",null,{}],"‎ .:. :-= .: ",["$","br",null,{}],"‎ .:: .-. .: ",["$","br",null,{}],"‎ ::. .-: - ",["$","br",null,{}],"‎ .::. :-. = ",["$","br",null,{}],"‎ :::: .-. .= ",["$","br",null,{}],"‎ ::::. :: .- ",["$","br",null,{}],"‎ .::::::::::::. :- ",["$","br",null,{}],"‎ - -: ",["$","br",null,{}],"‎ - = ",["$","br",null,{}],"‎ ::::-----:::::=. = ",["$","br",null,{}],"‎ ::--:. .: .: ",["$","br",null,{}],"‎ :--:. : : ",["$","br",null,{}],"‎ :--. .-: : ",["$","br",null,{}],"‎ ----------. .==. - ",["$","br",null,{}],"‎ = -+. .- ",["$","br",null,{}],"‎ =. .+- = ",["$","br",null,{}],"‎ +. .*: + ",["$","br",null,{}],"‎ .::--: .*. + ",["$","br",null,{}],"‎ .- .+. :- ",["$","br",null,{}],"‎ :: +. --: ",["$","br",null,{}],"‎ -. :- .---::::. ",["$","br",null,{}],"‎ .: + .-",["$","br",null,{}],"‎ = .- .-",["$","br",null,{}],"‎ -. -. :=",["$","br",null,{}],"‎ = = .-=: ",["$","br",null,{}],"‎ -: - .=---: ",["$","br",null,{}],"‎ = -. .--:- ",["$","br",null,{}],"‎ = ....:::-= .=. ",["$","br",null,{}],"‎ ..::::......:::::::::::. + .:.. .::::. :== ",["$","br",null,{}],"‎ :::::::. .::-::::: = .... :---:. .:-==: ",["$","br",null,{}],"‎ .- .. .:-::: = .:.. .:--:. -- ",["$","br",null,{}],"‎ .:=. :+ .:. ::::. .* ",["$","br",null,{}],"‎ -: :: ::. :::: *. ",["$","br",null,{}],"‎ .: -. .-. .. .:. -- ",["$","br",null,{}],"‎ - .-: .=. .= .=- =. .+ ",["$","br",null,{}],"‎ - -=. .=. -. :+. +: .+ ",["$","br",null,{}],"‎ - =- .=. = :*. +: + ",["$","br",null,{}],"‎ .: := -: - .*. :+ =. ",["$","br",null,{}],"‎ :. * .-. + +: *. .- ",["$","br",null,{}],"‎ :: + :-. --:. .* .* ::. ",["$","br",null,{}],"‎ ::. + --. ...-:. := .+ :-: ",["$","br",null,{}],"‎ .::. =: .::.....::::::::::::::::.... .:. .::. .::= .+ :-:. ",["$","br",null,{}],"‎ ..-.::::::.. ...... .:::::::. .::::--. + .. .:--: ",["$","br",null,{}],"‎ .:::::::::... ..... + .... .:--:: ",["$","br",null,{}],"‎ ..::::::::..:- .:..:::::. .::-::::: ",["$","br",null,{}]]}]}],null],"segment":"__PAGE__"},"styles":null}],"segment":"wiston"},"styles":null}]}]}],null]
+3:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"wiston"}],["$","meta","3",{"name":"description","content":"I code, stream, and create videos."}],["$","link","4",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]]
+6:null
diff --git a/.next/server/app/wiston/page.js b/.next/server/app/wiston/page.js
index 68aec72..8327831 100644
--- a/.next/server/app/wiston/page.js
+++ b/.next/server/app/wiston/page.js
@@ -1,593 +1 @@
-(() => {
-var exports = {};
-exports.id = 619;
-exports.ids = [619];
-exports.modules = {
-
-/***/ 252:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/cookie");
-
-/***/ }),
-
-/***/ 7999:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/path-to-regexp");
-
-/***/ }),
-
-/***/ 8038:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react");
-
-/***/ }),
-
-/***/ 8704:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-dom/server-rendering-stub");
-
-/***/ }),
-
-/***/ 7897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react-server-dom-webpack/client");
-
-/***/ }),
-
-/***/ 6786:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/compiled/react/jsx-runtime");
-
-/***/ }),
-
-/***/ 1090:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/app-render/get-segment-param.js");
-
-/***/ }),
-
-/***/ 8652:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/server/future/helpers/interception-routes.js");
-
-/***/ }),
-
-/***/ 3280:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/app-router-context.js");
-
-/***/ }),
-
-/***/ 9274:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/hooks-client-context.js");
-
-/***/ }),
-
-/***/ 1751:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
-
-/***/ }),
-
-/***/ 1668:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/handle-smooth-scroll.js");
-
-/***/ }),
-
-/***/ 1897:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
-
-/***/ }),
-
-/***/ 8854:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
-
-/***/ }),
-
-/***/ 3297:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
-
-/***/ }),
-
-/***/ 3349:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("next/dist/shared/lib/server-inserted-html.js");
-
-/***/ }),
-
-/***/ 1017:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("path");
-
-/***/ }),
-
-/***/ 7310:
-/***/ ((module) => {
-
-"use strict";
-module.exports = require("url");
-
-/***/ }),
-
-/***/ 7390:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "AppRouter": () => (/* reexport default from dynamic */ next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default.a),
-/* harmony export */ "GlobalError": () => (/* reexport default from dynamic */ next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default.a),
-/* harmony export */ "LayoutRouter": () => (/* reexport default from dynamic */ next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default.a),
-/* harmony export */ "RenderFromTemplateContext": () => (/* reexport default from dynamic */ next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default.a),
-/* harmony export */ "StaticGenerationSearchParamsBailoutProvider": () => (/* reexport default from dynamic */ next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default.a),
-/* harmony export */ "__next_app_webpack_require__": () => (/* binding */ __next_app_webpack_require__),
-/* harmony export */ "actionAsyncStorage": () => (/* reexport safe */ next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__.actionAsyncStorage),
-/* harmony export */ "createSearchParamsBailoutProxy": () => (/* reexport safe */ next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__.createSearchParamsBailoutProxy),
-/* harmony export */ "decodeAction": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeAction),
-/* harmony export */ "decodeReply": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.decodeReply),
-/* harmony export */ "originalPathname": () => (/* binding */ originalPathname),
-/* harmony export */ "pages": () => (/* binding */ pages),
-/* harmony export */ "preconnect": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preconnect),
-/* harmony export */ "preloadFont": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadFont),
-/* harmony export */ "preloadStyle": () => (/* reexport safe */ next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__.preloadStyle),
-/* harmony export */ "renderToReadableStream": () => (/* reexport safe */ react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__.renderToReadableStream),
-/* harmony export */ "requestAsyncStorage": () => (/* reexport safe */ next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__.requestAsyncStorage),
-/* harmony export */ "serverHooks": () => (/* reexport module object */ next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__),
-/* harmony export */ "staticGenerationAsyncStorage": () => (/* reexport safe */ next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__.staticGenerationAsyncStorage),
-/* harmony export */ "staticGenerationBailout": () => (/* reexport safe */ next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__.staticGenerationBailout),
-/* harmony export */ "tree": () => (/* binding */ tree)
-/* harmony export */ });
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4592);
-/* harmony import */ var next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_app_router__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6301);
-/* harmony import */ var next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_layout_router__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7431);
-/* harmony import */ var next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_render_from_template_context__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2673);
-/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(94);
-/* harmony import */ var next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_async_storage__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4437);
-/* harmony import */ var next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_request_async_storage__WEBPACK_IMPORTED_MODULE_5__);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6127);
-/* harmony import */ var next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_action_async_storage__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(5486);
-/* harmony import */ var next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_bailout__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(6404);
-/* harmony import */ var next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_static_generation_searchparams_bailout_provider__WEBPACK_IMPORTED_MODULE_8__);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(2527);
-/* harmony import */ var next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_searchparams_bailout_proxy__WEBPACK_IMPORTED_MODULE_9__);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(3332);
-/* harmony import */ var next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_hooks_server_context__WEBPACK_IMPORTED_MODULE_10__);
-/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(7902);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(3099);
-/* harmony import */ var next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_rsc_preloads__WEBPACK_IMPORTED_MODULE_12__);
-
- const tree = {
- children: [
- '',
- {
- children: [
- 'wiston',
- {
- children: ['__PAGE__', {}, {
- page: [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 2967)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\wiston\\page.tsx"],
-
- }]
- },
- {
-
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- },
- {
- 'layout': [() => Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 729)), "X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],
- metadata: {
- icon: [(async (props) => (await Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 4756))).default(props))],
- apple: [],
- openGraph: [],
- twitter: [],
- manifest: undefined
- }
- }
- ]
- }.children;
- const pages = ["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\wiston\\page.tsx"];
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- const __next_app_webpack_require__ = __webpack_require__
-
-
- const originalPathname = "/wiston/page"
-
-
-/***/ }),
-
-/***/ 3784:
-/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
-
-Promise.resolve(/* import() eager */).then(__webpack_require__.bind(__webpack_require__, 5121))
-
-/***/ }),
-
-/***/ 5121:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "default": () => (/* binding */ Wiston),
-/* harmony export */ "metadata": () => (/* binding */ metadata)
-/* harmony export */ });
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6786);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
-/* __next_internal_client_entry_do_not_use__ metadata,default auto */
-const metadata = {
- title: "wiston"
-};
-function Wiston() {
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("main", {
- className: "flex flex-col items-center",
- children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", {
- className: "whitespace-pre-wrap font-mono text-[0.2rem] leading-[0.25rem]",
- children: [
- "‎ -+=-:. - ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .*%#%#%%%%#*+-. ++= .:-==: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ =%%########%##%%%*-. ++-# .-+*%%%###%#- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .#%%################%%#=:=+- .+=--+= -+#%%##########%#. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -%%####################%%+--=*: ==-----# --. -*%%%###############%= ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ *%%#####################%+-----+=-------*:+=-+--*%%%#################%#%# ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .#%%###############%#%#####---*+-----------+--=*%%#######################%%%: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .%%################%@=+*%%%=--+**#=---***=-=++#%############################%%- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .%%#################%@+---+*---#***#=+#***#*%%%%####################%%%######%%%- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ %%###################%*--------#**********#%%######################%%#%%%######%@- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ #%####################%%--=+===+*********#%%#######################%%###%%#######%@- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ +%%#####################@+-=#**********#%%%########################%%#####%%#######%@: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .%######################%%%--+******##%%%%%########################%%#######%%%######%%. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ #%###########%%%%%%%%%%%%%%#--==*##%%%%%##########################%@#########%%#######%% ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :%%###########%%###%%%%%%%%#%%#*%%###%%###########################%%%##########%%#######%* ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ *%######%%##%%%%%#######%#####%%####%%#############################@##%%%%#####%%#######%%= ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .%%######%%%%%%%%%##################%%#############################%%#%%##%%##%#%%#########%. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ =%#######%@%%%######################%##############################%%%%####%%@%%#@%########%# ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ######%%%%%%%######################################################%@%######%%#%#%##########%- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ %%#%%%%%%%%########################################################%@%#########%%%###########% ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .%%%%%%%%%###########################################################%###########%@###########%+ ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ =#%%%%%%########################################################################################% ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ +%%%%%############################################%%#%############################################%- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ =%%%%##########%#########################################%%##########################################%%**++======+**#% ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -#%%%#########################################################%####################################%###################%. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ *%%%#####################################################################################################%###%##########% ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .#%###################################################################%##%###############%###############################%# ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .+%##############################################################################%#########################################%= ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .+%#########################################################################################################################%% ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ +%##########################################################################################################################%%. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ =%#################################################################################%%@%%#####################################%%: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -#################################################################################%@@@%#######################################%%. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :################################################################################%@@#%########################################%%+ ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ +%#############################################################################%@@#- +######################################%+. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -#############################################################################%@@#= :*#################################%*- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ =%##########################################################################%@%*- :==- +################################%. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -.:+######################################################################%%@%* =#####: ####+=---::--=+*##################. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ - :+###################################################################%%##- *#%%*=- =-. .-*##############%+: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ : .-+####################################################################: #%@+--- =############%#= ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ - :=+################################################################+ -%%%%%+ +%%%%%%%%#*=: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .:. :-+*############################################################: :+*+- - .... ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::. .:=+*########################################################=. = ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::. .:-=*####################################################*: .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::. .:-=+*##########################################*=: .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .:: ..:--==++***################***++===-::. .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :-. ..... ..:::. .= ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::. .-+****+====+==: + ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :::. .-+#*=:. . + ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::. .=*#+: .::::. =: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .... =*=. ::::: .+ ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .:::. ::::. + ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .:::::.. .:::::. .= ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::::::::::::.......::::::::::+-. =. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ...... .+. + ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::+ .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::. +. .: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -: :-. :: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -- .-=: .:::. :. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ --.-=:. .---. :. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -=. ==: :=-. :. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :+: :-+. .-=: - ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :+- .=-. :=-. - ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .+- :-- :=- :. - ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .+=. = -=: :: .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .+=. =:-: -+: .-. .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .==. .:::::--:.=+ .=: :- .: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::=:---: .---. .:--+: .-. :: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ --. .+-:. .--: :- :. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :- .. .:: .-. -. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :: : .=. :: -. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ = .: .+: ::. -. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ =. - +. .:. -. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ + - .+ :: :: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ + . :-. + .:. :: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ + .: :- =. .:. .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -. .: :- .--. .:: .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ = ::. .= == :: .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :: ::: :: .:-- .:. - ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -. .:::: = :---. .:. :. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :. .:::::::=:--:. :: :. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .:. :-= .: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .:: .-. .: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::. .-: - ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::. :-. = ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :::: .-. .= ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::::. :: .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::::::::::::. :- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ - -: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ - = ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::::-----:::::=. = ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::--:. .: .: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :--:. : : ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :--. .-: : ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ----------. .==. - ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ = -+. .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ =. .+- = ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ +. .*: + ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::--: .*. + ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .- .+. :- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :: +. --: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -. :- .---::::. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .: + .-",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ = .- .-",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -. -. :=",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ = = .-=: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -: - .=---: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ = -. .--:- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ = ....:::-= .=. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ..::::......:::::::::::. + .:.. .::::. :== ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :::::::. .::-::::: = .... :---:. .:-==: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .- .. .:-::: = .:.. .:--:. -- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .:=. :+ .:. ::::. .* ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ -: :: ::. :::: *. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .: -. .-. .. .:. -- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ - .-: .=. .= .=- =. .+ ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ - -=. .=. -. :+. +: .+ ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ - =- .=. = :*. +: + ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .: := -: - .*. :+ =. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :. * .-. + +: *. .- ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ :: + :-. --:. .* .* ::. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ::. + --. ...-:. := .+ :-: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .::. =: .::.....::::::::::::::::.... .:. .::. .::= .+ :-:. ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ..-.::::::.. ...... .:::::::. .::::--. + .. .:--: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ .:::::::::... ..... + .... .:--:: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {}),
- "‎ ..::::::::..:- .:..:::::. .::-::::: ",
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("br", {})
- ]
- })
- });
-}
-
-
-/***/ }),
-
-/***/ 2967:
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ "$$typeof": () => (/* binding */ $$typeof),
-/* harmony export */ "__esModule": () => (/* binding */ __esModule),
-/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
-/* harmony export */ "metadata": () => (/* binding */ e0)
-/* harmony export */ });
-/* harmony import */ var next_dist_build_webpack_loaders_next_flight_loader_module_proxy__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1313);
-
-const proxy = (0,next_dist_build_webpack_loaders_next_flight_loader_module_proxy__WEBPACK_IMPORTED_MODULE_0__.createProxy)(String.raw`X:\Some Useful Stuff\Applications\Web\next-sukadia.dev\app\wiston\page.tsx`)
-
-// Accessing the __esModule property and exporting $$typeof are required here.
-// The __esModule getter forces the proxy target to create the default export
-// and the $$typeof value is for rendering logic to determine if the module
-// is a client boundary.
-const { __esModule, $$typeof } = proxy;
-const __default__ = proxy.default;
-
-const e0 = proxy["metadata"];
-
-
-/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__default__);
-
-/***/ })
-
-};
-;
-
-// load runtime
-var __webpack_require__ = require("../../webpack-runtime.js");
-__webpack_require__.C(exports);
-var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
-var __webpack_exports__ = __webpack_require__.X(0, [405,616,816], () => (__webpack_exec__(7390)));
-module.exports = __webpack_exports__;
-
-})();
\ No newline at end of file
+(()=>{var s={};s.id=619,s.ids=[619],s.modules={5403:s=>{"use strict";s.exports=require("next/dist/client/components/request-async-storage.external")},4749:s=>{"use strict";s.exports=require("next/dist/client/components/static-generation-async-storage.external")},399:s=>{"use strict";s.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},5528:s=>{"use strict";s.exports=require("next/dist\\client\\components\\action-async-storage.external.js")},1877:s=>{"use strict";s.exports=require("next/dist\\client\\components\\request-async-storage.external.js")},5319:s=>{"use strict";s.exports=require("next/dist\\client\\components\\static-generation-async-storage.external.js")},1017:s=>{"use strict";s.exports=require("path")},7310:s=>{"use strict";s.exports=require("url")},1663:(s,r,e)=>{"use strict";e.r(r),e.d(r,{GlobalError:()=>j.a,__next_app__:()=>p,originalPathname:()=>l,pages:()=>o,routeModule:()=>u,tree:()=>i});var x=e(7096),t=e(6132),b=e(7284),j=e.n(b),a=e(2564),n={};for(let s in a)0>["default","tree","pages","GlobalError","originalPathname","__next_app__","routeModule"].indexOf(s)&&(n[s]=()=>a[s]);e.d(r,n);let i=["",{children:["wiston",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(e.bind(e,5410)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\wiston\\page.tsx"]}]},{metadata:{icon:[async s=>(await Promise.resolve().then(e.bind(e,7481))).default(s)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(e.bind(e,5345)),"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout.tsx"],"not-found":[()=>Promise.resolve().then(e.t.bind(e,9291,23)),"next/dist/client/components/not-found-error"],metadata:{icon:[async s=>(await Promise.resolve().then(e.bind(e,7481))).default(s)],apple:[],openGraph:[],twitter:[],manifest:void 0}}],o=["X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\wiston\\page.tsx"],l="/wiston/page",p={require:e,loadChunk:()=>Promise.resolve()},u=new x.AppPageRouteModule({definition:{kind:t.x.APP_PAGE,page:"/wiston/page",pathname:"/wiston",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:i}})},5303:()=>{},5410:(s,r,e)=>{"use strict";e.r(r),e.d(r,{default:()=>Wiston,metadata:()=>t});var x=e(4656);let t={title:"wiston"};function Wiston(){return x.jsx("main",{className:"flex flex-col items-center",children:(0,x.jsxs)("span",{className:"whitespace-pre-wrap font-mono text-[0.2rem] leading-[0.25rem]",children:["‎ -+=-:. - ",x.jsx("br",{}),"‎ .*%#%#%%%%#*+-. ++= .:-==: ",x.jsx("br",{}),"‎ =%%########%##%%%*-. ++-# .-+*%%%###%#- ",x.jsx("br",{}),"‎ .#%%################%%#=:=+- .+=--+= -+#%%##########%#. ",x.jsx("br",{}),"‎ -%%####################%%+--=*: ==-----# --. -*%%%###############%= ",x.jsx("br",{}),"‎ *%%#####################%+-----+=-------*:+=-+--*%%%#################%#%# ",x.jsx("br",{}),"‎ .#%%###############%#%#####---*+-----------+--=*%%#######################%%%: ",x.jsx("br",{}),"‎ .%%################%@=+*%%%=--+**#=---***=-=++#%############################%%- ",x.jsx("br",{}),"‎ .%%#################%@+---+*---#***#=+#***#*%%%%####################%%%######%%%- ",x.jsx("br",{}),"‎ %%###################%*--------#**********#%%######################%%#%%%######%@- ",x.jsx("br",{}),"‎ #%####################%%--=+===+*********#%%#######################%%###%%#######%@- ",x.jsx("br",{}),"‎ +%%#####################@+-=#**********#%%%########################%%#####%%#######%@: ",x.jsx("br",{}),"‎ .%######################%%%--+******##%%%%%########################%%#######%%%######%%. ",x.jsx("br",{}),"‎ #%###########%%%%%%%%%%%%%%#--==*##%%%%%##########################%@#########%%#######%% ",x.jsx("br",{}),"‎ :%%###########%%###%%%%%%%%#%%#*%%###%%###########################%%%##########%%#######%* ",x.jsx("br",{}),"‎ *%######%%##%%%%%#######%#####%%####%%#############################@##%%%%#####%%#######%%= ",x.jsx("br",{}),"‎ .%%######%%%%%%%%%##################%%#############################%%#%%##%%##%#%%#########%. ",x.jsx("br",{}),"‎ =%#######%@%%%######################%##############################%%%%####%%@%%#@%########%# ",x.jsx("br",{}),"‎ ######%%%%%%%######################################################%@%######%%#%#%##########%- ",x.jsx("br",{}),"‎ %%#%%%%%%%%########################################################%@%#########%%%###########% ",x.jsx("br",{}),"‎ .%%%%%%%%%###########################################################%###########%@###########%+ ",x.jsx("br",{}),"‎ =#%%%%%%########################################################################################% ",x.jsx("br",{}),"‎ +%%%%%############################################%%#%############################################%- ",x.jsx("br",{}),"‎ =%%%%##########%#########################################%%##########################################%%**++======+**#% ",x.jsx("br",{}),"‎ -#%%%#########################################################%####################################%###################%. ",x.jsx("br",{}),"‎ *%%%#####################################################################################################%###%##########% ",x.jsx("br",{}),"‎ .#%###################################################################%##%###############%###############################%# ",x.jsx("br",{}),"‎ .+%##############################################################################%#########################################%= ",x.jsx("br",{}),"‎ .+%#########################################################################################################################%% ",x.jsx("br",{}),"‎ +%##########################################################################################################################%%. ",x.jsx("br",{}),"‎ =%#################################################################################%%@%%#####################################%%: ",x.jsx("br",{}),"‎ -#################################################################################%@@@%#######################################%%. ",x.jsx("br",{}),"‎ :################################################################################%@@#%########################################%%+ ",x.jsx("br",{}),"‎ +%#############################################################################%@@#- +######################################%+. ",x.jsx("br",{}),"‎ -#############################################################################%@@#= :*#################################%*- ",x.jsx("br",{}),"‎ =%##########################################################################%@%*- :==- +################################%. ",x.jsx("br",{}),"‎ -.:+######################################################################%%@%* =#####: ####+=---::--=+*##################. ",x.jsx("br",{}),"‎ - :+###################################################################%%##- *#%%*=- =-. .-*##############%+: ",x.jsx("br",{}),"‎ : .-+####################################################################: #%@+--- =############%#= ",x.jsx("br",{}),"‎ - :=+################################################################+ -%%%%%+ +%%%%%%%%#*=: ",x.jsx("br",{}),"‎ .:. :-+*############################################################: :+*+- - .... ",x.jsx("br",{}),"‎ ::. .:=+*########################################################=. = ",x.jsx("br",{}),"‎ ::. .:-=*####################################################*: .- ",x.jsx("br",{}),"‎ ::. .:-=+*##########################################*=: .- ",x.jsx("br",{}),"‎ .:: ..:--==++***################***++===-::. .- ",x.jsx("br",{}),"‎ :-. ..... ..:::. .= ",x.jsx("br",{}),"‎ .::. .-+****+====+==: + ",x.jsx("br",{}),"‎ :::. .-+#*=:. . + ",x.jsx("br",{}),"‎ .::. .=*#+: .::::. =: ",x.jsx("br",{}),"‎ .... =*=. ::::: .+ ",x.jsx("br",{}),"‎ .:::. ::::. + ",x.jsx("br",{}),"‎ .:::::.. .:::::. .= ",x.jsx("br",{}),"‎ .::::::::::::.......::::::::::+-. =. ",x.jsx("br",{}),"‎ ...... .+. + ",x.jsx("br",{}),"‎ .::+ .- ",x.jsx("br",{}),"‎ .::. +. .: ",x.jsx("br",{}),"‎ -: :-. :: ",x.jsx("br",{}),"‎ -- .-=: .:::. :. ",x.jsx("br",{}),"‎ --.-=:. .---. :. ",x.jsx("br",{}),"‎ -=. ==: :=-. :. ",x.jsx("br",{}),"‎ :+: :-+. .-=: - ",x.jsx("br",{}),"‎ :+- .=-. :=-. - ",x.jsx("br",{}),"‎ .+- :-- :=- :. - ",x.jsx("br",{}),"‎ .+=. = -=: :: .- ",x.jsx("br",{}),"‎ .+=. =:-: -+: .-. .- ",x.jsx("br",{}),"‎ .==. .:::::--:.=+ .=: :- .: ",x.jsx("br",{}),"‎ ::=:---: .---. .:--+: .-. :: ",x.jsx("br",{}),"‎ --. .+-:. .--: :- :. ",x.jsx("br",{}),"‎ :- .. .:: .-. -. ",x.jsx("br",{}),"‎ :: : .=. :: -. ",x.jsx("br",{}),"‎ = .: .+: ::. -. ",x.jsx("br",{}),"‎ =. - +. .:. -. ",x.jsx("br",{}),"‎ + - .+ :: :: ",x.jsx("br",{}),"‎ + . :-. + .:. :: ",x.jsx("br",{}),"‎ + .: :- =. .:. .- ",x.jsx("br",{}),"‎ -. .: :- .--. .:: .- ",x.jsx("br",{}),"‎ = ::. .= == :: .- ",x.jsx("br",{}),"‎ :: ::: :: .:-- .:. - ",x.jsx("br",{}),"‎ -. .:::: = :---. .:. :. ",x.jsx("br",{}),"‎ :. .:::::::=:--:. :: :. ",x.jsx("br",{}),"‎ .:. :-= .: ",x.jsx("br",{}),"‎ .:: .-. .: ",x.jsx("br",{}),"‎ ::. .-: - ",x.jsx("br",{}),"‎ .::. :-. = ",x.jsx("br",{}),"‎ :::: .-. .= ",x.jsx("br",{}),"‎ ::::. :: .- ",x.jsx("br",{}),"‎ .::::::::::::. :- ",x.jsx("br",{}),"‎ - -: ",x.jsx("br",{}),"‎ - = ",x.jsx("br",{}),"‎ ::::-----:::::=. = ",x.jsx("br",{}),"‎ ::--:. .: .: ",x.jsx("br",{}),"‎ :--:. : : ",x.jsx("br",{}),"‎ :--. .-: : ",x.jsx("br",{}),"‎ ----------. .==. - ",x.jsx("br",{}),"‎ = -+. .- ",x.jsx("br",{}),"‎ =. .+- = ",x.jsx("br",{}),"‎ +. .*: + ",x.jsx("br",{}),"‎ .::--: .*. + ",x.jsx("br",{}),"‎ .- .+. :- ",x.jsx("br",{}),"‎ :: +. --: ",x.jsx("br",{}),"‎ -. :- .---::::. ",x.jsx("br",{}),"‎ .: + .-",x.jsx("br",{}),"‎ = .- .-",x.jsx("br",{}),"‎ -. -. :=",x.jsx("br",{}),"‎ = = .-=: ",x.jsx("br",{}),"‎ -: - .=---: ",x.jsx("br",{}),"‎ = -. .--:- ",x.jsx("br",{}),"‎ = ....:::-= .=. ",x.jsx("br",{}),"‎ ..::::......:::::::::::. + .:.. .::::. :== ",x.jsx("br",{}),"‎ :::::::. .::-::::: = .... :---:. .:-==: ",x.jsx("br",{}),"‎ .- .. .:-::: = .:.. .:--:. -- ",x.jsx("br",{}),"‎ .:=. :+ .:. ::::. .* ",x.jsx("br",{}),"‎ -: :: ::. :::: *. ",x.jsx("br",{}),"‎ .: -. .-. .. .:. -- ",x.jsx("br",{}),"‎ - .-: .=. .= .=- =. .+ ",x.jsx("br",{}),"‎ - -=. .=. -. :+. +: .+ ",x.jsx("br",{}),"‎ - =- .=. = :*. +: + ",x.jsx("br",{}),"‎ .: := -: - .*. :+ =. ",x.jsx("br",{}),"‎ :. * .-. + +: *. .- ",x.jsx("br",{}),"‎ :: + :-. --:. .* .* ::. ",x.jsx("br",{}),"‎ ::. + --. ...-:. := .+ :-: ",x.jsx("br",{}),"‎ .::. =: .::.....::::::::::::::::.... .:. .::. .::= .+ :-:. ",x.jsx("br",{}),"‎ ..-.::::::.. ...... .:::::::. .::::--. + .. .:--: ",x.jsx("br",{}),"‎ .:::::::::... ..... + .... .:--:: ",x.jsx("br",{}),"‎ ..::::::::..:- .:..:::::. .::-::::: ",x.jsx("br",{})]})})}},7481:(s,r,e)=>{"use strict";e.r(r),e.d(r,{default:()=>__WEBPACK_DEFAULT_EXPORT__});var x=e(8531);let __WEBPACK_DEFAULT_EXPORT__=s=>{let r=(0,x.fillMetadataSegment)(".",s.params,"favicon.ico");return[{type:"image/x-icon",sizes:"16x16",url:r+""}]}}};var r=require("../../webpack-runtime.js");r.C(s);var __webpack_exec__=s=>r(r.s=s),e=r.X(0,[862,323,622],()=>__webpack_exec__(1663));module.exports=e})();
\ No newline at end of file
diff --git a/.next/server/app/wiston/page.js.nft.json b/.next/server/app/wiston/page.js.nft.json
index a7c8dc6..886634f 100644
--- a/.next/server/app/wiston/page.js.nft.json
+++ b/.next/server/app/wiston/page.js.nft.json
@@ -1 +1 @@
-{"version":1,"files":["../../webpack-runtime.js","../../chunks/405.js","../../chunks/616.js","../../chunks/816.js","../../../package.json","../../../../node_modules/next/package.json","../../../../node_modules/next/dist/shared/lib/app-router-context.js","../../../../node_modules/next/dist/shared/lib/hooks-client-context.js","../../../../node_modules/next/dist/shared/lib/server-inserted-html.js","../../../../node_modules/next/dist/server/app-render/get-segment-param.js","../../../../node_modules/next/dist/server/future/helpers/interception-routes.js","../../../../node_modules/react/package.json","../../../../node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js","../../../../node_modules/next/dist/shared/lib/router/utils/handle-smooth-scroll.js","../../../../node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../node_modules/next/dist/shared/lib/router/utils/parse-path.js","../../../../node_modules/react/index.js","../../../../node_modules/next/dist/compiled/react/jsx-runtime.js","../../../../node_modules/next/dist/compiled/react-dom/server-rendering-stub.js","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.js","../../../../node_modules/next/dist/compiled/react/package.json","../../../../node_modules/next/dist/compiled/react-dom/package.json","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/package.json","../../../../node_modules/next/dist/compiled/path-to-regexp/index.js","../../../../node_modules/next/dist/compiled/react/index.js","../../../../node_modules/react/cjs/react.production.min.js","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/next/dist/compiled/cookie/package.json","../../../../node_modules/next/dist/compiled/cookie/index.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.production.min.js","../../../../node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.development.js","../../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.production.min.js","../../../../node_modules/next/dist/compiled/react-dom/cjs/react-dom-server-rendering-stub.development.js","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/client.browser.js","../../../../node_modules/next/dist/compiled/react/cjs/react.production.min.js","../../../../node_modules/next/dist/compiled/react/cjs/react.development.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js","../../../../node_modules/next/dist/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js","../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../node_modules/@swc/helpers/_/_interop_require_wildcard/package.json","../../../../node_modules/@swc/helpers/package.json","../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs","../../../../node_modules/react-dom/package.json","../../../../node_modules/react-dom/index.js","../../../../node_modules/react-dom/cjs/react-dom.production.min.js","../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../node_modules/scheduler/package.json","../../../../node_modules/scheduler/index.js","../../../../node_modules/scheduler/cjs/scheduler.production.min.js","../../../../node_modules/scheduler/cjs/scheduler.development.js","../../../../package.json"]}
\ No newline at end of file
+{"version":1,"files":["../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/package.json","../../../../package.json","../../../package.json","../../chunks/106.js","../../chunks/2.js","../../chunks/201.js","../../chunks/310.js","../../chunks/323.js","../../chunks/622.js","../../chunks/676.js","../../chunks/837.js","../../chunks/840.js","../../chunks/862.js","../../chunks/984.js","../../chunks/font-manifest.json","../../webpack-runtime.js","page_client-reference-manifest.js"]}
\ No newline at end of file
diff --git a/.next/server/app/wiston/page_client-reference-manifest.js b/.next/server/app/wiston/page_client-reference-manifest.js
new file mode 100644
index 0000000..db0d848
--- /dev/null
+++ b/.next/server/app/wiston/page_client-reference-manifest.js
@@ -0,0 +1 @@
+globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/wiston/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"3170":{"*":{"id":"4714","name":"*","chunks":[],"async":false}},"3728":{"*":{"id":"3724","name":"*","chunks":[],"async":false}},"6916":{"*":{"id":"5698","name":"*","chunks":[],"async":false}},"6954":{"*":{"id":"4900","name":"*","chunks":[],"async":false}},"7264":{"*":{"id":"5392","name":"*","chunks":[],"async":false}},"8297":{"*":{"id":"8898","name":"*","chunks":[],"async":false}},"9928":{"*":{"id":"5365","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\app-router.js":{"id":3728,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\error-boundary.js":{"id":9928,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\layout-router.js":{"id":6954,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\not-found-boundary.js":{"id":3170,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\render-from-template-context.js":{"id":7264,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\esm\\client\\components\\static-generation-searchparams-bailout-provider.js":{"id":8297,"name":"*","chunks":[],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\font\\google\\target.css?{\"path\":\"app\\\\layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":1371,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\globals.scss":{"id":595,"name":"*","chunks":["185","static/chunks/app/layout-ca25527909104096.js"],"async":false},"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page.tsx":{"id":6916,"name":"*","chunks":["986","static/chunks/986-37229c658d9b7b30.js","931","static/chunks/app/page-39b6caed82efc627.js"],"async":false}},"entryCSSFiles":{"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\_not-found":[],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\layout":["static/css/1d2d59615145af7d.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\page":["static/css/60c69e914bf8dd4b.css"],"X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\app\\wiston\\page":[]}}
\ No newline at end of file
diff --git a/.next/server/chunks/106.js b/.next/server/chunks/106.js
new file mode 100644
index 0000000..1cd284b
--- /dev/null
+++ b/.next/server/chunks/106.js
@@ -0,0 +1,113 @@
+"use strict";exports.id=106,exports.ids=[106],exports.modules={4106:(e,r,n)=>{n.r(r),n.d(r,{default:()=>BabylonScene});var t=n(784),i=n(9885),s=n(4494),a=n(7690);let BabylonScene=class BabylonScene extends i.PureComponent{componentDidMount(){console.clear(),this.setup(this.canvas)}render(){return t.jsx(t.Fragment,{children:t.jsx("canvas",{id:this.id,ref:this.onMount,style:o})})}constructor(...e){super(...e),this.setup=async e=>{s.vGS.ShadersStoreWGSL.starsPixelShader=`
+ uniform seed : f32;
+ uniform density : f32;
+ uniform brightness : f32;
+
+ fn rand(seed : vec2) -> f32 {
+ return fract(sin(dot(seed, vec2(12.9898, 78.233))) * 43758.5453);
+ }
+
+ @fragment
+ fn main(input : FragmentInputs) -> FragmentOutputs {
+
+ let random = rand(input.vUV*uniforms.seed);
+ var brightness = 0.0;
+ if (random < uniforms.density){
+ brightness = random/uniforms.density*uniforms.brightness;
+ }
+ //fragmentOutputs.color = vec4(1., 1., 1., brightness);
+ fragmentOutputs.color = vec4(brightness, brightness, brightness, 1.);
+ }
+ `,s.vGS.ShadersStoreWGSL.nebulasPixelShader=`
+ var textureSampler: texture_2d;
+ var textureSamplerSampler: sampler;
+
+ uniform seed: f32;
+ uniform color: vec4;
+ uniform nebulascale: u32;
+ uniform depth: u32;
+ uniform intensity: f32;
+ uniform falloff: f32;
+ uniform persistence: f32;
+
+ fn mod289(x: vec2) -> vec2 {
+ return x - floor(x * (1. / 289.)) * 289.;
+ }
+
+ fn mod289_3(x: vec3) -> vec3 {
+ return x - floor(x * (1. / 289.)) * 289.;
+ }
+
+ fn permute3(x: vec3) -> vec3 {
+ return mod289_3(((x * 34.) + 1.) * x);
+ }
+
+ // MIT License. \xa9 Ian McEwan, Stefan Gustavson, Munrocket
+ fn simplexNoise2(v: vec2) -> f32 {
+ let C = vec4(
+ 0.211324865405187, // (3.0-sqrt(3.0))/6.0
+ 0.366025403784439, // 0.5*(sqrt(3.0)-1.0)
+ -0.577350269189626, // -1.0 + 2.0 * C.x
+ 0.024390243902439 // 1.0 / 41.0
+ );
+
+ // First corner
+ var i = floor(v + dot(v, C.yy));
+ let x0 = v - i + dot(i, C.xx);
+
+ // Other corners
+ var i1 = select(vec2(0., 1.), vec2(1., 0.), x0.x > x0.y);
+
+ // x0 = x0 - 0.0 + 0.0 * C.xx ;
+ // x1 = x0 - i1 + 1.0 * C.xx ;
+ // x2 = x0 - 1.0 + 2.0 * C.xx ;
+ var x12 = x0.xyxy + C.xxzz;
+ x12.x = x12.x - i1.x;
+ x12.y = x12.y - i1.y;
+
+ // Permutations
+ i = mod289(i); // Avoid truncation effects in permutation
+
+ var p = permute3(permute3(i.y + vec3(0., i1.y, 1.)) + i.x + vec3(0., i1.x, 1.));
+ var m = max(0.5 - vec3(dot(x0, x0), dot(x12.xy, x12.xy), dot(x12.zw, x12.zw)), vec3(0.));
+ m *= m;
+ m *= m;
+
+ // Gradients: 41 points uniformly over a line, mapped onto a diamond.
+ // The ring size 17*17 = 289 is close to a multiple of 41 (41*7 = 287)
+ let x = 2. * fract(p * C.www) - 1.;
+ let h = abs(x) - 0.5;
+ let ox = floor(x + 0.5);
+ let a0 = x - ox;
+
+ // Normalize gradients implicitly by scaling m
+ // Approximation of: m *= inversesqrt( a0*a0 + h*h );
+ m *= 1.79284291400159 - 0.85373472095314 * (a0 * a0 + h * h);
+
+ // Compute final noise value at P
+ let g = vec3(a0.x * x0.x + h.x * x0.y, a0.yz * x12.xz + h.yz * x12.yw);
+ return 130. * dot(m, g);
+ }
+
+ fn normalNoise(v: vec2) -> f32 {
+ return simplexNoise2(v)*0.5 + 0.5;
+ }
+
+ @fragment
+ fn main(input : FragmentInputs) -> FragmentOutputs {
+ let sampleColor = textureSample(textureSampler,textureSamplerSampler,fragmentInputs.vUV);
+
+ var offset = 0.;
+ let scaledUV = (input.vUV+offset+uniforms.seed)*f32(uniforms.nebulascale)/uniforms.scale;
+
+ var displace = 0.;
+ var i=u32(0);
+ for (i=0; i{let r;return await s.fWK.IsSupportedAsync?(r=new s.fWK(e),await r.initAsync()):(console.log("WebGPU is not supported (or turned on) for this browser!"),r=new s.fWK(e)),r},this.id="Babylon",this.onMount=e=>this.canvas=e}};let o={width:window.innerWidth,height:window.innerHeight,background:"transparent"}}};
\ No newline at end of file
diff --git a/.next/server/chunks/2.js b/.next/server/chunks/2.js
new file mode 100644
index 0000000..ec8dffc
--- /dev/null
+++ b/.next/server/chunks/2.js
@@ -0,0 +1 @@
+"use strict";exports.id=2,exports.ids=[2],exports.modules={1323:(e,t)=>{function hoist(e,t){return t in e?e[t]:"then"in e&&"function"==typeof e.then?e.then(e=>hoist(e,t)):"function"==typeof e&&"default"===t?e:void 0}Object.defineProperty(t,"l",{enumerable:!0,get:function(){return hoist}})},2534:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return Error}});let r=n(167),o=r._(n(6689)),l=r._(n(6561)),a={400:"Bad Request",404:"This page could not be found",405:"Method Not Allowed",500:"Internal Server Error"};function _getInitialProps(e){let{res:t,err:n}=e,r=t&&t.statusCode?t.statusCode:n?n.statusCode:404;return{statusCode:r}}let i={error:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},desc:{lineHeight:"48px"},h1:{display:"inline-block",margin:"0 20px 0 0",paddingRight:23,fontSize:24,fontWeight:500,verticalAlign:"top"},h2:{fontSize:14,fontWeight:400,lineHeight:"28px"},wrap:{display:"inline-block"}};let Error=class Error extends o.default.Component{render(){let{statusCode:e,withDarkMode:t=!0}=this.props,n=this.props.title||a[e]||"An unexpected error has occurred";return o.default.createElement("div",{style:i.error},o.default.createElement(l.default,null,o.default.createElement("title",null,e?e+": "+n:"Application error: a client-side exception has occurred")),o.default.createElement("div",{style:i.desc},o.default.createElement("style",{dangerouslySetInnerHTML:{__html:"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}"+(t?"@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}":"")}}),e?o.default.createElement("h1",{className:"next-error-h1",style:i.h1},e):null,o.default.createElement("div",{style:i.wrap},o.default.createElement("h2",{style:i.h2},this.props.title||e?n:o.default.createElement(o.default.Fragment,null,"Application error: a client-side exception has occurred (see the browser console for more information)"),"."))))}};Error.displayName="ErrorPage",Error.getInitialProps=_getInitialProps,Error.origGetInitialProps=_getInitialProps,("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},8801:(e,t)=>{function isInAmpMode(e){let{ampFirst:t=!1,hybrid:n=!1,hasQuery:r=!1}=void 0===e?{}:e;return t||n&&r}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isInAmpMode",{enumerable:!0,get:function(){return isInAmpMode}})},6561:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{defaultHead:function(){return defaultHead},default:function(){return c}});let r=n(167),o=n(8760),l=o._(n(6689)),a=r._(n(9737)),i=n(8039),d=n(1988),u=n(8801);function defaultHead(e){void 0===e&&(e=!1);let t=[l.default.createElement("meta",{charSet:"utf-8"})];return e||t.push(l.default.createElement("meta",{name:"viewport",content:"width=device-width"})),t}function onlyReactElement(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===l.default.Fragment?e.concat(l.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}n(8565);let f=["name","httpEquiv","charSet","itemProp"];function unique(){let e=new Set,t=new Set,n=new Set,r={};return o=>{let l=!0,a=!1;if(o.key&&"number"!=typeof o.key&&o.key.indexOf("$")>0){a=!0;let t=o.key.slice(o.key.indexOf("$")+1);e.has(t)?l=!1:e.add(t)}switch(o.type){case"title":case"base":t.has(o.type)?l=!1:t.add(o.type);break;case"meta":for(let e=0,t=f.length;e{let r=e.key||t;if(!n&&"link"===e.type&&e.props.href&&["https://fonts.googleapis.com/css","https://use.typekit.net/"].some(t=>e.props.href.startsWith(t))){let t={...e.props||{}};return t["data-href"]=t.href,t.href=void 0,t["data-optimized-fonts"]=!0,l.default.cloneElement(e,t)}return l.default.cloneElement(e,{key:r})})}function Head(e){let{children:t}=e,n=(0,l.useContext)(i.AmpStateContext),r=(0,l.useContext)(d.HeadManagerContext);return l.default.createElement(a.default,{reduceComponentsToState:reduceComponents,headManager:r,inAmpMode:(0,u.isInAmpMode)(n)},t)}let c=Head;("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},9737:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return SideEffect}});let r=n(6689),useClientOnlyLayoutEffect=()=>{},useClientOnlyEffect=()=>{};function SideEffect(e){var t;let{headManager:n,reduceComponentsToState:o}=e;function emitChange(){if(n&&n.mountedInstances){let t=r.Children.toArray(Array.from(n.mountedInstances).filter(Boolean));n.updateHead(o(t,e))}}return null==n||null==(t=n.mountedInstances)||t.add(e.children),emitChange(),useClientOnlyLayoutEffect(()=>{var t;return null==n||null==(t=n.mountedInstances)||t.add(e.children),()=>{var t;null==n||null==(t=n.mountedInstances)||t.delete(e.children)}}),useClientOnlyLayoutEffect(()=>(n&&(n._pendingUpdate=emitChange),()=>{n&&(n._pendingUpdate=emitChange)})),useClientOnlyEffect(()=>(n&&n._pendingUpdate&&(n._pendingUpdate(),n._pendingUpdate=null),()=>{n&&n._pendingUpdate&&(n._pendingUpdate(),n._pendingUpdate=null)})),null}},8565:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"warnOnce",{enumerable:!0,get:function(){return warnOnce}});let warnOnce=e=>{}},5244:(e,t)=>{var n;Object.defineProperty(t,"x",{enumerable:!0,get:function(){return n}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE"}(n||(n={}))},8039:(e,t,n)=>{e.exports=n(7093).vendored.contexts.AmpContext},1988:(e,t,n)=>{e.exports=n(7093).vendored.contexts.HeadManagerContext},8760:(e,t)=>{function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(_getRequireWildcardCache=function(e){return e?n:t})(e)}function _interop_require_wildcard(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=_getRequireWildcardCache(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var a=o?Object.getOwnPropertyDescriptor(e,l):null;a&&(a.get||a.set)?Object.defineProperty(r,l,a):r[l]=e[l]}return r.default=e,n&&n.set(e,r),r}t._=t._interop_require_wildcard=_interop_require_wildcard}};
\ No newline at end of file
diff --git a/.next/server/chunks/201.js b/.next/server/chunks/201.js
new file mode 100644
index 0000000..5764cae
--- /dev/null
+++ b/.next/server/chunks/201.js
@@ -0,0 +1,12 @@
+"use strict";exports.id=201,exports.ids=[201],exports.modules={8450:e=>{var t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,n={};function stringifyCookie(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean);return`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}; ${r.join("; ")}`}function parseCookie(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[i,o]=[r.slice(0,e),r.slice(e+1)];try{t.set(i,decodeURIComponent(null!=o?o:"true"))}catch{}}return t}function parseSetCookie(e){if(!e)return;let[[t,r],...i]=parseCookie(e),{domain:o,expires:n,httponly:a,maxage:s,path:l,samesite:u,secure:d,priority:c}=Object.fromEntries(i.map(([e,t])=>[e.toLowerCase(),t])),h={name:t,value:decodeURIComponent(r),domain:o,...n&&{expires:new Date(n)},...a&&{httpOnly:!0},..."string"==typeof s&&{maxAge:Number(s)},path:l,...u&&{sameSite:parseSameSite(u)},...d&&{secure:!0},...c&&{priority:parsePriority(c)}};return compact(h)}function compact(e){let t={};for(let r in e)e[r]&&(t[r]=e[r]);return t}((e,r)=>{for(var i in r)t(e,i,{get:r[i],enumerable:!0})})(n,{RequestCookies:()=>l,ResponseCookies:()=>u,parseCookie:()=>parseCookie,parseSetCookie:()=>parseSetCookie,stringifyCookie:()=>stringifyCookie}),e.exports=((e,n,a,s)=>{if(n&&"object"==typeof n||"function"==typeof n)for(let a of i(n))o.call(e,a)||void 0===a||t(e,a,{get:()=>n[a],enumerable:!(s=r(n,a))||s.enumerable});return e})(t({},"__esModule",{value:!0}),n);var a=["strict","lax","none"];function parseSameSite(e){return e=e.toLowerCase(),a.includes(e)?e:void 0}var s=["low","medium","high"];function parsePriority(e){return e=e.toLowerCase(),s.includes(e)?e:void 0}function splitCookiesString(e){if(!e)return[];var t,r,i,o,n,a=[],s=0;function skipWhitespace(){for(;s=e.length)&&a.push(e.substring(t,e.length))}return a}var l=class{constructor(e){this._parsed=new Map,this._headers=e;let t=e.get("cookie");if(t){let e=parseCookie(t);for(let[t,r]of e)this._parsed.set(t,{name:t,value:r})}}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let i="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===i).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,i=this._parsed;return i.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(i).map(([e,t])=>stringifyCookie(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>stringifyCookie(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},u=class{constructor(e){var t,r,i;this._parsed=new Map,this._headers=e;let o=null!=(i=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?i:[],n=Array.isArray(o)?o:splitCookiesString(o);for(let e of n){let t=parseSetCookie(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let i="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===i)}has(e){return this._parsed.has(e)}set(...e){let[t,r,i]=1===e.length?[e[0].name,e[0].value,e[0]]:e,o=this._parsed;return o.set(t,normalizeCookie({name:t,value:r,...i})),replace(o,this._headers),this}delete(...e){let[t,r,i]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0].path,e[0].domain];return this.set({name:t,path:r,domain:i,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(stringifyCookie).join("; ")}};function replace(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=stringifyCookie(r);t.append("set-cookie",e)}}function normalizeCookie(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}},5842:(e,t,r)=>{var i;(()=>{var o={226:function(o,n){!function(a,s){var l="function",u="undefined",d="object",c="string",h="major",p="model",b="name",f="type",m="vendor",g="version",w="architecture",v="console",x="mobile",y="tablet",P="smarttv",k="wearable",_="embedded",S="Amazon",A="Apple",R="ASUS",O="BlackBerry",C="Browser",j="Chrome",L="Firefox",U="Google",N="Huawei",q="Microsoft",E="Motorola",M="Opera",z="Samsung",I="Sharp",T="Sony",H="Xiaomi",$="Zebra",D="Facebook",B="Chromium OS",W="Mac OS",extend=function(e,t){var r={};for(var i in e)t[i]&&t[i].length%2==0?r[i]=t[i].concat(e[i]):r[i]=e[i];return r},enumerize=function(e){for(var t={},r=0;r0?2===n.length?typeof n[1]==l?this[n[0]]=n[1].call(this,u):this[n[0]]=n[1]:3===n.length?typeof n[1]!==l||n[1].exec&&n[1].test?this[n[0]]=u?u.replace(n[1],n[2]):s:this[n[0]]=u?n[1].call(this,u,n[2]):s:4===n.length&&(this[n[0]]=u?n[3].call(this,u.replace(n[1],n[2])):s):this[n]=u||s;c+=2}},strMapper=function(e,t){for(var r in t)if(typeof t[r]===d&&t[r].length>0){for(var i=0;i2&&(e[p]="iPad",e[f]=y),e},this.getEngine=function(){var e={};return e[b]=s,e[g]=s,rgxMapper.call(e,i,n.engine),e},this.getOS=function(){var e={};return e[b]=s,e[g]=s,rgxMapper.call(e,i,n.os),v&&!e[b]&&o&&"Unknown"!=o.platform&&(e[b]=o.platform.replace(/chrome os/i,B).replace(/macos/i,W)),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return i},this.setUA=function(e){return i=typeof e===c&&e.length>350?trim(e,350):e,this},this.setUA(i),this};UAParser.VERSION="1.0.35",UAParser.BROWSER=enumerize([b,g,h]),UAParser.CPU=enumerize([w]),UAParser.DEVICE=enumerize([p,m,f,v,x,P,y,k,_]),UAParser.ENGINE=UAParser.OS=enumerize([b,g]),typeof n!==u?(o.exports&&(n=o.exports=UAParser),n.UAParser=UAParser):r.amdO?void 0!==(i=(function(){return UAParser}).call(t,r,t,e))&&(e.exports=i):typeof a!==u&&(a.UAParser=UAParser);var V=typeof a!==u&&(a.jQuery||a.Zepto);if(V&&!V.ua){var Z=new UAParser;V.ua=Z.getResult(),V.ua.get=function(){return Z.getUA()},V.ua.set=function(e){Z.setUA(e);var t=Z.getResult();for(var r in t)V.ua[r]=t[r]}}}(this)}},n={};function __nccwpck_require__(e){var t=n[e];if(void 0!==t)return t.exports;var r=n[e]={exports:{}},i=!0;try{o[e].call(r.exports,r,r.exports,__nccwpck_require__),i=!1}finally{i&&delete n[e]}return r.exports}__nccwpck_require__.ab=__dirname+"/";var a=__nccwpck_require__(226);e.exports=a})()},6132:(e,t)=>{var r;Object.defineProperty(t,"x",{enumerable:!0,get:function(){return r}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE"}(r||(r={}))},884:(e,t,r)=>{e.exports=r(517)},8726:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{PageSignatureError:function(){return PageSignatureError},RemovedPageError:function(){return RemovedPageError},RemovedUAError:function(){return RemovedUAError}});let PageSignatureError=class PageSignatureError extends Error{constructor({page:e}){super(`The middleware "${e}" accepts an async API directly with the form:
+
+ export function middleware(request, event) {
+ return NextResponse.redirect('/new-location')
+ }
+
+ Read more: https://nextjs.org/docs/messages/middleware-new-signature
+ `)}};let RemovedPageError=class RemovedPageError extends Error{constructor(){super(`The request.page has been deprecated in favour of \`URLPattern\`.
+ Read more: https://nextjs.org/docs/messages/middleware-request-page
+ `)}};let RemovedUAError=class RemovedUAError extends Error{constructor(){super(`The request.ua has been removed in favour of \`userAgent\` function.
+ Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent
+ `)}}},8098:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"NextURL",{enumerable:!0,get:function(){return NextURL}});let i=r(4582),o=r(3987),n=r(5913),a=r(2020),s=/(?!^https?:\/\/)(127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\[::1\]|localhost)/;function parseURL(e,t){return new URL(String(e).replace(s,"localhost"),t&&String(t).replace(s,"localhost"))}let l=Symbol("NextURLInternal");let NextURL=class NextURL{constructor(e,t,r){let i,o;"object"==typeof t&&"pathname"in t||"string"==typeof t?(i=t,o=r||{}):o=r||t||{},this[l]={url:parseURL(e,i??o.base),options:o,basePath:""},this.analyze()}analyze(){var e,t,r,o,s;let u=(0,a.getNextPathnameInfo)(this[l].url.pathname,{nextConfig:this[l].options.nextConfig,parseData:!0,i18nProvider:this[l].options.i18nProvider}),d=(0,n.getHostname)(this[l].url,this[l].options.headers);this[l].domainLocale=this[l].options.i18nProvider?this[l].options.i18nProvider.detectDomainLocale(d):(0,i.detectDomainLocale)(null==(t=this[l].options.nextConfig)?void 0:null==(e=t.i18n)?void 0:e.domains,d);let c=(null==(r=this[l].domainLocale)?void 0:r.defaultLocale)||(null==(s=this[l].options.nextConfig)?void 0:null==(o=s.i18n)?void 0:o.defaultLocale);this[l].url.pathname=u.pathname,this[l].defaultLocale=c,this[l].basePath=u.basePath??"",this[l].buildId=u.buildId,this[l].locale=u.locale??c,this[l].trailingSlash=u.trailingSlash}formatPathname(){return(0,o.formatNextPathnameInfo)({basePath:this[l].basePath,buildId:this[l].buildId,defaultLocale:this[l].options.forceLocale?void 0:this[l].defaultLocale,locale:this[l].locale,pathname:this[l].url.pathname,trailingSlash:this[l].trailingSlash})}formatSearch(){return this[l].url.search}get buildId(){return this[l].buildId}set buildId(e){this[l].buildId=e}get locale(){return this[l].locale??""}set locale(e){var t,r;if(!this[l].locale||!(null==(r=this[l].options.nextConfig)?void 0:null==(t=r.i18n)?void 0:t.locales.includes(e)))throw TypeError(`The NextURL configuration includes no locale "${e}"`);this[l].locale=e}get defaultLocale(){return this[l].defaultLocale}get domainLocale(){return this[l].domainLocale}get searchParams(){return this[l].url.searchParams}get host(){return this[l].url.host}set host(e){this[l].url.host=e}get hostname(){return this[l].url.hostname}set hostname(e){this[l].url.hostname=e}get port(){return this[l].url.port}set port(e){this[l].url.port=e}get protocol(){return this[l].url.protocol}set protocol(e){this[l].url.protocol=e}get href(){let e=this.formatPathname(),t=this.formatSearch();return`${this.protocol}//${this.host}${e}${t}${this.hash}`}set href(e){this[l].url=parseURL(e),this.analyze()}get origin(){return this[l].url.origin}get pathname(){return this[l].url.pathname}set pathname(e){this[l].url.pathname=e}get hash(){return this[l].url.hash}set hash(e){this[l].url.hash=e}get search(){return this[l].url.search}set search(e){this[l].url.search=e}get password(){return this[l].url.password}set password(e){this[l].url.password=e}get username(){return this[l].url.username}set username(e){this[l].url.username=e}get basePath(){return this[l].basePath}set basePath(e){this[l].basePath=e.startsWith("/")?e:`/${e}`}toString(){return this.href}toJSON(){return this.href}[Symbol.for("edge-runtime.inspect.custom")](){return{href:this.href,origin:this.origin,protocol:this.protocol,username:this.username,password:this.password,host:this.host,hostname:this.hostname,port:this.port,pathname:this.pathname,search:this.search,searchParams:this.searchParams,hash:this.hash}}clone(){return new NextURL(String(this),this[l].options)}}},1109:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{RequestCookies:function(){return i.RequestCookies},ResponseCookies:function(){return i.ResponseCookies}});let i=r(8450)},8052:(e,t)=>{function ImageResponse(){throw Error('ImageResponse moved from "next/server" to "next/og" since Next.js 14, please import from "next/og" instead')}Object.defineProperty(t,"E",{enumerable:!0,get:function(){return ImageResponse}})},3169:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{INTERNALS:function(){return s},NextRequest:function(){return NextRequest}});let i=r(8098),o=r(1542),n=r(8726),a=r(1109),s=Symbol("internal request");let NextRequest=class NextRequest extends Request{constructor(e,t={}){let r="string"!=typeof e&&"url"in e?e.url:String(e);(0,o.validateURL)(r),e instanceof Request?super(e,t):super(r,t);let n=new i.NextURL(r,{headers:(0,o.toNodeOutgoingHttpHeaders)(this.headers),nextConfig:t.nextConfig});this[s]={cookies:new a.RequestCookies(this.headers),geo:t.geo||{},ip:t.ip,nextUrl:n,url:n.toString()}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,geo:this.geo,ip:this.ip,nextUrl:this.nextUrl,url:this.url,bodyUsed:this.bodyUsed,cache:this.cache,credentials:this.credentials,destination:this.destination,headers:Object.fromEntries(this.headers),integrity:this.integrity,keepalive:this.keepalive,method:this.method,mode:this.mode,redirect:this.redirect,referrer:this.referrer,referrerPolicy:this.referrerPolicy,signal:this.signal}}get cookies(){return this[s].cookies}get geo(){return this[s].geo}get ip(){return this[s].ip}get nextUrl(){return this[s].nextUrl}get page(){throw new n.RemovedPageError}get ua(){throw new n.RemovedUAError}get url(){return this[s].url}}},7715:(e,t,r)=>{Object.defineProperty(t,"x",{enumerable:!0,get:function(){return NextResponse}});let i=r(8098),o=r(1542),n=r(1109),a=Symbol("internal response"),s=new Set([301,302,303,307,308]);function handleMiddlewareField(e,t){var r;if(null==e?void 0:null==(r=e.request)?void 0:r.headers){if(!(e.request.headers instanceof Headers))throw Error("request.headers must be an instance of Headers");let r=[];for(let[i,o]of e.request.headers)t.set("x-middleware-request-"+i,o),r.push(i);t.set("x-middleware-override-headers",r.join(","))}}let NextResponse=class NextResponse extends Response{constructor(e,t={}){super(e,t),this[a]={cookies:new n.ResponseCookies(this.headers),url:t.url?new i.NextURL(t.url,{headers:(0,o.toNodeOutgoingHttpHeaders)(this.headers),nextConfig:t.nextConfig}):void 0}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,url:this.url,body:this.body,bodyUsed:this.bodyUsed,headers:Object.fromEntries(this.headers),ok:this.ok,redirected:this.redirected,status:this.status,statusText:this.statusText,type:this.type}}get cookies(){return this[a].cookies}static json(e,t){let r=Response.json(e,t);return new NextResponse(r.body,r)}static redirect(e,t){let r="number"==typeof t?t:(null==t?void 0:t.status)??307;if(!s.has(r))throw RangeError('Failed to execute "redirect" on "response": Invalid status code');let i="object"==typeof t?t:{},n=new Headers(null==i?void 0:i.headers);return n.set("Location",(0,o.validateURL)(e)),new NextResponse(null,{...i,headers:n,status:r})}static rewrite(e,t){let r=new Headers(null==t?void 0:t.headers);return r.set("x-middleware-rewrite",(0,o.validateURL)(e)),handleMiddlewareField(t,r),new NextResponse(null,{...t,headers:r})}static next(e){let t=new Headers(null==e?void 0:e.headers);return t.set("x-middleware-next","1"),handleMiddlewareField(e,t),new NextResponse(null,{...e,headers:t})}}},1654:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{isBot:function(){return isBot},userAgentFromString:function(){return userAgentFromString},userAgent:function(){return userAgent}});let i=_interop_require_default(r(5842));function _interop_require_default(e){return e&&e.__esModule?e:{default:e}}function isBot(e){return/Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Google-InspectionTool|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver/i.test(e)}function userAgentFromString(e){return{...(0,i.default)(e),isBot:void 0!==e&&isBot(e)}}function userAgent({headers:e}){return userAgentFromString(e.get("user-agent")||void 0)}},1542:(e,t)=>{function fromNodeOutgoingHttpHeaders(e){let t=new Headers;for(let[r,i]of Object.entries(e)){let e=Array.isArray(i)?i:[i];for(let i of e)void 0!==i&&("number"==typeof i&&(i=i.toString()),t.append(r,i))}return t}function splitCookiesString(e){var t,r,i,o,n,a=[],s=0;function skipWhitespace(){for(;s=e.length)&&a.push(e.substring(t,e.length))}return a}function toNodeOutgoingHttpHeaders(e){let t={},r=[];if(e)for(let[i,o]of e.entries())"set-cookie"===i.toLowerCase()?(r.push(...splitCookiesString(o)),t[i]=1===r.length?r[0]:r):t[i]=o;return t}function validateURL(e){try{return String(new URL(String(e)))}catch(t){throw Error(`URL is malformed "${String(e)}". Please use only absolute URLs - https://nextjs.org/docs/messages/middleware-relative-urls`,{cause:t})}}Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{fromNodeOutgoingHttpHeaders:function(){return fromNodeOutgoingHttpHeaders},splitCookiesString:function(){return splitCookiesString},toNodeOutgoingHttpHeaders:function(){return toNodeOutgoingHttpHeaders},validateURL:function(){return validateURL}})},5913:(e,t)=>{function getHostname(e,t){let r;if((null==t?void 0:t.host)&&!Array.isArray(t.host))r=t.host.toString().split(":",1)[0];else{if(!e.hostname)return;r=e.hostname}return r.toLowerCase()}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getHostname",{enumerable:!0,get:function(){return getHostname}})},4582:(e,t)=>{function detectDomainLocale(e,t,r){if(e)for(let n of(r&&(r=r.toLowerCase()),e)){var i,o;let e=null==(i=n.domain)?void 0:i.split(":",1)[0].toLowerCase();if(t===e||r===n.defaultLocale.toLowerCase()||(null==(o=n.locales)?void 0:o.some(e=>e.toLowerCase()===r)))return n}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"detectDomainLocale",{enumerable:!0,get:function(){return detectDomainLocale}})},4340:(e,t)=>{function normalizeLocalePath(e,t){let r;let i=e.split("/");return(t||[]).some(t=>!!i[1]&&i[1].toLowerCase()===t.toLowerCase()&&(r=t,i.splice(1,1),e=i.join("/")||"/",!0)),{pathname:e,detectedLocale:r}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"normalizeLocalePath",{enumerable:!0,get:function(){return normalizeLocalePath}})},446:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"addLocale",{enumerable:!0,get:function(){return addLocale}});let i=r(8888),o=r(5794);function addLocale(e,t,r,n){if(!t||t===r)return e;let a=e.toLowerCase();return!n&&((0,o.pathHasPrefix)(a,"/api")||(0,o.pathHasPrefix)(a,"/"+t.toLowerCase()))?e:(0,i.addPathPrefix)(e,"/"+t)}},8888:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"addPathPrefix",{enumerable:!0,get:function(){return addPathPrefix}});let i=r(3974);function addPathPrefix(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:o,hash:n}=(0,i.parsePath)(e);return""+t+r+o+n}},8277:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"addPathSuffix",{enumerable:!0,get:function(){return addPathSuffix}});let i=r(3974);function addPathSuffix(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:o,hash:n}=(0,i.parsePath)(e);return""+r+t+o+n}},3987:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"formatNextPathnameInfo",{enumerable:!0,get:function(){return formatNextPathnameInfo}});let i=r(6976),o=r(8888),n=r(8277),a=r(446);function formatNextPathnameInfo(e){let t=(0,a.addLocale)(e.pathname,e.locale,e.buildId?void 0:e.defaultLocale,e.ignorePrefix);return(e.buildId||!e.trailingSlash)&&(t=(0,i.removeTrailingSlash)(t)),e.buildId&&(t=(0,n.addPathSuffix)((0,o.addPathPrefix)(t,"/_next/data/"+e.buildId),"/"===e.pathname?"index.json":".json")),t=(0,o.addPathPrefix)(t,e.basePath),!e.buildId&&e.trailingSlash?t.endsWith("/")?t:(0,n.addPathSuffix)(t,"/"):(0,i.removeTrailingSlash)(t)}},2020:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getNextPathnameInfo",{enumerable:!0,get:function(){return getNextPathnameInfo}});let i=r(4340),o=r(3863),n=r(5794);function getNextPathnameInfo(e,t){var r,a;let{basePath:s,i18n:l,trailingSlash:u}=null!=(r=t.nextConfig)?r:{},d={pathname:e,trailingSlash:"/"!==e?e.endsWith("/"):u};s&&(0,n.pathHasPrefix)(d.pathname,s)&&(d.pathname=(0,o.removePathPrefix)(d.pathname,s),d.basePath=s);let c=d.pathname;if(d.pathname.startsWith("/_next/data/")&&d.pathname.endsWith(".json")){let e=d.pathname.replace(/^\/_next\/data\//,"").replace(/\.json$/,"").split("/"),r=e[0];d.buildId=r,c="index"!==e[1]?"/"+e.slice(1).join("/"):"/",!0===t.parseData&&(d.pathname=c)}if(l){let e=t.i18nProvider?t.i18nProvider.analyze(d.pathname):(0,i.normalizeLocalePath)(d.pathname,l.locales);d.locale=e.detectedLocale,d.pathname=null!=(a=e.pathname)?a:d.pathname,!e.detectedLocale&&d.buildId&&(e=t.i18nProvider?t.i18nProvider.analyze(c):(0,i.normalizeLocalePath)(c,l.locales)).detectedLocale&&(d.locale=e.detectedLocale)}return d}},3974:(e,t)=>{function parsePath(e){let t=e.indexOf("#"),r=e.indexOf("?"),i=r>-1&&(t<0||r-1?{pathname:e.substring(0,i?r:t),query:i?e.substring(r,t>-1?t:void 0):"",hash:t>-1?e.slice(t):""}:{pathname:e,query:"",hash:""}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"parsePath",{enumerable:!0,get:function(){return parsePath}})},5794:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"pathHasPrefix",{enumerable:!0,get:function(){return pathHasPrefix}});let i=r(3974);function pathHasPrefix(e,t){if("string"!=typeof e)return!1;let{pathname:r}=(0,i.parsePath)(e);return r===t||r.startsWith(t+"/")}},3863:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"removePathPrefix",{enumerable:!0,get:function(){return removePathPrefix}});let i=r(5794);function removePathPrefix(e,t){if(!(0,i.pathHasPrefix)(e,t))return e;let r=e.slice(t.length);return r.startsWith("/")?r:"/"+r}},6976:(e,t)=>{function removeTrailingSlash(e){return e.replace(/\/$/,"")||"/"}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"removeTrailingSlash",{enumerable:!0,get:function(){return removeTrailingSlash}})},1057:(e,t,r)=>{let i={NextRequest:r(3169).NextRequest,NextResponse:r(7715).x,ImageResponse:r(8052).E,userAgentFromString:r(1654).userAgentFromString,userAgent:r(1654).userAgent};"undefined"!=typeof URLPattern&&(i.URLPattern=URLPattern),e.exports=i,t.NextRequest=i.NextRequest,t.NextResponse=i.NextResponse,t.ImageResponse=i.ImageResponse,t.userAgentFromString=i.userAgentFromString,t.userAgent=i.userAgent,t.URLPattern=i.URLPattern}};
\ No newline at end of file
diff --git a/.next/server/chunks/310.js b/.next/server/chunks/310.js
new file mode 100644
index 0000000..e453be6
--- /dev/null
+++ b/.next/server/chunks/310.js
@@ -0,0 +1 @@
+"use strict";exports.id=310,exports.ids=[310],exports.modules={7921:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(r,{WEB_VITALS:function(){return t},execOnce:function(){return execOnce},isAbsoluteUrl:function(){return isAbsoluteUrl},getLocationOrigin:function(){return getLocationOrigin},getURL:function(){return getURL},getDisplayName:function(){return getDisplayName},isResSent:function(){return isResSent},normalizeRepeatedSlashes:function(){return normalizeRepeatedSlashes},loadGetInitialProps:function(){return loadGetInitialProps},SP:function(){return o},ST:function(){return i},DecodeError:function(){return DecodeError},NormalizeError:function(){return NormalizeError},PageNotFoundError:function(){return PageNotFoundError},MissingStaticPage:function(){return MissingStaticPage},MiddlewareNotFoundError:function(){return MiddlewareNotFoundError},stringifyError:function(){return stringifyError}});let t=["CLS","FCP","FID","INP","LCP","TTFB"];function execOnce(e){let r,t=!1;return function(){for(var n=arguments.length,o=Array(n),i=0;in.test(e);function getLocationOrigin(){let{protocol:e,hostname:r,port:t}=window.location;return e+"//"+r+(t?":"+t:"")}function getURL(){let{href:e}=window.location,r=getLocationOrigin();return e.substring(r.length)}function getDisplayName(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function isResSent(e){return e.finished||e.headersSent}function normalizeRepeatedSlashes(e){let r=e.split("?"),t=r[0];return t.replace(/\\/g,"/").replace(/\/\/+/g,"/")+(r[1]?"?"+r.slice(1).join("?"):"")}async function loadGetInitialProps(e,r){let t=r.res||r.ctx&&r.ctx.res;if(!e.getInitialProps)return r.ctx&&r.Component?{pageProps:await loadGetInitialProps(r.Component,r.ctx)}:{};let n=await e.getInitialProps(r);if(t&&isResSent(t))return n;if(!n){let r='"'+getDisplayName(e)+'.getInitialProps()" should resolve to an object. But found "'+n+'" instead.';throw Error(r)}return n}let o="undefined"!=typeof performance,i=o&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);let DecodeError=class DecodeError extends Error{};let NormalizeError=class NormalizeError extends Error{};let PageNotFoundError=class PageNotFoundError extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message="Cannot find module for page: "+e}};let MissingStaticPage=class MissingStaticPage extends Error{constructor(e,r){super(),this.message="Failed to load static file for page: "+e+" "+r}};let MiddlewareNotFoundError=class MiddlewareNotFoundError extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}};function stringifyError(e){return JSON.stringify({message:e.message,stack:e.stack})}},167:(e,r)=>{r._=r._interop_require_default=_interop_require_default;function _interop_require_default(e){return e&&e.__esModule?e:{default:e}}}};
\ No newline at end of file
diff --git a/.next/server/chunks/323.js b/.next/server/chunks/323.js
new file mode 100644
index 0000000..7aae388
--- /dev/null
+++ b/.next/server/chunks/323.js
@@ -0,0 +1,6 @@
+"use strict";exports.id=323,exports.ids=[323],exports.modules={9001:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{RSC:function(){return r},ACTION:function(){return n},NEXT_ROUTER_STATE_TREE:function(){return a},NEXT_ROUTER_PREFETCH:function(){return o},NEXT_URL:function(){return i},RSC_CONTENT_TYPE_HEADER:function(){return u},RSC_VARY_HEADER:function(){return s},FLIGHT_PARAMETERS:function(){return c},NEXT_RSC_UNION_QUERY:function(){return l}});let r="RSC",n="Next-Action",a="Next-Router-State-Tree",o="Next-Router-Prefetch",i="Next-Url",u="text/x-component",s=r+", "+a+", "+o+", "+i,c=[[r],[a],[o]],l="_rsc";("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},8712:e=>{(()=>{"undefined"!=typeof __nccwpck_require__&&(__nccwpck_require__.ab=__dirname+"/");var t={};(()=>{/*!
+ * cookie
+ * Copyright(c) 2012-2014 Roman Shtylman
+ * Copyright(c) 2015 Douglas Christopher Wilson
+ * MIT Licensed
+ */t.parse=parse,t.serialize=serialize;var e=decodeURIComponent,r=encodeURIComponent,n=/; */,a=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/;function parse(t,r){if("string"!=typeof t)throw TypeError("argument str must be a string");for(var a={},o=t.split(n),i=(r||{}).decode||e,u=0;u{function lexer(e){for(var t=[],r=0;r=48&&i<=57||i>=65&&i<=90||i>=97&&i<=122||95===i){a+=e[o++];continue}break}if(!a)throw TypeError("Missing parameter name at "+r);t.push({type:"NAME",index:r,value:a}),r=o;continue}if("("===n){var u=1,s="",o=r+1;if("?"===e[o])throw TypeError('Pattern cannot start with "?" at '+o);for(;o-1:void 0===h;a||(p+="(?:"+l+"(?="+c+"))?"),E||(p+="(?="+l+"|"+c+")")}return new RegExp(p,flags(r))}function pathToRegexp(e,t,r){return e instanceof RegExp?regexpToRegexp(e,t):Array.isArray(e)?arrayToRegexp(e,t,r):stringToRegexp(e,t,r)}Object.defineProperty(t,"__esModule",{value:!0}),t.parse=parse,t.compile=compile,t.tokensToFunction=tokensToFunction,t.match=match,t.regexpToFunction=regexpToFunction,t.tokensToRegexp=tokensToRegexp,t.pathToRegexp=pathToRegexp},9368:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{NEXT_QUERY_PARAM_PREFIX:function(){return r},PRERENDER_REVALIDATE_HEADER:function(){return n},PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER:function(){return a},NEXT_DID_POSTPONE_HEADER:function(){return o},NEXT_CACHE_TAGS_HEADER:function(){return i},NEXT_CACHE_SOFT_TAGS_HEADER:function(){return u},NEXT_CACHE_REVALIDATED_TAGS_HEADER:function(){return s},NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER:function(){return c},NEXT_CACHE_TAG_MAX_LENGTH:function(){return l},NEXT_CACHE_SOFT_TAG_MAX_LENGTH:function(){return p},NEXT_CACHE_IMPLICIT_TAG_ID:function(){return f},CACHE_ONE_YEAR:function(){return d},MIDDLEWARE_FILENAME:function(){return g},MIDDLEWARE_LOCATION_REGEXP:function(){return m},INSTRUMENTATION_HOOK_FILENAME:function(){return R},PAGES_DIR_ALIAS:function(){return h},DOT_NEXT_ALIAS:function(){return E},ROOT_DIR_ALIAS:function(){return _},APP_DIR_ALIAS:function(){return y},RSC_MOD_REF_PROXY_ALIAS:function(){return x},RSC_ACTION_VALIDATE_ALIAS:function(){return P},RSC_ACTION_PROXY_ALIAS:function(){return S},RSC_ACTION_ENCRYPTION_ALIAS:function(){return v},RSC_ACTION_CLIENT_WRAPPER_ALIAS:function(){return A},PUBLIC_DIR_MIDDLEWARE_CONFLICT:function(){return T},SSG_GET_INITIAL_PROPS_CONFLICT:function(){return b},SERVER_PROPS_GET_INIT_PROPS_CONFLICT:function(){return O},SERVER_PROPS_SSG_CONFLICT:function(){return N},STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR:function(){return C},SERVER_PROPS_EXPORT_ERROR:function(){return I},GSP_NO_RETURNED_VALUE:function(){return M},GSSP_NO_RETURNED_VALUE:function(){return j},UNSTABLE_REVALIDATE_RENAME_ERROR:function(){return L},GSSP_COMPONENT_MEMBER_ERROR:function(){return w},NON_STANDARD_NODE_ENV:function(){return U},SSG_FALLBACK_EXPORT_ERROR:function(){return D},ESLINT_DEFAULT_DIRS:function(){return k},ESLINT_PROMPT_VALUES:function(){return $},SERVER_RUNTIME:function(){return F},WEBPACK_LAYERS:function(){return H},WEBPACK_RESOURCE_QUERIES:function(){return G}});let r="nxtP",n="x-prerender-revalidate",a="x-prerender-revalidate-if-generated",o="x-nextjs-postponed",i="x-next-cache-tags",u="x-next-cache-soft-tags",s="x-next-revalidated-tags",c="x-next-revalidate-tag-token",l=256,p=1024,f="_N_T_",d=31536e3,g="middleware",m=`(?:src/)?${g}`,R="instrumentation",h="private-next-pages",E="private-dot-next",_="private-next-root-dir",y="private-next-app-dir",x="next/dist/build/webpack/loaders/next-flight-loader/module-proxy",P="private-next-rsc-action-validate",S="private-next-rsc-action-proxy",v="private-next-rsc-action-encryption",A="private-next-rsc-action-client-wrapper",T="You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://nextjs.org/docs/messages/public-next-folder-conflict",b="You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps",O="You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.",N="You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps",C="can not have getInitialProps/getServerSideProps, https://nextjs.org/docs/messages/404-get-initial-props",I="pages with `getServerSideProps` can not be exported. See more info here: https://nextjs.org/docs/messages/gssp-export",M="Your `getStaticProps` function did not return an object. Did you forget to add a `return`?",j="Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?",L="The `unstable_revalidate` property is available for general use.\nPlease use `revalidate` instead.",w="can not be attached to a page's component and must be exported from the page. See more info here: https://nextjs.org/docs/messages/gssp-component-member",U='You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://nextjs.org/docs/messages/non-standard-node-env',D="Pages with `fallback` enabled in `getStaticPaths` can not be exported. See more info here: https://nextjs.org/docs/messages/ssg-fallback-true-export",k=["app","pages","components","lib","src"],$=[{title:"Strict",recommended:!0,config:{extends:"next/core-web-vitals"}},{title:"Base",config:{extends:"next"}},{title:"Cancel",config:null}],F={edge:"edge",experimentalEdge:"experimental-edge",nodejs:"nodejs"},z={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",api:"api",middleware:"middleware",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",appMetadataRoute:"app-metadata-route",appRouteHandler:"app-route-handler"},H={...z,GROUP:{server:[z.reactServerComponents,z.actionBrowser,z.appMetadataRoute,z.appRouteHandler],nonClientServerTarget:[z.middleware,z.api],app:[z.reactServerComponents,z.actionBrowser,z.appMetadataRoute,z.appRouteHandler,z.serverSideRendering,z.appPagesBrowser]}},G={edgeSSREntry:"__next_edge_ssr_entry__",metadata:"__next_metadata__",metadataRoute:"__next_metadata_route__",metadataImageMeta:"__next_metadata_image_meta__"}},8531:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{fillMetadataSegment:function(){return fillMetadataSegment},normalizeMetadataRoute:function(){return normalizeMetadataRoute}});let n=r(2038),a=_interop_require_default(r(5585)),o=r(1239),i=r(4018),u=r(8043),s=r(1478),c=r(7819);function _interop_require_default(e){return e&&e.__esModule?e:{default:e}}function getMetadataRouteSuffix(e){let t="";return(e.includes("(")&&e.includes(")")||e.includes("@"))&&(t=(0,u.djb2Hash)(e).toString(36).slice(0,6)),t}function fillMetadataSegment(e,t,r){let n=(0,s.normalizeAppPath)(e),u=(0,i.getNamedRouteRegex)(n,!1),l=(0,o.interpolateDynamicPath)(n,t,u),p=getMetadataRouteSuffix(e),f=p?`-${p}`:"",{name:d,ext:g}=a.default.parse(r);return(0,c.normalizePathSep)(a.default.join(l,`${d}${f}${g}`))}function normalizeMetadataRoute(e){if(!(0,n.isMetadataRoute)(e))return e;let t=e,r="";if("/robots"===e)t+=".txt";else if("/manifest"===e)t+=".webmanifest";else if(e.endsWith("/sitemap"))t+=".xml";else{let t=e.slice(0,-(a.default.basename(e).length+1));r=getMetadataRouteSuffix(t)}if(!t.endsWith("/route")){let{dir:o,name:i,ext:u}=a.default.parse(t),s=(0,n.isStaticMetadataRoute)(e);t=a.default.posix.join(o,`${i}${r?`-${r}`:""}${u}`,s?"":"[[...__metadata_id__]]","route")}return t}},2038:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{STATIC_METADATA_IMAGES:function(){return a},isMetadataRouteFile:function(){return isMetadataRouteFile},isStaticMetadataRouteFile:function(){return isStaticMetadataRouteFile},isStaticMetadataRoute:function(){return isStaticMetadataRoute},isMetadataRoute:function(){return isMetadataRoute}});let n=r(7819),a={icon:{filename:"icon",extensions:["ico","jpg","jpeg","png","svg"]},apple:{filename:"apple-icon",extensions:["jpg","jpeg","png"]},favicon:{filename:"favicon",extensions:["ico"]},openGraph:{filename:"opengraph-image",extensions:["jpg","jpeg","png","gif"]},twitter:{filename:"twitter-image",extensions:["jpg","jpeg","png","gif"]}},o=["js","jsx","ts","tsx"],getExtensionRegexString=e=>`(?:${e.join("|")})`;function isMetadataRouteFile(e,t,r){let o=[RegExp(`^[\\\\/]robots${r?`\\.${getExtensionRegexString(t.concat("txt"))}$`:""}`),RegExp(`^[\\\\/]manifest${r?`\\.${getExtensionRegexString(t.concat("webmanifest","json"))}$`:""}`),RegExp("^[\\\\/]favicon\\.ico$"),RegExp(`[\\\\/]sitemap${r?`\\.${getExtensionRegexString(t.concat("xml"))}$`:""}`),RegExp(`[\\\\/]${a.icon.filename}\\d?${r?`\\.${getExtensionRegexString(t.concat(a.icon.extensions))}$`:""}`),RegExp(`[\\\\/]${a.apple.filename}\\d?${r?`\\.${getExtensionRegexString(t.concat(a.apple.extensions))}$`:""}`),RegExp(`[\\\\/]${a.openGraph.filename}\\d?${r?`\\.${getExtensionRegexString(t.concat(a.openGraph.extensions))}$`:""}`),RegExp(`[\\\\/]${a.twitter.filename}\\d?${r?`\\.${getExtensionRegexString(t.concat(a.twitter.extensions))}$`:""}`)],i=(0,n.normalizePathSep)(e);return o.some(e=>e.test(i))}function isStaticMetadataRouteFile(e){return isMetadataRouteFile(e,[],!0)}function isStaticMetadataRoute(e){return"/robots"===e||"/manifest"===e||isStaticMetadataRouteFile(e)}function isMetadataRoute(e){let t=e.replace(/^\/?app\//,"").replace(/\/route$/,"");return"/"!==t[0]&&(t="/"+t),!t.endsWith("/page")&&isMetadataRouteFile(t,o,!1)}},4427:(e,t,r)=>{function getCookieParser(e){return function(){let{cookie:t}=e;if(!t)return{};let{parse:n}=r(8712);return n(Array.isArray(t)?t.join("; "):t)}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getCookieParser",{enumerable:!0,get:function(){return getCookieParser}})},7302:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{INTERCEPTION_ROUTE_MARKERS:function(){return a},isInterceptionRouteAppPath:function(){return isInterceptionRouteAppPath},extractInterceptionRouteInformation:function(){return extractInterceptionRouteInformation}});let n=r(1478),a=["(..)(..)","(.)","(..)","(...)"];function isInterceptionRouteAppPath(e){return void 0!==e.split("/").find(e=>a.find(t=>e.startsWith(t)))}function extractInterceptionRouteInformation(e){let t,r,o;for(let n of e.split("/"))if(r=a.find(e=>n.startsWith(e))){[t,o]=e.split(r,2);break}if(!t||!r||!o)throw Error(`Invalid interception route: ${e}. Must be in the format //(..|...|..)(..)/`);switch(t=(0,n.normalizeAppPath)(t),r){case"(.)":o="/"===t?`/${o}`:t+"/"+o;break;case"(..)":if("/"===t)throw Error(`Invalid interception route: ${e}. Cannot use (..) marker at the root level, use (.) instead.`);o=t.split("/").slice(0,-1).concat(o).join("/");break;case"(...)":o="/"+o;break;case"(..)(..)":let i=t.split("/");if(i.length<=2)throw Error(`Invalid interception route: ${e}. Cannot use (..)(..) marker at the root level or one level up.`);o=i.slice(0,-2).concat(o).join("/");break;default:throw Error("Invariant: unexpected marker")}return{interceptingRoute:t,interceptedRoute:o}}},1239:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{normalizeVercelUrl:function(){return normalizeVercelUrl},interpolateDynamicPath:function(){return interpolateDynamicPath},getUtils:function(){return getUtils}});let n=r(7310),a=r(5259),o=r(9302),i=r(4018),u=r(4893),s=r(1731),c=r(4419),l=r(1478),p=r(9368);function normalizeVercelUrl(e,t,r,a,o){if(a&&t&&o){let t=(0,n.parse)(e.url,!0);for(let e of(delete t.search,Object.keys(t.query)))(e!==p.NEXT_QUERY_PARAM_PREFIX&&e.startsWith(p.NEXT_QUERY_PARAM_PREFIX)||(r||Object.keys(o.groups)).includes(e))&&delete t.query[e];e.url=(0,n.format)(t)}}function interpolateDynamicPath(e,t,r){if(!r)return e;for(let n of Object.keys(r.groups)){let{optional:a,repeat:o}=r.groups[n],i=`[${o?"...":""}${n}]`;a&&(i=`[${i}]`);let u=e.indexOf(i);if(u>-1){let r;let a=t[n];r=Array.isArray(a)?a.map(e=>e&&encodeURIComponent(e)).join("/"):a?encodeURIComponent(a):"",e=e.slice(0,u)+r+e.slice(u+i.length)}}return e}function getUtils({page:e,i18n:t,basePath:r,rewrites:n,pageIsDynamic:f,trailingSlash:d,caseSensitive:g}){let m,R,h;function getParamsFromRouteMatches(e,r,n){return(0,u.getRouteMatcher)(function(){let{groups:e,routeKeys:a}=m;return{re:{exec:o=>{let i=Object.fromEntries(new URLSearchParams(o)),u=t&&n&&i["1"]===n;for(let e of Object.keys(i)){let t=i[e];if(e!==p.NEXT_QUERY_PARAM_PREFIX&&e.startsWith(p.NEXT_QUERY_PARAM_PREFIX)){let r=e.substring(p.NEXT_QUERY_PARAM_PREFIX.length);i[r]=t,delete i[e]}}let s=Object.keys(a||{}),filterLocaleItem=e=>{if(t){let a=Array.isArray(e),o=a?e[0]:e;if("string"==typeof o&&t.locales.some(e=>e.toLowerCase()===o.toLowerCase()&&(n=e,r.locale=n,!0)))return a&&e.splice(0,1),!a||0===e.length}return!1};return s.every(e=>i[e])?s.reduce((t,r)=>{let n=null==a?void 0:a[r];return n&&!filterLocaleItem(i[r])&&(t[e[n].pos]=i[r]),t},{}):Object.keys(i).reduce((e,t)=>{if(!filterLocaleItem(i[t])){let r=t;return u&&(r=parseInt(t,10)-1+""),Object.assign(e,{[r]:i[t]})}return e},{})}},groups:e}}())(e.headers["x-now-route-matches"])}function normalizeDynamicRouteParams(e,t){let r=!0;return m?{params:e=Object.keys(m.groups).reduce((n,a)=>{let o=e[a];"string"==typeof o&&(o=(0,l.normalizeRscURL)(o)),Array.isArray(o)&&(o=o.map(e=>("string"==typeof e&&(e=(0,l.normalizeRscURL)(e)),e)));let i=h[a],u=m.groups[a].optional,s=Array.isArray(i)?i.some(e=>Array.isArray(o)?o.some(t=>t.includes(e)):null==o?void 0:o.includes(e)):null==o?void 0:o.includes(i);return(s||void 0===o&&!(u&&t))&&(r=!1),u&&(!o||Array.isArray(o)&&1===o.length&&("index"===o[0]||o[0]===`[[...${a}]]`))&&(o=void 0,delete e[a]),o&&"string"==typeof o&&m.groups[a].repeat&&(o=o.split("/")),o&&(n[a]=o),n},{}),hasValidParams:r}:{params:e,hasValidParams:!1}}return f&&(m=(0,i.getNamedRouteRegex)(e,!1),h=(R=(0,u.getRouteMatcher)(m))(e)),{handleRewrites:function(i,u){let l={},p=u.pathname,checkRewrite=n=>{let c=(0,o.getPathMatch)(n.source+(d?"(/)?":""),{removeUnnamedParams:!0,strict:!0,sensitive:!!g}),m=c(u.pathname);if((n.has||n.missing)&&m){let e=(0,s.matchHas)(i,u.query,n.has,n.missing);e?Object.assign(m,e):m=!1}if(m){let{parsedDestination:o,destQuery:i}=(0,s.prepareDestination)({appendParamsToQuery:!0,destination:n.destination,params:m,query:u.query});if(o.protocol)return!0;if(Object.assign(l,i,m),Object.assign(u.query,o.query),delete o.query,Object.assign(u,o),p=u.pathname,r&&(p=p.replace(RegExp(`^${r}`),"")||"/"),t){let e=(0,a.normalizeLocalePath)(p,t.locales);p=e.pathname,u.query.nextInternalLocale=e.detectedLocale||m.nextInternalLocale}if(p===e)return!0;if(f&&R){let e=R(p);if(e)return u.query={...u.query,...e},!0}}return!1};for(let e of n.beforeFiles||[])checkRewrite(e);if(p!==e){let t=!1;for(let e of n.afterFiles||[])if(t=checkRewrite(e))break;if(!t&&!(()=>{let t=(0,c.removeTrailingSlash)(p||"");return t===(0,c.removeTrailingSlash)(e)||(null==R?void 0:R(t))})()){for(let e of n.fallback||[])if(t=checkRewrite(e))break}}return l},defaultRouteRegex:m,dynamicRouteMatcher:R,defaultRouteMatches:h,getParamsFromRouteMatches,normalizeDynamicRouteParams,normalizeVercelUrl:(e,t,r)=>normalizeVercelUrl(e,t,r,f,m),interpolateDynamicPath:(e,t)=>interpolateDynamicPath(e,t,m)}}},9789:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"escapeStringRegexp",{enumerable:!0,get:function(){return escapeStringRegexp}});let r=/[|\\{}()[\]^$+*?.-]/,n=/[|\\{}()[\]^$+*?.-]/g;function escapeStringRegexp(e){return r.test(e)?e.replace(n,"\\$&"):e}},8043:(e,t)=>{function djb2Hash(e){let t=5381;for(let r=0;r{function normalizeLocalePath(e,t){let r;let n=e.split("/");return(t||[]).some(t=>!!n[1]&&n[1].toLowerCase()===t.toLowerCase()&&(r=t,n.splice(1,1),e=n.join("/")||"/",!0)),{pathname:e,detectedLocale:r}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"normalizeLocalePath",{enumerable:!0,get:function(){return normalizeLocalePath}})},5585:(e,t,r)=>{let n;n=r(1017),e.exports=n},9701:(e,t)=>{function ensureLeadingSlash(e){return e.startsWith("/")?e:"/"+e}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ensureLeadingSlash",{enumerable:!0,get:function(){return ensureLeadingSlash}})},7819:(e,t)=>{function normalizePathSep(e){return e.replace(/\\/g,"/")}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"normalizePathSep",{enumerable:!0,get:function(){return normalizePathSep}})},1478:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{normalizeAppPath:function(){return normalizeAppPath},normalizeRscURL:function(){return normalizeRscURL},normalizePostponedURL:function(){return normalizePostponedURL}});let n=r(9701),a=r(2219);function normalizeAppPath(e){return(0,n.ensureLeadingSlash)(e.split("/").reduce((e,t,r,n)=>!t||(0,a.isGroupSegment)(t)||"@"===t[0]||("page"===t||"route"===t)&&r===n.length-1?e:e+"/"+t,""))}function normalizeRscURL(e){return e.replace(/\.rsc($|\?)/,"$1")}function normalizePostponedURL(e){let t=new URL(e),{pathname:r}=t;return r&&r.startsWith("/_next/postponed")?(t.pathname=r.substring(16)||"/",t.toString()):e}},129:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"parseRelativeUrl",{enumerable:!0,get:function(){return parseRelativeUrl}}),r(351);let n=r(6024);function parseRelativeUrl(e,t){let r=new URL("http://n"),a=t?new URL(t,r):e.startsWith(".")?new URL("http://n"):r,{pathname:o,searchParams:i,search:u,hash:s,href:c,origin:l}=new URL(e,a);if(l!==r.origin)throw Error("invariant: invalid relative URL, router received "+e);return{pathname:o,query:(0,n.searchParamsToUrlQuery)(i),search:u,hash:s,href:c.slice(r.origin.length)}}},6940:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"parseUrl",{enumerable:!0,get:function(){return parseUrl}});let n=r(6024),a=r(129);function parseUrl(e){if(e.startsWith("/"))return(0,a.parseRelativeUrl)(e);let t=new URL(e);return{hash:t.hash,hostname:t.hostname,href:t.href,pathname:t.pathname,port:t.port,protocol:t.protocol,query:(0,n.searchParamsToUrlQuery)(t.searchParams),search:t.search}}},9302:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getPathMatch",{enumerable:!0,get:function(){return getPathMatch}});let n=r(9481);function getPathMatch(e,t){let r=[],a=(0,n.pathToRegexp)(e,r,{delimiter:"/",sensitive:"boolean"==typeof(null==t?void 0:t.sensitive)&&t.sensitive,strict:null==t?void 0:t.strict}),o=(0,n.regexpToFunction)((null==t?void 0:t.regexModifier)?new RegExp(t.regexModifier(a.source),a.flags):a,r);return(e,n)=>{if("string"!=typeof e)return!1;let a=o(e);if(!a)return!1;if(null==t?void 0:t.removeUnnamedParams)for(let e of r)"number"==typeof e.name&&delete a.params[e.name];return{...n,...a.params}}}},1731:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{matchHas:function(){return matchHas},compileNonPath:function(){return compileNonPath},prepareDestination:function(){return prepareDestination}});let n=r(9481),a=r(9789),o=r(6940),i=r(7302),u=r(9001),s=r(4427);function getSafeParamName(e){let t="";for(let r=0;r64&&n<91||n>96&&n<123)&&(t+=e[r])}return t}function escapeSegment(e,t){return e.replace(RegExp(":"+(0,a.escapeStringRegexp)(t),"g"),"__ESC_COLON_"+t)}function unescapeSegments(e){return e.replace(/__ESC_COLON_/gi,":")}function matchHas(e,t,r,n){void 0===r&&(r=[]),void 0===n&&(n=[]);let a={},hasMatch=r=>{let n;let o=r.key;switch(r.type){case"header":o=o.toLowerCase(),n=e.headers[o];break;case"cookie":if("cookies"in e)n=e.cookies[r.key];else{let t=(0,s.getCookieParser)(e.headers)();n=t[r.key]}break;case"query":n=t[o];break;case"host":{let{host:t}=(null==e?void 0:e.headers)||{},r=null==t?void 0:t.split(":",1)[0].toLowerCase();n=r}}if(!r.value&&n)return a[getSafeParamName(o)]=n,!0;if(n){let e=RegExp("^"+r.value+"$"),t=Array.isArray(n)?n.slice(-1)[0].match(e):n.match(e);if(t)return Array.isArray(t)&&(t.groups?Object.keys(t.groups).forEach(e=>{a[e]=t.groups[e]}):"host"===r.type&&t[0]&&(a.host=t[0])),!0}return!1},o=r.every(e=>hasMatch(e))&&!n.some(e=>hasMatch(e));return!!o&&a}function compileNonPath(e,t){if(!e.includes(":"))return e;for(let r of Object.keys(t))e.includes(":"+r)&&(e=e.replace(RegExp(":"+r+"\\*","g"),":"+r+"--ESCAPED_PARAM_ASTERISKS").replace(RegExp(":"+r+"\\?","g"),":"+r+"--ESCAPED_PARAM_QUESTION").replace(RegExp(":"+r+"\\+","g"),":"+r+"--ESCAPED_PARAM_PLUS").replace(RegExp(":"+r+"(?!\\w)","g"),"--ESCAPED_PARAM_COLON"+r));return e=e.replace(/(:|\*|\?|\+|\(|\)|\{|\})/g,"\\$1").replace(/--ESCAPED_PARAM_PLUS/g,"+").replace(/--ESCAPED_PARAM_COLON/g,":").replace(/--ESCAPED_PARAM_QUESTION/g,"?").replace(/--ESCAPED_PARAM_ASTERISKS/g,"*"),(0,n.compile)("/"+e,{validate:!1})(t).slice(1)}function prepareDestination(e){let t;let r=Object.assign({},e.query);delete r.__nextLocale,delete r.__nextDefaultLocale,delete r.__nextDataReq,delete r.__nextInferredLocaleFromDefault,delete r[u.NEXT_RSC_UNION_QUERY];let a=e.destination;for(let t of Object.keys({...e.params,...r}))a=escapeSegment(a,t);let s=(0,o.parseUrl)(a),c=s.query,l=unescapeSegments(""+s.pathname+(s.hash||"")),p=unescapeSegments(s.hostname||""),f=[],d=[];(0,n.pathToRegexp)(l,f),(0,n.pathToRegexp)(p,d);let g=[];f.forEach(e=>g.push(e.name)),d.forEach(e=>g.push(e.name));let m=(0,n.compile)(l,{validate:!1}),R=(0,n.compile)(p,{validate:!1});for(let[t,r]of Object.entries(c))Array.isArray(r)?c[t]=r.map(t=>compileNonPath(unescapeSegments(t),e.params)):"string"==typeof r&&(c[t]=compileNonPath(unescapeSegments(r),e.params));let h=Object.keys(e.params).filter(e=>"nextInternalLocale"!==e);if(e.appendParamsToQuery&&!h.some(e=>g.includes(e)))for(let t of h)t in c||(c[t]=e.params[t]);if((0,i.isInterceptionRouteAppPath)(l))for(let t of l.split("/")){let r=i.INTERCEPTION_ROUTE_MARKERS.find(e=>t.startsWith(e));if(r){e.params["0"]=r;break}}try{t=m(e.params);let[r,n]=t.split("#",2);s.hostname=R(e.params),s.pathname=r,s.hash=(n?"#":"")+(n||""),delete s.search}catch(e){if(e.message.match(/Expected .*? to not repeat, but got an array/))throw Error("To use a multi-match in the destination you must add `*` at the end of the param name to signify it should repeat. https://nextjs.org/docs/messages/invalid-multi-match");throw e}return s.query={...r,...s.query},{newUrl:t,destQuery:c,parsedDestination:s}}},6024:(e,t)=>{function searchParamsToUrlQuery(e){let t={};return e.forEach((e,r)=>{void 0===t[r]?t[r]=e:Array.isArray(t[r])?t[r].push(e):t[r]=[t[r],e]}),t}function stringifyUrlQueryParam(e){return"string"!=typeof e&&("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function urlQueryToSearchParams(e){let t=new URLSearchParams;return Object.entries(e).forEach(e=>{let[r,n]=e;Array.isArray(n)?n.forEach(e=>t.append(r,stringifyUrlQueryParam(e))):t.set(r,stringifyUrlQueryParam(n))}),t}function assign(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n{Array.from(t.keys()).forEach(t=>e.delete(t)),t.forEach((t,r)=>e.append(r,t))}),e}Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{searchParamsToUrlQuery:function(){return searchParamsToUrlQuery},urlQueryToSearchParams:function(){return urlQueryToSearchParams},assign:function(){return assign}})},4419:(e,t)=>{function removeTrailingSlash(e){return e.replace(/\/$/,"")||"/"}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"removeTrailingSlash",{enumerable:!0,get:function(){return removeTrailingSlash}})},4893:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getRouteMatcher",{enumerable:!0,get:function(){return getRouteMatcher}});let n=r(351);function getRouteMatcher(e){let{re:t,groups:r}=e;return e=>{let a=t.exec(e);if(!a)return!1;let decode=e=>{try{return decodeURIComponent(e)}catch(e){throw new n.DecodeError("failed to decode param")}},o={};return Object.keys(r).forEach(e=>{let t=r[e],n=a[t.pos];void 0!==n&&(o[e]=~n.indexOf("/")?n.split("/").map(e=>decode(e)):t.repeat?[decode(n)]:decode(n))}),o}}},4018:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{getRouteRegex:function(){return getRouteRegex},getNamedRouteRegex:function(){return getNamedRouteRegex},getNamedMiddlewareRegex:function(){return getNamedMiddlewareRegex}});let n=r(7302),a=r(9789),o=r(4419);function parseParameter(e){let t=e.startsWith("[")&&e.endsWith("]");t&&(e=e.slice(1,-1));let r=e.startsWith("...");return r&&(e=e.slice(3)),{key:e,repeat:r,optional:t}}function getParametrizedRoute(e){let t=(0,o.removeTrailingSlash)(e).slice(1).split("/"),r={},i=1;return{parameterizedRoute:t.map(e=>{let t=n.INTERCEPTION_ROUTE_MARKERS.find(t=>e.startsWith(t)),o=e.match(/\[((?:\[.*\])|.+)\]/);if(t&&o){let{key:e,optional:n,repeat:u}=parseParameter(o[1]);return r[e]={pos:i++,repeat:u,optional:n},"/"+(0,a.escapeStringRegexp)(t)+"([^/]+?)"}if(!o)return"/"+(0,a.escapeStringRegexp)(e);{let{key:e,repeat:t,optional:n}=parseParameter(o[1]);return r[e]={pos:i++,repeat:t,optional:n},t?n?"(?:/(.+?))?":"/(.+?)":"/([^/]+?)"}}).join(""),groups:r}}function getRouteRegex(e){let{parameterizedRoute:t,groups:r}=getParametrizedRoute(e);return{re:RegExp("^"+t+"(?:/)?$"),groups:r}}function buildGetSafeRouteKey(){let e=0;return()=>{let t="",r=++e;for(;r>0;)t+=String.fromCharCode(97+(r-1)%26),r=Math.floor((r-1)/26);return t}}function getSafeKeyFromSegment(e){let{getSafeRouteKey:t,segment:r,routeKeys:n,keyPrefix:a}=e,{key:o,optional:i,repeat:u}=parseParameter(r),s=o.replace(/\W/g,"");a&&(s=""+a+s);let c=!1;return(0===s.length||s.length>30)&&(c=!0),isNaN(parseInt(s.slice(0,1)))||(c=!0),c&&(s=t()),a?n[s]=""+a+o:n[s]=""+o,u?i?"(?:/(?<"+s+">.+?))?":"/(?<"+s+">.+?)":"/(?<"+s+">[^/]+?)"}function getNamedParametrizedRoute(e,t){let r=(0,o.removeTrailingSlash)(e).slice(1).split("/"),i=buildGetSafeRouteKey(),u={};return{namedParameterizedRoute:r.map(e=>{let r=n.INTERCEPTION_ROUTE_MARKERS.some(t=>e.startsWith(t)),o=e.match(/\[((?:\[.*\])|.+)\]/);return r&&o?getSafeKeyFromSegment({getSafeRouteKey:i,segment:o[1],routeKeys:u,keyPrefix:t?"nxtI":void 0}):o?getSafeKeyFromSegment({getSafeRouteKey:i,segment:o[1],routeKeys:u,keyPrefix:t?"nxtP":void 0}):"/"+(0,a.escapeStringRegexp)(e)}).join(""),routeKeys:u}}function getNamedRouteRegex(e,t){let r=getNamedParametrizedRoute(e,t);return{...getRouteRegex(e),namedRegex:"^"+r.namedParameterizedRoute+"(?:/)?$",routeKeys:r.routeKeys}}function getNamedMiddlewareRegex(e,t){let{parameterizedRoute:r}=getParametrizedRoute(e),{catchAll:n=!0}=t;if("/"===r)return{namedRegex:"^/"+(n?".*":"")+"$"};let{namedParameterizedRoute:a}=getNamedParametrizedRoute(e,!1);return{namedRegex:"^"+a+(n?"(?:(/.*)?)":"")+"$"}}},2219:(e,t)=>{function isGroupSegment(e){return"("===e[0]&&e.endsWith(")")}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isGroupSegment",{enumerable:!0,get:function(){return isGroupSegment}})},351:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{WEB_VITALS:function(){return r},execOnce:function(){return execOnce},isAbsoluteUrl:function(){return isAbsoluteUrl},getLocationOrigin:function(){return getLocationOrigin},getURL:function(){return getURL},getDisplayName:function(){return getDisplayName},isResSent:function(){return isResSent},normalizeRepeatedSlashes:function(){return normalizeRepeatedSlashes},loadGetInitialProps:function(){return loadGetInitialProps},SP:function(){return a},ST:function(){return o},DecodeError:function(){return DecodeError},NormalizeError:function(){return NormalizeError},PageNotFoundError:function(){return PageNotFoundError},MissingStaticPage:function(){return MissingStaticPage},MiddlewareNotFoundError:function(){return MiddlewareNotFoundError},stringifyError:function(){return stringifyError}});let r=["CLS","FCP","FID","INP","LCP","TTFB"];function execOnce(e){let t,r=!1;return function(){for(var n=arguments.length,a=Array(n),o=0;on.test(e);function getLocationOrigin(){let{protocol:e,hostname:t,port:r}=window.location;return e+"//"+t+(r?":"+r:"")}function getURL(){let{href:e}=window.location,t=getLocationOrigin();return e.substring(t.length)}function getDisplayName(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function isResSent(e){return e.finished||e.headersSent}function normalizeRepeatedSlashes(e){let t=e.split("?"),r=t[0];return r.replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?"?"+t.slice(1).join("?"):"")}async function loadGetInitialProps(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await loadGetInitialProps(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&isResSent(r))return n;if(!n){let t='"'+getDisplayName(e)+'.getInitialProps()" should resolve to an object. But found "'+n+'" instead.';throw Error(t)}return n}let a="undefined"!=typeof performance,o=a&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);let DecodeError=class DecodeError extends Error{};let NormalizeError=class NormalizeError extends Error{};let PageNotFoundError=class PageNotFoundError extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message="Cannot find module for page: "+e}};let MissingStaticPage=class MissingStaticPage extends Error{constructor(e,t){super(),this.message="Failed to load static file for page: "+e+" "+t}};let MiddlewareNotFoundError=class MiddlewareNotFoundError extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}};function stringifyError(e){return JSON.stringify({message:e.message,stack:e.stack})}}};
\ No newline at end of file
diff --git a/.next/server/chunks/405.js b/.next/server/chunks/405.js
deleted file mode 100644
index 73ad1e3..0000000
--- a/.next/server/chunks/405.js
+++ /dev/null
@@ -1,509 +0,0 @@
-"use strict";
-exports.id = 405;
-exports.ids = [405];
-exports.modules = {
-
-/***/ 3332:
-/***/ ((module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- DYNAMIC_ERROR_CODE: function() {
- return DYNAMIC_ERROR_CODE;
- },
- DynamicServerError: function() {
- return DynamicServerError;
- }
-});
-const DYNAMIC_ERROR_CODE = "DYNAMIC_SERVER_USAGE";
-class DynamicServerError extends Error {
- constructor(type){
- super("Dynamic server usage: " + type);
- this.digest = DYNAMIC_ERROR_CODE;
- }
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=hooks-server-context.js.map
-
-
-/***/ }),
-
-/***/ 5486:
-/***/ ((module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "staticGenerationBailout", ({
- enumerable: true,
- get: function() {
- return staticGenerationBailout;
- }
-}));
-const _hooksservercontext = __webpack_require__(3332);
-const _staticgenerationasyncstorage = __webpack_require__(94);
-class StaticGenBailoutError extends Error {
- constructor(...args){
- super(...args);
- this.code = "NEXT_STATIC_GEN_BAILOUT";
- }
-}
-const staticGenerationBailout = (reason, opts)=>{
- const staticGenerationStore = _staticgenerationasyncstorage.staticGenerationAsyncStorage.getStore();
- if (staticGenerationStore == null ? void 0 : staticGenerationStore.forceStatic) {
- return true;
- }
- if (staticGenerationStore == null ? void 0 : staticGenerationStore.dynamicShouldError) {
- const { dynamic ="error" , link } = opts || {};
- const suffix = link ? " See more info here: " + link : "";
- throw new StaticGenBailoutError('Page with `dynamic = "' + dynamic + "\"` couldn't be rendered statically because it used `" + reason + "`." + suffix);
- }
- if (staticGenerationStore) {
- staticGenerationStore.revalidate = 0;
- }
- if (staticGenerationStore == null ? void 0 : staticGenerationStore.isStaticGeneration) {
- const err = new _hooksservercontext.DynamicServerError(reason);
- staticGenerationStore.dynamicUsageDescription = reason;
- staticGenerationStore.dynamicUsageStack = err.stack;
- throw err;
- }
- return false;
-};
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=static-generation-bailout.js.map
-
-
-/***/ }),
-
-/***/ 8537:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- NEXT_QUERY_PARAM_PREFIX: function() {
- return NEXT_QUERY_PARAM_PREFIX;
- },
- PRERENDER_REVALIDATE_HEADER: function() {
- return PRERENDER_REVALIDATE_HEADER;
- },
- PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER: function() {
- return PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER;
- },
- CACHE_ONE_YEAR: function() {
- return CACHE_ONE_YEAR;
- },
- MIDDLEWARE_FILENAME: function() {
- return MIDDLEWARE_FILENAME;
- },
- MIDDLEWARE_LOCATION_REGEXP: function() {
- return MIDDLEWARE_LOCATION_REGEXP;
- },
- INSTRUMENTATION_HOOK_FILENAME: function() {
- return INSTRUMENTATION_HOOK_FILENAME;
- },
- INSTRUMENTATION_HOOKS_LOCATION_REGEXP: function() {
- return INSTRUMENTATION_HOOKS_LOCATION_REGEXP;
- },
- PAGES_DIR_ALIAS: function() {
- return PAGES_DIR_ALIAS;
- },
- DOT_NEXT_ALIAS: function() {
- return DOT_NEXT_ALIAS;
- },
- ROOT_DIR_ALIAS: function() {
- return ROOT_DIR_ALIAS;
- },
- APP_DIR_ALIAS: function() {
- return APP_DIR_ALIAS;
- },
- RSC_MOD_REF_PROXY_ALIAS: function() {
- return RSC_MOD_REF_PROXY_ALIAS;
- },
- RSC_ACTION_VALIDATE_ALIAS: function() {
- return RSC_ACTION_VALIDATE_ALIAS;
- },
- RSC_ACTION_PROXY_ALIAS: function() {
- return RSC_ACTION_PROXY_ALIAS;
- },
- RSC_ACTION_CLIENT_WRAPPER_ALIAS: function() {
- return RSC_ACTION_CLIENT_WRAPPER_ALIAS;
- },
- PUBLIC_DIR_MIDDLEWARE_CONFLICT: function() {
- return PUBLIC_DIR_MIDDLEWARE_CONFLICT;
- },
- SSG_GET_INITIAL_PROPS_CONFLICT: function() {
- return SSG_GET_INITIAL_PROPS_CONFLICT;
- },
- SERVER_PROPS_GET_INIT_PROPS_CONFLICT: function() {
- return SERVER_PROPS_GET_INIT_PROPS_CONFLICT;
- },
- SERVER_PROPS_SSG_CONFLICT: function() {
- return SERVER_PROPS_SSG_CONFLICT;
- },
- STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR: function() {
- return STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR;
- },
- SERVER_PROPS_EXPORT_ERROR: function() {
- return SERVER_PROPS_EXPORT_ERROR;
- },
- GSP_NO_RETURNED_VALUE: function() {
- return GSP_NO_RETURNED_VALUE;
- },
- GSSP_NO_RETURNED_VALUE: function() {
- return GSSP_NO_RETURNED_VALUE;
- },
- UNSTABLE_REVALIDATE_RENAME_ERROR: function() {
- return UNSTABLE_REVALIDATE_RENAME_ERROR;
- },
- GSSP_COMPONENT_MEMBER_ERROR: function() {
- return GSSP_COMPONENT_MEMBER_ERROR;
- },
- NON_STANDARD_NODE_ENV: function() {
- return NON_STANDARD_NODE_ENV;
- },
- SSG_FALLBACK_EXPORT_ERROR: function() {
- return SSG_FALLBACK_EXPORT_ERROR;
- },
- ESLINT_DEFAULT_DIRS: function() {
- return ESLINT_DEFAULT_DIRS;
- },
- ESLINT_DEFAULT_DIRS_WITH_APP: function() {
- return ESLINT_DEFAULT_DIRS_WITH_APP;
- },
- ESLINT_PROMPT_VALUES: function() {
- return ESLINT_PROMPT_VALUES;
- },
- SERVER_RUNTIME: function() {
- return SERVER_RUNTIME;
- },
- WEBPACK_LAYERS: function() {
- return WEBPACK_LAYERS;
- }
-});
-const NEXT_QUERY_PARAM_PREFIX = "nxtP";
-const PRERENDER_REVALIDATE_HEADER = "x-prerender-revalidate";
-const PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER = "x-prerender-revalidate-if-generated";
-const CACHE_ONE_YEAR = 31536000;
-const MIDDLEWARE_FILENAME = "middleware";
-const MIDDLEWARE_LOCATION_REGEXP = `(?:src/)?${MIDDLEWARE_FILENAME}`;
-const INSTRUMENTATION_HOOK_FILENAME = "instrumentation";
-const INSTRUMENTATION_HOOKS_LOCATION_REGEXP = `(?:src/)?${INSTRUMENTATION_HOOK_FILENAME}`;
-const PAGES_DIR_ALIAS = "private-next-pages";
-const DOT_NEXT_ALIAS = "private-dot-next";
-const ROOT_DIR_ALIAS = "private-next-root-dir";
-const APP_DIR_ALIAS = "private-next-app-dir";
-const RSC_MOD_REF_PROXY_ALIAS = "next/dist/build/webpack/loaders/next-flight-loader/module-proxy";
-const RSC_ACTION_VALIDATE_ALIAS = "private-next-rsc-action-validate";
-const RSC_ACTION_PROXY_ALIAS = "private-next-rsc-action-proxy";
-const RSC_ACTION_CLIENT_WRAPPER_ALIAS = "private-next-rsc-action-client-wrapper";
-const PUBLIC_DIR_MIDDLEWARE_CONFLICT = `You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://nextjs.org/docs/messages/public-next-folder-conflict`;
-const SSG_GET_INITIAL_PROPS_CONFLICT = `You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps`;
-const SERVER_PROPS_GET_INIT_PROPS_CONFLICT = `You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.`;
-const SERVER_PROPS_SSG_CONFLICT = `You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps`;
-const STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR = `can not have getInitialProps/getServerSideProps, https://nextjs.org/docs/messages/404-get-initial-props`;
-const SERVER_PROPS_EXPORT_ERROR = `pages with \`getServerSideProps\` can not be exported. See more info here: https://nextjs.org/docs/messages/gssp-export`;
-const GSP_NO_RETURNED_VALUE = "Your `getStaticProps` function did not return an object. Did you forget to add a `return`?";
-const GSSP_NO_RETURNED_VALUE = "Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?";
-const UNSTABLE_REVALIDATE_RENAME_ERROR = "The `unstable_revalidate` property is available for general use.\n" + "Please use `revalidate` instead.";
-const GSSP_COMPONENT_MEMBER_ERROR = `can not be attached to a page's component and must be exported from the page. See more info here: https://nextjs.org/docs/messages/gssp-component-member`;
-const NON_STANDARD_NODE_ENV = `You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://nextjs.org/docs/messages/non-standard-node-env`;
-const SSG_FALLBACK_EXPORT_ERROR = `Pages with \`fallback\` enabled in \`getStaticPaths\` can not be exported. See more info here: https://nextjs.org/docs/messages/ssg-fallback-true-export`;
-const ESLINT_DEFAULT_DIRS = [
- "pages",
- "components",
- "lib",
- "src"
-];
-const ESLINT_DEFAULT_DIRS_WITH_APP = [
- "app",
- ...ESLINT_DEFAULT_DIRS
-];
-const ESLINT_PROMPT_VALUES = [
- {
- title: "Strict",
- recommended: true,
- config: {
- extends: "next/core-web-vitals"
- }
- },
- {
- title: "Base",
- config: {
- extends: "next"
- }
- },
- {
- title: "Cancel",
- config: null
- }
-];
-const SERVER_RUNTIME = {
- edge: "edge",
- experimentalEdge: "experimental-edge",
- nodejs: "nodejs"
-};
-const WEBPACK_LAYERS = {
- shared: "sc_shared",
- server: "sc_server",
- client: "sc_client",
- action: "sc_action",
- api: "api",
- middleware: "middleware",
- edgeAsset: "edge-asset",
- appClient: "app-client"
-}; //# sourceMappingURL=constants.js.map
-
-
-/***/ }),
-
-/***/ 2207:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "detectDomainLocale", ({
- enumerable: true,
- get: function() {
- return detectDomainLocale;
- }
-}));
-function detectDomainLocale(domainItems, hostname, detectedLocale) {
- if (!domainItems) return;
- if (detectedLocale) {
- detectedLocale = detectedLocale.toLowerCase();
- }
- for (const item of domainItems){
- var _item_domain, _item_locales;
- // remove port if present
- const domainHostname = (_item_domain = item.domain) == null ? void 0 : _item_domain.split(":")[0].toLowerCase();
- if (hostname === domainHostname || detectedLocale === item.defaultLocale.toLowerCase() || ((_item_locales = item.locales) == null ? void 0 : _item_locales.some((locale)=>locale.toLowerCase() === detectedLocale))) {
- return item;
- }
- }
-} //# sourceMappingURL=detect-domain-locale.js.map
-
-
-/***/ }),
-
-/***/ 9962:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "normalizeLocalePath", ({
- enumerable: true,
- get: function() {
- return normalizeLocalePath;
- }
-}));
-function normalizeLocalePath(pathname, locales) {
- let detectedLocale;
- // first item will be empty string from splitting at first char
- const pathnameParts = pathname.split("/");
- (locales || []).some((locale)=>{
- if (pathnameParts[1] && pathnameParts[1].toLowerCase() === locale.toLowerCase()) {
- detectedLocale = locale;
- pathnameParts.splice(1, 1);
- pathname = pathnameParts.join("/") || "/";
- return true;
- }
- return false;
- });
- return {
- pathname,
- detectedLocale
- };
-} //# sourceMappingURL=normalize-locale-path.js.map
-
-
-/***/ }),
-
-/***/ 465:
-/***/ ((__unused_webpack_module, exports) => {
-
-/**
- * Removes the trailing slash for a given route or page path. Preserves the
- * root page. Examples:
- * - `/foo/bar/` -> `/foo/bar`
- * - `/foo/bar` -> `/foo/bar`
- * - `/` -> `/`
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "removeTrailingSlash", ({
- enumerable: true,
- get: function() {
- return removeTrailingSlash;
- }
-}));
-function removeTrailingSlash(route) {
- return route.replace(/\/$/, "") || "/";
-} //# sourceMappingURL=remove-trailing-slash.js.map
-
-
-/***/ }),
-
-/***/ 6127:
-/***/ ((module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "actionAsyncStorage", ({
- enumerable: true,
- get: function() {
- return actionAsyncStorage;
- }
-}));
-const _asynclocalstorage = __webpack_require__(5862);
-const actionAsyncStorage = (0, _asynclocalstorage.createAsyncLocalStorage)();
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=action-async-storage.js.map
-
-
-/***/ }),
-
-/***/ 5862:
-/***/ ((module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createAsyncLocalStorage", ({
- enumerable: true,
- get: function() {
- return createAsyncLocalStorage;
- }
-}));
-class FakeAsyncLocalStorage {
- disable() {
- throw new Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available");
- }
- getStore() {
- // This fake implementation of AsyncLocalStorage always returns `undefined`.
- return undefined;
- }
- run() {
- throw new Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available");
- }
- exit() {
- throw new Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available");
- }
- enterWith() {
- throw new Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available");
- }
-}
-function createAsyncLocalStorage() {
- if (globalThis.AsyncLocalStorage) {
- return new globalThis.AsyncLocalStorage();
- }
- return new FakeAsyncLocalStorage();
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=async-local-storage.js.map
-
-
-/***/ }),
-
-/***/ 4437:
-/***/ ((module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "requestAsyncStorage", ({
- enumerable: true,
- get: function() {
- return requestAsyncStorage;
- }
-}));
-const _asynclocalstorage = __webpack_require__(5862);
-const requestAsyncStorage = (0, _asynclocalstorage.createAsyncLocalStorage)();
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=request-async-storage.js.map
-
-
-/***/ }),
-
-/***/ 94:
-/***/ ((module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "staticGenerationAsyncStorage", ({
- enumerable: true,
- get: function() {
- return staticGenerationAsyncStorage;
- }
-}));
-const _asynclocalstorage = __webpack_require__(5862);
-const staticGenerationAsyncStorage = (0, _asynclocalstorage.createAsyncLocalStorage)();
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=static-generation-async-storage.js.map
-
-
-/***/ })
-
-};
-;
\ No newline at end of file
diff --git a/.next/server/chunks/421.js b/.next/server/chunks/421.js
deleted file mode 100644
index 94026cd..0000000
--- a/.next/server/chunks/421.js
+++ /dev/null
@@ -1,690 +0,0 @@
-exports.id = 421;
-exports.ids = [421];
-exports.modules = {
-
-/***/ 7649:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "default", ({
- enumerable: true,
- get: function() {
- return _default;
- }
-}));
-const _interop_require_default = __webpack_require__(5967);
-const _interop_require_wildcard = __webpack_require__(1113);
-const _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(8038));
-const _head = /*#__PURE__*/ _interop_require_default._(__webpack_require__(9040));
-const _imageblursvg = __webpack_require__(4486);
-const _imageconfig = __webpack_require__(5843);
-const _imageconfigcontext = __webpack_require__(744);
-const _warnonce = __webpack_require__(618);
-const _imageloader = /*#__PURE__*/ _interop_require_default._(__webpack_require__(9552));
-const configEnv = {"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","dangerouslyAllowSVG":false,"unoptimized":false};
-const allImgs = new Map();
-let perfObserver;
-if (true) {
- globalThis.__NEXT_IMAGE_IMPORTED = true;
-}
-const VALID_LOADING_VALUES = (/* unused pure expression or super */ null && ([
- "lazy",
- "eager",
- undefined
-]));
-function isStaticRequire(src) {
- return src.default !== undefined;
-}
-function isStaticImageData(src) {
- return src.src !== undefined;
-}
-function isStaticImport(src) {
- return typeof src === "object" && (isStaticRequire(src) || isStaticImageData(src));
-}
-function getWidths(param, width, sizes) {
- let { deviceSizes , allSizes } = param;
- if (sizes) {
- // Find all the "vw" percent sizes used in the sizes prop
- const viewportWidthRe = /(^|\s)(1?\d?\d)vw/g;
- const percentSizes = [];
- for(let match; match = viewportWidthRe.exec(sizes); match){
- percentSizes.push(parseInt(match[2]));
- }
- if (percentSizes.length) {
- const smallestRatio = Math.min(...percentSizes) * 0.01;
- return {
- widths: allSizes.filter((s)=>s >= deviceSizes[0] * smallestRatio),
- kind: "w"
- };
- }
- return {
- widths: allSizes,
- kind: "w"
- };
- }
- if (typeof width !== "number") {
- return {
- widths: deviceSizes,
- kind: "w"
- };
- }
- const widths = [
- ...new Set(// > are actually 3x in the green color, but only 1.5x in the red and
- // > blue colors. Showing a 3x resolution image in the app vs a 2x
- // > resolution image will be visually the same, though the 3x image
- // > takes significantly more data. Even true 3x resolution screens are
- // > wasteful as the human eye cannot see that level of detail without
- // > something like a magnifying glass.
- // https://blog.twitter.com/engineering/en_us/topics/infrastructure/2019/capping-image-fidelity-on-ultra-high-resolution-devices.html
- [
- width,
- width * 2 /*, width * 3*/
- ].map((w)=>allSizes.find((p)=>p >= w) || allSizes[allSizes.length - 1]))
- ];
- return {
- widths,
- kind: "x"
- };
-}
-function generateImgAttrs(param) {
- let { config , src , unoptimized , width , quality , sizes , loader } = param;
- if (unoptimized) {
- return {
- src,
- srcSet: undefined,
- sizes: undefined
- };
- }
- const { widths , kind } = getWidths(config, width, sizes);
- const last = widths.length - 1;
- return {
- sizes: !sizes && kind === "w" ? "100vw" : sizes,
- srcSet: widths.map((w, i)=>loader({
- config,
- src,
- quality,
- width: w
- }) + " " + (kind === "w" ? w : i + 1) + kind).join(", "),
- // It's intended to keep `src` the last attribute because React updates
- // attributes in order. If we keep `src` the first one, Safari will
- // immediately start to fetch `src`, before `sizes` and `srcSet` are even
- // updated by React. That causes multiple unnecessary requests if `srcSet`
- // and `sizes` are defined.
- // This bug cannot be reproduced in Chrome or Firefox.
- src: loader({
- config,
- src,
- quality,
- width: widths[last]
- })
- };
-}
-function getInt(x) {
- if (typeof x === "undefined") {
- return x;
- }
- if (typeof x === "number") {
- return Number.isFinite(x) ? x : NaN;
- }
- if (typeof x === "string" && /^[0-9]+$/.test(x)) {
- return parseInt(x, 10);
- }
- return NaN;
-}
-// See https://stackoverflow.com/q/39777833/266535 for why we use this ref
-// handler instead of the img's onLoad attribute.
-function handleLoading(img, src, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized) {
- if (!img || img["data-loaded-src"] === src) {
- return;
- }
- img["data-loaded-src"] = src;
- const p = "decode" in img ? img.decode() : Promise.resolve();
- p.catch(()=>{}).then(()=>{
- if (!img.parentElement || !img.isConnected) {
- // Exit early in case of race condition:
- // - onload() is called
- // - decode() is called but incomplete
- // - unmount is called
- // - decode() completes
- return;
- }
- if (placeholder === "blur") {
- setBlurComplete(true);
- }
- if (onLoadRef == null ? void 0 : onLoadRef.current) {
- // Since we don't have the SyntheticEvent here,
- // we must create one with the same shape.
- // See https://reactjs.org/docs/events.html
- const event = new Event("load");
- Object.defineProperty(event, "target", {
- writable: false,
- value: img
- });
- let prevented = false;
- let stopped = false;
- onLoadRef.current({
- ...event,
- nativeEvent: event,
- currentTarget: img,
- target: img,
- isDefaultPrevented: ()=>prevented,
- isPropagationStopped: ()=>stopped,
- persist: ()=>{},
- preventDefault: ()=>{
- prevented = true;
- event.preventDefault();
- },
- stopPropagation: ()=>{
- stopped = true;
- event.stopPropagation();
- }
- });
- }
- if (onLoadingCompleteRef == null ? void 0 : onLoadingCompleteRef.current) {
- onLoadingCompleteRef.current(img);
- }
- if (false) {}
- });
-}
-function getDynamicProps(fetchPriority) {
- const [majorStr, minorStr] = _react.version.split(".");
- const major = parseInt(majorStr, 10);
- const minor = parseInt(minorStr, 10);
- if (major > 18 || major === 18 && minor >= 3) {
- // In React 18.3.0 or newer, we must use camelCase
- // prop to avoid "Warning: Invalid DOM property".
- // See https://github.com/facebook/react/pull/25927
- return {
- fetchPriority
- };
- }
- // In React 18.2.0 or older, we must use lowercase prop
- // to avoid "Warning: Invalid DOM property".
- return {
- fetchpriority: fetchPriority
- };
-}
-const ImageElement = /*#__PURE__*/ (0, _react.forwardRef)((param, forwardedRef)=>{
- let { imgAttributes , heightInt , widthInt , qualityInt , className , imgStyle , blurStyle , isLazy , fetchPriority , fill , placeholder , loading , srcString , config , unoptimized , loader , onLoadRef , onLoadingCompleteRef , setBlurComplete , setShowAltText , onLoad , onError , ...rest } = param;
- loading = isLazy ? "lazy" : loading;
- return /*#__PURE__*/ _react.default.createElement("img", {
- ...rest,
- ...getDynamicProps(fetchPriority),
- loading: loading,
- width: widthInt,
- height: heightInt,
- decoding: "async",
- "data-nimg": fill ? "fill" : "1",
- className: className,
- style: {
- ...imgStyle,
- ...blurStyle
- },
- ...imgAttributes,
- ref: (0, _react.useCallback)((img)=>{
- if (forwardedRef) {
- if (typeof forwardedRef === "function") forwardedRef(img);
- else if (typeof forwardedRef === "object") {
- // @ts-ignore - .current is read only it's usually assigned by react internally
- forwardedRef.current = img;
- }
- }
- if (!img) {
- return;
- }
- if (onError) {
- // If the image has an error before react hydrates, then the error is lost.
- // The workaround is to wait until the image is mounted which is after hydration,
- // then we set the src again to trigger the error handler (if there was an error).
- // eslint-disable-next-line no-self-assign
- img.src = img.src;
- }
- if (false) {}
- if (img.complete) {
- handleLoading(img, srcString, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized);
- }
- }, [
- srcString,
- placeholder,
- onLoadRef,
- onLoadingCompleteRef,
- setBlurComplete,
- onError,
- unoptimized,
- forwardedRef
- ]),
- onLoad: (event)=>{
- const img = event.currentTarget;
- handleLoading(img, srcString, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized);
- },
- onError: (event)=>{
- // if the real image fails to load, this will ensure "alt" is visible
- setShowAltText(true);
- if (placeholder === "blur") {
- // If the real image fails to load, this will still remove the placeholder.
- setBlurComplete(true);
- }
- if (onError) {
- onError(event);
- }
- }
- });
-});
-const Image = /*#__PURE__*/ (0, _react.forwardRef)((param, forwardedRef)=>{
- let { src , sizes , unoptimized =false , priority =false , loading , className , quality , width , height , fill , style , onLoad , onLoadingComplete , placeholder ="empty" , blurDataURL , fetchPriority , layout , objectFit , objectPosition , lazyBoundary , lazyRoot , ...all } = param;
- const configContext = (0, _react.useContext)(_imageconfigcontext.ImageConfigContext);
- const config = (0, _react.useMemo)(()=>{
- const c = configEnv || configContext || _imageconfig.imageConfigDefault;
- const allSizes = [
- ...c.deviceSizes,
- ...c.imageSizes
- ].sort((a, b)=>a - b);
- const deviceSizes = c.deviceSizes.sort((a, b)=>a - b);
- return {
- ...c,
- allSizes,
- deviceSizes
- };
- }, [
- configContext
- ]);
- let rest = all;
- let loader = rest.loader || _imageloader.default;
- // Remove property so it's not spread on element
- delete rest.loader;
- // This special value indicates that the user
- // didn't define a "loader" prop or "loader" config.
- const isDefaultLoader = "__next_img_default" in loader;
- if (isDefaultLoader) {
- if (config.loader === "custom") {
- throw new Error('Image with src "' + src + '" is missing "loader" prop.' + "\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader");
- }
- } else {
- // The user defined a "loader" prop or config.
- // Since the config object is internal only, we
- // must not pass it to the user-defined "loader".
- const customImageLoader = loader;
- loader = (obj)=>{
- const { config: _ , ...opts } = obj;
- return customImageLoader(opts);
- };
- }
- if (layout) {
- if (layout === "fill") {
- fill = true;
- }
- const layoutToStyle = {
- intrinsic: {
- maxWidth: "100%",
- height: "auto"
- },
- responsive: {
- width: "100%",
- height: "auto"
- }
- };
- const layoutToSizes = {
- responsive: "100vw",
- fill: "100vw"
- };
- const layoutStyle = layoutToStyle[layout];
- if (layoutStyle) {
- style = {
- ...style,
- ...layoutStyle
- };
- }
- const layoutSizes = layoutToSizes[layout];
- if (layoutSizes && !sizes) {
- sizes = layoutSizes;
- }
- }
- let staticSrc = "";
- let widthInt = getInt(width);
- let heightInt = getInt(height);
- let blurWidth;
- let blurHeight;
- if (isStaticImport(src)) {
- const staticImageData = isStaticRequire(src) ? src.default : src;
- if (!staticImageData.src) {
- throw new Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received " + JSON.stringify(staticImageData));
- }
- if (!staticImageData.height || !staticImageData.width) {
- throw new Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received " + JSON.stringify(staticImageData));
- }
- blurWidth = staticImageData.blurWidth;
- blurHeight = staticImageData.blurHeight;
- blurDataURL = blurDataURL || staticImageData.blurDataURL;
- staticSrc = staticImageData.src;
- if (!fill) {
- if (!widthInt && !heightInt) {
- widthInt = staticImageData.width;
- heightInt = staticImageData.height;
- } else if (widthInt && !heightInt) {
- const ratio = widthInt / staticImageData.width;
- heightInt = Math.round(staticImageData.height * ratio);
- } else if (!widthInt && heightInt) {
- const ratio = heightInt / staticImageData.height;
- widthInt = Math.round(staticImageData.width * ratio);
- }
- }
- }
- src = typeof src === "string" ? src : staticSrc;
- let isLazy = !priority && (loading === "lazy" || typeof loading === "undefined");
- if (!src || src.startsWith("data:") || src.startsWith("blob:")) {
- // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
- unoptimized = true;
- isLazy = false;
- }
- if (config.unoptimized) {
- unoptimized = true;
- }
- if (isDefaultLoader && src.endsWith(".svg") && !config.dangerouslyAllowSVG) {
- // Special case to make svg serve as-is to avoid proxying
- // through the built-in Image Optimization API.
- unoptimized = true;
- }
- if (priority) {
- fetchPriority = "high";
- }
- const [blurComplete, setBlurComplete] = (0, _react.useState)(false);
- const [showAltText, setShowAltText] = (0, _react.useState)(false);
- const qualityInt = getInt(quality);
- if (false) {}
- const imgStyle = Object.assign(fill ? {
- position: "absolute",
- height: "100%",
- width: "100%",
- left: 0,
- top: 0,
- right: 0,
- bottom: 0,
- objectFit,
- objectPosition
- } : {}, showAltText ? {} : {
- color: "transparent"
- }, style);
- const blurStyle = placeholder === "blur" && blurDataURL && !blurComplete ? {
- backgroundSize: imgStyle.objectFit || "cover",
- backgroundPosition: imgStyle.objectPosition || "50% 50%",
- backgroundRepeat: "no-repeat",
- backgroundImage: 'url("data:image/svg+xml;charset=utf-8,' + (0, _imageblursvg.getImageBlurSvg)({
- widthInt,
- heightInt,
- blurWidth,
- blurHeight,
- blurDataURL,
- objectFit: imgStyle.objectFit
- }) + '")'
- } : {};
- if (false) {}
- const imgAttributes = generateImgAttrs({
- config,
- src,
- unoptimized,
- width: widthInt,
- quality: qualityInt,
- sizes,
- loader
- });
- let srcString = src;
- if (false) {}
- const onLoadRef = (0, _react.useRef)(onLoad);
- (0, _react.useEffect)(()=>{
- onLoadRef.current = onLoad;
- }, [
- onLoad
- ]);
- const onLoadingCompleteRef = (0, _react.useRef)(onLoadingComplete);
- (0, _react.useEffect)(()=>{
- onLoadingCompleteRef.current = onLoadingComplete;
- }, [
- onLoadingComplete
- ]);
- const imgElementArgs = {
- isLazy,
- imgAttributes,
- heightInt,
- widthInt,
- qualityInt,
- className,
- imgStyle,
- blurStyle,
- loading,
- config,
- fetchPriority,
- fill,
- unoptimized,
- placeholder,
- loader,
- srcString,
- onLoadRef,
- onLoadingCompleteRef,
- setBlurComplete,
- setShowAltText,
- ...rest
- };
- return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(ImageElement, {
- ...imgElementArgs,
- ref: forwardedRef
- }), priority ? // for browsers that do not support `imagesrcset`, and in those cases
- // it would likely cause the incorrect image to be preloaded.
- //
- // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset
- /*#__PURE__*/ _react.default.createElement(_head.default, null, /*#__PURE__*/ _react.default.createElement("link", {
- key: "__nimg-" + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes,
- rel: "preload",
- as: "image",
- href: imgAttributes.srcSet ? undefined : imgAttributes.src,
- imageSrcSet: imgAttributes.srcSet,
- imageSizes: imgAttributes.sizes,
- crossOrigin: rest.crossOrigin,
- referrerPolicy: rest.referrerPolicy,
- ...getDynamicProps(fetchPriority)
- })) : null);
-});
-const _default = Image;
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=image.js.map
-
-
-/***/ }),
-
-/***/ 9040:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- defaultHead: function() {
- return defaultHead;
- },
- default: function() {
- return _default;
- }
-});
-const _interop_require_default = __webpack_require__(5967);
-const _interop_require_wildcard = __webpack_require__(1113);
-const _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(8038));
-const _sideeffect = /*#__PURE__*/ _interop_require_default._(__webpack_require__(2470));
-const _ampcontext = __webpack_require__(3918);
-const _headmanagercontext = __webpack_require__(2796);
-const _ampmode = __webpack_require__(5732);
-const _warnonce = __webpack_require__(618);
-function defaultHead(inAmpMode) {
- if (inAmpMode === void 0) inAmpMode = false;
- const head = [
- /*#__PURE__*/ _react.default.createElement("meta", {
- charSet: "utf-8"
- })
- ];
- if (!inAmpMode) {
- head.push(/*#__PURE__*/ _react.default.createElement("meta", {
- name: "viewport",
- content: "width=device-width"
- }));
- }
- return head;
-}
-function onlyReactElement(list, child) {
- // React children can be "string" or "number" in this case we ignore them for backwards compat
- if (typeof child === "string" || typeof child === "number") {
- return list;
- }
- // Adds support for React.Fragment
- if (child.type === _react.default.Fragment) {
- return list.concat(_react.default.Children.toArray(child.props.children).reduce((fragmentList, fragmentChild)=>{
- if (typeof fragmentChild === "string" || typeof fragmentChild === "number") {
- return fragmentList;
- }
- return fragmentList.concat(fragmentChild);
- }, []));
- }
- return list.concat(child);
-}
-const METATYPES = [
- "name",
- "httpEquiv",
- "charSet",
- "itemProp"
-];
-/*
- returns a function for filtering head child elements
- which shouldn't be duplicated, like
- Also adds support for deduplicated `key` properties
-*/ function unique() {
- const keys = new Set();
- const tags = new Set();
- const metaTypes = new Set();
- const metaCategories = {};
- return (h)=>{
- let isUnique = true;
- let hasKey = false;
- if (h.key && typeof h.key !== "number" && h.key.indexOf("$") > 0) {
- hasKey = true;
- const key = h.key.slice(h.key.indexOf("$") + 1);
- if (keys.has(key)) {
- isUnique = false;
- } else {
- keys.add(key);
- }
- }
- // eslint-disable-next-line default-case
- switch(h.type){
- case "title":
- case "base":
- if (tags.has(h.type)) {
- isUnique = false;
- } else {
- tags.add(h.type);
- }
- break;
- case "meta":
- for(let i = 0, len = METATYPES.length; i < len; i++){
- const metatype = METATYPES[i];
- if (!h.props.hasOwnProperty(metatype)) continue;
- if (metatype === "charSet") {
- if (metaTypes.has(metatype)) {
- isUnique = false;
- } else {
- metaTypes.add(metatype);
- }
- } else {
- const category = h.props[metatype];
- const categories = metaCategories[metatype] || new Set();
- if ((metatype !== "name" || !hasKey) && categories.has(category)) {
- isUnique = false;
- } else {
- categories.add(category);
- metaCategories[metatype] = categories;
- }
- }
- }
- break;
- }
- return isUnique;
- };
-}
-/**
- *
- * @param headChildrenElements List of children of
- */ function reduceComponents(headChildrenElements, props) {
- const { inAmpMode } = props;
- return headChildrenElements.reduce(onlyReactElement, []).reverse().concat(defaultHead(inAmpMode).reverse()).filter(unique()).reverse().map((c, i)=>{
- const key = c.key || i;
- if ( true && !inAmpMode) {
- if (c.type === "link" && c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works.
- [
- "https://fonts.googleapis.com/css",
- "https://use.typekit.net/"
- ].some((url)=>c.props["href"].startsWith(url))) {
- const newProps = {
- ...c.props || {}
- };
- newProps["data-href"] = newProps["href"];
- newProps["href"] = undefined;
- // Add this attribute to make it easy to identify optimized tags
- newProps["data-optimized-fonts"] = true;
- return /*#__PURE__*/ _react.default.cloneElement(c, newProps);
- }
- }
- if (false) {}
- return /*#__PURE__*/ _react.default.cloneElement(c, {
- key
- });
- });
-}
-/**
- * This component injects elements to `` of your page.
- * To avoid duplicated `tags` in `` you can use the `key` property, which will make sure every tag is only rendered once.
- */ function Head(param) {
- let { children } = param;
- const ampState = (0, _react.useContext)(_ampcontext.AmpStateContext);
- const headManager = (0, _react.useContext)(_headmanagercontext.HeadManagerContext);
- return /*#__PURE__*/ _react.default.createElement(_sideeffect.default, {
- reduceComponentsToState: reduceComponents,
- headManager: headManager,
- inAmpMode: (0, _ampmode.isInAmpMode)(ampState)
- }, children);
-}
-const _default = Head;
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=head.js.map
-
-
-/***/ }),
-
-/***/ 8421:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-module.exports = __webpack_require__(7649)
-
-
-/***/ })
-
-};
-;
\ No newline at end of file
diff --git a/.next/server/chunks/572.js b/.next/server/chunks/572.js
deleted file mode 100644
index 0010045..0000000
--- a/.next/server/chunks/572.js
+++ /dev/null
@@ -1,5338 +0,0 @@
-"use strict";
-exports.id = 572;
-exports.ids = [572];
-exports.modules = {
-
-/***/ 3724:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- prefixes: function() {
- return prefixes;
- },
- wait: function() {
- return wait;
- },
- error: function() {
- return error;
- },
- warn: function() {
- return warn;
- },
- ready: function() {
- return ready;
- },
- info: function() {
- return info;
- },
- event: function() {
- return event;
- },
- trace: function() {
- return trace;
- },
- warnOnce: function() {
- return warnOnce;
- }
-});
-const _chalk = /*#__PURE__*/ _interop_require_default(__webpack_require__(3942));
-function _interop_require_default(obj) {
- return obj && obj.__esModule ? obj : {
- default: obj
- };
-}
-const prefixes = {
- wait: "- " + _chalk.default.cyan("wait"),
- error: "- " + _chalk.default.red("error"),
- warn: "- " + _chalk.default.yellow("warn"),
- ready: "- " + _chalk.default.green("ready"),
- info: "- " + _chalk.default.cyan("info"),
- event: "- " + _chalk.default.magenta("event"),
- trace: "- " + _chalk.default.magenta("trace")
-};
-function wait(...message) {
- console.log(prefixes.wait, ...message);
-}
-function error(...message) {
- console.error(prefixes.error, ...message);
-}
-function warn(...message) {
- console.warn(prefixes.warn, ...message);
-}
-function ready(...message) {
- console.log(prefixes.ready, ...message);
-}
-function info(...message) {
- console.log(prefixes.info, ...message);
-}
-function event(...message) {
- console.log(prefixes.event, ...message);
-}
-function trace(...message) {
- console.log(prefixes.trace, ...message);
-}
-const warnOnceMessages = new Set();
-function warnOnce(...message) {
- if (!warnOnceMessages.has(message[0])) {
- warnOnceMessages.add(message.join(" "));
- warn(...message);
- }
-} //# sourceMappingURL=log.js.map
-
-
-/***/ }),
-
-/***/ 42:
-/***/ ((module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- RSC: function() {
- return RSC;
- },
- ACTION: function() {
- return ACTION;
- },
- NEXT_ROUTER_STATE_TREE: function() {
- return NEXT_ROUTER_STATE_TREE;
- },
- NEXT_ROUTER_PREFETCH: function() {
- return NEXT_ROUTER_PREFETCH;
- },
- NEXT_URL: function() {
- return NEXT_URL;
- },
- FETCH_CACHE_HEADER: function() {
- return FETCH_CACHE_HEADER;
- },
- RSC_CONTENT_TYPE_HEADER: function() {
- return RSC_CONTENT_TYPE_HEADER;
- },
- RSC_VARY_HEADER: function() {
- return RSC_VARY_HEADER;
- },
- FLIGHT_PARAMETERS: function() {
- return FLIGHT_PARAMETERS;
- }
-});
-const RSC = "RSC";
-const ACTION = "Next-Action";
-const NEXT_ROUTER_STATE_TREE = "Next-Router-State-Tree";
-const NEXT_ROUTER_PREFETCH = "Next-Router-Prefetch";
-const NEXT_URL = "Next-Url";
-const FETCH_CACHE_HEADER = "x-vercel-sc-headers";
-const RSC_CONTENT_TYPE_HEADER = "text/x-component; charset=utf-8";
-const RSC_VARY_HEADER = RSC + ", " + NEXT_ROUTER_STATE_TREE + ", " + NEXT_ROUTER_PREFETCH;
-const FLIGHT_PARAMETERS = [
- [
- RSC
- ],
- [
- NEXT_ROUTER_STATE_TREE
- ],
- [
- NEXT_ROUTER_PREFETCH
- ]
-];
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=app-router-headers.js.map
-
-
-/***/ }),
-
-/***/ 1875:
-/***/ ((module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "DraftMode", ({
- enumerable: true,
- get: function() {
- return DraftMode;
- }
-}));
-const _staticgenerationbailout = __webpack_require__(5486);
-class DraftMode {
- get isEnabled() {
- return this._provider.isEnabled;
- }
- enable() {
- if ((0, _staticgenerationbailout.staticGenerationBailout)("draftMode().enable()")) {
- return;
- }
- return this._provider.enable();
- }
- disable() {
- if ((0, _staticgenerationbailout.staticGenerationBailout)("draftMode().disable()")) {
- return;
- }
- return this._provider.disable();
- }
- constructor(provider){
- this._provider = provider;
- }
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=draft-mode.js.map
-
-
-/***/ }),
-
-/***/ 3851:
-/***/ ((module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- headers: function() {
- return headers;
- },
- cookies: function() {
- return cookies;
- },
- draftMode: function() {
- return draftMode;
- }
-});
-const _requestcookies = __webpack_require__(8661);
-const _headers = __webpack_require__(7304);
-const _cookies = __webpack_require__(4521);
-const _requestasyncstorage = __webpack_require__(4437);
-const _actionasyncstorage = __webpack_require__(6127);
-const _staticgenerationbailout = __webpack_require__(5486);
-const _draftmode = __webpack_require__(1875);
-function headers() {
- if ((0, _staticgenerationbailout.staticGenerationBailout)("headers")) {
- return _headers.HeadersAdapter.seal(new Headers({}));
- }
- const requestStore = _requestasyncstorage.requestAsyncStorage.getStore();
- if (!requestStore) {
- throw new Error("Invariant: Method expects to have requestAsyncStorage, none available");
- }
- return requestStore.headers;
-}
-function cookies() {
- if ((0, _staticgenerationbailout.staticGenerationBailout)("cookies")) {
- return _requestcookies.RequestCookiesAdapter.seal(new _cookies.RequestCookies(new Headers({})));
- }
- const requestStore = _requestasyncstorage.requestAsyncStorage.getStore();
- if (!requestStore) {
- throw new Error("Invariant: Method expects to have requestAsyncStorage, none available");
- }
- const asyncActionStore = _actionasyncstorage.actionAsyncStorage.getStore();
- if (asyncActionStore && (asyncActionStore.isAction || asyncActionStore.isAppRoute)) {
- // We can't conditionally return different types here based on the context.
- // To avoid confusion, we always return the readonly type here.
- return requestStore.mutableCookies;
- }
- return requestStore.cookies;
-}
-function draftMode() {
- const requestStore = _requestasyncstorage.requestAsyncStorage.getStore();
- if (!requestStore) {
- throw new Error("Invariant: Method expects to have requestAsyncStorage, none available");
- }
- return new _draftmode.DraftMode(requestStore.draftMode);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=headers.js.map
-
-
-/***/ }),
-
-/***/ 4399:
-/***/ ((module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- notFound: function() {
- return notFound;
- },
- isNotFoundError: function() {
- return isNotFoundError;
- }
-});
-const NOT_FOUND_ERROR_CODE = "NEXT_NOT_FOUND";
-function notFound() {
- // eslint-disable-next-line no-throw-literal
- const error = new Error(NOT_FOUND_ERROR_CODE);
- error.digest = NOT_FOUND_ERROR_CODE;
- throw error;
-}
-function isNotFoundError(error) {
- return (error == null ? void 0 : error.digest) === NOT_FOUND_ERROR_CODE;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=not-found.js.map
-
-
-/***/ }),
-
-/***/ 6552:
-/***/ ((module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- RedirectType: function() {
- return RedirectType;
- },
- getRedirectError: function() {
- return getRedirectError;
- },
- redirect: function() {
- return redirect;
- },
- isRedirectError: function() {
- return isRedirectError;
- },
- getURLFromRedirectError: function() {
- return getURLFromRedirectError;
- },
- getRedirectTypeFromError: function() {
- return getRedirectTypeFromError;
- }
-});
-const _requestasyncstorage = __webpack_require__(4437);
-const REDIRECT_ERROR_CODE = "NEXT_REDIRECT";
-var RedirectType;
-(function(RedirectType) {
- RedirectType["push"] = "push";
- RedirectType["replace"] = "replace";
-})(RedirectType || (RedirectType = {}));
-function getRedirectError(url, type) {
- const error = new Error(REDIRECT_ERROR_CODE);
- error.digest = REDIRECT_ERROR_CODE + ";" + type + ";" + url;
- const requestStore = _requestasyncstorage.requestAsyncStorage.getStore();
- if (requestStore) {
- error.mutableCookies = requestStore.mutableCookies;
- }
- return error;
-}
-function redirect(url, type) {
- if (type === void 0) type = "replace";
- throw getRedirectError(url, type);
-}
-function isRedirectError(error) {
- if (typeof (error == null ? void 0 : error.digest) !== "string") return false;
- const [errorCode, type, destination] = error.digest.split(";", 3);
- return errorCode === REDIRECT_ERROR_CODE && (type === "replace" || type === "push") && typeof destination === "string";
-}
-function getURLFromRedirectError(error) {
- if (!isRedirectError(error)) return null;
- // Slices off the beginning of the digest that contains the code and the
- // separating ';'.
- return error.digest.split(";", 3)[2];
-}
-function getRedirectTypeFromError(error) {
- if (!isRedirectError(error)) {
- throw new Error("Not a redirect error");
- }
- return error.digest.split(";", 3)[1];
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=redirect.js.map
-
-
-/***/ }),
-
-/***/ 2962:
-/***/ ((module) => {
-
-
-(()=>{
- "use strict";
- var e = {
- 339: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.ContextAPI = void 0;
- const n = r(44);
- const a = r(38);
- const o = r(741);
- const i = "context";
- const c = new n.NoopContextManager;
- class ContextAPI {
- constructor(){}
- static getInstance() {
- if (!this._instance) {
- this._instance = new ContextAPI;
- }
- return this._instance;
- }
- setGlobalContextManager(e) {
- return (0, a.registerGlobal)(i, e, o.DiagAPI.instance());
- }
- active() {
- return this._getContextManager().active();
- }
- with(e, t, r, ...n) {
- return this._getContextManager().with(e, t, r, ...n);
- }
- bind(e, t) {
- return this._getContextManager().bind(e, t);
- }
- _getContextManager() {
- return (0, a.getGlobal)(i) || c;
- }
- disable() {
- this._getContextManager().disable();
- (0, a.unregisterGlobal)(i, o.DiagAPI.instance());
- }
- }
- t.ContextAPI = ContextAPI;
- },
- 741: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.DiagAPI = void 0;
- const n = r(144);
- const a = r(871);
- const o = r(133);
- const i = r(38);
- const c = "diag";
- class DiagAPI {
- constructor(){
- function _logProxy(e) {
- return function(...t) {
- const r = (0, i.getGlobal)("diag");
- if (!r) return;
- return r[e](...t);
- };
- }
- const e = this;
- const setLogger = (t, r = {
- logLevel: o.DiagLogLevel.INFO
- })=>{
- var n, c, s;
- if (t === e) {
- const t = new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");
- e.error((n = t.stack) !== null && n !== void 0 ? n : t.message);
- return false;
- }
- if (typeof r === "number") {
- r = {
- logLevel: r
- };
- }
- const u = (0, i.getGlobal)("diag");
- const l = (0, a.createLogLevelDiagLogger)((c = r.logLevel) !== null && c !== void 0 ? c : o.DiagLogLevel.INFO, t);
- if (u && !r.suppressOverrideMessage) {
- const e = (s = (new Error).stack) !== null && s !== void 0 ? s : "";
- u.warn(`Current logger will be overwritten from ${e}`);
- l.warn(`Current logger will overwrite one already registered from ${e}`);
- }
- return (0, i.registerGlobal)("diag", l, e, true);
- };
- e.setLogger = setLogger;
- e.disable = ()=>{
- (0, i.unregisterGlobal)(c, e);
- };
- e.createComponentLogger = (e)=>new n.DiagComponentLogger(e);
- e.verbose = _logProxy("verbose");
- e.debug = _logProxy("debug");
- e.info = _logProxy("info");
- e.warn = _logProxy("warn");
- e.error = _logProxy("error");
- }
- static instance() {
- if (!this._instance) {
- this._instance = new DiagAPI;
- }
- return this._instance;
- }
- }
- t.DiagAPI = DiagAPI;
- },
- 128: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.MetricsAPI = void 0;
- const n = r(333);
- const a = r(38);
- const o = r(741);
- const i = "metrics";
- class MetricsAPI {
- constructor(){}
- static getInstance() {
- if (!this._instance) {
- this._instance = new MetricsAPI;
- }
- return this._instance;
- }
- setGlobalMeterProvider(e) {
- return (0, a.registerGlobal)(i, e, o.DiagAPI.instance());
- }
- getMeterProvider() {
- return (0, a.getGlobal)(i) || n.NOOP_METER_PROVIDER;
- }
- getMeter(e, t, r) {
- return this.getMeterProvider().getMeter(e, t, r);
- }
- disable() {
- (0, a.unregisterGlobal)(i, o.DiagAPI.instance());
- }
- }
- t.MetricsAPI = MetricsAPI;
- },
- 930: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.PropagationAPI = void 0;
- const n = r(38);
- const a = r(600);
- const o = r(625);
- const i = r(377);
- const c = r(701);
- const s = r(741);
- const u = "propagation";
- const l = new a.NoopTextMapPropagator;
- class PropagationAPI {
- constructor(){
- this.createBaggage = c.createBaggage;
- this.getBaggage = i.getBaggage;
- this.getActiveBaggage = i.getActiveBaggage;
- this.setBaggage = i.setBaggage;
- this.deleteBaggage = i.deleteBaggage;
- }
- static getInstance() {
- if (!this._instance) {
- this._instance = new PropagationAPI;
- }
- return this._instance;
- }
- setGlobalPropagator(e) {
- return (0, n.registerGlobal)(u, e, s.DiagAPI.instance());
- }
- inject(e, t, r = o.defaultTextMapSetter) {
- return this._getGlobalPropagator().inject(e, t, r);
- }
- extract(e, t, r = o.defaultTextMapGetter) {
- return this._getGlobalPropagator().extract(e, t, r);
- }
- fields() {
- return this._getGlobalPropagator().fields();
- }
- disable() {
- (0, n.unregisterGlobal)(u, s.DiagAPI.instance());
- }
- _getGlobalPropagator() {
- return (0, n.getGlobal)(u) || l;
- }
- }
- t.PropagationAPI = PropagationAPI;
- },
- 967: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.TraceAPI = void 0;
- const n = r(38);
- const a = r(414);
- const o = r(994);
- const i = r(542);
- const c = r(741);
- const s = "trace";
- class TraceAPI {
- constructor(){
- this._proxyTracerProvider = new a.ProxyTracerProvider;
- this.wrapSpanContext = o.wrapSpanContext;
- this.isSpanContextValid = o.isSpanContextValid;
- this.deleteSpan = i.deleteSpan;
- this.getSpan = i.getSpan;
- this.getActiveSpan = i.getActiveSpan;
- this.getSpanContext = i.getSpanContext;
- this.setSpan = i.setSpan;
- this.setSpanContext = i.setSpanContext;
- }
- static getInstance() {
- if (!this._instance) {
- this._instance = new TraceAPI;
- }
- return this._instance;
- }
- setGlobalTracerProvider(e) {
- const t = (0, n.registerGlobal)(s, this._proxyTracerProvider, c.DiagAPI.instance());
- if (t) {
- this._proxyTracerProvider.setDelegate(e);
- }
- return t;
- }
- getTracerProvider() {
- return (0, n.getGlobal)(s) || this._proxyTracerProvider;
- }
- getTracer(e, t) {
- return this.getTracerProvider().getTracer(e, t);
- }
- disable() {
- (0, n.unregisterGlobal)(s, c.DiagAPI.instance());
- this._proxyTracerProvider = new a.ProxyTracerProvider;
- }
- }
- t.TraceAPI = TraceAPI;
- },
- 377: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.deleteBaggage = t.setBaggage = t.getActiveBaggage = t.getBaggage = void 0;
- const n = r(339);
- const a = r(421);
- const o = (0, a.createContextKey)("OpenTelemetry Baggage Key");
- function getBaggage(e) {
- return e.getValue(o) || undefined;
- }
- t.getBaggage = getBaggage;
- function getActiveBaggage() {
- return getBaggage(n.ContextAPI.getInstance().active());
- }
- t.getActiveBaggage = getActiveBaggage;
- function setBaggage(e, t) {
- return e.setValue(o, t);
- }
- t.setBaggage = setBaggage;
- function deleteBaggage(e) {
- return e.deleteValue(o);
- }
- t.deleteBaggage = deleteBaggage;
- },
- 496: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.BaggageImpl = void 0;
- class BaggageImpl {
- constructor(e){
- this._entries = e ? new Map(e) : new Map;
- }
- getEntry(e) {
- const t = this._entries.get(e);
- if (!t) {
- return undefined;
- }
- return Object.assign({}, t);
- }
- getAllEntries() {
- return Array.from(this._entries.entries()).map(([e, t])=>[
- e,
- t
- ]);
- }
- setEntry(e, t) {
- const r = new BaggageImpl(this._entries);
- r._entries.set(e, t);
- return r;
- }
- removeEntry(e) {
- const t = new BaggageImpl(this._entries);
- t._entries.delete(e);
- return t;
- }
- removeEntries(...e) {
- const t = new BaggageImpl(this._entries);
- for (const r of e){
- t._entries.delete(r);
- }
- return t;
- }
- clear() {
- return new BaggageImpl;
- }
- }
- t.BaggageImpl = BaggageImpl;
- },
- 817: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.baggageEntryMetadataSymbol = void 0;
- t.baggageEntryMetadataSymbol = Symbol("BaggageEntryMetadata");
- },
- 701: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.baggageEntryMetadataFromString = t.createBaggage = void 0;
- const n = r(741);
- const a = r(496);
- const o = r(817);
- const i = n.DiagAPI.instance();
- function createBaggage(e = {}) {
- return new a.BaggageImpl(new Map(Object.entries(e)));
- }
- t.createBaggage = createBaggage;
- function baggageEntryMetadataFromString(e) {
- if (typeof e !== "string") {
- i.error(`Cannot create baggage metadata from unknown type: ${typeof e}`);
- e = "";
- }
- return {
- __TYPE__: o.baggageEntryMetadataSymbol,
- toString () {
- return e;
- }
- };
- }
- t.baggageEntryMetadataFromString = baggageEntryMetadataFromString;
- },
- 388: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.context = void 0;
- const n = r(339);
- t.context = n.ContextAPI.getInstance();
- },
- 44: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.NoopContextManager = void 0;
- const n = r(421);
- class NoopContextManager {
- active() {
- return n.ROOT_CONTEXT;
- }
- with(e, t, r, ...n) {
- return t.call(r, ...n);
- }
- bind(e, t) {
- return t;
- }
- enable() {
- return this;
- }
- disable() {
- return this;
- }
- }
- t.NoopContextManager = NoopContextManager;
- },
- 421: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.ROOT_CONTEXT = t.createContextKey = void 0;
- function createContextKey(e) {
- return Symbol.for(e);
- }
- t.createContextKey = createContextKey;
- class BaseContext {
- constructor(e){
- const t = this;
- t._currentContext = e ? new Map(e) : new Map;
- t.getValue = (e)=>t._currentContext.get(e);
- t.setValue = (e, r)=>{
- const n = new BaseContext(t._currentContext);
- n._currentContext.set(e, r);
- return n;
- };
- t.deleteValue = (e)=>{
- const r = new BaseContext(t._currentContext);
- r._currentContext.delete(e);
- return r;
- };
- }
- }
- t.ROOT_CONTEXT = new BaseContext;
- },
- 920: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.diag = void 0;
- const n = r(741);
- t.diag = n.DiagAPI.instance();
- },
- 144: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.DiagComponentLogger = void 0;
- const n = r(38);
- class DiagComponentLogger {
- constructor(e){
- this._namespace = e.namespace || "DiagComponentLogger";
- }
- debug(...e) {
- return logProxy("debug", this._namespace, e);
- }
- error(...e) {
- return logProxy("error", this._namespace, e);
- }
- info(...e) {
- return logProxy("info", this._namespace, e);
- }
- warn(...e) {
- return logProxy("warn", this._namespace, e);
- }
- verbose(...e) {
- return logProxy("verbose", this._namespace, e);
- }
- }
- t.DiagComponentLogger = DiagComponentLogger;
- function logProxy(e, t, r) {
- const a = (0, n.getGlobal)("diag");
- if (!a) {
- return;
- }
- r.unshift(t);
- return a[e](...r);
- }
- },
- 689: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.DiagConsoleLogger = void 0;
- const r = [
- {
- n: "error",
- c: "error"
- },
- {
- n: "warn",
- c: "warn"
- },
- {
- n: "info",
- c: "info"
- },
- {
- n: "debug",
- c: "debug"
- },
- {
- n: "verbose",
- c: "trace"
- }
- ];
- class DiagConsoleLogger {
- constructor(){
- function _consoleFunc(e) {
- return function(...t) {
- if (console) {
- let r = console[e];
- if (typeof r !== "function") {
- r = console.log;
- }
- if (typeof r === "function") {
- return r.apply(console, t);
- }
- }
- };
- }
- for(let e = 0; e < r.length; e++){
- this[r[e].n] = _consoleFunc(r[e].c);
- }
- }
- }
- t.DiagConsoleLogger = DiagConsoleLogger;
- },
- 871: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.createLogLevelDiagLogger = void 0;
- const n = r(133);
- function createLogLevelDiagLogger(e, t) {
- if (e < n.DiagLogLevel.NONE) {
- e = n.DiagLogLevel.NONE;
- } else if (e > n.DiagLogLevel.ALL) {
- e = n.DiagLogLevel.ALL;
- }
- t = t || {};
- function _filterFunc(r, n) {
- const a = t[r];
- if (typeof a === "function" && e >= n) {
- return a.bind(t);
- }
- return function() {};
- }
- return {
- error: _filterFunc("error", n.DiagLogLevel.ERROR),
- warn: _filterFunc("warn", n.DiagLogLevel.WARN),
- info: _filterFunc("info", n.DiagLogLevel.INFO),
- debug: _filterFunc("debug", n.DiagLogLevel.DEBUG),
- verbose: _filterFunc("verbose", n.DiagLogLevel.VERBOSE)
- };
- }
- t.createLogLevelDiagLogger = createLogLevelDiagLogger;
- },
- 133: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.DiagLogLevel = void 0;
- var r;
- (function(e) {
- e[e["NONE"] = 0] = "NONE";
- e[e["ERROR"] = 30] = "ERROR";
- e[e["WARN"] = 50] = "WARN";
- e[e["INFO"] = 60] = "INFO";
- e[e["DEBUG"] = 70] = "DEBUG";
- e[e["VERBOSE"] = 80] = "VERBOSE";
- e[e["ALL"] = 9999] = "ALL";
- })(r = t.DiagLogLevel || (t.DiagLogLevel = {}));
- },
- 38: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.unregisterGlobal = t.getGlobal = t.registerGlobal = void 0;
- const n = r(966);
- const a = r(520);
- const o = r(565);
- const i = a.VERSION.split(".")[0];
- const c = Symbol.for(`opentelemetry.js.api.${i}`);
- const s = n._globalThis;
- function registerGlobal(e, t, r, n = false) {
- var o;
- const i = s[c] = (o = s[c]) !== null && o !== void 0 ? o : {
- version: a.VERSION
- };
- if (!n && i[e]) {
- const t = new Error(`@opentelemetry/api: Attempted duplicate registration of API: ${e}`);
- r.error(t.stack || t.message);
- return false;
- }
- if (i.version !== a.VERSION) {
- const t = new Error(`@opentelemetry/api: Registration of version v${i.version} for ${e} does not match previously registered API v${a.VERSION}`);
- r.error(t.stack || t.message);
- return false;
- }
- i[e] = t;
- r.debug(`@opentelemetry/api: Registered a global for ${e} v${a.VERSION}.`);
- return true;
- }
- t.registerGlobal = registerGlobal;
- function getGlobal(e) {
- var t, r;
- const n = (t = s[c]) === null || t === void 0 ? void 0 : t.version;
- if (!n || !(0, o.isCompatible)(n)) {
- return;
- }
- return (r = s[c]) === null || r === void 0 ? void 0 : r[e];
- }
- t.getGlobal = getGlobal;
- function unregisterGlobal(e, t) {
- t.debug(`@opentelemetry/api: Unregistering a global for ${e} v${a.VERSION}.`);
- const r = s[c];
- if (r) {
- delete r[e];
- }
- }
- t.unregisterGlobal = unregisterGlobal;
- },
- 565: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.isCompatible = t._makeCompatibilityCheck = void 0;
- const n = r(520);
- const a = /^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;
- function _makeCompatibilityCheck(e) {
- const t = new Set([
- e
- ]);
- const r = new Set;
- const n = e.match(a);
- if (!n) {
- return ()=>false;
- }
- const o = {
- major: +n[1],
- minor: +n[2],
- patch: +n[3],
- prerelease: n[4]
- };
- if (o.prerelease != null) {
- return function isExactmatch(t) {
- return t === e;
- };
- }
- function _reject(e) {
- r.add(e);
- return false;
- }
- function _accept(e) {
- t.add(e);
- return true;
- }
- return function isCompatible(e) {
- if (t.has(e)) {
- return true;
- }
- if (r.has(e)) {
- return false;
- }
- const n = e.match(a);
- if (!n) {
- return _reject(e);
- }
- const i = {
- major: +n[1],
- minor: +n[2],
- patch: +n[3],
- prerelease: n[4]
- };
- if (i.prerelease != null) {
- return _reject(e);
- }
- if (o.major !== i.major) {
- return _reject(e);
- }
- if (o.major === 0) {
- if (o.minor === i.minor && o.patch <= i.patch) {
- return _accept(e);
- }
- return _reject(e);
- }
- if (o.minor <= i.minor) {
- return _accept(e);
- }
- return _reject(e);
- };
- }
- t._makeCompatibilityCheck = _makeCompatibilityCheck;
- t.isCompatible = _makeCompatibilityCheck(n.VERSION);
- },
- 934: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.metrics = void 0;
- const n = r(128);
- t.metrics = n.MetricsAPI.getInstance();
- },
- 28: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.ValueType = void 0;
- var r;
- (function(e) {
- e[e["INT"] = 0] = "INT";
- e[e["DOUBLE"] = 1] = "DOUBLE";
- })(r = t.ValueType || (t.ValueType = {}));
- },
- 962: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.createNoopMeter = t.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC = t.NOOP_OBSERVABLE_GAUGE_METRIC = t.NOOP_OBSERVABLE_COUNTER_METRIC = t.NOOP_UP_DOWN_COUNTER_METRIC = t.NOOP_HISTOGRAM_METRIC = t.NOOP_COUNTER_METRIC = t.NOOP_METER = t.NoopObservableUpDownCounterMetric = t.NoopObservableGaugeMetric = t.NoopObservableCounterMetric = t.NoopObservableMetric = t.NoopHistogramMetric = t.NoopUpDownCounterMetric = t.NoopCounterMetric = t.NoopMetric = t.NoopMeter = void 0;
- class NoopMeter {
- constructor(){}
- createHistogram(e, r) {
- return t.NOOP_HISTOGRAM_METRIC;
- }
- createCounter(e, r) {
- return t.NOOP_COUNTER_METRIC;
- }
- createUpDownCounter(e, r) {
- return t.NOOP_UP_DOWN_COUNTER_METRIC;
- }
- createObservableGauge(e, r) {
- return t.NOOP_OBSERVABLE_GAUGE_METRIC;
- }
- createObservableCounter(e, r) {
- return t.NOOP_OBSERVABLE_COUNTER_METRIC;
- }
- createObservableUpDownCounter(e, r) {
- return t.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC;
- }
- addBatchObservableCallback(e, t) {}
- removeBatchObservableCallback(e) {}
- }
- t.NoopMeter = NoopMeter;
- class NoopMetric {
- }
- t.NoopMetric = NoopMetric;
- class NoopCounterMetric extends NoopMetric {
- add(e, t) {}
- }
- t.NoopCounterMetric = NoopCounterMetric;
- class NoopUpDownCounterMetric extends NoopMetric {
- add(e, t) {}
- }
- t.NoopUpDownCounterMetric = NoopUpDownCounterMetric;
- class NoopHistogramMetric extends NoopMetric {
- record(e, t) {}
- }
- t.NoopHistogramMetric = NoopHistogramMetric;
- class NoopObservableMetric {
- addCallback(e) {}
- removeCallback(e) {}
- }
- t.NoopObservableMetric = NoopObservableMetric;
- class NoopObservableCounterMetric extends NoopObservableMetric {
- }
- t.NoopObservableCounterMetric = NoopObservableCounterMetric;
- class NoopObservableGaugeMetric extends NoopObservableMetric {
- }
- t.NoopObservableGaugeMetric = NoopObservableGaugeMetric;
- class NoopObservableUpDownCounterMetric extends NoopObservableMetric {
- }
- t.NoopObservableUpDownCounterMetric = NoopObservableUpDownCounterMetric;
- t.NOOP_METER = new NoopMeter;
- t.NOOP_COUNTER_METRIC = new NoopCounterMetric;
- t.NOOP_HISTOGRAM_METRIC = new NoopHistogramMetric;
- t.NOOP_UP_DOWN_COUNTER_METRIC = new NoopUpDownCounterMetric;
- t.NOOP_OBSERVABLE_COUNTER_METRIC = new NoopObservableCounterMetric;
- t.NOOP_OBSERVABLE_GAUGE_METRIC = new NoopObservableGaugeMetric;
- t.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC = new NoopObservableUpDownCounterMetric;
- function createNoopMeter() {
- return t.NOOP_METER;
- }
- t.createNoopMeter = createNoopMeter;
- },
- 333: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.NOOP_METER_PROVIDER = t.NoopMeterProvider = void 0;
- const n = r(962);
- class NoopMeterProvider {
- getMeter(e, t, r) {
- return n.NOOP_METER;
- }
- }
- t.NoopMeterProvider = NoopMeterProvider;
- t.NOOP_METER_PROVIDER = new NoopMeterProvider;
- },
- 966: function(e, t, r) {
- var n = this && this.__createBinding || (Object.create ? function(e, t, r, n) {
- if (n === undefined) n = r;
- Object.defineProperty(e, n, {
- enumerable: true,
- get: function() {
- return t[r];
- }
- });
- } : function(e, t, r, n) {
- if (n === undefined) n = r;
- e[n] = t[r];
- });
- var a = this && this.__exportStar || function(e, t) {
- for(var r in e)if (r !== "default" && !Object.prototype.hasOwnProperty.call(t, r)) n(t, e, r);
- };
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- a(r(652), t);
- },
- 385: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t._globalThis = void 0;
- t._globalThis = typeof globalThis === "object" ? globalThis : global;
- },
- 652: function(e, t, r) {
- var n = this && this.__createBinding || (Object.create ? function(e, t, r, n) {
- if (n === undefined) n = r;
- Object.defineProperty(e, n, {
- enumerable: true,
- get: function() {
- return t[r];
- }
- });
- } : function(e, t, r, n) {
- if (n === undefined) n = r;
- e[n] = t[r];
- });
- var a = this && this.__exportStar || function(e, t) {
- for(var r in e)if (r !== "default" && !Object.prototype.hasOwnProperty.call(t, r)) n(t, e, r);
- };
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- a(r(385), t);
- },
- 251: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.propagation = void 0;
- const n = r(930);
- t.propagation = n.PropagationAPI.getInstance();
- },
- 600: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.NoopTextMapPropagator = void 0;
- class NoopTextMapPropagator {
- inject(e, t) {}
- extract(e, t) {
- return e;
- }
- fields() {
- return [];
- }
- }
- t.NoopTextMapPropagator = NoopTextMapPropagator;
- },
- 625: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.defaultTextMapSetter = t.defaultTextMapGetter = void 0;
- t.defaultTextMapGetter = {
- get (e, t) {
- if (e == null) {
- return undefined;
- }
- return e[t];
- },
- keys (e) {
- if (e == null) {
- return [];
- }
- return Object.keys(e);
- }
- };
- t.defaultTextMapSetter = {
- set (e, t, r) {
- if (e == null) {
- return;
- }
- e[t] = r;
- }
- };
- },
- 978: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.trace = void 0;
- const n = r(967);
- t.trace = n.TraceAPI.getInstance();
- },
- 76: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.NonRecordingSpan = void 0;
- const n = r(304);
- class NonRecordingSpan {
- constructor(e = n.INVALID_SPAN_CONTEXT){
- this._spanContext = e;
- }
- spanContext() {
- return this._spanContext;
- }
- setAttribute(e, t) {
- return this;
- }
- setAttributes(e) {
- return this;
- }
- addEvent(e, t) {
- return this;
- }
- setStatus(e) {
- return this;
- }
- updateName(e) {
- return this;
- }
- end(e) {}
- isRecording() {
- return false;
- }
- recordException(e, t) {}
- }
- t.NonRecordingSpan = NonRecordingSpan;
- },
- 527: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.NoopTracer = void 0;
- const n = r(339);
- const a = r(542);
- const o = r(76);
- const i = r(994);
- const c = n.ContextAPI.getInstance();
- class NoopTracer {
- startSpan(e, t, r = c.active()) {
- const n = Boolean(t === null || t === void 0 ? void 0 : t.root);
- if (n) {
- return new o.NonRecordingSpan;
- }
- const s = r && (0, a.getSpanContext)(r);
- if (isSpanContext(s) && (0, i.isSpanContextValid)(s)) {
- return new o.NonRecordingSpan(s);
- } else {
- return new o.NonRecordingSpan;
- }
- }
- startActiveSpan(e, t, r, n) {
- let o;
- let i;
- let s;
- if (arguments.length < 2) {
- return;
- } else if (arguments.length === 2) {
- s = t;
- } else if (arguments.length === 3) {
- o = t;
- s = r;
- } else {
- o = t;
- i = r;
- s = n;
- }
- const u = i !== null && i !== void 0 ? i : c.active();
- const l = this.startSpan(e, o, u);
- const g = (0, a.setSpan)(u, l);
- return c.with(g, s, undefined, l);
- }
- }
- t.NoopTracer = NoopTracer;
- function isSpanContext(e) {
- return typeof e === "object" && typeof e["spanId"] === "string" && typeof e["traceId"] === "string" && typeof e["traceFlags"] === "number";
- }
- },
- 228: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.NoopTracerProvider = void 0;
- const n = r(527);
- class NoopTracerProvider {
- getTracer(e, t, r) {
- return new n.NoopTracer;
- }
- }
- t.NoopTracerProvider = NoopTracerProvider;
- },
- 387: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.ProxyTracer = void 0;
- const n = r(527);
- const a = new n.NoopTracer;
- class ProxyTracer {
- constructor(e, t, r, n){
- this._provider = e;
- this.name = t;
- this.version = r;
- this.options = n;
- }
- startSpan(e, t, r) {
- return this._getTracer().startSpan(e, t, r);
- }
- startActiveSpan(e, t, r, n) {
- const a = this._getTracer();
- return Reflect.apply(a.startActiveSpan, a, arguments);
- }
- _getTracer() {
- if (this._delegate) {
- return this._delegate;
- }
- const e = this._provider.getDelegateTracer(this.name, this.version, this.options);
- if (!e) {
- return a;
- }
- this._delegate = e;
- return this._delegate;
- }
- }
- t.ProxyTracer = ProxyTracer;
- },
- 414: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.ProxyTracerProvider = void 0;
- const n = r(387);
- const a = r(228);
- const o = new a.NoopTracerProvider;
- class ProxyTracerProvider {
- getTracer(e, t, r) {
- var a;
- return (a = this.getDelegateTracer(e, t, r)) !== null && a !== void 0 ? a : new n.ProxyTracer(this, e, t, r);
- }
- getDelegate() {
- var e;
- return (e = this._delegate) !== null && e !== void 0 ? e : o;
- }
- setDelegate(e) {
- this._delegate = e;
- }
- getDelegateTracer(e, t, r) {
- var n;
- return (n = this._delegate) === null || n === void 0 ? void 0 : n.getTracer(e, t, r);
- }
- }
- t.ProxyTracerProvider = ProxyTracerProvider;
- },
- 505: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.SamplingDecision = void 0;
- var r;
- (function(e) {
- e[e["NOT_RECORD"] = 0] = "NOT_RECORD";
- e[e["RECORD"] = 1] = "RECORD";
- e[e["RECORD_AND_SAMPLED"] = 2] = "RECORD_AND_SAMPLED";
- })(r = t.SamplingDecision || (t.SamplingDecision = {}));
- },
- 542: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.getSpanContext = t.setSpanContext = t.deleteSpan = t.setSpan = t.getActiveSpan = t.getSpan = void 0;
- const n = r(421);
- const a = r(76);
- const o = r(339);
- const i = (0, n.createContextKey)("OpenTelemetry Context Key SPAN");
- function getSpan(e) {
- return e.getValue(i) || undefined;
- }
- t.getSpan = getSpan;
- function getActiveSpan() {
- return getSpan(o.ContextAPI.getInstance().active());
- }
- t.getActiveSpan = getActiveSpan;
- function setSpan(e, t) {
- return e.setValue(i, t);
- }
- t.setSpan = setSpan;
- function deleteSpan(e) {
- return e.deleteValue(i);
- }
- t.deleteSpan = deleteSpan;
- function setSpanContext(e, t) {
- return setSpan(e, new a.NonRecordingSpan(t));
- }
- t.setSpanContext = setSpanContext;
- function getSpanContext(e) {
- var t;
- return (t = getSpan(e)) === null || t === void 0 ? void 0 : t.spanContext();
- }
- t.getSpanContext = getSpanContext;
- },
- 430: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.TraceStateImpl = void 0;
- const n = r(450);
- const a = 32;
- const o = 512;
- const i = ",";
- const c = "=";
- class TraceStateImpl {
- constructor(e){
- this._internalState = new Map;
- if (e) this._parse(e);
- }
- set(e, t) {
- const r = this._clone();
- if (r._internalState.has(e)) {
- r._internalState.delete(e);
- }
- r._internalState.set(e, t);
- return r;
- }
- unset(e) {
- const t = this._clone();
- t._internalState.delete(e);
- return t;
- }
- get(e) {
- return this._internalState.get(e);
- }
- serialize() {
- return this._keys().reduce((e, t)=>{
- e.push(t + c + this.get(t));
- return e;
- }, []).join(i);
- }
- _parse(e) {
- if (e.length > o) return;
- this._internalState = e.split(i).reverse().reduce((e, t)=>{
- const r = t.trim();
- const a = r.indexOf(c);
- if (a !== -1) {
- const o = r.slice(0, a);
- const i = r.slice(a + 1, t.length);
- if ((0, n.validateKey)(o) && (0, n.validateValue)(i)) {
- e.set(o, i);
- } else {}
- }
- return e;
- }, new Map);
- if (this._internalState.size > a) {
- this._internalState = new Map(Array.from(this._internalState.entries()).reverse().slice(0, a));
- }
- }
- _keys() {
- return Array.from(this._internalState.keys()).reverse();
- }
- _clone() {
- const e = new TraceStateImpl;
- e._internalState = new Map(this._internalState);
- return e;
- }
- }
- t.TraceStateImpl = TraceStateImpl;
- },
- 450: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.validateValue = t.validateKey = void 0;
- const r = "[_0-9a-z-*/]";
- const n = `[a-z]${r}{0,255}`;
- const a = `[a-z0-9]${r}{0,240}@[a-z]${r}{0,13}`;
- const o = new RegExp(`^(?:${n}|${a})$`);
- const i = /^[ -~]{0,255}[!-~]$/;
- const c = /,|=/;
- function validateKey(e) {
- return o.test(e);
- }
- t.validateKey = validateKey;
- function validateValue(e) {
- return i.test(e) && !c.test(e);
- }
- t.validateValue = validateValue;
- },
- 757: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.createTraceState = void 0;
- const n = r(430);
- function createTraceState(e) {
- return new n.TraceStateImpl(e);
- }
- t.createTraceState = createTraceState;
- },
- 304: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.INVALID_SPAN_CONTEXT = t.INVALID_TRACEID = t.INVALID_SPANID = void 0;
- const n = r(762);
- t.INVALID_SPANID = "0000000000000000";
- t.INVALID_TRACEID = "00000000000000000000000000000000";
- t.INVALID_SPAN_CONTEXT = {
- traceId: t.INVALID_TRACEID,
- spanId: t.INVALID_SPANID,
- traceFlags: n.TraceFlags.NONE
- };
- },
- 902: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.SpanKind = void 0;
- var r;
- (function(e) {
- e[e["INTERNAL"] = 0] = "INTERNAL";
- e[e["SERVER"] = 1] = "SERVER";
- e[e["CLIENT"] = 2] = "CLIENT";
- e[e["PRODUCER"] = 3] = "PRODUCER";
- e[e["CONSUMER"] = 4] = "CONSUMER";
- })(r = t.SpanKind || (t.SpanKind = {}));
- },
- 994: (e, t, r)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.wrapSpanContext = t.isSpanContextValid = t.isValidSpanId = t.isValidTraceId = void 0;
- const n = r(304);
- const a = r(76);
- const o = /^([0-9a-f]{32})$/i;
- const i = /^[0-9a-f]{16}$/i;
- function isValidTraceId(e) {
- return o.test(e) && e !== n.INVALID_TRACEID;
- }
- t.isValidTraceId = isValidTraceId;
- function isValidSpanId(e) {
- return i.test(e) && e !== n.INVALID_SPANID;
- }
- t.isValidSpanId = isValidSpanId;
- function isSpanContextValid(e) {
- return isValidTraceId(e.traceId) && isValidSpanId(e.spanId);
- }
- t.isSpanContextValid = isSpanContextValid;
- function wrapSpanContext(e) {
- return new a.NonRecordingSpan(e);
- }
- t.wrapSpanContext = wrapSpanContext;
- },
- 832: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.SpanStatusCode = void 0;
- var r;
- (function(e) {
- e[e["UNSET"] = 0] = "UNSET";
- e[e["OK"] = 1] = "OK";
- e[e["ERROR"] = 2] = "ERROR";
- })(r = t.SpanStatusCode || (t.SpanStatusCode = {}));
- },
- 762: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.TraceFlags = void 0;
- var r;
- (function(e) {
- e[e["NONE"] = 0] = "NONE";
- e[e["SAMPLED"] = 1] = "SAMPLED";
- })(r = t.TraceFlags || (t.TraceFlags = {}));
- },
- 520: (e, t)=>{
- Object.defineProperty(t, "__esModule", {
- value: true
- });
- t.VERSION = void 0;
- t.VERSION = "1.4.1";
- }
- };
- var t = {};
- function __nccwpck_require__(r) {
- var n = t[r];
- if (n !== undefined) {
- return n.exports;
- }
- var a = t[r] = {
- exports: {}
- };
- var o = true;
- try {
- e[r].call(a.exports, a, a.exports, __nccwpck_require__);
- o = false;
- } finally{
- if (o) delete t[r];
- }
- return a.exports;
- }
- if (typeof __nccwpck_require__ !== "undefined") __nccwpck_require__.ab = __dirname + "/";
- var r = {};
- (()=>{
- var e = r;
- Object.defineProperty(e, "__esModule", {
- value: true
- });
- e.trace = e.propagation = e.metrics = e.diag = e.context = e.INVALID_SPAN_CONTEXT = e.INVALID_TRACEID = e.INVALID_SPANID = e.isValidSpanId = e.isValidTraceId = e.isSpanContextValid = e.createTraceState = e.TraceFlags = e.SpanStatusCode = e.SpanKind = e.SamplingDecision = e.ProxyTracerProvider = e.ProxyTracer = e.defaultTextMapSetter = e.defaultTextMapGetter = e.ValueType = e.createNoopMeter = e.DiagLogLevel = e.DiagConsoleLogger = e.ROOT_CONTEXT = e.createContextKey = e.baggageEntryMetadataFromString = void 0;
- var t = __nccwpck_require__(701);
- Object.defineProperty(e, "baggageEntryMetadataFromString", {
- enumerable: true,
- get: function() {
- return t.baggageEntryMetadataFromString;
- }
- });
- var n = __nccwpck_require__(421);
- Object.defineProperty(e, "createContextKey", {
- enumerable: true,
- get: function() {
- return n.createContextKey;
- }
- });
- Object.defineProperty(e, "ROOT_CONTEXT", {
- enumerable: true,
- get: function() {
- return n.ROOT_CONTEXT;
- }
- });
- var a = __nccwpck_require__(689);
- Object.defineProperty(e, "DiagConsoleLogger", {
- enumerable: true,
- get: function() {
- return a.DiagConsoleLogger;
- }
- });
- var o = __nccwpck_require__(133);
- Object.defineProperty(e, "DiagLogLevel", {
- enumerable: true,
- get: function() {
- return o.DiagLogLevel;
- }
- });
- var i = __nccwpck_require__(962);
- Object.defineProperty(e, "createNoopMeter", {
- enumerable: true,
- get: function() {
- return i.createNoopMeter;
- }
- });
- var c = __nccwpck_require__(28);
- Object.defineProperty(e, "ValueType", {
- enumerable: true,
- get: function() {
- return c.ValueType;
- }
- });
- var s = __nccwpck_require__(625);
- Object.defineProperty(e, "defaultTextMapGetter", {
- enumerable: true,
- get: function() {
- return s.defaultTextMapGetter;
- }
- });
- Object.defineProperty(e, "defaultTextMapSetter", {
- enumerable: true,
- get: function() {
- return s.defaultTextMapSetter;
- }
- });
- var u = __nccwpck_require__(387);
- Object.defineProperty(e, "ProxyTracer", {
- enumerable: true,
- get: function() {
- return u.ProxyTracer;
- }
- });
- var l = __nccwpck_require__(414);
- Object.defineProperty(e, "ProxyTracerProvider", {
- enumerable: true,
- get: function() {
- return l.ProxyTracerProvider;
- }
- });
- var g = __nccwpck_require__(505);
- Object.defineProperty(e, "SamplingDecision", {
- enumerable: true,
- get: function() {
- return g.SamplingDecision;
- }
- });
- var p = __nccwpck_require__(902);
- Object.defineProperty(e, "SpanKind", {
- enumerable: true,
- get: function() {
- return p.SpanKind;
- }
- });
- var d = __nccwpck_require__(832);
- Object.defineProperty(e, "SpanStatusCode", {
- enumerable: true,
- get: function() {
- return d.SpanStatusCode;
- }
- });
- var _ = __nccwpck_require__(762);
- Object.defineProperty(e, "TraceFlags", {
- enumerable: true,
- get: function() {
- return _.TraceFlags;
- }
- });
- var f = __nccwpck_require__(757);
- Object.defineProperty(e, "createTraceState", {
- enumerable: true,
- get: function() {
- return f.createTraceState;
- }
- });
- var b = __nccwpck_require__(994);
- Object.defineProperty(e, "isSpanContextValid", {
- enumerable: true,
- get: function() {
- return b.isSpanContextValid;
- }
- });
- Object.defineProperty(e, "isValidTraceId", {
- enumerable: true,
- get: function() {
- return b.isValidTraceId;
- }
- });
- Object.defineProperty(e, "isValidSpanId", {
- enumerable: true,
- get: function() {
- return b.isValidSpanId;
- }
- });
- var v = __nccwpck_require__(304);
- Object.defineProperty(e, "INVALID_SPANID", {
- enumerable: true,
- get: function() {
- return v.INVALID_SPANID;
- }
- });
- Object.defineProperty(e, "INVALID_TRACEID", {
- enumerable: true,
- get: function() {
- return v.INVALID_TRACEID;
- }
- });
- Object.defineProperty(e, "INVALID_SPAN_CONTEXT", {
- enumerable: true,
- get: function() {
- return v.INVALID_SPAN_CONTEXT;
- }
- });
- const O = __nccwpck_require__(388);
- Object.defineProperty(e, "context", {
- enumerable: true,
- get: function() {
- return O.context;
- }
- });
- const P = __nccwpck_require__(920);
- Object.defineProperty(e, "diag", {
- enumerable: true,
- get: function() {
- return P.diag;
- }
- });
- const N = __nccwpck_require__(934);
- Object.defineProperty(e, "metrics", {
- enumerable: true,
- get: function() {
- return N.metrics;
- }
- });
- const S = __nccwpck_require__(251);
- Object.defineProperty(e, "propagation", {
- enumerable: true,
- get: function() {
- return S.propagation;
- }
- });
- const C = __nccwpck_require__(978);
- Object.defineProperty(e, "trace", {
- enumerable: true,
- get: function() {
- return C.trace;
- }
- });
- e["default"] = {
- context: O.context,
- diag: P.diag,
- metrics: N.metrics,
- propagation: S.propagation,
- trace: C.trace
- };
- })();
- module.exports = r;
-})();
-
-
-/***/ }),
-
-/***/ 3942:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "default", ({
- enumerable: true,
- get: function() {
- return _default;
- }
-}));
-let chalk;
-if (false) {} else {
- chalk = __webpack_require__(4426);
-}
-const _default = chalk; //# sourceMappingURL=chalk.js.map
-
-
-/***/ }),
-
-/***/ 9141:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- getCookieParser: function() {
- return getCookieParser;
- },
- sendStatusCode: function() {
- return sendStatusCode;
- },
- redirect: function() {
- return redirect;
- },
- checkIsOnDemandRevalidate: function() {
- return checkIsOnDemandRevalidate;
- },
- COOKIE_NAME_PRERENDER_BYPASS: function() {
- return COOKIE_NAME_PRERENDER_BYPASS;
- },
- COOKIE_NAME_PRERENDER_DATA: function() {
- return COOKIE_NAME_PRERENDER_DATA;
- },
- RESPONSE_LIMIT_DEFAULT: function() {
- return RESPONSE_LIMIT_DEFAULT;
- },
- SYMBOL_PREVIEW_DATA: function() {
- return SYMBOL_PREVIEW_DATA;
- },
- SYMBOL_CLEARED_COOKIES: function() {
- return SYMBOL_CLEARED_COOKIES;
- },
- clearPreviewData: function() {
- return clearPreviewData;
- },
- ApiError: function() {
- return ApiError;
- },
- sendError: function() {
- return sendError;
- },
- setLazyProp: function() {
- return setLazyProp;
- }
-});
-const _headers = __webpack_require__(7304);
-const _constants = __webpack_require__(8537);
-function getCookieParser(headers) {
- return function parseCookie() {
- const { cookie } = headers;
- if (!cookie) {
- return {};
- }
- const { parse: parseCookieFn } = __webpack_require__(252);
- return parseCookieFn(Array.isArray(cookie) ? cookie.join("; ") : cookie);
- };
-}
-function sendStatusCode(res, statusCode) {
- res.statusCode = statusCode;
- return res;
-}
-function redirect(res, statusOrUrl, url) {
- if (typeof statusOrUrl === "string") {
- url = statusOrUrl;
- statusOrUrl = 307;
- }
- if (typeof statusOrUrl !== "number" || typeof url !== "string") {
- throw new Error(`Invalid redirect arguments. Please use a single argument URL, e.g. res.redirect('/destination') or use a status code and URL, e.g. res.redirect(307, '/destination').`);
- }
- res.writeHead(statusOrUrl, {
- Location: url
- });
- res.write(url);
- res.end();
- return res;
-}
-function checkIsOnDemandRevalidate(req, previewProps) {
- const headers = _headers.HeadersAdapter.from(req.headers);
- const previewModeId = headers.get(_constants.PRERENDER_REVALIDATE_HEADER);
- const isOnDemandRevalidate = previewModeId === previewProps.previewModeId;
- const revalidateOnlyGenerated = headers.has(_constants.PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER);
- return {
- isOnDemandRevalidate,
- revalidateOnlyGenerated
- };
-}
-const COOKIE_NAME_PRERENDER_BYPASS = `__prerender_bypass`;
-const COOKIE_NAME_PRERENDER_DATA = `__next_preview_data`;
-const RESPONSE_LIMIT_DEFAULT = 4 * 1024 * 1024;
-const SYMBOL_PREVIEW_DATA = Symbol(COOKIE_NAME_PRERENDER_DATA);
-const SYMBOL_CLEARED_COOKIES = Symbol(COOKIE_NAME_PRERENDER_BYPASS);
-function clearPreviewData(res, options = {}) {
- if (SYMBOL_CLEARED_COOKIES in res) {
- return res;
- }
- const { serialize } = __webpack_require__(252);
- const previous = res.getHeader("Set-Cookie");
- res.setHeader(`Set-Cookie`, [
- ...typeof previous === "string" ? [
- previous
- ] : Array.isArray(previous) ? previous : [],
- serialize(COOKIE_NAME_PRERENDER_BYPASS, "", {
- // To delete a cookie, set `expires` to a date in the past:
- // https://tools.ietf.org/html/rfc6265#section-4.1.1
- // `Max-Age: 0` is not valid, thus ignored, and the cookie is persisted.
- expires: new Date(0),
- httpOnly: true,
- sameSite: true ? "none" : 0,
- secure: "production" !== "development",
- path: "/",
- ...options.path !== undefined ? {
- path: options.path
- } : undefined
- }),
- serialize(COOKIE_NAME_PRERENDER_DATA, "", {
- // To delete a cookie, set `expires` to a date in the past:
- // https://tools.ietf.org/html/rfc6265#section-4.1.1
- // `Max-Age: 0` is not valid, thus ignored, and the cookie is persisted.
- expires: new Date(0),
- httpOnly: true,
- sameSite: true ? "none" : 0,
- secure: "production" !== "development",
- path: "/",
- ...options.path !== undefined ? {
- path: options.path
- } : undefined
- })
- ]);
- Object.defineProperty(res, SYMBOL_CLEARED_COOKIES, {
- value: true,
- enumerable: false
- });
- return res;
-}
-class ApiError extends Error {
- constructor(statusCode, message){
- super(message);
- this.statusCode = statusCode;
- }
-}
-function sendError(res, statusCode, message) {
- res.statusCode = statusCode;
- res.statusMessage = message;
- res.end(message);
-}
-function setLazyProp({ req }, prop, getter) {
- const opts = {
- configurable: true,
- enumerable: true
- };
- const optsReset = {
- ...opts,
- writable: true
- };
- Object.defineProperty(req, prop, {
- ...opts,
- get: ()=>{
- const value = getter();
- // we set the property on the object to avoid recalculating it
- Object.defineProperty(req, prop, {
- ...optsReset,
- value
- });
- return value;
- },
- set: (value)=>{
- Object.defineProperty(req, prop, {
- ...optsReset,
- value
- });
- }
- });
-} //# sourceMappingURL=index.js.map
-
-
-/***/ }),
-
-/***/ 5744:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "DraftModeProvider", ({
- enumerable: true,
- get: function() {
- return DraftModeProvider;
- }
-}));
-const _apiutils = __webpack_require__(9141);
-class DraftModeProvider {
- constructor(previewProps, req, cookies, mutableCookies){
- var _cookies_get;
- // The logic for draftMode() is very similar to tryGetPreviewData()
- // but Draft Mode does not have any data associated with it.
- const isOnDemandRevalidate = previewProps && (0, _apiutils.checkIsOnDemandRevalidate)(req, previewProps).isOnDemandRevalidate;
- const cookieValue = (_cookies_get = cookies.get(_apiutils.COOKIE_NAME_PRERENDER_BYPASS)) == null ? void 0 : _cookies_get.value;
- this.isEnabled = Boolean(!isOnDemandRevalidate && cookieValue && previewProps && cookieValue === previewProps.previewModeId);
- this._previewModeId = previewProps == null ? void 0 : previewProps.previewModeId;
- this._mutableCookies = mutableCookies;
- }
- enable() {
- if (!this._previewModeId) {
- throw new Error("Invariant: previewProps missing previewModeId this should never happen");
- }
- this._mutableCookies.set({
- name: _apiutils.COOKIE_NAME_PRERENDER_BYPASS,
- value: this._previewModeId,
- httpOnly: true,
- sameSite: true ? "none" : 0,
- secure: "production" !== "development",
- path: "/"
- });
- }
- disable() {
- // To delete a cookie, set `expires` to a date in the past:
- // https://tools.ietf.org/html/rfc6265#section-4.1.1
- // `Max-Age: 0` is not valid, thus ignored, and the cookie is persisted.
- this._mutableCookies.set({
- name: _apiutils.COOKIE_NAME_PRERENDER_BYPASS,
- value: "",
- httpOnly: true,
- sameSite: true ? "none" : 0,
- secure: "production" !== "development",
- path: "/",
- expires: new Date(0)
- });
- }
-} //# sourceMappingURL=draft-mode-provider.js.map
-
-
-/***/ }),
-
-/***/ 3389:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "RequestAsyncStorageWrapper", ({
- enumerable: true,
- get: function() {
- return RequestAsyncStorageWrapper;
- }
-}));
-const _approuterheaders = __webpack_require__(42);
-const _headers = __webpack_require__(7304);
-const _requestcookies = __webpack_require__(8661);
-const _cookies = __webpack_require__(4521);
-const _draftmodeprovider = __webpack_require__(5744);
-function getHeaders(headers) {
- const cleaned = _headers.HeadersAdapter.from(headers);
- for (const param of _approuterheaders.FLIGHT_PARAMETERS){
- cleaned.delete(param.toString().toLowerCase());
- }
- return _headers.HeadersAdapter.seal(cleaned);
-}
-function getCookies(headers) {
- const cookies = new _cookies.RequestCookies(_headers.HeadersAdapter.from(headers));
- return _requestcookies.RequestCookiesAdapter.seal(cookies);
-}
-function getMutableCookies(headers, res) {
- const cookies = new _cookies.RequestCookies(_headers.HeadersAdapter.from(headers));
- return _requestcookies.MutableRequestCookiesAdapter.wrap(cookies, res);
-}
-const RequestAsyncStorageWrapper = {
- /**
- * Wrap the callback with the given store so it can access the underlying
- * store using hooks.
- *
- * @param storage underlying storage object returned by the module
- * @param context context to seed the store
- * @param callback function to call within the scope of the context
- * @returns the result returned by the callback
- */ wrap (storage, { req , res , renderOpts }, callback) {
- let previewProps = undefined;
- if (renderOpts && "previewProps" in renderOpts) {
- // TODO: investigate why previewProps isn't on RenderOpts
- previewProps = renderOpts.previewProps;
- }
- const cache = {};
- const store = {
- get headers () {
- if (!cache.headers) {
- // Seal the headers object that'll freeze out any methods that could
- // mutate the underlying data.
- cache.headers = getHeaders(req.headers);
- }
- return cache.headers;
- },
- get cookies () {
- if (!cache.cookies) {
- // Seal the cookies object that'll freeze out any methods that could
- // mutate the underlying data.
- cache.cookies = getCookies(req.headers);
- }
- return cache.cookies;
- },
- get mutableCookies () {
- if (!cache.mutableCookies) {
- cache.mutableCookies = getMutableCookies(req.headers, res);
- }
- return cache.mutableCookies;
- },
- get draftMode () {
- if (!cache.draftMode) {
- cache.draftMode = new _draftmodeprovider.DraftModeProvider(previewProps, req, this.cookies, this.mutableCookies);
- }
- return cache.draftMode;
- }
- };
- return storage.run(store, callback, store);
- }
-}; //# sourceMappingURL=request-async-storage-wrapper.js.map
-
-
-/***/ }),
-
-/***/ 1482:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "StaticGenerationAsyncStorageWrapper", ({
- enumerable: true,
- get: function() {
- return StaticGenerationAsyncStorageWrapper;
- }
-}));
-const StaticGenerationAsyncStorageWrapper = {
- wrap (storage, { pathname , renderOpts }, callback) {
- /**
- * Rules of Static & Dynamic HTML:
- *
- * 1.) We must generate static HTML unless the caller explicitly opts
- * in to dynamic HTML support.
- *
- * 2.) If dynamic HTML support is requested, we must honor that request
- * or throw an error. It is the sole responsibility of the caller to
- * ensure they aren't e.g. requesting dynamic HTML for an AMP page.
- *
- * These rules help ensure that other existing features like request caching,
- * coalescing, and ISR continue working as intended.
- */ const isStaticGeneration = !renderOpts.supportsDynamicHTML && !renderOpts.isBot;
- const store = {
- isStaticGeneration,
- pathname,
- originalPathname: renderOpts.originalPathname,
- incrementalCache: // so that it can access the fs cache without mocks
- renderOpts.incrementalCache || globalThis.__incrementalCache,
- isRevalidate: renderOpts.isRevalidate,
- isPrerendering: renderOpts.nextExport,
- fetchCache: renderOpts.fetchCache,
- isOnDemandRevalidate: renderOpts.isOnDemandRevalidate
- };
- // TODO: remove this when we resolve accessing the store outside the execution context
- renderOpts.store = store;
- return storage.run(store, callback, store);
- }
-}; //# sourceMappingURL=static-generation-async-storage-wrapper.js.map
-
-
-/***/ }),
-
-/***/ 6221:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "RouteKind", ({
- enumerable: true,
- get: function() {
- return RouteKind;
- }
-}));
-var RouteKind;
-(function(RouteKind) {
- RouteKind[/**
- * `PAGES` represents all the React pages that are under `pages/`.
- */ "PAGES"] = "PAGES";
- RouteKind[/**
- * `PAGES_API` represents all the API routes under `pages/api/`.
- */ "PAGES_API"] = "PAGES_API";
- RouteKind[/**
- * `APP_PAGE` represents all the React pages that are under `app/` with the
- * filename of `page.{j,t}s{,x}`.
- */ "APP_PAGE"] = "APP_PAGE";
- RouteKind[/**
- * `APP_ROUTE` represents all the API routes and metadata routes that are under `app/` with the
- * filename of `route.{j,t}s{,x}`.
- */ "APP_ROUTE"] = "APP_ROUTE";
-})(RouteKind || (RouteKind = {})); //# sourceMappingURL=route-kind.js.map
-
-
-/***/ }),
-
-/***/ 7053:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "autoImplementMethods", ({
- enumerable: true,
- get: function() {
- return autoImplementMethods;
- }
-}));
-const _http = __webpack_require__(1183);
-const _responsehandlers = __webpack_require__(717);
-const AUTOMATIC_ROUTE_METHODS = [
- "HEAD",
- "OPTIONS"
-];
-function autoImplementMethods(handlers) {
- // Loop through all the HTTP methods to create the initial methods object.
- // Each of the methods will be set to the the 405 response handler.
- const methods = _http.HTTP_METHODS.reduce((acc, method)=>({
- ...acc,
- // If the userland module implements the method, then use it. Otherwise,
- // use the 405 response handler.
- [method]: handlers[method] ?? _responsehandlers.handleMethodNotAllowedResponse
- }), {});
- // Get all the methods that could be automatically implemented that were not
- // implemented by the userland module.
- const implemented = new Set(_http.HTTP_METHODS.filter((method)=>handlers[method]));
- const missing = AUTOMATIC_ROUTE_METHODS.filter((method)=>!implemented.has(method));
- // Loop over the missing methods to automatically implement them if we can.
- for (const method of missing){
- // If the userland module doesn't implement the HEAD method, then
- // we'll automatically implement it by calling the GET method (if it
- // exists).
- if (method === "HEAD") {
- // If the userland module doesn't implement the GET method, then
- // we're done.
- if (!handlers.GET) break;
- // Implement the HEAD method by calling the GET method.
- methods.HEAD = handlers.GET;
- // Mark it as implemented.
- implemented.add("HEAD");
- continue;
- }
- // If OPTIONS is not provided then implement it.
- if (method === "OPTIONS") {
- // TODO: check if HEAD is implemented, if so, use it to add more headers
- // Get all the methods that were implemented by the userland module.
- const allow = [
- "OPTIONS",
- ...implemented
- ];
- // If the list of methods doesn't include HEAD, but it includes GET, then
- // add HEAD as it's automatically implemented.
- if (!implemented.has("HEAD") && implemented.has("GET")) {
- allow.push("HEAD");
- }
- // Sort and join the list with commas to create the `Allow` header. See:
- // https://httpwg.org/specs/rfc9110.html#field.allow
- const headers = {
- Allow: allow.sort().join(", ")
- };
- // Implement the OPTIONS method by returning a 204 response with the
- // `Allow` header.
- methods.OPTIONS = ()=>new Response(null, {
- status: 204,
- headers
- });
- // Mark this method as implemented.
- implemented.add("OPTIONS");
- continue;
- }
- throw new Error(`Invariant: should handle all automatic implementable methods, got method: ${method}`);
- }
- return methods;
-} //# sourceMappingURL=auto-implement-methods.js.map
-
-
-/***/ }),
-
-/***/ 8167:
-/***/ ((__unused_webpack_module, exports) => {
-
-/**
- * Cleans a URL by stripping the protocol, host, and search params.
- *
- * @param urlString the url to clean
- * @returns the cleaned url
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "cleanURL", ({
- enumerable: true,
- get: function() {
- return cleanURL;
- }
-}));
-function cleanURL(urlString) {
- const url = new URL(urlString);
- url.host = "localhost:3000";
- url.search = "";
- url.protocol = "http";
- return url.toString();
-} //# sourceMappingURL=clean-url.js.map
-
-
-/***/ }),
-
-/***/ 3383:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "getNonStaticMethods", ({
- enumerable: true,
- get: function() {
- return getNonStaticMethods;
- }
-}));
-const NON_STATIC_METHODS = [
- "OPTIONS",
- "POST",
- "PUT",
- "DELETE",
- "PATCH"
-];
-function getNonStaticMethods(handlers) {
- // We can currently only statically optimize if only GET/HEAD are used as
- // prerender can't be used conditionally based on the method currently.
- const methods = NON_STATIC_METHODS.filter((method)=>handlers[method]);
- if (methods.length === 0) return false;
- return methods;
-} //# sourceMappingURL=get-non-static-methods.js.map
-
-
-/***/ }),
-
-/***/ 2509:
-/***/ ((__unused_webpack_module, exports) => {
-
-/**
- * Get pathname from absolute path.
- *
- * @param absolutePath the absolute path
- * @returns the pathname
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "getPathnameFromAbsolutePath", ({
- enumerable: true,
- get: function() {
- return getPathnameFromAbsolutePath;
- }
-}));
-function getPathnameFromAbsolutePath(absolutePath) {
- // Remove prefix including app dir
- let appDir = "/app/";
- if (!absolutePath.includes(appDir)) {
- appDir = "\\app\\";
- }
- const [, ...parts] = absolutePath.split(appDir);
- const relativePath = appDir[0] + parts.join(appDir);
- // remove extension
- const pathname = relativePath.split(".").slice(0, -1).join(".");
- return pathname;
-} //# sourceMappingURL=get-pathname-from-absolute-path.js.map
-
-
-/***/ }),
-
-/***/ 1320:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "proxyRequest", ({
- enumerable: true,
- get: function() {
- return proxyRequest;
- }
-}));
-const _cookies = __webpack_require__(7783);
-const _nexturl = __webpack_require__(3369);
-const _cleanurl = __webpack_require__(8167);
-function proxyRequest(request, { dynamic }, hooks) {
- function handleNextUrlBailout(prop) {
- switch(prop){
- case "search":
- case "searchParams":
- case "toString":
- case "href":
- case "origin":
- hooks.staticGenerationBailout(`nextUrl.${prop}`);
- return;
- default:
- return;
- }
- }
- const cache = {};
- const handleForceStatic = (url, prop)=>{
- switch(prop){
- case "search":
- return "";
- case "searchParams":
- if (!cache.searchParams) cache.searchParams = new URLSearchParams();
- return cache.searchParams;
- case "url":
- case "href":
- if (!cache.url) cache.url = (0, _cleanurl.cleanURL)(url);
- return cache.url;
- case "toJSON":
- case "toString":
- if (!cache.url) cache.url = (0, _cleanurl.cleanURL)(url);
- if (!cache.toString) cache.toString = ()=>cache.url;
- return cache.toString;
- case "headers":
- if (!cache.headers) cache.headers = new Headers();
- return cache.headers;
- case "cookies":
- if (!cache.headers) cache.headers = new Headers();
- if (!cache.cookies) cache.cookies = new _cookies.RequestCookies(cache.headers);
- return cache.cookies;
- case "clone":
- if (!cache.url) cache.url = (0, _cleanurl.cleanURL)(url);
- return ()=>new _nexturl.NextURL(cache.url);
- default:
- break;
- }
- };
- const wrappedNextUrl = new Proxy(request.nextUrl, {
- get (target, prop) {
- handleNextUrlBailout(prop);
- if (dynamic === "force-static" && typeof prop === "string") {
- const result = handleForceStatic(target.href, prop);
- if (result !== undefined) return result;
- }
- const value = target[prop];
- if (typeof value === "function") {
- return value.bind(target);
- }
- return value;
- },
- set (target, prop, value) {
- handleNextUrlBailout(prop);
- target[prop] = value;
- return true;
- }
- });
- const handleReqBailout = (prop)=>{
- switch(prop){
- case "headers":
- hooks.headerHooks.headers();
- return;
- // if request.url is accessed directly instead of
- // request.nextUrl we bail since it includes query
- // values that can be relied on dynamically
- case "url":
- case "body":
- case "blob":
- case "json":
- case "text":
- case "arrayBuffer":
- case "formData":
- hooks.staticGenerationBailout(`request.${prop}`);
- return;
- default:
- return;
- }
- };
- return new Proxy(request, {
- get (target, prop) {
- handleReqBailout(prop);
- if (prop === "nextUrl") {
- return wrappedNextUrl;
- }
- if (dynamic === "force-static" && typeof prop === "string") {
- const result = handleForceStatic(target.url, prop);
- if (result !== undefined) return result;
- }
- const value = target[prop];
- if (typeof value === "function") {
- return value.bind(target);
- }
- return value;
- },
- set (target, prop, value) {
- handleReqBailout(prop);
- target[prop] = value;
- return true;
- }
- });
-} //# sourceMappingURL=proxy-request.js.map
-
-
-/***/ }),
-
-/***/ 7714:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "resolveHandlerError", ({
- enumerable: true,
- get: function() {
- return resolveHandlerError;
- }
-}));
-const _notfound = __webpack_require__(4399);
-const _redirect = __webpack_require__(6552);
-const _responsehandlers = __webpack_require__(717);
-function resolveHandlerError(err) {
- if ((0, _redirect.isRedirectError)(err)) {
- const redirect = (0, _redirect.getURLFromRedirectError)(err);
- if (!redirect) {
- throw new Error("Invariant: Unexpected redirect url format");
- }
- // This is a redirect error! Send the redirect response.
- return (0, _responsehandlers.handleTemporaryRedirectResponse)(redirect, err.mutableCookies);
- }
- if ((0, _notfound.isNotFoundError)(err)) {
- // This is a not found error! Send the not found response.
- return (0, _responsehandlers.handleNotFoundResponse)();
- }
- // Return false to indicate that this is not a handled error.
- return false;
-} //# sourceMappingURL=resolve-handler-error.js.map
-
-
-/***/ }),
-
-/***/ 9267:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- AppRouteRouteModule: function() {
- return AppRouteRouteModule;
- },
- default: function() {
- return _default;
- }
-});
-const _routemodule = __webpack_require__(6210);
-const _requestasyncstoragewrapper = __webpack_require__(3389);
-const _staticgenerationasyncstoragewrapper = __webpack_require__(1482);
-const _responsehandlers = __webpack_require__(717);
-const _http = __webpack_require__(1183);
-const _patchfetch = __webpack_require__(6133);
-const _tracer = __webpack_require__(9814);
-const _constants = __webpack_require__(3993);
-const _getpathnamefromabsolutepath = __webpack_require__(2509);
-const _proxyrequest = __webpack_require__(1320);
-const _resolvehandlererror = __webpack_require__(7714);
-const _routekind = __webpack_require__(6221);
-const _log = /*#__PURE__*/ _interop_require_wildcard(__webpack_require__(3724));
-const _autoimplementmethods = __webpack_require__(7053);
-const _getnonstaticmethods = __webpack_require__(3383);
-const _requestcookies = __webpack_require__(8661);
-function _getRequireWildcardCache(nodeInterop) {
- if (typeof WeakMap !== "function") return null;
- var cacheBabelInterop = new WeakMap();
- var cacheNodeInterop = new WeakMap();
- return (_getRequireWildcardCache = function(nodeInterop) {
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
- })(nodeInterop);
-}
-function _interop_require_wildcard(obj, nodeInterop) {
- if (!nodeInterop && obj && obj.__esModule) {
- return obj;
- }
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
- return {
- default: obj
- };
- }
- var cache = _getRequireWildcardCache(nodeInterop);
- if (cache && cache.has(obj)) {
- return cache.get(obj);
- }
- var newObj = {};
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
- for(var key in obj){
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
- if (desc && (desc.get || desc.set)) {
- Object.defineProperty(newObj, key, desc);
- } else {
- newObj[key] = obj[key];
- }
- }
- }
- newObj.default = obj;
- if (cache) {
- cache.set(obj, newObj);
- }
- return newObj;
-}
-class AppRouteRouteModule extends _routemodule.RouteModule {
- constructor({ userland , pathname , resolvedPagePath , nextConfigOutput }){
- super({
- userland
- });
- /**
- * When true, indicates that the global interfaces have been patched via the
- * `patch()` method.
- */ this.hasSetup = false;
- this.definition = {
- kind: _routekind.RouteKind.APP_ROUTE,
- pathname,
- // The following aren't needed for the route handler.
- page: "",
- bundlePath: "",
- filename: ""
- };
- this.pathname = pathname;
- this.resolvedPagePath = resolvedPagePath;
- this.nextConfigOutput = nextConfigOutput;
- // Automatically implement some methods if they aren't implemented by the
- // userland module.
- this.methods = (0, _autoimplementmethods.autoImplementMethods)(userland);
- // Get the non-static methods for this route.
- this.nonStaticMethods = (0, _getnonstaticmethods.getNonStaticMethods)(userland);
- // Get the dynamic property from the userland module.
- this.dynamic = this.userland.dynamic;
- if (this.nextConfigOutput === "export") {
- if (!this.dynamic || this.dynamic === "auto") {
- this.dynamic = "error";
- } else if (this.dynamic === "force-dynamic") {
- throw new Error(`export const dynamic = "force-dynamic" on page "${pathname}" cannot be used with "output: export". See more info here: https://nextjs.org/docs/advanced-features/static-html-export`);
- }
- }
- }
- /**
- * Validates the userland module to ensure the exported methods and properties
- * are valid.
- */ async setup() {
- // If we've already setup, then return.
- if (this.hasSetup) return;
- // Mark the module as setup. The following warnings about the userland
- // module will run if we're in development. If the module files are modified
- // when in development, then the require cache will be busted for it and
- // this method will be called again (resetting the `hasSetup` flag).
- this.hasSetup = true;
- // We only warn in development after here, so return if we're not in
- // development.
- if (false) {}
- }
- /**
- * Resolves the handler function for the given method.
- *
- * @param method the requested method
- * @returns the handler function for the given method
- */ resolve(method) {
- // Ensure that the requested method is a valid method (to prevent RCE's).
- if (!(0, _http.isHTTPMethod)(method)) return _responsehandlers.handleBadRequestResponse;
- // Return the handler.
- return this.methods[method];
- }
- /**
- * Executes the route handler.
- */ async execute(request, context) {
- // Get the handler function for the given method.
- const handler = this.resolve(request.method);
- // Get the context for the request.
- const requestContext = {
- req: request
- };
- requestContext.renderOpts = {
- previewProps: context.prerenderManifest.preview
- };
- // Get the context for the static generation.
- const staticGenerationContext = {
- pathname: this.definition.pathname,
- renderOpts: // the default values.
- context.staticGenerationContext ?? {
- supportsDynamicHTML: false
- }
- };
- // Add the fetchCache option to the renderOpts.
- staticGenerationContext.renderOpts.fetchCache = this.userland.fetchCache;
- // Run the handler with the request AsyncLocalStorage to inject the helper
- // support. We set this to `unknown` because the type is not known until
- // runtime when we do a instanceof check below.
- const response = await this.actionAsyncStorage.run({
- isAppRoute: true
- }, ()=>{
- return _requestasyncstoragewrapper.RequestAsyncStorageWrapper.wrap(this.requestAsyncStorage, requestContext, ()=>{
- return _staticgenerationasyncstoragewrapper.StaticGenerationAsyncStorageWrapper.wrap(this.staticGenerationAsyncStorage, staticGenerationContext, (staticGenerationStore)=>{
- var _getTracer_getRootSpanAttributes;
- // Check to see if we should bail out of static generation based on
- // having non-static methods.
- if (this.nonStaticMethods) {
- this.staticGenerationBailout(`non-static methods used ${this.nonStaticMethods.join(", ")}`);
- }
- // Update the static generation store based on the dynamic property.
- switch(this.dynamic){
- case "force-dynamic":
- // The dynamic property is set to force-dynamic, so we should
- // force the page to be dynamic.
- staticGenerationStore.forceDynamic = true;
- this.staticGenerationBailout(`force-dynamic`, {
- dynamic: this.dynamic
- });
- break;
- case "force-static":
- // The dynamic property is set to force-static, so we should
- // force the page to be static.
- staticGenerationStore.forceStatic = true;
- break;
- case "error":
- // The dynamic property is set to error, so we should throw an
- // error if the page is being statically generated.
- staticGenerationStore.dynamicShouldError = true;
- break;
- default:
- break;
- }
- // If the static generation store does not have a revalidate value
- // set, then we should set it the revalidate value from the userland
- // module or default to false.
- staticGenerationStore.revalidate ??= this.userland.revalidate ?? false;
- // Wrap the request so we can add additional functionality to cases
- // that might change it's output or affect the rendering.
- const wrappedRequest = (0, _proxyrequest.proxyRequest)(request, {
- dynamic: this.dynamic
- }, {
- headerHooks: this.headerHooks,
- serverHooks: this.serverHooks,
- staticGenerationBailout: this.staticGenerationBailout
- });
- // TODO: propagate this pathname from route matcher
- const route = (0, _getpathnamefromabsolutepath.getPathnameFromAbsolutePath)(this.resolvedPagePath);
- (_getTracer_getRootSpanAttributes = (0, _tracer.getTracer)().getRootSpanAttributes()) == null ? void 0 : _getTracer_getRootSpanAttributes.set("next.route", route);
- return (0, _tracer.getTracer)().trace(_constants.AppRouteRouteHandlersSpan.runHandler, {
- spanName: `executing api route (app) ${route}`,
- attributes: {
- "next.route": route
- }
- }, async ()=>{
- var _staticGenerationStore_tags;
- // Patch the global fetch.
- (0, _patchfetch.patchFetch)({
- serverHooks: this.serverHooks,
- staticGenerationAsyncStorage: this.staticGenerationAsyncStorage
- });
- const res = await handler(wrappedRequest, {
- params: context.params
- });
- context.staticGenerationContext.fetchMetrics = staticGenerationStore.fetchMetrics;
- await Promise.all(staticGenerationStore.pendingRevalidates || []);
- (0, _patchfetch.addImplicitTags)(staticGenerationStore);
- context.staticGenerationContext.fetchTags = (_staticGenerationStore_tags = staticGenerationStore.tags) == null ? void 0 : _staticGenerationStore_tags.join(",");
- // It's possible cookies were set in the handler, so we need
- // to merge the modified cookies and the returned response
- // here.
- const requestStore = this.requestAsyncStorage.getStore();
- if (requestStore && requestStore.mutableCookies) {
- const headers = new Headers(res.headers);
- if ((0, _requestcookies.appendMutableCookies)(headers, requestStore.mutableCookies)) {
- return new Response(res.body, {
- status: res.status,
- statusText: res.statusText,
- headers
- });
- }
- }
- return res;
- });
- });
- });
- });
- // If the handler did't return a valid response, then return the internal
- // error response.
- if (!(response instanceof Response)) {
- // TODO: validate the correct handling behavior, maybe log something?
- return (0, _responsehandlers.handleInternalServerErrorResponse)();
- }
- if (response.headers.has("x-middleware-rewrite")) {
- // TODO: move this error into the `NextResponse.rewrite()` function.
- // TODO-APP: re-enable support below when we can proxy these type of requests
- throw new Error("NextResponse.rewrite() was used in a app route handler, this is not currently supported. Please remove the invocation to continue.");
- // // This is a rewrite created via `NextResponse.rewrite()`. We need to send
- // // the response up so it can be handled by the backing server.
- // // If the server is running in minimal mode, we just want to forward the
- // // response (including the rewrite headers) upstream so it can perform the
- // // redirect for us, otherwise return with the special condition so this
- // // server can perform a rewrite.
- // if (!minimalMode) {
- // return { response, condition: 'rewrite' }
- // }
- // // Relativize the url so it's relative to the base url. This is so the
- // // outgoing headers upstream can be relative.
- // const rewritePath = response.headers.get('x-middleware-rewrite')!
- // const initUrl = getRequestMeta(req, '__NEXT_INIT_URL')!
- // const { pathname } = parseUrl(relativizeURL(rewritePath, initUrl))
- // response.headers.set('x-middleware-rewrite', pathname)
- }
- if (response.headers.get("x-middleware-next") === "1") {
- // TODO: move this error into the `NextResponse.next()` function.
- throw new Error("NextResponse.next() was used in a app route handler, this is not supported. See here for more info: https://nextjs.org/docs/messages/next-response-next-in-app-route-handler");
- }
- return response;
- }
- async handle(request, context) {
- try {
- // Execute the route to get the response.
- const response = await this.execute(request, context);
- // The response was handled, return it.
- return response;
- } catch (err) {
- // Try to resolve the error to a response, else throw it again.
- const response = (0, _resolvehandlererror.resolveHandlerError)(err);
- if (!response) throw err;
- // The response was resolved, return it.
- return response;
- }
- }
-}
-const _default = AppRouteRouteModule; //# sourceMappingURL=module.js.map
-
-
-/***/ }),
-
-/***/ 717:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- handleTemporaryRedirectResponse: function() {
- return handleTemporaryRedirectResponse;
- },
- handleBadRequestResponse: function() {
- return handleBadRequestResponse;
- },
- handleNotFoundResponse: function() {
- return handleNotFoundResponse;
- },
- handleMethodNotAllowedResponse: function() {
- return handleMethodNotAllowedResponse;
- },
- handleInternalServerErrorResponse: function() {
- return handleInternalServerErrorResponse;
- }
-});
-const _requestcookies = __webpack_require__(8661);
-function handleTemporaryRedirectResponse(url, mutableCookies) {
- const headers = new Headers({
- location: url
- });
- (0, _requestcookies.appendMutableCookies)(headers, mutableCookies);
- return new Response(null, {
- status: 307,
- headers
- });
-}
-function handleBadRequestResponse() {
- return new Response(null, {
- status: 400
- });
-}
-function handleNotFoundResponse() {
- return new Response(null, {
- status: 404
- });
-}
-function handleMethodNotAllowedResponse() {
- return new Response(null, {
- status: 405
- });
-}
-function handleInternalServerErrorResponse() {
- return new Response(null, {
- status: 500
- });
-} //# sourceMappingURL=response-handlers.js.map
-
-
-/***/ }),
-
-/***/ 6210:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "RouteModule", ({
- enumerable: true,
- get: function() {
- return RouteModule;
- }
-}));
-// These are imported weirdly like this because of the way that the bundling
-// works. We need to import the built files from the dist directory, but we
-// can't do that directly because we need types from the source files. So we
-// import the types from the source files and then import the built files.
-const { requestAsyncStorage } = __webpack_require__(4437);
-const { staticGenerationAsyncStorage } = __webpack_require__(94);
-const serverHooks = __webpack_require__(3332);
-const headerHooks = __webpack_require__(3851);
-const { staticGenerationBailout } = __webpack_require__(5486);
-const { actionAsyncStorage } = __webpack_require__(6127);
-class RouteModule {
- constructor({ userland }){
- /**
- * A reference to the request async storage.
- */ this.requestAsyncStorage = requestAsyncStorage;
- /**
- * A reference to the static generation async storage.
- */ this.staticGenerationAsyncStorage = staticGenerationAsyncStorage;
- /**
- * An interface to call server hooks which interact with the underlying
- * storage.
- */ this.serverHooks = serverHooks;
- /**
- * An interface to call header hooks which interact with the underlying
- * request storage.
- */ this.headerHooks = headerHooks;
- /**
- * An interface to call static generation bailout hooks which interact with
- * the underlying static generation storage.
- */ this.staticGenerationBailout = staticGenerationBailout;
- /**
- * A reference to the mutation related async storage, such as mutations of
- * cookies.
- */ this.actionAsyncStorage = actionAsyncStorage;
- this.userland = userland;
- }
-} //# sourceMappingURL=route-module.js.map
-
-
-/***/ }),
-
-/***/ 6133:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- addImplicitTags: function() {
- return addImplicitTags;
- },
- patchFetch: function() {
- return patchFetch;
- }
-});
-const _constants = __webpack_require__(3993);
-const _tracer = __webpack_require__(9814);
-const _constants1 = __webpack_require__(8537);
-const isEdgeRuntime = "nodejs" === "edge";
-function addImplicitTags(staticGenerationStore) {
- const newTags = [];
- const pathname = staticGenerationStore == null ? void 0 : staticGenerationStore.originalPathname;
- if (!pathname) {
- return newTags;
- }
- if (!Array.isArray(staticGenerationStore.tags)) {
- staticGenerationStore.tags = [];
- }
- if (!staticGenerationStore.tags.includes(pathname)) {
- staticGenerationStore.tags.push(pathname);
- }
- newTags.push(pathname);
- return newTags;
-}
-function trackFetchMetric(staticGenerationStore, ctx) {
- if (!staticGenerationStore) return;
- if (!staticGenerationStore.fetchMetrics) {
- staticGenerationStore.fetchMetrics = [];
- }
- const dedupeFields = [
- "url",
- "status",
- "method"
- ];
- // don't add metric if one already exists for the fetch
- if (staticGenerationStore.fetchMetrics.some((metric)=>{
- return dedupeFields.every((field)=>metric[field] === ctx[field]);
- })) {
- return;
- }
- staticGenerationStore.fetchMetrics.push({
- url: ctx.url,
- cacheStatus: ctx.cacheStatus,
- status: ctx.status,
- method: ctx.method,
- start: ctx.start,
- end: Date.now(),
- idx: staticGenerationStore.nextFetchId || 0
- });
-}
-function patchFetch({ serverHooks , staticGenerationAsyncStorage }) {
- if (!globalThis._nextOriginalFetch) {
- globalThis._nextOriginalFetch = globalThis.fetch;
- }
- if (globalThis.fetch.__nextPatched) return;
- const { DynamicServerError } = serverHooks;
- const originFetch = globalThis._nextOriginalFetch;
- globalThis.fetch = async (input, init)=>{
- var _init_method;
- let url;
- try {
- url = new URL(input instanceof Request ? input.url : input);
- url.username = "";
- url.password = "";
- } catch {
- // Error caused by malformed URL should be handled by native fetch
- url = undefined;
- }
- const fetchUrl = (url == null ? void 0 : url.href) ?? "";
- const fetchStart = Date.now();
- const method = (init == null ? void 0 : (_init_method = init.method) == null ? void 0 : _init_method.toUpperCase()) || "GET";
- return await (0, _tracer.getTracer)().trace(_constants.AppRenderSpan.fetch, {
- kind: _tracer.SpanKind.CLIENT,
- spanName: [
- "fetch",
- method,
- fetchUrl
- ].filter(Boolean).join(" "),
- attributes: {
- "http.url": fetchUrl,
- "http.method": method,
- "net.peer.name": url == null ? void 0 : url.hostname,
- "net.peer.port": (url == null ? void 0 : url.port) || undefined
- }
- }, async ()=>{
- var _ref, _getRequestMeta;
- const staticGenerationStore = staticGenerationAsyncStorage.getStore();
- const isRequestInput = input && typeof input === "object" && typeof input.method === "string";
- const getRequestMeta = (field)=>{
- let value = isRequestInput ? input[field] : null;
- return value || (init == null ? void 0 : init[field]);
- };
- // If the staticGenerationStore is not available, we can't do any
- // special treatment of fetch, therefore fallback to the original
- // fetch implementation.
- if (!staticGenerationStore || ((_ref = init == null ? void 0 : init.next) == null ? void 0 : _ref.internal)) {
- return originFetch(input, init);
- }
- let revalidate = undefined;
- const getNextField = (field)=>{
- var _init_next, _init_next1, _input_next;
- return typeof (init == null ? void 0 : (_init_next = init.next) == null ? void 0 : _init_next[field]) !== "undefined" ? init == null ? void 0 : (_init_next1 = init.next) == null ? void 0 : _init_next1[field] : isRequestInput ? (_input_next = input.next) == null ? void 0 : _input_next[field] : undefined;
- };
- // RequestInit doesn't keep extra fields e.g. next so it's
- // only available if init is used separate
- let curRevalidate = getNextField("revalidate");
- const tags = getNextField("tags") || [];
- if (Array.isArray(tags)) {
- if (!staticGenerationStore.tags) {
- staticGenerationStore.tags = [];
- }
- for (const tag of tags){
- if (!staticGenerationStore.tags.includes(tag)) {
- staticGenerationStore.tags.push(tag);
- }
- }
- }
- const implicitTags = addImplicitTags(staticGenerationStore);
- for (const tag of implicitTags || []){
- if (!tags.includes(tag)) {
- tags.push(tag);
- }
- }
- const isOnlyCache = staticGenerationStore.fetchCache === "only-cache";
- const isForceCache = staticGenerationStore.fetchCache === "force-cache";
- const isDefaultCache = staticGenerationStore.fetchCache === "default-cache";
- const isDefaultNoStore = staticGenerationStore.fetchCache === "default-no-store";
- const isOnlyNoStore = staticGenerationStore.fetchCache === "only-no-store";
- const isForceNoStore = staticGenerationStore.fetchCache === "force-no-store";
- let _cache = getRequestMeta("cache");
- if (typeof _cache === "string" && typeof curRevalidate !== "undefined") {
- console.warn(`Warning: fetch for ${fetchUrl} on ${staticGenerationStore.pathname} specified "cache: ${_cache}" and "revalidate: ${curRevalidate}", only one should be specified.`);
- _cache = undefined;
- }
- if (_cache === "force-cache") {
- curRevalidate = false;
- }
- if ([
- "no-cache",
- "no-store"
- ].includes(_cache || "")) {
- curRevalidate = 0;
- }
- if (typeof curRevalidate === "number" || curRevalidate === false) {
- revalidate = curRevalidate;
- }
- let cacheReason = "";
- const _headers = getRequestMeta("headers");
- const initHeaders = typeof (_headers == null ? void 0 : _headers.get) === "function" ? _headers : new Headers(_headers || {});
- const hasUnCacheableHeader = initHeaders.get("authorization") || initHeaders.get("cookie");
- const isUnCacheableMethod = ![
- "get",
- "head"
- ].includes(((_getRequestMeta = getRequestMeta("method")) == null ? void 0 : _getRequestMeta.toLowerCase()) || "get");
- // if there are authorized headers or a POST method and
- // dynamic data usage was present above the tree we bail
- // e.g. if cookies() is used before an authed/POST fetch
- const autoNoCache = (hasUnCacheableHeader || isUnCacheableMethod) && staticGenerationStore.revalidate === 0;
- if (isForceNoStore) {
- revalidate = 0;
- cacheReason = "fetchCache = force-no-store";
- }
- if (isOnlyNoStore) {
- if (_cache === "force-cache" || revalidate === 0) {
- throw new Error(`cache: 'force-cache' used on fetch for ${fetchUrl} with 'export const fetchCache = 'only-no-store'`);
- }
- revalidate = 0;
- cacheReason = "fetchCache = only-no-store";
- }
- if (isOnlyCache && _cache === "no-store") {
- throw new Error(`cache: 'no-store' used on fetch for ${fetchUrl} with 'export const fetchCache = 'only-cache'`);
- }
- if (isForceCache && (typeof curRevalidate === "undefined" || curRevalidate === 0)) {
- cacheReason = "fetchCache = force-cache";
- revalidate = false;
- }
- if (typeof revalidate === "undefined") {
- if (isDefaultCache) {
- revalidate = false;
- cacheReason = "fetchCache = default-cache";
- } else if (autoNoCache) {
- revalidate = 0;
- cacheReason = "auto no cache";
- } else if (isDefaultNoStore) {
- revalidate = 0;
- cacheReason = "fetchCache = default-no-store";
- } else {
- cacheReason = "auto cache";
- revalidate = typeof staticGenerationStore.revalidate === "boolean" || typeof staticGenerationStore.revalidate === "undefined" ? false : staticGenerationStore.revalidate;
- }
- } else if (!cacheReason) {
- cacheReason = `revalidate: ${revalidate}`;
- }
- if (// revalidate although if it occurs during build we do
- !autoNoCache && (typeof staticGenerationStore.revalidate === "undefined" || typeof revalidate === "number" && (staticGenerationStore.revalidate === false || typeof staticGenerationStore.revalidate === "number" && revalidate < staticGenerationStore.revalidate))) {
- staticGenerationStore.revalidate = revalidate;
- }
- const isCacheableRevalidate = typeof revalidate === "number" && revalidate > 0 || revalidate === false;
- let cacheKey;
- if (staticGenerationStore.incrementalCache && isCacheableRevalidate) {
- try {
- cacheKey = await staticGenerationStore.incrementalCache.fetchCacheKey(fetchUrl, isRequestInput ? input : init);
- } catch (err) {
- console.error(`Failed to generate cache key for`, input);
- }
- }
- const requestInputFields = [
- "cache",
- "credentials",
- "headers",
- "integrity",
- "keepalive",
- "method",
- "mode",
- "redirect",
- "referrer",
- "referrerPolicy",
- "signal",
- "window",
- "duplex"
- ];
- if (isRequestInput) {
- const reqInput = input;
- const reqOptions = {
- body: reqInput._ogBody || reqInput.body
- };
- for (const field of requestInputFields){
- // @ts-expect-error custom fields
- reqOptions[field] = reqInput[field];
- }
- input = new Request(reqInput.url, reqOptions);
- } else if (init) {
- const initialInit = init;
- init = {
- body: init._ogBody || init.body
- };
- for (const field of requestInputFields){
- // @ts-expect-error custom fields
- init[field] = initialInit[field];
- }
- }
- const fetchIdx = staticGenerationStore.nextFetchId ?? 1;
- staticGenerationStore.nextFetchId = fetchIdx + 1;
- const normalizedRevalidate = typeof revalidate !== "number" ? _constants1.CACHE_ONE_YEAR : revalidate;
- const doOriginalFetch = async (isStale)=>{
- // add metadata to init without editing the original
- const clonedInit = {
- ...init,
- next: {
- ...init == null ? void 0 : init.next,
- fetchType: "origin",
- fetchIdx
- }
- };
- return originFetch(input, clonedInit).then(async (res)=>{
- if (!isStale) {
- trackFetchMetric(staticGenerationStore, {
- start: fetchStart,
- url: fetchUrl,
- cacheReason,
- cacheStatus: "miss",
- status: res.status,
- method: clonedInit.method || "GET"
- });
- }
- if (res.status === 200 && staticGenerationStore.incrementalCache && cacheKey && isCacheableRevalidate) {
- const bodyBuffer = Buffer.from(await res.arrayBuffer());
- try {
- await staticGenerationStore.incrementalCache.set(cacheKey, {
- kind: "FETCH",
- data: {
- headers: Object.fromEntries(res.headers.entries()),
- body: bodyBuffer.toString("base64"),
- status: res.status,
- tags
- },
- revalidate: normalizedRevalidate
- }, revalidate, true, fetchUrl, fetchIdx);
- } catch (err) {
- console.warn(`Failed to set fetch cache`, input, err);
- }
- return new Response(bodyBuffer, {
- headers: new Headers(res.headers),
- status: res.status
- });
- }
- return res;
- });
- };
- if (cacheKey && (staticGenerationStore == null ? void 0 : staticGenerationStore.incrementalCache)) {
- const entry = staticGenerationStore.isOnDemandRevalidate ? null : await staticGenerationStore.incrementalCache.get(cacheKey, true, revalidate, fetchUrl, fetchIdx);
- if ((entry == null ? void 0 : entry.value) && entry.value.kind === "FETCH") {
- const currentTags = entry.value.data.tags;
- // when stale and is revalidating we wait for fresh data
- // so the revalidated entry has the updated data
- if (!(staticGenerationStore.isRevalidate && entry.isStale)) {
- if (entry.isStale) {
- if (!staticGenerationStore.pendingRevalidates) {
- staticGenerationStore.pendingRevalidates = [];
- }
- staticGenerationStore.pendingRevalidates.push(doOriginalFetch(true).catch(console.error));
- } else if (tags && !tags.every((tag)=>{
- return currentTags == null ? void 0 : currentTags.includes(tag);
- })) {
- var _staticGenerationStore_incrementalCache;
- // if new tags are being added we need to set even if
- // the data isn't stale
- if (!entry.value.data.tags) {
- entry.value.data.tags = [];
- }
- for (const tag of tags){
- if (!entry.value.data.tags.includes(tag)) {
- entry.value.data.tags.push(tag);
- }
- }
- (_staticGenerationStore_incrementalCache = staticGenerationStore.incrementalCache) == null ? void 0 : _staticGenerationStore_incrementalCache.set(cacheKey, entry.value, revalidate, true, fetchUrl, fetchIdx);
- }
- const resData = entry.value.data;
- let decodedBody;
- if (false) {} else {
- decodedBody = Buffer.from(resData.body, "base64").subarray();
- }
- trackFetchMetric(staticGenerationStore, {
- start: fetchStart,
- url: fetchUrl,
- cacheReason,
- cacheStatus: "hit",
- status: resData.status || 200,
- method: (init == null ? void 0 : init.method) || "GET"
- });
- return new Response(decodedBody, {
- headers: resData.headers,
- status: resData.status
- });
- }
- }
- }
- if (staticGenerationStore.isStaticGeneration) {
- if (init && typeof init === "object") {
- const cache = init.cache;
- // Delete `cache` property as Cloudflare Workers will throw an error
- if (isEdgeRuntime) {
- delete init.cache;
- }
- if (cache === "no-store") {
- staticGenerationStore.revalidate = 0;
- // TODO: ensure this error isn't logged to the user
- // seems it's slipping through currently
- const dynamicUsageReason = `no-store fetch ${input}${staticGenerationStore.pathname ? ` ${staticGenerationStore.pathname}` : ""}`;
- const err = new DynamicServerError(dynamicUsageReason);
- staticGenerationStore.dynamicUsageStack = err.stack;
- staticGenerationStore.dynamicUsageDescription = dynamicUsageReason;
- throw err;
- }
- const hasNextConfig = "next" in init;
- const next = init.next || {};
- if (typeof next.revalidate === "number" && (typeof staticGenerationStore.revalidate === "undefined" || next.revalidate < staticGenerationStore.revalidate)) {
- const forceDynamic = staticGenerationStore.forceDynamic;
- if (!forceDynamic || next.revalidate !== 0) {
- staticGenerationStore.revalidate = next.revalidate;
- }
- if (!forceDynamic && next.revalidate === 0) {
- const dynamicUsageReason = `revalidate: ${next.revalidate} fetch ${input}${staticGenerationStore.pathname ? ` ${staticGenerationStore.pathname}` : ""}`;
- const err = new DynamicServerError(dynamicUsageReason);
- staticGenerationStore.dynamicUsageStack = err.stack;
- staticGenerationStore.dynamicUsageDescription = dynamicUsageReason;
- throw err;
- }
- }
- if (hasNextConfig) delete init.next;
- }
- }
- return doOriginalFetch();
- });
- };
- globalThis.fetch.__nextGetStaticStore = ()=>{
- return staticGenerationAsyncStorage;
- };
- globalThis.fetch.__nextPatched = true;
-} //# sourceMappingURL=patch-fetch.js.map
-
-
-/***/ }),
-
-/***/ 3993:
-/***/ ((__unused_webpack_module, exports) => {
-
-/**
- * Contains predefined constants for the trace span name in next/server.
- *
- * Currently, next/server/tracer is internal implementation only for tracking
- * next.js's implementation only with known span names defined here.
- **/ // eslint typescript has a bug with TS enums
-/* eslint-disable no-shadow */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- NextVanillaSpanAllowlist: function() {
- return NextVanillaSpanAllowlist;
- },
- BaseServerSpan: function() {
- return BaseServerSpan;
- },
- LoadComponentsSpan: function() {
- return LoadComponentsSpan;
- },
- NextServerSpan: function() {
- return NextServerSpan;
- },
- NextNodeServerSpan: function() {
- return NextNodeServerSpan;
- },
- StartServerSpan: function() {
- return StartServerSpan;
- },
- RenderSpan: function() {
- return RenderSpan;
- },
- RouterSpan: function() {
- return RouterSpan;
- },
- AppRenderSpan: function() {
- return AppRenderSpan;
- },
- NodeSpan: function() {
- return NodeSpan;
- },
- AppRouteRouteHandlersSpan: function() {
- return AppRouteRouteHandlersSpan;
- },
- ResolveMetadataSpan: function() {
- return ResolveMetadataSpan;
- }
-});
-var BaseServerSpan;
-(function(BaseServerSpan) {
- BaseServerSpan["handleRequest"] = "BaseServer.handleRequest";
- BaseServerSpan["run"] = "BaseServer.run";
- BaseServerSpan["pipe"] = "BaseServer.pipe";
- BaseServerSpan["getStaticHTML"] = "BaseServer.getStaticHTML";
- BaseServerSpan["render"] = "BaseServer.render";
- BaseServerSpan["renderToResponseWithComponents"] = "BaseServer.renderToResponseWithComponents";
- BaseServerSpan["renderToResponse"] = "BaseServer.renderToResponse";
- BaseServerSpan["renderToHTML"] = "BaseServer.renderToHTML";
- BaseServerSpan["renderError"] = "BaseServer.renderError";
- BaseServerSpan["renderErrorToResponse"] = "BaseServer.renderErrorToResponse";
- BaseServerSpan["renderErrorToHTML"] = "BaseServer.renderErrorToHTML";
- BaseServerSpan["render404"] = "BaseServer.render404";
-})(BaseServerSpan || (BaseServerSpan = {}));
-var LoadComponentsSpan;
-(function(LoadComponentsSpan) {
- LoadComponentsSpan["loadDefaultErrorComponents"] = "LoadComponents.loadDefaultErrorComponents";
- LoadComponentsSpan["loadComponents"] = "LoadComponents.loadComponents";
-})(LoadComponentsSpan || (LoadComponentsSpan = {}));
-var NextServerSpan;
-(function(NextServerSpan) {
- NextServerSpan["getRequestHandler"] = "NextServer.getRequestHandler";
- NextServerSpan["getServer"] = "NextServer.getServer";
- NextServerSpan["getServerRequestHandler"] = "NextServer.getServerRequestHandler";
- NextServerSpan["createServer"] = "createServer.createServer";
-})(NextServerSpan || (NextServerSpan = {}));
-var NextNodeServerSpan;
-(function(NextNodeServerSpan) {
- NextNodeServerSpan["compression"] = "NextNodeServer.compression";
- NextNodeServerSpan["getBuildId"] = "NextNodeServer.getBuildId";
- NextNodeServerSpan["generateStaticRoutes"] = "NextNodeServer.generateStaticRoutes";
- NextNodeServerSpan["generateFsStaticRoutes"] = "NextNodeServer.generateFsStaticRoutes";
- NextNodeServerSpan["generatePublicRoutes"] = "NextNodeServer.generatePublicRoutes";
- NextNodeServerSpan["generateImageRoutes"] = "NextNodeServer.generateImageRoutes.route";
- NextNodeServerSpan["sendRenderResult"] = "NextNodeServer.sendRenderResult";
- NextNodeServerSpan["sendStatic"] = "NextNodeServer.sendStatic";
- NextNodeServerSpan["proxyRequest"] = "NextNodeServer.proxyRequest";
- NextNodeServerSpan["runApi"] = "NextNodeServer.runApi";
- NextNodeServerSpan["render"] = "NextNodeServer.render";
- NextNodeServerSpan["renderHTML"] = "NextNodeServer.renderHTML";
- NextNodeServerSpan["imageOptimizer"] = "NextNodeServer.imageOptimizer";
- NextNodeServerSpan["getPagePath"] = "NextNodeServer.getPagePath";
- NextNodeServerSpan["getRoutesManifest"] = "NextNodeServer.getRoutesManifest";
- NextNodeServerSpan["findPageComponents"] = "NextNodeServer.findPageComponents";
- NextNodeServerSpan["getFontManifest"] = "NextNodeServer.getFontManifest";
- NextNodeServerSpan["getServerComponentManifest"] = "NextNodeServer.getServerComponentManifest";
- NextNodeServerSpan["getRequestHandler"] = "NextNodeServer.getRequestHandler";
- NextNodeServerSpan["renderToHTML"] = "NextNodeServer.renderToHTML";
- NextNodeServerSpan["renderError"] = "NextNodeServer.renderError";
- NextNodeServerSpan["renderErrorToHTML"] = "NextNodeServer.renderErrorToHTML";
- NextNodeServerSpan["render404"] = "NextNodeServer.render404";
- NextNodeServerSpan["route"] = "route";
- NextNodeServerSpan["onProxyReq"] = "onProxyReq";
- NextNodeServerSpan["apiResolver"] = "apiResolver";
-})(NextNodeServerSpan || (NextNodeServerSpan = {}));
-var StartServerSpan;
-(function(StartServerSpan) {
- StartServerSpan["startServer"] = "startServer.startServer";
-})(StartServerSpan || (StartServerSpan = {}));
-var RenderSpan;
-(function(RenderSpan) {
- RenderSpan["getServerSideProps"] = "Render.getServerSideProps";
- RenderSpan["getStaticProps"] = "Render.getStaticProps";
- RenderSpan["renderToString"] = "Render.renderToString";
- RenderSpan["renderDocument"] = "Render.renderDocument";
- RenderSpan["createBodyResult"] = "Render.createBodyResult";
-})(RenderSpan || (RenderSpan = {}));
-var AppRenderSpan;
-(function(AppRenderSpan) {
- AppRenderSpan["renderToString"] = "AppRender.renderToString";
- AppRenderSpan["renderToReadableStream"] = "AppRender.renderToReadableStream";
- AppRenderSpan["getBodyResult"] = "AppRender.getBodyResult";
- AppRenderSpan["fetch"] = "AppRender.fetch";
-})(AppRenderSpan || (AppRenderSpan = {}));
-var RouterSpan;
-(function(RouterSpan) {
- RouterSpan["executeRoute"] = "Router.executeRoute";
-})(RouterSpan || (RouterSpan = {}));
-var NodeSpan;
-(function(NodeSpan) {
- NodeSpan["runHandler"] = "Node.runHandler";
-})(NodeSpan || (NodeSpan = {}));
-var AppRouteRouteHandlersSpan;
-(function(AppRouteRouteHandlersSpan) {
- AppRouteRouteHandlersSpan["runHandler"] = "AppRouteRouteHandlers.runHandler";
-})(AppRouteRouteHandlersSpan || (AppRouteRouteHandlersSpan = {}));
-var ResolveMetadataSpan;
-(function(ResolveMetadataSpan) {
- ResolveMetadataSpan["generateMetadata"] = "ResolveMetadata.generateMetadata";
-})(ResolveMetadataSpan || (ResolveMetadataSpan = {}));
-const NextVanillaSpanAllowlist = [
- "BaseServer.handleRequest",
- "Render.getServerSideProps",
- "Render.getStaticProps",
- "AppRender.fetch",
- "AppRender.getBodyResult",
- "Render.renderDocument",
- "Node.runHandler",
- "AppRouteRouteHandlers.runHandler",
- "ResolveMetadata.generateMetadata"
-]; //# sourceMappingURL=constants.js.map
-
-
-/***/ }),
-
-/***/ 9814:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- getTracer: function() {
- return getTracer;
- },
- SpanStatusCode: function() {
- return SpanStatusCode;
- },
- SpanKind: function() {
- return SpanKind;
- }
-});
-const _constants = __webpack_require__(3993);
-let api;
-// we want to allow users to use their own version of @opentelemetry/api if they
-// want to, so we try to require it first, and if it fails we fall back to the
-// version that is bundled with Next.js
-// this is because @opentelemetry/api has to be synced with the version of
-// @opentelemetry/tracing that is used, and we don't want to force users to use
-// the version that is bundled with Next.js.
-// the API is ~stable, so this should be fine
-if (false) {} else {
- try {
- api = __webpack_require__(2962);
- } catch (err) {
- api = __webpack_require__(8530);
- }
-}
-const { context , trace , SpanStatusCode , SpanKind } = api;
-const isPromise = (p)=>{
- return p !== null && typeof p === "object" && typeof p.then === "function";
-};
-const closeSpanWithError = (span, error)=>{
- if (error) {
- span.recordException(error);
- }
- span.setStatus({
- code: SpanStatusCode.ERROR,
- message: error == null ? void 0 : error.message
- });
- span.end();
-};
-/** we use this map to propagate attributes from nested spans to the top span */ const rootSpanAttributesStore = new Map();
-const rootSpanIdKey = api.createContextKey("next.rootSpanId");
-let lastSpanId = 0;
-const getSpanId = ()=>lastSpanId++;
-class NextTracerImpl {
- /**
- * Returns an instance to the trace with configured name.
- * Since wrap / trace can be defined in any place prior to actual trace subscriber initialization,
- * This should be lazily evaluated.
- */ getTracerInstance() {
- return trace.getTracer("next.js", "0.0.1");
- }
- getContext() {
- return context;
- }
- getActiveScopeSpan() {
- return trace.getSpan(context == null ? void 0 : context.active());
- }
- trace(...args) {
- const [type, fnOrOptions, fnOrEmpty] = args;
- // coerce options form overload
- const { fn , options } = typeof fnOrOptions === "function" ? {
- fn: fnOrOptions,
- options: {}
- } : {
- fn: fnOrEmpty,
- options: {
- ...fnOrOptions
- }
- };
- if (!_constants.NextVanillaSpanAllowlist.includes(type) && process.env.NEXT_OTEL_VERBOSE !== "1" || options.hideSpan) {
- return fn();
- }
- const spanName = options.spanName ?? type;
- // Trying to get active scoped span to assign parent. If option specifies parent span manually, will try to use it.
- let spanContext = this.getSpanContext((options == null ? void 0 : options.parentSpan) ?? this.getActiveScopeSpan());
- let isRootSpan = false;
- if (!spanContext) {
- spanContext = api.ROOT_CONTEXT;
- isRootSpan = true;
- }
- const spanId = getSpanId();
- options.attributes = {
- "next.span_name": spanName,
- "next.span_type": type,
- ...options.attributes
- };
- return api.context.with(spanContext.setValue(rootSpanIdKey, spanId), ()=>this.getTracerInstance().startActiveSpan(spanName, options, (span)=>{
- const onCleanup = ()=>{
- rootSpanAttributesStore.delete(spanId);
- };
- if (isRootSpan) {
- rootSpanAttributesStore.set(spanId, new Map(Object.entries(options.attributes ?? {})));
- }
- try {
- if (fn.length > 1) {
- return fn(span, (err)=>closeSpanWithError(span, err));
- }
- const result = fn(span);
- if (isPromise(result)) {
- result.then(()=>span.end(), (err)=>closeSpanWithError(span, err)).finally(onCleanup);
- } else {
- span.end();
- onCleanup();
- }
- return result;
- } catch (err) {
- closeSpanWithError(span, err);
- onCleanup();
- throw err;
- }
- }));
- }
- wrap(...args) {
- const tracer = this;
- const [name, options, fn] = args.length === 3 ? args : [
- args[0],
- {},
- args[1]
- ];
- if (!_constants.NextVanillaSpanAllowlist.includes(name) && process.env.NEXT_OTEL_VERBOSE !== "1") {
- return fn;
- }
- return function() {
- let optionsObj = options;
- if (typeof optionsObj === "function" && typeof fn === "function") {
- optionsObj = optionsObj.apply(this, arguments);
- }
- const lastArgId = arguments.length - 1;
- const cb = arguments[lastArgId];
- if (typeof cb === "function") {
- const scopeBoundCb = tracer.getContext().bind(context.active(), cb);
- return tracer.trace(name, optionsObj, (_span, done)=>{
- arguments[lastArgId] = function(err) {
- done == null ? void 0 : done(err);
- return scopeBoundCb.apply(this, arguments);
- };
- return fn.apply(this, arguments);
- });
- } else {
- return tracer.trace(name, optionsObj, ()=>fn.apply(this, arguments));
- }
- };
- }
- startSpan(...args) {
- const [type, options] = args;
- const spanContext = this.getSpanContext((options == null ? void 0 : options.parentSpan) ?? this.getActiveScopeSpan());
- return this.getTracerInstance().startSpan(type, options, spanContext);
- }
- getSpanContext(parentSpan) {
- const spanContext = parentSpan ? trace.setSpan(context.active(), parentSpan) : undefined;
- return spanContext;
- }
- getRootSpanAttributes() {
- const spanId = context.active().getValue(rootSpanIdKey);
- return rootSpanAttributesStore.get(spanId);
- }
-}
-const getTracer = (()=>{
- const tracer = new NextTracerImpl();
- return ()=>tracer;
-})(); //# sourceMappingURL=tracer.js.map
-
-
-/***/ }),
-
-/***/ 5387:
-/***/ (() => {
-
-/**
- * Polyfills the `Headers.getAll(name)` method so it'll work in the edge
- * runtime.
- */
-if (!("getAll" in Headers.prototype)) {
- // @ts-expect-error - this is polyfilling this method so it doesn't exist yet
- Headers.prototype.getAll = function(name) {
- name = name.toLowerCase();
- if (name !== "set-cookie") throw new Error("Headers.getAll is only supported for Set-Cookie header");
- const headers = [
- ...this.entries()
- ].filter(([key])=>key === name);
- return headers.map(([, value])=>value);
- };
-} //# sourceMappingURL=node-polyfill-headers.js.map
-
-
-/***/ }),
-
-/***/ 222:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- PageSignatureError: function() {
- return PageSignatureError;
- },
- RemovedPageError: function() {
- return RemovedPageError;
- },
- RemovedUAError: function() {
- return RemovedUAError;
- }
-});
-class PageSignatureError extends Error {
- constructor({ page }){
- super(`The middleware "${page}" accepts an async API directly with the form:
-
- export function middleware(request, event) {
- return NextResponse.redirect('/new-location')
- }
-
- Read more: https://nextjs.org/docs/messages/middleware-new-signature
- `);
- }
-}
-class RemovedPageError extends Error {
- constructor(){
- super(`The request.page has been deprecated in favour of \`URLPattern\`.
- Read more: https://nextjs.org/docs/messages/middleware-request-page
- `);
- }
-}
-class RemovedUAError extends Error {
- constructor(){
- super(`The request.ua has been removed in favour of \`userAgent\` function.
- Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent
- `);
- }
-} //# sourceMappingURL=error.js.map
-
-
-/***/ }),
-
-/***/ 1183:
-/***/ ((__unused_webpack_module, exports) => {
-
-/**
- * List of valid HTTP methods that can be implemented by Next.js's Custom App
- * Routes.
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- HTTP_METHODS: function() {
- return HTTP_METHODS;
- },
- isHTTPMethod: function() {
- return isHTTPMethod;
- }
-});
-const HTTP_METHODS = [
- "GET",
- "HEAD",
- "OPTIONS",
- "POST",
- "PUT",
- "DELETE",
- "PATCH"
-];
-function isHTTPMethod(maybeMethod) {
- return HTTP_METHODS.includes(maybeMethod);
-} //# sourceMappingURL=http.js.map
-
-
-/***/ }),
-
-/***/ 3369:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "NextURL", ({
- enumerable: true,
- get: function() {
- return NextURL;
- }
-}));
-const _detectdomainlocale = __webpack_require__(2207);
-const _formatnextpathnameinfo = __webpack_require__(7723);
-const _gethostname = __webpack_require__(6056);
-const _getnextpathnameinfo = __webpack_require__(9433);
-const REGEX_LOCALHOST_HOSTNAME = /(?!^https?:\/\/)(127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|::1|localhost)/;
-function parseURL(url, base) {
- return new URL(String(url).replace(REGEX_LOCALHOST_HOSTNAME, "localhost"), base && String(base).replace(REGEX_LOCALHOST_HOSTNAME, "localhost"));
-}
-const Internal = Symbol("NextURLInternal");
-class NextURL {
- constructor(input, baseOrOpts, opts){
- let base;
- let options;
- if (typeof baseOrOpts === "object" && "pathname" in baseOrOpts || typeof baseOrOpts === "string") {
- base = baseOrOpts;
- options = opts || {};
- } else {
- options = opts || baseOrOpts || {};
- }
- this[Internal] = {
- url: parseURL(input, base ?? options.base),
- options: options,
- basePath: ""
- };
- this.analyze();
- }
- analyze() {
- var _this_Internal_options_nextConfig, _this_Internal_options_nextConfig_i18n, _this_Internal_domainLocale, _this_Internal_options_nextConfig1, _this_Internal_options_nextConfig_i18n1;
- const info = (0, _getnextpathnameinfo.getNextPathnameInfo)(this[Internal].url.pathname, {
- nextConfig: this[Internal].options.nextConfig,
- parseData: !undefined,
- i18nProvider: this[Internal].options.i18nProvider
- });
- const hostname = (0, _gethostname.getHostname)(this[Internal].url, this[Internal].options.headers);
- this[Internal].domainLocale = this[Internal].options.i18nProvider ? this[Internal].options.i18nProvider.detectDomainLocale(hostname) : (0, _detectdomainlocale.detectDomainLocale)((_this_Internal_options_nextConfig = this[Internal].options.nextConfig) == null ? void 0 : (_this_Internal_options_nextConfig_i18n = _this_Internal_options_nextConfig.i18n) == null ? void 0 : _this_Internal_options_nextConfig_i18n.domains, hostname);
- const defaultLocale = ((_this_Internal_domainLocale = this[Internal].domainLocale) == null ? void 0 : _this_Internal_domainLocale.defaultLocale) || ((_this_Internal_options_nextConfig1 = this[Internal].options.nextConfig) == null ? void 0 : (_this_Internal_options_nextConfig_i18n1 = _this_Internal_options_nextConfig1.i18n) == null ? void 0 : _this_Internal_options_nextConfig_i18n1.defaultLocale);
- this[Internal].url.pathname = info.pathname;
- this[Internal].defaultLocale = defaultLocale;
- this[Internal].basePath = info.basePath ?? "";
- this[Internal].buildId = info.buildId;
- this[Internal].locale = info.locale ?? defaultLocale;
- this[Internal].trailingSlash = info.trailingSlash;
- }
- formatPathname() {
- return (0, _formatnextpathnameinfo.formatNextPathnameInfo)({
- basePath: this[Internal].basePath,
- buildId: this[Internal].buildId,
- defaultLocale: !this[Internal].options.forceLocale ? this[Internal].defaultLocale : undefined,
- locale: this[Internal].locale,
- pathname: this[Internal].url.pathname,
- trailingSlash: this[Internal].trailingSlash
- });
- }
- formatSearch() {
- return this[Internal].url.search;
- }
- get buildId() {
- return this[Internal].buildId;
- }
- set buildId(buildId) {
- this[Internal].buildId = buildId;
- }
- get locale() {
- return this[Internal].locale ?? "";
- }
- set locale(locale) {
- var _this_Internal_options_nextConfig, _this_Internal_options_nextConfig_i18n;
- if (!this[Internal].locale || !((_this_Internal_options_nextConfig = this[Internal].options.nextConfig) == null ? void 0 : (_this_Internal_options_nextConfig_i18n = _this_Internal_options_nextConfig.i18n) == null ? void 0 : _this_Internal_options_nextConfig_i18n.locales.includes(locale))) {
- throw new TypeError(`The NextURL configuration includes no locale "${locale}"`);
- }
- this[Internal].locale = locale;
- }
- get defaultLocale() {
- return this[Internal].defaultLocale;
- }
- get domainLocale() {
- return this[Internal].domainLocale;
- }
- get searchParams() {
- return this[Internal].url.searchParams;
- }
- get host() {
- return this[Internal].url.host;
- }
- set host(value) {
- this[Internal].url.host = value;
- }
- get hostname() {
- return this[Internal].url.hostname;
- }
- set hostname(value) {
- this[Internal].url.hostname = value;
- }
- get port() {
- return this[Internal].url.port;
- }
- set port(value) {
- this[Internal].url.port = value;
- }
- get protocol() {
- return this[Internal].url.protocol;
- }
- set protocol(value) {
- this[Internal].url.protocol = value;
- }
- get href() {
- const pathname = this.formatPathname();
- const search = this.formatSearch();
- return `${this.protocol}//${this.host}${pathname}${search}${this.hash}`;
- }
- set href(url) {
- this[Internal].url = parseURL(url);
- this.analyze();
- }
- get origin() {
- return this[Internal].url.origin;
- }
- get pathname() {
- return this[Internal].url.pathname;
- }
- set pathname(value) {
- this[Internal].url.pathname = value;
- }
- get hash() {
- return this[Internal].url.hash;
- }
- set hash(value) {
- this[Internal].url.hash = value;
- }
- get search() {
- return this[Internal].url.search;
- }
- set search(value) {
- this[Internal].url.search = value;
- }
- get password() {
- return this[Internal].url.password;
- }
- set password(value) {
- this[Internal].url.password = value;
- }
- get username() {
- return this[Internal].url.username;
- }
- set username(value) {
- this[Internal].url.username = value;
- }
- get basePath() {
- return this[Internal].basePath;
- }
- set basePath(value) {
- this[Internal].basePath = value.startsWith("/") ? value : `/${value}`;
- }
- toString() {
- return this.href;
- }
- toJSON() {
- return this.href;
- }
- [Symbol.for("edge-runtime.inspect.custom")]() {
- return {
- href: this.href,
- origin: this.origin,
- protocol: this.protocol,
- username: this.username,
- password: this.password,
- host: this.host,
- hostname: this.hostname,
- port: this.port,
- pathname: this.pathname,
- search: this.search,
- searchParams: this.searchParams,
- hash: this.hash
- };
- }
- clone() {
- return new NextURL(String(this), this[Internal].options);
- }
-} //# sourceMappingURL=next-url.js.map
-
-
-/***/ }),
-
-/***/ 7304:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- ReadonlyHeadersError: function() {
- return ReadonlyHeadersError;
- },
- HeadersAdapter: function() {
- return HeadersAdapter;
- }
-});
-const _reflect = __webpack_require__(9470);
-class ReadonlyHeadersError extends Error {
- constructor(){
- super("Headers cannot be modified. Read more: https://nextjs.org/docs/api-reference/headers");
- }
- static callable() {
- throw new ReadonlyHeadersError();
- }
-}
-class HeadersAdapter extends Headers {
- constructor(headers){
- // We've already overridden the methods that would be called, so we're just
- // calling the super constructor to ensure that the instanceof check works.
- super();
- this.headers = new Proxy(headers, {
- get (target, prop, receiver) {
- // Because this is just an object, we expect that all "get" operations
- // are for properties. If it's a "get" for a symbol, we'll just return
- // the symbol.
- if (typeof prop === "symbol") {
- return _reflect.ReflectAdapter.get(target, prop, receiver);
- }
- const lowercased = prop.toLowerCase();
- // Let's find the original casing of the key. This assumes that there is
- // no mixed case keys (e.g. "Content-Type" and "content-type") in the
- // headers object.
- const original = Object.keys(headers).find((o)=>o.toLowerCase() === lowercased);
- // If the original casing doesn't exist, return undefined.
- if (typeof original === "undefined") return;
- // If the original casing exists, return the value.
- return _reflect.ReflectAdapter.get(target, original, receiver);
- },
- set (target, prop, value, receiver) {
- if (typeof prop === "symbol") {
- return _reflect.ReflectAdapter.set(target, prop, value, receiver);
- }
- const lowercased = prop.toLowerCase();
- // Let's find the original casing of the key. This assumes that there is
- // no mixed case keys (e.g. "Content-Type" and "content-type") in the
- // headers object.
- const original = Object.keys(headers).find((o)=>o.toLowerCase() === lowercased);
- // If the original casing doesn't exist, use the prop as the key.
- return _reflect.ReflectAdapter.set(target, original ?? prop, value, receiver);
- },
- has (target, prop) {
- if (typeof prop === "symbol") return _reflect.ReflectAdapter.has(target, prop);
- const lowercased = prop.toLowerCase();
- // Let's find the original casing of the key. This assumes that there is
- // no mixed case keys (e.g. "Content-Type" and "content-type") in the
- // headers object.
- const original = Object.keys(headers).find((o)=>o.toLowerCase() === lowercased);
- // If the original casing doesn't exist, return false.
- if (typeof original === "undefined") return false;
- // If the original casing exists, return true.
- return _reflect.ReflectAdapter.has(target, original);
- },
- deleteProperty (target, prop) {
- if (typeof prop === "symbol") return _reflect.ReflectAdapter.deleteProperty(target, prop);
- const lowercased = prop.toLowerCase();
- // Let's find the original casing of the key. This assumes that there is
- // no mixed case keys (e.g. "Content-Type" and "content-type") in the
- // headers object.
- const original = Object.keys(headers).find((o)=>o.toLowerCase() === lowercased);
- // If the original casing doesn't exist, return true.
- if (typeof original === "undefined") return true;
- // If the original casing exists, delete the property.
- return _reflect.ReflectAdapter.deleteProperty(target, original);
- }
- });
- }
- /**
- * Seals a Headers instance to prevent modification by throwing an error when
- * any mutating method is called.
- */ static seal(headers) {
- return new Proxy(headers, {
- get (target, prop, receiver) {
- switch(prop){
- case "append":
- case "delete":
- case "set":
- return ReadonlyHeadersError.callable;
- default:
- return _reflect.ReflectAdapter.get(target, prop, receiver);
- }
- }
- });
- }
- /**
- * Merges a header value into a string. This stores multiple values as an
- * array, so we need to merge them into a string.
- *
- * @param value a header value
- * @returns a merged header value (a string)
- */ merge(value) {
- if (Array.isArray(value)) return value.join(", ");
- return value;
- }
- /**
- * Creates a Headers instance from a plain object or a Headers instance.
- *
- * @param headers a plain object or a Headers instance
- * @returns a headers instance
- */ static from(headers) {
- if (headers instanceof Headers) return headers;
- return new HeadersAdapter(headers);
- }
- append(name, value) {
- const existing = this.headers[name];
- if (typeof existing === "string") {
- this.headers[name] = [
- existing,
- value
- ];
- } else if (Array.isArray(existing)) {
- existing.push(value);
- } else {
- this.headers[name] = value;
- }
- }
- delete(name) {
- delete this.headers[name];
- }
- get(name) {
- const value = this.headers[name];
- if (typeof value !== "undefined") return this.merge(value);
- return null;
- }
- has(name) {
- return typeof this.headers[name] !== "undefined";
- }
- set(name, value) {
- this.headers[name] = value;
- }
- forEach(callbackfn, thisArg) {
- for (const [name, value] of this.entries()){
- callbackfn.call(thisArg, value, name, this);
- }
- }
- *entries() {
- for (const key of Object.keys(this.headers)){
- const name = key.toLowerCase();
- // We assert here that this is a string because we got it from the
- // Object.keys() call above.
- const value = this.get(name);
- yield [
- name,
- value
- ];
- }
- }
- *keys() {
- for (const key of Object.keys(this.headers)){
- const name = key.toLowerCase();
- yield name;
- }
- }
- *values() {
- for (const key of Object.keys(this.headers)){
- // We assert here that this is a string because we got it from the
- // Object.keys() call above.
- const value = this.get(key);
- yield value;
- }
- }
- [Symbol.iterator]() {
- return this.entries();
- }
-} //# sourceMappingURL=headers.js.map
-
-
-/***/ }),
-
-/***/ 9470:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "ReflectAdapter", ({
- enumerable: true,
- get: function() {
- return ReflectAdapter;
- }
-}));
-class ReflectAdapter {
- static get(target, prop, receiver) {
- const value = Reflect.get(target, prop, receiver);
- if (typeof value === "function") {
- return value.bind(target);
- }
- return value;
- }
- static set(target, prop, value, receiver) {
- return Reflect.set(target, prop, value, receiver);
- }
- static has(target, prop) {
- return Reflect.has(target, prop);
- }
- static deleteProperty(target, prop) {
- return Reflect.deleteProperty(target, prop);
- }
-} //# sourceMappingURL=reflect.js.map
-
-
-/***/ }),
-
-/***/ 8661:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- ReadonlyRequestCookiesError: function() {
- return ReadonlyRequestCookiesError;
- },
- RequestCookiesAdapter: function() {
- return RequestCookiesAdapter;
- },
- appendMutableCookies: function() {
- return appendMutableCookies;
- },
- MutableRequestCookiesAdapter: function() {
- return MutableRequestCookiesAdapter;
- }
-});
-const _cookies = __webpack_require__(4521);
-const _reflect = __webpack_require__(9470);
-class ReadonlyRequestCookiesError extends Error {
- constructor(){
- super("Cookies can only be modified in a Server Action or Route Handler. Read more: https://nextjs.org/docs/app/api-reference/functions/cookies#cookiessetname-value-options");
- }
- static callable() {
- throw new ReadonlyRequestCookiesError();
- }
-}
-class RequestCookiesAdapter {
- static seal(cookies) {
- return new Proxy(cookies, {
- get (target, prop, receiver) {
- switch(prop){
- case "clear":
- case "delete":
- case "set":
- return ReadonlyRequestCookiesError.callable;
- default:
- return _reflect.ReflectAdapter.get(target, prop, receiver);
- }
- }
- });
- }
-}
-const SYMBOL_MODIFY_COOKIE_VALUES = Symbol.for("next.mutated.cookies");
-function getModifiedCookieValues(cookies) {
- const modified = cookies[SYMBOL_MODIFY_COOKIE_VALUES];
- if (!modified || !Array.isArray(modified) || modified.length === 0) {
- return [];
- }
- return modified;
-}
-function appendMutableCookies(headers, mutableCookies) {
- const modifiedCookieValues = getModifiedCookieValues(mutableCookies);
- if (modifiedCookieValues.length === 0) {
- return false;
- }
- // Return a new response that extends the response with
- // the modified cookies as fallbacks. `res`' cookies
- // will still take precedence.
- const resCookies = new _cookies.ResponseCookies(headers);
- const returnedCookies = resCookies.getAll();
- // Set the modified cookies as fallbacks.
- for (const cookie of modifiedCookieValues){
- resCookies.set(cookie);
- }
- // Set the original cookies as the final values.
- for (const cookie of returnedCookies){
- resCookies.set(cookie);
- }
- return true;
-}
-class MutableRequestCookiesAdapter {
- static wrap(cookies, res) {
- const responseCookes = new _cookies.ResponseCookies(new Headers());
- for (const cookie of cookies.getAll()){
- responseCookes.set(cookie);
- }
- let modifiedValues = [];
- const modifiedCookies = new Set();
- const updateResponseCookies = ()=>{
- var _fetch___nextGetStaticStore;
- // TODO-APP: change method of getting staticGenerationAsyncStore
- const staticGenerationAsyncStore = fetch.__nextGetStaticStore == null ? void 0 : (_fetch___nextGetStaticStore = fetch.__nextGetStaticStore()) == null ? void 0 : _fetch___nextGetStaticStore.getStore();
- if (staticGenerationAsyncStore) {
- staticGenerationAsyncStore.pathWasRevalidated = true;
- }
- const allCookies = responseCookes.getAll();
- modifiedValues = allCookies.filter((c)=>modifiedCookies.has(c.name));
- if (res) {
- const serializedCookies = [];
- for (const cookie of modifiedValues){
- const tempCookies = new _cookies.ResponseCookies(new Headers());
- tempCookies.set(cookie);
- serializedCookies.push(tempCookies.toString());
- }
- res.setHeader("Set-Cookie", serializedCookies);
- }
- };
- return new Proxy(responseCookes, {
- get (target, prop, receiver) {
- switch(prop){
- // A special symbol to get the modified cookie values
- case SYMBOL_MODIFY_COOKIE_VALUES:
- return modifiedValues;
- // TODO: Throw error if trying to set a cookie after the response
- // headers have been set.
- case "delete":
- return function(...args) {
- modifiedCookies.add(typeof args[0] === "string" ? args[0] : args[0].name);
- try {
- target.delete(...args);
- } finally{
- updateResponseCookies();
- }
- };
- case "set":
- return function(...args) {
- modifiedCookies.add(typeof args[0] === "string" ? args[0] : args[0].name);
- try {
- return target.set(...args);
- } finally{
- updateResponseCookies();
- }
- };
- default:
- return _reflect.ReflectAdapter.get(target, prop, receiver);
- }
- }
- });
- }
-} //# sourceMappingURL=request-cookies.js.map
-
-
-/***/ }),
-
-/***/ 4521:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- RequestCookies: function() {
- return _cookies.RequestCookies;
- },
- ResponseCookies: function() {
- return _cookies.ResponseCookies;
- }
-});
-const _cookies = __webpack_require__(7783); //# sourceMappingURL=cookies.js.map
-
-
-/***/ }),
-
-/***/ 7970:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-var __webpack_unused_export__;
-
-__webpack_unused_export__ = ({
- value: true
-});
-Object.defineProperty(exports, "E", ({
- enumerable: true,
- get: function() {
- return ImageResponse;
- }
-}));
-class ImageResponse {
- constructor(...args){
- // @ts-expect-error - process.turbopack is a custom property
- if (false) {} else {
- const readable = new ReadableStream({
- async start (controller) {
- const OGImageResponse = // as the auto resolving is not working
- (await Promise.resolve(/* import() */).then(__webpack_require__.bind(__webpack_require__, 4021))).ImageResponse;
- const imageResponse = new OGImageResponse(...args);
- if (!imageResponse.body) {
- return controller.close();
- }
- const reader = imageResponse.body.getReader();
- while(true){
- const { done , value } = await reader.read();
- if (done) {
- return controller.close();
- }
- controller.enqueue(value);
- }
- }
- });
- const options = args[1] || {};
- return new Response(readable, {
- headers: {
- "content-type": "image/png",
- "cache-control": false ? 0 : "public, immutable, no-transform, max-age=31536000",
- ...options.headers
- },
- status: options.status,
- statusText: options.statusText
- });
- }
- }
-} //# sourceMappingURL=image-response.js.map
-
-
-/***/ }),
-
-/***/ 6569:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- INTERNALS: function() {
- return INTERNALS;
- },
- NextRequest: function() {
- return NextRequest;
- }
-});
-const _nexturl = __webpack_require__(3369);
-const _utils = __webpack_require__(7252);
-const _error = __webpack_require__(222);
-const _cookies = __webpack_require__(4521);
-const INTERNALS = Symbol("internal request");
-class NextRequest extends Request {
- constructor(input, init = {}){
- const url = typeof input !== "string" && "url" in input ? input.url : String(input);
- (0, _utils.validateURL)(url);
- super(url, init);
- const nextUrl = new _nexturl.NextURL(url, {
- headers: (0, _utils.toNodeHeaders)(this.headers),
- nextConfig: init.nextConfig
- });
- this[INTERNALS] = {
- cookies: new _cookies.RequestCookies(this.headers),
- geo: init.geo || {},
- ip: init.ip,
- nextUrl,
- url: false ? 0 : nextUrl.toString()
- };
- }
- [Symbol.for("edge-runtime.inspect.custom")]() {
- return {
- cookies: this.cookies,
- geo: this.geo,
- ip: this.ip,
- nextUrl: this.nextUrl,
- url: this.url,
- // rest of props come from Request
- bodyUsed: this.bodyUsed,
- cache: this.cache,
- credentials: this.credentials,
- destination: this.destination,
- headers: Object.fromEntries(this.headers),
- integrity: this.integrity,
- keepalive: this.keepalive,
- method: this.method,
- mode: this.mode,
- redirect: this.redirect,
- referrer: this.referrer,
- referrerPolicy: this.referrerPolicy,
- signal: this.signal
- };
- }
- get cookies() {
- return this[INTERNALS].cookies;
- }
- get geo() {
- return this[INTERNALS].geo;
- }
- get ip() {
- return this[INTERNALS].ip;
- }
- get nextUrl() {
- return this[INTERNALS].nextUrl;
- }
- /**
- * @deprecated
- * `page` has been deprecated in favour of `URLPattern`.
- * Read more: https://nextjs.org/docs/messages/middleware-request-page
- */ get page() {
- throw new _error.RemovedPageError();
- }
- /**
- * @deprecated
- * `ua` has been removed in favour of \`userAgent\` function.
- * Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent
- */ get ua() {
- throw new _error.RemovedUAError();
- }
- get url() {
- return this[INTERNALS].url;
- }
-} //# sourceMappingURL=request.js.map
-
-
-/***/ }),
-
-/***/ 2917:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-var __webpack_unused_export__;
-
-__webpack_unused_export__ = ({
- value: true
-});
-Object.defineProperty(exports, "x", ({
- enumerable: true,
- get: function() {
- return NextResponse;
- }
-}));
-const _nexturl = __webpack_require__(3369);
-const _utils = __webpack_require__(7252);
-const _cookies = __webpack_require__(4521);
-const INTERNALS = Symbol("internal response");
-const REDIRECTS = new Set([
- 301,
- 302,
- 303,
- 307,
- 308
-]);
-function handleMiddlewareField(init, headers) {
- var _init_request;
- if (init == null ? void 0 : (_init_request = init.request) == null ? void 0 : _init_request.headers) {
- if (!(init.request.headers instanceof Headers)) {
- throw new Error("request.headers must be an instance of Headers");
- }
- const keys = [];
- for (const [key, value] of init.request.headers){
- headers.set("x-middleware-request-" + key, value);
- keys.push(key);
- }
- headers.set("x-middleware-override-headers", keys.join(","));
- }
-}
-class NextResponse extends Response {
- constructor(body, init = {}){
- super(body, init);
- this[INTERNALS] = {
- cookies: new _cookies.ResponseCookies(this.headers),
- url: init.url ? new _nexturl.NextURL(init.url, {
- headers: (0, _utils.toNodeHeaders)(this.headers),
- nextConfig: init.nextConfig
- }) : undefined
- };
- }
- [Symbol.for("edge-runtime.inspect.custom")]() {
- return {
- cookies: this.cookies,
- url: this.url,
- // rest of props come from Response
- body: this.body,
- bodyUsed: this.bodyUsed,
- headers: Object.fromEntries(this.headers),
- ok: this.ok,
- redirected: this.redirected,
- status: this.status,
- statusText: this.statusText,
- type: this.type
- };
- }
- get cookies() {
- return this[INTERNALS].cookies;
- }
- static json(body, init) {
- // @ts-expect-error This is not in lib/dom right now, and we can't augment it.
- const response = Response.json(body, init);
- return new NextResponse(response.body, response);
- }
- static redirect(url, init) {
- const status = typeof init === "number" ? init : (init == null ? void 0 : init.status) ?? 307;
- if (!REDIRECTS.has(status)) {
- throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');
- }
- const initObj = typeof init === "object" ? init : {};
- const headers = new Headers(initObj == null ? void 0 : initObj.headers);
- headers.set("Location", (0, _utils.validateURL)(url));
- return new NextResponse(null, {
- ...initObj,
- headers,
- status
- });
- }
- static rewrite(destination, init) {
- const headers = new Headers(init == null ? void 0 : init.headers);
- headers.set("x-middleware-rewrite", (0, _utils.validateURL)(destination));
- handleMiddlewareField(init, headers);
- return new NextResponse(null, {
- ...init,
- headers
- });
- }
- static next(init) {
- const headers = new Headers(init == null ? void 0 : init.headers);
- headers.set("x-middleware-next", "1");
- handleMiddlewareField(init, headers);
- return new NextResponse(null, {
- ...init,
- headers
- });
- }
-} //# sourceMappingURL=response.js.map
-
-
-/***/ }),
-
-/***/ 1789:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- isBot: function() {
- return isBot;
- },
- userAgentFromString: function() {
- return userAgentFromString;
- },
- userAgent: function() {
- return userAgent;
- }
-});
-const _uaparserjs = /*#__PURE__*/ _interop_require_default(__webpack_require__(2196));
-function _interop_require_default(obj) {
- return obj && obj.__esModule ? obj : {
- default: obj
- };
-}
-function isBot(input) {
- return /Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver/i.test(input);
-}
-function userAgentFromString(input) {
- return {
- ...(0, _uaparserjs.default)(input),
- isBot: input === undefined ? false : isBot(input)
- };
-}
-function userAgent({ headers }) {
- return userAgentFromString(headers.get("user-agent") || undefined);
-} //# sourceMappingURL=user-agent.js.map
-
-
-/***/ }),
-
-/***/ 7252:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- fromNodeHeaders: function() {
- return fromNodeHeaders;
- },
- splitCookiesString: function() {
- return splitCookiesString;
- },
- toNodeHeaders: function() {
- return toNodeHeaders;
- },
- validateURL: function() {
- return validateURL;
- }
-});
-function fromNodeHeaders(object) {
- const headers = new Headers();
- for (let [key, value] of Object.entries(object)){
- const values = Array.isArray(value) ? value : [
- value
- ];
- for (let v of values){
- if (typeof v === "undefined") continue;
- if (typeof v === "number") {
- v = v.toString();
- }
- headers.append(key, v);
- }
- }
- return headers;
-}
-function splitCookiesString(cookiesString) {
- var cookiesStrings = [];
- var pos = 0;
- var start;
- var ch;
- var lastComma;
- var nextStart;
- var cookiesSeparatorFound;
- function skipWhitespace() {
- while(pos < cookiesString.length && /\s/.test(cookiesString.charAt(pos))){
- pos += 1;
- }
- return pos < cookiesString.length;
- }
- function notSpecialChar() {
- ch = cookiesString.charAt(pos);
- return ch !== "=" && ch !== ";" && ch !== ",";
- }
- while(pos < cookiesString.length){
- start = pos;
- cookiesSeparatorFound = false;
- while(skipWhitespace()){
- ch = cookiesString.charAt(pos);
- if (ch === ",") {
- // ',' is a cookie separator if we have later first '=', not ';' or ','
- lastComma = pos;
- pos += 1;
- skipWhitespace();
- nextStart = pos;
- while(pos < cookiesString.length && notSpecialChar()){
- pos += 1;
- }
- // currently special character
- if (pos < cookiesString.length && cookiesString.charAt(pos) === "=") {
- // we found cookies separator
- cookiesSeparatorFound = true;
- // pos is inside the next cookie, so back up and return it.
- pos = nextStart;
- cookiesStrings.push(cookiesString.substring(start, lastComma));
- start = pos;
- } else {
- // in param ',' or param separator ';',
- // we continue from that comma
- pos = lastComma + 1;
- }
- } else {
- pos += 1;
- }
- }
- if (!cookiesSeparatorFound || pos >= cookiesString.length) {
- cookiesStrings.push(cookiesString.substring(start, cookiesString.length));
- }
- }
- return cookiesStrings;
-}
-function toNodeHeaders(headers) {
- const result = {};
- const cookies = [];
- if (headers) {
- for (const [key, value] of headers.entries()){
- if (key.toLowerCase() === "set-cookie") {
- // We may have gotten a comma joined string of cookies, or multiple
- // set-cookie headers. We need to merge them into one header array
- // to represent all the cookies.
- cookies.push(...splitCookiesString(value));
- result[key] = cookies.length === 1 ? cookies[0] : cookies;
- } else {
- result[key] = value;
- }
- }
- }
- return result;
-}
-function validateURL(url) {
- try {
- return String(new URL(String(url)));
- } catch (error) {
- throw new Error(`URL is malformed "${String(url)}". Please use only absolute URLs - https://nextjs.org/docs/messages/middleware-relative-urls`, {
- cause: error
- });
- }
-} //# sourceMappingURL=utils.js.map
-
-
-/***/ }),
-
-/***/ 6056:
-/***/ ((__unused_webpack_module, exports) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "getHostname", ({
- enumerable: true,
- get: function() {
- return getHostname;
- }
-}));
-function getHostname(parsed, headers) {
- // Get the hostname from the headers if it exists, otherwise use the parsed
- // hostname.
- let hostname;
- if ((headers == null ? void 0 : headers.host) && !Array.isArray(headers.host)) {
- hostname = headers.host.toString().split(":")[0];
- } else if (parsed.hostname) {
- hostname = parsed.hostname;
- } else return;
- return hostname.toLowerCase();
-} //# sourceMappingURL=get-hostname.js.map
-
-
-/***/ }),
-
-/***/ 5723:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "addLocale", ({
- enumerable: true,
- get: function() {
- return addLocale;
- }
-}));
-const _addpathprefix = __webpack_require__(2610);
-const _pathhasprefix = __webpack_require__(1342);
-function addLocale(path, locale, defaultLocale, ignorePrefix) {
- // If no locale was given or the locale is the default locale, we don't need
- // to prefix the path.
- if (!locale || locale === defaultLocale) return path;
- const lower = path.toLowerCase();
- // If the path is an API path or the path already has the locale prefix, we
- // don't need to prefix the path.
- if (!ignorePrefix) {
- if ((0, _pathhasprefix.pathHasPrefix)(lower, "/api")) return path;
- if ((0, _pathhasprefix.pathHasPrefix)(lower, "/" + locale.toLowerCase())) return path;
- }
- // Add the locale prefix to the path.
- return (0, _addpathprefix.addPathPrefix)(path, "/" + locale);
-} //# sourceMappingURL=add-locale.js.map
-
-
-/***/ }),
-
-/***/ 2610:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "addPathPrefix", ({
- enumerable: true,
- get: function() {
- return addPathPrefix;
- }
-}));
-const _parsepath = __webpack_require__(5084);
-function addPathPrefix(path, prefix) {
- if (!path.startsWith("/") || !prefix) {
- return path;
- }
- const { pathname , query , hash } = (0, _parsepath.parsePath)(path);
- return "" + prefix + pathname + query + hash;
-} //# sourceMappingURL=add-path-prefix.js.map
-
-
-/***/ }),
-
-/***/ 7928:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "addPathSuffix", ({
- enumerable: true,
- get: function() {
- return addPathSuffix;
- }
-}));
-const _parsepath = __webpack_require__(5084);
-function addPathSuffix(path, suffix) {
- if (!path.startsWith("/") || !suffix) {
- return path;
- }
- const { pathname , query , hash } = (0, _parsepath.parsePath)(path);
- return "" + pathname + suffix + query + hash;
-} //# sourceMappingURL=add-path-suffix.js.map
-
-
-/***/ }),
-
-/***/ 7723:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "formatNextPathnameInfo", ({
- enumerable: true,
- get: function() {
- return formatNextPathnameInfo;
- }
-}));
-const _removetrailingslash = __webpack_require__(465);
-const _addpathprefix = __webpack_require__(2610);
-const _addpathsuffix = __webpack_require__(7928);
-const _addlocale = __webpack_require__(5723);
-function formatNextPathnameInfo(info) {
- let pathname = (0, _addlocale.addLocale)(info.pathname, info.locale, info.buildId ? undefined : info.defaultLocale, info.ignorePrefix);
- if (info.buildId || !info.trailingSlash) {
- pathname = (0, _removetrailingslash.removeTrailingSlash)(pathname);
- }
- if (info.buildId) {
- pathname = (0, _addpathsuffix.addPathSuffix)((0, _addpathprefix.addPathPrefix)(pathname, "/_next/data/" + info.buildId), info.pathname === "/" ? "index.json" : ".json");
- }
- pathname = (0, _addpathprefix.addPathPrefix)(pathname, info.basePath);
- return !info.buildId && info.trailingSlash ? !pathname.endsWith("/") ? (0, _addpathsuffix.addPathSuffix)(pathname, "/") : pathname : (0, _removetrailingslash.removeTrailingSlash)(pathname);
-} //# sourceMappingURL=format-next-pathname-info.js.map
-
-
-/***/ }),
-
-/***/ 9433:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "getNextPathnameInfo", ({
- enumerable: true,
- get: function() {
- return getNextPathnameInfo;
- }
-}));
-const _normalizelocalepath = __webpack_require__(9962);
-const _removepathprefix = __webpack_require__(1507);
-const _pathhasprefix = __webpack_require__(1342);
-function getNextPathnameInfo(pathname, options) {
- var _options_nextConfig;
- const { basePath , i18n , trailingSlash } = (_options_nextConfig = options.nextConfig) != null ? _options_nextConfig : {};
- const info = {
- pathname: pathname,
- trailingSlash: pathname !== "/" ? pathname.endsWith("/") : trailingSlash
- };
- if (basePath && (0, _pathhasprefix.pathHasPrefix)(info.pathname, basePath)) {
- info.pathname = (0, _removepathprefix.removePathPrefix)(info.pathname, basePath);
- info.basePath = basePath;
- }
- if (options.parseData === true && info.pathname.startsWith("/_next/data/") && info.pathname.endsWith(".json")) {
- const paths = info.pathname.replace(/^\/_next\/data\//, "").replace(/\.json$/, "").split("/");
- const buildId = paths[0];
- info.pathname = paths[1] !== "index" ? "/" + paths.slice(1).join("/") : "/";
- info.buildId = buildId;
- }
- // If provided, use the locale route normalizer to detect the locale instead
- // of the function below.
- if (options.i18nProvider) {
- const result = options.i18nProvider.analyze(info.pathname);
- info.locale = result.detectedLocale;
- var _result_pathname;
- info.pathname = (_result_pathname = result.pathname) != null ? _result_pathname : info.pathname;
- } else if (i18n) {
- const pathLocale = (0, _normalizelocalepath.normalizeLocalePath)(info.pathname, i18n.locales);
- info.locale = pathLocale.detectedLocale;
- var _pathLocale_pathname;
- info.pathname = (_pathLocale_pathname = pathLocale.pathname) != null ? _pathLocale_pathname : info.pathname;
- }
- return info;
-} //# sourceMappingURL=get-next-pathname-info.js.map
-
-
-/***/ }),
-
-/***/ 5084:
-/***/ ((__unused_webpack_module, exports) => {
-
-/**
- * Given a path this function will find the pathname, query and hash and return
- * them. This is useful to parse full paths on the client side.
- * @param path A path to parse e.g. /foo/bar?id=1#hash
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "parsePath", ({
- enumerable: true,
- get: function() {
- return parsePath;
- }
-}));
-function parsePath(path) {
- const hashIndex = path.indexOf("#");
- const queryIndex = path.indexOf("?");
- const hasQuery = queryIndex > -1 && (hashIndex < 0 || queryIndex < hashIndex);
- if (hasQuery || hashIndex > -1) {
- return {
- pathname: path.substring(0, hasQuery ? queryIndex : hashIndex),
- query: hasQuery ? path.substring(queryIndex, hashIndex > -1 ? hashIndex : undefined) : "",
- hash: hashIndex > -1 ? path.slice(hashIndex) : ""
- };
- }
- return {
- pathname: path,
- query: "",
- hash: ""
- };
-} //# sourceMappingURL=parse-path.js.map
-
-
-/***/ }),
-
-/***/ 1342:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "pathHasPrefix", ({
- enumerable: true,
- get: function() {
- return pathHasPrefix;
- }
-}));
-const _parsepath = __webpack_require__(5084);
-function pathHasPrefix(path, prefix) {
- if (typeof path !== "string") {
- return false;
- }
- const { pathname } = (0, _parsepath.parsePath)(path);
- return pathname === prefix || pathname.startsWith(prefix + "/");
-} //# sourceMappingURL=path-has-prefix.js.map
-
-
-/***/ }),
-
-/***/ 1507:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "removePathPrefix", ({
- enumerable: true,
- get: function() {
- return removePathPrefix;
- }
-}));
-const _pathhasprefix = __webpack_require__(1342);
-function removePathPrefix(path, prefix) {
- // If the path doesn't start with the prefix we can return it as is. This
- // protects us from situations where the prefix is a substring of the path
- // prefix such as:
- //
- // For prefix: /blog
- //
- // /blog -> true
- // /blog/ -> true
- // /blog/1 -> true
- // /blogging -> false
- // /blogging/ -> false
- // /blogging/1 -> false
- if (!(0, _pathhasprefix.pathHasPrefix)(path, prefix)) {
- return path;
- }
- // Remove the prefix from the path via slicing.
- const withoutPrefix = path.slice(prefix.length);
- // If the path without the prefix starts with a `/` we can return it as is.
- if (withoutPrefix.startsWith("/")) {
- return withoutPrefix;
- }
- // If the path without the prefix doesn't start with a `/` we need to add it
- // back to the path to make sure it's a valid path.
- return "/" + withoutPrefix;
-} //# sourceMappingURL=remove-path-prefix.js.map
-
-
-/***/ }),
-
-/***/ 4664:
-/***/ ((module, exports, __webpack_require__) => {
-
-
-const serverExports = {
- NextRequest: (__webpack_require__(6569).NextRequest),
- NextResponse: (__webpack_require__(2917)/* .NextResponse */ .x),
- ImageResponse: (__webpack_require__(7970)/* .ImageResponse */ .E),
- userAgentFromString: (__webpack_require__(1789).userAgentFromString),
- userAgent: (__webpack_require__(1789).userAgent)
-};
-if (typeof URLPattern !== "undefined") {
- // eslint-disable-next-line no-undef
- serverExports.URLPattern = URLPattern;
-}
-// https://nodejs.org/api/esm.html#commonjs-namespaces
-// When importing CommonJS modules, the module.exports object is provided as the default export
-module.exports = serverExports;
-// make import { xxx } from 'next/server' work
-exports.NextRequest = serverExports.NextRequest;
-exports.NextResponse = serverExports.NextResponse;
-exports.ImageResponse = serverExports.ImageResponse;
-exports.userAgentFromString = serverExports.userAgentFromString;
-exports.userAgent = serverExports.userAgent;
-exports.URLPattern = serverExports.URLPattern;
-
-
-/***/ })
-
-};
-;
\ No newline at end of file
diff --git a/.next/server/chunks/616.js b/.next/server/chunks/616.js
deleted file mode 100644
index 396dbec..0000000
--- a/.next/server/chunks/616.js
+++ /dev/null
@@ -1,9000 +0,0 @@
-exports.id = 616;
-exports.ids = [616];
-exports.modules = {
-
-/***/ 160:
-/***/ ((module) => {
-
-// Exports
-module.exports = {
- "style": {"fontFamily":"'__Inter_0ec1f4', '__Inter_Fallback_0ec1f4'","fontStyle":"normal"},
- "className": "__className_0ec1f4"
-};
-
-
-/***/ }),
-
-/***/ 739:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "addBasePath", ({
- enumerable: true,
- get: function() {
- return addBasePath;
- }
-}));
-const _addpathprefix = __webpack_require__(1751);
-const _normalizetrailingslash = __webpack_require__(6089);
-const basePath = false || "";
-function addBasePath(path, required) {
- if (false) {}
- return (0, _normalizetrailingslash.normalizePathTrailingSlash)((0, _addpathprefix.addPathPrefix)(path, basePath));
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=add-base-path.js.map
-
-
-/***/ }),
-
-/***/ 4783:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "callServer", ({
- enumerable: true,
- get: function() {
- return callServer;
- }
-}));
-const _approuter = __webpack_require__(125);
-async function callServer(actionId, actionArgs) {
- const actionDispatcher = (0, _approuter.getServerActionDispatcher)();
- if (!actionDispatcher) {
- throw new Error("Invariant: missing action dispatcher.");
- }
- return new Promise((resolve, reject)=>{
- actionDispatcher({
- actionId,
- actionArgs,
- resolve,
- reject
- });
- });
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=app-call-server.js.map
-
-
-/***/ }),
-
-/***/ 4275:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "AppRouterAnnouncer", ({
- enumerable: true,
- get: function() {
- return AppRouterAnnouncer;
- }
-}));
-const _react = __webpack_require__(8038);
-const _reactdom = __webpack_require__(8704);
-const ANNOUNCER_TYPE = "next-route-announcer";
-const ANNOUNCER_ID = "__next-route-announcer__";
-function getAnnouncerNode() {
- var _existingAnnouncer_shadowRoot;
- const existingAnnouncer = document.getElementsByName(ANNOUNCER_TYPE)[0];
- if (existingAnnouncer == null ? void 0 : (_existingAnnouncer_shadowRoot = existingAnnouncer.shadowRoot) == null ? void 0 : _existingAnnouncer_shadowRoot.childNodes[0]) {
- return existingAnnouncer.shadowRoot.childNodes[0];
- } else {
- const container = document.createElement(ANNOUNCER_TYPE);
- container.style.cssText = "position:absolute";
- const announcer = document.createElement("div");
- announcer.setAttribute("aria-live", "assertive");
- announcer.setAttribute("id", ANNOUNCER_ID);
- announcer.setAttribute("role", "alert");
- announcer.style.cssText = "position:absolute;border:0;height:1px;margin:-1px;padding:0;width:1px;clip:rect(0 0 0 0);overflow:hidden;white-space:nowrap;word-wrap:normal";
- // Use shadow DOM here to avoid any potential CSS bleed
- const shadow = container.attachShadow({
- mode: "open"
- });
- shadow.appendChild(announcer);
- document.body.appendChild(container);
- return announcer;
- }
-}
-function AppRouterAnnouncer(param) {
- let { tree } = param;
- const [portalNode, setPortalNode] = (0, _react.useState)(null);
- (0, _react.useEffect)(()=>{
- const announcer = getAnnouncerNode();
- setPortalNode(announcer);
- return ()=>{
- const container = document.getElementsByTagName(ANNOUNCER_TYPE)[0];
- if (container == null ? void 0 : container.isConnected) {
- document.body.removeChild(container);
- }
- };
- }, []);
- const [routeAnnouncement, setRouteAnnouncement] = (0, _react.useState)("");
- const previousTitle = (0, _react.useRef)();
- (0, _react.useEffect)(()=>{
- let currentTitle = "";
- if (document.title) {
- currentTitle = document.title;
- } else {
- const pageHeader = document.querySelector("h1");
- if (pageHeader) {
- currentTitle = pageHeader.innerText || pageHeader.textContent || "";
- }
- }
- // Only announce the title change, but not for the first load because screen
- // readers do that automatically.
- if (typeof previousTitle.current !== "undefined") {
- setRouteAnnouncement(currentTitle);
- }
- previousTitle.current = currentTitle;
- }, [
- tree
- ]);
- return portalNode ? /*#__PURE__*/ (0, _reactdom.createPortal)(routeAnnouncement, portalNode) : null;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=app-router-announcer.js.map
-
-
-/***/ }),
-
-/***/ 281:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- RSC: function() {
- return RSC;
- },
- ACTION: function() {
- return ACTION;
- },
- NEXT_ROUTER_STATE_TREE: function() {
- return NEXT_ROUTER_STATE_TREE;
- },
- NEXT_ROUTER_PREFETCH: function() {
- return NEXT_ROUTER_PREFETCH;
- },
- NEXT_URL: function() {
- return NEXT_URL;
- },
- FETCH_CACHE_HEADER: function() {
- return FETCH_CACHE_HEADER;
- },
- RSC_CONTENT_TYPE_HEADER: function() {
- return RSC_CONTENT_TYPE_HEADER;
- },
- RSC_VARY_HEADER: function() {
- return RSC_VARY_HEADER;
- },
- FLIGHT_PARAMETERS: function() {
- return FLIGHT_PARAMETERS;
- }
-});
-const RSC = "RSC";
-const ACTION = "Next-Action";
-const NEXT_ROUTER_STATE_TREE = "Next-Router-State-Tree";
-const NEXT_ROUTER_PREFETCH = "Next-Router-Prefetch";
-const NEXT_URL = "Next-Url";
-const FETCH_CACHE_HEADER = "x-vercel-sc-headers";
-const RSC_CONTENT_TYPE_HEADER = "text/x-component; charset=utf-8";
-const RSC_VARY_HEADER = RSC + ", " + NEXT_ROUTER_STATE_TREE + ", " + NEXT_ROUTER_PREFETCH;
-const FLIGHT_PARAMETERS = [
- [
- RSC
- ],
- [
- NEXT_ROUTER_STATE_TREE
- ],
- [
- NEXT_ROUTER_PREFETCH
- ]
-];
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=app-router-headers.js.map
-
-
-/***/ }),
-
-/***/ 125:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- getServerActionDispatcher: function() {
- return getServerActionDispatcher;
- },
- urlToUrlWithoutFlightMarker: function() {
- return urlToUrlWithoutFlightMarker;
- },
- default: function() {
- return AppRouter;
- }
-});
-const _interop_require_wildcard = __webpack_require__(1113);
-const _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(8038));
-const _approutercontext = __webpack_require__(3280);
-const _routerreducer = __webpack_require__(5192);
-const _routerreducertypes = __webpack_require__(549);
-const _createhreffromurl = __webpack_require__(8253);
-const _hooksclientcontext = __webpack_require__(9274);
-const _usereducerwithdevtools = __webpack_require__(9051);
-const _errorboundary = __webpack_require__(1522);
-const _createinitialrouterstate = __webpack_require__(3558);
-const _isbot = __webpack_require__(1897);
-const _addbasepath = __webpack_require__(739);
-const _approuterannouncer = __webpack_require__(4275);
-const _redirectboundary = __webpack_require__(606);
-const _notfoundboundary = __webpack_require__(7944);
-const _findheadincache = __webpack_require__(7997);
-const _infinitepromise = __webpack_require__(6479);
-const isServer = "undefined" === "undefined";
-// Ensure the initialParallelRoutes are not combined because of double-rendering in the browser with Strict Mode.
-let initialParallelRoutes = isServer ? null : new Map();
-let globalServerActionDispatcher = null;
-function getServerActionDispatcher() {
- return globalServerActionDispatcher;
-}
-function urlToUrlWithoutFlightMarker(url) {
- const urlWithoutFlightParameters = new URL(url, location.origin);
- // TODO-APP: handle .rsc for static export case
- return urlWithoutFlightParameters;
-}
-const HotReloader = true ? null : 0;
-function isExternalURL(url) {
- return url.origin !== window.location.origin;
-}
-function HistoryUpdater(param) {
- let { tree , pushRef , canonicalUrl , sync } = param;
- // @ts-ignore TODO-APP: useInsertionEffect is available
- _react.default.useInsertionEffect(()=>{
- // Identifier is shortened intentionally.
- // __NA is used to identify if the history entry can be handled by the app-router.
- // __N is used to identify if the history entry can be handled by the old router.
- const historyState = {
- __NA: true,
- tree
- };
- if (pushRef.pendingPush && (0, _createhreffromurl.createHrefFromUrl)(new URL(window.location.href)) !== canonicalUrl) {
- // This intentionally mutates React state, pushRef is overwritten to ensure additional push/replace calls do not trigger an additional history entry.
- pushRef.pendingPush = false;
- window.history.pushState(historyState, "", canonicalUrl);
- } else {
- window.history.replaceState(historyState, "", canonicalUrl);
- }
- sync();
- }, [
- tree,
- pushRef,
- canonicalUrl,
- sync
- ]);
- return null;
-}
-/**
- * The global router that wraps the application components.
- */ function Router(param) {
- let { initialHead , initialTree , initialCanonicalUrl , children , assetPrefix , notFound , notFoundStyles , asNotFound } = param;
- const initialState = (0, _react.useMemo)(()=>(0, _createinitialrouterstate.createInitialRouterState)({
- children,
- initialCanonicalUrl,
- initialTree,
- initialParallelRoutes,
- isServer,
- location: !isServer ? window.location : null,
- initialHead
- }), [
- children,
- initialCanonicalUrl,
- initialTree,
- initialHead
- ]);
- const [{ tree , cache , prefetchCache , pushRef , focusAndScrollRef , canonicalUrl , nextUrl }, dispatch, sync] = (0, _usereducerwithdevtools.useReducerWithReduxDevtools)(_routerreducer.reducer, initialState);
- (0, _react.useEffect)(()=>{
- // Ensure initialParallelRoutes is cleaned up from memory once it's used.
- initialParallelRoutes = null;
- }, []);
- // Add memoized pathname/query for useSearchParams and usePathname.
- const { searchParams , pathname } = (0, _react.useMemo)(()=>{
- const url = new URL(canonicalUrl, true ? "http://n" : 0);
- return {
- // This is turned into a readonly class in `useSearchParams`
- searchParams: url.searchParams,
- pathname: url.pathname
- };
- }, [
- canonicalUrl
- ]);
- /**
- * Server response that only patches the cache and tree.
- */ const changeByServerResponse = (0, _react.useCallback)((previousTree, flightData, overrideCanonicalUrl)=>{
- _react.default.startTransition(()=>{
- dispatch({
- type: _routerreducertypes.ACTION_SERVER_PATCH,
- flightData,
- previousTree,
- overrideCanonicalUrl,
- cache: {
- status: _approutercontext.CacheStates.LAZY_INITIALIZED,
- data: null,
- subTreeData: null,
- parallelRoutes: new Map()
- },
- mutable: {}
- });
- });
- }, [
- dispatch
- ]);
- const navigate = (0, _react.useCallback)((href, navigateType, forceOptimisticNavigation)=>{
- const url = new URL((0, _addbasepath.addBasePath)(href), location.origin);
- return dispatch({
- type: _routerreducertypes.ACTION_NAVIGATE,
- url,
- isExternalUrl: isExternalURL(url),
- locationSearch: location.search,
- forceOptimisticNavigation,
- navigateType,
- cache: {
- status: _approutercontext.CacheStates.LAZY_INITIALIZED,
- data: null,
- subTreeData: null,
- parallelRoutes: new Map()
- },
- mutable: {}
- });
- }, [
- dispatch
- ]);
- const serverActionDispatcher = (0, _react.useCallback)((actionPayload)=>{
- _react.default.startTransition(()=>{
- dispatch({
- ...actionPayload,
- type: _routerreducertypes.ACTION_SERVER_ACTION,
- mutable: {},
- navigate,
- changeByServerResponse
- });
- });
- }, [
- changeByServerResponse,
- dispatch,
- navigate
- ]);
- globalServerActionDispatcher = serverActionDispatcher;
- /**
- * The app router that is exposed through `useRouter`. It's only concerned with dispatching actions to the reducer, does not hold state.
- */ const appRouter = (0, _react.useMemo)(()=>{
- const routerInstance = {
- back: ()=>window.history.back(),
- forward: ()=>window.history.forward(),
- prefetch: (href, options)=>{
- // If prefetch has already been triggered, don't trigger it again.
- if ((0, _isbot.isBot)(window.navigator.userAgent)) {
- return;
- }
- const url = new URL((0, _addbasepath.addBasePath)(href), location.origin);
- // External urls can't be prefetched in the same way.
- if (isExternalURL(url)) {
- return;
- }
- // @ts-ignore startTransition exists
- _react.default.startTransition(()=>{
- var _options_kind;
- dispatch({
- type: _routerreducertypes.ACTION_PREFETCH,
- url,
- kind: (_options_kind = options == null ? void 0 : options.kind) != null ? _options_kind : _routerreducertypes.PrefetchKind.FULL
- });
- });
- },
- replace: (href, options)=>{
- if (options === void 0) options = {};
- // @ts-ignore startTransition exists
- _react.default.startTransition(()=>{
- navigate(href, "replace", Boolean(options.forceOptimisticNavigation));
- });
- },
- push: (href, options)=>{
- if (options === void 0) options = {};
- // @ts-ignore startTransition exists
- _react.default.startTransition(()=>{
- navigate(href, "push", Boolean(options.forceOptimisticNavigation));
- });
- },
- refresh: ()=>{
- // @ts-ignore startTransition exists
- _react.default.startTransition(()=>{
- dispatch({
- type: _routerreducertypes.ACTION_REFRESH,
- cache: {
- status: _approutercontext.CacheStates.LAZY_INITIALIZED,
- data: null,
- subTreeData: null,
- parallelRoutes: new Map()
- },
- mutable: {},
- origin: window.location.origin
- });
- });
- },
- // @ts-ignore we don't want to expose this method at all
- fastRefresh: ()=>{
- if (true) {
- throw new Error("fastRefresh can only be used in development mode. Please use refresh instead.");
- } else {}
- }
- };
- return routerInstance;
- }, [
- dispatch,
- navigate
- ]);
- (0, _react.useEffect)(()=>{
- // Exists for debugging purposes. Don't use in application code.
- if (window.next) {
- window.next.router = appRouter;
- }
- }, [
- appRouter
- ]);
- (0, _react.useEffect)(()=>{
- // Add `window.nd` for debugging purposes.
- // This is not meant for use in applications as concurrent rendering will affect the cache/tree/router.
- // @ts-ignore this is for debugging
- window.nd = {
- router: appRouter,
- cache,
- prefetchCache,
- tree
- };
- }, [
- appRouter,
- cache,
- prefetchCache,
- tree
- ]);
- // When mpaNavigation flag is set do a hard navigation to the new url.
- // Infinitely suspend because we don't actually want to rerender any child
- // components with the new URL and any entangled state updates shouldn't
- // commit either (eg: useTransition isPending should stay true until the page
- // unloads).
- //
- // This is a side effect in render. Don't try this at home, kids. It's
- // probably safe because we know this is a singleton component and it's never
- // in . At least I hope so. (It will run twice in dev strict mode,
- // but that's... fine?)
- if (pushRef.mpaNavigation) {
- const location1 = window.location;
- if (pushRef.pendingPush) {
- location1.assign(canonicalUrl);
- } else {
- location1.replace(canonicalUrl);
- }
- // TODO-APP: Should we listen to navigateerror here to catch failed
- // navigations somehow? And should we call window.stop() if a SPA navigation
- // should interrupt an MPA one?
- (0, _react.use)((0, _infinitepromise.createInfinitePromise)());
- }
- /**
- * Handle popstate event, this is used to handle back/forward in the browser.
- * By default dispatches ACTION_RESTORE, however if the history entry was not pushed/replaced by app-router it will reload the page.
- * That case can happen when the old router injected the history entry.
- */ const onPopState = (0, _react.useCallback)((param)=>{
- let { state } = param;
- if (!state) {
- // TODO-APP: this case only happens when pushState/replaceState was called outside of Next.js. It should probably reload the page in this case.
- return;
- }
- // This case happens when the history entry was pushed by the `pages` router.
- if (!state.__NA) {
- window.location.reload();
- return;
- }
- // @ts-ignore useTransition exists
- // TODO-APP: Ideally the back button should not use startTransition as it should apply the updates synchronously
- // Without startTransition works if the cache is there for this path
- _react.default.startTransition(()=>{
- dispatch({
- type: _routerreducertypes.ACTION_RESTORE,
- url: new URL(window.location.href),
- tree: state.tree
- });
- });
- }, [
- dispatch
- ]);
- // Register popstate event to call onPopstate.
- (0, _react.useEffect)(()=>{
- window.addEventListener("popstate", onPopState);
- return ()=>{
- window.removeEventListener("popstate", onPopState);
- };
- }, [
- onPopState
- ]);
- const head = (0, _react.useMemo)(()=>{
- return (0, _findheadincache.findHeadInCache)(cache, tree[1]);
- }, [
- cache,
- tree
- ]);
- const content = /*#__PURE__*/ _react.default.createElement(_notfoundboundary.NotFoundBoundary, {
- notFound: notFound,
- notFoundStyles: notFoundStyles,
- asNotFound: asNotFound
- }, /*#__PURE__*/ _react.default.createElement(_redirectboundary.RedirectBoundary, null, head, cache.subTreeData, /*#__PURE__*/ _react.default.createElement(_approuterannouncer.AppRouterAnnouncer, {
- tree: tree
- })));
- return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(HistoryUpdater, {
- tree: tree,
- pushRef: pushRef,
- canonicalUrl: canonicalUrl,
- sync: sync
- }), /*#__PURE__*/ _react.default.createElement(_hooksclientcontext.PathnameContext.Provider, {
- value: pathname
- }, /*#__PURE__*/ _react.default.createElement(_hooksclientcontext.SearchParamsContext.Provider, {
- value: searchParams
- }, /*#__PURE__*/ _react.default.createElement(_approutercontext.GlobalLayoutRouterContext.Provider, {
- value: {
- changeByServerResponse,
- tree,
- focusAndScrollRef,
- nextUrl
- }
- }, /*#__PURE__*/ _react.default.createElement(_approutercontext.AppRouterContext.Provider, {
- value: appRouter
- }, /*#__PURE__*/ _react.default.createElement(_approutercontext.LayoutRouterContext.Provider, {
- value: {
- childNodes: cache.parallelRoutes,
- tree: tree,
- // Root node always has `url`
- // Provided in AppTreeContext to ensure it can be overwritten in layout-router
- url: canonicalUrl
- }
- }, HotReloader ? /*#__PURE__*/ _react.default.createElement(HotReloader, {
- assetPrefix: assetPrefix
- }, content) : content))))));
-}
-function AppRouter(props) {
- const { globalErrorComponent , ...rest } = props;
- return /*#__PURE__*/ _react.default.createElement(_errorboundary.ErrorBoundary, {
- errorComponent: globalErrorComponent
- }, /*#__PURE__*/ _react.default.createElement(Router, rest));
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=app-router.js.map
-
-
-/***/ }),
-
-/***/ 2594:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "bailoutToClientRendering", ({
- enumerable: true,
- get: function() {
- return bailoutToClientRendering;
- }
-}));
-const _dynamicnossr = __webpack_require__(701);
-const _staticgenerationasyncstorage = __webpack_require__(94);
-function bailoutToClientRendering() {
- const staticGenerationStore = _staticgenerationasyncstorage.staticGenerationAsyncStorage.getStore();
- if (staticGenerationStore == null ? void 0 : staticGenerationStore.forceStatic) {
- return true;
- }
- if (staticGenerationStore == null ? void 0 : staticGenerationStore.isStaticGeneration) {
- (0, _dynamicnossr.suspense)();
- }
- return false;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=bailout-to-client-rendering.js.map
-
-
-/***/ }),
-
-/***/ 5078:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "clientHookInServerComponentError", ({
- enumerable: true,
- get: function() {
- return clientHookInServerComponentError;
- }
-}));
-const _interop_require_default = __webpack_require__(5967);
-const _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(8038));
-function clientHookInServerComponentError(hookName) {
- if (false) {}
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=client-hook-in-server-component-error.js.map
-
-
-/***/ }),
-
-/***/ 1522:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- ErrorBoundaryHandler: function() {
- return ErrorBoundaryHandler;
- },
- default: function() {
- return GlobalError;
- },
- ErrorBoundary: function() {
- return ErrorBoundary;
- }
-});
-const _interop_require_default = __webpack_require__(5967);
-const _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(8038));
-const _navigation = __webpack_require__(5171);
-const styles = {
- error: {
- // https://github.com/sindresorhus/modern-normalize/blob/main/modern-normalize.css#L38-L52
- fontFamily: 'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',
- height: "100vh",
- textAlign: "center",
- display: "flex",
- flexDirection: "column",
- alignItems: "center",
- justifyContent: "center"
- },
- desc: {
- textAlign: "left"
- },
- text: {
- fontSize: "14px",
- fontWeight: 400,
- lineHeight: "3em",
- margin: 0
- }
-};
-class ErrorBoundaryHandler extends _react.default.Component {
- static getDerivedStateFromError(error) {
- return {
- error
- };
- }
- static getDerivedStateFromProps(props, state) {
- /**
- * Handles reset of the error boundary when a navigation happens.
- * Ensures the error boundary does not stay enabled when navigating to a new page.
- * Approach of setState in render is safe as it checks the previous pathname and then overrides
- * it as outlined in https://react.dev/reference/react/useState#storing-information-from-previous-renders
- */ if (props.pathname !== state.previousPathname && state.error) {
- return {
- error: null,
- previousPathname: props.pathname
- };
- }
- return {
- error: state.error,
- previousPathname: props.pathname
- };
- }
- render() {
- if (this.state.error) {
- return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, this.props.errorStyles, /*#__PURE__*/ _react.default.createElement(this.props.errorComponent, {
- error: this.state.error,
- reset: this.reset
- }));
- }
- return this.props.children;
- }
- constructor(props){
- super(props);
- this.reset = ()=>{
- this.setState({
- error: null
- });
- };
- this.state = {
- error: null,
- previousPathname: this.props.pathname
- };
- }
-}
-function GlobalError(param) {
- let { error } = param;
- return /*#__PURE__*/ _react.default.createElement("html", null, /*#__PURE__*/ _react.default.createElement("head", null), /*#__PURE__*/ _react.default.createElement("body", null, /*#__PURE__*/ _react.default.createElement("div", {
- style: styles.error
- }, /*#__PURE__*/ _react.default.createElement("div", {
- style: styles.desc
- }, /*#__PURE__*/ _react.default.createElement("h2", {
- style: styles.text
- }, "Application error: a client-side exception has occurred (see the browser console for more information)."), (error == null ? void 0 : error.digest) && /*#__PURE__*/ _react.default.createElement("p", {
- style: styles.text
- }, "Digest: " + error.digest)))));
-}
-function ErrorBoundary(param) {
- let { errorComponent , errorStyles , children } = param;
- const pathname = (0, _navigation.usePathname)();
- if (errorComponent) {
- return /*#__PURE__*/ _react.default.createElement(ErrorBoundaryHandler, {
- pathname: pathname,
- errorComponent: errorComponent,
- errorStyles: errorStyles
- }, children);
- }
- return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, children);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=error-boundary.js.map
-
-
-/***/ }),
-
-/***/ 8340:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- DYNAMIC_ERROR_CODE: function() {
- return DYNAMIC_ERROR_CODE;
- },
- DynamicServerError: function() {
- return DynamicServerError;
- }
-});
-const DYNAMIC_ERROR_CODE = "DYNAMIC_SERVER_USAGE";
-class DynamicServerError extends Error {
- constructor(type){
- super("Dynamic server usage: " + type);
- this.digest = DYNAMIC_ERROR_CODE;
- }
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=hooks-server-context.js.map
-
-
-/***/ }),
-
-/***/ 6479:
-/***/ ((module, exports) => {
-
-"use strict";
-/**
- * Used to cache in createInfinitePromise
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createInfinitePromise", ({
- enumerable: true,
- get: function() {
- return createInfinitePromise;
- }
-}));
-let infinitePromise;
-function createInfinitePromise() {
- if (!infinitePromise) {
- // Only create the Promise once
- infinitePromise = new Promise(()=>{
- // This is used to debug when the rendering is never updated.
- // setTimeout(() => {
- // infinitePromise = new Error('Infinite promise')
- // resolve()
- // }, 5000)
- });
- }
- return infinitePromise;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=infinite-promise.js.map
-
-
-/***/ }),
-
-/***/ 6249:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "default", ({
- enumerable: true,
- get: function() {
- return OuterLayoutRouter;
- }
-}));
-const _interop_require_default = __webpack_require__(5967);
-const _interop_require_wildcard = __webpack_require__(1113);
-const _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(8038));
-const _reactdom = /*#__PURE__*/ _interop_require_default._(__webpack_require__(8704));
-const _approutercontext = __webpack_require__(3280);
-const _fetchserverresponse = __webpack_require__(969);
-const _infinitepromise = __webpack_require__(6479);
-const _errorboundary = __webpack_require__(1522);
-const _matchsegments = __webpack_require__(5507);
-const _handlesmoothscroll = __webpack_require__(1668);
-const _redirectboundary = __webpack_require__(606);
-const _notfoundboundary = __webpack_require__(7944);
-const _getsegmentvalue = __webpack_require__(3715);
-const _createroutercachekey = __webpack_require__(5370);
-/**
- * Add refetch marker to router state at the point of the current layout segment.
- * This ensures the response returned is not further down than the current layout segment.
- */ function walkAddRefetch(segmentPathToWalk, treeToRecreate) {
- if (segmentPathToWalk) {
- const [segment, parallelRouteKey] = segmentPathToWalk;
- const isLast = segmentPathToWalk.length === 2;
- if ((0, _matchsegments.matchSegment)(treeToRecreate[0], segment)) {
- if (treeToRecreate[1].hasOwnProperty(parallelRouteKey)) {
- if (isLast) {
- const subTree = walkAddRefetch(undefined, treeToRecreate[1][parallelRouteKey]);
- return [
- treeToRecreate[0],
- {
- ...treeToRecreate[1],
- [parallelRouteKey]: [
- subTree[0],
- subTree[1],
- subTree[2],
- "refetch"
- ]
- }
- ];
- }
- return [
- treeToRecreate[0],
- {
- ...treeToRecreate[1],
- [parallelRouteKey]: walkAddRefetch(segmentPathToWalk.slice(2), treeToRecreate[1][parallelRouteKey])
- }
- ];
- }
- }
- }
- return treeToRecreate;
-}
-// TODO-APP: Replace with new React API for finding dom nodes without a `ref` when available
-/**
- * Wraps ReactDOM.findDOMNode with additional logic to hide React Strict Mode warning
- */ function findDOMNode(instance) {
- // Tree-shake for server bundle
- if (true) return null;
- // Only apply strict mode warning when not in production
- if (false) {}
- return _reactdom.default.findDOMNode(instance);
-}
-const rectProperties = [
- "bottom",
- "height",
- "left",
- "right",
- "top",
- "width",
- "x",
- "y"
-];
-/**
- * Check if a HTMLElement is hidden.
- */ function elementCanScroll(element) {
- // Uses `getBoundingClientRect` to check if the element is hidden instead of `offsetParent`
- // because `offsetParent` doesn't consider document/body
- const rect = element.getBoundingClientRect();
- return rectProperties.every((item)=>rect[item] === 0);
-}
-/**
- * Check if the top corner of the HTMLElement is in the viewport.
- */ function topOfElementInViewport(element, viewportHeight) {
- const rect = element.getBoundingClientRect();
- return rect.top >= 0 && rect.top <= viewportHeight;
-}
-/**
- * Find the DOM node for a hash fragment.
- * If `top` the page has to scroll to the top of the page. This mirrors the browser's behavior.
- * If the hash fragment is an id, the page has to scroll to the element with that id.
- * If the hash fragment is a name, the page has to scroll to the first element with that name.
- */ function getHashFragmentDomNode(hashFragment) {
- // If the hash fragment is `top` the page has to scroll to the top of the page.
- if (hashFragment === "top") {
- return document.body;
- }
- var _document_getElementById;
- // If the hash fragment is an id, the page has to scroll to the element with that id.
- return (_document_getElementById = document.getElementById(hashFragment)) != null ? _document_getElementById : document.getElementsByName(hashFragment)[0];
-}
-class InnerScrollAndFocusHandler extends _react.default.Component {
- componentDidMount() {
- this.handlePotentialScroll();
- }
- componentDidUpdate() {
- // Because this property is overwritten in handlePotentialScroll it's fine to always run it when true as it'll be set to false for subsequent renders.
- if (this.props.focusAndScrollRef.apply) {
- this.handlePotentialScroll();
- }
- }
- render() {
- return this.props.children;
- }
- constructor(...args){
- super(...args);
- this.handlePotentialScroll = ()=>{
- // Handle scroll and focus, it's only applied once in the first useEffect that triggers that changed.
- const { focusAndScrollRef , segmentPath } = this.props;
- if (focusAndScrollRef.apply) {
- // segmentPaths is an array of segment paths that should be scrolled to
- // if the current segment path is not in the array, the scroll is not applied
- // unless the array is empty, in which case the scroll is always applied
- if (focusAndScrollRef.segmentPaths.length !== 0 && !focusAndScrollRef.segmentPaths.some((scrollRefSegmentPath)=>segmentPath.every((segment, index)=>(0, _matchsegments.matchSegment)(segment, scrollRefSegmentPath[index])))) {
- return;
- }
- let domNode = null;
- const hashFragment = focusAndScrollRef.hashFragment;
- if (hashFragment) {
- domNode = getHashFragmentDomNode(hashFragment);
- }
- // `findDOMNode` is tricky because it returns just the first child if the component is a fragment.
- // This already caused a bug where the first child was a in head.
- if (!domNode) {
- domNode = findDOMNode(this);
- }
- // TODO-APP: Handle the case where we couldn't select any DOM node, even higher up in the layout-router above the current segmentPath.
- // If there is no DOM node this layout-router level is skipped. It'll be handled higher-up in the tree.
- if (!(domNode instanceof Element)) {
- return;
- }
- // Verify if the element is a HTMLElement and if it's visible on screen (e.g. not display: none).
- // If the element is not a HTMLElement or not visible we try to select the next sibling and try again.
- while(!(domNode instanceof HTMLElement) || elementCanScroll(domNode)){
- // TODO-APP: Handle the case where we couldn't select any DOM node, even higher up in the layout-router above the current segmentPath.
- // No siblings found that are visible so we handle scroll higher up in the tree instead.
- if (domNode.nextElementSibling === null) {
- return;
- }
- domNode = domNode.nextElementSibling;
- }
- // State is mutated to ensure that the focus and scroll is applied only once.
- focusAndScrollRef.apply = false;
- focusAndScrollRef.hashFragment = null;
- focusAndScrollRef.segmentPaths = [];
- (0, _handlesmoothscroll.handleSmoothScroll)(()=>{
- // In case of hash scroll we need to scroll to the top of the element
- if (hashFragment) {
- window.scrollTo(0, domNode.offsetTop);
- return;
- }
- // Store the current viewport height because reading `clientHeight` causes a reflow,
- // and it won't change during this function.
- const htmlElement = document.documentElement;
- const viewportHeight = htmlElement.clientHeight;
- // If the element's top edge is already in the viewport, exit early.
- if (topOfElementInViewport(domNode, viewportHeight)) {
- return;
- }
- // Otherwise, try scrolling go the top of the document to be backward compatible with pages
- // scrollIntoView() called on ` ` element scrolls horizontally on chrome and firefox (that shouldn't happen)
- // We could use it to scroll horizontally following RTL but that also seems to be broken - it will always scroll left
- // scrollLeft = 0 also seems to ignore RTL and manually checking for RTL is too much hassle so we will scroll just vertically
- htmlElement.scrollTop = 0;
- // Scroll to domNode if domNode is not in viewport when scrolled to top of document
- if (!topOfElementInViewport(domNode, viewportHeight)) {
- domNode.scrollIntoView();
- }
- }, {
- // We will force layout by querying domNode position
- dontForceLayout: true
- });
- // Set focus on the element
- domNode.focus();
- }
- };
- }
-}
-function ScrollAndFocusHandler(param) {
- let { segmentPath , children } = param;
- const context = (0, _react.useContext)(_approutercontext.GlobalLayoutRouterContext);
- if (!context) {
- throw new Error("invariant global layout router not mounted");
- }
- return /*#__PURE__*/ _react.default.createElement(InnerScrollAndFocusHandler, {
- segmentPath: segmentPath,
- focusAndScrollRef: context.focusAndScrollRef
- }, children);
-}
-/**
- * InnerLayoutRouter handles rendering the provided segment based on the cache.
- */ function InnerLayoutRouter(param) {
- let { parallelRouterKey , url , childNodes , childProp , segmentPath , tree , // isActive,
- cacheKey } = param;
- const context = (0, _react.useContext)(_approutercontext.GlobalLayoutRouterContext);
- if (!context) {
- throw new Error("invariant global layout router not mounted");
- }
- const { changeByServerResponse , tree: fullTree } = context;
- // Read segment path from the parallel router cache node.
- let childNode = childNodes.get(cacheKey);
- // If childProp is available this means it's the Flight / SSR case.
- if (childProp && // TODO-APP: verify if this can be null based on user code
- childProp.current !== null) {
- if (!childNode) {
- // Add the segment's subTreeData to the cache.
- // This writes to the cache when there is no item in the cache yet. It never *overwrites* existing cache items which is why it's safe in concurrent mode.
- childNodes.set(cacheKey, {
- status: _approutercontext.CacheStates.READY,
- data: null,
- subTreeData: childProp.current,
- parallelRoutes: new Map()
- });
- // In the above case childNode was set on childNodes, so we have to get it from the cacheNodes again.
- childNode = childNodes.get(cacheKey);
- } else {
- if (childNode.status === _approutercontext.CacheStates.LAZY_INITIALIZED) {
- // @ts-expect-error we're changing it's type!
- childNode.status = _approutercontext.CacheStates.READY;
- // @ts-expect-error
- childNode.subTreeData = childProp.current;
- }
- }
- }
- // When childNode is not available during rendering client-side we need to fetch it from the server.
- if (!childNode || childNode.status === _approutercontext.CacheStates.LAZY_INITIALIZED) {
- /**
- * Router state with refetch marker added
- */ // TODO-APP: remove ''
- const refetchTree = walkAddRefetch([
- "",
- ...segmentPath
- ], fullTree);
- /**
- * Flight data fetch kicked off during render and put into the cache.
- */ childNodes.set(cacheKey, {
- status: _approutercontext.CacheStates.DATA_FETCH,
- data: (0, _fetchserverresponse.fetchServerResponse)(new URL(url, location.origin), refetchTree, context.nextUrl),
- subTreeData: null,
- head: childNode && childNode.status === _approutercontext.CacheStates.LAZY_INITIALIZED ? childNode.head : undefined,
- parallelRoutes: childNode && childNode.status === _approutercontext.CacheStates.LAZY_INITIALIZED ? childNode.parallelRoutes : new Map()
- });
- // In the above case childNode was set on childNodes, so we have to get it from the cacheNodes again.
- childNode = childNodes.get(cacheKey);
- }
- // This case should never happen so it throws an error. It indicates there's a bug in the Next.js.
- if (!childNode) {
- throw new Error("Child node should always exist");
- }
- // This case should never happen so it throws an error. It indicates there's a bug in the Next.js.
- if (childNode.subTreeData && childNode.data) {
- throw new Error("Child node should not have both subTreeData and data");
- }
- // If cache node has a data request we have to unwrap response by `use` and update the cache.
- if (childNode.data) {
- /**
- * Flight response data
- */ // When the data has not resolved yet `use` will suspend here.
- const [flightData, overrideCanonicalUrl] = (0, _react.use)(childNode.data);
- // Handle case when navigating to page in `pages` from `app`
- if (typeof flightData === "string") {
- window.location.href = url;
- return null;
- }
- // segmentPath from the server does not match the layout's segmentPath
- childNode.data = null;
- // setTimeout is used to start a new transition during render, this is an intentional hack around React.
- setTimeout(()=>{
- // @ts-ignore startTransition exists
- _react.default.startTransition(()=>{
- changeByServerResponse(fullTree, flightData, overrideCanonicalUrl);
- });
- });
- // Suspend infinitely as `changeByServerResponse` will cause a different part of the tree to be rendered.
- (0, _react.use)((0, _infinitepromise.createInfinitePromise)());
- }
- // If cache node has no subTreeData and no data request we have to infinitely suspend as the data will likely flow in from another place.
- // TODO-APP: double check users can't return null in a component that will kick in here.
- if (!childNode.subTreeData) {
- (0, _react.use)((0, _infinitepromise.createInfinitePromise)());
- }
- const subtree = /*#__PURE__*/ _react.default.createElement(_approutercontext.LayoutRouterContext.Provider, {
- value: {
- tree: tree[1][parallelRouterKey],
- childNodes: childNode.parallelRoutes,
- // TODO-APP: overriding of url for parallel routes
- url: url
- }
- }, childNode.subTreeData);
- // Ensure root layout is not wrapped in a div as the root layout renders ``
- return subtree;
-}
-/**
- * Renders suspense boundary with the provided "loading" property as the fallback.
- * If no loading property is provided it renders the children without a suspense boundary.
- */ function LoadingBoundary(param) {
- let { children , loading , loadingStyles , hasLoading } = param;
- if (hasLoading) {
- return /*#__PURE__*/ _react.default.createElement(_react.default.Suspense, {
- fallback: /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, loadingStyles, loading)
- }, children);
- }
- return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, children);
-}
-function OuterLayoutRouter(param) {
- let { parallelRouterKey , segmentPath , childProp , error , errorStyles , templateStyles , loading , loadingStyles , hasLoading , template , notFound , notFoundStyles , asNotFound , styles } = param;
- const context = (0, _react.useContext)(_approutercontext.LayoutRouterContext);
- if (!context) {
- throw new Error("invariant expected layout router to be mounted");
- }
- const { childNodes , tree , url } = context;
- // Get the current parallelRouter cache node
- let childNodesForParallelRouter = childNodes.get(parallelRouterKey);
- // If the parallel router cache node does not exist yet, create it.
- // This writes to the cache when there is no item in the cache yet. It never *overwrites* existing cache items which is why it's safe in concurrent mode.
- if (!childNodesForParallelRouter) {
- childNodes.set(parallelRouterKey, new Map());
- childNodesForParallelRouter = childNodes.get(parallelRouterKey);
- }
- // Get the active segment in the tree
- // The reason arrays are used in the data format is that these are transferred from the server to the browser so it's optimized to save bytes.
- const treeSegment = tree[1][parallelRouterKey][0];
- const childPropSegment = childProp.segment;
- // If segment is an array it's a dynamic route and we want to read the dynamic route value as the segment to get from the cache.
- const currentChildSegmentValue = (0, _getsegmentvalue.getSegmentValue)(treeSegment);
- /**
- * Decides which segments to keep rendering, all segments that are not active will be wrapped in ``.
- */ // TODO-APP: Add handling of `` when it's available.
- const preservedSegments = [
- treeSegment
- ];
- return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, styles, preservedSegments.map((preservedSegment)=>{
- const isChildPropSegment = (0, _matchsegments.matchSegment)(preservedSegment, childPropSegment);
- const preservedSegmentValue = (0, _getsegmentvalue.getSegmentValue)(preservedSegment);
- const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(preservedSegment);
- return(/*
- - Error boundary
- - Only renders error boundary if error component is provided.
- - Rendered for each segment to ensure they have their own error state.
- - Loading boundary
- - Only renders suspense boundary if loading components is provided.
- - Rendered for each segment to ensure they have their own loading state.
- - Passed to the router during rendering to ensure it can be immediately rendered when suspending on a Flight fetch.
- */ /*#__PURE__*/ _react.default.createElement(_approutercontext.TemplateContext.Provider, {
- key: (0, _createroutercachekey.createRouterCacheKey)(preservedSegment, true),
- value: /*#__PURE__*/ _react.default.createElement(ScrollAndFocusHandler, {
- segmentPath: segmentPath
- }, /*#__PURE__*/ _react.default.createElement(_errorboundary.ErrorBoundary, {
- errorComponent: error,
- errorStyles: errorStyles
- }, /*#__PURE__*/ _react.default.createElement(LoadingBoundary, {
- hasLoading: hasLoading,
- loading: loading,
- loadingStyles: loadingStyles
- }, /*#__PURE__*/ _react.default.createElement(_notfoundboundary.NotFoundBoundary, {
- notFound: notFound,
- notFoundStyles: notFoundStyles,
- asNotFound: asNotFound
- }, /*#__PURE__*/ _react.default.createElement(_redirectboundary.RedirectBoundary, null, /*#__PURE__*/ _react.default.createElement(InnerLayoutRouter, {
- parallelRouterKey: parallelRouterKey,
- url: url,
- tree: tree,
- childNodes: childNodesForParallelRouter,
- childProp: isChildPropSegment ? childProp : null,
- segmentPath: segmentPath,
- cacheKey: cacheKey,
- isActive: currentChildSegmentValue === preservedSegmentValue
- }))))))
- }, /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, templateStyles, template)));
- }));
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=layout-router.js.map
-
-
-/***/ }),
-
-/***/ 5507:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- matchSegment: function() {
- return matchSegment;
- },
- canSegmentBeOverridden: function() {
- return canSegmentBeOverridden;
- }
-});
-const _getsegmentparam = __webpack_require__(1090);
-const matchSegment = (existingSegment, segment)=>{
- // Common case: segment is just a string
- if (typeof existingSegment === "string" && typeof segment === "string") {
- return existingSegment === segment;
- }
- // Dynamic parameter case: segment is an array with param/value. Both param and value are compared.
- if (Array.isArray(existingSegment) && Array.isArray(segment)) {
- return existingSegment[0] === segment[0] && existingSegment[1] === segment[1];
- }
- return false;
-};
-const canSegmentBeOverridden = (existingSegment, segment)=>{
- var _getSegmentParam;
- if (Array.isArray(existingSegment) || !Array.isArray(segment)) {
- return false;
- }
- return ((_getSegmentParam = (0, _getsegmentparam.getSegmentParam)(existingSegment)) == null ? void 0 : _getSegmentParam.param) === segment[0];
-};
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=match-segments.js.map
-
-
-/***/ }),
-
-/***/ 5171:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-// useLayoutSegments() // Only the segments for the current place. ['children', 'dashboard', 'children', 'integrations'] -> /dashboard/integrations (/dashboard/layout.js would get ['children', 'dashboard', 'children', 'integrations'])
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- ReadonlyURLSearchParams: function() {
- return ReadonlyURLSearchParams;
- },
- useSearchParams: function() {
- return useSearchParams;
- },
- usePathname: function() {
- return usePathname;
- },
- ServerInsertedHTMLContext: function() {
- return _serverinsertedhtml.ServerInsertedHTMLContext;
- },
- useServerInsertedHTML: function() {
- return _serverinsertedhtml.useServerInsertedHTML;
- },
- useRouter: function() {
- return useRouter;
- },
- useParams: function() {
- return useParams;
- },
- useSelectedLayoutSegments: function() {
- return useSelectedLayoutSegments;
- },
- useSelectedLayoutSegment: function() {
- return useSelectedLayoutSegment;
- },
- redirect: function() {
- return _redirect.redirect;
- },
- notFound: function() {
- return _notfound.notFound;
- }
-});
-const _react = __webpack_require__(8038);
-const _approutercontext = __webpack_require__(3280);
-const _hooksclientcontext = __webpack_require__(9274);
-const _clienthookinservercomponenterror = __webpack_require__(5078);
-const _getsegmentvalue = __webpack_require__(3715);
-const _serverinsertedhtml = __webpack_require__(3349);
-const _redirect = __webpack_require__(6932);
-const _notfound = __webpack_require__(8424);
-const INTERNAL_URLSEARCHPARAMS_INSTANCE = Symbol("internal for urlsearchparams readonly");
-function readonlyURLSearchParamsError() {
- return new Error("ReadonlyURLSearchParams cannot be modified");
-}
-class ReadonlyURLSearchParams {
- [Symbol.iterator]() {
- return this[INTERNAL_URLSEARCHPARAMS_INSTANCE][Symbol.iterator]();
- }
- append() {
- throw readonlyURLSearchParamsError();
- }
- delete() {
- throw readonlyURLSearchParamsError();
- }
- set() {
- throw readonlyURLSearchParamsError();
- }
- sort() {
- throw readonlyURLSearchParamsError();
- }
- constructor(urlSearchParams){
- this[INTERNAL_URLSEARCHPARAMS_INSTANCE] = urlSearchParams;
- this.entries = urlSearchParams.entries.bind(urlSearchParams);
- this.forEach = urlSearchParams.forEach.bind(urlSearchParams);
- this.get = urlSearchParams.get.bind(urlSearchParams);
- this.getAll = urlSearchParams.getAll.bind(urlSearchParams);
- this.has = urlSearchParams.has.bind(urlSearchParams);
- this.keys = urlSearchParams.keys.bind(urlSearchParams);
- this.values = urlSearchParams.values.bind(urlSearchParams);
- this.toString = urlSearchParams.toString.bind(urlSearchParams);
- }
-}
-function useSearchParams() {
- (0, _clienthookinservercomponenterror.clientHookInServerComponentError)("useSearchParams");
- const searchParams = (0, _react.useContext)(_hooksclientcontext.SearchParamsContext);
- // In the case where this is `null`, the compat types added in
- // `next-env.d.ts` will add a new overload that changes the return type to
- // include `null`.
- const readonlySearchParams = (0, _react.useMemo)(()=>{
- if (!searchParams) {
- // When the router is not ready in pages, we won't have the search params
- // available.
- return null;
- }
- return new ReadonlyURLSearchParams(searchParams);
- }, [
- searchParams
- ]);
- if (true) {
- // AsyncLocalStorage should not be included in the client bundle.
- const { bailoutToClientRendering } = __webpack_require__(2594);
- if (bailoutToClientRendering()) {
- // TODO-APP: handle dynamic = 'force-static' here and on the client
- return readonlySearchParams;
- }
- }
- return readonlySearchParams;
-}
-function usePathname() {
- (0, _clienthookinservercomponenterror.clientHookInServerComponentError)("usePathname");
- // In the case where this is `null`, the compat types added in `next-env.d.ts`
- // will add a new overload that changes the return type to include `null`.
- return (0, _react.useContext)(_hooksclientcontext.PathnameContext);
-}
-function useRouter() {
- (0, _clienthookinservercomponenterror.clientHookInServerComponentError)("useRouter");
- const router = (0, _react.useContext)(_approutercontext.AppRouterContext);
- if (router === null) {
- throw new Error("invariant expected app router to be mounted");
- }
- return router;
-}
-// this function performs a depth-first search of the tree to find the selected
-// params
-function getSelectedParams(tree, params) {
- if (params === void 0) params = {};
- const parallelRoutes = tree[1];
- for (const parallelRoute of Object.values(parallelRoutes)){
- const segment = parallelRoute[0];
- const isDynamicParameter = Array.isArray(segment);
- const segmentValue = isDynamicParameter ? segment[1] : segment;
- if (!segmentValue || segmentValue.startsWith("__PAGE__")) continue;
- if (isDynamicParameter) {
- params[segment[0]] = segment[1];
- }
- params = getSelectedParams(parallelRoute, params);
- }
- return params;
-}
-function useParams() {
- (0, _clienthookinservercomponenterror.clientHookInServerComponentError)("useParams");
- const globalLayoutRouterContext = (0, _react.useContext)(_approutercontext.GlobalLayoutRouterContext);
- if (!globalLayoutRouterContext) {
- // This only happens in `pages`. Type is overwritten in navigation.d.ts
- return null;
- }
- return getSelectedParams(globalLayoutRouterContext.tree);
-}
-// TODO-APP: handle parallel routes
-/**
- * Get the canonical parameters from the current level to the leaf node.
- */ function getSelectedLayoutSegmentPath(tree, parallelRouteKey, first, segmentPath) {
- if (first === void 0) first = true;
- if (segmentPath === void 0) segmentPath = [];
- let node;
- if (first) {
- // Use the provided parallel route key on the first parallel route
- node = tree[1][parallelRouteKey];
- } else {
- // After first parallel route prefer children, if there's no children pick the first parallel route.
- const parallelRoutes = tree[1];
- var _parallelRoutes_children;
- node = (_parallelRoutes_children = parallelRoutes.children) != null ? _parallelRoutes_children : Object.values(parallelRoutes)[0];
- }
- if (!node) return segmentPath;
- const segment = node[0];
- const segmentValue = (0, _getsegmentvalue.getSegmentValue)(segment);
- if (!segmentValue || segmentValue.startsWith("__PAGE__")) return segmentPath;
- segmentPath.push(segmentValue);
- return getSelectedLayoutSegmentPath(node, parallelRouteKey, false, segmentPath);
-}
-function useSelectedLayoutSegments(parallelRouteKey) {
- if (parallelRouteKey === void 0) parallelRouteKey = "children";
- (0, _clienthookinservercomponenterror.clientHookInServerComponentError)("useSelectedLayoutSegments");
- const { tree } = (0, _react.useContext)(_approutercontext.LayoutRouterContext);
- return getSelectedLayoutSegmentPath(tree, parallelRouteKey);
-}
-function useSelectedLayoutSegment(parallelRouteKey) {
- if (parallelRouteKey === void 0) parallelRouteKey = "children";
- (0, _clienthookinservercomponenterror.clientHookInServerComponentError)("useSelectedLayoutSegment");
- const selectedLayoutSegments = useSelectedLayoutSegments(parallelRouteKey);
- if (selectedLayoutSegments.length === 0) {
- return null;
- }
- return selectedLayoutSegments[0];
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=navigation.js.map
-
-
-/***/ }),
-
-/***/ 7944:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "NotFoundBoundary", ({
- enumerable: true,
- get: function() {
- return NotFoundBoundary;
- }
-}));
-const _interop_require_default = __webpack_require__(5967);
-const _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(8038));
-const _navigation = __webpack_require__(5171);
-class NotFoundErrorBoundary extends _react.default.Component {
- static getDerivedStateFromError(error) {
- if ((error == null ? void 0 : error.digest) === "NEXT_NOT_FOUND") {
- return {
- notFoundTriggered: true
- };
- }
- // Re-throw if error is not for 404
- throw error;
- }
- static getDerivedStateFromProps(props, state) {
- /**
- * Handles reset of the error boundary when a navigation happens.
- * Ensures the error boundary does not stay enabled when navigating to a new page.
- * Approach of setState in render is safe as it checks the previous pathname and then overrides
- * it as outlined in https://react.dev/reference/react/useState#storing-information-from-previous-renders
- */ if (props.pathname !== state.previousPathname && state.notFoundTriggered) {
- return {
- notFoundTriggered: false,
- previousPathname: props.pathname
- };
- }
- return {
- notFoundTriggered: state.notFoundTriggered,
- previousPathname: props.pathname
- };
- }
- render() {
- if (this.state.notFoundTriggered) {
- return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement("meta", {
- name: "robots",
- content: "noindex"
- }), this.props.notFoundStyles, this.props.notFound);
- }
- return this.props.children;
- }
- constructor(props){
- super(props);
- this.state = {
- notFoundTriggered: !!props.asNotFound,
- previousPathname: props.pathname
- };
- }
-}
-function NotFoundBoundary(param) {
- let { notFound , notFoundStyles , asNotFound , children } = param;
- const pathname = (0, _navigation.usePathname)();
- return notFound ? /*#__PURE__*/ _react.default.createElement(NotFoundErrorBoundary, {
- pathname: pathname,
- notFound: notFound,
- notFoundStyles: notFoundStyles,
- asNotFound: asNotFound
- }, children) : /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, children);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=not-found-boundary.js.map
-
-
-/***/ }),
-
-/***/ 8424:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- notFound: function() {
- return notFound;
- },
- isNotFoundError: function() {
- return isNotFoundError;
- }
-});
-const NOT_FOUND_ERROR_CODE = "NEXT_NOT_FOUND";
-function notFound() {
- // eslint-disable-next-line no-throw-literal
- const error = new Error(NOT_FOUND_ERROR_CODE);
- error.digest = NOT_FOUND_ERROR_CODE;
- throw error;
-}
-function isNotFoundError(error) {
- return (error == null ? void 0 : error.digest) === NOT_FOUND_ERROR_CODE;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=not-found.js.map
-
-
-/***/ }),
-
-/***/ 606:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- RedirectErrorBoundary: function() {
- return RedirectErrorBoundary;
- },
- RedirectBoundary: function() {
- return RedirectBoundary;
- }
-});
-const _interop_require_wildcard = __webpack_require__(1113);
-const _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(8038));
-const _navigation = __webpack_require__(5171);
-const _redirect = __webpack_require__(6932);
-function HandleRedirect(param) {
- let { redirect , reset , redirectType } = param;
- const router = (0, _navigation.useRouter)();
- (0, _react.useEffect)(()=>{
- // @ts-ignore startTransition exists
- _react.default.startTransition(()=>{
- if (redirectType === _redirect.RedirectType.push) {
- router.push(redirect, {});
- } else {
- router.replace(redirect, {});
- }
- reset();
- });
- }, [
- redirect,
- redirectType,
- reset,
- router
- ]);
- return null;
-}
-class RedirectErrorBoundary extends _react.default.Component {
- static getDerivedStateFromError(error) {
- if ((0, _redirect.isRedirectError)(error)) {
- const url = (0, _redirect.getURLFromRedirectError)(error);
- const redirectType = (0, _redirect.getRedirectTypeFromError)(error);
- return {
- redirect: url,
- redirectType
- };
- }
- // Re-throw if error is not for redirect
- throw error;
- }
- render() {
- const { redirect , redirectType } = this.state;
- if (redirect !== null && redirectType !== null) {
- return /*#__PURE__*/ _react.default.createElement(HandleRedirect, {
- redirect: redirect,
- redirectType: redirectType,
- reset: ()=>this.setState({
- redirect: null
- })
- });
- }
- return this.props.children;
- }
- constructor(props){
- super(props);
- this.state = {
- redirect: null,
- redirectType: null
- };
- }
-}
-function RedirectBoundary(param) {
- let { children } = param;
- const router = (0, _navigation.useRouter)();
- return /*#__PURE__*/ _react.default.createElement(RedirectErrorBoundary, {
- router: router
- }, children);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=redirect-boundary.js.map
-
-
-/***/ }),
-
-/***/ 6932:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- RedirectType: function() {
- return RedirectType;
- },
- getRedirectError: function() {
- return getRedirectError;
- },
- redirect: function() {
- return redirect;
- },
- isRedirectError: function() {
- return isRedirectError;
- },
- getURLFromRedirectError: function() {
- return getURLFromRedirectError;
- },
- getRedirectTypeFromError: function() {
- return getRedirectTypeFromError;
- }
-});
-const _requestasyncstorage = __webpack_require__(4437);
-const REDIRECT_ERROR_CODE = "NEXT_REDIRECT";
-var RedirectType;
-(function(RedirectType) {
- RedirectType["push"] = "push";
- RedirectType["replace"] = "replace";
-})(RedirectType || (RedirectType = {}));
-function getRedirectError(url, type) {
- const error = new Error(REDIRECT_ERROR_CODE);
- error.digest = REDIRECT_ERROR_CODE + ";" + type + ";" + url;
- const requestStore = _requestasyncstorage.requestAsyncStorage.getStore();
- if (requestStore) {
- error.mutableCookies = requestStore.mutableCookies;
- }
- return error;
-}
-function redirect(url, type) {
- if (type === void 0) type = "replace";
- throw getRedirectError(url, type);
-}
-function isRedirectError(error) {
- if (typeof (error == null ? void 0 : error.digest) !== "string") return false;
- const [errorCode, type, destination] = error.digest.split(";", 3);
- return errorCode === REDIRECT_ERROR_CODE && (type === "replace" || type === "push") && typeof destination === "string";
-}
-function getURLFromRedirectError(error) {
- if (!isRedirectError(error)) return null;
- // Slices off the beginning of the digest that contains the code and the
- // separating ';'.
- return error.digest.split(";", 3)[2];
-}
-function getRedirectTypeFromError(error) {
- if (!isRedirectError(error)) {
- throw new Error("Not a redirect error");
- }
- return error.digest.split(";", 3)[1];
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=redirect.js.map
-
-
-/***/ }),
-
-/***/ 7844:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "default", ({
- enumerable: true,
- get: function() {
- return RenderFromTemplateContext;
- }
-}));
-const _interop_require_wildcard = __webpack_require__(1113);
-const _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(8038));
-const _approutercontext = __webpack_require__(3280);
-function RenderFromTemplateContext() {
- const children = (0, _react.useContext)(_approutercontext.TemplateContext);
- return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, children);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=render-from-template-context.js.map
-
-
-/***/ }),
-
-/***/ 8837:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "applyFlightData", ({
- enumerable: true,
- get: function() {
- return applyFlightData;
- }
-}));
-const _approutercontext = __webpack_require__(3280);
-const _filllazyitemstillleafwithhead = __webpack_require__(985);
-const _fillcachewithnewsubtreedata = __webpack_require__(4940);
-function applyFlightData(existingCache, cache, flightDataPath, wasPrefetched) {
- if (wasPrefetched === void 0) wasPrefetched = false;
- // The one before last item is the router state tree patch
- const [treePatch, subTreeData, head] = flightDataPath.slice(-3);
- // Handles case where prefetch only returns the router tree patch without rendered components.
- if (subTreeData === null) {
- return false;
- }
- if (flightDataPath.length === 3) {
- cache.status = _approutercontext.CacheStates.READY;
- cache.subTreeData = subTreeData;
- (0, _filllazyitemstillleafwithhead.fillLazyItemsTillLeafWithHead)(cache, existingCache, treePatch, head, wasPrefetched);
- } else {
- // Copy subTreeData for the root node of the cache.
- cache.status = _approutercontext.CacheStates.READY;
- cache.subTreeData = existingCache.subTreeData;
- cache.parallelRoutes = new Map(existingCache.parallelRoutes);
- // Create a copy of the existing cache with the subTreeData applied.
- (0, _fillcachewithnewsubtreedata.fillCacheWithNewSubTreeData)(cache, existingCache, flightDataPath, wasPrefetched);
- }
- return true;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=apply-flight-data.js.map
-
-
-/***/ }),
-
-/***/ 951:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "applyRouterStatePatchToTree", ({
- enumerable: true,
- get: function() {
- return applyRouterStatePatchToTree;
- }
-}));
-const _matchsegments = __webpack_require__(5507);
-/**
- * Deep merge of the two router states. Parallel route keys are preserved if the patch doesn't have them.
- */ function applyPatch(initialTree, patchTree) {
- const [initialSegment, initialParallelRoutes] = initialTree;
- const [patchSegment, patchParallelRoutes] = patchTree;
- // if the applied patch segment is __DEFAULT__ then we can ignore it and return the initial tree
- // this is because the __DEFAULT__ segment is used as a placeholder on navigation
- if (patchSegment === "__DEFAULT__" && initialSegment !== "__DEFAULT__") {
- return initialTree;
- }
- if ((0, _matchsegments.matchSegment)(initialSegment, patchSegment)) {
- const newParallelRoutes = {};
- for(const key in initialParallelRoutes){
- const isInPatchTreeParallelRoutes = typeof patchParallelRoutes[key] !== "undefined";
- if (isInPatchTreeParallelRoutes) {
- newParallelRoutes[key] = applyPatch(initialParallelRoutes[key], patchParallelRoutes[key]);
- } else {
- newParallelRoutes[key] = initialParallelRoutes[key];
- }
- }
- for(const key in patchParallelRoutes){
- if (newParallelRoutes[key]) {
- continue;
- }
- newParallelRoutes[key] = patchParallelRoutes[key];
- }
- const tree = [
- initialSegment,
- newParallelRoutes
- ];
- if (initialTree[2]) {
- tree[2] = initialTree[2];
- }
- if (initialTree[3]) {
- tree[3] = initialTree[3];
- }
- if (initialTree[4]) {
- tree[4] = initialTree[4];
- }
- return tree;
- }
- return patchTree;
-}
-function applyRouterStatePatchToTree(flightSegmentPath, flightRouterState, treePatch) {
- const [segment, parallelRoutes, , , isRootLayout] = flightRouterState;
- // Root refresh
- if (flightSegmentPath.length === 1) {
- const tree = applyPatch(flightRouterState, treePatch);
- return tree;
- }
- const [currentSegment, parallelRouteKey] = flightSegmentPath;
- // Tree path returned from the server should always match up with the current tree in the browser
- if (!(0, _matchsegments.matchSegment)(currentSegment, segment)) {
- return null;
- }
- const lastSegment = flightSegmentPath.length === 2;
- let parallelRoutePatch;
- if (lastSegment) {
- parallelRoutePatch = applyPatch(parallelRoutes[parallelRouteKey], treePatch);
- } else {
- parallelRoutePatch = applyRouterStatePatchToTree(flightSegmentPath.slice(2), parallelRoutes[parallelRouteKey], treePatch);
- if (parallelRoutePatch === null) {
- return null;
- }
- }
- const tree = [
- flightSegmentPath[0],
- {
- ...parallelRoutes,
- [parallelRouteKey]: parallelRoutePatch
- }
- ];
- // Current segment is the root layout
- if (isRootLayout) {
- tree[4] = true;
- }
- return tree;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=apply-router-state-patch-to-tree.js.map
-
-
-/***/ }),
-
-/***/ 226:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- extractPathFromFlightRouterState: function() {
- return extractPathFromFlightRouterState;
- },
- computeChangedPath: function() {
- return computeChangedPath;
- }
-});
-const _interceptionroutes = __webpack_require__(8652);
-const _matchsegments = __webpack_require__(5507);
-const segmentToPathname = (segment)=>{
- if (typeof segment === "string") {
- return segment;
- }
- return segment[1];
-};
-function normalizePathname(pathname) {
- return pathname.split("/").reduce((acc, segment)=>{
- if (segment === "" || segment.startsWith("(") && segment.endsWith(")")) {
- return acc;
- }
- return acc + "/" + segment;
- }, "") || "/";
-}
-function extractPathFromFlightRouterState(flightRouterState) {
- const segment = Array.isArray(flightRouterState[0]) ? flightRouterState[0][1] : flightRouterState[0];
- if (segment === "__DEFAULT__" || _interceptionroutes.INTERCEPTION_ROUTE_MARKERS.some((m)=>segment.startsWith(m))) return undefined;
- if (segment.startsWith("__PAGE__")) return "";
- const path = [
- segment
- ];
- var _flightRouterState_;
- const parallelRoutes = (_flightRouterState_ = flightRouterState[1]) != null ? _flightRouterState_ : {};
- const childrenPath = parallelRoutes.children ? extractPathFromFlightRouterState(parallelRoutes.children) : undefined;
- if (childrenPath !== undefined) {
- path.push(childrenPath);
- } else {
- for (const [key, value] of Object.entries(parallelRoutes)){
- if (key === "children") continue;
- const childPath = extractPathFromFlightRouterState(value);
- if (childPath !== undefined) {
- path.push(childPath);
- }
- }
- }
- // TODO-APP: optimise this, it's not ideal to join and split
- return normalizePathname(path.join("/"));
-}
-function computeChangedPathImpl(treeA, treeB) {
- const [segmentA, parallelRoutesA] = treeA;
- const [segmentB, parallelRoutesB] = treeB;
- const normalizedSegmentA = segmentToPathname(segmentA);
- const normalizedSegmentB = segmentToPathname(segmentB);
- if (_interceptionroutes.INTERCEPTION_ROUTE_MARKERS.some((m)=>normalizedSegmentA.startsWith(m) || normalizedSegmentB.startsWith(m))) {
- return "";
- }
- if (!(0, _matchsegments.matchSegment)(segmentA, segmentB)) {
- var _extractPathFromFlightRouterState;
- // once we find where the tree changed, we compute the rest of the path by traversing the tree
- return (_extractPathFromFlightRouterState = extractPathFromFlightRouterState(treeB)) != null ? _extractPathFromFlightRouterState : "";
- }
- for(const parallelRouterKey in parallelRoutesA){
- if (parallelRoutesB[parallelRouterKey]) {
- const changedPath = computeChangedPathImpl(parallelRoutesA[parallelRouterKey], parallelRoutesB[parallelRouterKey]);
- if (changedPath !== null) {
- return segmentToPathname(segmentB) + "/" + changedPath;
- }
- }
- }
- return null;
-}
-function computeChangedPath(treeA, treeB) {
- const changedPath = computeChangedPathImpl(treeA, treeB);
- if (changedPath == null || changedPath === "/") {
- return changedPath;
- }
- // lightweight normalization to remove route groups
- return normalizePathname(changedPath);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=compute-changed-path.js.map
-
-
-/***/ }),
-
-/***/ 8253:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createHrefFromUrl", ({
- enumerable: true,
- get: function() {
- return createHrefFromUrl;
- }
-}));
-function createHrefFromUrl(url, includeHash) {
- if (includeHash === void 0) includeHash = true;
- return url.pathname + url.search + (includeHash ? url.hash : "");
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=create-href-from-url.js.map
-
-
-/***/ }),
-
-/***/ 3558:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createInitialRouterState", ({
- enumerable: true,
- get: function() {
- return createInitialRouterState;
- }
-}));
-const _approutercontext = __webpack_require__(3280);
-const _createhreffromurl = __webpack_require__(8253);
-const _filllazyitemstillleafwithhead = __webpack_require__(985);
-const _computechangedpath = __webpack_require__(226);
-function createInitialRouterState(param) {
- let { initialTree , children , initialCanonicalUrl , initialParallelRoutes , isServer , location , initialHead } = param;
- const cache = {
- status: _approutercontext.CacheStates.READY,
- data: null,
- subTreeData: children,
- // The cache gets seeded during the first render. `initialParallelRoutes` ensures the cache from the first render is there during the second render.
- parallelRoutes: isServer ? new Map() : initialParallelRoutes
- };
- // When the cache hasn't been seeded yet we fill the cache with the head.
- if (initialParallelRoutes === null || initialParallelRoutes.size === 0) {
- (0, _filllazyitemstillleafwithhead.fillLazyItemsTillLeafWithHead)(cache, undefined, initialTree, initialHead);
- }
- var _ref;
- return {
- tree: initialTree,
- cache,
- prefetchCache: new Map(),
- pushRef: {
- pendingPush: false,
- mpaNavigation: false
- },
- focusAndScrollRef: {
- apply: false,
- hashFragment: null,
- segmentPaths: []
- },
- canonicalUrl: // This is safe to do as canonicalUrl can't be rendered, it's only used to control the history updates in the useEffect further down in this file.
- location ? (0, _createhreffromurl.createHrefFromUrl)(location) : initialCanonicalUrl,
- nextUrl: (_ref = (0, _computechangedpath.extractPathFromFlightRouterState)(initialTree) || (location == null ? void 0 : location.pathname)) != null ? _ref : null
- };
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=create-initial-router-state.js.map
-
-
-/***/ }),
-
-/***/ 5603:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createOptimisticTree", ({
- enumerable: true,
- get: function() {
- return createOptimisticTree;
- }
-}));
-const _matchsegments = __webpack_require__(5507);
-function createOptimisticTree(segments, flightRouterState, parentRefetch) {
- const [existingSegment, existingParallelRoutes, url, refresh, isRootLayout] = flightRouterState || [
- null,
- {}
- ];
- const segment = segments[0];
- const isLastSegment = segments.length === 1;
- const segmentMatches = existingSegment !== null && (0, _matchsegments.matchSegment)(existingSegment, segment);
- // if there are multiple parallel routes at this level, we need to refetch here
- // to ensure we get the correct tree. This is because we don't know which
- // parallel route will match the next segment.
- const hasMultipleParallelRoutes = Object.keys(existingParallelRoutes).length > 1;
- const shouldRefetchThisLevel = !flightRouterState || !segmentMatches || hasMultipleParallelRoutes;
- let parallelRoutes = {};
- if (existingSegment !== null && segmentMatches) {
- parallelRoutes = existingParallelRoutes;
- }
- let childTree;
- // if there's multiple parallel routes at this level, we shouldn't create an
- // optimistic tree for the next level because we don't know which one will
- // match the next segment.
- if (!isLastSegment && !hasMultipleParallelRoutes) {
- const childItem = createOptimisticTree(segments.slice(1), parallelRoutes ? parallelRoutes.children : null, parentRefetch || shouldRefetchThisLevel);
- childTree = childItem;
- }
- const result = [
- segment,
- {
- ...parallelRoutes,
- ...childTree ? {
- children: childTree
- } : {}
- }
- ];
- if (url) {
- result[2] = url;
- }
- if (!parentRefetch && shouldRefetchThisLevel) {
- result[3] = "refetch";
- } else if (segmentMatches && refresh) {
- result[3] = refresh;
- }
- if (segmentMatches && isRootLayout) {
- result[4] = isRootLayout;
- }
- return result;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=create-optimistic-tree.js.map
-
-
-/***/ }),
-
-/***/ 5792:
-/***/ ((module, exports) => {
-
-"use strict";
-/**
- * Create data fetching record for Promise.
- */ // TODO-APP: change `any` to type inference.
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createRecordFromThenable", ({
- enumerable: true,
- get: function() {
- return createRecordFromThenable;
- }
-}));
-function createRecordFromThenable(thenable) {
- thenable.status = "pending";
- thenable.then((value)=>{
- if (thenable.status === "pending") {
- thenable.status = "fulfilled";
- thenable.value = value;
- }
- }, (err)=>{
- if (thenable.status === "pending") {
- thenable.status = "rejected";
- thenable.value = err;
- }
- });
- return thenable;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=create-record-from-thenable.js.map
-
-
-/***/ }),
-
-/***/ 5370:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createRouterCacheKey", ({
- enumerable: true,
- get: function() {
- return createRouterCacheKey;
- }
-}));
-function createRouterCacheKey(segment, withoutSearchParameters) {
- if (withoutSearchParameters === void 0) withoutSearchParameters = false;
- return Array.isArray(segment) ? segment[0] + "|" + segment[1] + "|" + segment[2] : withoutSearchParameters && segment.startsWith("__PAGE__") ? "__PAGE__" : segment;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=create-router-cache-key.js.map
-
-
-/***/ }),
-
-/***/ 969:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "fetchServerResponse", ({
- enumerable: true,
- get: function() {
- return fetchServerResponse;
- }
-}));
-const _client = __webpack_require__(7897);
-const _approuterheaders = __webpack_require__(281);
-const _approuter = __webpack_require__(125);
-const _appcallserver = __webpack_require__(4783);
-const _routerreducertypes = __webpack_require__(549);
-async function fetchServerResponse(url, flightRouterState, nextUrl, prefetchKind) {
- const headers = {
- // Enable flight response
- [_approuterheaders.RSC]: "1",
- // Provide the current router state
- [_approuterheaders.NEXT_ROUTER_STATE_TREE]: JSON.stringify(flightRouterState)
- };
- /**
- * Three cases:
- * - `prefetchKind` is `undefined`, it means it's a normal navigation, so we want to prefetch the page data fully
- * - `prefetchKind` is `full` - we want to prefetch the whole page so same as above
- * - `prefetchKind` is `auto` - if the page is dynamic, prefetch the page data partially, if static prefetch the page data fully
- */ if (prefetchKind === _routerreducertypes.PrefetchKind.AUTO) {
- headers[_approuterheaders.NEXT_ROUTER_PREFETCH] = "1";
- }
- if (nextUrl) {
- headers[_approuterheaders.NEXT_URL] = nextUrl;
- }
- try {
- let fetchUrl = url;
- if (true) {
- if (false) {}
- }
- const res = await fetch(fetchUrl, {
- // Backwards compat for older browsers. `same-origin` is the default in modern browsers.
- credentials: "same-origin",
- headers
- });
- const canonicalUrl = res.redirected ? (0, _approuter.urlToUrlWithoutFlightMarker)(res.url) : undefined;
- const contentType = res.headers.get("content-type") || "";
- let isFlightResponse = contentType === _approuterheaders.RSC_CONTENT_TYPE_HEADER;
- if (true) {
- if (false) {}
- }
- // If fetch returns something different than flight response handle it like a mpa navigation
- // If the fetch was not 200, we also handle it like a mpa navigation
- if (!isFlightResponse || !res.ok) {
- return [
- res.url,
- undefined
- ];
- }
- // Handle the `fetch` readable stream that can be unwrapped by `React.use`.
- const flightData = await (0, _client.createFromFetch)(Promise.resolve(res), {
- callServer: _appcallserver.callServer
- });
- return [
- flightData,
- canonicalUrl
- ];
- } catch (err) {
- console.error("Failed to fetch RSC payload. Falling back to browser navigation.", err);
- // If fetch fails handle it like a mpa navigation
- // TODO-APP: Add a test for the case where a CORS request fails, e.g. external url redirect coming from the response.
- // See https://github.com/vercel/next.js/issues/43605#issuecomment-1451617521 for a reproduction.
- return [
- url.toString(),
- undefined
- ];
- }
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=fetch-server-response.js.map
-
-
-/***/ }),
-
-/***/ 277:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "fillCacheWithDataProperty", ({
- enumerable: true,
- get: function() {
- return fillCacheWithDataProperty;
- }
-}));
-const _approutercontext = __webpack_require__(3280);
-const _createroutercachekey = __webpack_require__(5370);
-function fillCacheWithDataProperty(newCache, existingCache, flightSegmentPath, fetchResponse, bailOnParallelRoutes) {
- if (bailOnParallelRoutes === void 0) bailOnParallelRoutes = false;
- const isLastEntry = flightSegmentPath.length <= 2;
- const [parallelRouteKey, segment] = flightSegmentPath;
- const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(segment);
- const existingChildSegmentMap = existingCache.parallelRoutes.get(parallelRouteKey);
- if (!existingChildSegmentMap || bailOnParallelRoutes && existingCache.parallelRoutes.size > 1) {
- // Bailout because the existing cache does not have the path to the leaf node
- // or the existing cache has multiple parallel routes
- // Will trigger lazy fetch in layout-router because of missing segment
- return {
- bailOptimistic: true
- };
- }
- let childSegmentMap = newCache.parallelRoutes.get(parallelRouteKey);
- if (!childSegmentMap || childSegmentMap === existingChildSegmentMap) {
- childSegmentMap = new Map(existingChildSegmentMap);
- newCache.parallelRoutes.set(parallelRouteKey, childSegmentMap);
- }
- const existingChildCacheNode = existingChildSegmentMap.get(cacheKey);
- let childCacheNode = childSegmentMap.get(cacheKey);
- // In case of last segment start off the fetch at this level and don't copy further down.
- if (isLastEntry) {
- if (!childCacheNode || !childCacheNode.data || childCacheNode === existingChildCacheNode) {
- childSegmentMap.set(cacheKey, {
- status: _approutercontext.CacheStates.DATA_FETCH,
- data: fetchResponse(),
- subTreeData: null,
- parallelRoutes: new Map()
- });
- }
- return;
- }
- if (!childCacheNode || !existingChildCacheNode) {
- // Start fetch in the place where the existing cache doesn't have the data yet.
- if (!childCacheNode) {
- childSegmentMap.set(cacheKey, {
- status: _approutercontext.CacheStates.DATA_FETCH,
- data: fetchResponse(),
- subTreeData: null,
- parallelRoutes: new Map()
- });
- }
- return;
- }
- if (childCacheNode === existingChildCacheNode) {
- childCacheNode = {
- status: childCacheNode.status,
- data: childCacheNode.data,
- subTreeData: childCacheNode.subTreeData,
- parallelRoutes: new Map(childCacheNode.parallelRoutes)
- };
- childSegmentMap.set(cacheKey, childCacheNode);
- }
- return fillCacheWithDataProperty(childCacheNode, existingChildCacheNode, flightSegmentPath.slice(2), fetchResponse);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=fill-cache-with-data-property.js.map
-
-
-/***/ }),
-
-/***/ 4940:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "fillCacheWithNewSubTreeData", ({
- enumerable: true,
- get: function() {
- return fillCacheWithNewSubTreeData;
- }
-}));
-const _approutercontext = __webpack_require__(3280);
-const _invalidatecachebyrouterstate = __webpack_require__(6246);
-const _filllazyitemstillleafwithhead = __webpack_require__(985);
-const _createroutercachekey = __webpack_require__(5370);
-function fillCacheWithNewSubTreeData(newCache, existingCache, flightDataPath, wasPrefetched) {
- const isLastEntry = flightDataPath.length <= 5;
- const [parallelRouteKey, segment] = flightDataPath;
- const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(segment);
- const existingChildSegmentMap = existingCache.parallelRoutes.get(parallelRouteKey);
- if (!existingChildSegmentMap) {
- // Bailout because the existing cache does not have the path to the leaf node
- // Will trigger lazy fetch in layout-router because of missing segment
- return;
- }
- let childSegmentMap = newCache.parallelRoutes.get(parallelRouteKey);
- if (!childSegmentMap || childSegmentMap === existingChildSegmentMap) {
- childSegmentMap = new Map(existingChildSegmentMap);
- newCache.parallelRoutes.set(parallelRouteKey, childSegmentMap);
- }
- const existingChildCacheNode = existingChildSegmentMap.get(cacheKey);
- let childCacheNode = childSegmentMap.get(cacheKey);
- if (isLastEntry) {
- if (!childCacheNode || !childCacheNode.data || childCacheNode === existingChildCacheNode) {
- childCacheNode = {
- status: _approutercontext.CacheStates.READY,
- data: null,
- subTreeData: flightDataPath[3],
- // Ensure segments other than the one we got data for are preserved.
- parallelRoutes: existingChildCacheNode ? new Map(existingChildCacheNode.parallelRoutes) : new Map()
- };
- if (existingChildCacheNode) {
- (0, _invalidatecachebyrouterstate.invalidateCacheByRouterState)(childCacheNode, existingChildCacheNode, flightDataPath[2]);
- }
- (0, _filllazyitemstillleafwithhead.fillLazyItemsTillLeafWithHead)(childCacheNode, existingChildCacheNode, flightDataPath[2], flightDataPath[4], wasPrefetched);
- childSegmentMap.set(cacheKey, childCacheNode);
- }
- return;
- }
- if (!childCacheNode || !existingChildCacheNode) {
- // Bailout because the existing cache does not have the path to the leaf node
- // Will trigger lazy fetch in layout-router because of missing segment
- return;
- }
- if (childCacheNode === existingChildCacheNode) {
- childCacheNode = {
- status: childCacheNode.status,
- data: childCacheNode.data,
- subTreeData: childCacheNode.subTreeData,
- parallelRoutes: new Map(childCacheNode.parallelRoutes)
- };
- childSegmentMap.set(cacheKey, childCacheNode);
- }
- fillCacheWithNewSubTreeData(childCacheNode, existingChildCacheNode, flightDataPath.slice(2), wasPrefetched);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=fill-cache-with-new-subtree-data.js.map
-
-
-/***/ }),
-
-/***/ 985:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "fillLazyItemsTillLeafWithHead", ({
- enumerable: true,
- get: function() {
- return fillLazyItemsTillLeafWithHead;
- }
-}));
-const _approutercontext = __webpack_require__(3280);
-const _createroutercachekey = __webpack_require__(5370);
-function fillLazyItemsTillLeafWithHead(newCache, existingCache, routerState, head, wasPrefetched) {
- const isLastSegment = Object.keys(routerState[1]).length === 0;
- if (isLastSegment) {
- newCache.head = head;
- return;
- }
- // Remove segment that we got data for so that it is filled in during rendering of subTreeData.
- for(const key in routerState[1]){
- const parallelRouteState = routerState[1][key];
- const segmentForParallelRoute = parallelRouteState[0];
- const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(segmentForParallelRoute);
- if (existingCache) {
- const existingParallelRoutesCacheNode = existingCache.parallelRoutes.get(key);
- if (existingParallelRoutesCacheNode) {
- let parallelRouteCacheNode = new Map(existingParallelRoutesCacheNode);
- const existingCacheNode = parallelRouteCacheNode.get(cacheKey);
- const newCacheNode = wasPrefetched && existingCacheNode ? {
- status: existingCacheNode.status,
- data: existingCacheNode.data,
- subTreeData: existingCacheNode.subTreeData,
- parallelRoutes: new Map(existingCacheNode.parallelRoutes)
- } : {
- status: _approutercontext.CacheStates.LAZY_INITIALIZED,
- data: null,
- subTreeData: null,
- parallelRoutes: new Map(existingCacheNode == null ? void 0 : existingCacheNode.parallelRoutes)
- };
- // Overrides the cache key with the new cache node.
- parallelRouteCacheNode.set(cacheKey, newCacheNode);
- // Traverse deeper to apply the head / fill lazy items till the head.
- fillLazyItemsTillLeafWithHead(newCacheNode, existingCacheNode, parallelRouteState, head, wasPrefetched);
- newCache.parallelRoutes.set(key, parallelRouteCacheNode);
- continue;
- }
- }
- const newCacheNode = {
- status: _approutercontext.CacheStates.LAZY_INITIALIZED,
- data: null,
- subTreeData: null,
- parallelRoutes: new Map()
- };
- const existingParallelRoutes = newCache.parallelRoutes.get(key);
- if (existingParallelRoutes) {
- existingParallelRoutes.set(cacheKey, newCacheNode);
- } else {
- newCache.parallelRoutes.set(key, new Map([
- [
- cacheKey,
- newCacheNode
- ]
- ]));
- }
- fillLazyItemsTillLeafWithHead(newCacheNode, undefined, parallelRouteState, head, wasPrefetched);
- }
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=fill-lazy-items-till-leaf-with-head.js.map
-
-
-/***/ }),
-
-/***/ 9362:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- PrefetchCacheEntryStatus: function() {
- return PrefetchCacheEntryStatus;
- },
- getPrefetchEntryCacheStatus: function() {
- return getPrefetchEntryCacheStatus;
- }
-});
-const FIVE_MINUTES = 5 * 60 * 1000;
-const THIRTY_SECONDS = 30 * 1000;
-var PrefetchCacheEntryStatus;
-(function(PrefetchCacheEntryStatus) {
- PrefetchCacheEntryStatus["fresh"] = "fresh";
- PrefetchCacheEntryStatus["reusable"] = "reusable";
- PrefetchCacheEntryStatus["expired"] = "expired";
- PrefetchCacheEntryStatus["stale"] = "stale";
-})(PrefetchCacheEntryStatus || (PrefetchCacheEntryStatus = {}));
-function getPrefetchEntryCacheStatus(param) {
- let { kind , prefetchTime , lastUsedTime } = param;
- // if the cache entry was prefetched or read less than 30s ago, then we want to re-use it
- if (Date.now() < (lastUsedTime != null ? lastUsedTime : prefetchTime) + THIRTY_SECONDS) {
- return lastUsedTime ? "reusable" : "fresh";
- }
- // if the cache entry was prefetched less than 5 mins ago, then we want to re-use only the loading state
- if (kind === "auto") {
- if (Date.now() < prefetchTime + FIVE_MINUTES) {
- return "stale";
- }
- }
- // if the cache entry was prefetched less than 5 mins ago and was a "full" prefetch, then we want to re-use it "full
- if (kind === "full") {
- if (Date.now() < prefetchTime + FIVE_MINUTES) {
- return "reusable";
- }
- }
- return "expired";
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=get-prefetch-cache-entry-status.js.map
-
-
-/***/ }),
-
-/***/ 5098:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "handleMutable", ({
- enumerable: true,
- get: function() {
- return handleMutable;
- }
-}));
-const _computechangedpath = __webpack_require__(226);
-function handleMutable(state, mutable) {
- var _mutable_scrollableSegments, _computeChangedPath;
- return {
- // Set href.
- canonicalUrl: typeof mutable.canonicalUrl !== "undefined" ? mutable.canonicalUrl === state.canonicalUrl ? state.canonicalUrl : mutable.canonicalUrl : state.canonicalUrl,
- pushRef: {
- pendingPush: typeof mutable.pendingPush !== "undefined" ? mutable.pendingPush : state.pushRef.pendingPush,
- mpaNavigation: typeof mutable.mpaNavigation !== "undefined" ? mutable.mpaNavigation : state.pushRef.mpaNavigation
- },
- // All navigation requires scroll and focus management to trigger.
- focusAndScrollRef: {
- apply: (mutable == null ? void 0 : mutable.scrollableSegments) !== undefined ? true : state.focusAndScrollRef.apply,
- hashFragment: // #top is handled in layout-router.
- mutable.hashFragment && mutable.hashFragment !== "" ? decodeURIComponent(mutable.hashFragment.slice(1)) : state.focusAndScrollRef.hashFragment,
- segmentPaths: (_mutable_scrollableSegments = mutable == null ? void 0 : mutable.scrollableSegments) != null ? _mutable_scrollableSegments : state.focusAndScrollRef.segmentPaths
- },
- // Apply cache.
- cache: mutable.cache ? mutable.cache : state.cache,
- prefetchCache: mutable.prefetchCache ? mutable.prefetchCache : state.prefetchCache,
- // Apply patched router state.
- tree: typeof mutable.patchedTree !== "undefined" ? mutable.patchedTree : state.tree,
- nextUrl: typeof mutable.patchedTree !== "undefined" ? (_computeChangedPath = (0, _computechangedpath.computeChangedPath)(state.tree, mutable.patchedTree)) != null ? _computeChangedPath : state.canonicalUrl : state.nextUrl
- };
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=handle-mutable.js.map
-
-
-/***/ }),
-
-/***/ 1986:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "invalidateCacheBelowFlightSegmentPath", ({
- enumerable: true,
- get: function() {
- return invalidateCacheBelowFlightSegmentPath;
- }
-}));
-const _createroutercachekey = __webpack_require__(5370);
-function invalidateCacheBelowFlightSegmentPath(newCache, existingCache, flightSegmentPath) {
- const isLastEntry = flightSegmentPath.length <= 2;
- const [parallelRouteKey, segment] = flightSegmentPath;
- const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(segment);
- const existingChildSegmentMap = existingCache.parallelRoutes.get(parallelRouteKey);
- if (!existingChildSegmentMap) {
- // Bailout because the existing cache does not have the path to the leaf node
- // Will trigger lazy fetch in layout-router because of missing segment
- return;
- }
- let childSegmentMap = newCache.parallelRoutes.get(parallelRouteKey);
- if (!childSegmentMap || childSegmentMap === existingChildSegmentMap) {
- childSegmentMap = new Map(existingChildSegmentMap);
- newCache.parallelRoutes.set(parallelRouteKey, childSegmentMap);
- }
- // In case of last entry don't copy further down.
- if (isLastEntry) {
- childSegmentMap.delete(cacheKey);
- return;
- }
- const existingChildCacheNode = existingChildSegmentMap.get(cacheKey);
- let childCacheNode = childSegmentMap.get(cacheKey);
- if (!childCacheNode || !existingChildCacheNode) {
- // Bailout because the existing cache does not have the path to the leaf node
- // Will trigger lazy fetch in layout-router because of missing segment
- return;
- }
- if (childCacheNode === existingChildCacheNode) {
- childCacheNode = {
- status: childCacheNode.status,
- data: childCacheNode.data,
- subTreeData: childCacheNode.subTreeData,
- parallelRoutes: new Map(childCacheNode.parallelRoutes)
- };
- childSegmentMap.set(cacheKey, childCacheNode);
- }
- invalidateCacheBelowFlightSegmentPath(childCacheNode, existingChildCacheNode, flightSegmentPath.slice(2));
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=invalidate-cache-below-flight-segmentpath.js.map
-
-
-/***/ }),
-
-/***/ 6246:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "invalidateCacheByRouterState", ({
- enumerable: true,
- get: function() {
- return invalidateCacheByRouterState;
- }
-}));
-const _createroutercachekey = __webpack_require__(5370);
-function invalidateCacheByRouterState(newCache, existingCache, routerState) {
- // Remove segment that we got data for so that it is filled in during rendering of subTreeData.
- for(const key in routerState[1]){
- const segmentForParallelRoute = routerState[1][key][0];
- const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(segmentForParallelRoute);
- const existingParallelRoutesCacheNode = existingCache.parallelRoutes.get(key);
- if (existingParallelRoutesCacheNode) {
- let parallelRouteCacheNode = new Map(existingParallelRoutesCacheNode);
- parallelRouteCacheNode.delete(cacheKey);
- newCache.parallelRoutes.set(key, parallelRouteCacheNode);
- }
- }
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=invalidate-cache-by-router-state.js.map
-
-
-/***/ }),
-
-/***/ 9610:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "isNavigatingToNewRootLayout", ({
- enumerable: true,
- get: function() {
- return isNavigatingToNewRootLayout;
- }
-}));
-function isNavigatingToNewRootLayout(currentTree, nextTree) {
- // Compare segments
- const currentTreeSegment = currentTree[0];
- const nextTreeSegment = nextTree[0];
- // If any segment is different before we find the root layout, the root layout has changed.
- // E.g. /same/(group1)/layout.js -> /same/(group2)/layout.js
- // First segment is 'same' for both, keep looking. (group1) changed to (group2) before the root layout was found, it must have changed.
- if (Array.isArray(currentTreeSegment) && Array.isArray(nextTreeSegment)) {
- // Compare dynamic param name and type but ignore the value, different values would not affect the current root layout
- // /[name] - /slug1 and /slug2, both values (slug1 & slug2) still has the same layout /[name]/layout.js
- if (currentTreeSegment[0] !== nextTreeSegment[0] || currentTreeSegment[2] !== nextTreeSegment[2]) {
- return true;
- }
- } else if (currentTreeSegment !== nextTreeSegment) {
- return true;
- }
- // Current tree root layout found
- if (currentTree[4]) {
- // If the next tree doesn't have the root layout flag, it must have changed.
- return !nextTree[4];
- }
- // Current tree didn't have its root layout here, must have changed.
- if (nextTree[4]) {
- return true;
- }
- // We can't assume it's `parallelRoutes.children` here in case the root layout is `app/@something/layout.js`
- // But it's not possible to be more than one parallelRoutes before the root layout is found
- // TODO-APP: change to traverse all parallel routes
- const currentTreeChild = Object.values(currentTree[1])[0];
- const nextTreeChild = Object.values(nextTree[1])[0];
- if (!currentTreeChild || !nextTreeChild) return true;
- return isNavigatingToNewRootLayout(currentTreeChild, nextTreeChild);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=is-navigating-to-new-root-layout.js.map
-
-
-/***/ }),
-
-/***/ 4170:
-/***/ ((module, exports) => {
-
-"use strict";
-/**
- * Read record value or throw Promise if it's not resolved yet.
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "readRecordValue", ({
- enumerable: true,
- get: function() {
- return readRecordValue;
- }
-}));
-function readRecordValue(thenable) {
- // @ts-expect-error TODO: fix type
- if (thenable.status === "fulfilled") {
- // @ts-expect-error TODO: fix type
- return thenable.value;
- } else {
- throw thenable;
- }
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=read-record-value.js.map
-
-
-/***/ }),
-
-/***/ 7709:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "fastRefreshReducer", ({
- enumerable: true,
- get: function() {
- return fastRefreshReducer;
- }
-}));
-const _fetchserverresponse = __webpack_require__(969);
-const _createrecordfromthenable = __webpack_require__(5792);
-const _readrecordvalue = __webpack_require__(4170);
-const _createhreffromurl = __webpack_require__(8253);
-const _applyrouterstatepatchtotree = __webpack_require__(951);
-const _isnavigatingtonewrootlayout = __webpack_require__(9610);
-const _navigatereducer = __webpack_require__(1935);
-const _handlemutable = __webpack_require__(5098);
-const _applyflightdata = __webpack_require__(8837);
-// A version of refresh reducer that keeps the cache around instead of wiping all of it.
-function fastRefreshReducerImpl(state, action) {
- const { cache , mutable , origin } = action;
- const href = state.canonicalUrl;
- const isForCurrentTree = JSON.stringify(mutable.previousTree) === JSON.stringify(state.tree);
- if (isForCurrentTree) {
- return (0, _handlemutable.handleMutable)(state, mutable);
- }
- if (!cache.data) {
- // TODO-APP: verify that `href` is not an external url.
- // Fetch data from the root of the tree.
- cache.data = (0, _createrecordfromthenable.createRecordFromThenable)((0, _fetchserverresponse.fetchServerResponse)(new URL(href, origin), [
- state.tree[0],
- state.tree[1],
- state.tree[2],
- "refetch"
- ], state.nextUrl));
- }
- const [flightData, canonicalUrlOverride] = (0, _readrecordvalue.readRecordValue)(cache.data);
- // Handle case when navigating to page in `pages` from `app`
- if (typeof flightData === "string") {
- return (0, _navigatereducer.handleExternalUrl)(state, mutable, flightData, state.pushRef.pendingPush);
- }
- // Remove cache.data as it has been resolved at this point.
- cache.data = null;
- let currentTree = state.tree;
- let currentCache = state.cache;
- for (const flightDataPath of flightData){
- // FlightDataPath with more than two items means unexpected Flight data was returned
- if (flightDataPath.length !== 3) {
- // TODO-APP: handle this case better
- console.log("REFRESH FAILED");
- return state;
- }
- // Given the path can only have two items the items are only the router state and subTreeData for the root.
- const [treePatch] = flightDataPath;
- const newTree = (0, _applyrouterstatepatchtotree.applyRouterStatePatchToTree)([
- ""
- ], currentTree, treePatch);
- if (newTree === null) {
- throw new Error("SEGMENT MISMATCH");
- }
- if ((0, _isnavigatingtonewrootlayout.isNavigatingToNewRootLayout)(currentTree, newTree)) {
- return (0, _navigatereducer.handleExternalUrl)(state, mutable, href, state.pushRef.pendingPush);
- }
- const canonicalUrlOverrideHref = canonicalUrlOverride ? (0, _createhreffromurl.createHrefFromUrl)(canonicalUrlOverride) : undefined;
- if (canonicalUrlOverride) {
- mutable.canonicalUrl = canonicalUrlOverrideHref;
- }
- const applied = (0, _applyflightdata.applyFlightData)(currentCache, cache, flightDataPath);
- if (applied) {
- mutable.cache = cache;
- currentCache = cache;
- }
- mutable.previousTree = currentTree;
- mutable.patchedTree = newTree;
- mutable.canonicalUrl = href;
- currentTree = newTree;
- }
- return (0, _handlemutable.handleMutable)(state, mutable);
-}
-function fastRefreshReducerNoop(state, _action) {
- return state;
-}
-const fastRefreshReducer = true ? fastRefreshReducerNoop : 0;
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=fast-refresh-reducer.js.map
-
-
-/***/ }),
-
-/***/ 7997:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "findHeadInCache", ({
- enumerable: true,
- get: function() {
- return findHeadInCache;
- }
-}));
-const _createroutercachekey = __webpack_require__(5370);
-function findHeadInCache(cache, parallelRoutes) {
- const isLastItem = Object.keys(parallelRoutes).length === 0;
- if (isLastItem) {
- return cache.head;
- }
- for(const key in parallelRoutes){
- const [segment, childParallelRoutes] = parallelRoutes[key];
- const childSegmentMap = cache.parallelRoutes.get(key);
- if (!childSegmentMap) {
- continue;
- }
- const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(segment);
- const cacheNode = childSegmentMap.get(cacheKey);
- if (!cacheNode) {
- continue;
- }
- const item = findHeadInCache(cacheNode, childParallelRoutes);
- if (item) {
- return item;
- }
- }
- return undefined;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=find-head-in-cache.js.map
-
-
-/***/ }),
-
-/***/ 3715:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "getSegmentValue", ({
- enumerable: true,
- get: function() {
- return getSegmentValue;
- }
-}));
-function getSegmentValue(segment) {
- return Array.isArray(segment) ? segment[1] : segment;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=get-segment-value.js.map
-
-
-/***/ }),
-
-/***/ 1935:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- handleExternalUrl: function() {
- return handleExternalUrl;
- },
- navigateReducer: function() {
- return navigateReducer;
- }
-});
-const _approutercontext = __webpack_require__(3280);
-const _fetchserverresponse = __webpack_require__(969);
-const _createrecordfromthenable = __webpack_require__(5792);
-const _readrecordvalue = __webpack_require__(4170);
-const _createhreffromurl = __webpack_require__(8253);
-const _invalidatecachebelowflightsegmentpath = __webpack_require__(1986);
-const _fillcachewithdataproperty = __webpack_require__(277);
-const _createoptimistictree = __webpack_require__(5603);
-const _applyrouterstatepatchtotree = __webpack_require__(951);
-const _shouldhardnavigate = __webpack_require__(9425);
-const _isnavigatingtonewrootlayout = __webpack_require__(9610);
-const _routerreducertypes = __webpack_require__(549);
-const _handlemutable = __webpack_require__(5098);
-const _applyflightdata = __webpack_require__(8837);
-const _getprefetchcacheentrystatus = __webpack_require__(9362);
-const _pruneprefetchcache = __webpack_require__(1262);
-function handleExternalUrl(state, mutable, url, pendingPush) {
- mutable.previousTree = state.tree;
- mutable.mpaNavigation = true;
- mutable.canonicalUrl = url;
- mutable.pendingPush = pendingPush;
- mutable.scrollableSegments = undefined;
- return (0, _handlemutable.handleMutable)(state, mutable);
-}
-function generateSegmentsFromPatch(flightRouterPatch) {
- const segments = [];
- const [segment, parallelRoutes] = flightRouterPatch;
- if (Object.keys(parallelRoutes).length === 0) {
- return [
- [
- segment
- ]
- ];
- }
- for (const [parallelRouteKey, parallelRoute] of Object.entries(parallelRoutes)){
- for (const childSegment of generateSegmentsFromPatch(parallelRoute)){
- // If the segment is empty, it means we are at the root of the tree
- if (segment === "") {
- segments.push([
- parallelRouteKey,
- ...childSegment
- ]);
- } else {
- segments.push([
- segment,
- parallelRouteKey,
- ...childSegment
- ]);
- }
- }
- }
- return segments;
-}
-function addRefetchToLeafSegments(newCache, currentCache, flightSegmentPath, treePatch, data) {
- let appliedPatch = false;
- newCache.status = _approutercontext.CacheStates.READY;
- newCache.subTreeData = currentCache.subTreeData;
- newCache.parallelRoutes = new Map(currentCache.parallelRoutes);
- const segmentPathsToFill = generateSegmentsFromPatch(treePatch).map((segment)=>[
- ...flightSegmentPath,
- ...segment
- ]);
- for (const segmentPaths of segmentPathsToFill){
- const res = (0, _fillcachewithdataproperty.fillCacheWithDataProperty)(newCache, currentCache, segmentPaths, data);
- if (!(res == null ? void 0 : res.bailOptimistic)) {
- appliedPatch = true;
- }
- }
- return appliedPatch;
-}
-function navigateReducer(state, action) {
- const { url , isExternalUrl , navigateType , cache , mutable , forceOptimisticNavigation } = action;
- const { pathname , hash } = url;
- const href = (0, _createhreffromurl.createHrefFromUrl)(url);
- const pendingPush = navigateType === "push";
- // we want to prune the prefetch cache on every navigation to avoid it growing too large
- (0, _pruneprefetchcache.prunePrefetchCache)(state.prefetchCache);
- const isForCurrentTree = JSON.stringify(mutable.previousTree) === JSON.stringify(state.tree);
- if (isForCurrentTree) {
- return (0, _handlemutable.handleMutable)(state, mutable);
- }
- if (isExternalUrl) {
- return handleExternalUrl(state, mutable, url.toString(), pendingPush);
- }
- let prefetchValues = state.prefetchCache.get((0, _createhreffromurl.createHrefFromUrl)(url, false));
- if (forceOptimisticNavigation && (prefetchValues == null ? void 0 : prefetchValues.kind) !== _routerreducertypes.PrefetchKind.TEMPORARY) {
- const segments = pathname.split("/");
- // TODO-APP: figure out something better for index pages
- segments.push("__PAGE__");
- // Optimistic tree case.
- // If the optimistic tree is deeper than the current state leave that deeper part out of the fetch
- const optimisticTree = (0, _createoptimistictree.createOptimisticTree)(segments, state.tree, false);
- // we need a copy of the cache in case we need to revert to it
- const temporaryCacheNode = {
- ...cache
- };
- // Copy subTreeData for the root node of the cache.
- // Note: didn't do it above because typescript doesn't like it.
- temporaryCacheNode.status = _approutercontext.CacheStates.READY;
- temporaryCacheNode.subTreeData = state.cache.subTreeData;
- temporaryCacheNode.parallelRoutes = new Map(state.cache.parallelRoutes);
- const data = (0, _createrecordfromthenable.createRecordFromThenable)((0, _fetchserverresponse.fetchServerResponse)(url, optimisticTree, state.nextUrl));
- // TODO-APP: segments.slice(1) strips '', we can get rid of '' altogether.
- // TODO-APP: re-evaluate if we need to strip the last segment
- const optimisticFlightSegmentPath = segments.slice(1).map((segment)=>[
- "children",
- segment
- ]).flat();
- // Copy existing cache nodes as far as possible and fill in `data` property with the started data fetch.
- // The `data` property is used to suspend in layout-router during render if it hasn't resolved yet by the time it renders.
- const res = (0, _fillcachewithdataproperty.fillCacheWithDataProperty)(temporaryCacheNode, state.cache, optimisticFlightSegmentPath, ()=>data, true);
- // If optimistic fetch couldn't happen it falls back to the non-optimistic case.
- if (!(res == null ? void 0 : res.bailOptimistic)) {
- mutable.previousTree = state.tree;
- mutable.patchedTree = optimisticTree;
- mutable.pendingPush = pendingPush;
- mutable.hashFragment = hash;
- mutable.scrollableSegments = [];
- mutable.cache = temporaryCacheNode;
- mutable.canonicalUrl = href;
- state.prefetchCache.set((0, _createhreffromurl.createHrefFromUrl)(url, false), {
- data: Promise.resolve(data),
- // this will make sure that the entry will be discarded after 30s
- kind: _routerreducertypes.PrefetchKind.TEMPORARY,
- prefetchTime: Date.now(),
- treeAtTimeOfPrefetch: state.tree,
- lastUsedTime: Date.now()
- });
- return (0, _handlemutable.handleMutable)(state, mutable);
- }
- }
- // If we don't have a prefetch value, we need to create one
- if (!prefetchValues) {
- const data = (0, _createrecordfromthenable.createRecordFromThenable)((0, _fetchserverresponse.fetchServerResponse)(url, state.tree, state.nextUrl));
- const newPrefetchValue = {
- data: Promise.resolve(data),
- // this will make sure that the entry will be discarded after 30s
- kind: _routerreducertypes.PrefetchKind.TEMPORARY,
- prefetchTime: Date.now(),
- treeAtTimeOfPrefetch: state.tree,
- lastUsedTime: null
- };
- state.prefetchCache.set((0, _createhreffromurl.createHrefFromUrl)(url, false), newPrefetchValue);
- prefetchValues = newPrefetchValue;
- }
- const prefetchEntryCacheStatus = (0, _getprefetchcacheentrystatus.getPrefetchEntryCacheStatus)(prefetchValues);
- // The one before last item is the router state tree patch
- const { treeAtTimeOfPrefetch , data } = prefetchValues;
- // Unwrap cache data with `use` to suspend here (in the reducer) until the fetch resolves.
- const [flightData, canonicalUrlOverride] = (0, _readrecordvalue.readRecordValue)(data);
- // important: we should only mark the cache node as dirty after we unsuspend from the call above
- prefetchValues.lastUsedTime = Date.now();
- // Handle case when navigating to page in `pages` from `app`
- if (typeof flightData === "string") {
- return handleExternalUrl(state, mutable, flightData, pendingPush);
- }
- let currentTree = state.tree;
- let currentCache = state.cache;
- let scrollableSegments = [];
- for (const flightDataPath of flightData){
- const flightSegmentPath = flightDataPath.slice(0, -4);
- // The one before last item is the router state tree patch
- const [treePatch] = flightDataPath.slice(-3);
- // Create new tree based on the flightSegmentPath and router state patch
- let newTree = (0, _applyrouterstatepatchtotree.applyRouterStatePatchToTree)([
- "",
- ...flightSegmentPath
- ], currentTree, treePatch);
- // If the tree patch can't be applied to the current tree then we use the tree at time of prefetch
- // TODO-APP: This should instead fill in the missing pieces in `currentTree` with the data from `treeAtTimeOfPrefetch`, then apply the patch.
- if (newTree === null) {
- newTree = (0, _applyrouterstatepatchtotree.applyRouterStatePatchToTree)([
- "",
- ...flightSegmentPath
- ], treeAtTimeOfPrefetch, treePatch);
- }
- if (newTree !== null) {
- if ((0, _isnavigatingtonewrootlayout.isNavigatingToNewRootLayout)(currentTree, newTree)) {
- return handleExternalUrl(state, mutable, href, pendingPush);
- }
- let applied = (0, _applyflightdata.applyFlightData)(currentCache, cache, flightDataPath, prefetchValues.kind === "auto" && prefetchEntryCacheStatus === _getprefetchcacheentrystatus.PrefetchCacheEntryStatus.reusable);
- if (!applied && prefetchEntryCacheStatus === _getprefetchcacheentrystatus.PrefetchCacheEntryStatus.stale) {
- applied = addRefetchToLeafSegments(cache, currentCache, flightSegmentPath, treePatch, ()=>(0, _fetchserverresponse.fetchServerResponse)(url, currentTree, state.nextUrl));
- }
- const hardNavigate = (0, _shouldhardnavigate.shouldHardNavigate)([
- "",
- ...flightSegmentPath
- ], currentTree);
- if (hardNavigate) {
- cache.status = _approutercontext.CacheStates.READY;
- // Copy subTreeData for the root node of the cache.
- cache.subTreeData = currentCache.subTreeData;
- (0, _invalidatecachebelowflightsegmentpath.invalidateCacheBelowFlightSegmentPath)(cache, currentCache, flightSegmentPath);
- // Ensure the existing cache value is used when the cache was not invalidated.
- mutable.cache = cache;
- } else if (applied) {
- mutable.cache = cache;
- }
- currentCache = cache;
- currentTree = newTree;
- for (const subSegment of generateSegmentsFromPatch(treePatch)){
- const scrollableSegmentPath = [
- ...flightSegmentPath,
- ...subSegment
- ];
- // Filter out the __DEFAULT__ paths as they shouldn't be scrolled to in this case.
- if (scrollableSegmentPath[scrollableSegmentPath.length - 1] !== "__DEFAULT__") {
- scrollableSegments.push(scrollableSegmentPath);
- }
- }
- }
- }
- mutable.previousTree = state.tree;
- mutable.patchedTree = currentTree;
- mutable.scrollableSegments = scrollableSegments;
- mutable.canonicalUrl = canonicalUrlOverride ? (0, _createhreffromurl.createHrefFromUrl)(canonicalUrlOverride) : href;
- mutable.pendingPush = pendingPush;
- mutable.hashFragment = hash;
- return (0, _handlemutable.handleMutable)(state, mutable);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=navigate-reducer.js.map
-
-
-/***/ }),
-
-/***/ 8411:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "prefetchReducer", ({
- enumerable: true,
- get: function() {
- return prefetchReducer;
- }
-}));
-const _createhreffromurl = __webpack_require__(8253);
-const _fetchserverresponse = __webpack_require__(969);
-const _routerreducertypes = __webpack_require__(549);
-const _createrecordfromthenable = __webpack_require__(5792);
-const _pruneprefetchcache = __webpack_require__(1262);
-function prefetchReducer(state, action) {
- // let's prune the prefetch cache before we do anything else
- (0, _pruneprefetchcache.prunePrefetchCache)(state.prefetchCache);
- const { url } = action;
- const href = (0, _createhreffromurl.createHrefFromUrl)(url, false);
- const cacheEntry = state.prefetchCache.get(href);
- if (cacheEntry) {
- /**
- * If the cache entry present was marked as temporary, it means that we prefetched it from the navigate reducer,
- * where we didn't have the prefetch intent. We want to update it to the new, more accurate, kind here.
- */ if (cacheEntry.kind === _routerreducertypes.PrefetchKind.TEMPORARY) {
- state.prefetchCache.set(href, {
- ...cacheEntry,
- kind: action.kind
- });
- }
- /**
- * if the prefetch action was a full prefetch and that the current cache entry wasn't one, we want to re-prefetch,
- * otherwise we can re-use the current cache entry
- **/ if (!(cacheEntry.kind === _routerreducertypes.PrefetchKind.AUTO && action.kind === _routerreducertypes.PrefetchKind.FULL)) {
- return state;
- }
- }
- // fetchServerResponse is intentionally not awaited so that it can be unwrapped in the navigate-reducer
- const serverResponse = (0, _createrecordfromthenable.createRecordFromThenable)((0, _fetchserverresponse.fetchServerResponse)(url, state.tree, state.nextUrl, action.kind));
- // Create new tree based on the flightSegmentPath and router state patch
- state.prefetchCache.set(href, {
- // Create new tree based on the flightSegmentPath and router state patch
- treeAtTimeOfPrefetch: state.tree,
- data: serverResponse,
- kind: action.kind,
- prefetchTime: Date.now(),
- lastUsedTime: null
- });
- return state;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=prefetch-reducer.js.map
-
-
-/***/ }),
-
-/***/ 1262:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "prunePrefetchCache", ({
- enumerable: true,
- get: function() {
- return prunePrefetchCache;
- }
-}));
-const _getprefetchcacheentrystatus = __webpack_require__(9362);
-function prunePrefetchCache(prefetchCache) {
- for (const [href, prefetchCacheEntry] of prefetchCache){
- if ((0, _getprefetchcacheentrystatus.getPrefetchEntryCacheStatus)(prefetchCacheEntry) === _getprefetchcacheentrystatus.PrefetchCacheEntryStatus.expired) {
- prefetchCache.delete(href);
- }
- }
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=prune-prefetch-cache.js.map
-
-
-/***/ }),
-
-/***/ 9153:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "refreshReducer", ({
- enumerable: true,
- get: function() {
- return refreshReducer;
- }
-}));
-const _fetchserverresponse = __webpack_require__(969);
-const _createrecordfromthenable = __webpack_require__(5792);
-const _readrecordvalue = __webpack_require__(4170);
-const _createhreffromurl = __webpack_require__(8253);
-const _applyrouterstatepatchtotree = __webpack_require__(951);
-const _isnavigatingtonewrootlayout = __webpack_require__(9610);
-const _navigatereducer = __webpack_require__(1935);
-const _handlemutable = __webpack_require__(5098);
-const _approutercontext = __webpack_require__(3280);
-const _filllazyitemstillleafwithhead = __webpack_require__(985);
-function refreshReducer(state, action) {
- const { cache , mutable , origin } = action;
- const href = state.canonicalUrl;
- const isForCurrentTree = JSON.stringify(mutable.previousTree) === JSON.stringify(state.tree);
- if (isForCurrentTree) {
- return (0, _handlemutable.handleMutable)(state, mutable);
- }
- if (!cache.data) {
- // TODO-APP: verify that `href` is not an external url.
- // Fetch data from the root of the tree.
- cache.data = (0, _createrecordfromthenable.createRecordFromThenable)((0, _fetchserverresponse.fetchServerResponse)(new URL(href, origin), [
- state.tree[0],
- state.tree[1],
- state.tree[2],
- "refetch"
- ], state.nextUrl));
- }
- const [flightData, canonicalUrlOverride] = (0, _readrecordvalue.readRecordValue)(cache.data);
- // Handle case when navigating to page in `pages` from `app`
- if (typeof flightData === "string") {
- return (0, _navigatereducer.handleExternalUrl)(state, mutable, flightData, state.pushRef.pendingPush);
- }
- // Remove cache.data as it has been resolved at this point.
- cache.data = null;
- let currentTree = state.tree;
- for (const flightDataPath of flightData){
- // FlightDataPath with more than two items means unexpected Flight data was returned
- if (flightDataPath.length !== 3) {
- // TODO-APP: handle this case better
- console.log("REFRESH FAILED");
- return state;
- }
- // Given the path can only have two items the items are only the router state and subTreeData for the root.
- const [treePatch] = flightDataPath;
- const newTree = (0, _applyrouterstatepatchtotree.applyRouterStatePatchToTree)([
- ""
- ], currentTree, treePatch);
- if (newTree === null) {
- throw new Error("SEGMENT MISMATCH");
- }
- if ((0, _isnavigatingtonewrootlayout.isNavigatingToNewRootLayout)(currentTree, newTree)) {
- return (0, _navigatereducer.handleExternalUrl)(state, mutable, href, state.pushRef.pendingPush);
- }
- const canonicalUrlOverrideHref = canonicalUrlOverride ? (0, _createhreffromurl.createHrefFromUrl)(canonicalUrlOverride) : undefined;
- if (canonicalUrlOverride) {
- mutable.canonicalUrl = canonicalUrlOverrideHref;
- }
- // The one before last item is the router state tree patch
- const [subTreeData, head] = flightDataPath.slice(-2);
- // Handles case where prefetch only returns the router tree patch without rendered components.
- if (subTreeData !== null) {
- cache.status = _approutercontext.CacheStates.READY;
- cache.subTreeData = subTreeData;
- (0, _filllazyitemstillleafwithhead.fillLazyItemsTillLeafWithHead)(cache, undefined, treePatch, head);
- mutable.cache = cache;
- mutable.prefetchCache = new Map();
- }
- mutable.previousTree = currentTree;
- mutable.patchedTree = newTree;
- mutable.canonicalUrl = href;
- currentTree = newTree;
- }
- return (0, _handlemutable.handleMutable)(state, mutable);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=refresh-reducer.js.map
-
-
-/***/ }),
-
-/***/ 734:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "restoreReducer", ({
- enumerable: true,
- get: function() {
- return restoreReducer;
- }
-}));
-const _createhreffromurl = __webpack_require__(8253);
-function restoreReducer(state, action) {
- const { url , tree } = action;
- const href = (0, _createhreffromurl.createHrefFromUrl)(url);
- return {
- // Set canonical url
- canonicalUrl: href,
- pushRef: state.pushRef,
- focusAndScrollRef: state.focusAndScrollRef,
- cache: state.cache,
- prefetchCache: state.prefetchCache,
- // Restore provided tree
- tree: tree,
- nextUrl: url.pathname
- };
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=restore-reducer.js.map
-
-
-/***/ }),
-
-/***/ 7647:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "serverActionReducer", ({
- enumerable: true,
- get: function() {
- return serverActionReducer;
- }
-}));
-const _appcallserver = __webpack_require__(4783);
-const _approuterheaders = __webpack_require__(281);
-const _createrecordfromthenable = __webpack_require__(5792);
-const _readrecordvalue = __webpack_require__(4170);
-const _client = __webpack_require__(7897);
-const _routerreducertypes = __webpack_require__(549);
-const _addbasepath = __webpack_require__(739);
-const _createhreffromurl = __webpack_require__(8253);
-const _redirect = __webpack_require__(6932);
-async function fetchServerAction(state, param) {
- let { actionId , actionArgs } = param;
- const body = await (0, _client.encodeReply)(actionArgs);
- const res = await fetch("", {
- method: "POST",
- headers: {
- Accept: _approuterheaders.RSC_CONTENT_TYPE_HEADER,
- "Next-Action": actionId,
- [_approuterheaders.NEXT_ROUTER_STATE_TREE]: JSON.stringify(state.tree),
- ...state.nextUrl ? {
- [_approuterheaders.NEXT_URL]: state.nextUrl
- } : {}
- },
- body
- });
- const location = res.headers.get("x-action-redirect");
- const redirectLocation = location ? new URL((0, _addbasepath.addBasePath)(location), window.location.origin) : undefined;
- let isFlightResponse = res.headers.get("content-type") === _approuterheaders.RSC_CONTENT_TYPE_HEADER;
- if (isFlightResponse) {
- const result = await (0, _client.createFromFetch)(Promise.resolve(res), {
- callServer: _appcallserver.callServer
- });
- // if it was a redirection, then result is just a regular RSC payload
- if (location) {
- return {
- actionFlightData: result,
- redirectLocation
- };
- // otherwise it's a tuple of [actionResult, actionFlightData]
- } else {
- const [actionResult, actionFlightData] = result != null ? result : [];
- return {
- actionResult,
- actionFlightData,
- redirectLocation
- };
- }
- }
- return {
- redirectLocation
- };
-}
-function serverActionReducer(state, action) {
- // the action could be called twice so we need to check if we already have applied it
- if (action.mutable.serverActionApplied) {
- return state;
- }
- if (!action.mutable.inFlightServerAction) {
- action.mutable.previousTree = state.tree;
- action.mutable.previousUrl = state.canonicalUrl;
- action.mutable.inFlightServerAction = (0, _createrecordfromthenable.createRecordFromThenable)(fetchServerAction(state, action));
- }
- try {
- // suspends until the server action is resolved.
- const { actionResult , actionFlightData , redirectLocation } = (0, _readrecordvalue.readRecordValue)(action.mutable.inFlightServerAction);
- if (redirectLocation) {
- // the redirection might have a flight data associated with it, so we'll populate the cache with it
- if (actionFlightData) {
- const href = (0, _createhreffromurl.createHrefFromUrl)(redirectLocation, false);
- const previousCacheEntry = state.prefetchCache.get(href);
- var _previousCacheEntry_kind;
- state.prefetchCache.set(href, {
- data: (0, _createrecordfromthenable.createRecordFromThenable)(Promise.resolve([
- actionFlightData,
- // TODO-APP: verify the logic around canonical URL overrides
- undefined
- ])),
- kind: (_previousCacheEntry_kind = previousCacheEntry == null ? void 0 : previousCacheEntry.kind) != null ? _previousCacheEntry_kind : _routerreducertypes.PrefetchKind.TEMPORARY,
- prefetchTime: Date.now(),
- treeAtTimeOfPrefetch: action.mutable.previousTree,
- lastUsedTime: null
- });
- }
- // we throw the redirection in the action handler so that it is caught during render
- action.reject((0, _redirect.getRedirectError)(redirectLocation.toString(), _redirect.RedirectType.push));
- } else {
- if (actionFlightData) {
- const href = (0, _createhreffromurl.createHrefFromUrl)(new URL(action.mutable.previousUrl, window.location.origin), false);
- const previousCacheEntry = state.prefetchCache.get(href);
- var _previousCacheEntry_kind1;
- state.prefetchCache.set((0, _createhreffromurl.createHrefFromUrl)(new URL(action.mutable.previousUrl, window.location.origin), false), {
- data: (0, _createrecordfromthenable.createRecordFromThenable)(Promise.resolve([
- actionFlightData,
- // TODO-APP: verify the logic around canonical URL overrides
- undefined
- ])),
- kind: (_previousCacheEntry_kind1 = previousCacheEntry == null ? void 0 : previousCacheEntry.kind) != null ? _previousCacheEntry_kind1 : _routerreducertypes.PrefetchKind.TEMPORARY,
- prefetchTime: Date.now(),
- treeAtTimeOfPrefetch: action.mutable.previousTree,
- lastUsedTime: null
- });
- // this is an intentional hack around React: we want to update the tree in a new render
- setTimeout(()=>{
- action.changeByServerResponse(action.mutable.previousTree, actionFlightData, undefined);
- });
- }
- action.resolve(actionResult);
- }
- } catch (e) {
- if (e.status === "rejected") {
- action.reject(e.value);
- } else {
- throw e;
- }
- }
- action.mutable.serverActionApplied = true;
- return state;
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=server-action-reducer.js.map
-
-
-/***/ }),
-
-/***/ 2813:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "serverPatchReducer", ({
- enumerable: true,
- get: function() {
- return serverPatchReducer;
- }
-}));
-const _createhreffromurl = __webpack_require__(8253);
-const _applyrouterstatepatchtotree = __webpack_require__(951);
-const _isnavigatingtonewrootlayout = __webpack_require__(9610);
-const _navigatereducer = __webpack_require__(1935);
-const _applyflightdata = __webpack_require__(8837);
-const _handlemutable = __webpack_require__(5098);
-function serverPatchReducer(state, action) {
- const { flightData , previousTree , overrideCanonicalUrl , cache , mutable } = action;
- const isForCurrentTree = JSON.stringify(previousTree) === JSON.stringify(state.tree);
- // When a fetch is slow to resolve it could be that you navigated away while the request was happening or before the reducer runs.
- // In that case opt-out of applying the patch given that the data could be stale.
- if (!isForCurrentTree) {
- // TODO-APP: Handle tree mismatch
- console.log("TREE MISMATCH");
- // Keep everything as-is.
- return state;
- }
- if (mutable.previousTree) {
- return (0, _handlemutable.handleMutable)(state, mutable);
- }
- // Handle case when navigating to page in `pages` from `app`
- if (typeof flightData === "string") {
- return (0, _navigatereducer.handleExternalUrl)(state, mutable, flightData, state.pushRef.pendingPush);
- }
- let currentTree = state.tree;
- let currentCache = state.cache;
- for (const flightDataPath of flightData){
- // Slices off the last segment (which is at -4) as it doesn't exist in the tree yet
- const flightSegmentPath = flightDataPath.slice(0, -4);
- const [treePatch] = flightDataPath.slice(-3, -2);
- const newTree = (0, _applyrouterstatepatchtotree.applyRouterStatePatchToTree)([
- "",
- ...flightSegmentPath
- ], currentTree, treePatch);
- if (newTree === null) {
- throw new Error("SEGMENT MISMATCH");
- }
- if ((0, _isnavigatingtonewrootlayout.isNavigatingToNewRootLayout)(currentTree, newTree)) {
- return (0, _navigatereducer.handleExternalUrl)(state, mutable, state.canonicalUrl, state.pushRef.pendingPush);
- }
- const canonicalUrlOverrideHref = overrideCanonicalUrl ? (0, _createhreffromurl.createHrefFromUrl)(overrideCanonicalUrl) : undefined;
- if (canonicalUrlOverrideHref) {
- mutable.canonicalUrl = canonicalUrlOverrideHref;
- }
- (0, _applyflightdata.applyFlightData)(currentCache, cache, flightDataPath);
- mutable.previousTree = currentTree;
- mutable.patchedTree = newTree;
- mutable.cache = cache;
- currentCache = cache;
- currentTree = newTree;
- }
- return (0, _handlemutable.handleMutable)(state, mutable);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=server-patch-reducer.js.map
-
-
-/***/ }),
-
-/***/ 549:
-/***/ ((module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- PrefetchKind: function() {
- return PrefetchKind;
- },
- ACTION_REFRESH: function() {
- return ACTION_REFRESH;
- },
- ACTION_NAVIGATE: function() {
- return ACTION_NAVIGATE;
- },
- ACTION_RESTORE: function() {
- return ACTION_RESTORE;
- },
- ACTION_SERVER_PATCH: function() {
- return ACTION_SERVER_PATCH;
- },
- ACTION_PREFETCH: function() {
- return ACTION_PREFETCH;
- },
- ACTION_FAST_REFRESH: function() {
- return ACTION_FAST_REFRESH;
- },
- ACTION_SERVER_ACTION: function() {
- return ACTION_SERVER_ACTION;
- }
-});
-const ACTION_REFRESH = "refresh";
-const ACTION_NAVIGATE = "navigate";
-const ACTION_RESTORE = "restore";
-const ACTION_SERVER_PATCH = "server-patch";
-const ACTION_PREFETCH = "prefetch";
-const ACTION_FAST_REFRESH = "fast-refresh";
-const ACTION_SERVER_ACTION = "server-action";
-var PrefetchKind;
-(function(PrefetchKind) {
- PrefetchKind["AUTO"] = "auto";
- PrefetchKind["FULL"] = "full";
- PrefetchKind["TEMPORARY"] = "temporary";
-})(PrefetchKind || (PrefetchKind = {}));
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=router-reducer-types.js.map
-
-
-/***/ }),
-
-/***/ 5192:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "reducer", ({
- enumerable: true,
- get: function() {
- return reducer;
- }
-}));
-const _routerreducertypes = __webpack_require__(549);
-const _navigatereducer = __webpack_require__(1935);
-const _serverpatchreducer = __webpack_require__(2813);
-const _restorereducer = __webpack_require__(734);
-const _refreshreducer = __webpack_require__(9153);
-const _prefetchreducer = __webpack_require__(8411);
-const _fastrefreshreducer = __webpack_require__(7709);
-const _serveractionreducer = __webpack_require__(7647);
-/**
- * Reducer that handles the app-router state updates.
- */ function clientReducer(state, action) {
- switch(action.type){
- case _routerreducertypes.ACTION_NAVIGATE:
- {
- return (0, _navigatereducer.navigateReducer)(state, action);
- }
- case _routerreducertypes.ACTION_SERVER_PATCH:
- {
- return (0, _serverpatchreducer.serverPatchReducer)(state, action);
- }
- case _routerreducertypes.ACTION_RESTORE:
- {
- return (0, _restorereducer.restoreReducer)(state, action);
- }
- case _routerreducertypes.ACTION_REFRESH:
- {
- return (0, _refreshreducer.refreshReducer)(state, action);
- }
- case _routerreducertypes.ACTION_FAST_REFRESH:
- {
- return (0, _fastrefreshreducer.fastRefreshReducer)(state, action);
- }
- case _routerreducertypes.ACTION_PREFETCH:
- {
- return (0, _prefetchreducer.prefetchReducer)(state, action);
- }
- case _routerreducertypes.ACTION_SERVER_ACTION:
- {
- return (0, _serveractionreducer.serverActionReducer)(state, action);
- }
- // This case should never be hit as dispatch is strongly typed.
- default:
- throw new Error("Unknown action");
- }
-}
-function serverReducer(state, _action) {
- return state;
-}
-const reducer = true ? serverReducer : 0;
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=router-reducer.js.map
-
-
-/***/ }),
-
-/***/ 9425:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "shouldHardNavigate", ({
- enumerable: true,
- get: function() {
- return shouldHardNavigate;
- }
-}));
-const _matchsegments = __webpack_require__(5507);
-function shouldHardNavigate(flightSegmentPath, flightRouterState) {
- const [segment, parallelRoutes] = flightRouterState;
- // TODO-APP: Check if `as` can be replaced.
- const [currentSegment, parallelRouteKey] = flightSegmentPath;
- // Check if current segment matches the existing segment.
- if (!(0, _matchsegments.matchSegment)(currentSegment, segment)) {
- // If dynamic parameter in tree doesn't match up with segment path a hard navigation is triggered.
- if (Array.isArray(currentSegment)) {
- return true;
- }
- // If the existing segment did not match soft navigation is triggered.
- return false;
- }
- const lastSegment = flightSegmentPath.length <= 2;
- if (lastSegment) {
- return false;
- }
- return shouldHardNavigate(flightSegmentPath.slice(2), parallelRoutes[parallelRouteKey]);
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=should-hard-navigate.js.map
-
-
-/***/ }),
-
-/***/ 9859:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createSearchParamsBailoutProxy", ({
- enumerable: true,
- get: function() {
- return createSearchParamsBailoutProxy;
- }
-}));
-const _staticgenerationbailout = __webpack_require__(9837);
-function createSearchParamsBailoutProxy() {
- return new Proxy({}, {
- get (_target, prop) {
- // React adds some properties on the object when serializing for client components
- if (typeof prop === "string") {
- (0, _staticgenerationbailout.staticGenerationBailout)("searchParams." + prop);
- }
- }
- });
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=searchparams-bailout-proxy.js.map
-
-
-/***/ }),
-
-/***/ 9837:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "staticGenerationBailout", ({
- enumerable: true,
- get: function() {
- return staticGenerationBailout;
- }
-}));
-const _hooksservercontext = __webpack_require__(8340);
-const _staticgenerationasyncstorage = __webpack_require__(94);
-class StaticGenBailoutError extends Error {
- constructor(...args){
- super(...args);
- this.code = "NEXT_STATIC_GEN_BAILOUT";
- }
-}
-const staticGenerationBailout = (reason, opts)=>{
- const staticGenerationStore = _staticgenerationasyncstorage.staticGenerationAsyncStorage.getStore();
- if (staticGenerationStore == null ? void 0 : staticGenerationStore.forceStatic) {
- return true;
- }
- if (staticGenerationStore == null ? void 0 : staticGenerationStore.dynamicShouldError) {
- const { dynamic ="error" , link } = opts || {};
- const suffix = link ? " See more info here: " + link : "";
- throw new StaticGenBailoutError('Page with `dynamic = "' + dynamic + "\"` couldn't be rendered statically because it used `" + reason + "`." + suffix);
- }
- if (staticGenerationStore) {
- staticGenerationStore.revalidate = 0;
- }
- if (staticGenerationStore == null ? void 0 : staticGenerationStore.isStaticGeneration) {
- const err = new _hooksservercontext.DynamicServerError(reason);
- staticGenerationStore.dynamicUsageDescription = reason;
- staticGenerationStore.dynamicUsageStack = err.stack;
- throw err;
- }
- return false;
-};
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=static-generation-bailout.js.map
-
-
-/***/ }),
-
-/***/ 3100:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "default", ({
- enumerable: true,
- get: function() {
- return StaticGenerationSearchParamsBailoutProvider;
- }
-}));
-const _interop_require_default = __webpack_require__(5967);
-const _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(8038));
-const _searchparamsbailoutproxy = __webpack_require__(9859);
-function StaticGenerationSearchParamsBailoutProvider(param) {
- let { Component , propsForComponent } = param;
- const searchParams = (0, _searchparamsbailoutproxy.createSearchParamsBailoutProxy)();
- return /*#__PURE__*/ _react.default.createElement(Component, {
- searchParams: searchParams,
- ...propsForComponent
- });
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=static-generation-searchparams-bailout-provider.js.map
-
-
-/***/ }),
-
-/***/ 9051:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "useReducerWithReduxDevtools", ({
- enumerable: true,
- get: function() {
- return useReducerWithReduxDevtools;
- }
-}));
-const _react = __webpack_require__(8038);
-function normalizeRouterState(val) {
- if (val instanceof Map) {
- const obj = {};
- for (const [key, value] of val.entries()){
- if (typeof value === "function") {
- obj[key] = "fn()";
- continue;
- }
- if (typeof value === "object" && value !== null) {
- if (value.$$typeof) {
- obj[key] = value.$$typeof.toString();
- continue;
- }
- if (value._bundlerConfig) {
- obj[key] = "FlightData";
- continue;
- }
- }
- obj[key] = normalizeRouterState(value);
- }
- return obj;
- }
- if (typeof val === "object" && val !== null) {
- const obj = {};
- for(const key in val){
- const value = val[key];
- if (typeof value === "function") {
- obj[key] = "fn()";
- continue;
- }
- if (typeof value === "object" && value !== null) {
- if (value.$$typeof) {
- obj[key] = value.$$typeof.toString();
- continue;
- }
- if (value.hasOwnProperty("_bundlerConfig")) {
- obj[key] = "FlightData";
- continue;
- }
- }
- obj[key] = normalizeRouterState(value);
- }
- return obj;
- }
- if (Array.isArray(val)) {
- return val.map(normalizeRouterState);
- }
- return val;
-}
-function devToolReducer(fn, ref) {
- return (state, action)=>{
- const res = fn(state, action);
- if (ref.current) {
- ref.current.send(action, normalizeRouterState(res));
- }
- return res;
- };
-}
-function useReducerWithReduxDevtoolsNoop(fn, initialState) {
- const [state, dispatch] = (0, _react.useReducer)(fn, initialState);
- return [
- state,
- dispatch,
- ()=>{}
- ];
-}
-function useReducerWithReduxDevtoolsImpl(fn, initialState) {
- const devtoolsConnectionRef = (0, _react.useRef)();
- const enabledRef = (0, _react.useRef)();
- (0, _react.useEffect)(()=>{
- if (devtoolsConnectionRef.current || enabledRef.current === false) {
- return;
- }
- if (enabledRef.current === undefined && typeof window.__REDUX_DEVTOOLS_EXTENSION__ === "undefined") {
- enabledRef.current = false;
- return;
- }
- devtoolsConnectionRef.current = window.__REDUX_DEVTOOLS_EXTENSION__.connect({
- instanceId: 8000,
- name: "next-router"
- });
- if (devtoolsConnectionRef.current) {
- devtoolsConnectionRef.current.init(normalizeRouterState(initialState));
- }
- return ()=>{
- devtoolsConnectionRef.current = undefined;
- };
- }, [
- initialState
- ]);
- const [state, dispatch] = (0, _react.useReducer)(devToolReducer(/* logReducer( */ fn /*)*/ , devtoolsConnectionRef), initialState);
- const sync = (0, _react.useCallback)(()=>{
- if (devtoolsConnectionRef.current) {
- devtoolsConnectionRef.current.send({
- type: "RENDER_SYNC"
- }, normalizeRouterState(state));
- }
- }, [
- state
- ]);
- return [
- state,
- dispatch,
- sync
- ];
-}
-const useReducerWithReduxDevtools = false ? 0 : useReducerWithReduxDevtoolsNoop;
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=use-reducer-with-devtools.js.map
-
-
-/***/ }),
-
-/***/ 6089:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "normalizePathTrailingSlash", ({
- enumerable: true,
- get: function() {
- return normalizePathTrailingSlash;
- }
-}));
-const _removetrailingslash = __webpack_require__(3297);
-const _parsepath = __webpack_require__(8854);
-const normalizePathTrailingSlash = (path)=>{
- if (!path.startsWith("/") || undefined) {
- return path;
- }
- const { pathname , query , hash } = (0, _parsepath.parsePath)(path);
- if (false) {}
- return "" + (0, _removetrailingslash.removeTrailingSlash)(pathname) + query + hash;
-};
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=normalize-trailing-slash.js.map
-
-
-/***/ }),
-
-/***/ 701:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- suspense: function() {
- return suspense;
- },
- NoSSR: function() {
- return NoSSR;
- }
-});
-const _interop_require_default = __webpack_require__(5967);
-const _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(8038));
-const _nossrerror = __webpack_require__(3904);
-function suspense() {
- const error = new Error(_nossrerror.NEXT_DYNAMIC_NO_SSR_CODE);
- error.digest = _nossrerror.NEXT_DYNAMIC_NO_SSR_CODE;
- throw error;
-}
-function NoSSR(param) {
- let { children } = param;
- if (true) {
- suspense();
- }
- return children;
-} //# sourceMappingURL=dynamic-no-ssr.js.map
-
-
-/***/ }),
-
-/***/ 3904:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-// This has to be a shared module which is shared between client component error boundary and dynamic component
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "NEXT_DYNAMIC_NO_SSR_CODE", ({
- enumerable: true,
- get: function() {
- return NEXT_DYNAMIC_NO_SSR_CODE;
- }
-}));
-const NEXT_DYNAMIC_NO_SSR_CODE = "NEXT_DYNAMIC_NO_SSR_CODE"; //# sourceMappingURL=no-ssr-error.js.map
-
-
-/***/ }),
-
-/***/ 1313:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-/**
- * Copyright (c) Facebook, Inc. and its affiliates.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- */ // Modified from https://github.com/facebook/react/blob/main/packages/react-server-dom-webpack/src/ReactFlightWebpackNodeRegister.js
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createProxy", ({
- enumerable: true,
- get: function() {
- return createProxy;
- }
-}));
-const CLIENT_REFERENCE = Symbol.for("react.client.reference");
-const PROMISE_PROTOTYPE = Promise.prototype;
-const deepProxyHandlers = {
- get: function(target, name, _receiver) {
- switch(name){
- // These names are read by the Flight runtime if you end up using the exports object.
- case "$$typeof":
- // These names are a little too common. We should probably have a way to
- // have the Flight runtime extract the inner target instead.
- return target.$$typeof;
- case "$$id":
- return target.$$id;
- case "$$async":
- return target.$$async;
- case "name":
- return target.name;
- case "displayName":
- return undefined;
- // We need to special case this because createElement reads it if we pass this
- // reference.
- case "defaultProps":
- return undefined;
- // Avoid this attempting to be serialized.
- case "toJSON":
- return undefined;
- case Symbol.toPrimitive.toString():
- // @ts-ignore
- return Object.prototype[Symbol.toPrimitive];
- case "Provider":
- throw new Error(`Cannot render a Client Context Provider on the Server. ` + `Instead, you can export a Client Component wrapper ` + `that itself renders a Client Context Provider.`);
- default:
- break;
- }
- const expression = String(target.name) + "." + String(name);
- throw new Error(`Cannot access ${expression} on the server. ` + "You cannot dot into a client module from a server component. " + "You can only pass the imported name through.");
- },
- set: function() {
- throw new Error("Cannot assign to a client module from a server module.");
- }
-};
-const proxyHandlers = {
- get: function(target, name, _receiver) {
- switch(name){
- // These names are read by the Flight runtime if you end up using the exports object.
- case "$$typeof":
- return target.$$typeof;
- case "$$id":
- return target.$$id;
- case "$$async":
- return target.$$async;
- case "name":
- return target.name;
- // We need to special case this because createElement reads it if we pass this
- // reference.
- case "defaultProps":
- return undefined;
- // Avoid this attempting to be serialized.
- case "toJSON":
- return undefined;
- case Symbol.toPrimitive.toString():
- // @ts-ignore
- return Object.prototype[Symbol.toPrimitive];
- case "__esModule":
- // Something is conditionally checking which export to use. We'll pretend to be
- // an ESM compat module but then we'll check again on the client.
- const moduleId = target.$$id;
- target.default = Object.defineProperties(function() {
- throw new Error(`Attempted to call the default export of ${moduleId} from the server ` + `but it's on the client. It's not possible to invoke a client function from ` + `the server, it can only be rendered as a Component or passed to props of a ` + `Client Component.`);
- }, {
- $$typeof: {
- value: CLIENT_REFERENCE
- },
- // This a placeholder value that tells the client to conditionally use the
- // whole object or just the default export.
- $$id: {
- value: target.$$id + "#"
- },
- $$async: {
- value: target.$$async
- }
- });
- return true;
- case "then":
- if (target.then) {
- // Use a cached value
- return target.then;
- }
- if (!target.$$async) {
- // If this module is expected to return a Promise (such as an AsyncModule) then
- // we should resolve that with a client reference that unwraps the Promise on
- // the client.
- const clientReference = Object.defineProperties({}, {
- $$typeof: {
- value: CLIENT_REFERENCE
- },
- $$id: {
- value: target.$$id
- },
- $$async: {
- value: true
- }
- });
- const proxy = new Proxy(clientReference, proxyHandlers);
- // Treat this as a resolved Promise for React's use()
- target.status = "fulfilled";
- target.value = proxy;
- const then = target.then = Object.defineProperties(function then(resolve, _reject) {
- // Expose to React.
- return Promise.resolve(resolve(proxy));
- }, // export then we should treat it as a reference to that name.
- {
- $$typeof: {
- value: CLIENT_REFERENCE
- },
- $$id: {
- value: target.$$id
- },
- $$async: {
- value: false
- }
- });
- return then;
- } else {
- // Since typeof .then === 'function' is a feature test we'd continue recursing
- // indefinitely if we return a function. Instead, we return an object reference
- // if we check further.
- return undefined;
- }
- default:
- break;
- }
- let cachedReference = target[name];
- if (!cachedReference) {
- const reference = Object.defineProperties(function() {
- throw new Error(`Attempted to call ${String(name)}() from the server but ${String(name)} is on the client. ` + `It's not possible to invoke a client function from the server, it can ` + `only be rendered as a Component or passed to props of a Client Component.`);
- }, {
- $$typeof: {
- value: CLIENT_REFERENCE
- },
- $$id: {
- value: target.$$id + "#" + name
- },
- $$async: {
- value: target.$$async
- }
- });
- cachedReference = target[name] = new Proxy(reference, deepProxyHandlers);
- }
- return cachedReference;
- },
- getPrototypeOf (_target) {
- // Pretend to be a Promise in case anyone asks.
- return PROMISE_PROTOTYPE;
- },
- set: function() {
- throw new Error("Cannot assign to a client module from a server module.");
- }
-};
-function createProxy(moduleId) {
- const clientReference = Object.defineProperties({}, {
- $$typeof: {
- value: CLIENT_REFERENCE
- },
- // Represents the whole Module object instead of a particular import.
- $$id: {
- value: moduleId
- },
- $$async: {
- value: false
- }
- });
- return new Proxy(clientReference, proxyHandlers);
-} //# sourceMappingURL=module-proxy.js.map
-
-
-/***/ }),
-
-/***/ 4592:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-const { createProxy } = __webpack_require__(1313);
-module.exports = createProxy("X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\app-router.js");
- //# sourceMappingURL=app-router.js.map
-
-
-/***/ }),
-
-/***/ 2673:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-const { createProxy } = __webpack_require__(1313);
-module.exports = createProxy("X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\error-boundary.js");
- //# sourceMappingURL=error-boundary.js.map
-
-
-/***/ }),
-
-/***/ 6301:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-const { createProxy } = __webpack_require__(1313);
-module.exports = createProxy("X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\layout-router.js");
- //# sourceMappingURL=layout-router.js.map
-
-
-/***/ }),
-
-/***/ 7431:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-const { createProxy } = __webpack_require__(1313);
-module.exports = createProxy("X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js");
- //# sourceMappingURL=render-from-template-context.js.map
-
-
-/***/ }),
-
-/***/ 2527:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "createSearchParamsBailoutProxy", ({
- enumerable: true,
- get: function() {
- return createSearchParamsBailoutProxy;
- }
-}));
-const _staticgenerationbailout = __webpack_require__(5486);
-function createSearchParamsBailoutProxy() {
- return new Proxy({}, {
- get (_target, prop) {
- // React adds some properties on the object when serializing for client components
- if (typeof prop === "string") {
- (0, _staticgenerationbailout.staticGenerationBailout)("searchParams." + prop);
- }
- }
- });
-}
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=searchparams-bailout-proxy.js.map
-
-
-/***/ }),
-
-/***/ 6404:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-/* __next_internal_client_entry_do_not_use__ cjs */
-const { createProxy } = __webpack_require__(1313);
-module.exports = createProxy("X:\\Some Useful Stuff\\Applications\\Web\\next-sukadia.dev\\node_modules\\next\\dist\\client\\components\\static-generation-searchparams-bailout-provider.js");
- //# sourceMappingURL=static-generation-searchparams-bailout-provider.js.map
-
-
-/***/ }),
-
-/***/ 362:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-/**
- * @license React
- * react-dom-server-rendering-stub.production.min.js
- *
- * Copyright (c) Meta Platforms, Inc. and affiliates.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- */
-var d = {
- usingClientEntryPoint: !1,
- Events: null,
- Dispatcher: {
- current: null
- }
-};
-function e(c) {
- for(var b = "https://reactjs.org/docs/error-decoder.html?invariant=" + c, a = 1; a < arguments.length; a++)b += "&args[]=" + encodeURIComponent(arguments[a]);
- return "Minified React error #" + c + "; visit " + b + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings.";
-}
-var f = d.Dispatcher;
-exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = d;
-exports.createPortal = function() {
- throw Error(e(448));
-};
-exports.experimental_useFormStatus = function() {
- throw Error(e(248));
-};
-exports.flushSync = function() {
- throw Error(e(449));
-};
-exports.preconnect = function(c, b) {
- var a = f.current;
- a && a.preconnect(c, b);
-};
-exports.prefetchDNS = function(c) {
- var b = f.current;
- b && b.prefetchDNS(c);
-};
-exports.preinit = function(c, b) {
- var a = f.current;
- a && a.preinit(c, b);
-};
-exports.preload = function(c, b) {
- var a = f.current;
- a && a.preload(c, b);
-};
-exports.version = "18.3.0-canary-16d053d59-20230506";
-
-
-/***/ }),
-
-/***/ 6155:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-
-if (true) {
- module.exports = __webpack_require__(362);
-} else {}
-
-
-/***/ }),
-
-/***/ 8387:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-/**
- * @license React
- * react-server-dom-webpack-server.edge.production.min.js
- *
- * Copyright (c) Meta Platforms, Inc. and affiliates.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- */
-var aa = __webpack_require__(7887), ba = __webpack_require__(6155), l = null, m = 0;
-function n(a, b) {
- if (0 !== b.length) if (512 < b.length) 0 < m && (a.enqueue(new Uint8Array(l.buffer, 0, m)), l = new Uint8Array(512), m = 0), a.enqueue(b);
- else {
- var d = l.length - m;
- d < b.length && (0 === d ? a.enqueue(l) : (l.set(b.subarray(0, d), m), a.enqueue(l), b = b.subarray(d)), l = new Uint8Array(512), m = 0);
- l.set(b, m);
- m += b.length;
- }
- return !0;
-}
-var p = new TextEncoder;
-function ca(a, b) {
- "function" === typeof a.error ? a.error(b) : a.close();
-}
-var q = JSON.stringify;
-function da(a, b, d) {
- a = q(d, a.toJSON);
- b = b.toString(16) + ":" + a + "\n";
- return p.encode(b);
-}
-function t(a, b, d) {
- a = q(d);
- b = b.toString(16) + ":" + a + "\n";
- return p.encode(b);
-}
-var u = Symbol.for("react.client.reference"), ea = Symbol.for("react.server.reference"), ka = {
- prefetchDNS: fa,
- preconnect: ha,
- preload: ia,
- preinit: ja
-};
-function fa(a, b) {
- if ("string" === typeof a) {
- var d = v();
- if (d) {
- var c = d.hints, e = "D" + a;
- c.has(e) || (c.add(e), b ? A(d, "D", [
- a,
- b
- ]) : A(d, "D", a), B(d));
- }
- }
-}
-function ha(a, b) {
- if ("string" === typeof a) {
- var d = v();
- if (d) {
- var c = d.hints, e = null == b || "string" !== typeof b.crossOrigin ? null : "use-credentials" === b.crossOrigin ? "use-credentials" : "";
- e = "C" + (null === e ? "null" : e) + "|" + a;
- c.has(e) || (c.add(e), b ? A(d, "C", [
- a,
- b
- ]) : A(d, "C", a), B(d));
- }
- }
-}
-function ia(a, b) {
- if ("string" === typeof a) {
- var d = v();
- if (d) {
- var c = d.hints, e = "L" + a;
- c.has(e) || (c.add(e), A(d, "L", [
- a,
- b
- ]), B(d));
- }
- }
-}
-function ja(a, b) {
- if ("string" === typeof a) {
- var d = v();
- if (d) {
- var c = d.hints, e = "I" + a;
- c.has(e) || (c.add(e), A(d, "I", [
- a,
- b
- ]), B(d));
- }
- }
-}
-var la = ba.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.Dispatcher, C = "function" === typeof AsyncLocalStorage, na = C ? new AsyncLocalStorage : null, D = Symbol.for("react.element"), oa = Symbol.for("react.fragment"), pa = Symbol.for("react.provider"), qa = Symbol.for("react.server_context"), ra = Symbol.for("react.forward_ref"), sa = Symbol.for("react.suspense"), ta = Symbol.for("react.suspense_list"), ua = Symbol.for("react.memo"), E = Symbol.for("react.lazy"), va = Symbol.for("react.default_value"), wa = Symbol.for("react.memo_cache_sentinel"), xa = Symbol.iterator, F = null;
-function G(a, b) {
- if (a !== b) {
- a.context._currentValue = a.parentValue;
- a = a.parent;
- var d = b.parent;
- if (null === a) {
- if (null !== d) throw Error("The stacks must reach the root at the same time. This is a bug in React.");
- } else {
- if (null === d) throw Error("The stacks must reach the root at the same time. This is a bug in React.");
- G(a, d);
- b.context._currentValue = b.value;
- }
- }
-}
-function ya(a) {
- a.context._currentValue = a.parentValue;
- a = a.parent;
- null !== a && ya(a);
-}
-function za(a) {
- var b = a.parent;
- null !== b && za(b);
- a.context._currentValue = a.value;
-}
-function Aa(a, b) {
- a.context._currentValue = a.parentValue;
- a = a.parent;
- if (null === a) throw Error("The depth must equal at least at zero before reaching the root. This is a bug in React.");
- a.depth === b.depth ? G(a, b) : Aa(a, b);
-}
-function Ba(a, b) {
- var d = b.parent;
- if (null === d) throw Error("The depth must equal at least at zero before reaching the root. This is a bug in React.");
- a.depth === d.depth ? G(a, d) : Ba(a, d);
- b.context._currentValue = b.value;
-}
-function H(a) {
- var b = F;
- b !== a && (null === b ? za(a) : null === a ? ya(b) : b.depth === a.depth ? G(b, a) : b.depth > a.depth ? Aa(b, a) : Ba(b, a), F = a);
-}
-function Ca(a, b) {
- var d = a._currentValue;
- a._currentValue = b;
- var c = F;
- return F = a = {
- parent: c,
- depth: null === c ? 0 : c.depth + 1,
- context: a,
- parentValue: d,
- value: b
- };
-}
-var Da = Error("Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`");
-function Ea() {}
-function Fa(a, b, d) {
- d = a[d];
- void 0 === d ? a.push(b) : d !== b && (b.then(Ea, Ea), b = d);
- switch(b.status){
- case "fulfilled":
- return b.value;
- case "rejected":
- throw b.reason;
- default:
- if ("string" !== typeof b.status) switch(a = b, a.status = "pending", a.then(function(c) {
- if ("pending" === b.status) {
- var e = b;
- e.status = "fulfilled";
- e.value = c;
- }
- }, function(c) {
- if ("pending" === b.status) {
- var e = b;
- e.status = "rejected";
- e.reason = c;
- }
- }), b.status){
- case "fulfilled":
- return b.value;
- case "rejected":
- throw b.reason;
- }
- I = b;
- throw Da;
- }
-}
-var I = null;
-function Ga() {
- if (null === I) throw Error("Expected a suspended thenable. This is a bug in React. Please file an issue.");
- var a = I;
- I = null;
- return a;
-}
-var J = null, K = 0, L = null;
-function Ha() {
- var a = L;
- L = null;
- return a;
-}
-function Ia(a) {
- return a._currentValue;
-}
-var Ma = {
- useMemo: function(a) {
- return a();
- },
- useCallback: function(a) {
- return a;
- },
- useDebugValue: function() {},
- useDeferredValue: M,
- useTransition: M,
- readContext: Ia,
- useContext: Ia,
- useReducer: M,
- useRef: M,
- useState: M,
- useInsertionEffect: M,
- useLayoutEffect: M,
- useImperativeHandle: M,
- useEffect: M,
- useId: Ja,
- useMutableSource: M,
- useSyncExternalStore: M,
- useCacheRefresh: function() {
- return Ka;
- },
- useMemoCache: function(a) {
- for(var b = Array(a), d = 0; d < a; d++)b[d] = wa;
- return b;
- },
- use: La
-};
-function M() {
- throw Error("This Hook is not supported in Server Components.");
-}
-function Ka() {
- throw Error("Refreshing the cache is not supported in Server Components.");
-}
-function Ja() {
- if (null === J) throw Error("useId can only be used while React is rendering");
- var a = J.identifierCount++;
- return ":" + J.identifierPrefix + "S" + a.toString(32) + ":";
-}
-function La(a) {
- if (null !== a && "object" === typeof a || "function" === typeof a) {
- if ("function" === typeof a.then) {
- var b = K;
- K += 1;
- null === L && (L = []);
- return Fa(L, a, b);
- }
- if (a.$$typeof === qa) return a._currentValue;
- }
- throw Error("An unsupported type was passed to use(): " + String(a));
-}
-function Na() {
- return (new AbortController).signal;
-}
-function Oa() {
- var a = v();
- return a ? a.cache : new Map;
-}
-var Pa = {
- getCacheSignal: function() {
- var a = Oa(), b = a.get(Na);
- void 0 === b && (b = Na(), a.set(Na, b));
- return b;
- },
- getCacheForType: function(a) {
- var b = Oa(), d = b.get(a);
- void 0 === d && (d = a(), b.set(a, d));
- return d;
- }
-}, Qa = Array.isArray;
-function Ra(a) {
- return Object.prototype.toString.call(a).replace(/^\[object (.*)\]$/, function(b, d) {
- return d;
- });
-}
-function Sa(a) {
- switch(typeof a){
- case "string":
- return JSON.stringify(10 >= a.length ? a : a.slice(0, 10) + "...");
- case "object":
- if (Qa(a)) return "[...]";
- a = Ra(a);
- return "Object" === a ? "{...}" : a;
- case "function":
- return "function";
- default:
- return String(a);
- }
-}
-function N(a) {
- if ("string" === typeof a) return a;
- switch(a){
- case sa:
- return "Suspense";
- case ta:
- return "SuspenseList";
- }
- if ("object" === typeof a) switch(a.$$typeof){
- case ra:
- return N(a.render);
- case ua:
- return N(a.type);
- case E:
- var b = a._payload;
- a = a._init;
- try {
- return N(a(b));
- } catch (d) {}
- }
- return "";
-}
-function O(a, b) {
- var d = Ra(a);
- if ("Object" !== d && "Array" !== d) return d;
- d = -1;
- var c = 0;
- if (Qa(a)) {
- var e = "[";
- for(var f = 0; f < a.length; f++){
- 0 < f && (e += ", ");
- var g = a[f];
- g = "object" === typeof g && null !== g ? O(g) : Sa(g);
- "" + f === b ? (d = e.length, c = g.length, e += g) : e = 10 > g.length && 40 > e.length + g.length ? e + g : e + "...";
- }
- e += "]";
- } else if (a.$$typeof === D) e = "<" + N(a.type) + "/>";
- else {
- e = "{";
- f = Object.keys(a);
- for(g = 0; g < f.length; g++){
- 0 < g && (e += ", ");
- var h = f[g], k = JSON.stringify(h);
- e += ('"' + h + '"' === k ? h : k) + ": ";
- k = a[h];
- k = "object" === typeof k && null !== k ? O(k) : Sa(k);
- h === b ? (d = e.length, c = k.length, e += k) : e = 10 > k.length && 40 > e.length + k.length ? e + k : e + "...";
- }
- e += "}";
- }
- return void 0 === b ? e : -1 < d && 0 < c ? (a = " ".repeat(d) + "^".repeat(c), "\n " + e + "\n " + a) : "\n " + e;
-}
-var Ta = aa.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED, Ua = Ta.ContextRegistry, Va = Ta.ReactCurrentDispatcher, Wa = Ta.ReactCurrentCache;
-function Xa(a) {
- console.error(a);
-}
-function Ya(a, b, d, c, e) {
- if (null !== Wa.current && Wa.current !== Pa) throw Error("Currently React only supports one RSC renderer at a time.");
- la.current = ka;
- Wa.current = Pa;
- var f = new Set, g = [], h = new Set, k = {
- status: 0,
- flushScheduled: !1,
- fatalError: null,
- destination: null,
- bundlerConfig: b,
- cache: new Map,
- nextChunkId: 0,
- pendingChunks: 0,
- hints: h,
- abortableTasks: f,
- pingedTasks: g,
- completedImportChunks: [],
- completedHintChunks: [],
- completedJSONChunks: [],
- completedErrorChunks: [],
- writtenSymbols: new Map,
- writtenClientReferences: new Map,
- writtenServerReferences: new Map,
- writtenProviders: new Map,
- identifierPrefix: e || "",
- identifierCount: 1,
- onError: void 0 === d ? Xa : d,
- toJSON: function(r, w) {
- return Za(k, this, r, w);
- }
- };
- k.pendingChunks++;
- b = $a(c);
- a = ab(k, a, b, f);
- g.push(a);
- return k;
-}
-var P = null;
-function v() {
- if (P) return P;
- if (C) {
- var a = na.getStore();
- if (a) return a;
- }
- return null;
-}
-var bb = {};
-function cb(a, b) {
- a.pendingChunks++;
- var d = ab(a, null, F, a.abortableTasks);
- switch(b.status){
- case "fulfilled":
- return d.model = b.value, db(a, d), d.id;
- case "rejected":
- var c = Q(a, b.reason);
- R(a, d.id, c);
- return d.id;
- default:
- "string" !== typeof b.status && (b.status = "pending", b.then(function(e) {
- "pending" === b.status && (b.status = "fulfilled", b.value = e);
- }, function(e) {
- "pending" === b.status && (b.status = "rejected", b.reason = e);
- }));
- }
- b.then(function(e) {
- d.model = e;
- db(a, d);
- }, function(e) {
- d.status = 4;
- e = Q(a, e);
- R(a, d.id, e);
- null !== a.destination && S(a, a.destination);
- });
- return d.id;
-}
-function eb(a) {
- if ("fulfilled" === a.status) return a.value;
- if ("rejected" === a.status) throw a.reason;
- throw a;
-}
-function fb(a) {
- switch(a.status){
- case "fulfilled":
- case "rejected":
- break;
- default:
- "string" !== typeof a.status && (a.status = "pending", a.then(function(b) {
- "pending" === a.status && (a.status = "fulfilled", a.value = b);
- }, function(b) {
- "pending" === a.status && (a.status = "rejected", a.reason = b);
- }));
- }
- return {
- $$typeof: E,
- _payload: a,
- _init: eb
- };
-}
-function T(a, b, d, c, e, f) {
- if (null !== c && void 0 !== c) throw Error("Refs cannot be used in Server Components, nor passed to Client Components.");
- if ("function" === typeof b) {
- if (b.$$typeof === u) return [
- D,
- b,
- d,
- e
- ];
- K = 0;
- L = f;
- e = b(e);
- return "object" === typeof e && null !== e && "function" === typeof e.then ? "fulfilled" === e.status ? e.value : fb(e) : e;
- }
- if ("string" === typeof b) return [
- D,
- b,
- d,
- e
- ];
- if ("symbol" === typeof b) return b === oa ? e.children : [
- D,
- b,
- d,
- e
- ];
- if (null != b && "object" === typeof b) {
- if (b.$$typeof === u) return [
- D,
- b,
- d,
- e
- ];
- switch(b.$$typeof){
- case E:
- var g = b._init;
- b = g(b._payload);
- return T(a, b, d, c, e, f);
- case ra:
- return a = b.render, K = 0, L = f, a(e, void 0);
- case ua:
- return T(a, b.type, d, c, e, f);
- case pa:
- return Ca(b._context, e.value), [
- D,
- b,
- d,
- {
- value: e.value,
- children: e.children,
- __pop: bb
- }
- ];
- }
- }
- throw Error("Unsupported Server Component type: " + Sa(b));
-}
-function db(a, b) {
- var d = a.pingedTasks;
- d.push(b);
- 1 === d.length && (a.flushScheduled = null !== a.destination, setTimeout(function() {
- return gb(a);
- }, 0));
-}
-function ab(a, b, d, c) {
- var e = {
- id: a.nextChunkId++,
- status: 0,
- model: b,
- context: d,
- ping: function() {
- return db(a, e);
- },
- thenableState: null
- };
- c.add(e);
- return e;
-}
-function hb(a, b, d, c) {
- var e = c.$$async ? c.$$id + "#async" : c.$$id, f = a.writtenClientReferences, g = f.get(e);
- if (void 0 !== g) return b[0] === D && "1" === d ? "$L" + g.toString(16) : "$" + g.toString(16);
- try {
- var h = a.bundlerConfig, k = c.$$id;
- g = "";
- var r = h[k];
- if (r) g = r.name;
- else {
- var w = k.lastIndexOf("#");
- -1 !== w && (g = k.slice(w + 1), r = h[k.slice(0, w)]);
- if (!r) throw Error('Could not find the module "' + k + '" in the React Client Manifest. This is probably a bug in the React Server Components bundler.');
- }
- var x = {
- id: r.id,
- chunks: r.chunks,
- name: g,
- async: !!c.$$async
- };
- a.pendingChunks++;
- var y = a.nextChunkId++, ma = q(x), z = y.toString(16) + ":I" + ma + "\n";
- var vb = p.encode(z);
- a.completedImportChunks.push(vb);
- f.set(e, y);
- return b[0] === D && "1" === d ? "$L" + y.toString(16) : "$" + y.toString(16);
- } catch (wb) {
- return a.pendingChunks++, b = a.nextChunkId++, d = Q(a, wb), R(a, b, d), "$" + b.toString(16);
- }
-}
-function Za(a, b, d, c) {
- switch(c){
- case D:
- return "$";
- }
- for(; "object" === typeof c && null !== c && (c.$$typeof === D || c.$$typeof === E);)try {
- switch(c.$$typeof){
- case D:
- var e = c;
- c = T(a, e.type, e.key, e.ref, e.props, null);
- break;
- case E:
- var f = c._init;
- c = f(c._payload);
- }
- } catch (g) {
- d = g === Da ? Ga() : g;
- if ("object" === typeof d && null !== d && "function" === typeof d.then) return a.pendingChunks++, a = ab(a, c, F, a.abortableTasks), c = a.ping, d.then(c, c), a.thenableState = Ha(), "$L" + a.id.toString(16);
- a.pendingChunks++;
- c = a.nextChunkId++;
- d = Q(a, d);
- R(a, c, d);
- return "$L" + c.toString(16);
- }
- if (null === c) return null;
- if ("object" === typeof c) {
- if (c.$$typeof === u) return hb(a, b, d, c);
- if ("function" === typeof c.then) return "$@" + cb(a, c).toString(16);
- if (c.$$typeof === pa) return c = c._context._globalName, b = a.writtenProviders, d = b.get(d), void 0 === d && (a.pendingChunks++, d = a.nextChunkId++, b.set(c, d), c = t(a, d, "$P" + c), a.completedJSONChunks.push(c)), "$" + d.toString(16);
- if (c === bb) {
- a = F;
- if (null === a) throw Error("Tried to pop a Context at the root of the app. This is a bug in React.");
- c = a.parentValue;
- a.context._currentValue = c === va ? a.context._defaultValue : c;
- F = a.parent;
- return;
- }
- return !Qa(c) && (null === c || "object" !== typeof c ? a = null : (a = xa && c[xa] || c["@@iterator"], a = "function" === typeof a ? a : null), a) ? Array.from(c) : c;
- }
- if ("string" === typeof c) {
- if ("Z" === c[c.length - 1] && b[d] instanceof Date) return "$D" + c;
- a = "$" === c[0] ? "$" + c : c;
- return a;
- }
- if ("boolean" === typeof c) return c;
- if ("number" === typeof c) return a = c, Number.isFinite(a) ? 0 === a && -Infinity === 1 / a ? "$-0" : a : Infinity === a ? "$Infinity" : -Infinity === a ? "$-Infinity" : "$NaN";
- if ("undefined" === typeof c) return "$undefined";
- if ("function" === typeof c) {
- if (c.$$typeof === u) return hb(a, b, d, c);
- if (c.$$typeof === ea) return d = a.writtenServerReferences, b = d.get(c), void 0 !== b ? a = "$F" + b.toString(16) : (b = c.$$bound, e = {
- id: c.$$id,
- bound: b ? Promise.resolve(b) : null
- }, a.pendingChunks++, b = a.nextChunkId++, e = da(a, b, e), a.completedJSONChunks.push(e), d.set(c, b), a = "$F" + b.toString(16)), a;
- if (/^on[A-Z]/.test(d)) throw Error("Event handlers cannot be passed to Client Component props." + O(b, d) + "\nIf you need interactivity, consider converting part of this to a Client Component.");
- throw Error('Functions cannot be passed directly to Client Components unless you explicitly expose it by marking it with "use server".' + O(b, d));
- }
- if ("symbol" === typeof c) {
- e = a.writtenSymbols;
- f = e.get(c);
- if (void 0 !== f) return "$" + f.toString(16);
- f = c.description;
- if (Symbol.for(f) !== c) throw Error("Only global symbols received from Symbol.for(...) can be passed to Client Components. The symbol Symbol.for(" + (c.description + ") cannot be found among global symbols.") + O(b, d));
- a.pendingChunks++;
- d = a.nextChunkId++;
- b = t(a, d, "$S" + f);
- a.completedImportChunks.push(b);
- e.set(c, d);
- return "$" + d.toString(16);
- }
- if ("bigint" === typeof c) return "$n" + c.toString(10);
- throw Error("Type " + typeof c + " is not supported in Client Component props." + O(b, d));
-}
-function Q(a, b) {
- a = a.onError;
- b = a(b);
- if (null != b && "string" !== typeof b) throw Error('onError returned something with a type other than "string". onError should return a string and may return null or undefined but must not return anything else. It received something of type "' + typeof b + '" instead');
- return b || "";
-}
-function ib(a, b) {
- null !== a.destination ? (a.status = 2, ca(a.destination, b)) : (a.status = 1, a.fatalError = b);
-}
-function R(a, b, d) {
- d = {
- digest: d
- };
- b = b.toString(16) + ":E" + q(d) + "\n";
- b = p.encode(b);
- a.completedErrorChunks.push(b);
-}
-function A(a, b, d) {
- var c = a.nextChunkId++;
- d = q(d);
- b = "H" + b;
- c = c.toString(16) + ":" + b;
- c = p.encode(c + d + "\n");
- a.completedHintChunks.push(c);
-}
-function gb(a) {
- var b = Va.current;
- Va.current = Ma;
- var d = P;
- J = P = a;
- try {
- var c = a.pingedTasks;
- a.pingedTasks = [];
- for(var e = 0; e < c.length; e++){
- var f = c[e];
- var g = a;
- if (0 === f.status) {
- H(f.context);
- try {
- var h = f.model;
- if ("object" === typeof h && null !== h && h.$$typeof === D) {
- var k = h, r = f.thenableState;
- f.model = h;
- h = T(g, k.type, k.key, k.ref, k.props, r);
- for(f.thenableState = null; "object" === typeof h && null !== h && h.$$typeof === D;)k = h, f.model = h, h = T(g, k.type, k.key, k.ref, k.props, null);
- }
- var w = da(g, f.id, h);
- g.completedJSONChunks.push(w);
- g.abortableTasks.delete(f);
- f.status = 1;
- } catch (z) {
- var x = z === Da ? Ga() : z;
- if ("object" === typeof x && null !== x && "function" === typeof x.then) {
- var y = f.ping;
- x.then(y, y);
- f.thenableState = Ha();
- } else {
- g.abortableTasks.delete(f);
- f.status = 4;
- var ma = Q(g, x);
- R(g, f.id, ma);
- }
- }
- }
- }
- null !== a.destination && S(a, a.destination);
- } catch (z) {
- Q(a, z), ib(a, z);
- } finally{
- Va.current = b, J = null, P = d;
- }
-}
-function S(a, b) {
- l = new Uint8Array(512);
- m = 0;
- try {
- for(var d = a.completedImportChunks, c = 0; c < d.length; c++)a.pendingChunks--, n(b, d[c]);
- d.splice(0, c);
- var e = a.completedHintChunks;
- for(c = 0; c < e.length; c++)n(b, e[c]);
- e.splice(0, c);
- var f = a.completedJSONChunks;
- for(c = 0; c < f.length; c++)a.pendingChunks--, n(b, f[c]);
- f.splice(0, c);
- var g = a.completedErrorChunks;
- for(c = 0; c < g.length; c++)a.pendingChunks--, n(b, g[c]);
- g.splice(0, c);
- } finally{
- a.flushScheduled = !1, l && 0 < m && (b.enqueue(new Uint8Array(l.buffer, 0, m)), l = null, m = 0);
- }
- 0 === a.pendingChunks && b.close();
-}
-function jb(a) {
- a.flushScheduled = null !== a.destination;
- C ? setTimeout(function() {
- return na.run(a, gb, a);
- }, 0) : setTimeout(function() {
- return gb(a);
- }, 0);
-}
-function B(a) {
- if (!1 === a.flushScheduled && 0 === a.pingedTasks.length && null !== a.destination) {
- var b = a.destination;
- a.flushScheduled = !0;
- setTimeout(function() {
- return S(a, b);
- }, 0);
- }
-}
-function kb(a, b) {
- try {
- var d = a.abortableTasks;
- if (0 < d.size) {
- var c = Q(a, void 0 === b ? Error("The render was aborted by the server without a reason.") : b);
- a.pendingChunks++;
- var e = a.nextChunkId++;
- R(a, e, c);
- d.forEach(function(f) {
- f.status = 3;
- var g = "$" + e.toString(16);
- f = t(a, f.id, g);
- a.completedErrorChunks.push(f);
- });
- d.clear();
- }
- null !== a.destination && S(a, a.destination);
- } catch (f) {
- Q(a, f), ib(a, f);
- }
-}
-function $a(a) {
- if (a) {
- var b = F;
- H(null);
- for(var d = 0; d < a.length; d++){
- var c = a[d], e = c[0];
- c = c[1];
- Ua[e] || (Ua[e] = aa.createServerContext(e, va));
- Ca(Ua[e], c);
- }
- a = F;
- H(b);
- return a;
- }
- return null;
-}
-function lb(a, b) {
- var d = "", c = a[b];
- if (c) d = c.name;
- else {
- var e = b.lastIndexOf("#");
- -1 !== e && (d = b.slice(e + 1), c = a[b.slice(0, e)]);
- if (!c) throw Error('Could not find the module "' + b + '" in the React Server Manifest. This is probably a bug in the React Server Components bundler.');
- }
- return {
- id: c.id,
- chunks: c.chunks,
- name: d,
- async: !1
- };
-}
-var U = new Map, mb = new Map;
-function nb() {}
-function ob(a) {
- for(var b = a.chunks, d = [], c = 0; c < b.length; c++){
- var e = b[c], f = U.get(e);
- if (void 0 === f) {
- f = globalThis.__next_chunk_load__(e);
- d.push(f);
- var g = U.set.bind(U, e, null);
- f.then(g, nb);
- U.set(e, f);
- } else null !== f && d.push(f);
- }
- if (a.async) {
- if (b = mb.get(a.id)) return "fulfilled" === b.status ? null : b;
- var h = Promise.all(d).then(function() {
- return globalThis.__next_require__(a.id);
- });
- h.then(function(k) {
- h.status = "fulfilled";
- h.value = k;
- }, function(k) {
- h.status = "rejected";
- h.reason = k;
- });
- mb.set(a.id, h);
- return h;
- }
- return 0 < d.length ? Promise.all(d) : null;
-}
-function V(a) {
- if (a.async) {
- var b = mb.get(a.id);
- if ("fulfilled" === b.status) b = b.value;
- else throw b.reason;
- } else b = globalThis.__next_require__(a.id);
- return "*" === a.name ? b : "" === a.name ? b.__esModule ? b.default : b : b[a.name];
-}
-function W(a, b, d, c) {
- this.status = a;
- this.value = b;
- this.reason = d;
- this._response = c;
-}
-W.prototype = Object.create(Promise.prototype);
-W.prototype.then = function(a, b) {
- switch(this.status){
- case "resolved_model":
- pb(this);
- }
- switch(this.status){
- case "fulfilled":
- a(this.value);
- break;
- case "pending":
- case "blocked":
- a && (null === this.value && (this.value = []), this.value.push(a));
- b && (null === this.reason && (this.reason = []), this.reason.push(b));
- break;
- default:
- b(this.reason);
- }
-};
-function qb(a, b) {
- for(var d = 0; d < a.length; d++)(0, a[d])(b);
-}
-function rb(a, b) {
- if ("pending" === a.status || "blocked" === a.status) {
- var d = a.reason;
- a.status = "rejected";
- a.reason = b;
- null !== d && qb(d, b);
- }
-}
-function sb(a, b, d, c, e, f) {
- var g = lb(a._bundlerConfig, b);
- a = ob(g);
- if (d) d = Promise.all([
- d,
- a
- ]).then(function(h) {
- h = h[0];
- var k = V(g);
- return k.bind.apply(k, [
- null
- ].concat(h));
- });
- else if (a) d = Promise.resolve(a).then(function() {
- return V(g);
- });
- else return V(g);
- d.then(tb(c, e, f), ub(c));
- return null;
-}
-var X = null, Y = null;
-function pb(a) {
- var b = X, d = Y;
- X = a;
- Y = null;
- try {
- var c = JSON.parse(a.value, a._response._fromJSON);
- null !== Y && 0 < Y.deps ? (Y.value = c, a.status = "blocked", a.value = null, a.reason = null) : (a.status = "fulfilled", a.value = c);
- } catch (e) {
- a.status = "rejected", a.reason = e;
- } finally{
- X = b, Y = d;
- }
-}
-function xb(a, b) {
- a._chunks.forEach(function(d) {
- "pending" === d.status && rb(d, b);
- });
-}
-function Z(a, b) {
- var d = a._chunks, c = d.get(b);
- c || (c = a._formData.get(a._prefix + b), c = null != c ? new W("resolved_model", c, null, a) : new W("pending", null, null, a), d.set(b, c));
- return c;
-}
-function tb(a, b, d) {
- if (Y) {
- var c = Y;
- c.deps++;
- } else c = Y = {
- deps: 1,
- value: null
- };
- return function(e) {
- b[d] = e;
- c.deps--;
- 0 === c.deps && "blocked" === a.status && (e = a.value, a.status = "fulfilled", a.value = c.value, null !== e && qb(e, c.value));
- };
-}
-function ub(a) {
- return function(b) {
- return rb(a, b);
- };
-}
-function yb(a, b, d, c) {
- if ("$" === c[0]) switch(c[1]){
- case "$":
- return c.slice(1);
- case "@":
- return b = parseInt(c.slice(2), 16), Z(a, b);
- case "S":
- return Symbol.for(c.slice(2));
- case "F":
- c = parseInt(c.slice(2), 16);
- c = Z(a, c);
- "resolved_model" === c.status && pb(c);
- if ("fulfilled" !== c.status) throw c.reason;
- c = c.value;
- return sb(a, c.id, c.bound, X, b, d);
- case "K":
- b = c.slice(2);
- var e = a._prefix + b + "_", f = new FormData;
- a._formData.forEach(function(g, h) {
- h.startsWith(e) && f.append(h.slice(e.length), g);
- });
- return f;
- case "I":
- return Infinity;
- case "-":
- return "$-0" === c ? -0 : -Infinity;
- case "N":
- return NaN;
- case "u":
- return;
- case "D":
- return new Date(Date.parse(c.slice(2)));
- case "n":
- return BigInt(c.slice(2));
- default:
- c = parseInt(c.slice(1), 16);
- a = Z(a, c);
- switch(a.status){
- case "resolved_model":
- pb(a);
- }
- switch(a.status){
- case "fulfilled":
- return a.value;
- case "pending":
- case "blocked":
- return c = X, a.then(tb(c, b, d), ub(c)), null;
- default:
- throw a.reason;
- }
- }
- return c;
-}
-function zb(a, b) {
- var d = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : new FormData, c = new Map, e = {
- _bundlerConfig: a,
- _prefix: b,
- _formData: d,
- _chunks: c,
- _fromJSON: function(f, g) {
- return "string" === typeof g ? yb(e, this, f, g) : g;
- }
- };
- return e;
-}
-function Ab(a) {
- xb(a, Error("Connection closed."));
-}
-function Bb(a, b, d) {
- var c = lb(a, b);
- a = ob(c);
- return d ? Promise.all([
- d,
- a
- ]).then(function(e) {
- e = e[0];
- var f = V(c);
- return f.bind.apply(f, [
- null
- ].concat(e));
- }) : a ? Promise.resolve(a).then(function() {
- return V(c);
- }) : Promise.resolve(V(c));
-}
-exports.decodeAction = function(a, b) {
- var d = new FormData, c = null;
- a.forEach(function(e, f) {
- if (f.startsWith("$ACTION_")) if (f.startsWith("$ACTION_REF_")) {
- e = "$ACTION_" + f.slice(12) + ":";
- e = zb(b, e, a);
- Ab(e);
- e = Z(e, 0);
- e.then(function() {});
- if ("fulfilled" !== e.status) throw e.reason;
- e = e.value;
- c = Bb(b, e.id, e.bound);
- } else f.startsWith("$ACTION_ID_") && (e = f.slice(11), c = Bb(b, e, null));
- else d.append(f, e);
- });
- return null === c ? null : c.then(function(e) {
- return e.bind(null, d);
- });
-};
-exports.decodeReply = function(a, b) {
- if ("string" === typeof a) {
- var d = new FormData;
- d.append("0", a);
- a = d;
- }
- a = zb(b, "", a);
- Ab(a);
- return Z(a, 0);
-};
-exports.renderToReadableStream = function(a, b, d) {
- var c = Ya(a, b, d ? d.onError : void 0, d ? d.context : void 0, d ? d.identifierPrefix : void 0);
- if (d && d.signal) {
- var e = d.signal;
- if (e.aborted) kb(c, e.reason);
- else {
- var f = function() {
- kb(c, e.reason);
- e.removeEventListener("abort", f);
- };
- e.addEventListener("abort", f);
- }
- }
- return new ReadableStream({
- type: "bytes",
- start: function() {
- jb(c);
- },
- pull: function(g) {
- if (1 === c.status) c.status = 2, ca(g, c.fatalError);
- else if (2 !== c.status && null === c.destination) {
- c.destination = g;
- try {
- S(c, g);
- } catch (h) {
- Q(c, h), ib(c, h);
- }
- }
- },
- cancel: function() {}
- }, {
- highWaterMark: 0
- });
-};
-
-
-/***/ }),
-
-/***/ 7902:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-
-if (true) {
- module.exports = __webpack_require__(8387);
-} else {}
-
-
-/***/ }),
-
-/***/ 7789:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-/**
- * @license React
- * react.shared-subset.production.min.js
- *
- * Copyright (c) Meta Platforms, Inc. and affiliates.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- */
-var m = Object.assign, n = {
- current: null
-};
-function p() {
- return new Map;
-}
-if ("function" === typeof fetch) {
- var q = fetch, r = function(a, b) {
- var d = n.current;
- if (!d || b && b.signal && b.signal !== d.getCacheSignal()) return q(a, b);
- if ("string" !== typeof a || b) {
- var c = "string" === typeof a || a instanceof URL ? new Request(a, b) : a;
- if ("GET" !== c.method && "HEAD" !== c.method || c.keepalive) return q(a, b);
- var e = JSON.stringify([
- c.method,
- Array.from(c.headers.entries()),
- c.mode,
- c.redirect,
- c.credentials,
- c.referrer,
- c.referrerPolicy,
- c.integrity
- ]);
- c = c.url;
- } else e = '["GET",[],null,"follow",null,null,null,null]', c = a;
- var f = d.getCacheForType(p);
- d = f.get(c);
- if (void 0 === d) a = q(a, b), f.set(c, [
- e,
- a
- ]);
- else {
- c = 0;
- for(f = d.length; c < f; c += 2){
- var h = d[c + 1];
- if (d[c] === e) return a = h, a.then(function(g) {
- return g.clone();
- });
- }
- a = q(a, b);
- d.push(e, a);
- }
- return a.then(function(g) {
- return g.clone();
- });
- };
- m(r, q);
- try {
- fetch = r;
- } catch (a) {
- try {
- globalThis.fetch = r;
- } catch (b) {
- console.warn("React was unable to patch the fetch() function in this environment. Suspensey APIs might not work correctly as a result.");
- }
- }
-}
-var t = Symbol.for("react.element"), u = Symbol.for("react.portal"), v = Symbol.for("react.fragment"), w = Symbol.for("react.strict_mode"), x = Symbol.for("react.profiler"), y = Symbol.for("react.provider"), z = Symbol.for("react.server_context"), A = Symbol.for("react.forward_ref"), B = Symbol.for("react.suspense"), C = Symbol.for("react.memo"), aa = Symbol.for("react.lazy"), D = Symbol.for("react.default_value"), E = Symbol.iterator;
-function ba(a) {
- if (null === a || "object" !== typeof a) return null;
- a = E && a[E] || a["@@iterator"];
- return "function" === typeof a ? a : null;
-}
-function F(a) {
- for(var b = "https://reactjs.org/docs/error-decoder.html?invariant=" + a, d = 1; d < arguments.length; d++)b += "&args[]=" + encodeURIComponent(arguments[d]);
- return "Minified React error #" + a + "; visit " + b + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings.";
-}
-var G = {
- isMounted: function() {
- return !1;
- },
- enqueueForceUpdate: function() {},
- enqueueReplaceState: function() {},
- enqueueSetState: function() {}
-}, H = {};
-function I(a, b, d) {
- this.props = a;
- this.context = b;
- this.refs = H;
- this.updater = d || G;
-}
-I.prototype.isReactComponent = {};
-I.prototype.setState = function(a, b) {
- if ("object" !== typeof a && "function" !== typeof a && null != a) throw Error(F(85));
- this.updater.enqueueSetState(this, a, b, "setState");
-};
-I.prototype.forceUpdate = function(a) {
- this.updater.enqueueForceUpdate(this, a, "forceUpdate");
-};
-function J() {}
-J.prototype = I.prototype;
-function K(a, b, d) {
- this.props = a;
- this.context = b;
- this.refs = H;
- this.updater = d || G;
-}
-var L = K.prototype = new J;
-L.constructor = K;
-m(L, I.prototype);
-L.isPureReactComponent = !0;
-var M = Array.isArray, N = Object.prototype.hasOwnProperty, O = {
- current: null
-}, P = {
- key: !0,
- ref: !0,
- __self: !0,
- __source: !0
-};
-function ca(a, b) {
- return {
- $$typeof: t,
- type: a.type,
- key: b,
- ref: a.ref,
- props: a.props,
- _owner: a._owner
- };
-}
-function Q(a) {
- return "object" === typeof a && null !== a && a.$$typeof === t;
-}
-function escape(a) {
- var b = {
- "=": "=0",
- ":": "=2"
- };
- return "$" + a.replace(/[=:]/g, function(d) {
- return b[d];
- });
-}
-var R = /\/+/g;
-function S(a, b) {
- return "object" === typeof a && null !== a && null != a.key ? escape("" + a.key) : b.toString(36);
-}
-function T(a, b, d, c, e) {
- var f = typeof a;
- if ("undefined" === f || "boolean" === f) a = null;
- var h = !1;
- if (null === a) h = !0;
- else switch(f){
- case "string":
- case "number":
- h = !0;
- break;
- case "object":
- switch(a.$$typeof){
- case t:
- case u:
- h = !0;
- }
- }
- if (h) return h = a, e = e(h), a = "" === c ? "." + S(h, 0) : c, M(e) ? (d = "", null != a && (d = a.replace(R, "$&/") + "/"), T(e, b, d, "", function(l) {
- return l;
- })) : null != e && (Q(e) && (e = ca(e, d + (!e.key || h && h.key === e.key ? "" : ("" + e.key).replace(R, "$&/") + "/") + a)), b.push(e)), 1;
- h = 0;
- c = "" === c ? "." : c + ":";
- if (M(a)) for(var g = 0; g < a.length; g++){
- f = a[g];
- var k = c + S(f, g);
- h += T(f, b, d, k, e);
- }
- else if (k = ba(a), "function" === typeof k) for(a = k.call(a), g = 0; !(f = a.next()).done;)f = f.value, k = c + S(f, g++), h += T(f, b, d, k, e);
- else if ("object" === f) throw b = String(a), Error(F(31, "[object Object]" === b ? "object with keys {" + Object.keys(a).join(", ") + "}" : b));
- return h;
-}
-function U(a, b, d) {
- if (null == a) return a;
- var c = [], e = 0;
- T(a, c, "", "", function(f) {
- return b.call(d, f, e++);
- });
- return c;
-}
-function da(a) {
- if (-1 === a._status) {
- var b = a._result;
- b = b();
- b.then(function(d) {
- if (0 === a._status || -1 === a._status) a._status = 1, a._result = d;
- }, function(d) {
- if (0 === a._status || -1 === a._status) a._status = 2, a._result = d;
- });
- -1 === a._status && (a._status = 0, a._result = b);
- }
- if (1 === a._status) return a._result.default;
- throw a._result;
-}
-function ea() {
- return new WeakMap;
-}
-function V() {
- return {
- s: 0,
- v: void 0,
- o: null,
- p: null
- };
-}
-var W = {
- current: null
-}, X = {
- transition: null
-}, Y = {
- ReactCurrentDispatcher: W,
- ReactCurrentCache: n,
- ReactCurrentBatchConfig: X,
- ReactCurrentOwner: O,
- ContextRegistry: {}
-}, Z = Y.ContextRegistry;
-exports.Children = {
- map: U,
- forEach: function(a, b, d) {
- U(a, function() {
- b.apply(this, arguments);
- }, d);
- },
- count: function(a) {
- var b = 0;
- U(a, function() {
- b++;
- });
- return b;
- },
- toArray: function(a) {
- return U(a, function(b) {
- return b;
- }) || [];
- },
- only: function(a) {
- if (!Q(a)) throw Error(F(143));
- return a;
- }
-};
-exports.Fragment = v;
-exports.Profiler = x;
-exports.StrictMode = w;
-exports.Suspense = B;
-exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Y;
-exports.cache = function(a) {
- return function() {
- var b = n.current;
- if (!b) return a.apply(null, arguments);
- var d = b.getCacheForType(ea);
- b = d.get(a);
- void 0 === b && (b = V(), d.set(a, b));
- d = 0;
- for(var c = arguments.length; d < c; d++){
- var e = arguments[d];
- if ("function" === typeof e || "object" === typeof e && null !== e) {
- var f = b.o;
- null === f && (b.o = f = new WeakMap);
- b = f.get(e);
- void 0 === b && (b = V(), f.set(e, b));
- } else f = b.p, null === f && (b.p = f = new Map), b = f.get(e), void 0 === b && (b = V(), f.set(e, b));
- }
- if (1 === b.s) return b.v;
- if (2 === b.s) throw b.v;
- try {
- var h = a.apply(null, arguments);
- d = b;
- d.s = 1;
- return d.v = h;
- } catch (g) {
- throw h = b, h.s = 2, h.v = g, g;
- }
- };
-};
-exports.cloneElement = function(a, b, d) {
- if (null === a || void 0 === a) throw Error(F(267, a));
- var c = m({}, a.props), e = a.key, f = a.ref, h = a._owner;
- if (null != b) {
- void 0 !== b.ref && (f = b.ref, h = O.current);
- void 0 !== b.key && (e = "" + b.key);
- if (a.type && a.type.defaultProps) var g = a.type.defaultProps;
- for(k in b)N.call(b, k) && !P.hasOwnProperty(k) && (c[k] = void 0 === b[k] && void 0 !== g ? g[k] : b[k]);
- }
- var k = arguments.length - 2;
- if (1 === k) c.children = d;
- else if (1 < k) {
- g = Array(k);
- for(var l = 0; l < k; l++)g[l] = arguments[l + 2];
- c.children = g;
- }
- return {
- $$typeof: t,
- type: a.type,
- key: e,
- ref: f,
- props: c,
- _owner: h
- };
-};
-exports.createElement = function(a, b, d) {
- var c, e = {}, f = null, h = null;
- if (null != b) for(c in void 0 !== b.ref && (h = b.ref), void 0 !== b.key && (f = "" + b.key), b)N.call(b, c) && !P.hasOwnProperty(c) && (e[c] = b[c]);
- var g = arguments.length - 2;
- if (1 === g) e.children = d;
- else if (1 < g) {
- for(var k = Array(g), l = 0; l < g; l++)k[l] = arguments[l + 2];
- e.children = k;
- }
- if (a && a.defaultProps) for(c in g = a.defaultProps, g)void 0 === e[c] && (e[c] = g[c]);
- return {
- $$typeof: t,
- type: a,
- key: f,
- ref: h,
- props: e,
- _owner: O.current
- };
-};
-exports.createRef = function() {
- return {
- current: null
- };
-};
-exports.createServerContext = function(a, b) {
- var d = !0;
- if (!Z[a]) {
- d = !1;
- var c = {
- $$typeof: z,
- _currentValue: b,
- _currentValue2: b,
- _defaultValue: b,
- _threadCount: 0,
- Provider: null,
- Consumer: null,
- _globalName: a
- };
- c.Provider = {
- $$typeof: y,
- _context: c
- };
- Z[a] = c;
- }
- c = Z[a];
- if (c._defaultValue === D) c._defaultValue = b, c._currentValue === D && (c._currentValue = b), c._currentValue2 === D && (c._currentValue2 = b);
- else if (d) throw Error(F(429, a));
- return c;
-};
-exports.forwardRef = function(a) {
- return {
- $$typeof: A,
- render: a
- };
-};
-exports.isValidElement = Q;
-exports.lazy = function(a) {
- return {
- $$typeof: aa,
- _payload: {
- _status: -1,
- _result: a
- },
- _init: da
- };
-};
-exports.memo = function(a, b) {
- return {
- $$typeof: C,
- type: a,
- compare: void 0 === b ? null : b
- };
-};
-exports.startTransition = function(a) {
- var b = X.transition;
- X.transition = {};
- try {
- a();
- } finally{
- X.transition = b;
- }
-};
-exports.use = function(a) {
- return W.current.use(a);
-};
-exports.useCallback = function(a, b) {
- return W.current.useCallback(a, b);
-};
-exports.useContext = function(a) {
- return W.current.useContext(a);
-};
-exports.useDebugValue = function() {};
-exports.useId = function() {
- return W.current.useId();
-};
-exports.useMemo = function(a, b) {
- return W.current.useMemo(a, b);
-};
-exports.version = "18.3.0-canary-16d053d59-20230506";
-
-
-/***/ }),
-
-/***/ 7887:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-
-if (true) {
- module.exports = __webpack_require__(7789);
-} else {}
-
-
-/***/ }),
-
-/***/ 3180:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- fillMetadataSegment: function() {
- return fillMetadataSegment;
- },
- normalizeMetadataRoute: function() {
- return normalizeMetadataRoute;
- }
-});
-const _ismetadataroute = __webpack_require__(8865);
-const _path = /*#__PURE__*/ _interop_require_default(__webpack_require__(2080));
-const _serverutils = __webpack_require__(3160);
-const _routeregex = __webpack_require__(9601);
-const _hash = __webpack_require__(6230);
-const _apppaths = __webpack_require__(8401);
-function _interop_require_default(obj) {
- return obj && obj.__esModule ? obj : {
- default: obj
- };
-}
-/*
- * If there's special convention like (...) or @ in the page path,
- * Give it a unique hash suffix to avoid conflicts
- *
- * e.g.
- * /app/open-graph.tsx -> /open-graph/route
- * /app/(post)/open-graph.tsx -> /open-graph/route-[0-9a-z]{6}
- */ function getMetadataRouteSuffix(page) {
- let suffix = "";
- if (page.includes("(") && page.includes(")") || page.includes("@")) {
- suffix = (0, _hash.djb2Hash)(page).toString(36).slice(0, 6);
- }
- return suffix;
-}
-function fillMetadataSegment(segment, params, imageSegment) {
- const pathname = (0, _apppaths.normalizeAppPath)(segment);
- const routeRegex = (0, _routeregex.getNamedRouteRegex)(pathname, false);
- const route = (0, _serverutils.interpolateDynamicPath)(pathname, params, routeRegex);
- const suffix = getMetadataRouteSuffix(segment);
- const routeSuffix = suffix ? `-${suffix}` : "";
- const { name , ext } = _path.default.parse(imageSegment);
- return _path.default.join(route, `${name}${routeSuffix}${ext}`);
-}
-function normalizeMetadataRoute(page) {
- if (!(0, _ismetadataroute.isMetadataRoute)(page)) {
- return page;
- }
- let route = page;
- let suffix = "";
- if (route === "/robots") {
- route += ".txt";
- } else if (route === "/manifest") {
- route += ".webmanifest";
- } else if (route.endsWith("/sitemap")) {
- route += ".xml";
- } else {
- // Remove the file extension, e.g. /route-path/robots.txt -> /route-path
- const pathnamePrefix = page.slice(0, -(_path.default.basename(page).length + 1));
- suffix = getMetadataRouteSuffix(pathnamePrefix);
- }
- // Support both / and custom routes //route.ts.
- // If it's a metadata file route, we need to append /[id]/route to the page.
- if (!route.endsWith("/route")) {
- const isStaticMetadataFile = (0, _ismetadataroute.isMetadataRouteFile)(page, [], true);
- const { dir , name: baseName , ext } = _path.default.parse(route);
- const isStaticRoute = page.startsWith("/robots") || page.startsWith("/manifest") || isStaticMetadataFile;
- route = _path.default.posix.join(dir, `${baseName}${suffix ? `-${suffix}` : ""}${ext}`, isStaticRoute ? "" : "[[...__metadata_id__]]", "route");
- }
- return route;
-} //# sourceMappingURL=get-metadata-route.js.map
-
-
-/***/ }),
-
-/***/ 8865:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- STATIC_METADATA_IMAGES: function() {
- return STATIC_METADATA_IMAGES;
- },
- isMetadataRouteFile: function() {
- return isMetadataRouteFile;
- },
- isMetadataRoute: function() {
- return isMetadataRoute;
- }
-});
-const STATIC_METADATA_IMAGES = {
- icon: {
- filename: "icon",
- extensions: [
- "ico",
- "jpg",
- "jpeg",
- "png",
- "svg"
- ]
- },
- apple: {
- filename: "apple-icon",
- extensions: [
- "jpg",
- "jpeg",
- "png"
- ]
- },
- favicon: {
- filename: "favicon",
- extensions: [
- "ico"
- ]
- },
- openGraph: {
- filename: "opengraph-image",
- extensions: [
- "jpg",
- "jpeg",
- "png",
- "gif"
- ]
- },
- twitter: {
- filename: "twitter-image",
- extensions: [
- "jpg",
- "jpeg",
- "png",
- "gif"
- ]
- }
-};
-// Match routes that are metadata routes, e.g. /sitemap.xml, /favicon., /., etc.
-// TODO-METADATA: support more metadata routes with more extensions
-const defaultExtensions = [
- "js",
- "jsx",
- "ts",
- "tsx"
-];
-const getExtensionRegexString = (extensions)=>`(?:${extensions.join("|")})`;
-function isMetadataRouteFile(appDirRelativePath, pageExtensions, withExtension) {
- const metadataRouteFilesRegex = [
- new RegExp(`^[\\\\/]robots${withExtension ? `\\.${getExtensionRegexString(pageExtensions.concat("txt"))}$` : ""}`),
- new RegExp(`^[\\\\/]manifest${withExtension ? `\\.${getExtensionRegexString(pageExtensions.concat("webmanifest", "json"))}$` : ""}`),
- new RegExp(`^[\\\\/]favicon\\.ico$`),
- new RegExp(`[\\\\/]sitemap${withExtension ? `\\.${getExtensionRegexString(pageExtensions.concat("xml"))}$` : ""}`),
- new RegExp(`[\\\\/]${STATIC_METADATA_IMAGES.icon.filename}\\d?${withExtension ? `\\.${getExtensionRegexString(pageExtensions.concat(STATIC_METADATA_IMAGES.icon.extensions))}$` : ""}`),
- new RegExp(`[\\\\/]${STATIC_METADATA_IMAGES.apple.filename}\\d?${withExtension ? `\\.${getExtensionRegexString(pageExtensions.concat(STATIC_METADATA_IMAGES.apple.extensions))}$` : ""}`),
- new RegExp(`[\\\\/]${STATIC_METADATA_IMAGES.openGraph.filename}\\d?${withExtension ? `\\.${getExtensionRegexString(pageExtensions.concat(STATIC_METADATA_IMAGES.openGraph.extensions))}$` : ""}`),
- new RegExp(`[\\\\/]${STATIC_METADATA_IMAGES.twitter.filename}\\d?${withExtension ? `\\.${getExtensionRegexString(pageExtensions.concat(STATIC_METADATA_IMAGES.twitter.extensions))}$` : ""}`)
- ];
- return metadataRouteFilesRegex.some((r)=>r.test(appDirRelativePath));
-}
-function isMetadataRoute(route) {
- let page = route.replace(/^\/?app\//, "").replace(/\/route$/, "");
- if (page[0] !== "/") page = "/" + page;
- return !page.endsWith("/page") && isMetadataRouteFile(page, defaultExtensions, false);
-} //# sourceMappingURL=is-metadata-route.js.map
-
-
-/***/ }),
-
-/***/ 2112:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "acceptLanguage", ({
- enumerable: true,
- get: function() {
- return acceptLanguage;
- }
-}));
-function parse(raw, preferences, options) {
- const lowers = new Map();
- const header = raw.replace(/[ \t]/g, "");
- if (preferences) {
- let pos = 0;
- for (const preference of preferences){
- const lower = preference.toLowerCase();
- lowers.set(lower, {
- orig: preference,
- pos: pos++
- });
- if (options.prefixMatch) {
- const parts = lower.split("-");
- while(parts.pop(), parts.length > 0){
- const joined = parts.join("-");
- if (!lowers.has(joined)) {
- lowers.set(joined, {
- orig: preference,
- pos: pos++
- });
- }
- }
- }
- }
- }
- const parts = header.split(",");
- const selections = [];
- const map = new Set();
- for(let i = 0; i < parts.length; ++i){
- const part = parts[i];
- if (!part) {
- continue;
- }
- const params = part.split(";");
- if (params.length > 2) {
- throw new Error(`Invalid ${options.type} header`);
- }
- let token = params[0].toLowerCase();
- if (!token) {
- throw new Error(`Invalid ${options.type} header`);
- }
- const selection = {
- token,
- pos: i,
- q: 1
- };
- if (preferences && lowers.has(token)) {
- selection.pref = lowers.get(token).pos;
- }
- map.add(selection.token);
- if (params.length === 2) {
- const q = params[1];
- const [key, value] = q.split("=");
- if (!value || key !== "q" && key !== "Q") {
- throw new Error(`Invalid ${options.type} header`);
- }
- const score = parseFloat(value);
- if (score === 0) {
- continue;
- }
- if (Number.isFinite(score) && score <= 1 && score >= 0.001) {
- selection.q = score;
- }
- }
- selections.push(selection);
- }
- selections.sort((a, b)=>{
- if (b.q !== a.q) {
- return b.q - a.q;
- }
- if (b.pref !== a.pref) {
- if (a.pref === undefined) {
- return 1;
- }
- if (b.pref === undefined) {
- return -1;
- }
- return a.pref - b.pref;
- }
- return a.pos - b.pos;
- });
- const values = selections.map((selection)=>selection.token);
- if (!preferences || !preferences.length) {
- return values;
- }
- const preferred = [];
- for (const selection of values){
- if (selection === "*") {
- for (const [preference, value] of lowers){
- if (!map.has(preference)) {
- preferred.push(value.orig);
- }
- }
- } else {
- const lower = selection.toLowerCase();
- if (lowers.has(lower)) {
- preferred.push(lowers.get(lower).orig);
- }
- }
- }
- return preferred;
-}
-function acceptLanguage(header = "", preferences) {
- return parse(header, preferences, {
- type: "accept-language",
- prefixMatch: true
- })[0] || "";
-} //# sourceMappingURL=accept-header.js.map
-
-
-/***/ }),
-
-/***/ 3099:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-/*
-
-Files in the rsc directory are meant to be packaged as part of the RSC graph using next-app-loader.
-
-*/
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- preloadStyle: function() {
- return preloadStyle;
- },
- preloadFont: function() {
- return preloadFont;
- },
- preconnect: function() {
- return preconnect;
- }
-});
-const _reactdom = /*#__PURE__*/ _interop_require_default(__webpack_require__(6155));
-function _interop_require_default(obj) {
- return obj && obj.__esModule ? obj : {
- default: obj
- };
-}
-const stylePreloadOptions = {
- as: "style"
-};
-function preloadStyle(href) {
- _reactdom.default.preload(href, stylePreloadOptions);
-}
-function preloadFont(href, type) {
- _reactdom.default.preload(href, {
- as: "font",
- type
- });
-}
-function preconnect(href, crossOrigin) {
- if (typeof crossOrigin === "string") {
- _reactdom.default.preconnect(href, {
- crossOrigin
- });
- } else {
- _reactdom.default.preconnect(href);
- }
-} //# sourceMappingURL=preloads.js.map
-
-
-/***/ }),
-
-/***/ 3958:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- INTERCEPTION_ROUTE_MARKERS: function() {
- return INTERCEPTION_ROUTE_MARKERS;
- },
- isInterceptionRouteAppPath: function() {
- return isInterceptionRouteAppPath;
- },
- extractInterceptionRouteInformation: function() {
- return extractInterceptionRouteInformation;
- }
-});
-const _apppaths = __webpack_require__(8401);
-const INTERCEPTION_ROUTE_MARKERS = [
- "(..)(..)",
- "(.)",
- "(..)",
- "(...)"
-];
-function isInterceptionRouteAppPath(path) {
- // TODO-APP: add more serious validation
- return path.split("/").find((segment)=>INTERCEPTION_ROUTE_MARKERS.find((m)=>segment.startsWith(m))) !== undefined;
-}
-function extractInterceptionRouteInformation(path) {
- let interceptingRoute, marker, interceptedRoute;
- for (const segment of path.split("/")){
- marker = INTERCEPTION_ROUTE_MARKERS.find((m)=>segment.startsWith(m));
- if (marker) {
- [interceptingRoute, interceptedRoute] = path.split(marker, 2);
- break;
- }
- }
- if (!interceptingRoute || !marker || !interceptedRoute) {
- throw new Error(`Invalid interception route: ${path}. Must be in the format //(..|...|..)(..)/`);
- }
- interceptingRoute = (0, _apppaths.normalizeAppPath)(interceptingRoute) // normalize the path, e.g. /(blog)/feed -> /feed
- ;
- switch(marker){
- case "(.)":
- // (.) indicates that we should match with sibling routes, so we just need to append the intercepted route to the intercepting route
- if (interceptingRoute === "/") {
- interceptedRoute = `/${interceptedRoute}`;
- } else {
- interceptedRoute = interceptingRoute + "/" + interceptedRoute;
- }
- break;
- case "(..)":
- // (..) indicates that we should match at one level up, so we need to remove the last segment of the intercepting route
- if (interceptingRoute === "/") {
- throw new Error(`Invalid interception route: ${path}. Cannot use (..) marker at the root level, use (.) instead.`);
- }
- interceptedRoute = interceptingRoute.split("/").slice(0, -1).concat(interceptedRoute).join("/");
- break;
- case "(...)":
- // (...) will match the route segment in the root directory, so we need to use the root directory to prepend the intercepted route
- interceptedRoute = "/" + interceptedRoute;
- break;
- case "(..)(..)":
- // (..)(..) indicates that we should match at two levels up, so we need to remove the last two segments of the intercepting route
- const splitInterceptingRoute = interceptingRoute.split("/");
- if (splitInterceptingRoute.length <= 2) {
- throw new Error(`Invalid interception route: ${path}. Cannot use (..)(..) marker at the root level or one level up.`);
- }
- interceptedRoute = splitInterceptingRoute.slice(0, -2).concat(interceptedRoute).join("/");
- break;
- default:
- throw new Error("Invariant: unexpected marker");
- }
- return {
- interceptingRoute,
- interceptedRoute
- };
-} //# sourceMappingURL=interception-routes.js.map
-
-
-/***/ }),
-
-/***/ 3271:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-/* eslint-disable no-redeclare */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- NEXT_REQUEST_META: function() {
- return NEXT_REQUEST_META;
- },
- getRequestMeta: function() {
- return getRequestMeta;
- },
- setRequestMeta: function() {
- return setRequestMeta;
- },
- addRequestMeta: function() {
- return addRequestMeta;
- },
- getNextInternalQuery: function() {
- return getNextInternalQuery;
- }
-});
-const NEXT_REQUEST_META = Symbol.for("NextInternalRequestMeta");
-function getRequestMeta(req, key) {
- const meta = req[NEXT_REQUEST_META] || {};
- return typeof key === "string" ? meta[key] : meta;
-}
-function setRequestMeta(req, meta) {
- req[NEXT_REQUEST_META] = meta;
- return getRequestMeta(req);
-}
-function addRequestMeta(request, key, value) {
- const meta = getRequestMeta(request);
- meta[key] = value;
- return setRequestMeta(request, meta);
-}
-function getNextInternalQuery(query) {
- const keysToInclude = [
- "__nextDefaultLocale",
- "__nextFallback",
- "__nextLocale",
- "__nextSsgPath",
- "_nextBubbleNoFallback",
- "__nextDataReq",
- "__nextInferredLocaleFromDefault"
- ];
- const nextInternalQuery = {};
- for (const key of keysToInclude){
- if (key in query) {
- // @ts-ignore this can't be typed correctly
- nextInternalQuery[key] = query[key];
- }
- }
- return nextInternalQuery;
-} //# sourceMappingURL=request-meta.js.map
-
-
-/***/ }),
-
-/***/ 3160:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- normalizeVercelUrl: function() {
- return normalizeVercelUrl;
- },
- interpolateDynamicPath: function() {
- return interpolateDynamicPath;
- },
- getUtils: function() {
- return getUtils;
- }
-});
-const _url = __webpack_require__(7310);
-const _normalizelocalepath = __webpack_require__(9962);
-const _pathmatch = __webpack_require__(247);
-const _routeregex = __webpack_require__(9601);
-const _routematcher = __webpack_require__(4060);
-const _preparedestination = __webpack_require__(880);
-const _acceptheader = __webpack_require__(2112);
-const _detectlocalecookie = __webpack_require__(8090);
-const _detectdomainlocale = __webpack_require__(2207);
-const _denormalizepagepath = __webpack_require__(6115);
-const _cookie = /*#__PURE__*/ _interop_require_default(__webpack_require__(252));
-const _constants = __webpack_require__(2205);
-const _requestmeta = __webpack_require__(3271);
-const _removetrailingslash = __webpack_require__(465);
-const _apppaths = __webpack_require__(8401);
-const _constants1 = __webpack_require__(8537);
-function _interop_require_default(obj) {
- return obj && obj.__esModule ? obj : {
- default: obj
- };
-}
-function normalizeVercelUrl(req, trustQuery, paramKeys, pageIsDynamic, defaultRouteRegex) {
- // make sure to normalize req.url on Vercel to strip dynamic params
- // from the query which are added during routing
- if (pageIsDynamic && trustQuery && defaultRouteRegex) {
- const _parsedUrl = (0, _url.parse)(req.url, true);
- delete _parsedUrl.search;
- for (const key of Object.keys(_parsedUrl.query)){
- if (key !== _constants1.NEXT_QUERY_PARAM_PREFIX && key.startsWith(_constants1.NEXT_QUERY_PARAM_PREFIX) || (paramKeys || Object.keys(defaultRouteRegex.groups)).includes(key)) {
- delete _parsedUrl.query[key];
- }
- }
- req.url = (0, _url.format)(_parsedUrl);
- }
-}
-function interpolateDynamicPath(pathname, params, defaultRouteRegex) {
- if (!defaultRouteRegex) return pathname;
- for (const param of Object.keys(defaultRouteRegex.groups)){
- const { optional , repeat } = defaultRouteRegex.groups[param];
- let builtParam = `[${repeat ? "..." : ""}${param}]`;
- if (optional) {
- builtParam = `[${builtParam}]`;
- }
- const paramIdx = pathname.indexOf(builtParam);
- if (paramIdx > -1) {
- let paramValue;
- const value = params[param];
- if (Array.isArray(value)) {
- paramValue = value.map((v)=>v && encodeURIComponent(v)).join("/");
- } else if (value) {
- paramValue = encodeURIComponent(value);
- } else {
- paramValue = "";
- }
- pathname = pathname.slice(0, paramIdx) + paramValue + pathname.slice(paramIdx + builtParam.length);
- }
- }
- return pathname;
-}
-function getUtils({ page , i18n , basePath , rewrites , pageIsDynamic , trailingSlash }) {
- let defaultRouteRegex;
- let dynamicRouteMatcher;
- let defaultRouteMatches;
- if (pageIsDynamic) {
- defaultRouteRegex = (0, _routeregex.getNamedRouteRegex)(page, false);
- dynamicRouteMatcher = (0, _routematcher.getRouteMatcher)(defaultRouteRegex);
- defaultRouteMatches = dynamicRouteMatcher(page);
- }
- function handleRewrites(req, parsedUrl) {
- const rewriteParams = {};
- let fsPathname = parsedUrl.pathname;
- const matchesPage = ()=>{
- const fsPathnameNoSlash = (0, _removetrailingslash.removeTrailingSlash)(fsPathname || "");
- return fsPathnameNoSlash === (0, _removetrailingslash.removeTrailingSlash)(page) || (dynamicRouteMatcher == null ? void 0 : dynamicRouteMatcher(fsPathnameNoSlash));
- };
- const checkRewrite = (rewrite)=>{
- const matcher = (0, _pathmatch.getPathMatch)(rewrite.source + (trailingSlash ? "(/)?" : ""), {
- removeUnnamedParams: true,
- strict: true
- });
- let params = matcher(parsedUrl.pathname);
- if ((rewrite.has || rewrite.missing) && params) {
- const hasParams = (0, _preparedestination.matchHas)(req, parsedUrl.query, rewrite.has, rewrite.missing);
- if (hasParams) {
- Object.assign(params, hasParams);
- } else {
- params = false;
- }
- }
- if (params) {
- const { parsedDestination , destQuery } = (0, _preparedestination.prepareDestination)({
- appendParamsToQuery: true,
- destination: rewrite.destination,
- params: params,
- query: parsedUrl.query
- });
- // if the rewrite destination is external break rewrite chain
- if (parsedDestination.protocol) {
- return true;
- }
- Object.assign(rewriteParams, destQuery, params);
- Object.assign(parsedUrl.query, parsedDestination.query);
- delete parsedDestination.query;
- Object.assign(parsedUrl, parsedDestination);
- fsPathname = parsedUrl.pathname;
- if (basePath) {
- fsPathname = fsPathname.replace(new RegExp(`^${basePath}`), "") || "/";
- }
- if (i18n) {
- const destLocalePathResult = (0, _normalizelocalepath.normalizeLocalePath)(fsPathname, i18n.locales);
- fsPathname = destLocalePathResult.pathname;
- parsedUrl.query.nextInternalLocale = destLocalePathResult.detectedLocale || params.nextInternalLocale;
- }
- if (fsPathname === page) {
- return true;
- }
- if (pageIsDynamic && dynamicRouteMatcher) {
- const dynamicParams = dynamicRouteMatcher(fsPathname);
- if (dynamicParams) {
- parsedUrl.query = {
- ...parsedUrl.query,
- ...dynamicParams
- };
- return true;
- }
- }
- }
- return false;
- };
- for (const rewrite of rewrites.beforeFiles || []){
- checkRewrite(rewrite);
- }
- if (fsPathname !== page) {
- let finished = false;
- for (const rewrite of rewrites.afterFiles || []){
- finished = checkRewrite(rewrite);
- if (finished) break;
- }
- if (!finished && !matchesPage()) {
- for (const rewrite of rewrites.fallback || []){
- finished = checkRewrite(rewrite);
- if (finished) break;
- }
- }
- }
- return rewriteParams;
- }
- function handleBasePath(req, parsedUrl) {
- // always strip the basePath if configured since it is required
- req.url = req.url.replace(new RegExp(`^${basePath}`), "") || "/";
- parsedUrl.pathname = parsedUrl.pathname.replace(new RegExp(`^${basePath}`), "") || "/";
- }
- function getParamsFromRouteMatches(req, renderOpts, detectedLocale) {
- return (0, _routematcher.getRouteMatcher)(function() {
- const { groups , routeKeys } = defaultRouteRegex;
- return {
- re: {
- // Simulate a RegExp match from the \`req.url\` input
- exec: (str)=>{
- const obj = Object.fromEntries(new URLSearchParams(str));
- const matchesHasLocale = i18n && detectedLocale && obj["1"] === detectedLocale;
- for (const key of Object.keys(obj)){
- const value = obj[key];
- if (key !== _constants1.NEXT_QUERY_PARAM_PREFIX && key.startsWith(_constants1.NEXT_QUERY_PARAM_PREFIX)) {
- const normalizedKey = key.substring(_constants1.NEXT_QUERY_PARAM_PREFIX.length);
- obj[normalizedKey] = value;
- delete obj[key];
- }
- }
- // favor named matches if available
- const routeKeyNames = Object.keys(routeKeys || {});
- const filterLocaleItem = (val)=>{
- if (i18n) {
- // locale items can be included in route-matches
- // for fallback SSG pages so ensure they are
- // filtered
- const isCatchAll = Array.isArray(val);
- const _val = isCatchAll ? val[0] : val;
- if (typeof _val === "string" && i18n.locales.some((item)=>{
- if (item.toLowerCase() === _val.toLowerCase()) {
- detectedLocale = item;
- renderOpts.locale = detectedLocale;
- return true;
- }
- return false;
- })) {
- // remove the locale item from the match
- if (isCatchAll) {
- val.splice(0, 1);
- }
- // the value is only a locale item and
- // shouldn't be added
- return isCatchAll ? val.length === 0 : true;
- }
- }
- return false;
- };
- if (routeKeyNames.every((name)=>obj[name])) {
- return routeKeyNames.reduce((prev, keyName)=>{
- const paramName = routeKeys == null ? void 0 : routeKeys[keyName];
- if (paramName && !filterLocaleItem(obj[keyName])) {
- prev[groups[paramName].pos] = obj[keyName];
- }
- return prev;
- }, {});
- }
- return Object.keys(obj).reduce((prev, key)=>{
- if (!filterLocaleItem(obj[key])) {
- let normalizedKey = key;
- if (matchesHasLocale) {
- normalizedKey = parseInt(key, 10) - 1 + "";
- }
- return Object.assign(prev, {
- [normalizedKey]: obj[key]
- });
- }
- return prev;
- }, {});
- }
- },
- groups
- };
- }())(req.headers["x-now-route-matches"]);
- }
- function normalizeDynamicRouteParams(params, ignoreOptional) {
- let hasValidParams = true;
- if (!defaultRouteRegex) return {
- params,
- hasValidParams: false
- };
- params = Object.keys(defaultRouteRegex.groups).reduce((prev, key)=>{
- let value = params[key];
- if (typeof value === "string") {
- value = (0, _apppaths.normalizeRscPath)(value, true);
- }
- if (Array.isArray(value)) {
- value = value.map((val)=>{
- if (typeof val === "string") {
- val = (0, _apppaths.normalizeRscPath)(val, true);
- }
- return val;
- });
- }
- // if the value matches the default value we can't rely
- // on the parsed params, this is used to signal if we need
- // to parse x-now-route-matches or not
- const defaultValue = defaultRouteMatches[key];
- const isOptional = defaultRouteRegex.groups[key].optional;
- const isDefaultValue = Array.isArray(defaultValue) ? defaultValue.some((defaultVal)=>{
- return Array.isArray(value) ? value.some((val)=>val.includes(defaultVal)) : value == null ? void 0 : value.includes(defaultVal);
- }) : value == null ? void 0 : value.includes(defaultValue);
- if (isDefaultValue || typeof value === "undefined" && !(isOptional && ignoreOptional)) {
- hasValidParams = false;
- }
- // non-provided optional values should be undefined so normalize
- // them to undefined
- if (isOptional && (!value || Array.isArray(value) && value.length === 1 && // fallback optional catch-all SSG pages have
- // [[...paramName]] for the root path on Vercel
- (value[0] === "index" || value[0] === `[[...${key}]]`))) {
- value = undefined;
- delete params[key];
- }
- // query values from the proxy aren't already split into arrays
- // so make sure to normalize catch-all values
- if (value && typeof value === "string" && defaultRouteRegex.groups[key].repeat) {
- value = value.split("/");
- }
- if (value) {
- prev[key] = value;
- }
- return prev;
- }, {});
- return {
- params,
- hasValidParams
- };
- }
- function handleLocale(req, res, parsedUrl, routeNoAssetPath, shouldNotRedirect) {
- if (!i18n) return;
- const pathname = parsedUrl.pathname || "/";
- let defaultLocale = i18n.defaultLocale;
- let detectedLocale = (0, _detectlocalecookie.detectLocaleCookie)(req, i18n.locales);
- let acceptPreferredLocale;
- try {
- acceptPreferredLocale = i18n.localeDetection !== false ? (0, _acceptheader.acceptLanguage)(req.headers["accept-language"], i18n.locales) : detectedLocale;
- } catch (_) {
- acceptPreferredLocale = detectedLocale;
- }
- const { host } = req.headers || {};
- // remove port from host and remove port if present
- const hostname = host && host.split(":")[0].toLowerCase();
- const detectedDomain = (0, _detectdomainlocale.detectDomainLocale)(i18n.domains, hostname);
- if (detectedDomain) {
- defaultLocale = detectedDomain.defaultLocale;
- detectedLocale = defaultLocale;
- (0, _requestmeta.addRequestMeta)(req, "__nextIsLocaleDomain", true);
- }
- // if not domain specific locale use accept-language preferred
- detectedLocale = detectedLocale || acceptPreferredLocale;
- let localeDomainRedirect;
- const localePathResult = (0, _normalizelocalepath.normalizeLocalePath)(pathname, i18n.locales);
- routeNoAssetPath = (0, _normalizelocalepath.normalizeLocalePath)(routeNoAssetPath, i18n.locales).pathname;
- if (localePathResult.detectedLocale) {
- detectedLocale = localePathResult.detectedLocale;
- req.url = (0, _url.format)({
- ...parsedUrl,
- pathname: localePathResult.pathname
- });
- (0, _requestmeta.addRequestMeta)(req, "__nextStrippedLocale", true);
- parsedUrl.pathname = localePathResult.pathname;
- }
- // If a detected locale is a domain specific locale and we aren't already
- // on that domain and path prefix redirect to it to prevent duplicate
- // content from multiple domains
- if (detectedDomain) {
- const localeToCheck = localePathResult.detectedLocale ? detectedLocale : acceptPreferredLocale;
- const matchedDomain = (0, _detectdomainlocale.detectDomainLocale)(i18n.domains, undefined, localeToCheck);
- if (matchedDomain && matchedDomain.domain !== detectedDomain.domain) {
- localeDomainRedirect = `http${matchedDomain.http ? "" : "s"}://${matchedDomain.domain}/${localeToCheck === matchedDomain.defaultLocale ? "" : localeToCheck}`;
- }
- }
- const denormalizedPagePath = (0, _denormalizepagepath.denormalizePagePath)(pathname);
- const detectedDefaultLocale = !detectedLocale || detectedLocale.toLowerCase() === defaultLocale.toLowerCase();
- const shouldStripDefaultLocale = false;
- // detectedDefaultLocale &&
- // denormalizedPagePath.toLowerCase() === \`/\${i18n.defaultLocale.toLowerCase()}\`
- const shouldAddLocalePrefix = !detectedDefaultLocale && denormalizedPagePath === "/";
- detectedLocale = detectedLocale || i18n.defaultLocale;
- if (!shouldNotRedirect && !req.headers["x-vercel-id"] && i18n.localeDetection !== false && (localeDomainRedirect || shouldAddLocalePrefix || shouldStripDefaultLocale)) {
- // set the NEXT_LOCALE cookie when a user visits the default locale
- // with the locale prefix so that they aren't redirected back to
- // their accept-language preferred locale
- if (shouldStripDefaultLocale && acceptPreferredLocale !== defaultLocale) {
- const previous = res.getHeader("set-cookie");
- res.setHeader("set-cookie", [
- ...typeof previous === "string" ? [
- previous
- ] : Array.isArray(previous) ? previous : [],
- _cookie.default.serialize("NEXT_LOCALE", defaultLocale, {
- httpOnly: true,
- path: "/"
- })
- ]);
- }
- res.setHeader("Location", (0, _url.format)({
- // make sure to include any query values when redirecting
- ...parsedUrl,
- pathname: localeDomainRedirect ? localeDomainRedirect : shouldStripDefaultLocale ? basePath || "/" : `${basePath}/${detectedLocale}`
- }));
- res.statusCode = _constants.TEMPORARY_REDIRECT_STATUS;
- res.end();
- return;
- }
- detectedLocale = localePathResult.detectedLocale || detectedDomain && detectedDomain.defaultLocale || defaultLocale;
- return {
- defaultLocale,
- detectedLocale,
- routeNoAssetPath
- };
- }
- return {
- handleLocale,
- handleRewrites,
- handleBasePath,
- defaultRouteRegex,
- dynamicRouteMatcher,
- defaultRouteMatches,
- getParamsFromRouteMatches,
- normalizeDynamicRouteParams,
- normalizeVercelUrl: (req, trustQuery, paramKeys)=>normalizeVercelUrl(req, trustQuery, paramKeys, pageIsDynamic, defaultRouteRegex),
- interpolateDynamicPath: (pathname, params)=>interpolateDynamicPath(pathname, params, defaultRouteRegex)
- };
-} //# sourceMappingURL=server-utils.js.map
-
-
-/***/ }),
-
-/***/ 2205:
-/***/ ((module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- MODERN_BROWSERSLIST_TARGET: function() {
- return _modernbrowserslisttarget.default;
- },
- COMPILER_NAMES: function() {
- return COMPILER_NAMES;
- },
- COMPILER_INDEXES: function() {
- return COMPILER_INDEXES;
- },
- PHASE_EXPORT: function() {
- return PHASE_EXPORT;
- },
- PHASE_PRODUCTION_BUILD: function() {
- return PHASE_PRODUCTION_BUILD;
- },
- PHASE_PRODUCTION_SERVER: function() {
- return PHASE_PRODUCTION_SERVER;
- },
- PHASE_DEVELOPMENT_SERVER: function() {
- return PHASE_DEVELOPMENT_SERVER;
- },
- PHASE_TEST: function() {
- return PHASE_TEST;
- },
- PAGES_MANIFEST: function() {
- return PAGES_MANIFEST;
- },
- APP_PATHS_MANIFEST: function() {
- return APP_PATHS_MANIFEST;
- },
- APP_PATH_ROUTES_MANIFEST: function() {
- return APP_PATH_ROUTES_MANIFEST;
- },
- BUILD_MANIFEST: function() {
- return BUILD_MANIFEST;
- },
- APP_BUILD_MANIFEST: function() {
- return APP_BUILD_MANIFEST;
- },
- SUBRESOURCE_INTEGRITY_MANIFEST: function() {
- return SUBRESOURCE_INTEGRITY_MANIFEST;
- },
- NEXT_FONT_MANIFEST: function() {
- return NEXT_FONT_MANIFEST;
- },
- EXPORT_MARKER: function() {
- return EXPORT_MARKER;
- },
- EXPORT_DETAIL: function() {
- return EXPORT_DETAIL;
- },
- PRERENDER_MANIFEST: function() {
- return PRERENDER_MANIFEST;
- },
- ROUTES_MANIFEST: function() {
- return ROUTES_MANIFEST;
- },
- IMAGES_MANIFEST: function() {
- return IMAGES_MANIFEST;
- },
- SERVER_FILES_MANIFEST: function() {
- return SERVER_FILES_MANIFEST;
- },
- DEV_CLIENT_PAGES_MANIFEST: function() {
- return DEV_CLIENT_PAGES_MANIFEST;
- },
- MIDDLEWARE_MANIFEST: function() {
- return MIDDLEWARE_MANIFEST;
- },
- DEV_MIDDLEWARE_MANIFEST: function() {
- return DEV_MIDDLEWARE_MANIFEST;
- },
- REACT_LOADABLE_MANIFEST: function() {
- return REACT_LOADABLE_MANIFEST;
- },
- FONT_MANIFEST: function() {
- return FONT_MANIFEST;
- },
- SERVER_DIRECTORY: function() {
- return SERVER_DIRECTORY;
- },
- CONFIG_FILES: function() {
- return CONFIG_FILES;
- },
- BUILD_ID_FILE: function() {
- return BUILD_ID_FILE;
- },
- BLOCKED_PAGES: function() {
- return BLOCKED_PAGES;
- },
- CLIENT_PUBLIC_FILES_PATH: function() {
- return CLIENT_PUBLIC_FILES_PATH;
- },
- CLIENT_STATIC_FILES_PATH: function() {
- return CLIENT_STATIC_FILES_PATH;
- },
- CLIENT_STATIC_FILES_RUNTIME: function() {
- return CLIENT_STATIC_FILES_RUNTIME;
- },
- STRING_LITERAL_DROP_BUNDLE: function() {
- return STRING_LITERAL_DROP_BUNDLE;
- },
- NEXT_BUILTIN_DOCUMENT: function() {
- return NEXT_BUILTIN_DOCUMENT;
- },
- NEXT_CLIENT_SSR_ENTRY_SUFFIX: function() {
- return NEXT_CLIENT_SSR_ENTRY_SUFFIX;
- },
- CLIENT_REFERENCE_MANIFEST: function() {
- return CLIENT_REFERENCE_MANIFEST;
- },
- FLIGHT_SERVER_CSS_MANIFEST: function() {
- return FLIGHT_SERVER_CSS_MANIFEST;
- },
- SERVER_REFERENCE_MANIFEST: function() {
- return SERVER_REFERENCE_MANIFEST;
- },
- MIDDLEWARE_BUILD_MANIFEST: function() {
- return MIDDLEWARE_BUILD_MANIFEST;
- },
- MIDDLEWARE_REACT_LOADABLE_MANIFEST: function() {
- return MIDDLEWARE_REACT_LOADABLE_MANIFEST;
- },
- CLIENT_STATIC_FILES_RUNTIME_MAIN: function() {
- return CLIENT_STATIC_FILES_RUNTIME_MAIN;
- },
- CLIENT_STATIC_FILES_RUNTIME_MAIN_APP: function() {
- return CLIENT_STATIC_FILES_RUNTIME_MAIN_APP;
- },
- APP_CLIENT_INTERNALS: function() {
- return APP_CLIENT_INTERNALS;
- },
- CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH: function() {
- return CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH;
- },
- CLIENT_STATIC_FILES_RUNTIME_AMP: function() {
- return CLIENT_STATIC_FILES_RUNTIME_AMP;
- },
- CLIENT_STATIC_FILES_RUNTIME_WEBPACK: function() {
- return CLIENT_STATIC_FILES_RUNTIME_WEBPACK;
- },
- CLIENT_STATIC_FILES_RUNTIME_POLYFILLS: function() {
- return CLIENT_STATIC_FILES_RUNTIME_POLYFILLS;
- },
- CLIENT_STATIC_FILES_RUNTIME_POLYFILLS_SYMBOL: function() {
- return CLIENT_STATIC_FILES_RUNTIME_POLYFILLS_SYMBOL;
- },
- EDGE_RUNTIME_WEBPACK: function() {
- return EDGE_RUNTIME_WEBPACK;
- },
- TEMPORARY_REDIRECT_STATUS: function() {
- return TEMPORARY_REDIRECT_STATUS;
- },
- PERMANENT_REDIRECT_STATUS: function() {
- return PERMANENT_REDIRECT_STATUS;
- },
- STATIC_PROPS_ID: function() {
- return STATIC_PROPS_ID;
- },
- SERVER_PROPS_ID: function() {
- return SERVER_PROPS_ID;
- },
- PAGE_SEGMENT_KEY: function() {
- return PAGE_SEGMENT_KEY;
- },
- GOOGLE_FONT_PROVIDER: function() {
- return GOOGLE_FONT_PROVIDER;
- },
- OPTIMIZED_FONT_PROVIDERS: function() {
- return OPTIMIZED_FONT_PROVIDERS;
- },
- DEFAULT_SERIF_FONT: function() {
- return DEFAULT_SERIF_FONT;
- },
- DEFAULT_SANS_SERIF_FONT: function() {
- return DEFAULT_SANS_SERIF_FONT;
- },
- STATIC_STATUS_PAGES: function() {
- return STATIC_STATUS_PAGES;
- },
- TRACE_OUTPUT_VERSION: function() {
- return TRACE_OUTPUT_VERSION;
- },
- TURBO_TRACE_DEFAULT_MEMORY_LIMIT: function() {
- return TURBO_TRACE_DEFAULT_MEMORY_LIMIT;
- },
- RSC_MODULE_TYPES: function() {
- return RSC_MODULE_TYPES;
- },
- EDGE_UNSUPPORTED_NODE_APIS: function() {
- return EDGE_UNSUPPORTED_NODE_APIS;
- },
- SYSTEM_ENTRYPOINTS: function() {
- return SYSTEM_ENTRYPOINTS;
- }
-});
-const _interop_require_default = __webpack_require__(1550);
-const _modernbrowserslisttarget = /*#__PURE__*/ _interop_require_default._(__webpack_require__(2159));
-const COMPILER_NAMES = {
- client: "client",
- server: "server",
- edgeServer: "edge-server"
-};
-const COMPILER_INDEXES = {
- [COMPILER_NAMES.client]: 0,
- [COMPILER_NAMES.server]: 1,
- [COMPILER_NAMES.edgeServer]: 2
-};
-const PHASE_EXPORT = "phase-export";
-const PHASE_PRODUCTION_BUILD = "phase-production-build";
-const PHASE_PRODUCTION_SERVER = "phase-production-server";
-const PHASE_DEVELOPMENT_SERVER = "phase-development-server";
-const PHASE_TEST = "phase-test";
-const PAGES_MANIFEST = "pages-manifest.json";
-const APP_PATHS_MANIFEST = "app-paths-manifest.json";
-const APP_PATH_ROUTES_MANIFEST = "app-path-routes-manifest.json";
-const BUILD_MANIFEST = "build-manifest.json";
-const APP_BUILD_MANIFEST = "app-build-manifest.json";
-const SUBRESOURCE_INTEGRITY_MANIFEST = "subresource-integrity-manifest";
-const NEXT_FONT_MANIFEST = "next-font-manifest";
-const EXPORT_MARKER = "export-marker.json";
-const EXPORT_DETAIL = "export-detail.json";
-const PRERENDER_MANIFEST = "prerender-manifest.json";
-const ROUTES_MANIFEST = "routes-manifest.json";
-const IMAGES_MANIFEST = "images-manifest.json";
-const SERVER_FILES_MANIFEST = "required-server-files.json";
-const DEV_CLIENT_PAGES_MANIFEST = "_devPagesManifest.json";
-const MIDDLEWARE_MANIFEST = "middleware-manifest.json";
-const DEV_MIDDLEWARE_MANIFEST = "_devMiddlewareManifest.json";
-const REACT_LOADABLE_MANIFEST = "react-loadable-manifest.json";
-const FONT_MANIFEST = "font-manifest.json";
-const SERVER_DIRECTORY = "server";
-const CONFIG_FILES = [
- "next.config.js",
- "next.config.mjs"
-];
-const BUILD_ID_FILE = "BUILD_ID";
-const BLOCKED_PAGES = [
- "/_document",
- "/_app",
- "/_error"
-];
-const CLIENT_PUBLIC_FILES_PATH = "public";
-const CLIENT_STATIC_FILES_PATH = "static";
-const CLIENT_STATIC_FILES_RUNTIME = "runtime";
-const STRING_LITERAL_DROP_BUNDLE = "__NEXT_DROP_CLIENT_FILE__";
-const NEXT_BUILTIN_DOCUMENT = "__NEXT_BUILTIN_DOCUMENT__";
-const NEXT_CLIENT_SSR_ENTRY_SUFFIX = ".__sc_client__";
-const CLIENT_REFERENCE_MANIFEST = "client-reference-manifest";
-const FLIGHT_SERVER_CSS_MANIFEST = "flight-server-css-manifest";
-const SERVER_REFERENCE_MANIFEST = "server-reference-manifest";
-const MIDDLEWARE_BUILD_MANIFEST = "middleware-build-manifest";
-const MIDDLEWARE_REACT_LOADABLE_MANIFEST = "middleware-react-loadable-manifest";
-const CLIENT_STATIC_FILES_RUNTIME_MAIN = "main";
-const CLIENT_STATIC_FILES_RUNTIME_MAIN_APP = "" + CLIENT_STATIC_FILES_RUNTIME_MAIN + "-app";
-const APP_CLIENT_INTERNALS = "app-client-internals";
-const CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH = "react-refresh";
-const CLIENT_STATIC_FILES_RUNTIME_AMP = "amp";
-const CLIENT_STATIC_FILES_RUNTIME_WEBPACK = "webpack";
-const CLIENT_STATIC_FILES_RUNTIME_POLYFILLS = "polyfills";
-const CLIENT_STATIC_FILES_RUNTIME_POLYFILLS_SYMBOL = Symbol(CLIENT_STATIC_FILES_RUNTIME_POLYFILLS);
-const EDGE_RUNTIME_WEBPACK = "edge-runtime-webpack";
-const TEMPORARY_REDIRECT_STATUS = 307;
-const PERMANENT_REDIRECT_STATUS = 308;
-const STATIC_PROPS_ID = "__N_SSG";
-const SERVER_PROPS_ID = "__N_SSP";
-const PAGE_SEGMENT_KEY = "__PAGE__";
-const GOOGLE_FONT_PROVIDER = "https://fonts.googleapis.com/";
-const OPTIMIZED_FONT_PROVIDERS = [
- {
- url: GOOGLE_FONT_PROVIDER,
- preconnect: "https://fonts.gstatic.com"
- },
- {
- url: "https://use.typekit.net",
- preconnect: "https://use.typekit.net"
- }
-];
-const DEFAULT_SERIF_FONT = {
- name: "Times New Roman",
- xAvgCharWidth: 821,
- azAvgWidth: 854.3953488372093,
- unitsPerEm: 2048
-};
-const DEFAULT_SANS_SERIF_FONT = {
- name: "Arial",
- xAvgCharWidth: 904,
- azAvgWidth: 934.5116279069767,
- unitsPerEm: 2048
-};
-const STATIC_STATUS_PAGES = [
- "/500"
-];
-const TRACE_OUTPUT_VERSION = 1;
-const TURBO_TRACE_DEFAULT_MEMORY_LIMIT = 6000;
-const RSC_MODULE_TYPES = {
- client: "client",
- server: "server"
-};
-const EDGE_UNSUPPORTED_NODE_APIS = [
- "clearImmediate",
- "setImmediate",
- "BroadcastChannel",
- "ByteLengthQueuingStrategy",
- "CompressionStream",
- "CountQueuingStrategy",
- "DecompressionStream",
- "DomException",
- "MessageChannel",
- "MessageEvent",
- "MessagePort",
- "ReadableByteStreamController",
- "ReadableStreamBYOBRequest",
- "ReadableStreamDefaultController",
- "TransformStreamDefaultController",
- "WritableStreamDefaultController"
-];
-const SYSTEM_ENTRYPOINTS = new Set([
- CLIENT_STATIC_FILES_RUNTIME_MAIN,
- CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH,
- CLIENT_STATIC_FILES_RUNTIME_AMP,
- CLIENT_STATIC_FILES_RUNTIME_MAIN_APP
-]);
-if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") {
- Object.defineProperty(exports.default, "__esModule", {
- value: true
- });
- Object.assign(exports.default, exports);
- module.exports = exports.default;
-} //# sourceMappingURL=constants.js.map
-
-
-/***/ }),
-
-/***/ 536:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-// regexp is based on https://github.com/sindresorhus/escape-string-regexp
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "escapeStringRegexp", ({
- enumerable: true,
- get: function() {
- return escapeStringRegexp;
- }
-}));
-const reHasRegExp = /[|\\{}()[\]^$+*?.-]/;
-const reReplaceRegExp = /[|\\{}()[\]^$+*?.-]/g;
-function escapeStringRegexp(str) {
- // see also: https://github.com/lodash/lodash/blob/2da024c3b4f9947a48517639de7560457cd4ec6c/escapeRegExp.js#L23
- if (reHasRegExp.test(str)) {
- return str.replace(reReplaceRegExp, "\\$&");
- }
- return str;
-} //# sourceMappingURL=escape-regexp.js.map
-
-
-/***/ }),
-
-/***/ 6230:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-// http://www.cse.yorku.ca/~oz/hash.html
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "djb2Hash", ({
- enumerable: true,
- get: function() {
- return djb2Hash;
- }
-}));
-function djb2Hash(str) {
- let hash = 5381;
- for(let i = 0; i < str.length; i++){
- const char = str.charCodeAt(i);
- hash = (hash << 5) + hash + char;
- }
- return Math.abs(hash);
-} //# sourceMappingURL=hash.js.map
-
-
-/***/ }),
-
-/***/ 8090:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "detectLocaleCookie", ({
- enumerable: true,
- get: function() {
- return detectLocaleCookie;
- }
-}));
-function detectLocaleCookie(req, locales) {
- const { NEXT_LOCALE } = req.cookies || {};
- return NEXT_LOCALE ? locales.find((locale)=>NEXT_LOCALE.toLowerCase() === locale.toLowerCase()) : undefined;
-} //# sourceMappingURL=detect-locale-cookie.js.map
-
-
-/***/ }),
-
-/***/ 2080:
-/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
-
-"use strict";
-/**
- * This module is for next.js server internal usage of path module.
- * It will use native path module for nodejs runtime.
- * It will use path-browserify polyfill for edge runtime.
- */
-let path;
-if (false) {} else {
- path = __webpack_require__(1017);
-}
-module.exports = path; //# sourceMappingURL=path.js.map
-
-
-/***/ }),
-
-/***/ 2159:
-/***/ ((module) => {
-
-"use strict";
-// Note: This file is JS because it's used by the taskfile-swc.js file, which is JS.
-// Keep file changes in sync with the corresponding `.d.ts` files.
-/**
- * These are the browser versions that support all of the following:
- * static import: https://caniuse.com/es6-module
- * dynamic import: https://caniuse.com/es6-module-dynamic-import
- * import.meta: https://caniuse.com/mdn-javascript_operators_import_meta
- */
-const MODERN_BROWSERSLIST_TARGET = [
- "chrome 64",
- "edge 79",
- "firefox 67",
- "opera 51",
- "safari 12"
-];
-module.exports = MODERN_BROWSERSLIST_TARGET; //# sourceMappingURL=modern-browserslist-target.js.map
-
-
-/***/ }),
-
-/***/ 6115:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "denormalizePagePath", ({
- enumerable: true,
- get: function() {
- return denormalizePagePath;
- }
-}));
-const _utils = __webpack_require__(9824);
-const _normalizepathsep = __webpack_require__(9019);
-function denormalizePagePath(page) {
- let _page = (0, _normalizepathsep.normalizePathSep)(page);
- return _page.startsWith("/index/") && !(0, _utils.isDynamicRoute)(_page) ? _page.slice(6) : _page !== "/index" ? _page : "/";
-} //# sourceMappingURL=denormalize-page-path.js.map
-
-
-/***/ }),
-
-/***/ 6921:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-/**
- * For a given page path, this function ensures that there is a leading slash.
- * If there is not a leading slash, one is added, otherwise it is noop.
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "ensureLeadingSlash", ({
- enumerable: true,
- get: function() {
- return ensureLeadingSlash;
- }
-}));
-function ensureLeadingSlash(path) {
- return path.startsWith("/") ? path : "/" + path;
-} //# sourceMappingURL=ensure-leading-slash.js.map
-
-
-/***/ }),
-
-/***/ 9019:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-/**
- * For a given page path, this function ensures that there is no backslash
- * escaping slashes in the path. Example:
- * - `foo\/bar\/baz` -> `foo/bar/baz`
- */
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "normalizePathSep", ({
- enumerable: true,
- get: function() {
- return normalizePathSep;
- }
-}));
-function normalizePathSep(path) {
- return path.replace(/\\/g, "/");
-} //# sourceMappingURL=normalize-path-sep.js.map
-
-
-/***/ }),
-
-/***/ 8401:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- normalizeAppPath: function() {
- return normalizeAppPath;
- },
- normalizeRscPath: function() {
- return normalizeRscPath;
- }
-});
-const _ensureleadingslash = __webpack_require__(6921);
-function normalizeAppPath(route) {
- return (0, _ensureleadingslash.ensureLeadingSlash)(route.split("/").reduce((pathname, segment, index, segments)=>{
- // Empty segments are ignored.
- if (!segment) {
- return pathname;
- }
- // Groups are ignored.
- if (segment.startsWith("(") && segment.endsWith(")")) {
- return pathname;
- }
- // Parallel segments are ignored.
- if (segment.startsWith("@")) {
- return pathname;
- }
- // The last segment (if it's a leaf) should be ignored.
- if ((segment === "page" || segment === "route") && index === segments.length - 1) {
- return pathname;
- }
- return pathname + "/" + segment;
- }, ""));
-}
-function normalizeRscPath(pathname, enabled) {
- return enabled ? pathname.replace(/\.rsc($|\?)/, "$1") : pathname;
-} //# sourceMappingURL=app-paths.js.map
-
-
-/***/ }),
-
-/***/ 9824:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- getSortedRoutes: function() {
- return _sortedroutes.getSortedRoutes;
- },
- isDynamicRoute: function() {
- return _isdynamic.isDynamicRoute;
- }
-});
-const _sortedroutes = __webpack_require__(6262);
-const _isdynamic = __webpack_require__(815); //# sourceMappingURL=index.js.map
-
-
-/***/ }),
-
-/***/ 815:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-// Identify /[param]/ in route string
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "isDynamicRoute", ({
- enumerable: true,
- get: function() {
- return isDynamicRoute;
- }
-}));
-const TEST_ROUTE = /\/\[[^/]+?\](?=\/|$)/;
-function isDynamicRoute(route) {
- return TEST_ROUTE.test(route);
-} //# sourceMappingURL=is-dynamic.js.map
-
-
-/***/ }),
-
-/***/ 3767:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "parseRelativeUrl", ({
- enumerable: true,
- get: function() {
- return parseRelativeUrl;
- }
-}));
-const _utils = __webpack_require__(1265);
-const _querystring = __webpack_require__(4557);
-function parseRelativeUrl(url, base) {
- const globalBase = new URL( true ? "http://n" : 0);
- const resolvedBase = base ? new URL(base, globalBase) : url.startsWith(".") ? new URL( true ? "http://n" : 0) : globalBase;
- const { pathname , searchParams , search , hash , href , origin } = new URL(url, resolvedBase);
- if (origin !== globalBase.origin) {
- throw new Error("invariant: invalid relative URL, router received " + url);
- }
- return {
- pathname,
- query: (0, _querystring.searchParamsToUrlQuery)(searchParams),
- search,
- hash,
- href: href.slice(globalBase.origin.length)
- };
-} //# sourceMappingURL=parse-relative-url.js.map
-
-
-/***/ }),
-
-/***/ 429:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "parseUrl", ({
- enumerable: true,
- get: function() {
- return parseUrl;
- }
-}));
-const _querystring = __webpack_require__(4557);
-const _parserelativeurl = __webpack_require__(3767);
-function parseUrl(url) {
- if (url.startsWith("/")) {
- return (0, _parserelativeurl.parseRelativeUrl)(url);
- }
- const parsedURL = new URL(url);
- return {
- hash: parsedURL.hash,
- hostname: parsedURL.hostname,
- href: parsedURL.href,
- pathname: parsedURL.pathname,
- port: parsedURL.port,
- protocol: parsedURL.protocol,
- query: (0, _querystring.searchParamsToUrlQuery)(parsedURL.searchParams),
- search: parsedURL.search
- };
-} //# sourceMappingURL=parse-url.js.map
-
-
-/***/ }),
-
-/***/ 247:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "getPathMatch", ({
- enumerable: true,
- get: function() {
- return getPathMatch;
- }
-}));
-const _pathtoregexp = __webpack_require__(7999);
-function getPathMatch(path, options) {
- const keys = [];
- const regexp = (0, _pathtoregexp.pathToRegexp)(path, keys, {
- delimiter: "/",
- sensitive: false,
- strict: options == null ? void 0 : options.strict
- });
- const matcher = (0, _pathtoregexp.regexpToFunction)((options == null ? void 0 : options.regexModifier) ? new RegExp(options.regexModifier(regexp.source), regexp.flags) : regexp, keys);
- /**
- * A matcher function that will check if a given pathname matches the path
- * given in the builder function. When the path does not match it will return
- * `false` but if it does it will return an object with the matched params
- * merged with the params provided in the second argument.
- */ return (pathname, params)=>{
- const res = pathname == null ? false : matcher(pathname);
- if (!res) {
- return false;
- }
- /**
- * If unnamed params are not allowed they must be removed from
- * the matched parameters. path-to-regexp uses "string" for named and
- * "number" for unnamed parameters.
- */ if (options == null ? void 0 : options.removeUnnamedParams) {
- for (const key of keys){
- if (typeof key.name === "number") {
- delete res.params[key.name];
- }
- }
- }
- return {
- ...params,
- ...res.params
- };
- };
-} //# sourceMappingURL=path-match.js.map
-
-
-/***/ }),
-
-/***/ 880:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- matchHas: function() {
- return matchHas;
- },
- compileNonPath: function() {
- return compileNonPath;
- },
- prepareDestination: function() {
- return prepareDestination;
- }
-});
-const _pathtoregexp = __webpack_require__(7999);
-const _escaperegexp = __webpack_require__(536);
-const _parseurl = __webpack_require__(429);
-const _interceptionroutes = __webpack_require__(3958);
-/**
- * Ensure only a-zA-Z are used for param names for proper interpolating
- * with path-to-regexp
- */ function getSafeParamName(paramName) {
- let newParamName = "";
- for(let i = 0; i < paramName.length; i++){
- const charCode = paramName.charCodeAt(i);
- if (charCode > 64 && charCode < 91 || // A-Z
- charCode > 96 && charCode < 123 // a-z
- ) {
- newParamName += paramName[i];
- }
- }
- return newParamName;
-}
-function escapeSegment(str, segmentName) {
- return str.replace(new RegExp(":" + (0, _escaperegexp.escapeStringRegexp)(segmentName), "g"), "__ESC_COLON_" + segmentName);
-}
-function unescapeSegments(str) {
- return str.replace(/__ESC_COLON_/gi, ":");
-}
-function matchHas(req, query, has, missing) {
- if (has === void 0) has = [];
- if (missing === void 0) missing = [];
- const params = {};
- const hasMatch = (hasItem)=>{
- let value;
- let key = hasItem.key;
- switch(hasItem.type){
- case "header":
- {
- key = key.toLowerCase();
- value = req.headers[key];
- break;
- }
- case "cookie":
- {
- value = req.cookies[hasItem.key];
- break;
- }
- case "query":
- {
- value = query[key];
- break;
- }
- case "host":
- {
- const { host } = (req == null ? void 0 : req.headers) || {};
- // remove port from host if present
- const hostname = host == null ? void 0 : host.split(":")[0].toLowerCase();
- value = hostname;
- break;
- }
- default:
- {
- break;
- }
- }
- if (!hasItem.value && value) {
- params[getSafeParamName(key)] = value;
- return true;
- } else if (value) {
- const matcher = new RegExp("^" + hasItem.value + "$");
- const matches = Array.isArray(value) ? value.slice(-1)[0].match(matcher) : value.match(matcher);
- if (matches) {
- if (Array.isArray(matches)) {
- if (matches.groups) {
- Object.keys(matches.groups).forEach((groupKey)=>{
- params[groupKey] = matches.groups[groupKey];
- });
- } else if (hasItem.type === "host" && matches[0]) {
- params.host = matches[0];
- }
- }
- return true;
- }
- }
- return false;
- };
- const allMatch = has.every((item)=>hasMatch(item)) && !missing.some((item)=>hasMatch(item));
- if (allMatch) {
- return params;
- }
- return false;
-}
-function compileNonPath(value, params) {
- if (!value.includes(":")) {
- return value;
- }
- for (const key of Object.keys(params)){
- if (value.includes(":" + key)) {
- value = value.replace(new RegExp(":" + key + "\\*", "g"), ":" + key + "--ESCAPED_PARAM_ASTERISKS").replace(new RegExp(":" + key + "\\?", "g"), ":" + key + "--ESCAPED_PARAM_QUESTION").replace(new RegExp(":" + key + "\\+", "g"), ":" + key + "--ESCAPED_PARAM_PLUS").replace(new RegExp(":" + key + "(?!\\w)", "g"), "--ESCAPED_PARAM_COLON" + key);
- }
- }
- value = value.replace(/(:|\*|\?|\+|\(|\)|\{|\})/g, "\\$1").replace(/--ESCAPED_PARAM_PLUS/g, "+").replace(/--ESCAPED_PARAM_COLON/g, ":").replace(/--ESCAPED_PARAM_QUESTION/g, "?").replace(/--ESCAPED_PARAM_ASTERISKS/g, "*");
- // the value needs to start with a forward-slash to be compiled
- // correctly
- return (0, _pathtoregexp.compile)("/" + value, {
- validate: false
- })(params).slice(1);
-}
-function prepareDestination(args) {
- const query = Object.assign({}, args.query);
- delete query.__nextLocale;
- delete query.__nextDefaultLocale;
- delete query.__nextDataReq;
- delete query.__nextInferredLocaleFromDefault;
- let escapedDestination = args.destination;
- for (const param of Object.keys({
- ...args.params,
- ...query
- })){
- escapedDestination = escapeSegment(escapedDestination, param);
- }
- const parsedDestination = (0, _parseurl.parseUrl)(escapedDestination);
- const destQuery = parsedDestination.query;
- const destPath = unescapeSegments("" + parsedDestination.pathname + (parsedDestination.hash || ""));
- const destHostname = unescapeSegments(parsedDestination.hostname || "");
- const destPathParamKeys = [];
- const destHostnameParamKeys = [];
- (0, _pathtoregexp.pathToRegexp)(destPath, destPathParamKeys);
- (0, _pathtoregexp.pathToRegexp)(destHostname, destHostnameParamKeys);
- const destParams = [];
- destPathParamKeys.forEach((key)=>destParams.push(key.name));
- destHostnameParamKeys.forEach((key)=>destParams.push(key.name));
- const destPathCompiler = (0, _pathtoregexp.compile)(destPath, // have already validated before we got to this point and validating
- // breaks compiling destinations with named pattern params from the source
- // e.g. /something:hello(.*) -> /another/:hello is broken with validation
- // since compile validation is meant for reversing and not for inserting
- // params from a separate path-regex into another
- {
- validate: false
- });
- const destHostnameCompiler = (0, _pathtoregexp.compile)(destHostname, {
- validate: false
- });
- // update any params in query values
- for (const [key, strOrArray] of Object.entries(destQuery)){
- // the value needs to start with a forward-slash to be compiled
- // correctly
- if (Array.isArray(strOrArray)) {
- destQuery[key] = strOrArray.map((value)=>compileNonPath(unescapeSegments(value), args.params));
- } else if (typeof strOrArray === "string") {
- destQuery[key] = compileNonPath(unescapeSegments(strOrArray), args.params);
- }
- }
- // add path params to query if it's not a redirect and not
- // already defined in destination query or path
- let paramKeys = Object.keys(args.params).filter((name)=>name !== "nextInternalLocale");
- if (args.appendParamsToQuery && !paramKeys.some((key)=>destParams.includes(key))) {
- for (const key of paramKeys){
- if (!(key in destQuery)) {
- destQuery[key] = args.params[key];
- }
- }
- }
- let newUrl;
- // The compiler also that the interception route marker is an unnamed param, hence '0',
- // so we need to add it to the params object.
- if ((0, _interceptionroutes.isInterceptionRouteAppPath)(destPath)) {
- for (const segment of destPath.split("/")){
- const marker = _interceptionroutes.INTERCEPTION_ROUTE_MARKERS.find((m)=>segment.startsWith(m));
- if (marker) {
- args.params["0"] = marker;
- break;
- }
- }
- }
- try {
- newUrl = destPathCompiler(args.params);
- const [pathname, hash] = newUrl.split("#");
- parsedDestination.hostname = destHostnameCompiler(args.params);
- parsedDestination.pathname = pathname;
- parsedDestination.hash = "" + (hash ? "#" : "") + (hash || "");
- delete parsedDestination.search;
- } catch (err) {
- if (err.message.match(/Expected .*? to not repeat, but got an array/)) {
- throw new Error("To use a multi-match in the destination you must add `*` at the end of the param name to signify it should repeat. https://nextjs.org/docs/messages/invalid-multi-match");
- }
- throw err;
- }
- // Query merge order lowest priority to highest
- // 1. initial URL query values
- // 2. path segment values
- // 3. destination specified query values
- parsedDestination.query = {
- ...query,
- ...parsedDestination.query
- };
- return {
- newUrl,
- destQuery,
- parsedDestination
- };
-} //# sourceMappingURL=prepare-destination.js.map
-
-
-/***/ }),
-
-/***/ 4557:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- searchParamsToUrlQuery: function() {
- return searchParamsToUrlQuery;
- },
- urlQueryToSearchParams: function() {
- return urlQueryToSearchParams;
- },
- assign: function() {
- return assign;
- }
-});
-function searchParamsToUrlQuery(searchParams) {
- const query = {};
- searchParams.forEach((value, key)=>{
- if (typeof query[key] === "undefined") {
- query[key] = value;
- } else if (Array.isArray(query[key])) {
- query[key].push(value);
- } else {
- query[key] = [
- query[key],
- value
- ];
- }
- });
- return query;
-}
-function stringifyUrlQueryParam(param) {
- if (typeof param === "string" || typeof param === "number" && !isNaN(param) || typeof param === "boolean") {
- return String(param);
- } else {
- return "";
- }
-}
-function urlQueryToSearchParams(urlQuery) {
- const result = new URLSearchParams();
- Object.entries(urlQuery).forEach((param)=>{
- let [key, value] = param;
- if (Array.isArray(value)) {
- value.forEach((item)=>result.append(key, stringifyUrlQueryParam(item)));
- } else {
- result.set(key, stringifyUrlQueryParam(value));
- }
- });
- return result;
-}
-function assign(target) {
- for(var _len = arguments.length, searchParamsList = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
- searchParamsList[_key - 1] = arguments[_key];
- }
- searchParamsList.forEach((searchParams)=>{
- Array.from(searchParams.keys()).forEach((key)=>target.delete(key));
- searchParams.forEach((value, key)=>target.append(key, value));
- });
- return target;
-} //# sourceMappingURL=querystring.js.map
-
-
-/***/ }),
-
-/***/ 4060:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "getRouteMatcher", ({
- enumerable: true,
- get: function() {
- return getRouteMatcher;
- }
-}));
-const _utils = __webpack_require__(1265);
-function getRouteMatcher(param) {
- let { re , groups } = param;
- return (pathname)=>{
- const routeMatch = re.exec(pathname);
- if (!routeMatch) {
- return false;
- }
- const decode = (param)=>{
- try {
- return decodeURIComponent(param);
- } catch (_) {
- throw new _utils.DecodeError("failed to decode param");
- }
- };
- const params = {};
- Object.keys(groups).forEach((slugName)=>{
- const g = groups[slugName];
- const m = routeMatch[g.pos];
- if (m !== undefined) {
- params[slugName] = ~m.indexOf("/") ? m.split("/").map((entry)=>decode(entry)) : g.repeat ? [
- decode(m)
- ] : decode(m);
- }
- });
- return params;
- };
-} //# sourceMappingURL=route-matcher.js.map
-
-
-/***/ }),
-
-/***/ 9601:
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- getRouteRegex: function() {
- return getRouteRegex;
- },
- getNamedRouteRegex: function() {
- return getNamedRouteRegex;
- },
- getNamedMiddlewareRegex: function() {
- return getNamedMiddlewareRegex;
- }
-});
-const _escaperegexp = __webpack_require__(536);
-const _removetrailingslash = __webpack_require__(465);
-const NEXT_QUERY_PARAM_PREFIX = "nxtP";
-/**
- * Parses a given parameter from a route to a data structure that can be used
- * to generate the parametrized route. Examples:
- * - `[...slug]` -> `{ key: 'slug', repeat: true, optional: true }`
- * - `...slug` -> `{ key: 'slug', repeat: true, optional: false }`
- * - `[foo]` -> `{ key: 'foo', repeat: false, optional: true }`
- * - `bar` -> `{ key: 'bar', repeat: false, optional: false }`
- */ function parseParameter(param) {
- const optional = param.startsWith("[") && param.endsWith("]");
- if (optional) {
- param = param.slice(1, -1);
- }
- const repeat = param.startsWith("...");
- if (repeat) {
- param = param.slice(3);
- }
- return {
- key: param,
- repeat,
- optional
- };
-}
-function getParametrizedRoute(route) {
- const segments = (0, _removetrailingslash.removeTrailingSlash)(route).slice(1).split("/");
- const groups = {};
- let groupIndex = 1;
- return {
- parameterizedRoute: segments.map((segment)=>{
- if (segment.startsWith("[") && segment.endsWith("]")) {
- const { key , optional , repeat } = parseParameter(segment.slice(1, -1));
- groups[key] = {
- pos: groupIndex++,
- repeat,
- optional
- };
- return repeat ? optional ? "(?:/(.+?))?" : "/(.+?)" : "/([^/]+?)";
- } else {
- return "/" + (0, _escaperegexp.escapeStringRegexp)(segment);
- }
- }).join(""),
- groups
- };
-}
-function getRouteRegex(normalizedRoute) {
- const { parameterizedRoute , groups } = getParametrizedRoute(normalizedRoute);
- return {
- re: new RegExp("^" + parameterizedRoute + "(?:/)?$"),
- groups: groups
- };
-}
-/**
- * Builds a function to generate a minimal routeKey using only a-z and minimal
- * number of characters.
- */ function buildGetSafeRouteKey() {
- let routeKeyCharCode = 97;
- let routeKeyCharLength = 1;
- return ()=>{
- let routeKey = "";
- for(let i = 0; i < routeKeyCharLength; i++){
- routeKey += String.fromCharCode(routeKeyCharCode);
- routeKeyCharCode++;
- if (routeKeyCharCode > 122) {
- routeKeyCharLength++;
- routeKeyCharCode = 97;
- }
- }
- return routeKey;
- };
-}
-function getNamedParametrizedRoute(route, prefixRouteKeys) {
- const segments = (0, _removetrailingslash.removeTrailingSlash)(route).slice(1).split("/");
- const getSafeRouteKey = buildGetSafeRouteKey();
- const routeKeys = {};
- return {
- namedParameterizedRoute: segments.map((segment)=>{
- if (segment.startsWith("[") && segment.endsWith("]")) {
- const { key , optional , repeat } = parseParameter(segment.slice(1, -1));
- // replace any non-word characters since they can break
- // the named regex
- let cleanedKey = key.replace(/\W/g, "");
- if (prefixRouteKeys) {
- cleanedKey = "" + NEXT_QUERY_PARAM_PREFIX + cleanedKey;
- }
- let invalidKey = false;
- // check if the key is still invalid and fallback to using a known
- // safe key
- if (cleanedKey.length === 0 || cleanedKey.length > 30) {
- invalidKey = true;
- }
- if (!isNaN(parseInt(cleanedKey.slice(0, 1)))) {
- invalidKey = true;
- }
- if (invalidKey) {
- cleanedKey = getSafeRouteKey();
- }
- if (prefixRouteKeys) {
- routeKeys[cleanedKey] = "" + NEXT_QUERY_PARAM_PREFIX + key;
- } else {
- routeKeys[cleanedKey] = "" + key;
- }
- return repeat ? optional ? "(?:/(?<" + cleanedKey + ">.+?))?" : "/(?<" + cleanedKey + ">.+?)" : "/(?<" + cleanedKey + ">[^/]+?)";
- } else {
- return "/" + (0, _escaperegexp.escapeStringRegexp)(segment);
- }
- }).join(""),
- routeKeys
- };
-}
-function getNamedRouteRegex(normalizedRoute, prefixRouteKey) {
- const result = getNamedParametrizedRoute(normalizedRoute, prefixRouteKey);
- return {
- ...getRouteRegex(normalizedRoute),
- namedRegex: "^" + result.namedParameterizedRoute + "(?:/)?$",
- routeKeys: result.routeKeys
- };
-}
-function getNamedMiddlewareRegex(normalizedRoute, options) {
- const { parameterizedRoute } = getParametrizedRoute(normalizedRoute);
- const { catchAll =true } = options;
- if (parameterizedRoute === "/") {
- let catchAllRegex = catchAll ? ".*" : "";
- return {
- namedRegex: "^/" + catchAllRegex + "$"
- };
- }
- const { namedParameterizedRoute } = getNamedParametrizedRoute(normalizedRoute, false);
- let catchAllGroupedRegex = catchAll ? "(?:(/.*)?)" : "";
- return {
- namedRegex: "^" + namedParameterizedRoute + catchAllGroupedRegex + "$"
- };
-} //# sourceMappingURL=route-regex.js.map
-
-
-/***/ }),
-
-/***/ 6262:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-Object.defineProperty(exports, "getSortedRoutes", ({
- enumerable: true,
- get: function() {
- return getSortedRoutes;
- }
-}));
-class UrlNode {
- insert(urlPath) {
- this._insert(urlPath.split("/").filter(Boolean), [], false);
- }
- smoosh() {
- return this._smoosh();
- }
- _smoosh(prefix) {
- if (prefix === void 0) prefix = "/";
- const childrenPaths = [
- ...this.children.keys()
- ].sort();
- if (this.slugName !== null) {
- childrenPaths.splice(childrenPaths.indexOf("[]"), 1);
- }
- if (this.restSlugName !== null) {
- childrenPaths.splice(childrenPaths.indexOf("[...]"), 1);
- }
- if (this.optionalRestSlugName !== null) {
- childrenPaths.splice(childrenPaths.indexOf("[[...]]"), 1);
- }
- const routes = childrenPaths.map((c)=>this.children.get(c)._smoosh("" + prefix + c + "/")).reduce((prev, curr)=>[
- ...prev,
- ...curr
- ], []);
- if (this.slugName !== null) {
- routes.push(...this.children.get("[]")._smoosh(prefix + "[" + this.slugName + "]/"));
- }
- if (!this.placeholder) {
- const r = prefix === "/" ? "/" : prefix.slice(0, -1);
- if (this.optionalRestSlugName != null) {
- throw new Error('You cannot define a route with the same specificity as a optional catch-all route ("' + r + '" and "' + r + "[[..." + this.optionalRestSlugName + ']]").');
- }
- routes.unshift(r);
- }
- if (this.restSlugName !== null) {
- routes.push(...this.children.get("[...]")._smoosh(prefix + "[..." + this.restSlugName + "]/"));
- }
- if (this.optionalRestSlugName !== null) {
- routes.push(...this.children.get("[[...]]")._smoosh(prefix + "[[..." + this.optionalRestSlugName + "]]/"));
- }
- return routes;
- }
- _insert(urlPaths, slugNames, isCatchAll) {
- if (urlPaths.length === 0) {
- this.placeholder = false;
- return;
- }
- if (isCatchAll) {
- throw new Error("Catch-all must be the last part of the URL.");
- }
- // The next segment in the urlPaths list
- let nextSegment = urlPaths[0];
- // Check if the segment matches `[something]`
- if (nextSegment.startsWith("[") && nextSegment.endsWith("]")) {
- // Strip `[` and `]`, leaving only `something`
- let segmentName = nextSegment.slice(1, -1);
- let isOptional = false;
- if (segmentName.startsWith("[") && segmentName.endsWith("]")) {
- // Strip optional `[` and `]`, leaving only `something`
- segmentName = segmentName.slice(1, -1);
- isOptional = true;
- }
- if (segmentName.startsWith("...")) {
- // Strip `...`, leaving only `something`
- segmentName = segmentName.substring(3);
- isCatchAll = true;
- }
- if (segmentName.startsWith("[") || segmentName.endsWith("]")) {
- throw new Error("Segment names may not start or end with extra brackets ('" + segmentName + "').");
- }
- if (segmentName.startsWith(".")) {
- throw new Error("Segment names may not start with erroneous periods ('" + segmentName + "').");
- }
- function handleSlug(previousSlug, nextSlug) {
- if (previousSlug !== null) {
- // If the specific segment already has a slug but the slug is not `something`
- // This prevents collisions like:
- // pages/[post]/index.js
- // pages/[id]/index.js
- // Because currently multiple dynamic params on the same segment level are not supported
- if (previousSlug !== nextSlug) {
- // TODO: This error seems to be confusing for users, needs an error link, the description can be based on above comment.
- throw new Error("You cannot use different slug names for the same dynamic path ('" + previousSlug + "' !== '" + nextSlug + "').");
- }
- }
- slugNames.forEach((slug)=>{
- if (slug === nextSlug) {
- throw new Error('You cannot have the same slug name "' + nextSlug + '" repeat within a single dynamic path');
- }
- if (slug.replace(/\W/g, "") === nextSegment.replace(/\W/g, "")) {
- throw new Error('You cannot have the slug names "' + slug + '" and "' + nextSlug + '" differ only by non-word symbols within a single dynamic path');
- }
- });
- slugNames.push(nextSlug);
- }
- if (isCatchAll) {
- if (isOptional) {
- if (this.restSlugName != null) {
- throw new Error('You cannot use both an required and optional catch-all route at the same level ("[...' + this.restSlugName + ']" and "' + urlPaths[0] + '" ).');
- }
- handleSlug(this.optionalRestSlugName, segmentName);
- // slugName is kept as it can only be one particular slugName
- this.optionalRestSlugName = segmentName;
- // nextSegment is overwritten to [[...]] so that it can later be sorted specifically
- nextSegment = "[[...]]";
- } else {
- if (this.optionalRestSlugName != null) {
- throw new Error('You cannot use both an optional and required catch-all route at the same level ("[[...' + this.optionalRestSlugName + ']]" and "' + urlPaths[0] + '").');
- }
- handleSlug(this.restSlugName, segmentName);
- // slugName is kept as it can only be one particular slugName
- this.restSlugName = segmentName;
- // nextSegment is overwritten to [...] so that it can later be sorted specifically
- nextSegment = "[...]";
- }
- } else {
- if (isOptional) {
- throw new Error('Optional route parameters are not yet supported ("' + urlPaths[0] + '").');
- }
- handleSlug(this.slugName, segmentName);
- // slugName is kept as it can only be one particular slugName
- this.slugName = segmentName;
- // nextSegment is overwritten to [] so that it can later be sorted specifically
- nextSegment = "[]";
- }
- }
- // If this UrlNode doesn't have the nextSegment yet we create a new child UrlNode
- if (!this.children.has(nextSegment)) {
- this.children.set(nextSegment, new UrlNode());
- }
- this.children.get(nextSegment)._insert(urlPaths.slice(1), slugNames, isCatchAll);
- }
- constructor(){
- this.placeholder = true;
- this.children = new Map();
- this.slugName = null;
- this.restSlugName = null;
- this.optionalRestSlugName = null;
- }
-}
-function getSortedRoutes(normalizedPages) {
- // First the UrlNode is created, and every UrlNode can have only 1 dynamic segment
- // Eg you can't have pages/[post]/abc.js and pages/[hello]/something-else.js
- // Only 1 dynamic segment per nesting level
- // So in the case that is test/integration/dynamic-routing it'll be this:
- // pages/[post]/comments.js
- // pages/blog/[post]/comment/[id].js
- // Both are fine because `pages/[post]` and `pages/blog` are on the same level
- // So in this case `UrlNode` created here has `this.slugName === 'post'`
- // And since your PR passed through `slugName` as an array basically it'd including it in too many possibilities
- // Instead what has to be passed through is the upwards path's dynamic names
- const root = new UrlNode();
- // Here the `root` gets injected multiple paths, and insert will break them up into sublevels
- normalizedPages.forEach((pagePath)=>root.insert(pagePath));
- // Smoosh will then sort those sublevels up to the point where you get the correct route definition priority
- return root.smoosh();
-} //# sourceMappingURL=sorted-routes.js.map
-
-
-/***/ }),
-
-/***/ 1265:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-Object.defineProperty(exports, "__esModule", ({
- value: true
-}));
-0 && (0);
-function _export(target, all) {
- for(var name in all)Object.defineProperty(target, name, {
- enumerable: true,
- get: all[name]
- });
-}
-_export(exports, {
- WEB_VITALS: function() {
- return WEB_VITALS;
- },
- execOnce: function() {
- return execOnce;
- },
- isAbsoluteUrl: function() {
- return isAbsoluteUrl;
- },
- getLocationOrigin: function() {
- return getLocationOrigin;
- },
- getURL: function() {
- return getURL;
- },
- getDisplayName: function() {
- return getDisplayName;
- },
- isResSent: function() {
- return isResSent;
- },
- normalizeRepeatedSlashes: function() {
- return normalizeRepeatedSlashes;
- },
- loadGetInitialProps: function() {
- return loadGetInitialProps;
- },
- SP: function() {
- return SP;
- },
- ST: function() {
- return ST;
- },
- DecodeError: function() {
- return DecodeError;
- },
- NormalizeError: function() {
- return NormalizeError;
- },
- PageNotFoundError: function() {
- return PageNotFoundError;
- },
- MissingStaticPage: function() {
- return MissingStaticPage;
- },
- MiddlewareNotFoundError: function() {
- return MiddlewareNotFoundError;
- }
-});
-const WEB_VITALS = [
- "CLS",
- "FCP",
- "FID",
- "INP",
- "LCP",
- "TTFB"
-];
-function execOnce(fn) {
- let used = false;
- let result;
- return function() {
- for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
- args[_key] = arguments[_key];
- }
- if (!used) {
- used = true;
- result = fn(...args);
- }
- return result;
- };
-}
-// Scheme: https://tools.ietf.org/html/rfc3986#section-3.1
-// Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3
-const ABSOLUTE_URL_REGEX = /^[a-zA-Z][a-zA-Z\d+\-.]*?:/;
-const isAbsoluteUrl = (url)=>ABSOLUTE_URL_REGEX.test(url);
-function getLocationOrigin() {
- const { protocol , hostname , port } = window.location;
- return protocol + "//" + hostname + (port ? ":" + port : "");
-}
-function getURL() {
- const { href } = window.location;
- const origin = getLocationOrigin();
- return href.substring(origin.length);
-}
-function getDisplayName(Component) {
- return typeof Component === "string" ? Component : Component.displayName || Component.name || "Unknown";
-}
-function isResSent(res) {
- return res.finished || res.headersSent;
-}
-function normalizeRepeatedSlashes(url) {
- const urlParts = url.split("?");
- const urlNoQuery = urlParts[0];
- return urlNoQuery // first we replace any non-encoded backslashes with forward
- // then normalize repeated forward slashes
- .replace(/\\/g, "/").replace(/\/\/+/g, "/") + (urlParts[1] ? "?" + urlParts.slice(1).join("?") : "");
-}
-async function loadGetInitialProps(App, ctx) {
- if (false) { var _App_prototype; }
- // when called from _app `ctx` is nested in `ctx`
- const res = ctx.res || ctx.ctx && ctx.ctx.res;
- if (!App.getInitialProps) {
- if (ctx.ctx && ctx.Component) {
- // @ts-ignore pageProps default
- return {
- pageProps: await loadGetInitialProps(ctx.Component, ctx.ctx)
- };
- }
- return {};
- }
- const props = await App.getInitialProps(ctx);
- if (res && isResSent(res)) {
- return props;
- }
- if (!props) {
- const message = '"' + getDisplayName(App) + '.getInitialProps()" should resolve to an object. But found "' + props + '" instead.';
- throw new Error(message);
- }
- if (false) {}
- return props;
-}
-const SP = typeof performance !== "undefined";
-const ST = SP && [
- "mark",
- "measure",
- "getEntriesByName"
-].every((method)=>typeof performance[method] === "function");
-class DecodeError extends Error {
-}
-class NormalizeError extends Error {
-}
-class PageNotFoundError extends Error {
- constructor(page){
- super();
- this.code = "ENOENT";
- this.name = "PageNotFoundError";
- this.message = "Cannot find module for page: " + page;
- }
-}
-class MissingStaticPage extends Error {
- constructor(page, message){
- super();
- this.message = "Failed to load static file for page: " + page + " " + message;
- }
-}
-class MiddlewareNotFoundError extends Error {
- constructor(){
- super();
- this.code = "ENOENT";
- this.message = "Cannot find the middleware module";
- }
-} //# sourceMappingURL=utils.js.map
-
-
-/***/ }),
-
-/***/ 5967:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-
-exports._ = exports._interop_require_default = _interop_require_default;
-function _interop_require_default(obj) {
- return obj && obj.__esModule ? obj : { default: obj };
-}
-
-
-/***/ }),
-
-/***/ 1113:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-
-function _getRequireWildcardCache(nodeInterop) {
- if (typeof WeakMap !== "function") return null;
-
- var cacheBabelInterop = new WeakMap();
- var cacheNodeInterop = new WeakMap();
-
- return (_getRequireWildcardCache = function(nodeInterop) {
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
- })(nodeInterop);
-}
-exports._ = exports._interop_require_wildcard = _interop_require_wildcard;
-function _interop_require_wildcard(obj, nodeInterop) {
- if (!nodeInterop && obj && obj.__esModule) return obj;
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") return { default: obj };
-
- var cache = _getRequireWildcardCache(nodeInterop);
-
- if (cache && cache.has(obj)) return cache.get(obj);
-
- var newObj = {};
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
-
- for (var key in obj) {
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
- if (desc && (desc.get || desc.set)) Object.defineProperty(newObj, key, desc);
- else newObj[key] = obj[key];
- }
- }
-
- newObj.default = obj;
-
- if (cache) cache.set(obj, newObj);
-
- return newObj;
-}
-
-
-/***/ }),
-
-/***/ 1550:
-/***/ ((__unused_webpack_module, exports) => {
-
-"use strict";
-
-exports._ = exports._interop_require_default = _interop_require_default;
-function _interop_require_default(obj) {
- return obj && obj.__esModule ? obj : {
- default: obj
- };
-}
-
-
-/***/ })
-
-};
-;
\ No newline at end of file
diff --git a/.next/server/chunks/622.js b/.next/server/chunks/622.js
new file mode 100644
index 0000000..a9afa78
--- /dev/null
+++ b/.next/server/chunks/622.js
@@ -0,0 +1 @@
+exports.id=622,exports.ids=[622],exports.modules={6254:(e,t,s)=>{Promise.resolve().then(s.t.bind(s,3724,23)),Promise.resolve().then(s.t.bind(s,5365,23)),Promise.resolve().then(s.t.bind(s,4900,23)),Promise.resolve().then(s.t.bind(s,4714,23)),Promise.resolve().then(s.t.bind(s,5392,23)),Promise.resolve().then(s.t.bind(s,8898,23))},2731:()=>{},5345:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>RootLayout,metadata:()=>n});var o=s(4656),r=s(2999),i=s.n(r);s(3440);let n={title:"sukadia.dev",description:"I code, stream, and create videos."};function RootLayout({children:e}){return o.jsx("html",{lang:"en",children:o.jsx("body",{className:i().className,children:e})})}},3440:()=>{}};
\ No newline at end of file
diff --git a/.next/server/chunks/676.js b/.next/server/chunks/676.js
new file mode 100644
index 0000000..d1f6098
--- /dev/null
+++ b/.next/server/chunks/676.js
@@ -0,0 +1,6 @@
+"use strict";exports.id=676,exports.ids=[676],exports.modules={8676:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{Head:function(){return Head},NextScript:function(){return NextScript},Html:function(){return Html},Main:function(){return Main},default:function(){return Document}});let r=_interop_require_default(n(6689)),i=n(4191),o=n(5778),s=n(9630),l=_interop_require_default(n(676)),a=n(3112);function _interop_require_default(e){return e&&e.__esModule?e:{default:e}}let u=new Set;function getDocumentFiles(e,t,n){let r=(0,o.getPageFiles)(e,"/_app"),i=n?[]:(0,o.getPageFiles)(e,t);return{sharedFiles:r,pageFiles:i,allFiles:[...new Set([...r,...i])]}}function getPolyfillScripts(e,t){let{assetPrefix:n,buildManifest:i,assetQueryString:o,disableOptimizedLoading:s,crossOrigin:l}=e;return i.polyfillFiles.filter(e=>e.endsWith(".js")&&!e.endsWith(".module.js")).map(e=>r.default.createElement("script",{key:e,defer:!s,nonce:t.nonce,crossOrigin:t.crossOrigin||l,noModule:!0,src:`${n}/_next/${e}${o}`}))}function hasComponentProps(e){return!!e&&!!e.props}function AmpStyles({styles:e}){if(!e)return null;let t=Array.isArray(e)?e:[];if(e.props&&Array.isArray(e.props.children)){let hasStyles=e=>{var t,n;return null==e?void 0:null==(n=e.props)?void 0:null==(t=n.dangerouslySetInnerHTML)?void 0:t.__html};e.props.children.forEach(e=>{Array.isArray(e)?e.forEach(e=>hasStyles(e)&&t.push(e)):hasStyles(e)&&t.push(e)})}return r.default.createElement("style",{"amp-custom":"",dangerouslySetInnerHTML:{__html:t.map(e=>e.props.dangerouslySetInnerHTML.__html).join("").replace(/\/\*# sourceMappingURL=.*\*\//g,"").replace(/\/\*@ sourceURL=.*?\*\//g,"")}})}function getDynamicChunks(e,t,n){let{dynamicImports:i,assetPrefix:o,isDevelopment:s,assetQueryString:l,disableOptimizedLoading:a,crossOrigin:u}=e;return i.map(e=>!e.endsWith(".js")||n.allFiles.includes(e)?null:r.default.createElement("script",{async:!s&&a,defer:!a,key:e,src:`${o}/_next/${encodeURI(e)}${l}`,nonce:t.nonce,crossOrigin:t.crossOrigin||u}))}function getScripts(e,t,n){var i;let{assetPrefix:o,buildManifest:s,isDevelopment:l,assetQueryString:a,disableOptimizedLoading:u,crossOrigin:c}=e,d=n.allFiles.filter(e=>e.endsWith(".js")),p=null==(i=s.lowPriorityFiles)?void 0:i.filter(e=>e.endsWith(".js"));return[...d,...p].map(e=>r.default.createElement("script",{key:e,src:`${o}/_next/${encodeURI(e)}${a}`,nonce:t.nonce,async:!l&&u,defer:!u,crossOrigin:t.crossOrigin||c}))}function getPreNextWorkerScripts(e,t){let{assetPrefix:n,scriptLoader:i,crossOrigin:o,nextScriptWorkers:s}=e;if(!s)return null;try{let{partytownSnippet:e}=require("@builder.io/partytown/integration"),s=Array.isArray(t.children)?t.children:[t.children],l=s.find(e=>{var t,n;return hasComponentProps(e)&&(null==e?void 0:null==(n=e.props)?void 0:null==(t=n.dangerouslySetInnerHTML)?void 0:t.__html.length)&&"data-partytown-config"in e.props});return r.default.createElement(r.default.Fragment,null,!l&&r.default.createElement("script",{"data-partytown-config":"",dangerouslySetInnerHTML:{__html:`
+ partytown = {
+ lib: "${n}/_next/static/~partytown/"
+ };
+ `}}),r.default.createElement("script",{"data-partytown":"",dangerouslySetInnerHTML:{__html:e()}}),(i.worker||[]).map((e,n)=>{let{strategy:i,src:s,children:l,dangerouslySetInnerHTML:a,...u}=e,c={};if(s)c.src=s;else if(a&&a.__html)c.dangerouslySetInnerHTML={__html:a.__html};else if(l)c.dangerouslySetInnerHTML={__html:"string"==typeof l?l:Array.isArray(l)?l.join(""):""};else throw Error("Invalid usage of next/script. Did you forget to include a src attribute or an inline script? https://nextjs.org/docs/messages/invalid-script");return r.default.createElement("script",{...c,...u,type:"text/partytown",key:s||n,nonce:t.nonce,"data-nscript":"worker",crossOrigin:t.crossOrigin||o})}))}catch(e){return(0,l.default)(e)&&"MODULE_NOT_FOUND"!==e.code&&console.warn(`Warning: ${e.message}`),null}}function getPreNextScripts(e,t){let{scriptLoader:n,disableOptimizedLoading:i,crossOrigin:o}=e,s=getPreNextWorkerScripts(e,t),l=(n.beforeInteractive||[]).filter(e=>e.src).map((e,n)=>{let{strategy:s,...l}=e;return r.default.createElement("script",{...l,key:l.src||n,defer:l.defer??!i,nonce:t.nonce,"data-nscript":"beforeInteractive",crossOrigin:t.crossOrigin||o})});return r.default.createElement(r.default.Fragment,null,s,l)}function getHeadHTMLProps(e){let{crossOrigin:t,nonce:n,...r}=e;return r}function getAmpPath(e,t){return e||`${t}${t.includes("?")?"&":"?"}amp=1`}function getNextFontLinkTags(e,t,n=""){if(!e)return{preconnect:null,preload:null};let i=e.pages["/_app"],o=e.pages[t],s=[...i??[],...o??[]],l=!!(0===s.length&&(i||o));return{preconnect:l?r.default.createElement("link",{"data-next-font":e.pagesUsingSizeAdjust?"size-adjust":"",rel:"preconnect",href:"/",crossOrigin:"anonymous"}):null,preload:s?s.map(e=>{let t=/\.(woff|woff2|eot|ttf|otf)$/.exec(e)[1];return r.default.createElement("link",{key:e,rel:"preload",href:`${n}/_next/${encodeURI(e)}`,as:"font",type:`font/${t}`,crossOrigin:"anonymous","data-next-font":e.includes("-s")?"size-adjust":""})}):null}}let Head=class Head extends r.default.Component{static #e=this.contextType=a.HtmlContext;getCssLinks(e){let{assetPrefix:t,assetQueryString:n,dynamicImports:i,crossOrigin:o,optimizeCss:s,optimizeFonts:l}=this.context,a=e.allFiles.filter(e=>e.endsWith(".css")),u=new Set(e.sharedFiles),c=new Set([]),d=Array.from(new Set(i.filter(e=>e.endsWith(".css"))));if(d.length){let e=new Set(a);d=d.filter(t=>!(e.has(t)||u.has(t))),c=new Set(d),a.push(...d)}let p=[];return a.forEach(e=>{let i=u.has(e);s||p.push(r.default.createElement("link",{key:`${e}-preload`,nonce:this.props.nonce,rel:"preload",href:`${t}/_next/${encodeURI(e)}${n}`,as:"style",crossOrigin:this.props.crossOrigin||o}));let l=c.has(e);p.push(r.default.createElement("link",{key:e,nonce:this.props.nonce,rel:"stylesheet",href:`${t}/_next/${encodeURI(e)}${n}`,crossOrigin:this.props.crossOrigin||o,"data-n-g":l?void 0:i?"":void 0,"data-n-p":l?void 0:i?void 0:""}))}),l&&(p=this.makeStylesheetInert(p)),0===p.length?null:p}getPreloadDynamicChunks(){let{dynamicImports:e,assetPrefix:t,assetQueryString:n,crossOrigin:i}=this.context;return e.map(e=>e.endsWith(".js")?r.default.createElement("link",{rel:"preload",key:e,href:`${t}/_next/${encodeURI(e)}${n}`,as:"script",nonce:this.props.nonce,crossOrigin:this.props.crossOrigin||i}):null).filter(Boolean)}getPreloadMainLinks(e){let{assetPrefix:t,assetQueryString:n,scriptLoader:i,crossOrigin:o}=this.context,s=e.allFiles.filter(e=>e.endsWith(".js"));return[...(i.beforeInteractive||[]).map(e=>r.default.createElement("link",{key:e.src,nonce:this.props.nonce,rel:"preload",href:e.src,as:"script",crossOrigin:this.props.crossOrigin||o})),...s.map(e=>r.default.createElement("link",{key:e,nonce:this.props.nonce,rel:"preload",href:`${t}/_next/${encodeURI(e)}${n}`,as:"script",crossOrigin:this.props.crossOrigin||o}))]}getBeforeInteractiveInlineScripts(){let{scriptLoader:e}=this.context,{nonce:t,crossOrigin:n}=this.props;return(e.beforeInteractive||[]).filter(e=>!e.src&&(e.dangerouslySetInnerHTML||e.children)).map((e,i)=>{let{strategy:o,children:s,dangerouslySetInnerHTML:l,src:a,...u}=e,c="";return l&&l.__html?c=l.__html:s&&(c="string"==typeof s?s:Array.isArray(s)?s.join(""):""),r.default.createElement("script",{...u,dangerouslySetInnerHTML:{__html:c},key:u.id||i,nonce:t,"data-nscript":"beforeInteractive",crossOrigin:n||void 0})})}getDynamicChunks(e){return getDynamicChunks(this.context,this.props,e)}getPreNextScripts(){return getPreNextScripts(this.context,this.props)}getScripts(e){return getScripts(this.context,this.props,e)}getPolyfillScripts(){return getPolyfillScripts(this.context,this.props)}makeStylesheetInert(e){return r.default.Children.map(e,e=>{var t,n;if((null==e?void 0:e.type)==="link"&&(null==e?void 0:null==(t=e.props)?void 0:t.href)&&i.OPTIMIZED_FONT_PROVIDERS.some(({url:t})=>{var n,r;return null==e?void 0:null==(r=e.props)?void 0:null==(n=r.href)?void 0:n.startsWith(t)})){let t={...e.props||{},"data-href":e.props.href,href:void 0};return r.default.cloneElement(e,t)}if(null==e?void 0:null==(n=e.props)?void 0:n.children){let t={...e.props||{},children:this.makeStylesheetInert(e.props.children)};return r.default.cloneElement(e,t)}return e}).filter(Boolean)}render(){let{styles:e,ampPath:t,inAmpMode:i,hybridAmp:o,canonicalBase:s,__NEXT_DATA__:l,dangerousAsPath:a,headTags:u,unstable_runtimeJS:c,unstable_JsPreload:d,disableOptimizedLoading:p,optimizeCss:f,optimizeFonts:m,assetPrefix:h,nextFontManifest:g}=this.context,_=!1===c,E=!1===d||!p;this.context.docComponentsRendered.Head=!0;let{head:S}=this.context,y=[],I=[];S&&(S.forEach(e=>{let t;this.context.strictNextHead&&(t=r.default.createElement("meta",{name:"next-head",content:"1"})),e&&"link"===e.type&&"preload"===e.props.rel&&"style"===e.props.as?(t&&y.push(t),y.push(e)):e&&(t&&("meta"!==e.type||!e.props.charSet)&&I.push(t),I.push(e))}),S=y.concat(I));let P=r.default.Children.toArray(this.props.children).filter(Boolean);m&&!i&&(P=this.makeStylesheetInert(P));let T=!1,N=!1;S=r.default.Children.map(S||[],e=>{if(!e)return e;let{type:t,props:n}=e;if(i){let r="";if("meta"===t&&"viewport"===n.name?r='name="viewport"':"link"===t&&"canonical"===n.rel?N=!0:"script"===t&&(n.src&&-1>n.src.indexOf("ampproject")||n.dangerouslySetInnerHTML&&(!n.type||"text/javascript"===n.type))&&(r="