diff --git a/adventure-rental-app/package-lock.json b/adventure-rental-app/package-lock.json
index 36188da..89b0e40 100644
--- a/adventure-rental-app/package-lock.json
+++ b/adventure-rental-app/package-lock.json
@@ -18,7 +18,7 @@
"@eslint/js": "^9.30.1",
"@types/react": "^19.1.8",
"@types/react-dom": "^19.1.6",
- "@vitejs/plugin-react": "^4.6.0",
+ "@vitejs/plugin-react": "^4.3.1",
"autoprefixer": "^10.4.21",
"eslint": "^9.30.1",
"eslint-plugin-react-hooks": "^5.2.0",
@@ -26,7 +26,7 @@
"globals": "^16.3.0",
"postcss": "^8.5.6",
"tailwindcss": "^3.4.17",
- "vite": "^7.0.4"
+ "vite": "^4.5.2"
}
},
"node_modules/@alloc/quick-lru": {
@@ -338,27 +338,10 @@
"node": ">=6.9.0"
}
},
- "node_modules/@esbuild/aix-ppc64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.8.tgz",
- "integrity": "sha512-urAvrUedIqEiFR3FYSLTWQgLu5tb+m0qZw0NBEasUeo6wuqatkMDaRT+1uABiGXEu5vqgPd7FGE1BhsAIy9QVA==",
- "cpu": [
- "ppc64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "aix"
- ],
- "engines": {
- "node": ">=18"
- }
- },
"node_modules/@esbuild/android-arm": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.8.tgz",
- "integrity": "sha512-RONsAvGCz5oWyePVnLdZY/HHwA++nxYWIX1atInlaW6SEkwq6XkP3+cb825EUcRs5Vss/lGh/2YxAb5xqc07Uw==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz",
+ "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==",
"cpu": [
"arm"
],
@@ -369,13 +352,13 @@
"android"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/android-arm64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.8.tgz",
- "integrity": "sha512-OD3p7LYzWpLhZEyATcTSJ67qB5D+20vbtr6vHlHWSQYhKtzUYrETuWThmzFpZtFsBIxRvhO07+UgVA9m0i/O1w==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz",
+ "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==",
"cpu": [
"arm64"
],
@@ -386,13 +369,13 @@
"android"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/android-x64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.8.tgz",
- "integrity": "sha512-yJAVPklM5+4+9dTeKwHOaA+LQkmrKFX96BM0A/2zQrbS6ENCmxc4OVoBs5dPkCCak2roAD+jKCdnmOqKszPkjA==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz",
+ "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==",
"cpu": [
"x64"
],
@@ -403,13 +386,13 @@
"android"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/darwin-arm64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.8.tgz",
- "integrity": "sha512-Jw0mxgIaYX6R8ODrdkLLPwBqHTtYHJSmzzd+QeytSugzQ0Vg4c5rDky5VgkoowbZQahCbsv1rT1KW72MPIkevw==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz",
+ "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==",
"cpu": [
"arm64"
],
@@ -420,13 +403,13 @@
"darwin"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/darwin-x64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.8.tgz",
- "integrity": "sha512-Vh2gLxxHnuoQ+GjPNvDSDRpoBCUzY4Pu0kBqMBDlK4fuWbKgGtmDIeEC081xi26PPjn+1tct+Bh8FjyLlw1Zlg==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz",
+ "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==",
"cpu": [
"x64"
],
@@ -437,13 +420,13 @@
"darwin"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/freebsd-arm64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.8.tgz",
- "integrity": "sha512-YPJ7hDQ9DnNe5vxOm6jaie9QsTwcKedPvizTVlqWG9GBSq+BuyWEDazlGaDTC5NGU4QJd666V0yqCBL2oWKPfA==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz",
+ "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==",
"cpu": [
"arm64"
],
@@ -454,13 +437,13 @@
"freebsd"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/freebsd-x64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.8.tgz",
- "integrity": "sha512-MmaEXxQRdXNFsRN/KcIimLnSJrk2r5H8v+WVafRWz5xdSVmWLoITZQXcgehI2ZE6gioE6HirAEToM/RvFBeuhw==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz",
+ "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==",
"cpu": [
"x64"
],
@@ -471,13 +454,13 @@
"freebsd"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-arm": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.8.tgz",
- "integrity": "sha512-FuzEP9BixzZohl1kLf76KEVOsxtIBFwCaLupVuk4eFVnOZfU+Wsn+x5Ryam7nILV2pkq2TqQM9EZPsOBuMC+kg==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz",
+ "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==",
"cpu": [
"arm"
],
@@ -488,13 +471,13 @@
"linux"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-arm64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.8.tgz",
- "integrity": "sha512-WIgg00ARWv/uYLU7lsuDK00d/hHSfES5BzdWAdAig1ioV5kaFNrtK8EqGcUBJhYqotlUByUKz5Qo6u8tt7iD/w==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz",
+ "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==",
"cpu": [
"arm64"
],
@@ -505,13 +488,13 @@
"linux"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-ia32": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.8.tgz",
- "integrity": "sha512-A1D9YzRX1i+1AJZuFFUMP1E9fMaYY+GnSQil9Tlw05utlE86EKTUA7RjwHDkEitmLYiFsRd9HwKBPEftNdBfjg==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz",
+ "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==",
"cpu": [
"ia32"
],
@@ -522,13 +505,13 @@
"linux"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-loong64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.8.tgz",
- "integrity": "sha512-O7k1J/dwHkY1RMVvglFHl1HzutGEFFZ3kNiDMSOyUrB7WcoHGf96Sh+64nTRT26l3GMbCW01Ekh/ThKM5iI7hQ==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz",
+ "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==",
"cpu": [
"loong64"
],
@@ -539,13 +522,13 @@
"linux"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-mips64el": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.8.tgz",
- "integrity": "sha512-uv+dqfRazte3BzfMp8PAQXmdGHQt2oC/y2ovwpTteqrMx2lwaksiFZ/bdkXJC19ttTvNXBuWH53zy/aTj1FgGw==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz",
+ "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==",
"cpu": [
"mips64el"
],
@@ -556,13 +539,13 @@
"linux"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-ppc64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.8.tgz",
- "integrity": "sha512-GyG0KcMi1GBavP5JgAkkstMGyMholMDybAf8wF5A70CALlDM2p/f7YFE7H92eDeH/VBtFJA5MT4nRPDGg4JuzQ==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz",
+ "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==",
"cpu": [
"ppc64"
],
@@ -573,13 +556,13 @@
"linux"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-riscv64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.8.tgz",
- "integrity": "sha512-rAqDYFv3yzMrq7GIcen3XP7TUEG/4LK86LUPMIz6RT8A6pRIDn0sDcvjudVZBiiTcZCY9y2SgYX2lgK3AF+1eg==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz",
+ "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==",
"cpu": [
"riscv64"
],
@@ -590,13 +573,13 @@
"linux"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-s390x": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.8.tgz",
- "integrity": "sha512-Xutvh6VjlbcHpsIIbwY8GVRbwoviWT19tFhgdA7DlenLGC/mbc3lBoVb7jxj9Z+eyGqvcnSyIltYUrkKzWqSvg==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz",
+ "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==",
"cpu": [
"s390x"
],
@@ -607,13 +590,13 @@
"linux"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/linux-x64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.8.tgz",
- "integrity": "sha512-ASFQhgY4ElXh3nDcOMTkQero4b1lgubskNlhIfJrsH5OKZXDpUAKBlNS0Kx81jwOBp+HCeZqmoJuihTv57/jvQ==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz",
+ "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==",
"cpu": [
"x64"
],
@@ -624,30 +607,13 @@
"linux"
],
"engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/netbsd-arm64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.8.tgz",
- "integrity": "sha512-d1KfruIeohqAi6SA+gENMuObDbEjn22olAR7egqnkCD9DGBG0wsEARotkLgXDu6c4ncgWTZJtN5vcgxzWRMzcw==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "netbsd"
- ],
- "engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/netbsd-x64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.8.tgz",
- "integrity": "sha512-nVDCkrvx2ua+XQNyfrujIG38+YGyuy2Ru9kKVNyh5jAys6n+l44tTtToqHjino2My8VAY6Lw9H7RI73XFi66Cg==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz",
+ "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==",
"cpu": [
"x64"
],
@@ -658,30 +624,13 @@
"netbsd"
],
"engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/openbsd-arm64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.8.tgz",
- "integrity": "sha512-j8HgrDuSJFAujkivSMSfPQSAa5Fxbvk4rgNAS5i3K+r8s1X0p1uOO2Hl2xNsGFppOeHOLAVgYwDVlmxhq5h+SQ==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "openbsd"
- ],
- "engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/openbsd-x64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.8.tgz",
- "integrity": "sha512-1h8MUAwa0VhNCDp6Af0HToI2TJFAn1uqT9Al6DJVzdIBAd21m/G0Yfc77KDM3uF3T/YaOgQq3qTJHPbTOInaIQ==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz",
+ "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==",
"cpu": [
"x64"
],
@@ -692,30 +641,13 @@
"openbsd"
],
"engines": {
- "node": ">=18"
- }
- },
- "node_modules/@esbuild/openharmony-arm64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.8.tgz",
- "integrity": "sha512-r2nVa5SIK9tSWd0kJd9HCffnDHKchTGikb//9c7HX+r+wHYCpQrSgxhlY6KWV1nFo1l4KFbsMlHk+L6fekLsUg==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "openharmony"
- ],
- "engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/sunos-x64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.8.tgz",
- "integrity": "sha512-zUlaP2S12YhQ2UzUfcCuMDHQFJyKABkAjvO5YSndMiIkMimPmxA+BYSBikWgsRpvyxuRnow4nS5NPnf9fpv41w==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz",
+ "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==",
"cpu": [
"x64"
],
@@ -726,13 +658,13 @@
"sunos"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/win32-arm64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.8.tgz",
- "integrity": "sha512-YEGFFWESlPva8hGL+zvj2z/SaK+pH0SwOM0Nc/d+rVnW7GSTFlLBGzZkuSU9kFIGIo8q9X3ucpZhu8PDN5A2sQ==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz",
+ "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==",
"cpu": [
"arm64"
],
@@ -743,13 +675,13 @@
"win32"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/win32-ia32": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.8.tgz",
- "integrity": "sha512-hiGgGC6KZ5LZz58OL/+qVVoZiuZlUYlYHNAmczOm7bs2oE1XriPFi5ZHHrS8ACpV5EjySrnoCKmcbQMN+ojnHg==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz",
+ "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==",
"cpu": [
"ia32"
],
@@ -760,13 +692,13 @@
"win32"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@esbuild/win32-x64": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.8.tgz",
- "integrity": "sha512-cn3Yr7+OaaZq1c+2pe+8yxC8E144SReCQjN6/2ynubzYjvyqZjTXfQJpAcQpsdJq3My7XADANiYGHoFC69pLQw==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz",
+ "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==",
"cpu": [
"x64"
],
@@ -777,7 +709,7 @@
"win32"
],
"engines": {
- "node": ">=18"
+ "node": ">=12"
}
},
"node_modules/@eslint-community/eslint-utils": {
@@ -1113,286 +1045,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@rollup/rollup-android-arm-eabi": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.46.2.tgz",
- "integrity": "sha512-Zj3Hl6sN34xJtMv7Anwb5Gu01yujyE/cLBDB2gnHTAHaWS1Z38L7kuSG+oAh0giZMqG060f/YBStXtMH6FvPMA==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "android"
- ]
- },
- "node_modules/@rollup/rollup-android-arm64": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.46.2.tgz",
- "integrity": "sha512-nTeCWY83kN64oQ5MGz3CgtPx8NSOhC5lWtsjTs+8JAJNLcP3QbLCtDDgUKQc/Ro/frpMq4SHUaHN6AMltcEoLQ==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "android"
- ]
- },
- "node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.46.2.tgz",
- "integrity": "sha512-HV7bW2Fb/F5KPdM/9bApunQh68YVDU8sO8BvcW9OngQVN3HHHkw99wFupuUJfGR9pYLLAjcAOA6iO+evsbBaPQ==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "darwin"
- ]
- },
- "node_modules/@rollup/rollup-darwin-x64": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.46.2.tgz",
- "integrity": "sha512-SSj8TlYV5nJixSsm/y3QXfhspSiLYP11zpfwp6G/YDXctf3Xkdnk4woJIF5VQe0of2OjzTt8EsxnJDCdHd2xMA==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "darwin"
- ]
- },
- "node_modules/@rollup/rollup-freebsd-arm64": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.46.2.tgz",
- "integrity": "sha512-ZyrsG4TIT9xnOlLsSSi9w/X29tCbK1yegE49RYm3tu3wF1L/B6LVMqnEWyDB26d9Ecx9zrmXCiPmIabVuLmNSg==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "freebsd"
- ]
- },
- "node_modules/@rollup/rollup-freebsd-x64": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.46.2.tgz",
- "integrity": "sha512-pCgHFoOECwVCJ5GFq8+gR8SBKnMO+xe5UEqbemxBpCKYQddRQMgomv1104RnLSg7nNvgKy05sLsY51+OVRyiVw==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "freebsd"
- ]
- },
- "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.46.2.tgz",
- "integrity": "sha512-EtP8aquZ0xQg0ETFcxUbU71MZlHaw9MChwrQzatiE8U/bvi5uv/oChExXC4mWhjiqK7azGJBqU0tt5H123SzVA==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-arm-musleabihf": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.46.2.tgz",
- "integrity": "sha512-qO7F7U3u1nfxYRPM8HqFtLd+raev2K137dsV08q/LRKRLEc7RsiDWihUnrINdsWQxPR9jqZ8DIIZ1zJJAm5PjQ==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-arm64-gnu": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.46.2.tgz",
- "integrity": "sha512-3dRaqLfcOXYsfvw5xMrxAk9Lb1f395gkoBYzSFcc/scgRFptRXL9DOaDpMiehf9CO8ZDRJW2z45b6fpU5nwjng==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-arm64-musl": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.46.2.tgz",
- "integrity": "sha512-fhHFTutA7SM+IrR6lIfiHskxmpmPTJUXpWIsBXpeEwNgZzZZSg/q4i6FU4J8qOGyJ0TR+wXBwx/L7Ho9z0+uDg==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-loongarch64-gnu": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.46.2.tgz",
- "integrity": "sha512-i7wfGFXu8x4+FRqPymzjD+Hyav8l95UIZ773j7J7zRYc3Xsxy2wIn4x+llpunexXe6laaO72iEjeeGyUFmjKeA==",
- "cpu": [
- "loong64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-ppc64-gnu": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.46.2.tgz",
- "integrity": "sha512-B/l0dFcHVUnqcGZWKcWBSV2PF01YUt0Rvlurci5P+neqY/yMKchGU8ullZvIv5e8Y1C6wOn+U03mrDylP5q9Yw==",
- "cpu": [
- "ppc64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-riscv64-gnu": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.46.2.tgz",
- "integrity": "sha512-32k4ENb5ygtkMwPMucAb8MtV8olkPT03oiTxJbgkJa7lJ7dZMr0GCFJlyvy+K8iq7F/iuOr41ZdUHaOiqyR3iQ==",
- "cpu": [
- "riscv64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-riscv64-musl": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.46.2.tgz",
- "integrity": "sha512-t5B2loThlFEauloaQkZg9gxV05BYeITLvLkWOkRXogP4qHXLkWSbSHKM9S6H1schf/0YGP/qNKtiISlxvfmmZw==",
- "cpu": [
- "riscv64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-s390x-gnu": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.46.2.tgz",
- "integrity": "sha512-YKjekwTEKgbB7n17gmODSmJVUIvj8CX7q5442/CK80L8nqOUbMtf8b01QkG3jOqyr1rotrAnW6B/qiHwfcuWQA==",
- "cpu": [
- "s390x"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-x64-gnu": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.46.2.tgz",
- "integrity": "sha512-Jj5a9RUoe5ra+MEyERkDKLwTXVu6s3aACP51nkfnK9wJTraCC8IMe3snOfALkrjTYd2G1ViE1hICj0fZ7ALBPA==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-linux-x64-musl": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.46.2.tgz",
- "integrity": "sha512-7kX69DIrBeD7yNp4A5b81izs8BqoZkCIaxQaOpumcJ1S/kmqNFjPhDu1LHeVXv0SexfHQv5cqHsxLOjETuqDuA==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/@rollup/rollup-win32-arm64-msvc": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.46.2.tgz",
- "integrity": "sha512-wiJWMIpeaak/jsbaq2HMh/rzZxHVW1rU6coyeNNpMwk5isiPjSTx0a4YLSlYDwBH/WBvLz+EtsNqQScZTLJy3g==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "win32"
- ]
- },
- "node_modules/@rollup/rollup-win32-ia32-msvc": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.46.2.tgz",
- "integrity": "sha512-gBgaUDESVzMgWZhcyjfs9QFK16D8K6QZpwAaVNJxYDLHWayOta4ZMjGm/vsAEy3hvlS2GosVFlBlP9/Wb85DqQ==",
- "cpu": [
- "ia32"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "win32"
- ]
- },
- "node_modules/@rollup/rollup-win32-x64-msvc": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.46.2.tgz",
- "integrity": "sha512-CvUo2ixeIQGtF6WvuB87XWqPQkoFAFqW+HUo/WzHwuHDvIwZCtjdWXoYCcr06iKGydiqTclC4jU/TNObC/xKZg==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "win32"
- ]
- },
"node_modules/@types/babel__core": {
"version": "7.20.5",
"resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz",
@@ -2080,9 +1732,9 @@
}
},
"node_modules/esbuild": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.8.tgz",
- "integrity": "sha512-vVC0USHGtMi8+R4Kz8rt6JhEWLxsv9Rnu/lGYbPR8u47B+DCBksq9JarW0zOO7bs37hyOK1l2/oqtbciutL5+Q==",
+ "version": "0.18.20",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz",
+ "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -2090,35 +1742,31 @@
"esbuild": "bin/esbuild"
},
"engines": {
- "node": ">=18"
+ "node": ">=12"
},
"optionalDependencies": {
- "@esbuild/aix-ppc64": "0.25.8",
- "@esbuild/android-arm": "0.25.8",
- "@esbuild/android-arm64": "0.25.8",
- "@esbuild/android-x64": "0.25.8",
- "@esbuild/darwin-arm64": "0.25.8",
- "@esbuild/darwin-x64": "0.25.8",
- "@esbuild/freebsd-arm64": "0.25.8",
- "@esbuild/freebsd-x64": "0.25.8",
- "@esbuild/linux-arm": "0.25.8",
- "@esbuild/linux-arm64": "0.25.8",
- "@esbuild/linux-ia32": "0.25.8",
- "@esbuild/linux-loong64": "0.25.8",
- "@esbuild/linux-mips64el": "0.25.8",
- "@esbuild/linux-ppc64": "0.25.8",
- "@esbuild/linux-riscv64": "0.25.8",
- "@esbuild/linux-s390x": "0.25.8",
- "@esbuild/linux-x64": "0.25.8",
- "@esbuild/netbsd-arm64": "0.25.8",
- "@esbuild/netbsd-x64": "0.25.8",
- "@esbuild/openbsd-arm64": "0.25.8",
- "@esbuild/openbsd-x64": "0.25.8",
- "@esbuild/openharmony-arm64": "0.25.8",
- "@esbuild/sunos-x64": "0.25.8",
- "@esbuild/win32-arm64": "0.25.8",
- "@esbuild/win32-ia32": "0.25.8",
- "@esbuild/win32-x64": "0.25.8"
+ "@esbuild/android-arm": "0.18.20",
+ "@esbuild/android-arm64": "0.18.20",
+ "@esbuild/android-x64": "0.18.20",
+ "@esbuild/darwin-arm64": "0.18.20",
+ "@esbuild/darwin-x64": "0.18.20",
+ "@esbuild/freebsd-arm64": "0.18.20",
+ "@esbuild/freebsd-x64": "0.18.20",
+ "@esbuild/linux-arm": "0.18.20",
+ "@esbuild/linux-arm64": "0.18.20",
+ "@esbuild/linux-ia32": "0.18.20",
+ "@esbuild/linux-loong64": "0.18.20",
+ "@esbuild/linux-mips64el": "0.18.20",
+ "@esbuild/linux-ppc64": "0.18.20",
+ "@esbuild/linux-riscv64": "0.18.20",
+ "@esbuild/linux-s390x": "0.18.20",
+ "@esbuild/linux-x64": "0.18.20",
+ "@esbuild/netbsd-x64": "0.18.20",
+ "@esbuild/openbsd-x64": "0.18.20",
+ "@esbuild/sunos-x64": "0.18.20",
+ "@esbuild/win32-arm64": "0.18.20",
+ "@esbuild/win32-ia32": "0.18.20",
+ "@esbuild/win32-x64": "0.18.20"
}
},
"node_modules/escalade": {
@@ -2383,21 +2031,6 @@
"reusify": "^1.0.4"
}
},
- "node_modules/fdir": {
- "version": "6.4.6",
- "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz",
- "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==",
- "dev": true,
- "license": "MIT",
- "peerDependencies": {
- "picomatch": "^3 || ^4"
- },
- "peerDependenciesMeta": {
- "picomatch": {
- "optional": true
- }
- }
- },
"node_modules/file-entry-cache": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz",
@@ -3330,19 +2963,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/picomatch": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz",
- "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
"node_modules/pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
@@ -3717,42 +3337,19 @@
}
},
"node_modules/rollup": {
- "version": "4.46.2",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.46.2.tgz",
- "integrity": "sha512-WMmLFI+Boh6xbop+OAGo9cQ3OgX9MIg7xOQjn+pTCwOkk+FNDAeAemXkJ3HzDJrVXleLOFVa1ipuc1AmEx1Dwg==",
+ "version": "3.29.5",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.5.tgz",
+ "integrity": "sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@types/estree": "1.0.8"
- },
"bin": {
"rollup": "dist/bin/rollup"
},
"engines": {
- "node": ">=18.0.0",
+ "node": ">=14.18.0",
"npm": ">=8.0.0"
},
"optionalDependencies": {
- "@rollup/rollup-android-arm-eabi": "4.46.2",
- "@rollup/rollup-android-arm64": "4.46.2",
- "@rollup/rollup-darwin-arm64": "4.46.2",
- "@rollup/rollup-darwin-x64": "4.46.2",
- "@rollup/rollup-freebsd-arm64": "4.46.2",
- "@rollup/rollup-freebsd-x64": "4.46.2",
- "@rollup/rollup-linux-arm-gnueabihf": "4.46.2",
- "@rollup/rollup-linux-arm-musleabihf": "4.46.2",
- "@rollup/rollup-linux-arm64-gnu": "4.46.2",
- "@rollup/rollup-linux-arm64-musl": "4.46.2",
- "@rollup/rollup-linux-loongarch64-gnu": "4.46.2",
- "@rollup/rollup-linux-ppc64-gnu": "4.46.2",
- "@rollup/rollup-linux-riscv64-gnu": "4.46.2",
- "@rollup/rollup-linux-riscv64-musl": "4.46.2",
- "@rollup/rollup-linux-s390x-gnu": "4.46.2",
- "@rollup/rollup-linux-x64-gnu": "4.46.2",
- "@rollup/rollup-linux-x64-musl": "4.46.2",
- "@rollup/rollup-win32-arm64-msvc": "4.46.2",
- "@rollup/rollup-win32-ia32-msvc": "4.46.2",
- "@rollup/rollup-win32-x64-msvc": "4.46.2",
"fsevents": "~2.3.2"
}
},
@@ -4075,23 +3672,6 @@
"node": ">=0.8"
}
},
- "node_modules/tinyglobby": {
- "version": "0.2.14",
- "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz",
- "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fdir": "^6.4.4",
- "picomatch": "^4.0.2"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/SuperchupuDev"
- }
- },
"node_modules/to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
@@ -4174,51 +3754,41 @@
"license": "MIT"
},
"node_modules/vite": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/vite/-/vite-7.0.6.tgz",
- "integrity": "sha512-MHFiOENNBd+Bd9uvc8GEsIzdkn1JxMmEeYX35tI3fv0sJBUTfW5tQsoaOwuY4KhBI09A3dUJ/DXf2yxPVPUceg==",
+ "version": "4.5.14",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.14.tgz",
+ "integrity": "sha512-+v57oAaoYNnO3hIu5Z/tJRZjq5aHM2zDve9YZ8HngVHbhk66RStobhb1sqPMIPEleV6cNKYK4eGrAbE9Ulbl2g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "esbuild": "^0.25.0",
- "fdir": "^6.4.6",
- "picomatch": "^4.0.3",
- "postcss": "^8.5.6",
- "rollup": "^4.40.0",
- "tinyglobby": "^0.2.14"
+ "esbuild": "^0.18.10",
+ "postcss": "^8.4.27",
+ "rollup": "^3.27.1"
},
"bin": {
"vite": "bin/vite.js"
},
"engines": {
- "node": "^20.19.0 || >=22.12.0"
+ "node": "^14.18.0 || >=16.0.0"
},
"funding": {
"url": "https://github.com/vitejs/vite?sponsor=1"
},
"optionalDependencies": {
- "fsevents": "~2.3.3"
+ "fsevents": "~2.3.2"
},
"peerDependencies": {
- "@types/node": "^20.19.0 || >=22.12.0",
- "jiti": ">=1.21.0",
- "less": "^4.0.0",
+ "@types/node": ">= 14",
+ "less": "*",
"lightningcss": "^1.21.0",
- "sass": "^1.70.0",
- "sass-embedded": "^1.70.0",
- "stylus": ">=0.54.8",
- "sugarss": "^5.0.0",
- "terser": "^5.16.0",
- "tsx": "^4.8.1",
- "yaml": "^2.4.2"
+ "sass": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.4.0"
},
"peerDependenciesMeta": {
"@types/node": {
"optional": true
},
- "jiti": {
- "optional": true
- },
"less": {
"optional": true
},
@@ -4228,9 +3798,6 @@
"sass": {
"optional": true
},
- "sass-embedded": {
- "optional": true
- },
"stylus": {
"optional": true
},
@@ -4239,12 +3806,6 @@
},
"terser": {
"optional": true
- },
- "tsx": {
- "optional": true
- },
- "yaml": {
- "optional": true
}
}
},
diff --git a/adventure-rental-app/package.json b/adventure-rental-app/package.json
index eae0c45..e285678 100644
--- a/adventure-rental-app/package.json
+++ b/adventure-rental-app/package.json
@@ -20,7 +20,7 @@
"@eslint/js": "^9.30.1",
"@types/react": "^19.1.8",
"@types/react-dom": "^19.1.6",
- "@vitejs/plugin-react": "^4.6.0",
+ "@vitejs/plugin-react": "^4.3.1",
"autoprefixer": "^10.4.21",
"eslint": "^9.30.1",
"eslint-plugin-react-hooks": "^5.2.0",
@@ -28,6 +28,6 @@
"globals": "^16.3.0",
"postcss": "^8.5.6",
"tailwindcss": "^3.4.17",
- "vite": "^7.0.4"
+ "vite": "^4.5.2"
}
}
diff --git a/adventure-rental-app/src/App.jsx b/adventure-rental-app/src/App.jsx
index f8f8fa8..9adb950 100644
--- a/adventure-rental-app/src/App.jsx
+++ b/adventure-rental-app/src/App.jsx
@@ -1,6 +1,8 @@
import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
-import AuthPage from './AuthPage';
-import ChatbotPage from './ChatbotPage';
+import AuthPage from './pages/AuthPage';
+import ChatbotPage from './pages/ChatbotPage';
+import DashboardLayout from './layouts/DashboardLayout';
+import DashboardOverview from './pages/dashboard/DashboardOverview';
function App() {
return (
@@ -8,6 +10,7 @@ function App() {
} />
} />
+ } />
);
diff --git a/adventure-rental-app/src/ForgotPasswordForm.jsx b/adventure-rental-app/src/components/auth/ForgotPasswordForm.jsx
similarity index 100%
rename from adventure-rental-app/src/ForgotPasswordForm.jsx
rename to adventure-rental-app/src/components/auth/ForgotPasswordForm.jsx
diff --git a/adventure-rental-app/src/LoginForm.jsx b/adventure-rental-app/src/components/auth/LoginForm.jsx
similarity index 100%
rename from adventure-rental-app/src/LoginForm.jsx
rename to adventure-rental-app/src/components/auth/LoginForm.jsx
diff --git a/adventure-rental-app/src/OtpForm.jsx b/adventure-rental-app/src/components/auth/OtpForm.jsx
similarity index 100%
rename from adventure-rental-app/src/OtpForm.jsx
rename to adventure-rental-app/src/components/auth/OtpForm.jsx
diff --git a/adventure-rental-app/src/ResetPasswordForm.jsx b/adventure-rental-app/src/components/auth/ResetPasswordForm.jsx
similarity index 100%
rename from adventure-rental-app/src/ResetPasswordForm.jsx
rename to adventure-rental-app/src/components/auth/ResetPasswordForm.jsx
diff --git a/adventure-rental-app/src/SignupForm.jsx b/adventure-rental-app/src/components/auth/SignupForm.jsx
similarity index 100%
rename from adventure-rental-app/src/SignupForm.jsx
rename to adventure-rental-app/src/components/auth/SignupForm.jsx
diff --git a/adventure-rental-app/src/layouts/DashboardLayout.jsx b/adventure-rental-app/src/layouts/DashboardLayout.jsx
new file mode 100644
index 0000000..2ef38b2
--- /dev/null
+++ b/adventure-rental-app/src/layouts/DashboardLayout.jsx
@@ -0,0 +1,19 @@
+import React from 'react';
+
+const DashboardLayout = ({ children }) => {
+ return (
+
+
+ {/* Sidebar */}
+
+
Admin
+
+
+
+ {children}
+
+
+ );
+};
+
+export default DashboardLayout;
\ No newline at end of file
diff --git a/adventure-rental-app/src/main.jsx b/adventure-rental-app/src/main.jsx
index b9a1a6d..2ad8f09 100644
--- a/adventure-rental-app/src/main.jsx
+++ b/adventure-rental-app/src/main.jsx
@@ -1,7 +1,7 @@
import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import './index.css'
-import App from './App.jsx'
+import App from './App.jsx';
createRoot(document.getElementById('root')).render(
diff --git a/adventure-rental-app/src/AuthPage.jsx b/adventure-rental-app/src/pages/AuthPage.jsx
similarity index 81%
rename from adventure-rental-app/src/AuthPage.jsx
rename to adventure-rental-app/src/pages/AuthPage.jsx
index 26b1c9a..5175a93 100644
--- a/adventure-rental-app/src/AuthPage.jsx
+++ b/adventure-rental-app/src/pages/AuthPage.jsx
@@ -1,9 +1,9 @@
import React, { useState, useCallback } from 'react';
-import LoginForm from './LoginForm';
-import SignupForm from './SignupForm';
-import OtpForm from './OtpForm';
-import ForgotPasswordForm from './ForgotPasswordForm';
-import ResetPasswordForm from './ResetPasswordForm';
+import LoginForm from '../components/auth/LoginForm';
+import SignupForm from '../components/auth/SignupForm';
+import OtpForm from '../components/auth/OtpForm';
+import ForgotPasswordForm from '../components/auth/ForgotPasswordForm';
+import ResetPasswordForm from '../components/auth/ResetPasswordForm';
const AuthPage = () => {
const [view, setView] = useState('login'); // 'login', 'signup', 'otp', 'forgotPassword', 'resetPassword'
diff --git a/adventure-rental-app/src/ChatbotPage.jsx b/adventure-rental-app/src/pages/ChatbotPage.jsx
similarity index 100%
rename from adventure-rental-app/src/ChatbotPage.jsx
rename to adventure-rental-app/src/pages/ChatbotPage.jsx
diff --git a/adventure-rental-app/src/pages/dashboard/DashboardOverview.jsx b/adventure-rental-app/src/pages/dashboard/DashboardOverview.jsx
new file mode 100644
index 0000000..a77e20c
--- /dev/null
+++ b/adventure-rental-app/src/pages/dashboard/DashboardOverview.jsx
@@ -0,0 +1,12 @@
+import React from 'react';
+
+const DashboardOverview = () => {
+ return (
+
+
Dashboard Overview
+
Welcome to the admin dashboard.
+
+ );
+};
+
+export default DashboardOverview;
\ No newline at end of file
diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json
deleted file mode 100644
index 7fb8160..0000000
--- a/node_modules/.package-lock.json
+++ /dev/null
@@ -1,90 +0,0 @@
-{
- "name": "karyaman-project",
- "lockfileVersion": 3,
- "requires": true,
- "packages": {
- "node_modules/cookie": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.0.2.tgz",
- "integrity": "sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==",
- "license": "MIT",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/react": {
- "version": "19.1.1",
- "resolved": "https://registry.npmjs.org/react/-/react-19.1.1.tgz",
- "integrity": "sha512-w8nqGImo45dmMIfljjMwOGtbmC/mk4CMYhWIicdSflH91J9TyCyczcPFXJzrZ/ZXcgGRFeP6BU0BEJTw6tZdfQ==",
- "license": "MIT",
- "peer": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/react-dom": {
- "version": "19.1.1",
- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.1.1.tgz",
- "integrity": "sha512-Dlq/5LAZgF0Gaz6yiqZCf6VCcZs1ghAJyrsu84Q/GT0gV+mCxbfmKNoGRKBYMJ8IEdGPqu49YWXD02GCknEDkw==",
- "license": "MIT",
- "peer": true,
- "dependencies": {
- "scheduler": "^0.26.0"
- },
- "peerDependencies": {
- "react": "^19.1.1"
- }
- },
- "node_modules/react-router": {
- "version": "7.7.1",
- "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.7.1.tgz",
- "integrity": "sha512-jVKHXoWRIsD/qS6lvGveckwb862EekvapdHJN/cGmzw40KnJH5gg53ujOJ4qX6EKIK9LSBfFed/xiQ5yeXNrUA==",
- "license": "MIT",
- "dependencies": {
- "cookie": "^1.0.1",
- "set-cookie-parser": "^2.6.0"
- },
- "engines": {
- "node": ">=20.0.0"
- },
- "peerDependencies": {
- "react": ">=18",
- "react-dom": ">=18"
- },
- "peerDependenciesMeta": {
- "react-dom": {
- "optional": true
- }
- }
- },
- "node_modules/react-router-dom": {
- "version": "7.7.1",
- "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.7.1.tgz",
- "integrity": "sha512-bavdk2BA5r3MYalGKZ01u8PGuDBloQmzpBZVhDLrOOv1N943Wq6dcM9GhB3x8b7AbqPMEezauv4PeGkAJfy7FQ==",
- "license": "MIT",
- "dependencies": {
- "react-router": "7.7.1"
- },
- "engines": {
- "node": ">=20.0.0"
- },
- "peerDependencies": {
- "react": ">=18",
- "react-dom": ">=18"
- }
- },
- "node_modules/scheduler": {
- "version": "0.26.0",
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz",
- "integrity": "sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==",
- "license": "MIT",
- "peer": true
- },
- "node_modules/set-cookie-parser": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.1.tgz",
- "integrity": "sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==",
- "license": "MIT"
- }
- }
-}
diff --git a/node_modules/cookie/LICENSE b/node_modules/cookie/LICENSE
deleted file mode 100644
index 058b6b4..0000000
--- a/node_modules/cookie/LICENSE
+++ /dev/null
@@ -1,24 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2012-2014 Roman Shtylman
-Copyright (c) 2015 Douglas Christopher Wilson
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
diff --git a/node_modules/cookie/README.md b/node_modules/cookie/README.md
deleted file mode 100644
index 54e1cda..0000000
--- a/node_modules/cookie/README.md
+++ /dev/null
@@ -1,248 +0,0 @@
-# cookie
-
-[![NPM Version][npm-version-image]][npm-url]
-[![NPM Downloads][npm-downloads-image]][npm-url]
-[![Build Status][ci-image]][ci-url]
-[![Coverage Status][coverage-image]][coverage-url]
-
-Basic HTTP cookie parser and serializer for HTTP servers.
-
-## Installation
-
-```sh
-$ npm install cookie
-```
-
-## API
-
-```js
-const cookie = require("cookie");
-// import * as cookie from 'cookie';
-```
-
-### cookie.parse(str, options)
-
-Parse a HTTP `Cookie` header string and returning an object of all cookie name-value pairs.
-The `str` argument is the string representing a `Cookie` header value and `options` is an
-optional object containing additional parsing options.
-
-```js
-const cookies = cookie.parse("foo=bar; equation=E%3Dmc%5E2");
-// { foo: 'bar', equation: 'E=mc^2' }
-```
-
-#### Options
-
-`cookie.parse` accepts these properties in the options object.
-
-##### decode
-
-Specifies a function that will be used to decode a [cookie-value](https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.1).
-Since the value of a cookie has a limited character set (and must be a simple string), this function can be used to decode
-a previously-encoded cookie value into a JavaScript string.
-
-The default function is the global `decodeURIComponent`, wrapped in a `try..catch`. If an error
-is thrown it will return the cookie's original value. If you provide your own encode/decode
-scheme you must ensure errors are appropriately handled.
-
-### cookie.serialize(name, value, options)
-
-Serialize a cookie name-value pair into a `Set-Cookie` header string. The `name` argument is the
-name for the cookie, the `value` argument is the value to set the cookie to, and the `options`
-argument is an optional object containing additional serialization options.
-
-```js
-const setCookie = cookie.serialize("foo", "bar");
-// foo=bar
-```
-
-#### Options
-
-`cookie.serialize` accepts these properties in the options object.
-
-##### encode
-
-Specifies a function that will be used to encode a [cookie-value](https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.1).
-Since value of a cookie has a limited character set (and must be a simple string), this function can be used to encode
-a value into a string suited for a cookie's value, and should mirror `decode` when parsing.
-
-The default function is the global `encodeURIComponent`.
-
-##### maxAge
-
-Specifies the `number` (in seconds) to be the value for the [`Max-Age` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.2).
-
-The [cookie storage model specification](https://tools.ietf.org/html/rfc6265#section-5.3) states that if both `expires` and
-`maxAge` are set, then `maxAge` takes precedence, but it is possible not all clients by obey this,
-so if both are set, they should point to the same date and time.
-
-##### expires
-
-Specifies the `Date` object to be the value for the [`Expires` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.1).
-When no expiration is set clients consider this a "non-persistent cookie" and delete it the current session is over.
-
-The [cookie storage model specification](https://tools.ietf.org/html/rfc6265#section-5.3) states that if both `expires` and
-`maxAge` are set, then `maxAge` takes precedence, but it is possible not all clients by obey this,
-so if both are set, they should point to the same date and time.
-
-##### domain
-
-Specifies the value for the [`Domain` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.3).
-When no domain is set clients consider the cookie to apply to the current domain only.
-
-##### path
-
-Specifies the value for the [`Path` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.4).
-When no path is set, the path is considered the ["default path"](https://tools.ietf.org/html/rfc6265#section-5.1.4).
-
-##### httpOnly
-
-Enables the [`HttpOnly` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.6).
-When enabled, clients will not allow client-side JavaScript to see the cookie in `document.cookie`.
-
-##### secure
-
-Enables the [`Secure` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.5).
-When enabled, clients will only send the cookie back if the browser has a HTTPS connection.
-
-##### partitioned
-
-Enables the [`Partitioned` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-cutler-httpbis-partitioned-cookies/).
-When enabled, clients will only send the cookie back when the current domain _and_ top-level domain matches.
-
-This is an attribute that has not yet been fully standardized, and may change in the future.
-This also means clients may ignore this attribute until they understand it. More information
-about can be found in [the proposal](https://github.com/privacycg/CHIPS).
-
-##### priority
-
-Specifies the value for the [`Priority` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-west-cookie-priority-00#section-4.1).
-
-- `'low'` will set the `Priority` attribute to `Low`.
-- `'medium'` will set the `Priority` attribute to `Medium`, the default priority when not set.
-- `'high'` will set the `Priority` attribute to `High`.
-
-More information about priority levels can be found in [the specification](https://tools.ietf.org/html/draft-west-cookie-priority-00#section-4.1).
-
-##### sameSite
-
-Specifies the value for the [`SameSite` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis-09#section-5.4.7).
-
-- `true` will set the `SameSite` attribute to `Strict` for strict same site enforcement.
-- `'lax'` will set the `SameSite` attribute to `Lax` for lax same site enforcement.
-- `'none'` will set the `SameSite` attribute to `None` for an explicit cross-site cookie.
-- `'strict'` will set the `SameSite` attribute to `Strict` for strict same site enforcement.
-
-More information about enforcement levels can be found in [the specification](https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis-09#section-5.4.7).
-
-## Example
-
-The following example uses this module in conjunction with the Node.js core HTTP server
-to prompt a user for their name and display it back on future visits.
-
-```js
-var cookie = require("cookie");
-var escapeHtml = require("escape-html");
-var http = require("http");
-var url = require("url");
-
-function onRequest(req, res) {
- // Parse the query string
- var query = url.parse(req.url, true, true).query;
-
- if (query && query.name) {
- // Set a new cookie with the name
- res.setHeader(
- "Set-Cookie",
- cookie.serialize("name", String(query.name), {
- httpOnly: true,
- maxAge: 60 * 60 * 24 * 7, // 1 week
- }),
- );
-
- // Redirect back after setting cookie
- res.statusCode = 302;
- res.setHeader("Location", req.headers.referer || "/");
- res.end();
- return;
- }
-
- // Parse the cookies on the request
- var cookies = cookie.parse(req.headers.cookie || "");
-
- // Get the visitor name set in the cookie
- var name = cookies.name;
-
- res.setHeader("Content-Type", "text/html; charset=UTF-8");
-
- if (name) {
- res.write("Welcome back, " + escapeHtml(name) + " !
");
- } else {
- res.write("Hello, new visitor!
");
- }
-
- res.write('");
-}
-
-http.createServer(onRequest).listen(3000);
-```
-
-## Testing
-
-```sh
-npm test
-```
-
-## Benchmark
-
-```sh
-npm run bench
-```
-
-```
- name hz min max mean p75 p99 p995 p999 rme samples
- · simple 8,566,313.09 0.0000 0.3694 0.0001 0.0001 0.0002 0.0002 0.0003 ±0.64% 4283157 fastest
- · decode 3,834,348.85 0.0001 0.2465 0.0003 0.0003 0.0003 0.0004 0.0006 ±0.38% 1917175
- · unquote 8,315,355.96 0.0000 0.3824 0.0001 0.0001 0.0002 0.0002 0.0003 ±0.72% 4157880
- · duplicates 1,944,765.97 0.0004 0.2959 0.0005 0.0005 0.0006 0.0006 0.0008 ±0.24% 972384
- · 10 cookies 675,345.67 0.0012 0.4328 0.0015 0.0015 0.0019 0.0020 0.0058 ±0.75% 337673
- · 100 cookies 61,040.71 0.0152 0.4092 0.0164 0.0160 0.0196 0.0228 0.2260 ±0.71% 30521 slowest
- ✓ parse top-sites (15) 22945ms
- name hz min max mean p75 p99 p995 p999 rme samples
- · parse accounts.google.com 7,164,349.17 0.0000 0.0929 0.0001 0.0002 0.0002 0.0002 0.0003 ±0.09% 3582184
- · parse apple.com 7,817,686.84 0.0000 0.6048 0.0001 0.0001 0.0002 0.0002 0.0003 ±1.05% 3908844
- · parse cloudflare.com 7,189,841.70 0.0000 0.0390 0.0001 0.0002 0.0002 0.0002 0.0003 ±0.06% 3594921
- · parse docs.google.com 7,051,765.61 0.0000 0.0296 0.0001 0.0002 0.0002 0.0002 0.0003 ±0.06% 3525883
- · parse drive.google.com 7,349,104.77 0.0000 0.0368 0.0001 0.0001 0.0002 0.0002 0.0003 ±0.05% 3674553
- · parse en.wikipedia.org 1,929,909.49 0.0004 0.3598 0.0005 0.0005 0.0007 0.0007 0.0012 ±0.16% 964955
- · parse linkedin.com 2,225,658.01 0.0003 0.0595 0.0004 0.0005 0.0005 0.0005 0.0006 ±0.06% 1112830
- · parse maps.google.com 4,423,511.68 0.0001 0.0942 0.0002 0.0003 0.0003 0.0003 0.0005 ±0.08% 2211756
- · parse microsoft.com 3,387,601.88 0.0002 0.0725 0.0003 0.0003 0.0004 0.0004 0.0005 ±0.09% 1693801
- · parse play.google.com 7,375,980.86 0.0000 0.1994 0.0001 0.0001 0.0002 0.0002 0.0003 ±0.12% 3687991
- · parse support.google.com 4,912,267.94 0.0001 2.8958 0.0002 0.0002 0.0003 0.0003 0.0005 ±1.28% 2456134
- · parse www.google.com 3,443,035.87 0.0002 0.2783 0.0003 0.0003 0.0004 0.0004 0.0007 ±0.51% 1721518
- · parse youtu.be 1,910,492.87 0.0004 0.3490 0.0005 0.0005 0.0007 0.0007 0.0011 ±0.46% 955247
- · parse youtube.com 1,895,082.62 0.0004 0.7454 0.0005 0.0005 0.0006 0.0007 0.0013 ±0.64% 947542 slowest
- · parse example.com 21,582,835.27 0.0000 0.1095 0.0000 0.0000 0.0001 0.0001 0.0001 ±0.13% 10791418
-```
-
-## References
-
-- [RFC 6265: HTTP State Management Mechanism](https://tools.ietf.org/html/rfc6265)
-- [Same-site Cookies](https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis-09#section-5.4.7)
-
-## License
-
-[MIT](LICENSE)
-
-[ci-image]: https://img.shields.io/github/actions/workflow/status/jshttp/cookie/ci.yml
-[ci-url]: https://github.com/jshttp/cookie/actions/workflows/ci.yml?query=branch%3Amaster
-[coverage-image]: https://img.shields.io/codecov/c/github/jshttp/cookie/master
-[coverage-url]: https://app.codecov.io/gh/jshttp/cookie
-[npm-downloads-image]: https://img.shields.io/npm/dm/cookie
-[npm-url]: https://npmjs.org/package/cookie
-[npm-version-image]: https://img.shields.io/npm/v/cookie
diff --git a/node_modules/cookie/dist/index.d.ts b/node_modules/cookie/dist/index.d.ts
deleted file mode 100644
index 784b0db..0000000
--- a/node_modules/cookie/dist/index.d.ts
+++ /dev/null
@@ -1,114 +0,0 @@
-/**
- * Parse options.
- */
-export interface ParseOptions {
- /**
- * Specifies a function that will be used to decode a [cookie-value](https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.1).
- * Since the value of a cookie has a limited character set (and must be a simple string), this function can be used to decode
- * a previously-encoded cookie value into a JavaScript string.
- *
- * The default function is the global `decodeURIComponent`, wrapped in a `try..catch`. If an error
- * is thrown it will return the cookie's original value. If you provide your own encode/decode
- * scheme you must ensure errors are appropriately handled.
- *
- * @default decode
- */
- decode?: (str: string) => string | undefined;
-}
-/**
- * Parse a cookie header.
- *
- * Parse the given cookie header string into an object
- * The object has the various cookies as keys(names) => values
- */
-export declare function parse(str: string, options?: ParseOptions): Record;
-/**
- * Serialize options.
- */
-export interface SerializeOptions {
- /**
- * Specifies a function that will be used to encode a [cookie-value](https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.1).
- * Since value of a cookie has a limited character set (and must be a simple string), this function can be used to encode
- * a value into a string suited for a cookie's value, and should mirror `decode` when parsing.
- *
- * @default encodeURIComponent
- */
- encode?: (str: string) => string;
- /**
- * Specifies the `number` (in seconds) to be the value for the [`Max-Age` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.2).
- *
- * The [cookie storage model specification](https://tools.ietf.org/html/rfc6265#section-5.3) states that if both `expires` and
- * `maxAge` are set, then `maxAge` takes precedence, but it is possible not all clients by obey this,
- * so if both are set, they should point to the same date and time.
- */
- maxAge?: number;
- /**
- * Specifies the `Date` object to be the value for the [`Expires` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.1).
- * When no expiration is set clients consider this a "non-persistent cookie" and delete it the current session is over.
- *
- * The [cookie storage model specification](https://tools.ietf.org/html/rfc6265#section-5.3) states that if both `expires` and
- * `maxAge` are set, then `maxAge` takes precedence, but it is possible not all clients by obey this,
- * so if both are set, they should point to the same date and time.
- */
- expires?: Date;
- /**
- * Specifies the value for the [`Domain` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.3).
- * When no domain is set clients consider the cookie to apply to the current domain only.
- */
- domain?: string;
- /**
- * Specifies the value for the [`Path` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.4).
- * When no path is set, the path is considered the ["default path"](https://tools.ietf.org/html/rfc6265#section-5.1.4).
- */
- path?: string;
- /**
- * Enables the [`HttpOnly` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.6).
- * When enabled, clients will not allow client-side JavaScript to see the cookie in `document.cookie`.
- */
- httpOnly?: boolean;
- /**
- * Enables the [`Secure` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.5).
- * When enabled, clients will only send the cookie back if the browser has a HTTPS connection.
- */
- secure?: boolean;
- /**
- * Enables the [`Partitioned` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-cutler-httpbis-partitioned-cookies/).
- * When enabled, clients will only send the cookie back when the current domain _and_ top-level domain matches.
- *
- * This is an attribute that has not yet been fully standardized, and may change in the future.
- * This also means clients may ignore this attribute until they understand it. More information
- * about can be found in [the proposal](https://github.com/privacycg/CHIPS).
- */
- partitioned?: boolean;
- /**
- * Specifies the value for the [`Priority` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-west-cookie-priority-00#section-4.1).
- *
- * - `'low'` will set the `Priority` attribute to `Low`.
- * - `'medium'` will set the `Priority` attribute to `Medium`, the default priority when not set.
- * - `'high'` will set the `Priority` attribute to `High`.
- *
- * More information about priority levels can be found in [the specification](https://tools.ietf.org/html/draft-west-cookie-priority-00#section-4.1).
- */
- priority?: "low" | "medium" | "high";
- /**
- * Specifies the value for the [`SameSite` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis-09#section-5.4.7).
- *
- * - `true` will set the `SameSite` attribute to `Strict` for strict same site enforcement.
- * - `'lax'` will set the `SameSite` attribute to `Lax` for lax same site enforcement.
- * - `'none'` will set the `SameSite` attribute to `None` for an explicit cross-site cookie.
- * - `'strict'` will set the `SameSite` attribute to `Strict` for strict same site enforcement.
- *
- * More information about enforcement levels can be found in [the specification](https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis-09#section-5.4.7).
- */
- sameSite?: boolean | "lax" | "strict" | "none";
-}
-/**
- * Serialize data into a cookie header.
- *
- * Serialize a name value pair into a cookie string suitable for
- * http headers. An optional options object specifies cookie parameters.
- *
- * serialize('foo', 'bar', { httpOnly: true })
- * => "foo=bar; httpOnly"
- */
-export declare function serialize(name: string, val: string, options?: SerializeOptions): string;
diff --git a/node_modules/cookie/dist/index.js b/node_modules/cookie/dist/index.js
deleted file mode 100644
index 423acb4..0000000
--- a/node_modules/cookie/dist/index.js
+++ /dev/null
@@ -1,239 +0,0 @@
-"use strict";
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.parse = parse;
-exports.serialize = serialize;
-/**
- * RegExp to match cookie-name in RFC 6265 sec 4.1.1
- * This refers out to the obsoleted definition of token in RFC 2616 sec 2.2
- * which has been replaced by the token definition in RFC 7230 appendix B.
- *
- * cookie-name = token
- * token = 1*tchar
- * tchar = "!" / "#" / "$" / "%" / "&" / "'" /
- * "*" / "+" / "-" / "." / "^" / "_" /
- * "`" / "|" / "~" / DIGIT / ALPHA
- *
- * Note: Allowing more characters - https://github.com/jshttp/cookie/issues/191
- * Allow same range as cookie value, except `=`, which delimits end of name.
- */
-const cookieNameRegExp = /^[\u0021-\u003A\u003C\u003E-\u007E]+$/;
-/**
- * RegExp to match cookie-value in RFC 6265 sec 4.1.1
- *
- * cookie-value = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE )
- * cookie-octet = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E
- * ; US-ASCII characters excluding CTLs,
- * ; whitespace DQUOTE, comma, semicolon,
- * ; and backslash
- *
- * Allowing more characters: https://github.com/jshttp/cookie/issues/191
- * Comma, backslash, and DQUOTE are not part of the parsing algorithm.
- */
-const cookieValueRegExp = /^[\u0021-\u003A\u003C-\u007E]*$/;
-/**
- * RegExp to match domain-value in RFC 6265 sec 4.1.1
- *
- * domain-value =
- * ; defined in [RFC1034], Section 3.5, as
- * ; enhanced by [RFC1123], Section 2.1
- * = | "."
- * = [ [ ] ]
- * Labels must be 63 characters or less.
- * 'let-dig' not 'letter' in the first char, per RFC1123
- * = |
- * = | "-"
- * = |
- * = any one of the 52 alphabetic characters A through Z in
- * upper case and a through z in lower case
- * = any one of the ten digits 0 through 9
- *
- * Keep support for leading dot: https://github.com/jshttp/cookie/issues/173
- *
- * > (Note that a leading %x2E ("."), if present, is ignored even though that
- * character is not permitted, but a trailing %x2E ("."), if present, will
- * cause the user agent to ignore the attribute.)
- */
-const domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;
-/**
- * RegExp to match path-value in RFC 6265 sec 4.1.1
- *
- * path-value =
- * CHAR = %x01-7F
- * ; defined in RFC 5234 appendix B.1
- */
-const pathValueRegExp = /^[\u0020-\u003A\u003D-\u007E]*$/;
-const __toString = Object.prototype.toString;
-const NullObject = /* @__PURE__ */ (() => {
- const C = function () { };
- C.prototype = Object.create(null);
- return C;
-})();
-/**
- * Parse a cookie header.
- *
- * Parse the given cookie header string into an object
- * The object has the various cookies as keys(names) => values
- */
-function parse(str, options) {
- const obj = new NullObject();
- const len = str.length;
- // RFC 6265 sec 4.1.1, RFC 2616 2.2 defines a cookie name consists of one char minimum, plus '='.
- if (len < 2)
- return obj;
- const dec = options?.decode || decode;
- let index = 0;
- do {
- const eqIdx = str.indexOf("=", index);
- if (eqIdx === -1)
- break; // No more cookie pairs.
- const colonIdx = str.indexOf(";", index);
- const endIdx = colonIdx === -1 ? len : colonIdx;
- if (eqIdx > endIdx) {
- // backtrack on prior semicolon
- index = str.lastIndexOf(";", eqIdx - 1) + 1;
- continue;
- }
- const keyStartIdx = startIndex(str, index, eqIdx);
- const keyEndIdx = endIndex(str, eqIdx, keyStartIdx);
- const key = str.slice(keyStartIdx, keyEndIdx);
- // only assign once
- if (obj[key] === undefined) {
- let valStartIdx = startIndex(str, eqIdx + 1, endIdx);
- let valEndIdx = endIndex(str, endIdx, valStartIdx);
- const value = dec(str.slice(valStartIdx, valEndIdx));
- obj[key] = value;
- }
- index = endIdx + 1;
- } while (index < len);
- return obj;
-}
-function startIndex(str, index, max) {
- do {
- const code = str.charCodeAt(index);
- if (code !== 0x20 /* */ && code !== 0x09 /* \t */)
- return index;
- } while (++index < max);
- return max;
-}
-function endIndex(str, index, min) {
- while (index > min) {
- const code = str.charCodeAt(--index);
- if (code !== 0x20 /* */ && code !== 0x09 /* \t */)
- return index + 1;
- }
- return min;
-}
-/**
- * Serialize data into a cookie header.
- *
- * Serialize a name value pair into a cookie string suitable for
- * http headers. An optional options object specifies cookie parameters.
- *
- * serialize('foo', 'bar', { httpOnly: true })
- * => "foo=bar; httpOnly"
- */
-function serialize(name, val, options) {
- const enc = options?.encode || encodeURIComponent;
- if (!cookieNameRegExp.test(name)) {
- throw new TypeError(`argument name is invalid: ${name}`);
- }
- const value = enc(val);
- if (!cookieValueRegExp.test(value)) {
- throw new TypeError(`argument val is invalid: ${val}`);
- }
- let str = name + "=" + value;
- if (!options)
- return str;
- if (options.maxAge !== undefined) {
- if (!Number.isInteger(options.maxAge)) {
- throw new TypeError(`option maxAge is invalid: ${options.maxAge}`);
- }
- str += "; Max-Age=" + options.maxAge;
- }
- if (options.domain) {
- if (!domainValueRegExp.test(options.domain)) {
- throw new TypeError(`option domain is invalid: ${options.domain}`);
- }
- str += "; Domain=" + options.domain;
- }
- if (options.path) {
- if (!pathValueRegExp.test(options.path)) {
- throw new TypeError(`option path is invalid: ${options.path}`);
- }
- str += "; Path=" + options.path;
- }
- if (options.expires) {
- if (!isDate(options.expires) ||
- !Number.isFinite(options.expires.valueOf())) {
- throw new TypeError(`option expires is invalid: ${options.expires}`);
- }
- str += "; Expires=" + options.expires.toUTCString();
- }
- if (options.httpOnly) {
- str += "; HttpOnly";
- }
- if (options.secure) {
- str += "; Secure";
- }
- if (options.partitioned) {
- str += "; Partitioned";
- }
- if (options.priority) {
- const priority = typeof options.priority === "string"
- ? options.priority.toLowerCase()
- : undefined;
- switch (priority) {
- case "low":
- str += "; Priority=Low";
- break;
- case "medium":
- str += "; Priority=Medium";
- break;
- case "high":
- str += "; Priority=High";
- break;
- default:
- throw new TypeError(`option priority is invalid: ${options.priority}`);
- }
- }
- if (options.sameSite) {
- const sameSite = typeof options.sameSite === "string"
- ? options.sameSite.toLowerCase()
- : options.sameSite;
- switch (sameSite) {
- case true:
- case "strict":
- str += "; SameSite=Strict";
- break;
- case "lax":
- str += "; SameSite=Lax";
- break;
- case "none":
- str += "; SameSite=None";
- break;
- default:
- throw new TypeError(`option sameSite is invalid: ${options.sameSite}`);
- }
- }
- return str;
-}
-/**
- * URL-decode string value. Optimized to skip native call when no %.
- */
-function decode(str) {
- if (str.indexOf("%") === -1)
- return str;
- try {
- return decodeURIComponent(str);
- }
- catch (e) {
- return str;
- }
-}
-/**
- * Determine if value is a Date.
- */
-function isDate(val) {
- return __toString.call(val) === "[object Date]";
-}
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/cookie/dist/index.js.map b/node_modules/cookie/dist/index.js.map
deleted file mode 100644
index 62a0962..0000000
--- a/node_modules/cookie/dist/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAiGA,sBA0CC;AA4GD,8BA6GC;AApWD;;;;;;;;;;;;;GAaG;AACH,MAAM,gBAAgB,GAAG,uCAAuC,CAAC;AAEjE;;;;;;;;;;;GAWG;AACH,MAAM,iBAAiB,GAAG,iCAAiC,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,iBAAiB,GACrB,qFAAqF,CAAC;AAExF;;;;;;GAMG;AACH,MAAM,eAAe,GAAG,iCAAiC,CAAC;AAE1D,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;AAE7C,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,GAAG,EAAE;IACvC,MAAM,CAAC,GAAG,cAAa,CAAC,CAAC;IACzB,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,CAAC,CAAC;AACX,CAAC,CAAC,EAAgC,CAAC;AAoBnC;;;;;GAKG;AACH,SAAgB,KAAK,CACnB,GAAW,EACX,OAAsB;IAEtB,MAAM,GAAG,GAAuC,IAAI,UAAU,EAAE,CAAC;IACjE,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IACvB,iGAAiG;IACjG,IAAI,GAAG,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAExB,MAAM,GAAG,GAAG,OAAO,EAAE,MAAM,IAAI,MAAM,CAAC;IACtC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,GAAG,CAAC;QACF,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,MAAM,CAAC,wBAAwB;QAEjD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEhD,IAAI,KAAK,GAAG,MAAM,EAAE,CAAC;YACnB,+BAA+B;YAC/B,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAC5C,SAAS;QACX,CAAC;QAED,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAE9C,mBAAmB;QACnB,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;YACrD,IAAI,SAAS,GAAG,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YAEnD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;YACrD,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACnB,CAAC;QAED,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC;IACrB,CAAC,QAAQ,KAAK,GAAG,GAAG,EAAE;IAEtB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,GAAW,EAAE,KAAa,EAAE,GAAW;IACzD,GAAG,CAAC;QACF,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;IACpE,CAAC,QAAQ,EAAE,KAAK,GAAG,GAAG,EAAE;IACxB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,KAAa,EAAE,GAAW;IACvD,OAAO,KAAK,GAAG,GAAG,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,GAAG,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAmFD;;;;;;;;GAQG;AACH,SAAgB,SAAS,CACvB,IAAY,EACZ,GAAW,EACX,OAA0B;IAE1B,MAAM,GAAG,GAAG,OAAO,EAAE,MAAM,IAAI,kBAAkB,CAAC;IAElD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,SAAS,CAAC,6BAA6B,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IAEvB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,SAAS,CAAC,4BAA4B,GAAG,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC;IAC7B,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,CAAC;IAEzB,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,SAAS,CAAC,6BAA6B,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,GAAG,IAAI,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IACvC,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,SAAS,CAAC,6BAA6B,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,GAAG,IAAI,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IACtC,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,SAAS,CAAC,2BAA2B,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,GAAG,IAAI,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAClC,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,IACE,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;YACxB,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAC3C,CAAC;YACD,MAAM,IAAI,SAAS,CAAC,8BAA8B,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,GAAG,IAAI,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACtD,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,GAAG,IAAI,YAAY,CAAC;IACtB,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,GAAG,IAAI,UAAU,CAAC;IACpB,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,GAAG,IAAI,eAAe,CAAC;IACzB,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,QAAQ,GACZ,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;YAClC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE;YAChC,CAAC,CAAC,SAAS,CAAC;QAChB,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,KAAK;gBACR,GAAG,IAAI,gBAAgB,CAAC;gBACxB,MAAM;YACR,KAAK,QAAQ;gBACX,GAAG,IAAI,mBAAmB,CAAC;gBAC3B,MAAM;YACR,KAAK,MAAM;gBACT,GAAG,IAAI,iBAAiB,CAAC;gBACzB,MAAM;YACR;gBACE,MAAM,IAAI,SAAS,CAAC,+BAA+B,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,QAAQ,GACZ,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;YAClC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE;YAChC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvB,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,IAAI,CAAC;YACV,KAAK,QAAQ;gBACX,GAAG,IAAI,mBAAmB,CAAC;gBAC3B,MAAM;YACR,KAAK,KAAK;gBACR,GAAG,IAAI,gBAAgB,CAAC;gBACxB,MAAM;YACR,KAAK,MAAM;gBACT,GAAG,IAAI,iBAAiB,CAAC;gBACzB,MAAM;YACR;gBACE,MAAM,IAAI,SAAS,CAAC,+BAA+B,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,MAAM,CAAC,GAAW;IACzB,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC;IAExC,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,MAAM,CAAC,GAAQ;IACtB,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,eAAe,CAAC;AAClD,CAAC","sourcesContent":["/**\n * RegExp to match cookie-name in RFC 6265 sec 4.1.1\n * This refers out to the obsoleted definition of token in RFC 2616 sec 2.2\n * which has been replaced by the token definition in RFC 7230 appendix B.\n *\n * cookie-name = token\n * token = 1*tchar\n * tchar = \"!\" / \"#\" / \"$\" / \"%\" / \"&\" / \"'\" /\n * \"*\" / \"+\" / \"-\" / \".\" / \"^\" / \"_\" /\n * \"`\" / \"|\" / \"~\" / DIGIT / ALPHA\n *\n * Note: Allowing more characters - https://github.com/jshttp/cookie/issues/191\n * Allow same range as cookie value, except `=`, which delimits end of name.\n */\nconst cookieNameRegExp = /^[\\u0021-\\u003A\\u003C\\u003E-\\u007E]+$/;\n\n/**\n * RegExp to match cookie-value in RFC 6265 sec 4.1.1\n *\n * cookie-value = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE )\n * cookie-octet = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E\n * ; US-ASCII characters excluding CTLs,\n * ; whitespace DQUOTE, comma, semicolon,\n * ; and backslash\n *\n * Allowing more characters: https://github.com/jshttp/cookie/issues/191\n * Comma, backslash, and DQUOTE are not part of the parsing algorithm.\n */\nconst cookieValueRegExp = /^[\\u0021-\\u003A\\u003C-\\u007E]*$/;\n\n/**\n * RegExp to match domain-value in RFC 6265 sec 4.1.1\n *\n * domain-value = \n * ; defined in [RFC1034], Section 3.5, as\n * ; enhanced by [RFC1123], Section 2.1\n * = | \".\" \n * = [ [ ] ]\n * Labels must be 63 characters or less.\n * 'let-dig' not 'letter' in the first char, per RFC1123\n * = | \n * = | \"-\"\n * = | \n * = any one of the 52 alphabetic characters A through Z in\n * upper case and a through z in lower case\n * = any one of the ten digits 0 through 9\n *\n * Keep support for leading dot: https://github.com/jshttp/cookie/issues/173\n *\n * > (Note that a leading %x2E (\".\"), if present, is ignored even though that\n * character is not permitted, but a trailing %x2E (\".\"), if present, will\n * cause the user agent to ignore the attribute.)\n */\nconst domainValueRegExp =\n /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;\n\n/**\n * RegExp to match path-value in RFC 6265 sec 4.1.1\n *\n * path-value = \n * CHAR = %x01-7F\n * ; defined in RFC 5234 appendix B.1\n */\nconst pathValueRegExp = /^[\\u0020-\\u003A\\u003D-\\u007E]*$/;\n\nconst __toString = Object.prototype.toString;\n\nconst NullObject = /* @__PURE__ */ (() => {\n const C = function () {};\n C.prototype = Object.create(null);\n return C;\n})() as unknown as { new (): any };\n\n/**\n * Parse options.\n */\nexport interface ParseOptions {\n /**\n * Specifies a function that will be used to decode a [cookie-value](https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.1).\n * Since the value of a cookie has a limited character set (and must be a simple string), this function can be used to decode\n * a previously-encoded cookie value into a JavaScript string.\n *\n * The default function is the global `decodeURIComponent`, wrapped in a `try..catch`. If an error\n * is thrown it will return the cookie's original value. If you provide your own encode/decode\n * scheme you must ensure errors are appropriately handled.\n *\n * @default decode\n */\n decode?: (str: string) => string | undefined;\n}\n\n/**\n * Parse a cookie header.\n *\n * Parse the given cookie header string into an object\n * The object has the various cookies as keys(names) => values\n */\nexport function parse(\n str: string,\n options?: ParseOptions,\n): Record {\n const obj: Record = new NullObject();\n const len = str.length;\n // RFC 6265 sec 4.1.1, RFC 2616 2.2 defines a cookie name consists of one char minimum, plus '='.\n if (len < 2) return obj;\n\n const dec = options?.decode || decode;\n let index = 0;\n\n do {\n const eqIdx = str.indexOf(\"=\", index);\n if (eqIdx === -1) break; // No more cookie pairs.\n\n const colonIdx = str.indexOf(\";\", index);\n const endIdx = colonIdx === -1 ? len : colonIdx;\n\n if (eqIdx > endIdx) {\n // backtrack on prior semicolon\n index = str.lastIndexOf(\";\", eqIdx - 1) + 1;\n continue;\n }\n\n const keyStartIdx = startIndex(str, index, eqIdx);\n const keyEndIdx = endIndex(str, eqIdx, keyStartIdx);\n const key = str.slice(keyStartIdx, keyEndIdx);\n\n // only assign once\n if (obj[key] === undefined) {\n let valStartIdx = startIndex(str, eqIdx + 1, endIdx);\n let valEndIdx = endIndex(str, endIdx, valStartIdx);\n\n const value = dec(str.slice(valStartIdx, valEndIdx));\n obj[key] = value;\n }\n\n index = endIdx + 1;\n } while (index < len);\n\n return obj;\n}\n\nfunction startIndex(str: string, index: number, max: number) {\n do {\n const code = str.charCodeAt(index);\n if (code !== 0x20 /* */ && code !== 0x09 /* \\t */) return index;\n } while (++index < max);\n return max;\n}\n\nfunction endIndex(str: string, index: number, min: number) {\n while (index > min) {\n const code = str.charCodeAt(--index);\n if (code !== 0x20 /* */ && code !== 0x09 /* \\t */) return index + 1;\n }\n return min;\n}\n\n/**\n * Serialize options.\n */\nexport interface SerializeOptions {\n /**\n * Specifies a function that will be used to encode a [cookie-value](https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.1).\n * Since value of a cookie has a limited character set (and must be a simple string), this function can be used to encode\n * a value into a string suited for a cookie's value, and should mirror `decode` when parsing.\n *\n * @default encodeURIComponent\n */\n encode?: (str: string) => string;\n /**\n * Specifies the `number` (in seconds) to be the value for the [`Max-Age` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.2).\n *\n * The [cookie storage model specification](https://tools.ietf.org/html/rfc6265#section-5.3) states that if both `expires` and\n * `maxAge` are set, then `maxAge` takes precedence, but it is possible not all clients by obey this,\n * so if both are set, they should point to the same date and time.\n */\n maxAge?: number;\n /**\n * Specifies the `Date` object to be the value for the [`Expires` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.1).\n * When no expiration is set clients consider this a \"non-persistent cookie\" and delete it the current session is over.\n *\n * The [cookie storage model specification](https://tools.ietf.org/html/rfc6265#section-5.3) states that if both `expires` and\n * `maxAge` are set, then `maxAge` takes precedence, but it is possible not all clients by obey this,\n * so if both are set, they should point to the same date and time.\n */\n expires?: Date;\n /**\n * Specifies the value for the [`Domain` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.3).\n * When no domain is set clients consider the cookie to apply to the current domain only.\n */\n domain?: string;\n /**\n * Specifies the value for the [`Path` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.4).\n * When no path is set, the path is considered the [\"default path\"](https://tools.ietf.org/html/rfc6265#section-5.1.4).\n */\n path?: string;\n /**\n * Enables the [`HttpOnly` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.6).\n * When enabled, clients will not allow client-side JavaScript to see the cookie in `document.cookie`.\n */\n httpOnly?: boolean;\n /**\n * Enables the [`Secure` `Set-Cookie` attribute](https://tools.ietf.org/html/rfc6265#section-5.2.5).\n * When enabled, clients will only send the cookie back if the browser has a HTTPS connection.\n */\n secure?: boolean;\n /**\n * Enables the [`Partitioned` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-cutler-httpbis-partitioned-cookies/).\n * When enabled, clients will only send the cookie back when the current domain _and_ top-level domain matches.\n *\n * This is an attribute that has not yet been fully standardized, and may change in the future.\n * This also means clients may ignore this attribute until they understand it. More information\n * about can be found in [the proposal](https://github.com/privacycg/CHIPS).\n */\n partitioned?: boolean;\n /**\n * Specifies the value for the [`Priority` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-west-cookie-priority-00#section-4.1).\n *\n * - `'low'` will set the `Priority` attribute to `Low`.\n * - `'medium'` will set the `Priority` attribute to `Medium`, the default priority when not set.\n * - `'high'` will set the `Priority` attribute to `High`.\n *\n * More information about priority levels can be found in [the specification](https://tools.ietf.org/html/draft-west-cookie-priority-00#section-4.1).\n */\n priority?: \"low\" | \"medium\" | \"high\";\n /**\n * Specifies the value for the [`SameSite` `Set-Cookie` attribute](https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis-09#section-5.4.7).\n *\n * - `true` will set the `SameSite` attribute to `Strict` for strict same site enforcement.\n * - `'lax'` will set the `SameSite` attribute to `Lax` for lax same site enforcement.\n * - `'none'` will set the `SameSite` attribute to `None` for an explicit cross-site cookie.\n * - `'strict'` will set the `SameSite` attribute to `Strict` for strict same site enforcement.\n *\n * More information about enforcement levels can be found in [the specification](https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis-09#section-5.4.7).\n */\n sameSite?: boolean | \"lax\" | \"strict\" | \"none\";\n}\n\n/**\n * Serialize data into a cookie header.\n *\n * Serialize a name value pair into a cookie string suitable for\n * http headers. An optional options object specifies cookie parameters.\n *\n * serialize('foo', 'bar', { httpOnly: true })\n * => \"foo=bar; httpOnly\"\n */\nexport function serialize(\n name: string,\n val: string,\n options?: SerializeOptions,\n): string {\n const enc = options?.encode || encodeURIComponent;\n\n if (!cookieNameRegExp.test(name)) {\n throw new TypeError(`argument name is invalid: ${name}`);\n }\n\n const value = enc(val);\n\n if (!cookieValueRegExp.test(value)) {\n throw new TypeError(`argument val is invalid: ${val}`);\n }\n\n let str = name + \"=\" + value;\n if (!options) return str;\n\n if (options.maxAge !== undefined) {\n if (!Number.isInteger(options.maxAge)) {\n throw new TypeError(`option maxAge is invalid: ${options.maxAge}`);\n }\n\n str += \"; Max-Age=\" + options.maxAge;\n }\n\n if (options.domain) {\n if (!domainValueRegExp.test(options.domain)) {\n throw new TypeError(`option domain is invalid: ${options.domain}`);\n }\n\n str += \"; Domain=\" + options.domain;\n }\n\n if (options.path) {\n if (!pathValueRegExp.test(options.path)) {\n throw new TypeError(`option path is invalid: ${options.path}`);\n }\n\n str += \"; Path=\" + options.path;\n }\n\n if (options.expires) {\n if (\n !isDate(options.expires) ||\n !Number.isFinite(options.expires.valueOf())\n ) {\n throw new TypeError(`option expires is invalid: ${options.expires}`);\n }\n\n str += \"; Expires=\" + options.expires.toUTCString();\n }\n\n if (options.httpOnly) {\n str += \"; HttpOnly\";\n }\n\n if (options.secure) {\n str += \"; Secure\";\n }\n\n if (options.partitioned) {\n str += \"; Partitioned\";\n }\n\n if (options.priority) {\n const priority =\n typeof options.priority === \"string\"\n ? options.priority.toLowerCase()\n : undefined;\n switch (priority) {\n case \"low\":\n str += \"; Priority=Low\";\n break;\n case \"medium\":\n str += \"; Priority=Medium\";\n break;\n case \"high\":\n str += \"; Priority=High\";\n break;\n default:\n throw new TypeError(`option priority is invalid: ${options.priority}`);\n }\n }\n\n if (options.sameSite) {\n const sameSite =\n typeof options.sameSite === \"string\"\n ? options.sameSite.toLowerCase()\n : options.sameSite;\n switch (sameSite) {\n case true:\n case \"strict\":\n str += \"; SameSite=Strict\";\n break;\n case \"lax\":\n str += \"; SameSite=Lax\";\n break;\n case \"none\":\n str += \"; SameSite=None\";\n break;\n default:\n throw new TypeError(`option sameSite is invalid: ${options.sameSite}`);\n }\n }\n\n return str;\n}\n\n/**\n * URL-decode string value. Optimized to skip native call when no %.\n */\nfunction decode(str: string): string {\n if (str.indexOf(\"%\") === -1) return str;\n\n try {\n return decodeURIComponent(str);\n } catch (e) {\n return str;\n }\n}\n\n/**\n * Determine if value is a Date.\n */\nfunction isDate(val: any): val is Date {\n return __toString.call(val) === \"[object Date]\";\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/cookie/package.json b/node_modules/cookie/package.json
deleted file mode 100644
index 64fe124..0000000
--- a/node_modules/cookie/package.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "name": "cookie",
- "version": "1.0.2",
- "description": "HTTP server cookie parsing and serialization",
- "keywords": [
- "cookie",
- "cookies"
- ],
- "repository": "jshttp/cookie",
- "license": "MIT",
- "author": "Roman Shtylman ",
- "contributors": [
- "Douglas Christopher Wilson "
- ],
- "main": "dist/index.js",
- "types": "dist/index.d.ts",
- "files": [
- "dist/"
- ],
- "scripts": {
- "bench": "vitest bench",
- "build": "ts-scripts build",
- "format": "ts-scripts format",
- "prepare": "ts-scripts install",
- "prepublishOnly": "npm run build",
- "specs": "ts-scripts specs",
- "test": "ts-scripts test"
- },
- "devDependencies": {
- "@borderless/ts-scripts": "^0.15.0",
- "@vitest/coverage-v8": "^2.1.2",
- "top-sites": "1.1.194",
- "typescript": "^5.6.2",
- "vitest": "^2.1.2"
- },
- "engines": {
- "node": ">=18"
- },
- "ts-scripts": {
- "project": "tsconfig.build.json"
- }
-}
diff --git a/node_modules/react-dom/LICENSE b/node_modules/react-dom/LICENSE
deleted file mode 100644
index b93be90..0000000
--- a/node_modules/react-dom/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) Meta Platforms, Inc. and affiliates.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/node_modules/react-dom/README.md b/node_modules/react-dom/README.md
deleted file mode 100644
index b078f19..0000000
--- a/node_modules/react-dom/README.md
+++ /dev/null
@@ -1,60 +0,0 @@
-# `react-dom`
-
-This package serves as the entry point to the DOM and server renderers for React. It is intended to be paired with the generic React package, which is shipped as `react` to npm.
-
-## Installation
-
-```sh
-npm install react react-dom
-```
-
-## Usage
-
-### In the browser
-
-```js
-import { createRoot } from 'react-dom/client';
-
-function App() {
- return Hello World
;
-}
-
-const root = createRoot(document.getElementById('root'));
-root.render( );
-```
-
-### On the server
-
-```js
-import { renderToPipeableStream } from 'react-dom/server';
-
-function App() {
- return Hello World
;
-}
-
-function handleRequest(res) {
- // ... in your server handler ...
- const stream = renderToPipeableStream( , {
- onShellReady() {
- res.statusCode = 200;
- res.setHeader('Content-type', 'text/html');
- stream.pipe(res);
- },
- // ...
- });
-}
-```
-
-## API
-
-### `react-dom`
-
-See https://react.dev/reference/react-dom
-
-### `react-dom/client`
-
-See https://react.dev/reference/react-dom/client
-
-### `react-dom/server`
-
-See https://react.dev/reference/react-dom/server
diff --git a/node_modules/react-dom/cjs/react-dom-client.development.js b/node_modules/react-dom/cjs/react-dom-client.development.js
deleted file mode 100644
index 92b41f7..0000000
--- a/node_modules/react-dom/cjs/react-dom-client.development.js
+++ /dev/null
@@ -1,24993 +0,0 @@
-/**
- * @license React
- * react-dom-client.development.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.
- */
-
-/*
- Modernizr 3.0.0pre (Custom Build) | MIT
-*/
-"use strict";
-"production" !== process.env.NODE_ENV &&
- (function () {
- function findHook(fiber, id) {
- for (fiber = fiber.memoizedState; null !== fiber && 0 < id; )
- (fiber = fiber.next), id--;
- return fiber;
- }
- function copyWithSetImpl(obj, path, index, value) {
- if (index >= path.length) return value;
- var key = path[index],
- updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
- updated[key] = copyWithSetImpl(obj[key], path, index + 1, value);
- return updated;
- }
- function copyWithRename(obj, oldPath, newPath) {
- if (oldPath.length !== newPath.length)
- console.warn("copyWithRename() expects paths of the same length");
- else {
- for (var i = 0; i < newPath.length - 1; i++)
- if (oldPath[i] !== newPath[i]) {
- console.warn(
- "copyWithRename() expects paths to be the same except for the deepest key"
- );
- return;
- }
- return copyWithRenameImpl(obj, oldPath, newPath, 0);
- }
- }
- function copyWithRenameImpl(obj, oldPath, newPath, index) {
- var oldKey = oldPath[index],
- updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
- index + 1 === oldPath.length
- ? ((updated[newPath[index]] = updated[oldKey]),
- isArrayImpl(updated)
- ? updated.splice(oldKey, 1)
- : delete updated[oldKey])
- : (updated[oldKey] = copyWithRenameImpl(
- obj[oldKey],
- oldPath,
- newPath,
- index + 1
- ));
- return updated;
- }
- function copyWithDeleteImpl(obj, path, index) {
- var key = path[index],
- updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
- if (index + 1 === path.length)
- return (
- isArrayImpl(updated) ? updated.splice(key, 1) : delete updated[key],
- updated
- );
- updated[key] = copyWithDeleteImpl(obj[key], path, index + 1);
- return updated;
- }
- function shouldSuspendImpl() {
- return !1;
- }
- function shouldErrorImpl() {
- return null;
- }
- function warnForMissingKey() {}
- function warnInvalidHookAccess() {
- console.error(
- "Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks"
- );
- }
- function warnInvalidContextAccess() {
- console.error(
- "Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."
- );
- }
- function noop$2() {}
- function setToSortedString(set) {
- var array = [];
- set.forEach(function (value) {
- array.push(value);
- });
- return array.sort().join(", ");
- }
- function createFiber(tag, pendingProps, key, mode) {
- return new FiberNode(tag, pendingProps, key, mode);
- }
- function scheduleRoot(root, element) {
- root.context === emptyContextObject &&
- (updateContainerImpl(root.current, 2, element, root, null, null),
- flushSyncWork$1());
- }
- function scheduleRefresh(root, update) {
- if (null !== resolveFamily) {
- var staleFamilies = update.staleFamilies;
- update = update.updatedFamilies;
- flushPendingEffects();
- scheduleFibersWithFamiliesRecursively(
- root.current,
- update,
- staleFamilies
- );
- flushSyncWork$1();
- }
- }
- function setRefreshHandler(handler) {
- resolveFamily = handler;
- }
- function isValidContainer(node) {
- return !(
- !node ||
- (1 !== node.nodeType && 9 !== node.nodeType && 11 !== node.nodeType)
- );
- }
- function getNearestMountedFiber(fiber) {
- var node = fiber,
- nearestMounted = fiber;
- if (fiber.alternate) for (; node.return; ) node = node.return;
- else {
- fiber = node;
- do
- (node = fiber),
- 0 !== (node.flags & 4098) && (nearestMounted = node.return),
- (fiber = node.return);
- while (fiber);
- }
- return 3 === node.tag ? nearestMounted : null;
- }
- function getSuspenseInstanceFromFiber(fiber) {
- if (13 === fiber.tag) {
- var suspenseState = fiber.memoizedState;
- null === suspenseState &&
- ((fiber = fiber.alternate),
- null !== fiber && (suspenseState = fiber.memoizedState));
- if (null !== suspenseState) return suspenseState.dehydrated;
- }
- return null;
- }
- function assertIsMounted(fiber) {
- if (getNearestMountedFiber(fiber) !== fiber)
- throw Error("Unable to find node on an unmounted component.");
- }
- function findCurrentFiberUsingSlowPath(fiber) {
- var alternate = fiber.alternate;
- if (!alternate) {
- alternate = getNearestMountedFiber(fiber);
- if (null === alternate)
- throw Error("Unable to find node on an unmounted component.");
- return alternate !== fiber ? null : fiber;
- }
- for (var a = fiber, b = alternate; ; ) {
- var parentA = a.return;
- if (null === parentA) break;
- var parentB = parentA.alternate;
- if (null === parentB) {
- b = parentA.return;
- if (null !== b) {
- a = b;
- continue;
- }
- break;
- }
- if (parentA.child === parentB.child) {
- for (parentB = parentA.child; parentB; ) {
- if (parentB === a) return assertIsMounted(parentA), fiber;
- if (parentB === b) return assertIsMounted(parentA), alternate;
- parentB = parentB.sibling;
- }
- throw Error("Unable to find node on an unmounted component.");
- }
- if (a.return !== b.return) (a = parentA), (b = parentB);
- else {
- for (var didFindChild = !1, _child = parentA.child; _child; ) {
- if (_child === a) {
- didFindChild = !0;
- a = parentA;
- b = parentB;
- break;
- }
- if (_child === b) {
- didFindChild = !0;
- b = parentA;
- a = parentB;
- break;
- }
- _child = _child.sibling;
- }
- if (!didFindChild) {
- for (_child = parentB.child; _child; ) {
- if (_child === a) {
- didFindChild = !0;
- a = parentB;
- b = parentA;
- break;
- }
- if (_child === b) {
- didFindChild = !0;
- b = parentB;
- a = parentA;
- break;
- }
- _child = _child.sibling;
- }
- if (!didFindChild)
- throw Error(
- "Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue."
- );
- }
- }
- if (a.alternate !== b)
- throw Error(
- "Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue."
- );
- }
- if (3 !== a.tag)
- throw Error("Unable to find node on an unmounted component.");
- return a.stateNode.current === a ? fiber : alternate;
- }
- function findCurrentHostFiberImpl(node) {
- var tag = node.tag;
- if (5 === tag || 26 === tag || 27 === tag || 6 === tag) return node;
- for (node = node.child; null !== node; ) {
- tag = findCurrentHostFiberImpl(node);
- if (null !== tag) return tag;
- node = node.sibling;
- }
- return null;
- }
- function getIteratorFn(maybeIterable) {
- if (null === maybeIterable || "object" !== typeof maybeIterable)
- return null;
- maybeIterable =
- (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||
- maybeIterable["@@iterator"];
- return "function" === typeof maybeIterable ? maybeIterable : null;
- }
- function getComponentNameFromType(type) {
- if (null == type) return null;
- if ("function" === typeof type)
- return type.$$typeof === REACT_CLIENT_REFERENCE
- ? null
- : type.displayName || type.name || null;
- if ("string" === typeof type) return type;
- switch (type) {
- case REACT_FRAGMENT_TYPE:
- return "Fragment";
- case REACT_PROFILER_TYPE:
- return "Profiler";
- case REACT_STRICT_MODE_TYPE:
- return "StrictMode";
- case REACT_SUSPENSE_TYPE:
- return "Suspense";
- case REACT_SUSPENSE_LIST_TYPE:
- return "SuspenseList";
- case REACT_ACTIVITY_TYPE:
- return "Activity";
- }
- if ("object" === typeof type)
- switch (
- ("number" === typeof type.tag &&
- console.error(
- "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
- ),
- type.$$typeof)
- ) {
- case REACT_PORTAL_TYPE:
- return "Portal";
- case REACT_CONTEXT_TYPE:
- return (type.displayName || "Context") + ".Provider";
- case REACT_CONSUMER_TYPE:
- return (type._context.displayName || "Context") + ".Consumer";
- case REACT_FORWARD_REF_TYPE:
- var innerType = type.render;
- type = type.displayName;
- type ||
- ((type = innerType.displayName || innerType.name || ""),
- (type = "" !== type ? "ForwardRef(" + type + ")" : "ForwardRef"));
- return type;
- case REACT_MEMO_TYPE:
- return (
- (innerType = type.displayName || null),
- null !== innerType
- ? innerType
- : getComponentNameFromType(type.type) || "Memo"
- );
- case REACT_LAZY_TYPE:
- innerType = type._payload;
- type = type._init;
- try {
- return getComponentNameFromType(type(innerType));
- } catch (x) {}
- }
- return null;
- }
- function getComponentNameFromOwner(owner) {
- return "number" === typeof owner.tag
- ? getComponentNameFromFiber(owner)
- : "string" === typeof owner.name
- ? owner.name
- : null;
- }
- function getComponentNameFromFiber(fiber) {
- var type = fiber.type;
- switch (fiber.tag) {
- case 31:
- return "Activity";
- case 24:
- return "Cache";
- case 9:
- return (type._context.displayName || "Context") + ".Consumer";
- case 10:
- return (type.displayName || "Context") + ".Provider";
- case 18:
- return "DehydratedFragment";
- case 11:
- return (
- (fiber = type.render),
- (fiber = fiber.displayName || fiber.name || ""),
- type.displayName ||
- ("" !== fiber ? "ForwardRef(" + fiber + ")" : "ForwardRef")
- );
- case 7:
- return "Fragment";
- case 26:
- case 27:
- case 5:
- return type;
- case 4:
- return "Portal";
- case 3:
- return "Root";
- case 6:
- return "Text";
- case 16:
- return getComponentNameFromType(type);
- case 8:
- return type === REACT_STRICT_MODE_TYPE ? "StrictMode" : "Mode";
- case 22:
- return "Offscreen";
- case 12:
- return "Profiler";
- case 21:
- return "Scope";
- case 13:
- return "Suspense";
- case 19:
- return "SuspenseList";
- case 25:
- return "TracingMarker";
- case 1:
- case 0:
- case 14:
- case 15:
- if ("function" === typeof type)
- return type.displayName || type.name || null;
- if ("string" === typeof type) return type;
- break;
- case 29:
- type = fiber._debugInfo;
- if (null != type)
- for (var i = type.length - 1; 0 <= i; i--)
- if ("string" === typeof type[i].name) return type[i].name;
- if (null !== fiber.return)
- return getComponentNameFromFiber(fiber.return);
- }
- return null;
- }
- function createCursor(defaultValue) {
- return { current: defaultValue };
- }
- function pop(cursor, fiber) {
- 0 > index$jscomp$0
- ? console.error("Unexpected pop.")
- : (fiber !== fiberStack[index$jscomp$0] &&
- console.error("Unexpected Fiber popped."),
- (cursor.current = valueStack[index$jscomp$0]),
- (valueStack[index$jscomp$0] = null),
- (fiberStack[index$jscomp$0] = null),
- index$jscomp$0--);
- }
- function push(cursor, value, fiber) {
- index$jscomp$0++;
- valueStack[index$jscomp$0] = cursor.current;
- fiberStack[index$jscomp$0] = fiber;
- cursor.current = value;
- }
- function requiredContext(c) {
- null === c &&
- console.error(
- "Expected host context to exist. This error is likely caused by a bug in React. Please file an issue."
- );
- return c;
- }
- function pushHostContainer(fiber, nextRootInstance) {
- push(rootInstanceStackCursor, nextRootInstance, fiber);
- push(contextFiberStackCursor, fiber, fiber);
- push(contextStackCursor, null, fiber);
- var nextRootContext = nextRootInstance.nodeType;
- switch (nextRootContext) {
- case 9:
- case 11:
- nextRootContext = 9 === nextRootContext ? "#document" : "#fragment";
- nextRootInstance = (nextRootInstance =
- nextRootInstance.documentElement)
- ? (nextRootInstance = nextRootInstance.namespaceURI)
- ? getOwnHostContext(nextRootInstance)
- : HostContextNamespaceNone
- : HostContextNamespaceNone;
- break;
- default:
- if (
- ((nextRootContext = nextRootInstance.tagName),
- (nextRootInstance = nextRootInstance.namespaceURI))
- )
- (nextRootInstance = getOwnHostContext(nextRootInstance)),
- (nextRootInstance = getChildHostContextProd(
- nextRootInstance,
- nextRootContext
- ));
- else
- switch (nextRootContext) {
- case "svg":
- nextRootInstance = HostContextNamespaceSvg;
- break;
- case "math":
- nextRootInstance = HostContextNamespaceMath;
- break;
- default:
- nextRootInstance = HostContextNamespaceNone;
- }
- }
- nextRootContext = nextRootContext.toLowerCase();
- nextRootContext = updatedAncestorInfoDev(null, nextRootContext);
- nextRootContext = {
- context: nextRootInstance,
- ancestorInfo: nextRootContext
- };
- pop(contextStackCursor, fiber);
- push(contextStackCursor, nextRootContext, fiber);
- }
- function popHostContainer(fiber) {
- pop(contextStackCursor, fiber);
- pop(contextFiberStackCursor, fiber);
- pop(rootInstanceStackCursor, fiber);
- }
- function getHostContext() {
- return requiredContext(contextStackCursor.current);
- }
- function pushHostContext(fiber) {
- null !== fiber.memoizedState &&
- push(hostTransitionProviderCursor, fiber, fiber);
- var context = requiredContext(contextStackCursor.current);
- var type = fiber.type;
- var nextContext = getChildHostContextProd(context.context, type);
- type = updatedAncestorInfoDev(context.ancestorInfo, type);
- nextContext = { context: nextContext, ancestorInfo: type };
- context !== nextContext &&
- (push(contextFiberStackCursor, fiber, fiber),
- push(contextStackCursor, nextContext, fiber));
- }
- function popHostContext(fiber) {
- contextFiberStackCursor.current === fiber &&
- (pop(contextStackCursor, fiber), pop(contextFiberStackCursor, fiber));
- hostTransitionProviderCursor.current === fiber &&
- (pop(hostTransitionProviderCursor, fiber),
- (HostTransitionContext._currentValue = NotPendingTransition));
- }
- function typeName(value) {
- return (
- ("function" === typeof Symbol &&
- Symbol.toStringTag &&
- value[Symbol.toStringTag]) ||
- value.constructor.name ||
- "Object"
- );
- }
- function willCoercionThrow(value) {
- try {
- return testStringCoercion(value), !1;
- } catch (e) {
- return !0;
- }
- }
- function testStringCoercion(value) {
- return "" + value;
- }
- function checkAttributeStringCoercion(value, attributeName) {
- if (willCoercionThrow(value))
- return (
- console.error(
- "The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.",
- attributeName,
- typeName(value)
- ),
- testStringCoercion(value)
- );
- }
- function checkCSSPropertyStringCoercion(value, propName) {
- if (willCoercionThrow(value))
- return (
- console.error(
- "The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.",
- propName,
- typeName(value)
- ),
- testStringCoercion(value)
- );
- }
- function checkFormFieldValueStringCoercion(value) {
- if (willCoercionThrow(value))
- return (
- console.error(
- "Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before using it here.",
- typeName(value)
- ),
- testStringCoercion(value)
- );
- }
- function injectInternals(internals) {
- if ("undefined" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) return !1;
- var hook = __REACT_DEVTOOLS_GLOBAL_HOOK__;
- if (hook.isDisabled) return !0;
- if (!hook.supportsFiber)
- return (
- console.error(
- "The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://react.dev/link/react-devtools"
- ),
- !0
- );
- try {
- (rendererID = hook.inject(internals)), (injectedHook = hook);
- } catch (err) {
- console.error("React instrumentation encountered an error: %s.", err);
- }
- return hook.checkDCE ? !0 : !1;
- }
- function setIsStrictModeForDevtools(newIsStrictMode) {
- "function" === typeof log$1 &&
- unstable_setDisableYieldValue(newIsStrictMode);
- if (injectedHook && "function" === typeof injectedHook.setStrictMode)
- try {
- injectedHook.setStrictMode(rendererID, newIsStrictMode);
- } catch (err) {
- hasLoggedError ||
- ((hasLoggedError = !0),
- console.error(
- "React instrumentation encountered an error: %s",
- err
- ));
- }
- }
- function injectProfilingHooks(profilingHooks) {
- injectedProfilingHooks = profilingHooks;
- }
- function markCommitStopped() {
- null !== injectedProfilingHooks &&
- "function" === typeof injectedProfilingHooks.markCommitStopped &&
- injectedProfilingHooks.markCommitStopped();
- }
- function markComponentRenderStarted(fiber) {
- null !== injectedProfilingHooks &&
- "function" ===
- typeof injectedProfilingHooks.markComponentRenderStarted &&
- injectedProfilingHooks.markComponentRenderStarted(fiber);
- }
- function markComponentRenderStopped() {
- null !== injectedProfilingHooks &&
- "function" ===
- typeof injectedProfilingHooks.markComponentRenderStopped &&
- injectedProfilingHooks.markComponentRenderStopped();
- }
- function markRenderStarted(lanes) {
- null !== injectedProfilingHooks &&
- "function" === typeof injectedProfilingHooks.markRenderStarted &&
- injectedProfilingHooks.markRenderStarted(lanes);
- }
- function markRenderStopped() {
- null !== injectedProfilingHooks &&
- "function" === typeof injectedProfilingHooks.markRenderStopped &&
- injectedProfilingHooks.markRenderStopped();
- }
- function markStateUpdateScheduled(fiber, lane) {
- null !== injectedProfilingHooks &&
- "function" === typeof injectedProfilingHooks.markStateUpdateScheduled &&
- injectedProfilingHooks.markStateUpdateScheduled(fiber, lane);
- }
- function clz32Fallback(x) {
- x >>>= 0;
- return 0 === x ? 32 : (31 - ((log(x) / LN2) | 0)) | 0;
- }
- function getLabelForLane(lane) {
- if (lane & 1) return "SyncHydrationLane";
- if (lane & 2) return "Sync";
- if (lane & 4) return "InputContinuousHydration";
- if (lane & 8) return "InputContinuous";
- if (lane & 16) return "DefaultHydration";
- if (lane & 32) return "Default";
- if (lane & 128) return "TransitionHydration";
- if (lane & 4194048) return "Transition";
- if (lane & 62914560) return "Retry";
- if (lane & 67108864) return "SelectiveHydration";
- if (lane & 134217728) return "IdleHydration";
- if (lane & 268435456) return "Idle";
- if (lane & 536870912) return "Offscreen";
- if (lane & 1073741824) return "Deferred";
- }
- function getHighestPriorityLanes(lanes) {
- var pendingSyncLanes = lanes & 42;
- if (0 !== pendingSyncLanes) return pendingSyncLanes;
- switch (lanes & -lanes) {
- case 1:
- return 1;
- case 2:
- return 2;
- case 4:
- return 4;
- case 8:
- return 8;
- case 16:
- return 16;
- case 32:
- return 32;
- case 64:
- return 64;
- case 128:
- return 128;
- case 256:
- case 512:
- case 1024:
- case 2048:
- case 4096:
- case 8192:
- case 16384:
- case 32768:
- case 65536:
- case 131072:
- case 262144:
- case 524288:
- case 1048576:
- case 2097152:
- return lanes & 4194048;
- case 4194304:
- case 8388608:
- case 16777216:
- case 33554432:
- return lanes & 62914560;
- case 67108864:
- return 67108864;
- case 134217728:
- return 134217728;
- case 268435456:
- return 268435456;
- case 536870912:
- return 536870912;
- case 1073741824:
- return 0;
- default:
- return (
- console.error(
- "Should have found matching lanes. This is a bug in React."
- ),
- lanes
- );
- }
- }
- function getNextLanes(root, wipLanes, rootHasPendingCommit) {
- var pendingLanes = root.pendingLanes;
- if (0 === pendingLanes) return 0;
- var nextLanes = 0,
- suspendedLanes = root.suspendedLanes,
- pingedLanes = root.pingedLanes;
- root = root.warmLanes;
- var nonIdlePendingLanes = pendingLanes & 134217727;
- 0 !== nonIdlePendingLanes
- ? ((pendingLanes = nonIdlePendingLanes & ~suspendedLanes),
- 0 !== pendingLanes
- ? (nextLanes = getHighestPriorityLanes(pendingLanes))
- : ((pingedLanes &= nonIdlePendingLanes),
- 0 !== pingedLanes
- ? (nextLanes = getHighestPriorityLanes(pingedLanes))
- : rootHasPendingCommit ||
- ((rootHasPendingCommit = nonIdlePendingLanes & ~root),
- 0 !== rootHasPendingCommit &&
- (nextLanes =
- getHighestPriorityLanes(rootHasPendingCommit)))))
- : ((nonIdlePendingLanes = pendingLanes & ~suspendedLanes),
- 0 !== nonIdlePendingLanes
- ? (nextLanes = getHighestPriorityLanes(nonIdlePendingLanes))
- : 0 !== pingedLanes
- ? (nextLanes = getHighestPriorityLanes(pingedLanes))
- : rootHasPendingCommit ||
- ((rootHasPendingCommit = pendingLanes & ~root),
- 0 !== rootHasPendingCommit &&
- (nextLanes = getHighestPriorityLanes(rootHasPendingCommit))));
- return 0 === nextLanes
- ? 0
- : 0 !== wipLanes &&
- wipLanes !== nextLanes &&
- 0 === (wipLanes & suspendedLanes) &&
- ((suspendedLanes = nextLanes & -nextLanes),
- (rootHasPendingCommit = wipLanes & -wipLanes),
- suspendedLanes >= rootHasPendingCommit ||
- (32 === suspendedLanes && 0 !== (rootHasPendingCommit & 4194048)))
- ? wipLanes
- : nextLanes;
- }
- function checkIfRootIsPrerendering(root, renderLanes) {
- return (
- 0 ===
- (root.pendingLanes &
- ~(root.suspendedLanes & ~root.pingedLanes) &
- renderLanes)
- );
- }
- function computeExpirationTime(lane, currentTime) {
- switch (lane) {
- case 1:
- case 2:
- case 4:
- case 8:
- case 64:
- return currentTime + 250;
- case 16:
- case 32:
- case 128:
- case 256:
- case 512:
- case 1024:
- case 2048:
- case 4096:
- case 8192:
- case 16384:
- case 32768:
- case 65536:
- case 131072:
- case 262144:
- case 524288:
- case 1048576:
- case 2097152:
- return currentTime + 5e3;
- case 4194304:
- case 8388608:
- case 16777216:
- case 33554432:
- return -1;
- case 67108864:
- case 134217728:
- case 268435456:
- case 536870912:
- case 1073741824:
- return -1;
- default:
- return (
- console.error(
- "Should have found matching lanes. This is a bug in React."
- ),
- -1
- );
- }
- }
- function claimNextTransitionLane() {
- var lane = nextTransitionLane;
- nextTransitionLane <<= 1;
- 0 === (nextTransitionLane & 4194048) && (nextTransitionLane = 256);
- return lane;
- }
- function claimNextRetryLane() {
- var lane = nextRetryLane;
- nextRetryLane <<= 1;
- 0 === (nextRetryLane & 62914560) && (nextRetryLane = 4194304);
- return lane;
- }
- function createLaneMap(initial) {
- for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial);
- return laneMap;
- }
- function markRootUpdated$1(root, updateLane) {
- root.pendingLanes |= updateLane;
- 268435456 !== updateLane &&
- ((root.suspendedLanes = 0),
- (root.pingedLanes = 0),
- (root.warmLanes = 0));
- }
- function markRootFinished(
- root,
- finishedLanes,
- remainingLanes,
- spawnedLane,
- updatedLanes,
- suspendedRetryLanes
- ) {
- var previouslyPendingLanes = root.pendingLanes;
- root.pendingLanes = remainingLanes;
- root.suspendedLanes = 0;
- root.pingedLanes = 0;
- root.warmLanes = 0;
- root.expiredLanes &= remainingLanes;
- root.entangledLanes &= remainingLanes;
- root.errorRecoveryDisabledLanes &= remainingLanes;
- root.shellSuspendCounter = 0;
- var entanglements = root.entanglements,
- expirationTimes = root.expirationTimes,
- hiddenUpdates = root.hiddenUpdates;
- for (
- remainingLanes = previouslyPendingLanes & ~remainingLanes;
- 0 < remainingLanes;
-
- ) {
- var index = 31 - clz32(remainingLanes),
- lane = 1 << index;
- entanglements[index] = 0;
- expirationTimes[index] = -1;
- var hiddenUpdatesForLane = hiddenUpdates[index];
- if (null !== hiddenUpdatesForLane)
- for (
- hiddenUpdates[index] = null, index = 0;
- index < hiddenUpdatesForLane.length;
- index++
- ) {
- var update = hiddenUpdatesForLane[index];
- null !== update && (update.lane &= -536870913);
- }
- remainingLanes &= ~lane;
- }
- 0 !== spawnedLane && markSpawnedDeferredLane(root, spawnedLane, 0);
- 0 !== suspendedRetryLanes &&
- 0 === updatedLanes &&
- 0 !== root.tag &&
- (root.suspendedLanes |=
- suspendedRetryLanes & ~(previouslyPendingLanes & ~finishedLanes));
- }
- function markSpawnedDeferredLane(root, spawnedLane, entangledLanes) {
- root.pendingLanes |= spawnedLane;
- root.suspendedLanes &= ~spawnedLane;
- var spawnedLaneIndex = 31 - clz32(spawnedLane);
- root.entangledLanes |= spawnedLane;
- root.entanglements[spawnedLaneIndex] =
- root.entanglements[spawnedLaneIndex] |
- 1073741824 |
- (entangledLanes & 4194090);
- }
- function markRootEntangled(root, entangledLanes) {
- var rootEntangledLanes = (root.entangledLanes |= entangledLanes);
- for (root = root.entanglements; rootEntangledLanes; ) {
- var index = 31 - clz32(rootEntangledLanes),
- lane = 1 << index;
- (lane & entangledLanes) | (root[index] & entangledLanes) &&
- (root[index] |= entangledLanes);
- rootEntangledLanes &= ~lane;
- }
- }
- function getBumpedLaneForHydrationByLane(lane) {
- switch (lane) {
- case 2:
- lane = 1;
- break;
- case 8:
- lane = 4;
- break;
- case 32:
- lane = 16;
- break;
- case 256:
- case 512:
- case 1024:
- case 2048:
- case 4096:
- case 8192:
- case 16384:
- case 32768:
- case 65536:
- case 131072:
- case 262144:
- case 524288:
- case 1048576:
- case 2097152:
- case 4194304:
- case 8388608:
- case 16777216:
- case 33554432:
- lane = 128;
- break;
- case 268435456:
- lane = 134217728;
- break;
- default:
- lane = 0;
- }
- return lane;
- }
- function addFiberToLanesMap(root, fiber, lanes) {
- if (isDevToolsPresent)
- for (root = root.pendingUpdatersLaneMap; 0 < lanes; ) {
- var index = 31 - clz32(lanes),
- lane = 1 << index;
- root[index].add(fiber);
- lanes &= ~lane;
- }
- }
- function movePendingFibersToMemoized(root, lanes) {
- if (isDevToolsPresent)
- for (
- var pendingUpdatersLaneMap = root.pendingUpdatersLaneMap,
- memoizedUpdaters = root.memoizedUpdaters;
- 0 < lanes;
-
- ) {
- var index = 31 - clz32(lanes);
- root = 1 << index;
- index = pendingUpdatersLaneMap[index];
- 0 < index.size &&
- (index.forEach(function (fiber) {
- var alternate = fiber.alternate;
- (null !== alternate && memoizedUpdaters.has(alternate)) ||
- memoizedUpdaters.add(fiber);
- }),
- index.clear());
- lanes &= ~root;
- }
- }
- function lanesToEventPriority(lanes) {
- lanes &= -lanes;
- return 0 !== DiscreteEventPriority && DiscreteEventPriority < lanes
- ? 0 !== ContinuousEventPriority && ContinuousEventPriority < lanes
- ? 0 !== (lanes & 134217727)
- ? DefaultEventPriority
- : IdleEventPriority
- : ContinuousEventPriority
- : DiscreteEventPriority;
- }
- function resolveUpdatePriority() {
- var updatePriority = ReactDOMSharedInternals.p;
- if (0 !== updatePriority) return updatePriority;
- updatePriority = window.event;
- return void 0 === updatePriority
- ? DefaultEventPriority
- : getEventPriority(updatePriority.type);
- }
- function runWithPriority(priority, fn) {
- var previousPriority = ReactDOMSharedInternals.p;
- try {
- return (ReactDOMSharedInternals.p = priority), fn();
- } finally {
- ReactDOMSharedInternals.p = previousPriority;
- }
- }
- function detachDeletedInstance(node) {
- delete node[internalInstanceKey];
- delete node[internalPropsKey];
- delete node[internalEventHandlersKey];
- delete node[internalEventHandlerListenersKey];
- delete node[internalEventHandlesSetKey];
- }
- function getClosestInstanceFromNode(targetNode) {
- var targetInst = targetNode[internalInstanceKey];
- if (targetInst) return targetInst;
- for (var parentNode = targetNode.parentNode; parentNode; ) {
- if (
- (targetInst =
- parentNode[internalContainerInstanceKey] ||
- parentNode[internalInstanceKey])
- ) {
- parentNode = targetInst.alternate;
- if (
- null !== targetInst.child ||
- (null !== parentNode && null !== parentNode.child)
- )
- for (
- targetNode = getParentSuspenseInstance(targetNode);
- null !== targetNode;
-
- ) {
- if ((parentNode = targetNode[internalInstanceKey]))
- return parentNode;
- targetNode = getParentSuspenseInstance(targetNode);
- }
- return targetInst;
- }
- targetNode = parentNode;
- parentNode = targetNode.parentNode;
- }
- return null;
- }
- function getInstanceFromNode(node) {
- if (
- (node = node[internalInstanceKey] || node[internalContainerInstanceKey])
- ) {
- var tag = node.tag;
- if (
- 5 === tag ||
- 6 === tag ||
- 13 === tag ||
- 26 === tag ||
- 27 === tag ||
- 3 === tag
- )
- return node;
- }
- return null;
- }
- function getNodeFromInstance(inst) {
- var tag = inst.tag;
- if (5 === tag || 26 === tag || 27 === tag || 6 === tag)
- return inst.stateNode;
- throw Error("getNodeFromInstance: Invalid argument.");
- }
- function getResourcesFromRoot(root) {
- var resources = root[internalRootNodeResourcesKey];
- resources ||
- (resources = root[internalRootNodeResourcesKey] =
- { hoistableStyles: new Map(), hoistableScripts: new Map() });
- return resources;
- }
- function markNodeAsHoistable(node) {
- node[internalHoistableMarker] = !0;
- }
- function registerTwoPhaseEvent(registrationName, dependencies) {
- registerDirectEvent(registrationName, dependencies);
- registerDirectEvent(registrationName + "Capture", dependencies);
- }
- function registerDirectEvent(registrationName, dependencies) {
- registrationNameDependencies[registrationName] &&
- console.error(
- "EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.",
- registrationName
- );
- registrationNameDependencies[registrationName] = dependencies;
- var lowerCasedName = registrationName.toLowerCase();
- possibleRegistrationNames[lowerCasedName] = registrationName;
- "onDoubleClick" === registrationName &&
- (possibleRegistrationNames.ondblclick = registrationName);
- for (
- registrationName = 0;
- registrationName < dependencies.length;
- registrationName++
- )
- allNativeEvents.add(dependencies[registrationName]);
- }
- function checkControlledValueProps(tagName, props) {
- hasReadOnlyValue[props.type] ||
- props.onChange ||
- props.onInput ||
- props.readOnly ||
- props.disabled ||
- null == props.value ||
- ("select" === tagName
- ? console.error(
- "You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set `onChange`."
- )
- : console.error(
- "You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`."
- ));
- props.onChange ||
- props.readOnly ||
- props.disabled ||
- null == props.checked ||
- console.error(
- "You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`."
- );
- }
- function isAttributeNameSafe(attributeName) {
- if (hasOwnProperty.call(validatedAttributeNameCache, attributeName))
- return !0;
- if (hasOwnProperty.call(illegalAttributeNameCache, attributeName))
- return !1;
- if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName))
- return (validatedAttributeNameCache[attributeName] = !0);
- illegalAttributeNameCache[attributeName] = !0;
- console.error("Invalid attribute name: `%s`", attributeName);
- return !1;
- }
- function getValueForAttributeOnCustomComponent(node, name, expected) {
- if (isAttributeNameSafe(name)) {
- if (!node.hasAttribute(name)) {
- switch (typeof expected) {
- case "symbol":
- case "object":
- return expected;
- case "function":
- return expected;
- case "boolean":
- if (!1 === expected) return expected;
- }
- return void 0 === expected ? void 0 : null;
- }
- node = node.getAttribute(name);
- if ("" === node && !0 === expected) return !0;
- checkAttributeStringCoercion(expected, name);
- return node === "" + expected ? expected : node;
- }
- }
- function setValueForAttribute(node, name, value) {
- if (isAttributeNameSafe(name))
- if (null === value) node.removeAttribute(name);
- else {
- switch (typeof value) {
- case "undefined":
- case "function":
- case "symbol":
- node.removeAttribute(name);
- return;
- case "boolean":
- var prefix = name.toLowerCase().slice(0, 5);
- if ("data-" !== prefix && "aria-" !== prefix) {
- node.removeAttribute(name);
- return;
- }
- }
- checkAttributeStringCoercion(value, name);
- node.setAttribute(name, "" + value);
- }
- }
- function setValueForKnownAttribute(node, name, value) {
- if (null === value) node.removeAttribute(name);
- else {
- switch (typeof value) {
- case "undefined":
- case "function":
- case "symbol":
- case "boolean":
- node.removeAttribute(name);
- return;
- }
- checkAttributeStringCoercion(value, name);
- node.setAttribute(name, "" + value);
- }
- }
- function setValueForNamespacedAttribute(node, namespace, name, value) {
- if (null === value) node.removeAttribute(name);
- else {
- switch (typeof value) {
- case "undefined":
- case "function":
- case "symbol":
- case "boolean":
- node.removeAttribute(name);
- return;
- }
- checkAttributeStringCoercion(value, name);
- node.setAttributeNS(namespace, name, "" + value);
- }
- }
- function disabledLog() {}
- function disableLogs() {
- if (0 === disabledDepth) {
- prevLog = console.log;
- prevInfo = console.info;
- prevWarn = console.warn;
- prevError = console.error;
- prevGroup = console.group;
- prevGroupCollapsed = console.groupCollapsed;
- prevGroupEnd = console.groupEnd;
- var props = {
- configurable: !0,
- enumerable: !0,
- value: disabledLog,
- writable: !0
- };
- Object.defineProperties(console, {
- info: props,
- log: props,
- warn: props,
- error: props,
- group: props,
- groupCollapsed: props,
- groupEnd: props
- });
- }
- disabledDepth++;
- }
- function reenableLogs() {
- disabledDepth--;
- if (0 === disabledDepth) {
- var props = { configurable: !0, enumerable: !0, writable: !0 };
- Object.defineProperties(console, {
- log: assign({}, props, { value: prevLog }),
- info: assign({}, props, { value: prevInfo }),
- warn: assign({}, props, { value: prevWarn }),
- error: assign({}, props, { value: prevError }),
- group: assign({}, props, { value: prevGroup }),
- groupCollapsed: assign({}, props, { value: prevGroupCollapsed }),
- groupEnd: assign({}, props, { value: prevGroupEnd })
- });
- }
- 0 > disabledDepth &&
- console.error(
- "disabledDepth fell below zero. This is a bug in React. Please file an issue."
- );
- }
- function describeBuiltInComponentFrame(name) {
- if (void 0 === prefix)
- try {
- throw Error();
- } catch (x) {
- var match = x.stack.trim().match(/\n( *(at )?)/);
- prefix = (match && match[1]) || "";
- suffix =
- -1 < x.stack.indexOf("\n at")
- ? " ()"
- : -1 < x.stack.indexOf("@")
- ? "@unknown:0:0"
- : "";
- }
- return "\n" + prefix + name + suffix;
- }
- function describeNativeComponentFrame(fn, construct) {
- if (!fn || reentry) return "";
- var frame = componentFrameCache.get(fn);
- if (void 0 !== frame) return frame;
- reentry = !0;
- frame = Error.prepareStackTrace;
- Error.prepareStackTrace = void 0;
- var previousDispatcher = null;
- previousDispatcher = ReactSharedInternals.H;
- ReactSharedInternals.H = null;
- disableLogs();
- try {
- var RunInRootFrame = {
- DetermineComponentFrameRoot: function () {
- try {
- if (construct) {
- var Fake = function () {
- throw Error();
- };
- Object.defineProperty(Fake.prototype, "props", {
- set: function () {
- throw Error();
- }
- });
- if ("object" === typeof Reflect && Reflect.construct) {
- try {
- Reflect.construct(Fake, []);
- } catch (x) {
- var control = x;
- }
- Reflect.construct(fn, [], Fake);
- } else {
- try {
- Fake.call();
- } catch (x$0) {
- control = x$0;
- }
- fn.call(Fake.prototype);
- }
- } else {
- try {
- throw Error();
- } catch (x$1) {
- control = x$1;
- }
- (Fake = fn()) &&
- "function" === typeof Fake.catch &&
- Fake.catch(function () {});
- }
- } catch (sample) {
- if (sample && control && "string" === typeof sample.stack)
- return [sample.stack, control.stack];
- }
- return [null, null];
- }
- };
- RunInRootFrame.DetermineComponentFrameRoot.displayName =
- "DetermineComponentFrameRoot";
- var namePropDescriptor = Object.getOwnPropertyDescriptor(
- RunInRootFrame.DetermineComponentFrameRoot,
- "name"
- );
- namePropDescriptor &&
- namePropDescriptor.configurable &&
- Object.defineProperty(
- RunInRootFrame.DetermineComponentFrameRoot,
- "name",
- { value: "DetermineComponentFrameRoot" }
- );
- var _RunInRootFrame$Deter =
- RunInRootFrame.DetermineComponentFrameRoot(),
- sampleStack = _RunInRootFrame$Deter[0],
- controlStack = _RunInRootFrame$Deter[1];
- if (sampleStack && controlStack) {
- var sampleLines = sampleStack.split("\n"),
- controlLines = controlStack.split("\n");
- for (
- _RunInRootFrame$Deter = namePropDescriptor = 0;
- namePropDescriptor < sampleLines.length &&
- !sampleLines[namePropDescriptor].includes(
- "DetermineComponentFrameRoot"
- );
-
- )
- namePropDescriptor++;
- for (
- ;
- _RunInRootFrame$Deter < controlLines.length &&
- !controlLines[_RunInRootFrame$Deter].includes(
- "DetermineComponentFrameRoot"
- );
-
- )
- _RunInRootFrame$Deter++;
- if (
- namePropDescriptor === sampleLines.length ||
- _RunInRootFrame$Deter === controlLines.length
- )
- for (
- namePropDescriptor = sampleLines.length - 1,
- _RunInRootFrame$Deter = controlLines.length - 1;
- 1 <= namePropDescriptor &&
- 0 <= _RunInRootFrame$Deter &&
- sampleLines[namePropDescriptor] !==
- controlLines[_RunInRootFrame$Deter];
-
- )
- _RunInRootFrame$Deter--;
- for (
- ;
- 1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter;
- namePropDescriptor--, _RunInRootFrame$Deter--
- )
- if (
- sampleLines[namePropDescriptor] !==
- controlLines[_RunInRootFrame$Deter]
- ) {
- if (1 !== namePropDescriptor || 1 !== _RunInRootFrame$Deter) {
- do
- if (
- (namePropDescriptor--,
- _RunInRootFrame$Deter--,
- 0 > _RunInRootFrame$Deter ||
- sampleLines[namePropDescriptor] !==
- controlLines[_RunInRootFrame$Deter])
- ) {
- var _frame =
- "\n" +
- sampleLines[namePropDescriptor].replace(
- " at new ",
- " at "
- );
- fn.displayName &&
- _frame.includes("") &&
- (_frame = _frame.replace("", fn.displayName));
- "function" === typeof fn &&
- componentFrameCache.set(fn, _frame);
- return _frame;
- }
- while (1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter);
- }
- break;
- }
- }
- } finally {
- (reentry = !1),
- (ReactSharedInternals.H = previousDispatcher),
- reenableLogs(),
- (Error.prepareStackTrace = frame);
- }
- sampleLines = (sampleLines = fn ? fn.displayName || fn.name : "")
- ? describeBuiltInComponentFrame(sampleLines)
- : "";
- "function" === typeof fn && componentFrameCache.set(fn, sampleLines);
- return sampleLines;
- }
- function formatOwnerStack(error) {
- var prevPrepareStackTrace = Error.prepareStackTrace;
- Error.prepareStackTrace = void 0;
- error = error.stack;
- Error.prepareStackTrace = prevPrepareStackTrace;
- error.startsWith("Error: react-stack-top-frame\n") &&
- (error = error.slice(29));
- prevPrepareStackTrace = error.indexOf("\n");
- -1 !== prevPrepareStackTrace &&
- (error = error.slice(prevPrepareStackTrace + 1));
- prevPrepareStackTrace = error.indexOf("react_stack_bottom_frame");
- -1 !== prevPrepareStackTrace &&
- (prevPrepareStackTrace = error.lastIndexOf(
- "\n",
- prevPrepareStackTrace
- ));
- if (-1 !== prevPrepareStackTrace)
- error = error.slice(0, prevPrepareStackTrace);
- else return "";
- return error;
- }
- function describeFiber(fiber) {
- switch (fiber.tag) {
- case 26:
- case 27:
- case 5:
- return describeBuiltInComponentFrame(fiber.type);
- case 16:
- return describeBuiltInComponentFrame("Lazy");
- case 13:
- return describeBuiltInComponentFrame("Suspense");
- case 19:
- return describeBuiltInComponentFrame("SuspenseList");
- case 0:
- case 15:
- return describeNativeComponentFrame(fiber.type, !1);
- case 11:
- return describeNativeComponentFrame(fiber.type.render, !1);
- case 1:
- return describeNativeComponentFrame(fiber.type, !0);
- case 31:
- return describeBuiltInComponentFrame("Activity");
- default:
- return "";
- }
- }
- function getStackByFiberInDevAndProd(workInProgress) {
- try {
- var info = "";
- do {
- info += describeFiber(workInProgress);
- var debugInfo = workInProgress._debugInfo;
- if (debugInfo)
- for (var i = debugInfo.length - 1; 0 <= i; i--) {
- var entry = debugInfo[i];
- if ("string" === typeof entry.name) {
- var JSCompiler_temp_const = info,
- env = entry.env;
- var JSCompiler_inline_result = describeBuiltInComponentFrame(
- entry.name + (env ? " [" + env + "]" : "")
- );
- info = JSCompiler_temp_const + JSCompiler_inline_result;
- }
- }
- workInProgress = workInProgress.return;
- } while (workInProgress);
- return info;
- } catch (x) {
- return "\nError generating stack: " + x.message + "\n" + x.stack;
- }
- }
- function describeFunctionComponentFrameWithoutLineNumber(fn) {
- return (fn = fn ? fn.displayName || fn.name : "")
- ? describeBuiltInComponentFrame(fn)
- : "";
- }
- function getCurrentFiberOwnerNameInDevOrNull() {
- if (null === current) return null;
- var owner = current._debugOwner;
- return null != owner ? getComponentNameFromOwner(owner) : null;
- }
- function getCurrentFiberStackInDev() {
- if (null === current) return "";
- var workInProgress = current;
- try {
- var info = "";
- 6 === workInProgress.tag && (workInProgress = workInProgress.return);
- switch (workInProgress.tag) {
- case 26:
- case 27:
- case 5:
- info += describeBuiltInComponentFrame(workInProgress.type);
- break;
- case 13:
- info += describeBuiltInComponentFrame("Suspense");
- break;
- case 19:
- info += describeBuiltInComponentFrame("SuspenseList");
- break;
- case 31:
- info += describeBuiltInComponentFrame("Activity");
- break;
- case 30:
- case 0:
- case 15:
- case 1:
- workInProgress._debugOwner ||
- "" !== info ||
- (info += describeFunctionComponentFrameWithoutLineNumber(
- workInProgress.type
- ));
- break;
- case 11:
- workInProgress._debugOwner ||
- "" !== info ||
- (info += describeFunctionComponentFrameWithoutLineNumber(
- workInProgress.type.render
- ));
- }
- for (; workInProgress; )
- if ("number" === typeof workInProgress.tag) {
- var fiber = workInProgress;
- workInProgress = fiber._debugOwner;
- var debugStack = fiber._debugStack;
- workInProgress &&
- debugStack &&
- ("string" !== typeof debugStack &&
- (fiber._debugStack = debugStack = formatOwnerStack(debugStack)),
- "" !== debugStack && (info += "\n" + debugStack));
- } else if (null != workInProgress.debugStack) {
- var ownerStack = workInProgress.debugStack;
- (workInProgress = workInProgress.owner) &&
- ownerStack &&
- (info += "\n" + formatOwnerStack(ownerStack));
- } else break;
- var JSCompiler_inline_result = info;
- } catch (x) {
- JSCompiler_inline_result =
- "\nError generating stack: " + x.message + "\n" + x.stack;
- }
- return JSCompiler_inline_result;
- }
- function runWithFiberInDEV(fiber, callback, arg0, arg1, arg2, arg3, arg4) {
- var previousFiber = current;
- setCurrentFiber(fiber);
- try {
- return null !== fiber && fiber._debugTask
- ? fiber._debugTask.run(
- callback.bind(null, arg0, arg1, arg2, arg3, arg4)
- )
- : callback(arg0, arg1, arg2, arg3, arg4);
- } finally {
- setCurrentFiber(previousFiber);
- }
- throw Error(
- "runWithFiberInDEV should never be called in production. This is a bug in React."
- );
- }
- function setCurrentFiber(fiber) {
- ReactSharedInternals.getCurrentStack =
- null === fiber ? null : getCurrentFiberStackInDev;
- isRendering = !1;
- current = fiber;
- }
- function getToStringValue(value) {
- switch (typeof value) {
- case "bigint":
- case "boolean":
- case "number":
- case "string":
- case "undefined":
- return value;
- case "object":
- return checkFormFieldValueStringCoercion(value), value;
- default:
- return "";
- }
- }
- function isCheckable(elem) {
- var type = elem.type;
- return (
- (elem = elem.nodeName) &&
- "input" === elem.toLowerCase() &&
- ("checkbox" === type || "radio" === type)
- );
- }
- function trackValueOnNode(node) {
- var valueField = isCheckable(node) ? "checked" : "value",
- descriptor = Object.getOwnPropertyDescriptor(
- node.constructor.prototype,
- valueField
- );
- checkFormFieldValueStringCoercion(node[valueField]);
- var currentValue = "" + node[valueField];
- if (
- !node.hasOwnProperty(valueField) &&
- "undefined" !== typeof descriptor &&
- "function" === typeof descriptor.get &&
- "function" === typeof descriptor.set
- ) {
- var get = descriptor.get,
- set = descriptor.set;
- Object.defineProperty(node, valueField, {
- configurable: !0,
- get: function () {
- return get.call(this);
- },
- set: function (value) {
- checkFormFieldValueStringCoercion(value);
- currentValue = "" + value;
- set.call(this, value);
- }
- });
- Object.defineProperty(node, valueField, {
- enumerable: descriptor.enumerable
- });
- return {
- getValue: function () {
- return currentValue;
- },
- setValue: function (value) {
- checkFormFieldValueStringCoercion(value);
- currentValue = "" + value;
- },
- stopTracking: function () {
- node._valueTracker = null;
- delete node[valueField];
- }
- };
- }
- }
- function track(node) {
- node._valueTracker || (node._valueTracker = trackValueOnNode(node));
- }
- function updateValueIfChanged(node) {
- if (!node) return !1;
- var tracker = node._valueTracker;
- if (!tracker) return !0;
- var lastValue = tracker.getValue();
- var value = "";
- node &&
- (value = isCheckable(node)
- ? node.checked
- ? "true"
- : "false"
- : node.value);
- node = value;
- return node !== lastValue ? (tracker.setValue(node), !0) : !1;
- }
- function getActiveElement(doc) {
- doc = doc || ("undefined" !== typeof document ? document : void 0);
- if ("undefined" === typeof doc) return null;
- try {
- return doc.activeElement || doc.body;
- } catch (e) {
- return doc.body;
- }
- }
- function escapeSelectorAttributeValueInsideDoubleQuotes(value) {
- return value.replace(
- escapeSelectorAttributeValueInsideDoubleQuotesRegex,
- function (ch) {
- return "\\" + ch.charCodeAt(0).toString(16) + " ";
- }
- );
- }
- function validateInputProps(element, props) {
- void 0 === props.checked ||
- void 0 === props.defaultChecked ||
- didWarnCheckedDefaultChecked ||
- (console.error(
- "%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",
- getCurrentFiberOwnerNameInDevOrNull() || "A component",
- props.type
- ),
- (didWarnCheckedDefaultChecked = !0));
- void 0 === props.value ||
- void 0 === props.defaultValue ||
- didWarnValueDefaultValue$1 ||
- (console.error(
- "%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",
- getCurrentFiberOwnerNameInDevOrNull() || "A component",
- props.type
- ),
- (didWarnValueDefaultValue$1 = !0));
- }
- function updateInput(
- element,
- value,
- defaultValue,
- lastDefaultValue,
- checked,
- defaultChecked,
- type,
- name
- ) {
- element.name = "";
- null != type &&
- "function" !== typeof type &&
- "symbol" !== typeof type &&
- "boolean" !== typeof type
- ? (checkAttributeStringCoercion(type, "type"), (element.type = type))
- : element.removeAttribute("type");
- if (null != value)
- if ("number" === type) {
- if ((0 === value && "" === element.value) || element.value != value)
- element.value = "" + getToStringValue(value);
- } else
- element.value !== "" + getToStringValue(value) &&
- (element.value = "" + getToStringValue(value));
- else
- ("submit" !== type && "reset" !== type) ||
- element.removeAttribute("value");
- null != value
- ? setDefaultValue(element, type, getToStringValue(value))
- : null != defaultValue
- ? setDefaultValue(element, type, getToStringValue(defaultValue))
- : null != lastDefaultValue && element.removeAttribute("value");
- null == checked &&
- null != defaultChecked &&
- (element.defaultChecked = !!defaultChecked);
- null != checked &&
- (element.checked =
- checked &&
- "function" !== typeof checked &&
- "symbol" !== typeof checked);
- null != name &&
- "function" !== typeof name &&
- "symbol" !== typeof name &&
- "boolean" !== typeof name
- ? (checkAttributeStringCoercion(name, "name"),
- (element.name = "" + getToStringValue(name)))
- : element.removeAttribute("name");
- }
- function initInput(
- element,
- value,
- defaultValue,
- checked,
- defaultChecked,
- type,
- name,
- isHydrating
- ) {
- null != type &&
- "function" !== typeof type &&
- "symbol" !== typeof type &&
- "boolean" !== typeof type &&
- (checkAttributeStringCoercion(type, "type"), (element.type = type));
- if (null != value || null != defaultValue) {
- if (
- !(
- ("submit" !== type && "reset" !== type) ||
- (void 0 !== value && null !== value)
- )
- )
- return;
- defaultValue =
- null != defaultValue ? "" + getToStringValue(defaultValue) : "";
- value = null != value ? "" + getToStringValue(value) : defaultValue;
- isHydrating || value === element.value || (element.value = value);
- element.defaultValue = value;
- }
- checked = null != checked ? checked : defaultChecked;
- checked =
- "function" !== typeof checked &&
- "symbol" !== typeof checked &&
- !!checked;
- element.checked = isHydrating ? element.checked : !!checked;
- element.defaultChecked = !!checked;
- null != name &&
- "function" !== typeof name &&
- "symbol" !== typeof name &&
- "boolean" !== typeof name &&
- (checkAttributeStringCoercion(name, "name"), (element.name = name));
- }
- function setDefaultValue(node, type, value) {
- ("number" === type && getActiveElement(node.ownerDocument) === node) ||
- node.defaultValue === "" + value ||
- (node.defaultValue = "" + value);
- }
- function validateOptionProps(element, props) {
- null == props.value &&
- ("object" === typeof props.children && null !== props.children
- ? React.Children.forEach(props.children, function (child) {
- null == child ||
- "string" === typeof child ||
- "number" === typeof child ||
- "bigint" === typeof child ||
- didWarnInvalidChild ||
- ((didWarnInvalidChild = !0),
- console.error(
- "Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to ."
- ));
- })
- : null == props.dangerouslySetInnerHTML ||
- didWarnInvalidInnerHTML ||
- ((didWarnInvalidInnerHTML = !0),
- console.error(
- "Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected."
- )));
- null == props.selected ||
- didWarnSelectedSetOnOption ||
- (console.error(
- "Use the `defaultValue` or `value` props on instead of setting `selected` on ."
- ),
- (didWarnSelectedSetOnOption = !0));
- }
- function getDeclarationErrorAddendum() {
- var ownerName = getCurrentFiberOwnerNameInDevOrNull();
- return ownerName
- ? "\n\nCheck the render method of `" + ownerName + "`."
- : "";
- }
- function updateOptions(node, multiple, propValue, setDefaultSelected) {
- node = node.options;
- if (multiple) {
- multiple = {};
- for (var i = 0; i < propValue.length; i++)
- multiple["$" + propValue[i]] = !0;
- for (propValue = 0; propValue < node.length; propValue++)
- (i = multiple.hasOwnProperty("$" + node[propValue].value)),
- node[propValue].selected !== i && (node[propValue].selected = i),
- i && setDefaultSelected && (node[propValue].defaultSelected = !0);
- } else {
- propValue = "" + getToStringValue(propValue);
- multiple = null;
- for (i = 0; i < node.length; i++) {
- if (node[i].value === propValue) {
- node[i].selected = !0;
- setDefaultSelected && (node[i].defaultSelected = !0);
- return;
- }
- null !== multiple || node[i].disabled || (multiple = node[i]);
- }
- null !== multiple && (multiple.selected = !0);
- }
- }
- function validateSelectProps(element, props) {
- for (element = 0; element < valuePropNames.length; element++) {
- var propName = valuePropNames[element];
- if (null != props[propName]) {
- var propNameIsArray = isArrayImpl(props[propName]);
- props.multiple && !propNameIsArray
- ? console.error(
- "The `%s` prop supplied to must be an array if `multiple` is true.%s",
- propName,
- getDeclarationErrorAddendum()
- )
- : !props.multiple &&
- propNameIsArray &&
- console.error(
- "The `%s` prop supplied to must be a scalar value if `multiple` is false.%s",
- propName,
- getDeclarationErrorAddendum()
- );
- }
- }
- void 0 === props.value ||
- void 0 === props.defaultValue ||
- didWarnValueDefaultValue ||
- (console.error(
- "Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://react.dev/link/controlled-components"
- ),
- (didWarnValueDefaultValue = !0));
- }
- function validateTextareaProps(element, props) {
- void 0 === props.value ||
- void 0 === props.defaultValue ||
- didWarnValDefaultVal ||
- (console.error(
- "%s contains a textarea with both value and defaultValue props. Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://react.dev/link/controlled-components",
- getCurrentFiberOwnerNameInDevOrNull() || "A component"
- ),
- (didWarnValDefaultVal = !0));
- null != props.children &&
- null == props.value &&
- console.error(
- "Use the `defaultValue` or `value` props instead of setting children on