mirror of
https://github.com/LukeHagar/vercel.git
synced 2025-12-11 12:57:46 +00:00
Compare commits
18 Commits
@vercel/ru
...
@vercel/no
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d3c84e5d2a | ||
|
|
9e3827c785 | ||
|
|
fb6d77afac | ||
|
|
cfc1bb180b | ||
|
|
f06776468f | ||
|
|
597a8a8176 | ||
|
|
3f6d99470d | ||
|
|
4422326865 | ||
|
|
09446a8fe8 | ||
|
|
37e93a91a8 | ||
|
|
eec6e47232 | ||
|
|
3a0cfce669 | ||
|
|
ae4a9535c1 | ||
|
|
c615423a0b | ||
|
|
96f99c7147 | ||
|
|
8f318d44cb | ||
|
|
ade5e4ea0a | ||
|
|
87dee36ef9 |
7
api/CHANGELOG.md
Normal file
7
api/CHANGELOG.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# api
|
||||
|
||||
## 0.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- fix RSC matching behavior & 404 status code on `fallback: false` ([#10388](https://github.com/vercel/vercel/pull/10388))
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "api",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"version": "0.0.1",
|
||||
"description": "API for the vercel/vercel repo",
|
||||
"main": "index.js",
|
||||
"scripts": {},
|
||||
|
||||
145
examples/nextjs/package-lock.json
generated
145
examples/nextjs/package-lock.json
generated
@@ -8,13 +8,13 @@
|
||||
"name": "nextjs",
|
||||
"version": "0.1.0",
|
||||
"dependencies": {
|
||||
"@types/node": "20.5.0",
|
||||
"@types/node": "20.5.1",
|
||||
"@types/react": "18.2.20",
|
||||
"@types/react-dom": "18.2.7",
|
||||
"autoprefixer": "10.4.15",
|
||||
"eslint": "8.47.0",
|
||||
"eslint-config-next": "13.4.18",
|
||||
"next": "13.4.18",
|
||||
"eslint-config-next": "13.4.19",
|
||||
"next": "13.4.19",
|
||||
"postcss": "8.4.28",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0",
|
||||
@@ -178,22 +178,22 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/env": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.18.tgz",
|
||||
"integrity": "sha512-ZUG5Y/KSSerggdeD2LIYgiYziKTuSE9oE2RnW8bhNw6WunA8MrVfrWaCDTYSx/UG8qzPpSF+BiZNiHUiALxCdA=="
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.19.tgz",
|
||||
"integrity": "sha512-FsAT5x0jF2kkhNkKkukhsyYOrRqtSxrEhfliniIq0bwWbuXLgyt3Gv0Ml+b91XwjwArmuP7NxCiGd++GGKdNMQ=="
|
||||
},
|
||||
"node_modules/@next/eslint-plugin-next": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.4.18.tgz",
|
||||
"integrity": "sha512-GlOmUjZYYTjKl782mKk5a0bYEmKaouGaxPhi6t9yDILqrppU7JTIyONzLKQPszRXDCVZge0NFd4gwRs1ARZsMg==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.4.19.tgz",
|
||||
"integrity": "sha512-N/O+zGb6wZQdwu6atMZHbR7T9Np5SUFUjZqCbj0sXm+MwQO35M8TazVB4otm87GkXYs2l6OPwARd3/PUWhZBVQ==",
|
||||
"dependencies": {
|
||||
"glob": "7.1.7"
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-darwin-arm64": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.18.tgz",
|
||||
"integrity": "sha512-d/73jvZe7dNTjLugDsIIy2AdQrwE2dFC9/QRr7yHmFm8mS5EiIHeDKzaqIsv9+JXKD9ZB1i/c0x7+F0PlKo1vQ==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.19.tgz",
|
||||
"integrity": "sha512-vv1qrjXeGbuF2mOkhkdxMDtv9np7W4mcBtaDnHU+yJG+bBwa6rYsYSCI/9Xm5+TuF5SbZbrWO6G1NfTh1TMjvQ==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
@@ -206,9 +206,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-darwin-x64": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.18.tgz",
|
||||
"integrity": "sha512-PwfvxgxG5rvUJppF02IdVAVx4HTtbZrS/Nz9qHfYfeFOQ9a+PijL8Xr9BJ21jiIS+dPQjwzvpsOdsC+DOrlzhg==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.19.tgz",
|
||||
"integrity": "sha512-jyzO6wwYhx6F+7gD8ddZfuqO4TtpJdw3wyOduR4fxTUCm3aLw7YmHGYNjS0xRSYGAkLpBkH1E0RcelyId6lNsw==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
@@ -221,9 +221,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-linux-arm64-gnu": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.18.tgz",
|
||||
"integrity": "sha512-Nayn6yFeox9wKaRTLaWRvO3DjB8xEM3BnXu7QnQeZb0AgD484XmdxK13TYZW4jdNy3VJ5OyYIpL4mhkgWEVq/A==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.19.tgz",
|
||||
"integrity": "sha512-vdlnIlaAEh6H+G6HrKZB9c2zJKnpPVKnA6LBwjwT2BTjxI7e0Hx30+FoWCgi50e+YO49p6oPOtesP9mXDRiiUg==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
@@ -236,9 +236,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-linux-arm64-musl": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.18.tgz",
|
||||
"integrity": "sha512-sQzJ5DFPvGlKjI97R17v2RxKJYYzHw4lJZ4xhK6wvyYJYYcn9JfIMyKCvLtfLgpU1tOUcbkmx7i8XC28sB1BsQ==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.19.tgz",
|
||||
"integrity": "sha512-aU0HkH2XPgxqrbNRBFb3si9Ahu/CpaR5RPmN2s9GiM9qJCiBBlZtRTiEca+DC+xRPyCThTtWYgxjWHgU7ZkyvA==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
@@ -251,9 +251,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-linux-x64-gnu": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.18.tgz",
|
||||
"integrity": "sha512-zqCLvGdz+T0V+set8zRHbkl3PQq0quUp5Dtuj1yGw0N9htp3beL1RVyhfSusbgxT82TRTXJe94IREgM8iYq6wg==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.19.tgz",
|
||||
"integrity": "sha512-htwOEagMa/CXNykFFeAHHvMJeqZfNQEoQvHfsA4wgg5QqGNqD5soeCer4oGlCol6NGUxknrQO6VEustcv+Md+g==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
@@ -266,9 +266,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-linux-x64-musl": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.18.tgz",
|
||||
"integrity": "sha512-V/+dWy32eo3iiWkro+0M4/vNp1anGrVzNp90teVKG5tl5t5qNGc/qWOgmgTG8JhowdJAxj7+fp+WltrcezqsDA==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.19.tgz",
|
||||
"integrity": "sha512-4Gj4vvtbK1JH8ApWTT214b3GwUh9EKKQjY41hH/t+u55Knxi/0wesMzwQRhppK6Ddalhu0TEttbiJ+wRcoEj5Q==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
@@ -281,9 +281,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-win32-arm64-msvc": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.18.tgz",
|
||||
"integrity": "sha512-anytZjyD1tAgfA/crOrVcUlm0yrSNKYKpg53NQ+Y83nAungrghBthZZiA1/QvmIs1Igu0Rqw/O6hqCOH63o8pw==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.19.tgz",
|
||||
"integrity": "sha512-bUfDevQK4NsIAHXs3/JNgnvEY+LRyneDN788W2NYiRIIzmILjba7LaQTfihuFawZDhRtkYCv3JDC3B4TwnmRJw==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
@@ -296,9 +296,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-win32-ia32-msvc": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.18.tgz",
|
||||
"integrity": "sha512-lgsZDjbU0FQQH2pDSYeKIbVX9g8dqA7fUtgcAcwbj4eEuVW/K41rKFQceMM1kt0ktVUZ4uF2qOHsgebOWpDJIw==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.19.tgz",
|
||||
"integrity": "sha512-Y5kikILFAr81LYIFaw6j/NrOtmiM4Sf3GtOc0pn50ez2GCkr+oejYuKGcwAwq3jiTKuzF6OF4iT2INPoxRycEA==",
|
||||
"cpu": [
|
||||
"ia32"
|
||||
],
|
||||
@@ -311,9 +311,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@next/swc-win32-x64-msvc": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.18.tgz",
|
||||
"integrity": "sha512-cS72bVNqICglP/uEzqNy26lfRH30zf4AbqnnhPhe+UxRg6d+OTtRQpFX7C4xtBP09FKA+MSSflNVkrn2ZfaWrA==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.19.tgz",
|
||||
"integrity": "sha512-YzA78jBDXMYiINdPdJJwGgPNT3YqBNNGhsthsDoWHL9p24tEJn9ViQf/ZqTbwSpX/RrkPupLfuuTH2sf73JBAw==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
@@ -376,9 +376,9 @@
|
||||
"integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ=="
|
||||
},
|
||||
"node_modules/@types/node": {
|
||||
"version": "20.5.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.0.tgz",
|
||||
"integrity": "sha512-Mgq7eCtoTjT89FqNoTzzXg2XvCi5VMhRV6+I2aYanc6kQCBImeNaAYRs/DyoVqk1YEUJK5gN9VO7HRIdz4Wo3Q=="
|
||||
"version": "20.5.1",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.1.tgz",
|
||||
"integrity": "sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg=="
|
||||
},
|
||||
"node_modules/@types/prop-types": {
|
||||
"version": "15.7.5",
|
||||
@@ -1112,9 +1112,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/electron-to-chromium": {
|
||||
"version": "1.4.495",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.495.tgz",
|
||||
"integrity": "sha512-mwknuemBZnoOCths4GtpU/SDuVMp3uQHKa2UNJT9/aVD6WVRjGpXOxRGX7lm6ILIenTdGXPSTCTDaWos5tEU8Q=="
|
||||
"version": "1.4.496",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.496.tgz",
|
||||
"integrity": "sha512-qeXC3Zbykq44RCrBa4kr8v/dWzYJA8rAwpyh9Qd+NKWoJfjG5vvJqy9XOJ9H4P/lqulZBCgUWAYi+FeK5AuJ8g=="
|
||||
},
|
||||
"node_modules/emoji-regex": {
|
||||
"version": "9.2.2",
|
||||
@@ -1316,11 +1316,11 @@
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-config-next": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.4.18.tgz",
|
||||
"integrity": "sha512-G15CYbsIHwV6Fzoly5SXo/Mj3pNqNkOzbf+wQcPod3LgVNviWVYlb9czjdiREXHq2VF6oV79Kv0Wunguj6RMEw==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.4.19.tgz",
|
||||
"integrity": "sha512-WE8367sqMnjhWHvR5OivmfwENRQ1ixfNE9hZwQqNCsd+iM3KnuMc1V8Pt6ytgjxjf23D+xbesADv9x3xaKfT3g==",
|
||||
"dependencies": {
|
||||
"@next/eslint-plugin-next": "13.4.18",
|
||||
"@next/eslint-plugin-next": "13.4.19",
|
||||
"@rushstack/eslint-patch": "^1.1.3",
|
||||
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0",
|
||||
"eslint-import-resolver-node": "^0.3.6",
|
||||
@@ -1407,9 +1407,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-import": {
|
||||
"version": "2.28.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz",
|
||||
"integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==",
|
||||
"version": "2.28.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz",
|
||||
"integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==",
|
||||
"dependencies": {
|
||||
"array-includes": "^3.1.6",
|
||||
"array.prototype.findlastindex": "^1.2.2",
|
||||
@@ -1420,13 +1420,12 @@
|
||||
"eslint-import-resolver-node": "^0.3.7",
|
||||
"eslint-module-utils": "^2.8.0",
|
||||
"has": "^1.0.3",
|
||||
"is-core-module": "^2.12.1",
|
||||
"is-core-module": "^2.13.0",
|
||||
"is-glob": "^4.0.3",
|
||||
"minimatch": "^3.1.2",
|
||||
"object.fromentries": "^2.0.6",
|
||||
"object.groupby": "^1.0.0",
|
||||
"object.values": "^1.1.6",
|
||||
"resolve": "^1.22.3",
|
||||
"semver": "^6.3.1",
|
||||
"tsconfig-paths": "^3.14.2"
|
||||
},
|
||||
@@ -2425,9 +2424,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jiti": {
|
||||
"version": "1.19.1",
|
||||
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.19.1.tgz",
|
||||
"integrity": "sha512-oVhqoRDaBXf7sjkll95LHVS6Myyyb1zaunVwk4Z0+WPSW4gjS0pl01zYKHScTuyEhQsFxV5L4DR5r+YqSyqyyg==",
|
||||
"version": "1.19.3",
|
||||
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.19.3.tgz",
|
||||
"integrity": "sha512-5eEbBDQT/jF1xg6l36P+mWGGoH9Spuy0PCdSr2dtWRDGC6ph/w9ZCL4lmESW8f8F7MwT3XKescfP0wnZWAKL9w==",
|
||||
"bin": {
|
||||
"jiti": "bin/jiti.js"
|
||||
}
|
||||
@@ -2639,11 +2638,11 @@
|
||||
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="
|
||||
},
|
||||
"node_modules/next": {
|
||||
"version": "13.4.18",
|
||||
"resolved": "https://registry.npmjs.org/next/-/next-13.4.18.tgz",
|
||||
"integrity": "sha512-V/IIFA/znYYnOFlZQegrlhlWRpyIuCLXLGuH6pzCjwyxThNBZl4ItqoE3ffUyYY9f0X6XIQ2dX6UUBpNVSKZ8A==",
|
||||
"version": "13.4.19",
|
||||
"resolved": "https://registry.npmjs.org/next/-/next-13.4.19.tgz",
|
||||
"integrity": "sha512-HuPSzzAbJ1T4BD8e0bs6B9C1kWQ6gv8ykZoRWs5AQoiIuqbGHHdQO7Ljuvg05Q0Z24E2ABozHe6FxDvI6HfyAw==",
|
||||
"dependencies": {
|
||||
"@next/env": "13.4.18",
|
||||
"@next/env": "13.4.19",
|
||||
"@swc/helpers": "0.5.1",
|
||||
"busboy": "1.6.0",
|
||||
"caniuse-lite": "^1.0.30001406",
|
||||
@@ -2659,15 +2658,15 @@
|
||||
"node": ">=16.8.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"@next/swc-darwin-arm64": "13.4.18",
|
||||
"@next/swc-darwin-x64": "13.4.18",
|
||||
"@next/swc-linux-arm64-gnu": "13.4.18",
|
||||
"@next/swc-linux-arm64-musl": "13.4.18",
|
||||
"@next/swc-linux-x64-gnu": "13.4.18",
|
||||
"@next/swc-linux-x64-musl": "13.4.18",
|
||||
"@next/swc-win32-arm64-msvc": "13.4.18",
|
||||
"@next/swc-win32-ia32-msvc": "13.4.18",
|
||||
"@next/swc-win32-x64-msvc": "13.4.18"
|
||||
"@next/swc-darwin-arm64": "13.4.19",
|
||||
"@next/swc-darwin-x64": "13.4.19",
|
||||
"@next/swc-linux-arm64-gnu": "13.4.19",
|
||||
"@next/swc-linux-arm64-musl": "13.4.19",
|
||||
"@next/swc-linux-x64-gnu": "13.4.19",
|
||||
"@next/swc-linux-x64-musl": "13.4.19",
|
||||
"@next/swc-win32-arm64-msvc": "13.4.19",
|
||||
"@next/swc-win32-ia32-msvc": "13.4.19",
|
||||
"@next/swc-win32-x64-msvc": "13.4.19"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@opentelemetry/api": "^1.1.0",
|
||||
@@ -3672,9 +3671,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/ts-api-utils": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.1.tgz",
|
||||
"integrity": "sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==",
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.2.tgz",
|
||||
"integrity": "sha512-Cbu4nIqnEdd+THNEsBdkolnOXhg0I8XteoHaEKgvsxpsbWda4IsUut2c187HxywQCvveojow0Dgw/amxtSKVkQ==",
|
||||
"engines": {
|
||||
"node": ">=16.13.0"
|
||||
},
|
||||
@@ -3699,9 +3698,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/tslib": {
|
||||
"version": "2.6.1",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz",
|
||||
"integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig=="
|
||||
"version": "2.6.2",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
|
||||
"integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
|
||||
},
|
||||
"node_modules/type-check": {
|
||||
"version": "0.4.0",
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
"lint": "next lint"
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/node": "20.5.0",
|
||||
"@types/node": "20.5.1",
|
||||
"@types/react": "18.2.20",
|
||||
"@types/react-dom": "18.2.7",
|
||||
"autoprefixer": "10.4.15",
|
||||
"eslint": "8.47.0",
|
||||
"eslint-config-next": "13.4.18",
|
||||
"next": "13.4.18",
|
||||
"eslint-config-next": "13.4.19",
|
||||
"next": "13.4.19",
|
||||
"postcss": "8.4.28",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0",
|
||||
|
||||
2
examples/package.json
vendored
2
examples/package.json
vendored
@@ -9,6 +9,6 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/jest": "27.4.1",
|
||||
"@vercel/frameworks": "2.0.0"
|
||||
"@vercel/frameworks": "2.0.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,9 @@
|
||||
"version": "1.0.4",
|
||||
"types": "dist/index.d.ts",
|
||||
"main": "dist/index.js",
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "tsc -p tsconfig.json"
|
||||
},
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"types": "dist/index.d.ts",
|
||||
"main": "dist/index.js",
|
||||
"files": [
|
||||
"dist/*"
|
||||
"dist"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "tsc",
|
||||
|
||||
@@ -1,5 +1,12 @@
|
||||
# @vercel-internals/types
|
||||
|
||||
## 1.0.8
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`9e3827c78`](https://github.com/vercel/vercel/commit/9e3827c785e1bc45f2bed421132167381481770f)]:
|
||||
- @vercel/build-utils@7.1.0
|
||||
|
||||
## 1.0.7
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
{
|
||||
"private": true,
|
||||
"name": "@vercel-internals/types",
|
||||
"version": "1.0.7",
|
||||
"version": "1.0.8",
|
||||
"types": "index.d.ts",
|
||||
"main": "index.d.ts",
|
||||
"files": [
|
||||
"*.d.ts"
|
||||
],
|
||||
"dependencies": {
|
||||
"@types/node": "14.14.31",
|
||||
"@vercel-internals/constants": "1.0.4",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/routing-utils": "3.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
# @vercel/build-utils
|
||||
|
||||
## 7.1.0
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- Support serverless function architecture ([#10392](https://github.com/vercel/vercel/pull/10392))
|
||||
|
||||
## 7.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/build-utils",
|
||||
"version": "7.0.0",
|
||||
"version": "7.1.0",
|
||||
"license": "Apache-2.0",
|
||||
"main": "./dist/index.js",
|
||||
"types": "./dist/index.d.js",
|
||||
@@ -32,7 +32,7 @@
|
||||
"@types/node-fetch": "^2.1.6",
|
||||
"@types/semver": "6.0.0",
|
||||
"@types/yazl": "2.4.2",
|
||||
"@vercel/error-utils": "2.0.0",
|
||||
"@vercel/error-utils": "2.0.1",
|
||||
"@vercel/ncc": "0.24.0",
|
||||
"aggregate-error": "3.0.1",
|
||||
"async-retry": "1.2.3",
|
||||
|
||||
@@ -13,9 +13,12 @@ interface Environment {
|
||||
|
||||
export type LambdaOptions = LambdaOptionsWithFiles | LambdaOptionsWithZipBuffer;
|
||||
|
||||
export type LambdaArchitecture = 'x86_64' | 'arm64';
|
||||
|
||||
export interface LambdaOptionsBase {
|
||||
handler: string;
|
||||
runtime: string;
|
||||
architecture?: LambdaArchitecture;
|
||||
memory?: number;
|
||||
maxDuration?: number;
|
||||
environment?: Environment;
|
||||
@@ -62,6 +65,7 @@ export class Lambda {
|
||||
files?: Files;
|
||||
handler: string;
|
||||
runtime: string;
|
||||
architecture?: LambdaArchitecture;
|
||||
memory?: number;
|
||||
maxDuration?: number;
|
||||
environment: Environment;
|
||||
@@ -81,6 +85,7 @@ export class Lambda {
|
||||
handler,
|
||||
runtime,
|
||||
maxDuration,
|
||||
architecture,
|
||||
memory,
|
||||
environment = {},
|
||||
allowQuery,
|
||||
@@ -102,6 +107,13 @@ export class Lambda {
|
||||
assert(typeof runtime === 'string', '"runtime" is not a string');
|
||||
assert(typeof environment === 'object', '"environment" is not an object');
|
||||
|
||||
if (architecture !== undefined) {
|
||||
assert(
|
||||
architecture === 'x86_64' || architecture === 'arm64',
|
||||
'"architecture" must be either "x86_64" or "arm64"'
|
||||
);
|
||||
}
|
||||
|
||||
if (memory !== undefined) {
|
||||
assert(typeof memory === 'number', '"memory" is not a number');
|
||||
}
|
||||
@@ -159,6 +171,7 @@ export class Lambda {
|
||||
this.files = 'files' in opts ? opts.files : undefined;
|
||||
this.handler = handler;
|
||||
this.runtime = runtime;
|
||||
this.architecture = architecture;
|
||||
this.memory = memory;
|
||||
this.maxDuration = maxDuration;
|
||||
this.environment = environment;
|
||||
|
||||
@@ -1,5 +1,49 @@
|
||||
# vercel
|
||||
|
||||
## 32.1.0
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- Improve error messages for JSON parse failures ([#10396](https://github.com/vercel/vercel/pull/10396))
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`9e3827c78`](https://github.com/vercel/vercel/commit/9e3827c785e1bc45f2bed421132167381481770f)]:
|
||||
- @vercel/build-utils@7.1.0
|
||||
- @vercel/node@3.0.3
|
||||
- @vercel/remix-builder@2.0.2
|
||||
- @vercel/static-build@2.0.3
|
||||
|
||||
## 32.0.2
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Remove use of mri preferring use of arg package ([#10389](https://github.com/vercel/vercel/pull/10389))
|
||||
|
||||
- upgrade edge-runtime ([#10385](https://github.com/vercel/vercel/pull/10385))
|
||||
|
||||
- Update dns commands to new structure ([#10379](https://github.com/vercel/vercel/pull/10379))
|
||||
|
||||
- Updated dependencies [[`09446a8fe`](https://github.com/vercel/vercel/commit/09446a8fe8b8201dbe3ead3ca645ef0aa1833b6b), [`597a8a817`](https://github.com/vercel/vercel/commit/597a8a81764c39e70c65b98e78bf4c3827a779a7), [`442232686`](https://github.com/vercel/vercel/commit/44223268651f1bbd5c6f2b0b315239685dd5716e), [`3f6d99470`](https://github.com/vercel/vercel/commit/3f6d99470db86681e006d66507f32afcea086b41), [`37e93a91a`](https://github.com/vercel/vercel/commit/37e93a91a8659934eac7f5cd441b310511bf5646)]:
|
||||
- @vercel/next@4.0.1
|
||||
- @vercel/node@3.0.2
|
||||
- @vercel/remix-builder@2.0.1
|
||||
- @vercel/static-build@2.0.2
|
||||
|
||||
## 32.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Add `--git-branch` to pull command help output ([#10382](https://github.com/vercel/vercel/pull/10382))
|
||||
|
||||
- Update new help structure to support subcommands ([#10372](https://github.com/vercel/vercel/pull/10372))
|
||||
|
||||
- Migrate certs command to new structure ([#10377](https://github.com/vercel/vercel/pull/10377))
|
||||
|
||||
- Updated dependencies []:
|
||||
- @vercel/static-build@2.0.1
|
||||
- @vercel/node@3.0.1
|
||||
|
||||
## 32.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "vercel",
|
||||
"version": "32.0.0",
|
||||
"version": "32.1.0",
|
||||
"preferGlobal": true,
|
||||
"license": "Apache-2.0",
|
||||
"description": "The command-line interface for Vercel",
|
||||
@@ -31,20 +31,20 @@
|
||||
"node": ">= 16"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/go": "3.0.0",
|
||||
"@vercel/hydrogen": "1.0.0",
|
||||
"@vercel/next": "4.0.0",
|
||||
"@vercel/node": "3.0.0",
|
||||
"@vercel/next": "4.0.1",
|
||||
"@vercel/node": "3.0.3",
|
||||
"@vercel/python": "4.0.0",
|
||||
"@vercel/redwood": "2.0.0",
|
||||
"@vercel/remix-builder": "2.0.0",
|
||||
"@vercel/remix-builder": "2.0.2",
|
||||
"@vercel/ruby": "2.0.0",
|
||||
"@vercel/static-build": "2.0.0"
|
||||
"@vercel/static-build": "2.0.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@alex_neo/jest-expect-message": "1.0.5",
|
||||
"@edge-runtime/node-utils": "2.1.0",
|
||||
"@edge-runtime/node-utils": "2.2.0",
|
||||
"@next/env": "11.1.2",
|
||||
"@sentry/node": "5.5.0",
|
||||
"@sindresorhus/slugify": "0.11.0",
|
||||
@@ -64,10 +64,10 @@
|
||||
"@types/inquirer": "7.3.1",
|
||||
"@types/jest": "27.4.1",
|
||||
"@types/jest-expect-message": "1.0.3",
|
||||
"@types/json-parse-better-errors": "1.0.0",
|
||||
"@types/load-json-file": "2.0.7",
|
||||
"@types/mime-types": "2.1.0",
|
||||
"@types/minimatch": "3.0.3",
|
||||
"@types/mri": "1.1.0",
|
||||
"@types/ms": "0.7.30",
|
||||
"@types/node": "14.18.33",
|
||||
"@types/node-fetch": "2.5.10",
|
||||
@@ -86,11 +86,11 @@
|
||||
"@types/yauzl-promise": "2.1.0",
|
||||
"@vercel-internals/constants": "1.0.4",
|
||||
"@vercel-internals/get-package-json": "1.0.0",
|
||||
"@vercel-internals/types": "1.0.7",
|
||||
"@vercel/client": "13.0.0",
|
||||
"@vercel/error-utils": "2.0.0",
|
||||
"@vercel/frameworks": "2.0.0",
|
||||
"@vercel/fs-detectors": "5.0.0",
|
||||
"@vercel-internals/types": "1.0.8",
|
||||
"@vercel/client": "13.0.1",
|
||||
"@vercel/error-utils": "2.0.1",
|
||||
"@vercel/frameworks": "2.0.1",
|
||||
"@vercel/fs-detectors": "5.0.1",
|
||||
"@vercel/fun": "1.0.4",
|
||||
"@vercel/ncc": "0.24.0",
|
||||
"@vercel/routing-utils": "3.0.0",
|
||||
@@ -136,12 +136,12 @@
|
||||
"jaro-winkler": "0.2.8",
|
||||
"jest-junit": "16.0.0",
|
||||
"jest-matcher-utils": "29.3.1",
|
||||
"json-parse-better-errors": "1.0.2",
|
||||
"jsonlines": "0.1.1",
|
||||
"line-async-iterator": "3.0.0",
|
||||
"load-json-file": "3.0.0",
|
||||
"mime-types": "2.1.24",
|
||||
"minimatch": "3.1.2",
|
||||
"mri": "1.1.5",
|
||||
"ms": "2.1.2",
|
||||
"node-fetch": "2.6.7",
|
||||
"npm-package-arg": "6.1.0",
|
||||
|
||||
93
packages/cli/src/commands/alias/command.ts
Normal file
93
packages/cli/src/commands/alias/command.ts
Normal file
@@ -0,0 +1,93 @@
|
||||
import { Command } from '../help';
|
||||
import { packageName } from '../../util/pkg-name';
|
||||
|
||||
export const aliasCommand: Command = {
|
||||
name: 'alias',
|
||||
description: 'Interact with deployment aliases.',
|
||||
arguments: [
|
||||
{
|
||||
name: 'command',
|
||||
required: false,
|
||||
},
|
||||
],
|
||||
subcommands: [
|
||||
{
|
||||
name: 'ls',
|
||||
description: 'Show all aliases.',
|
||||
arguments: [],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
{
|
||||
name: 'set',
|
||||
description: 'Create a new alias',
|
||||
arguments: [
|
||||
{
|
||||
name: 'deployment',
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
name: 'alias',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
{
|
||||
name: 'rm',
|
||||
description: 'Remove an alias using its hostname.',
|
||||
arguments: [
|
||||
{
|
||||
name: 'alias',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
],
|
||||
options: [
|
||||
{
|
||||
name: 'next',
|
||||
description: 'Show next page of results',
|
||||
argument: 'MS',
|
||||
shorthand: 'n',
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'yes',
|
||||
description: 'Skip the confirmation prompt when removing an alias',
|
||||
shorthand: 'y',
|
||||
type: 'boolean',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'limit',
|
||||
shorthand: 'n',
|
||||
description:
|
||||
'Number of results to return per page (default: 20, max: 100)',
|
||||
argument: 'NUMBER',
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
],
|
||||
examples: [
|
||||
{
|
||||
name: 'Add a new alias to `my-api.vercel.app`',
|
||||
value: `${packageName} alias set api-ownv3nc9f8.vercel.app my-api.vercel.app`,
|
||||
},
|
||||
{
|
||||
name: 'Custom domains work as alias targets',
|
||||
value: `${packageName} alias set api-ownv3nc9f8.vercel.app my-api.com`,
|
||||
},
|
||||
{
|
||||
name: 'The subcommand `set` is the default and can be skipped. Protocols in the URLs are unneeded and ignored',
|
||||
value: `${packageName} alias api-ownv3nc9f8.vercel.app my-api.com`,
|
||||
},
|
||||
],
|
||||
};
|
||||
@@ -1,73 +1,12 @@
|
||||
import chalk from 'chalk';
|
||||
|
||||
import { handleError } from '../../util/error';
|
||||
|
||||
import Client from '../../util/client';
|
||||
import getArgs from '../../util/get-args';
|
||||
import getSubcommand from '../../util/get-subcommand';
|
||||
import { packageName, logo } from '../../util/pkg-name';
|
||||
|
||||
import { help } from '../help';
|
||||
import ls from './ls';
|
||||
import rm from './rm';
|
||||
import set from './set';
|
||||
|
||||
const help = () => {
|
||||
console.log(`
|
||||
${chalk.bold(`${logo} ${packageName} alias`)} [options] <command>
|
||||
|
||||
${chalk.dim('Commands:')}
|
||||
|
||||
ls Show all aliases
|
||||
set <deployment> <alias> Create a new alias
|
||||
rm <alias> Remove an alias using its hostname
|
||||
|
||||
${chalk.dim('Options:')}
|
||||
|
||||
-h, --help Output usage information
|
||||
-A ${chalk.bold.underline('FILE')}, --local-config=${chalk.bold.underline(
|
||||
'FILE'
|
||||
)} Path to the local ${'`vercel.json`'} file
|
||||
-Q ${chalk.bold.underline('DIR')}, --global-config=${chalk.bold.underline(
|
||||
'DIR'
|
||||
)} Path to the global ${'`.vercel`'} directory
|
||||
-d, --debug Debug mode [off]
|
||||
--no-color No color mode [off]
|
||||
-t ${chalk.bold.underline('TOKEN')}, --token=${chalk.bold.underline(
|
||||
'TOKEN'
|
||||
)} Login token
|
||||
-S, --scope Set a custom scope
|
||||
-N, --next Show next page of results
|
||||
-y, --yes Skip the confirmation prompt when removing an alias
|
||||
--limit=${chalk.bold.underline(
|
||||
'VALUE'
|
||||
)} Number of results to return per page (default: 20, max: 100)
|
||||
|
||||
${chalk.dim('Examples:')}
|
||||
|
||||
${chalk.gray('–')} Add a new alias to ${chalk.underline('my-api.vercel.app')}
|
||||
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} alias set ${chalk.underline(
|
||||
'api-ownv3nc9f8.vercel.app'
|
||||
)} ${chalk.underline('my-api.vercel.app')}`
|
||||
)}
|
||||
|
||||
Custom domains work as alias targets
|
||||
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} alias set ${chalk.underline(
|
||||
'api-ownv3nc9f8.vercel.app'
|
||||
)} ${chalk.underline('my-api.com')}`
|
||||
)}
|
||||
|
||||
${chalk.dim('–')} The subcommand ${chalk.dim(
|
||||
'`set`'
|
||||
)} is the default and can be skipped.
|
||||
${chalk.dim('–')} ${chalk.dim(
|
||||
'Protocols'
|
||||
)} in the URLs are unneeded and ignored.
|
||||
`);
|
||||
};
|
||||
import { aliasCommand } from './command';
|
||||
|
||||
const COMMAND_CONFIG = {
|
||||
default: ['set'],
|
||||
@@ -76,7 +15,7 @@ const COMMAND_CONFIG = {
|
||||
set: ['set'],
|
||||
};
|
||||
|
||||
export default async function main(client: Client) {
|
||||
export default async function alias(client: Client) {
|
||||
let argv;
|
||||
|
||||
try {
|
||||
@@ -94,7 +33,7 @@ export default async function main(client: Client) {
|
||||
}
|
||||
|
||||
if (argv['--help']) {
|
||||
help();
|
||||
client.output.print(help(aliasCommand, { columns: client.stderr.columns }));
|
||||
return 2;
|
||||
}
|
||||
|
||||
|
||||
116
packages/cli/src/commands/certs/command.ts
Normal file
116
packages/cli/src/commands/certs/command.ts
Normal file
@@ -0,0 +1,116 @@
|
||||
import { Command } from '../help';
|
||||
import { packageName } from '../../util/pkg-name';
|
||||
|
||||
export const certsCommand: Command = {
|
||||
name: 'certs',
|
||||
description:
|
||||
'Interact with SSL certificates. This command is intended for advanced use only. By default, Vercel manages your certificates automatically.',
|
||||
arguments: [
|
||||
{
|
||||
name: 'command',
|
||||
required: false,
|
||||
},
|
||||
],
|
||||
subcommands: [
|
||||
{
|
||||
name: 'ls',
|
||||
description: 'Show all available certificates',
|
||||
arguments: [],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
{
|
||||
name: 'issue',
|
||||
description: ' Issue a new certificate for a domain',
|
||||
arguments: [
|
||||
{
|
||||
name: 'cn',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
{
|
||||
name: 'rm',
|
||||
description: 'Remove a certificate by id',
|
||||
arguments: [
|
||||
{
|
||||
name: 'id',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
],
|
||||
options: [
|
||||
{
|
||||
name: 'challenge-only',
|
||||
description: 'Only show challenges needed to issue a cert',
|
||||
shorthand: null,
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'crt',
|
||||
description: 'Certificate file',
|
||||
argument: 'FILE',
|
||||
shorthand: null,
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'key',
|
||||
description: 'Certificate key file',
|
||||
argument: 'FILE',
|
||||
shorthand: null,
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'ca',
|
||||
description: 'CA certificate chain file',
|
||||
argument: 'FILE',
|
||||
shorthand: null,
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'limit',
|
||||
description:
|
||||
'Number of results to return per page (default: 20, max: 100)',
|
||||
argument: 'VALUE',
|
||||
shorthand: null,
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'next',
|
||||
description: 'Show next page of results',
|
||||
shorthand: 'n',
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
],
|
||||
examples: [
|
||||
{
|
||||
name: 'Generate a certificate with the cnames "acme.com" and "www.acme.com"`',
|
||||
value: `${packageName} certs issue acme.com www.acme.com`,
|
||||
},
|
||||
{
|
||||
name: 'Remove a certificate',
|
||||
value: `${packageName} certs rm id`,
|
||||
},
|
||||
{
|
||||
name: 'Paginate results, where `1584722256178` is the time in milliseconds since the UNIX epoch.',
|
||||
value: `${packageName} certs ls --next 1584722256178`,
|
||||
},
|
||||
],
|
||||
};
|
||||
@@ -1,5 +1,3 @@
|
||||
import chalk from 'chalk';
|
||||
|
||||
// @ts-ignore
|
||||
import { handleError } from '../../util/error';
|
||||
|
||||
@@ -10,69 +8,9 @@ import add from './add';
|
||||
import issue from './issue';
|
||||
import ls from './ls';
|
||||
import rm from './rm';
|
||||
import { certsCommand } from './command';
|
||||
import { help } from '../help';
|
||||
import Client from '../../util/client';
|
||||
import { packageName, logo } from '../../util/pkg-name';
|
||||
|
||||
const help = () => {
|
||||
console.log(`
|
||||
${chalk.bold(`${logo} ${packageName} certs`)} [options] <command>
|
||||
|
||||
${chalk.yellow('NOTE:')} This command is intended for advanced use only.
|
||||
By default, Vercel manages your certificates automatically.
|
||||
|
||||
${chalk.dim('Commands:')}
|
||||
|
||||
ls Show all available certificates
|
||||
issue <cn> [<cn>] Issue a new certificate for a domain
|
||||
rm <id> Remove a certificate by id
|
||||
|
||||
${chalk.dim('Options:')}
|
||||
|
||||
-h, --help Output usage information
|
||||
-A ${chalk.bold.underline('FILE')}, --local-config=${chalk.bold.underline(
|
||||
'FILE'
|
||||
)} Path to the local ${'`vercel.json`'} file
|
||||
-Q ${chalk.bold.underline('DIR')}, --global-config=${chalk.bold.underline(
|
||||
'DIR'
|
||||
)} Path to the global ${'`.vercel`'} directory
|
||||
-d, --debug Debug mode [off]
|
||||
--no-color No color mode [off]
|
||||
-t ${chalk.bold.underline('TOKEN')}, --token=${chalk.bold.underline(
|
||||
'TOKEN'
|
||||
)} Login token
|
||||
-S, --scope Set a custom scope
|
||||
--challenge-only Only show challenges needed to issue a cert
|
||||
--crt ${chalk.bold.underline('FILE')} Certificate file
|
||||
--key ${chalk.bold.underline(
|
||||
'FILE'
|
||||
)} Certificate key file
|
||||
--ca ${chalk.bold.underline(
|
||||
'FILE'
|
||||
)} CA certificate chain file
|
||||
-N, --next Show next page of results
|
||||
--limit=${chalk.bold.underline(
|
||||
'VALUE'
|
||||
)} Number of results to return per page (default: 20, max: 100)
|
||||
|
||||
${chalk.dim('Examples:')}
|
||||
|
||||
${chalk.gray(
|
||||
'–'
|
||||
)} Generate a certificate with the cnames "acme.com" and "www.acme.com"
|
||||
|
||||
${chalk.cyan(`$ ${packageName} certs issue acme.com www.acme.com`)}
|
||||
|
||||
${chalk.gray('–')} Remove a certificate
|
||||
|
||||
${chalk.cyan(`$ ${packageName} certs rm id`)}
|
||||
|
||||
${chalk.gray('–')} Paginate results, where ${chalk.dim(
|
||||
'`1584722256178`'
|
||||
)} is the time in milliseconds since the UNIX epoch.
|
||||
|
||||
${chalk.cyan(`$ ${packageName} certs ls --next 1584722256178`)}
|
||||
`);
|
||||
};
|
||||
|
||||
const COMMAND_CONFIG = {
|
||||
add: ['add'],
|
||||
@@ -103,7 +41,7 @@ export default async function main(client: Client) {
|
||||
}
|
||||
|
||||
if (argv['--help']) {
|
||||
help();
|
||||
client.output.print(help(certsCommand, { columns: client.stderr.columns }));
|
||||
return 2;
|
||||
}
|
||||
|
||||
@@ -123,7 +61,9 @@ export default async function main(client: Client) {
|
||||
return 1;
|
||||
default:
|
||||
output.error('Please specify a valid subcommand: ls | issue | rm');
|
||||
help();
|
||||
client.output.print(
|
||||
help(certsCommand, { columns: client.stderr.columns })
|
||||
);
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -118,7 +118,7 @@ export default async function main(client: Client) {
|
||||
const pkg = await readJSONFile<PackageJson>(path.join(dir, 'package.json'));
|
||||
|
||||
if (pkg instanceof CantParseJSONFile) {
|
||||
client.output.error('Could not parse package.json');
|
||||
client.output.error(pkg.message);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
136
packages/cli/src/commands/dns/command.ts
Normal file
136
packages/cli/src/commands/dns/command.ts
Normal file
@@ -0,0 +1,136 @@
|
||||
import { Command } from '../help';
|
||||
import { packageName } from '../../util/pkg-name';
|
||||
|
||||
export const dnsCommand: Command = {
|
||||
name: 'dns',
|
||||
description: 'Interact with DNS entries for a project.',
|
||||
arguments: [
|
||||
{
|
||||
name: 'command',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
subcommands: [
|
||||
{
|
||||
name: 'import',
|
||||
description: 'Import a DNS zone file (see below for examples)',
|
||||
arguments: [
|
||||
{
|
||||
name: 'domain',
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
name: 'zonefile',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
{
|
||||
name: 'ls',
|
||||
description: 'List all DNS entries for a domain',
|
||||
arguments: [
|
||||
{
|
||||
name: 'domain',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
{
|
||||
name: 'add',
|
||||
description: 'Add a new DNS entry (see below for examples)',
|
||||
arguments: [
|
||||
{
|
||||
name: 'details',
|
||||
required: true,
|
||||
},
|
||||
{
|
||||
name: 'alias',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
{
|
||||
name: 'rm',
|
||||
description: 'Remove a DNS entry using its ID',
|
||||
arguments: [
|
||||
{
|
||||
name: 'id',
|
||||
required: true,
|
||||
},
|
||||
],
|
||||
options: [],
|
||||
examples: [],
|
||||
},
|
||||
],
|
||||
options: [
|
||||
{
|
||||
name: 'next',
|
||||
description: 'Show next page of results',
|
||||
argument: 'MS',
|
||||
shorthand: 'n',
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'limit',
|
||||
shorthand: 'n',
|
||||
description:
|
||||
'Number of results to return per page (default: 20, max: 100)',
|
||||
argument: 'NUMBER',
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
],
|
||||
examples: [
|
||||
{
|
||||
name: 'Add an A record for a subdomain',
|
||||
value: [
|
||||
`${packageName} dns add <DOMAIN> <SUBDOMAIN> <A | AAAA | ALIAS | CNAME | TXT> <VALUE>`,
|
||||
`${packageName} dns add zeit.rocks api A 198.51.100.100`,
|
||||
],
|
||||
},
|
||||
{
|
||||
name: 'Add an MX record (@ as a name refers to the domain)',
|
||||
value: [
|
||||
`${packageName} dns add <DOMAIN> '@' MX <RECORD VALUE> <PRIORITY>`,
|
||||
`${packageName} dns add zeit.rocks '@' MX mail.zeit.rocks 10`,
|
||||
],
|
||||
},
|
||||
{
|
||||
name: 'Add an SRV record',
|
||||
value: [
|
||||
`${packageName} dns add <DOMAIN> <NAME> SRV <PRIORITY> <WEIGHT> <PORT> <TARGET>`,
|
||||
`${packageName} dns add zeit.rocks '@' SRV 10 0 389 zeit.party`,
|
||||
],
|
||||
},
|
||||
{
|
||||
name: 'Add a CAA record',
|
||||
value: [
|
||||
`${packageName} dns add <DOMAIN> <NAME> CAA '<FLAGS> <TAG> "<VALUE>"'`,
|
||||
`${packageName} dns add zeit.rocks '@' CAA '0 issue "example.com"'`,
|
||||
],
|
||||
},
|
||||
{
|
||||
name: 'Import a Zone file',
|
||||
value: [
|
||||
`${packageName} dns import <DOMAIN> <FILE>`,
|
||||
`${packageName} dns import zeit.rocks ./zonefile.txt`,
|
||||
],
|
||||
},
|
||||
{
|
||||
name: 'Paginate results, where `1584722256178` is the time in milliseconds since the UNIX epoch.',
|
||||
value: [
|
||||
`${packageName} dns ls --next 1584722256178`,
|
||||
`${packageName} dns ls zeit.rocks --next 1584722256178`,
|
||||
],
|
||||
},
|
||||
],
|
||||
};
|
||||
@@ -1,96 +1,14 @@
|
||||
import chalk from 'chalk';
|
||||
|
||||
import Client from '../../util/client';
|
||||
import getArgs from '../../util/get-args';
|
||||
import getSubcommand from '../../util/get-subcommand';
|
||||
import handleError from '../../util/handle-error';
|
||||
import { packageName, logo } from '../../util/pkg-name';
|
||||
|
||||
import add from './add';
|
||||
import importZone from './import';
|
||||
import ls from './ls';
|
||||
import rm from './rm';
|
||||
|
||||
const help = () => {
|
||||
console.log(`
|
||||
${chalk.bold(`${logo} ${packageName} dns`)} [options] <command>
|
||||
|
||||
${chalk.dim('Commands:')}
|
||||
|
||||
add [details] Add a new DNS entry (see below for examples)
|
||||
import [domain] [zonefile] Import a DNS zone file (see below for examples)
|
||||
rm [id] Remove a DNS entry using its ID
|
||||
ls [domain] List all DNS entries for a domain
|
||||
|
||||
${chalk.dim('Options:')}
|
||||
|
||||
-h, --help Output usage information
|
||||
-A ${chalk.bold.underline('FILE')}, --local-config=${chalk.bold.underline(
|
||||
'FILE'
|
||||
)} Path to the local ${'`vercel.json`'} file
|
||||
-Q ${chalk.bold.underline('DIR')}, --global-config=${chalk.bold.underline(
|
||||
'DIR'
|
||||
)} Path to the global ${'`.vercel`'} directory
|
||||
-d, --debug Debug mode [off]
|
||||
--no-color No color mode [off]
|
||||
-t ${chalk.bold.underline('TOKEN')}, --token=${chalk.bold.underline(
|
||||
'TOKEN'
|
||||
)} Login token
|
||||
-S, --scope Set a custom scope
|
||||
-N, --next Show next page of results
|
||||
--limit=${chalk.bold.underline(
|
||||
'VALUE'
|
||||
)} Number of results to return per page (default: 20, max: 100)
|
||||
|
||||
${chalk.dim('Examples:')}
|
||||
|
||||
${chalk.gray('–')} Add an A record for a subdomain
|
||||
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} dns add <DOMAIN> <SUBDOMAIN> <A | AAAA | ALIAS | CNAME | TXT> <VALUE>`
|
||||
)}
|
||||
${chalk.cyan(`$ ${packageName} dns add zeit.rocks api A 198.51.100.100`)}
|
||||
|
||||
${chalk.gray('–')} Add an MX record (@ as a name refers to the domain)
|
||||
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} dns add <DOMAIN> '@' MX <RECORD VALUE> <PRIORITY>`
|
||||
)}
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} dns add zeit.rocks '@' MX mail.zeit.rocks 10`
|
||||
)}
|
||||
|
||||
${chalk.gray('–')} Add an SRV record
|
||||
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} dns add <DOMAIN> <NAME> SRV <PRIORITY> <WEIGHT> <PORT> <TARGET>`
|
||||
)}
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} dns add zeit.rocks '@' SRV 10 0 389 zeit.party`
|
||||
)}
|
||||
|
||||
${chalk.gray('–')} Add a CAA record
|
||||
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} dns add <DOMAIN> <NAME> CAA '<FLAGS> <TAG> "<VALUE>"'`
|
||||
)}
|
||||
${chalk.cyan(
|
||||
`$ ${packageName} dns add zeit.rocks '@' CAA '0 issue "example.com"'`
|
||||
)}
|
||||
|
||||
${chalk.gray('–')} Import a Zone file
|
||||
|
||||
${chalk.cyan(`$ ${packageName} dns import <DOMAIN> <FILE>`)}
|
||||
${chalk.cyan(`$ ${packageName} dns import zeit.rocks ./zonefile.txt`)}
|
||||
|
||||
${chalk.gray('–')} Paginate results, where ${chalk.dim(
|
||||
'`1584722256178`'
|
||||
)} is the time in milliseconds since the UNIX epoch.
|
||||
|
||||
${chalk.cyan(`$ ${packageName} dns ls --next 1584722256178`)}
|
||||
${chalk.cyan(`$ ${packageName} dns ls zeit.rocks --next 1584722256178`)}
|
||||
`);
|
||||
};
|
||||
import { dnsCommand } from './command';
|
||||
import { help } from '../help';
|
||||
|
||||
const COMMAND_CONFIG = {
|
||||
add: ['add'],
|
||||
@@ -99,7 +17,7 @@ const COMMAND_CONFIG = {
|
||||
rm: ['rm', 'remove'],
|
||||
};
|
||||
|
||||
export default async function main(client: Client) {
|
||||
export default async function dns(client: Client) {
|
||||
let argv;
|
||||
|
||||
try {
|
||||
@@ -114,7 +32,7 @@ export default async function main(client: Client) {
|
||||
}
|
||||
|
||||
if (argv['--help']) {
|
||||
help();
|
||||
client.output.print(help(dnsCommand, { columns: client.stderr.columns }));
|
||||
return 2;
|
||||
}
|
||||
|
||||
|
||||
3
packages/cli/src/commands/env/pull.ts
vendored
3
packages/cli/src/commands/env/pull.ts
vendored
@@ -24,6 +24,7 @@ import {
|
||||
} from '../../util/env/diff-env-files';
|
||||
import { isErrnoException } from '@vercel/error-utils';
|
||||
import { addToGitIgnore } from '../../util/link/add-to-gitignore';
|
||||
import JSONparse from 'json-parse-better-errors';
|
||||
|
||||
const CONTENTS_PREFIX = '# Created by Vercel CLI\n';
|
||||
|
||||
@@ -121,7 +122,7 @@ export default async function pull(
|
||||
// We need this because double quotes are stripped from the local .env file,
|
||||
// but `records` is already in the form of a JSON object that doesn't filter
|
||||
// double quotes.
|
||||
const newEnv = JSON.parse(JSON.stringify(records).replace(/\\"/g, ''));
|
||||
const newEnv = JSONparse(JSON.stringify(records).replace(/\\"/g, ''));
|
||||
deltaString = buildDeltaString(oldEnv, newEnv);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ export interface Command {
|
||||
name: string;
|
||||
description: string;
|
||||
arguments: CommandArgument[];
|
||||
subcommands?: Command[];
|
||||
options: CommandOption[];
|
||||
examples: CommandExample[];
|
||||
}
|
||||
@@ -280,6 +281,66 @@ export function buildCommandOptionLines(
|
||||
].join('');
|
||||
}
|
||||
|
||||
export function buildSubcommandLines(
|
||||
subcommands: Command[] | undefined,
|
||||
options: BuildHelpOutputOptions
|
||||
) {
|
||||
if (!subcommands) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// word wrapping requires the wrapped cell to have a fixed width.
|
||||
// We need to track cell sizes to ensure the final column of cells is
|
||||
// equal to the remainder of unused horizontal space.
|
||||
let maxWidthOfUnwrappedColumns = 0;
|
||||
const rows: (string | undefined | _CellOptions)[][] = [];
|
||||
for (const command of subcommands) {
|
||||
const nameCell = `${INDENT}${command.name}`;
|
||||
let argsCell = INDENT;
|
||||
|
||||
argsCell += command.arguments
|
||||
.map(arg => {
|
||||
return arg.required ? arg.name : `[${arg.name}]`;
|
||||
})
|
||||
.join(' ');
|
||||
|
||||
argsCell += INDENT;
|
||||
|
||||
const widthOfUnwrappedColumns = nameCell.length + argsCell.length;
|
||||
maxWidthOfUnwrappedColumns = Math.max(
|
||||
widthOfUnwrappedColumns,
|
||||
maxWidthOfUnwrappedColumns
|
||||
);
|
||||
|
||||
rows.push([
|
||||
nameCell,
|
||||
argsCell,
|
||||
{
|
||||
content: command.description,
|
||||
wordWrap: true,
|
||||
},
|
||||
]);
|
||||
}
|
||||
|
||||
const finalColumnWidth = options.columns - maxWidthOfUnwrappedColumns;
|
||||
|
||||
const table = new Table(
|
||||
Object.assign({}, tableOptions, {
|
||||
colWidths: [null, null, finalColumnWidth],
|
||||
})
|
||||
);
|
||||
|
||||
table.push(...rows);
|
||||
return [
|
||||
`${INDENT}${chalk.dim('Commands')}:`,
|
||||
NEWLINE,
|
||||
NEWLINE,
|
||||
table.toString(),
|
||||
NEWLINE,
|
||||
NEWLINE,
|
||||
].join('');
|
||||
}
|
||||
|
||||
export function buildCommandExampleLines(command: Command) {
|
||||
const outputArray: string[] = [`${INDENT}${chalk.dim('Examples:')}`, ''];
|
||||
for (const example of command.examples) {
|
||||
@@ -324,6 +385,7 @@ export function buildHelpOutput(
|
||||
'',
|
||||
buildCommandSynopsisLine(command),
|
||||
buildDescriptionLine(command, options),
|
||||
buildSubcommandLines(command.subcommands, options),
|
||||
buildCommandOptionLines(command.options, options, 'Options'),
|
||||
buildCommandOptionLines(globalCommandOptions, options, 'Global Options'),
|
||||
buildCommandExampleLines(command),
|
||||
|
||||
@@ -22,6 +22,16 @@ export const pullCommand: Command = {
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'git-branch',
|
||||
description:
|
||||
'Specify the Git branch to pull specific Environment Variables for',
|
||||
argument: 'branch',
|
||||
shorthand: null,
|
||||
type: 'string',
|
||||
deprecated: false,
|
||||
multi: false,
|
||||
},
|
||||
{
|
||||
name: 'yes',
|
||||
description:
|
||||
@@ -45,6 +55,10 @@ export const pullCommand: Command = {
|
||||
name: 'Pull for a specific environment',
|
||||
value: `${packageName} pull --environment=${getEnvTargetPlaceholder()}`,
|
||||
},
|
||||
{
|
||||
name: 'Pull for a preview feature branch',
|
||||
value: `${packageName} pull --environment=preview --git-branch=feature-branch`,
|
||||
},
|
||||
{
|
||||
name: 'If you want to download environment variables to a specific file, use `vercel env pull` instead',
|
||||
value: `${packageName} env pull`,
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import chalk from 'chalk';
|
||||
import table from 'text-table';
|
||||
import mri from 'mri';
|
||||
import ms from 'ms';
|
||||
import strlen from '../util/strlen.ts';
|
||||
import { handleError, error } from '../util/error';
|
||||
@@ -9,8 +8,8 @@ import exit from '../util/exit';
|
||||
import getScope from '../util/get-scope.ts';
|
||||
import confirm from '../util/input/confirm';
|
||||
import getCommandFlags from '../util/get-command-flags';
|
||||
import getPrefixedFlags from '../util/get-prefixed-flags';
|
||||
import { packageName, getCommandName, logo } from '../util/pkg-name.ts';
|
||||
import getArgs from '../util/get-args';
|
||||
|
||||
const help = () => {
|
||||
console.log(`
|
||||
@@ -81,14 +80,12 @@ let subcommand;
|
||||
let nextTimestamp;
|
||||
|
||||
const main = async client => {
|
||||
argv = mri(client.argv.slice(2), {
|
||||
boolean: ['help', 'debug', 'yes'],
|
||||
alias: {
|
||||
help: 'h',
|
||||
debug: 'd',
|
||||
yes: 'y',
|
||||
next: 'N',
|
||||
},
|
||||
argv = getArgs(client.argv.slice(2), {
|
||||
'--yes': Boolean,
|
||||
'--next': Number,
|
||||
'--test-warning': Boolean,
|
||||
'-y': '--yes',
|
||||
'-N': '--next',
|
||||
});
|
||||
|
||||
argv._ = argv._.slice(1);
|
||||
@@ -134,7 +131,8 @@ async function run({ output, contextName, currentTeam, client }) {
|
||||
const secrets = new NowSecrets({ client, currentTeam });
|
||||
const args = argv._.slice(1);
|
||||
const start = Date.now();
|
||||
const { 'test-warning': testWarningFlag } = argv;
|
||||
const { '--test-warning': testWarningFlag } = argv;
|
||||
|
||||
const commandName = getCommandName('secret ' + subcommand);
|
||||
|
||||
if (subcommand === 'ls' || subcommand === 'list') {
|
||||
@@ -190,14 +188,7 @@ async function run({ output, contextName, currentTeam, client }) {
|
||||
}
|
||||
|
||||
if (pagination && pagination.count === 20) {
|
||||
const prefixedArgs = getPrefixedFlags(argv);
|
||||
const flags = getCommandFlags(prefixedArgs, [
|
||||
'_',
|
||||
'--next',
|
||||
'-N',
|
||||
'-d',
|
||||
'-y',
|
||||
]);
|
||||
const flags = getCommandFlags(argv, ['_', '--next', '-N', '-d', '-y']);
|
||||
const nextCmd = `secrets ${subcommand}${flags} --next ${pagination.next}`;
|
||||
output.log(`To display the next page run ${getCommandName(nextCmd)}`);
|
||||
}
|
||||
@@ -225,7 +216,7 @@ async function run({ output, contextName, currentTeam, client }) {
|
||||
|
||||
if (theSecret) {
|
||||
const yes =
|
||||
argv.yes ||
|
||||
argv['--yes'] ||
|
||||
(await readConfirmation(client, output, theSecret, contextName));
|
||||
if (!yes) {
|
||||
output.print(`Canceled. Secret not deleted.\n`);
|
||||
|
||||
@@ -2,7 +2,6 @@ import chars from '../../util/output/chars';
|
||||
import table from '../../util/output/table';
|
||||
import getUser from '../../util/get-user';
|
||||
import getTeams from '../../util/teams/get-teams';
|
||||
import getPrefixedFlags from '../../util/get-prefixed-flags';
|
||||
import { packageName } from '../../util/pkg-name';
|
||||
import getCommandFlags from '../../util/get-command-flags';
|
||||
import cmd from '../../util/output/cmd';
|
||||
@@ -81,8 +80,7 @@ export default async function list(client: Client): Promise<number> {
|
||||
);
|
||||
|
||||
if (pagination?.count === 20) {
|
||||
const prefixedArgs = getPrefixedFlags(argv);
|
||||
const flags = getCommandFlags(prefixedArgs, ['_', '--next', '-N', '-d']);
|
||||
const flags = getCommandFlags(argv, ['_', '--next', '-N', '-d']);
|
||||
const nextCmd = `${packageName} teams ls${flags} --next ${pagination.next}`;
|
||||
console.log(); // empty line
|
||||
output.log(`To display the next page run ${cmd(nextCmd)}`);
|
||||
|
||||
@@ -20,7 +20,8 @@ export async function initCorepack({
|
||||
);
|
||||
if (pkg instanceof CantParseJSONFile) {
|
||||
console.warn(
|
||||
'Warning: Could not enable corepack because package.json is invalid JSON'
|
||||
'Warning: Could not enable corepack because package.json is invalid JSON',
|
||||
pkg.meta.parseErrorLocation
|
||||
);
|
||||
} else if (!pkg?.packageManager) {
|
||||
console.warn(
|
||||
|
||||
@@ -20,6 +20,7 @@ import isPortReachable from 'is-port-reachable';
|
||||
import deepEqual from 'fast-deep-equal';
|
||||
import npa from 'npm-package-arg';
|
||||
import type { ChildProcess } from 'child_process';
|
||||
import JSONparse from 'json-parse-better-errors';
|
||||
|
||||
import { getVercelIgnore, fileNameSymbol } from '@vercel/client';
|
||||
import {
|
||||
@@ -726,7 +727,7 @@ export default class DevServer {
|
||||
|
||||
try {
|
||||
const raw = await fs.readFile(abs, 'utf8');
|
||||
const parsed: WithFileNameSymbol<T> = JSON.parse(raw);
|
||||
const parsed: WithFileNameSymbol<T> = JSONparse(raw);
|
||||
parsed[fileNameSymbol] = rel;
|
||||
return parsed;
|
||||
} catch (err: unknown) {
|
||||
|
||||
@@ -668,13 +668,14 @@ export class CertMissing extends NowError<'ALIAS_IN_USE', { domain: string }> {
|
||||
|
||||
export class CantParseJSONFile extends NowError<
|
||||
'CANT_PARSE_JSON_FILE',
|
||||
{ file: string }
|
||||
{ file: string; parseErrorLocation: string }
|
||||
> {
|
||||
constructor(file: string) {
|
||||
constructor(file: string, parseErrorLocation: string) {
|
||||
const message = `Can't parse json file ${file}: ${parseErrorLocation}`;
|
||||
super({
|
||||
code: 'CANT_PARSE_JSON_FILE',
|
||||
meta: { file },
|
||||
message: `Can't parse json file`,
|
||||
meta: { file, parseErrorLocation },
|
||||
message,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
/**
|
||||
* This function adds a prefix `-` or `--` to the flags
|
||||
* passed from the command line, because the package `mri`
|
||||
* used to extract the args removes them for some reason.
|
||||
*/
|
||||
export default function getPrefixedFlags(args: { [key in string]: any }) {
|
||||
const prefixedArgs: {
|
||||
[key in string]: any;
|
||||
} = {};
|
||||
|
||||
for (const arg in args) {
|
||||
if (arg === '_') {
|
||||
prefixedArgs[arg] = args[arg];
|
||||
} else {
|
||||
let prefix = '-';
|
||||
// Full form flags need two dashes, whereas one letter
|
||||
// flags need only one.
|
||||
if (arg.length > 1) {
|
||||
prefix = '--';
|
||||
}
|
||||
prefixedArgs[`${prefix}${arg}`] = args[arg];
|
||||
}
|
||||
}
|
||||
|
||||
return prefixedArgs;
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
import fs from 'fs-extra';
|
||||
import { CantParseJSONFile } from './errors-ts';
|
||||
import JSONparse from 'json-parse-better-errors';
|
||||
import { errorToString } from '@vercel/error-utils';
|
||||
|
||||
export default async function readJSONFile<T>(
|
||||
file: string
|
||||
@@ -10,10 +12,10 @@ export default async function readJSONFile<T>(
|
||||
}
|
||||
|
||||
try {
|
||||
const json = JSON.parse(content);
|
||||
const json = JSONparse(content);
|
||||
return json;
|
||||
} catch (error) {
|
||||
return new CantParseJSONFile(file);
|
||||
return new CantParseJSONFile(file, errorToString(error));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,12 @@
|
||||
# @vercel/client
|
||||
|
||||
## 13.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`9e3827c78`](https://github.com/vercel/vercel/commit/9e3827c785e1bc45f2bed421132167381481770f)]:
|
||||
- @vercel/build-utils@7.1.0
|
||||
|
||||
## 13.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/client",
|
||||
"version": "13.0.0",
|
||||
"version": "13.0.1",
|
||||
"main": "dist/index.js",
|
||||
"typings": "dist/index.d.ts",
|
||||
"homepage": "https://vercel.com",
|
||||
@@ -36,7 +36,7 @@
|
||||
"typescript": "4.9.5"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/routing-utils": "3.0.0",
|
||||
"@zeit/fetch": "5.2.0",
|
||||
"async-retry": "1.2.3",
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
# @vercel/edge
|
||||
|
||||
## 1.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- upgrade edge-runtime ([#10385](https://github.com/vercel/vercel/pull/10385))
|
||||
|
||||
## 1.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/edge",
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.1",
|
||||
"license": "Apache-2.0",
|
||||
"main": "dist/index.js",
|
||||
"module": "dist/index.mjs",
|
||||
@@ -21,7 +21,7 @@
|
||||
"build:docs": "typedoc && node scripts/fix-links.js && prettier --write docs/**/*.md docs/*.md"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@edge-runtime/jest-environment": "2.2.3",
|
||||
"@edge-runtime/jest-environment": "2.3.0",
|
||||
"@types/jest": "27.4.1",
|
||||
"jest-junit": "16.0.0",
|
||||
"ts-node": "8.9.1",
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
# @vercel/error-utils
|
||||
|
||||
## 2.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- fix `files` in package.json to use `dist` ([#10378](https://github.com/vercel/vercel/pull/10378))
|
||||
|
||||
## 2.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
{
|
||||
"name": "@vercel/error-utils",
|
||||
"version": "2.0.0",
|
||||
"version": "2.0.1",
|
||||
"description": "A collection of error utilities for vercel/vercel",
|
||||
"main": "dist/index.js",
|
||||
"types": "dist/index.d.ts",
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/vercel/vercel.git",
|
||||
|
||||
@@ -1,5 +1,14 @@
|
||||
# @vercel/frameworks
|
||||
|
||||
## 2.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- move some frameworks deps to dependencies ([#10380](https://github.com/vercel/vercel/pull/10380))
|
||||
|
||||
- Updated dependencies [[`96f99c714`](https://github.com/vercel/vercel/commit/96f99c714715651b85eb7a03f58ecc9e1316d156)]:
|
||||
- @vercel/error-utils@2.0.1
|
||||
|
||||
## 2.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/frameworks",
|
||||
"version": "2.0.0",
|
||||
"version": "2.0.1",
|
||||
"main": "./dist/frameworks.js",
|
||||
"types": "./dist/frameworks.d.ts",
|
||||
"files": [
|
||||
@@ -19,14 +19,14 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@iarna/toml": "2.2.3",
|
||||
"js-yaml": "3.13.1"
|
||||
"js-yaml": "3.13.1",
|
||||
"@vercel/error-utils": "2.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/jest": "27.4.1",
|
||||
"@types/js-yaml": "3.12.1",
|
||||
"@types/node": "14.18.33",
|
||||
"@types/node-fetch": "2.5.8",
|
||||
"@vercel/error-utils": "2.0.0",
|
||||
"@vercel/routing-utils": "3.0.0",
|
||||
"ajv": "6.12.2",
|
||||
"jest-junit": "16.0.0",
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
# @vercel/fs-detectors
|
||||
|
||||
## 5.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`c615423a0`](https://github.com/vercel/vercel/commit/c615423a0b60ed64bf5e0e10bbc4ca997c31bd60), [`96f99c714`](https://github.com/vercel/vercel/commit/96f99c714715651b85eb7a03f58ecc9e1316d156)]:
|
||||
- @vercel/frameworks@2.0.1
|
||||
- @vercel/error-utils@2.0.1
|
||||
|
||||
## 5.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/fs-detectors",
|
||||
"version": "5.0.0",
|
||||
"version": "5.0.1",
|
||||
"description": "Vercel filesystem detectors",
|
||||
"main": "./dist/index.js",
|
||||
"types": "./dist/index.d.ts",
|
||||
@@ -20,8 +20,8 @@
|
||||
"test-e2e": "pnpm test test/integration.test.ts"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vercel/error-utils": "2.0.0",
|
||||
"@vercel/frameworks": "2.0.0",
|
||||
"@vercel/error-utils": "2.0.1",
|
||||
"@vercel/frameworks": "2.0.1",
|
||||
"@vercel/routing-utils": "3.0.0",
|
||||
"glob": "8.0.3",
|
||||
"js-yaml": "4.1.0",
|
||||
@@ -36,7 +36,7 @@
|
||||
"@types/minimatch": "3.0.5",
|
||||
"@types/node": "14.18.33",
|
||||
"@types/semver": "7.3.10",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"jest-junit": "16.0.0",
|
||||
"typescript": "4.9.5"
|
||||
}
|
||||
|
||||
@@ -1,5 +1,27 @@
|
||||
# @vercel/gatsby-plugin-vercel-builder
|
||||
|
||||
## 2.0.3
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`9e3827c78`](https://github.com/vercel/vercel/commit/9e3827c785e1bc45f2bed421132167381481770f)]:
|
||||
- @vercel/build-utils@7.1.0
|
||||
- @vercel/node@3.0.3
|
||||
|
||||
## 2.0.2
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`597a8a817`](https://github.com/vercel/vercel/commit/597a8a81764c39e70c65b98e78bf4c3827a779a7), [`3f6d99470`](https://github.com/vercel/vercel/commit/3f6d99470db86681e006d66507f32afcea086b41)]:
|
||||
- @vercel/node@3.0.2
|
||||
|
||||
## 2.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies []:
|
||||
- @vercel/node@3.0.1
|
||||
|
||||
## 2.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/gatsby-plugin-vercel-builder",
|
||||
"version": "2.0.0",
|
||||
"version": "2.0.3",
|
||||
"main": "dist/index.js",
|
||||
"files": [
|
||||
"dist",
|
||||
@@ -20,8 +20,8 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@sinclair/typebox": "0.25.24",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/node": "3.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/node": "3.0.3",
|
||||
"@vercel/routing-utils": "3.0.0",
|
||||
"esbuild": "0.14.47",
|
||||
"etag": "1.8.1",
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
"@types/node-fetch": "^2.3.0",
|
||||
"@types/tar": "^4.0.0",
|
||||
"@types/yauzl-promise": "2.1.0",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/ncc": "0.24.0",
|
||||
"async-retry": "1.3.1",
|
||||
"execa": "^1.0.0",
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
"devDependencies": {
|
||||
"@types/jest": "27.5.1",
|
||||
"@types/node": "14.18.33",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/static-config": "3.0.0",
|
||||
"execa": "3.2.0",
|
||||
"fs-extra": "11.1.0",
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
# @vercel/next
|
||||
|
||||
## 4.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- fix RSC matching behavior & 404 status code on `fallback: false` ([#10388](https://github.com/vercel/vercel/pull/10388))
|
||||
|
||||
- Add handling to leverage RSC prefetch outputs ([#10390](https://github.com/vercel/vercel/pull/10390))
|
||||
|
||||
## 4.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/next",
|
||||
"version": "4.0.0",
|
||||
"version": "4.0.1",
|
||||
"license": "Apache-2.0",
|
||||
"main": "./dist/index",
|
||||
"homepage": "https://vercel.com/docs/runtimes#official-runtimes/next-js",
|
||||
@@ -35,7 +35,7 @@
|
||||
"@types/semver": "6.0.0",
|
||||
"@types/text-table": "0.2.1",
|
||||
"@types/webpack-sources": "3.2.0",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/nft": "0.22.5",
|
||||
"@vercel/routing-utils": "3.0.0",
|
||||
"async-sema": "3.0.1",
|
||||
|
||||
@@ -168,12 +168,15 @@ export async function serverBuild({
|
||||
}
|
||||
}
|
||||
|
||||
const APP_PREFETCH_SUFFIX = '.prefetch.rsc';
|
||||
let appRscPrefetches: UnwrapPromise<ReturnType<typeof glob>> = {};
|
||||
let appBuildTraces: UnwrapPromise<ReturnType<typeof glob>> = {};
|
||||
let appDir: string | null = null;
|
||||
|
||||
if (appPathRoutesManifest) {
|
||||
appDir = path.join(pagesDir, '../app');
|
||||
appBuildTraces = await glob('**/*.js.nft.json', appDir);
|
||||
appRscPrefetches = await glob(`**/*${APP_PREFETCH_SUFFIX}`, appDir);
|
||||
}
|
||||
|
||||
const isCorrectNotFoundRoutes = semver.gte(
|
||||
@@ -1225,6 +1228,7 @@ export async function serverBuild({
|
||||
}
|
||||
|
||||
const rscHeader = routesManifest.rsc?.header?.toLowerCase() || '__rsc__';
|
||||
const rscPrefetchHeader = routesManifest.rsc?.prefetchHeader?.toLowerCase();
|
||||
const rscVaryHeader =
|
||||
routesManifest?.rsc?.varyHeader ||
|
||||
'RSC, Next-Router-State-Tree, Next-Router-Prefetch';
|
||||
@@ -1236,6 +1240,7 @@ export async function serverBuild({
|
||||
output: {
|
||||
...publicDirectoryFiles,
|
||||
...lambdas,
|
||||
...appRscPrefetches,
|
||||
// Prerenders may override Lambdas -- this is an intentional behavior.
|
||||
...prerenders,
|
||||
...staticPages,
|
||||
@@ -1475,6 +1480,49 @@ export async function serverBuild({
|
||||
|
||||
...(appDir
|
||||
? [
|
||||
...(rscPrefetchHeader
|
||||
? [
|
||||
{
|
||||
src: `^${path.posix.join('/', entryDirectory, '/')}`,
|
||||
has: [
|
||||
{
|
||||
type: 'header',
|
||||
key: rscPrefetchHeader,
|
||||
},
|
||||
],
|
||||
dest: path.posix.join(
|
||||
'/',
|
||||
entryDirectory,
|
||||
'/index.prefetch.rsc'
|
||||
),
|
||||
headers: { vary: rscVaryHeader },
|
||||
continue: true,
|
||||
override: true,
|
||||
},
|
||||
{
|
||||
src: `^${path.posix.join(
|
||||
'/',
|
||||
entryDirectory,
|
||||
'/((?!.+\\.rsc).+?)(?:/)?$'
|
||||
)}`,
|
||||
has: [
|
||||
{
|
||||
type: 'header',
|
||||
key: rscPrefetchHeader,
|
||||
},
|
||||
],
|
||||
dest: path.posix.join(
|
||||
'/',
|
||||
entryDirectory,
|
||||
`/$1${APP_PREFETCH_SUFFIX}`
|
||||
),
|
||||
headers: { vary: rscVaryHeader },
|
||||
continue: true,
|
||||
override: true,
|
||||
},
|
||||
]
|
||||
: []),
|
||||
|
||||
{
|
||||
src: `^${path.posix.join('/', entryDirectory, '/')}`,
|
||||
has: [
|
||||
@@ -1539,10 +1587,98 @@ export async function serverBuild({
|
||||
]
|
||||
: []),
|
||||
|
||||
...(rscPrefetchHeader
|
||||
? [
|
||||
{
|
||||
src: path.posix.join(
|
||||
'/',
|
||||
entryDirectory,
|
||||
`/index${APP_PREFETCH_SUFFIX}`
|
||||
),
|
||||
dest: path.posix.join('/', entryDirectory, '/index.rsc'),
|
||||
has: [
|
||||
{
|
||||
type: 'header',
|
||||
key: rscPrefetchHeader,
|
||||
},
|
||||
],
|
||||
continue: true,
|
||||
override: true,
|
||||
},
|
||||
{
|
||||
src: `^${path.posix.join(
|
||||
'/',
|
||||
entryDirectory,
|
||||
`/(.+?)${APP_PREFETCH_SUFFIX}(?:/)?$`
|
||||
)}`,
|
||||
dest: path.posix.join('/', entryDirectory, '/$1.rsc'),
|
||||
has: [
|
||||
{
|
||||
type: 'header',
|
||||
key: rscPrefetchHeader,
|
||||
},
|
||||
],
|
||||
continue: true,
|
||||
override: true,
|
||||
},
|
||||
]
|
||||
: []),
|
||||
|
||||
...(appDir
|
||||
? [
|
||||
// check routes that end in `.rsc` to see if a page with the resulting name (sans-.rsc) exists in the filesystem
|
||||
// if so, we want to match that page instead. (This matters when prefetching a pages route while on an appdir route)
|
||||
{
|
||||
src: `^${path.posix.join('/', entryDirectory, '/(.*)\\.rsc$')}`,
|
||||
dest: path.posix.join('/', entryDirectory, '/$1'),
|
||||
has: [
|
||||
{
|
||||
type: 'header',
|
||||
key: rscHeader,
|
||||
},
|
||||
],
|
||||
...(rscPrefetchHeader
|
||||
? {
|
||||
missing: [
|
||||
{
|
||||
type: 'header',
|
||||
key: rscPrefetchHeader,
|
||||
},
|
||||
],
|
||||
}
|
||||
: {}),
|
||||
check: true,
|
||||
} as Route,
|
||||
]
|
||||
: []),
|
||||
|
||||
// These need to come before handle: miss or else they are grouped
|
||||
// with that routing section
|
||||
...afterFilesRewrites,
|
||||
|
||||
...(appDir
|
||||
? [
|
||||
// rewrite route back to `.rsc`, but skip checking fs
|
||||
{
|
||||
src: `^${path.posix.join(
|
||||
'/',
|
||||
entryDirectory,
|
||||
'/((?!.+\\.rsc).+?)(?:/)?$'
|
||||
)}`,
|
||||
has: [
|
||||
{
|
||||
type: 'header',
|
||||
key: rscHeader,
|
||||
},
|
||||
],
|
||||
dest: path.posix.join('/', entryDirectory, '/$1.rsc'),
|
||||
headers: { vary: rscVaryHeader },
|
||||
continue: true,
|
||||
override: true,
|
||||
},
|
||||
]
|
||||
: []),
|
||||
|
||||
// make sure 404 page is used when a directory is matched without
|
||||
// an index page
|
||||
{ handle: 'resource' },
|
||||
|
||||
@@ -236,6 +236,7 @@ type RoutesManifestOld = {
|
||||
rsc?: {
|
||||
header: string;
|
||||
varyHeader: string;
|
||||
prefetchHeader?: string;
|
||||
contentTypeHeader: string;
|
||||
};
|
||||
skipMiddlewareUrlNormalize?: boolean;
|
||||
@@ -2002,6 +2003,10 @@ export const onPrerenderRoute =
|
||||
),
|
||||
});
|
||||
|
||||
if (isOmittedOrNotFound) {
|
||||
initialStatus = 404;
|
||||
}
|
||||
|
||||
if (isAppPathRoute) {
|
||||
// for literal index routes we need to append an additional /index
|
||||
// due to the proxy's normalizing for /index routes
|
||||
|
||||
7
packages/next/test/fixtures/00-app-dir-catchall-pages/app/[lang]/[...all]/page.js
vendored
Normal file
7
packages/next/test/fixtures/00-app-dir-catchall-pages/app/[lang]/[...all]/page.js
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
export default function CatchAllPage() {
|
||||
return (
|
||||
<div>
|
||||
<h1>CatchAllPage</h1>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
8
packages/next/test/fixtures/00-app-dir-catchall-pages/app/[lang]/layout.js
vendored
Normal file
8
packages/next/test/fixtures/00-app-dir-catchall-pages/app/[lang]/layout.js
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
export default function RootLayout({ children }) {
|
||||
return (
|
||||
<html>
|
||||
<head />
|
||||
<body>{children}</body>
|
||||
</html>
|
||||
)
|
||||
}
|
||||
7
packages/next/test/fixtures/00-app-dir-catchall-pages/app/[lang]/page.js
vendored
Normal file
7
packages/next/test/fixtures/00-app-dir-catchall-pages/app/[lang]/page.js
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
export default function Home() {
|
||||
return (
|
||||
<div>
|
||||
<h1>Home</h1>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
12
packages/next/test/fixtures/00-app-dir-catchall-pages/index.test.js
vendored
Normal file
12
packages/next/test/fixtures/00-app-dir-catchall-pages/index.test.js
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
/* eslint-env jest */
|
||||
const path = require('path');
|
||||
const { deployAndTest } = require('../../utils');
|
||||
|
||||
const ctx = {};
|
||||
|
||||
describe(`${__dirname.split(path.sep).pop()}`, () => {
|
||||
it('should deploy and pass probe checks', async () => {
|
||||
const info = await deployAndTest(__dirname);
|
||||
Object.assign(ctx, info);
|
||||
});
|
||||
});
|
||||
1
packages/next/test/fixtures/00-app-dir-catchall-pages/next.config.js
vendored
Normal file
1
packages/next/test/fixtures/00-app-dir-catchall-pages/next.config.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
module.exports = {};
|
||||
8
packages/next/test/fixtures/00-app-dir-catchall-pages/package.json
vendored
Normal file
8
packages/next/test/fixtures/00-app-dir-catchall-pages/package.json
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"next": "canary",
|
||||
"react": "experimental",
|
||||
"react-dom": "experimental"
|
||||
},
|
||||
"ignoreNextjsUpdates": true
|
||||
}
|
||||
7
packages/next/test/fixtures/00-app-dir-catchall-pages/pages/[lang]/about.js
vendored
Normal file
7
packages/next/test/fixtures/00-app-dir-catchall-pages/pages/[lang]/about.js
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
export default function About() {
|
||||
return (
|
||||
<div>
|
||||
<h1>About Page</h1>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
30
packages/next/test/fixtures/00-app-dir-catchall-pages/probes.json
vendored
Normal file
30
packages/next/test/fixtures/00-app-dir-catchall-pages/probes.json
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"probes": [
|
||||
{
|
||||
"path": "/en",
|
||||
"status": 200,
|
||||
"mustContain": "Home"
|
||||
},
|
||||
{
|
||||
"path": "/en/about",
|
||||
"status": 200,
|
||||
"mustContain": "About Page"
|
||||
},
|
||||
{
|
||||
"path": "/en/about",
|
||||
"status": 200,
|
||||
"headers": {
|
||||
"RSC": "1"
|
||||
},
|
||||
"mustContain": "<html"
|
||||
},
|
||||
{
|
||||
"path": "/en/foobar",
|
||||
"status": 200,
|
||||
"headers": {
|
||||
"RSC": "1"
|
||||
},
|
||||
"mustNotContain": "<html"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,3 +1,5 @@
|
||||
export const dynamic = 'force-dynamic'
|
||||
|
||||
export default function ClientPage() {
|
||||
return (
|
||||
<>
|
||||
|
||||
@@ -37,6 +37,16 @@
|
||||
"mustContain": ":{",
|
||||
"mustNotContain": "<html"
|
||||
},
|
||||
{
|
||||
"path": "/dynamic/category-1/id-1",
|
||||
"status": 200,
|
||||
"headers": {
|
||||
"RSC": "1",
|
||||
"Next-Router-Prefetch": "1"
|
||||
},
|
||||
"mustContain": ":",
|
||||
"mustNotContain": "<html"
|
||||
},
|
||||
{
|
||||
"path": "/ssg",
|
||||
"status": 200,
|
||||
@@ -45,6 +55,25 @@
|
||||
"vary": "RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Url"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "/client-nested",
|
||||
"status": 200,
|
||||
"mustContain": ":",
|
||||
"mustNotContain": "<html",
|
||||
"headers": {
|
||||
"Next-Router-Prefetch": "1",
|
||||
"RSC": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "/client-nested",
|
||||
"status": 200,
|
||||
"mustContain": "hello",
|
||||
"mustNotContain": "<html",
|
||||
"headers": {
|
||||
"RSC": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "/ssg",
|
||||
"status": 200,
|
||||
@@ -57,6 +86,19 @@
|
||||
"mustContain": ":{",
|
||||
"mustNotContain": "<html"
|
||||
},
|
||||
{
|
||||
"path": "/ssg",
|
||||
"status": 200,
|
||||
"responseHeaders": {
|
||||
"vary": "RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Url"
|
||||
},
|
||||
"headers": {
|
||||
"RSC": "1",
|
||||
"Next-Router-Prefetch": "1"
|
||||
},
|
||||
"mustContain": ":{",
|
||||
"mustNotContain": "<html"
|
||||
},
|
||||
{
|
||||
"path": "/ssg?override=1",
|
||||
"status": 307,
|
||||
|
||||
12
packages/next/test/fixtures/00-fallback-false-404/index.test.js
vendored
Normal file
12
packages/next/test/fixtures/00-fallback-false-404/index.test.js
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
/* eslint-env jest */
|
||||
const path = require('path');
|
||||
const { deployAndTest } = require('../../utils');
|
||||
|
||||
const ctx = {};
|
||||
|
||||
describe(`${__dirname.split(path.sep).pop()}`, () => {
|
||||
it('should deploy and pass probe checks', async () => {
|
||||
const info = await deployAndTest(__dirname);
|
||||
Object.assign(ctx, info);
|
||||
});
|
||||
});
|
||||
1
packages/next/test/fixtures/00-fallback-false-404/next.config.js
vendored
Normal file
1
packages/next/test/fixtures/00-fallback-false-404/next.config.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
module.exports = {};
|
||||
13
packages/next/test/fixtures/00-fallback-false-404/package.json
vendored
Normal file
13
packages/next/test/fixtures/00-fallback-false-404/package.json
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"scripts": {
|
||||
"dev": "next dev",
|
||||
"build": "next build",
|
||||
"start": "next start"
|
||||
},
|
||||
"dependencies": {
|
||||
"next": "canary",
|
||||
"react": "latest",
|
||||
"react-dom": "latest"
|
||||
},
|
||||
"ignoreNextjsUpdates": true
|
||||
}
|
||||
3
packages/next/test/fixtures/00-fallback-false-404/pages/api/hello.js
vendored
Normal file
3
packages/next/test/fixtures/00-fallback-false-404/pages/api/hello.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export default function handler(req, res) {
|
||||
res.status(200).json({ name: 'John Doe' });
|
||||
}
|
||||
24
packages/next/test/fixtures/00-fallback-false-404/pages/blog/[slug].js
vendored
Normal file
24
packages/next/test/fixtures/00-fallback-false-404/pages/blog/[slug].js
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
export default function Page(props) {
|
||||
return (
|
||||
<>
|
||||
<p id="page">blog slug</p>
|
||||
<p id="slug">{props.slug}</p>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
export function getStaticProps({ params }) {
|
||||
const result =
|
||||
params?.slug === 'awesome'
|
||||
? { props: { slug: params?.slug } }
|
||||
: { notFound: true };
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
export function getStaticPaths() {
|
||||
return {
|
||||
paths: [{ params: { slug: 'awesome' } }],
|
||||
fallback: false,
|
||||
};
|
||||
}
|
||||
19
packages/next/test/fixtures/00-fallback-false-404/probes.json
vendored
Normal file
19
packages/next/test/fixtures/00-fallback-false-404/probes.json
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"probes": [
|
||||
{
|
||||
"path": "/blog/awesome",
|
||||
"status": 200,
|
||||
"mustContain": "blog slug"
|
||||
},
|
||||
{
|
||||
"path": "/blog/does-not-exist",
|
||||
"status": 404,
|
||||
"mustContain": "This page could not be found"
|
||||
},
|
||||
{
|
||||
"path": "/blog/[slug]",
|
||||
"status": 404,
|
||||
"mustContain": "This page could not be found"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,5 +1,27 @@
|
||||
# @vercel/node
|
||||
|
||||
## 3.0.3
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`9e3827c78`](https://github.com/vercel/vercel/commit/9e3827c785e1bc45f2bed421132167381481770f)]:
|
||||
- @vercel/build-utils@7.1.0
|
||||
|
||||
## 3.0.2
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- upgrade edge-runtime ([#10385](https://github.com/vercel/vercel/pull/10385))
|
||||
|
||||
- use `undici` instead of `node-fetch` ([#10387](https://github.com/vercel/vercel/pull/10387))
|
||||
|
||||
## 3.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`96f99c714`](https://github.com/vercel/vercel/commit/96f99c714715651b85eb7a03f58ecc9e1316d156)]:
|
||||
- @vercel/error-utils@2.0.1
|
||||
|
||||
## 3.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/node",
|
||||
"version": "3.0.0",
|
||||
"version": "3.0.3",
|
||||
"license": "Apache-2.0",
|
||||
"main": "./dist/index",
|
||||
"homepage": "https://vercel.com/docs/runtimes#official-runtimes/node-js",
|
||||
@@ -19,24 +19,24 @@
|
||||
"dist"
|
||||
],
|
||||
"dependencies": {
|
||||
"@edge-runtime/node-utils": "2.0.3",
|
||||
"@edge-runtime/primitives": "2.1.2",
|
||||
"@edge-runtime/vm": "3.0.1",
|
||||
"@edge-runtime/node-utils": "2.2.0",
|
||||
"@edge-runtime/primitives": "3.1.0",
|
||||
"@edge-runtime/vm": "3.1.0",
|
||||
"@types/node": "14.18.33",
|
||||
"@types/node-fetch": "2.6.3",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/error-utils": "2.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/error-utils": "2.0.1",
|
||||
"@vercel/static-config": "3.0.0",
|
||||
"async-listen": "3.0.0",
|
||||
"content-type": "1.0.5",
|
||||
"edge-runtime": "2.4.4",
|
||||
"edge-runtime": "2.5.0",
|
||||
"esbuild": "0.14.47",
|
||||
"exit-hook": "2.2.1",
|
||||
"node-fetch": "2.6.9",
|
||||
"path-to-regexp": "6.2.1",
|
||||
"ts-morph": "12.0.0",
|
||||
"ts-node": "10.9.1",
|
||||
"typescript": "4.9.5"
|
||||
"typescript": "4.9.5",
|
||||
"undici": "5.23.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.5.0",
|
||||
|
||||
@@ -6,13 +6,14 @@ if (!entrypoint) {
|
||||
}
|
||||
|
||||
import { join } from 'path';
|
||||
import type { Headers } from 'node-fetch';
|
||||
import type { Headers } from 'undici';
|
||||
import type { VercelProxyResponse } from './types.js';
|
||||
import { Config } from '@vercel/build-utils';
|
||||
import { createEdgeEventHandler } from './edge-functions/edge-handler.mjs';
|
||||
import { createServer, IncomingMessage, ServerResponse } from 'http';
|
||||
import { createServerlessEventHandler } from './serverless-functions/serverless-handler.mjs';
|
||||
import { isEdgeRuntime, logError, validateConfiguredRuntime } from './utils.js';
|
||||
import { toToReadable } from '@edge-runtime/node-utils';
|
||||
import { getConfig } from '@vercel/static-config';
|
||||
import { Project } from 'ts-morph';
|
||||
import { listen } from 'async-listen';
|
||||
@@ -104,18 +105,20 @@ async function onDevRequest(
|
||||
const { headers, body, status } = await handleEvent(req);
|
||||
res.statusCode = status;
|
||||
|
||||
for (const [key, value] of headers as unknown as Headers) {
|
||||
// node-fetch does not support headers.getSetCookie(), so we need to
|
||||
// manually set the raw value which can be an array of strings
|
||||
if (value !== undefined) {
|
||||
res.setHeader(key, key === 'set-cookie' ? headers.raw()[key] : value);
|
||||
}
|
||||
for (const [key, value] of headers as Headers) {
|
||||
if (value !== undefined)
|
||||
res.setHeader(
|
||||
key,
|
||||
key === 'set-cookie' ? headers.getSetCookie() : value
|
||||
);
|
||||
}
|
||||
|
||||
if (body instanceof Buffer) {
|
||||
if (body === null) {
|
||||
res.end();
|
||||
} else if (body instanceof Buffer) {
|
||||
res.end(body);
|
||||
} else {
|
||||
body.pipe(res);
|
||||
toToReadable(body).pipe(res);
|
||||
}
|
||||
} catch (error: any) {
|
||||
res.statusCode = 500;
|
||||
|
||||
@@ -4,13 +4,13 @@ import {
|
||||
NodeCompatBindings,
|
||||
} from './edge-node-compat-plugin.mjs';
|
||||
import { EdgeRuntime, runServer } from 'edge-runtime';
|
||||
import fetch, { Headers } from 'node-fetch';
|
||||
import { fetch, Headers } from 'undici';
|
||||
import { isError } from '@vercel/error-utils';
|
||||
import { readFileSync } from 'fs';
|
||||
import { serializeBody, entrypointToOutputPath, logError } from '../utils.js';
|
||||
import esbuild from 'esbuild';
|
||||
import exitHook from 'exit-hook';
|
||||
import type { HeadersInit } from 'node-fetch';
|
||||
import type { HeadersInit } from 'undici';
|
||||
import type { VercelProxyResponse } from '../types.js';
|
||||
import type { IncomingMessage } from 'http';
|
||||
import { fileURLToPath } from 'url';
|
||||
@@ -196,7 +196,6 @@ export async function createEdgeEventHandler(
|
||||
if (body !== undefined) headers.set('content-length', String(body.length));
|
||||
|
||||
const url = new URL(request.url ?? '/', server.url);
|
||||
// @ts-expect-error
|
||||
const response = await fetch(url, {
|
||||
body,
|
||||
headers,
|
||||
|
||||
@@ -26,6 +26,7 @@ const webHandlerToNodeHandler = buildToNodeHandler(
|
||||
{
|
||||
Headers,
|
||||
ReadableStream,
|
||||
// @ts-expect-error Property 'duplex' is missing in type 'Request'
|
||||
Request: class extends Request {
|
||||
constructor(input: RequestInfo | URL, init?: RequestInit | undefined) {
|
||||
super(input, addDuplexToInit(init));
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
import { addHelpers } from './helpers.js';
|
||||
import { createServer } from 'http';
|
||||
import { serializeBody } from '../utils.js';
|
||||
import { streamToBuffer } from '@vercel/build-utils';
|
||||
import exitHook from 'exit-hook';
|
||||
import fetch from 'node-fetch';
|
||||
import { Headers, fetch } from 'undici';
|
||||
import { listen } from 'async-listen';
|
||||
import { isAbsolute } from 'path';
|
||||
import { pathToFileURL } from 'url';
|
||||
@@ -104,10 +103,10 @@ export async function createServerlessEventHandler(
|
||||
|
||||
return async function (request: IncomingMessage) {
|
||||
const url = new URL(request.url ?? '/', server.url);
|
||||
// @ts-expect-error
|
||||
const response = await fetch(url, {
|
||||
body: await serializeBody(request),
|
||||
compress: !isStreaming,
|
||||
// @ts-expect-error
|
||||
headers: {
|
||||
...request.headers,
|
||||
host: request.headers['x-forwarded-host'],
|
||||
@@ -116,28 +115,33 @@ export async function createServerlessEventHandler(
|
||||
redirect: 'manual',
|
||||
});
|
||||
|
||||
let body;
|
||||
let body: Buffer | null = null;
|
||||
let headers: Headers = response.headers;
|
||||
|
||||
if (isStreaming) {
|
||||
body = response.body;
|
||||
} else {
|
||||
body = await streamToBuffer(response.body);
|
||||
body = Buffer.from(await response.arrayBuffer());
|
||||
|
||||
const contentEncoding = response.headers.get('content-encoding');
|
||||
if (contentEncoding) {
|
||||
body = compress(body, contentEncoding);
|
||||
response.headers.set('content-length', Buffer.byteLength(body));
|
||||
const clonedHeaders = [];
|
||||
console.log(response.headers.entries());
|
||||
for (const [key, value] of response.headers.entries()) {
|
||||
if (key !== 'transfer-encoding') {
|
||||
// transfer-encoding is only for streaming response
|
||||
clonedHeaders.push([key, value]);
|
||||
}
|
||||
}
|
||||
clonedHeaders.push(['content-length', String(Buffer.byteLength(body))]);
|
||||
headers = new Headers(clonedHeaders);
|
||||
}
|
||||
|
||||
/**
|
||||
* `transfer-encoding` is related to streaming chunks.
|
||||
* Since we are buffering the response.body, it should be stripped.
|
||||
*/
|
||||
response.headers.delete('transfer-encoding');
|
||||
}
|
||||
|
||||
return {
|
||||
status: response.status,
|
||||
headers: response.headers,
|
||||
headers,
|
||||
body,
|
||||
encoding: 'utf8',
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { ServerResponse, IncomingMessage } from 'http';
|
||||
import type { Headers } from 'node-fetch';
|
||||
import type { Headers } from 'undici';
|
||||
|
||||
export type VercelRequestCookies = { [key: string]: string };
|
||||
export type VercelRequestQuery = { [key: string]: string | string[] };
|
||||
@@ -44,6 +44,6 @@ export type NowApiHandler = VercelApiHandler;
|
||||
export interface VercelProxyResponse {
|
||||
status: number;
|
||||
headers: Headers;
|
||||
body: Buffer | NodeJS.ReadableStream;
|
||||
body: ReadableStream<Uint8Array> | Buffer | null;
|
||||
encoding: BufferEncoding;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { forkDevServer, readMessage } from '../../src/fork-dev-server';
|
||||
import { resolve, extname } from 'path';
|
||||
import fetch from 'node-fetch';
|
||||
import { fetch } from 'undici';
|
||||
import { createServer } from 'http';
|
||||
import { listen } from 'async-listen';
|
||||
import zlib from 'zlib';
|
||||
@@ -302,7 +302,7 @@ test('allow setting multiple cookies with same name', async () => {
|
||||
text: 'Hello, world!',
|
||||
});
|
||||
|
||||
expect(response.headers.raw()['set-cookie']).toEqual(['a=x', 'b=y', 'c=z']);
|
||||
expect(response.headers.getSetCookie()).toEqual(['a=x', 'b=y', 'c=z']);
|
||||
} finally {
|
||||
child.kill(9);
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
"@types/execa": "^0.9.0",
|
||||
"@types/jest": "27.4.1",
|
||||
"@types/node": "14.18.33",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/ncc": "0.24.0",
|
||||
"execa": "^1.0.0",
|
||||
"jest-junit": "16.0.0"
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
"@types/aws-lambda": "8.10.19",
|
||||
"@types/node": "14.18.33",
|
||||
"@types/semver": "6.0.0",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"execa": "3.2.0",
|
||||
"fs-extra": "11.1.0",
|
||||
"jest-junit": "16.0.0"
|
||||
|
||||
@@ -1,5 +1,18 @@
|
||||
# @vercel/remix-builder
|
||||
|
||||
## 2.0.2
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [[`9e3827c78`](https://github.com/vercel/vercel/commit/9e3827c785e1bc45f2bed421132167381481770f)]:
|
||||
- @vercel/build-utils@7.1.0
|
||||
|
||||
## 2.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Update `@remix-run/dev` fork to v1.19.3 ([#10381](https://github.com/vercel/vercel/pull/10381))
|
||||
|
||||
## 2.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/remix-builder",
|
||||
"version": "2.0.0",
|
||||
"version": "2.0.2",
|
||||
"license": "Apache-2.0",
|
||||
"main": "./dist/index.js",
|
||||
"homepage": "https://vercel.com/docs",
|
||||
@@ -20,7 +20,7 @@
|
||||
"defaults"
|
||||
],
|
||||
"dependencies": {
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/nft": "0.22.5",
|
||||
"@vercel/static-config": "3.0.0",
|
||||
"path-to-regexp": "6.2.1",
|
||||
@@ -28,7 +28,7 @@
|
||||
"ts-morph": "12.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@remix-run/dev": "npm:@vercel/remix-run-dev@1.19.2",
|
||||
"@remix-run/dev": "npm:@vercel/remix-run-dev@1.19.3",
|
||||
"@types/jest": "27.5.1",
|
||||
"@types/node": "14.18.33",
|
||||
"@types/semver": "7.3.13",
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
"devDependencies": {
|
||||
"@types/fs-extra": "8.0.0",
|
||||
"@types/semver": "6.0.0",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/ncc": "0.24.0",
|
||||
"execa": "2.0.4",
|
||||
"fs-extra": "^7.0.1",
|
||||
|
||||
@@ -1,5 +1,26 @@
|
||||
# @vercel/static-build
|
||||
|
||||
## 2.0.3
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies []:
|
||||
- @vercel/gatsby-plugin-vercel-builder@2.0.3
|
||||
|
||||
## 2.0.2
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies []:
|
||||
- @vercel/gatsby-plugin-vercel-builder@2.0.2
|
||||
|
||||
## 2.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies []:
|
||||
- @vercel/gatsby-plugin-vercel-builder@2.0.1
|
||||
|
||||
## 2.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vercel/static-build",
|
||||
"version": "2.0.0",
|
||||
"version": "2.0.3",
|
||||
"license": "Apache-2.0",
|
||||
"main": "./dist/index",
|
||||
"homepage": "https://vercel.com/docs/build-step",
|
||||
@@ -20,7 +20,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@vercel/gatsby-plugin-vercel-analytics": "1.0.10",
|
||||
"@vercel/gatsby-plugin-vercel-builder": "2.0.0"
|
||||
"@vercel/gatsby-plugin-vercel-builder": "2.0.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/aws-lambda": "8.10.64",
|
||||
@@ -32,10 +32,10 @@
|
||||
"@types/node-fetch": "2.5.4",
|
||||
"@types/promise-timeout": "1.3.0",
|
||||
"@types/semver": "7.3.13",
|
||||
"@vercel/build-utils": "7.0.0",
|
||||
"@vercel/error-utils": "2.0.0",
|
||||
"@vercel/frameworks": "2.0.0",
|
||||
"@vercel/fs-detectors": "5.0.0",
|
||||
"@vercel/build-utils": "7.1.0",
|
||||
"@vercel/error-utils": "2.0.1",
|
||||
"@vercel/frameworks": "2.0.1",
|
||||
"@vercel/fs-detectors": "5.0.1",
|
||||
"@vercel/ncc": "0.24.0",
|
||||
"@vercel/routing-utils": "3.0.0",
|
||||
"@vercel/static-config": "3.0.0",
|
||||
|
||||
259
pnpm-lock.yaml
generated
259
pnpm-lock.yaml
generated
@@ -129,7 +129,7 @@ importers:
|
||||
specifier: 27.4.1
|
||||
version: 27.4.1
|
||||
'@vercel/frameworks':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../packages/frameworks
|
||||
|
||||
internals/constants:
|
||||
@@ -183,7 +183,7 @@ importers:
|
||||
specifier: 1.0.4
|
||||
version: link:../constants
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../../packages/build-utils
|
||||
'@vercel/routing-utils':
|
||||
specifier: 3.0.0
|
||||
@@ -247,7 +247,7 @@ importers:
|
||||
specifier: 2.4.2
|
||||
version: 2.4.2
|
||||
'@vercel/error-utils':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../error-utils
|
||||
'@vercel/ncc':
|
||||
specifier: 0.24.0
|
||||
@@ -310,7 +310,7 @@ importers:
|
||||
packages/cli:
|
||||
dependencies:
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/go':
|
||||
specifier: 3.0.0
|
||||
@@ -319,10 +319,10 @@ importers:
|
||||
specifier: 1.0.0
|
||||
version: link:../hydrogen
|
||||
'@vercel/next':
|
||||
specifier: 4.0.0
|
||||
specifier: 4.0.1
|
||||
version: link:../next
|
||||
'@vercel/node':
|
||||
specifier: 3.0.0
|
||||
specifier: 3.0.3
|
||||
version: link:../node
|
||||
'@vercel/python':
|
||||
specifier: 4.0.0
|
||||
@@ -331,21 +331,21 @@ importers:
|
||||
specifier: 2.0.0
|
||||
version: link:../redwood
|
||||
'@vercel/remix-builder':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.2
|
||||
version: link:../remix
|
||||
'@vercel/ruby':
|
||||
specifier: 2.0.0
|
||||
version: link:../ruby
|
||||
'@vercel/static-build':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.3
|
||||
version: link:../static-build
|
||||
devDependencies:
|
||||
'@alex_neo/jest-expect-message':
|
||||
specifier: 1.0.5
|
||||
version: 1.0.5
|
||||
'@edge-runtime/node-utils':
|
||||
specifier: 2.1.0
|
||||
version: 2.1.0
|
||||
specifier: 2.2.0
|
||||
version: 2.2.0
|
||||
'@next/env':
|
||||
specifier: 11.1.2
|
||||
version: 11.1.2
|
||||
@@ -403,6 +403,9 @@ importers:
|
||||
'@types/jest-expect-message':
|
||||
specifier: 1.0.3
|
||||
version: 1.0.3
|
||||
'@types/json-parse-better-errors':
|
||||
specifier: 1.0.0
|
||||
version: 1.0.0
|
||||
'@types/load-json-file':
|
||||
specifier: 2.0.7
|
||||
version: 2.0.7
|
||||
@@ -412,9 +415,6 @@ importers:
|
||||
'@types/minimatch':
|
||||
specifier: 3.0.3
|
||||
version: 3.0.3
|
||||
'@types/mri':
|
||||
specifier: 1.1.0
|
||||
version: 1.1.0
|
||||
'@types/ms':
|
||||
specifier: 0.7.30
|
||||
version: 0.7.30
|
||||
@@ -470,19 +470,19 @@ importers:
|
||||
specifier: 1.0.0
|
||||
version: link:../../internals/get-package-json
|
||||
'@vercel-internals/types':
|
||||
specifier: 1.0.7
|
||||
specifier: 1.0.8
|
||||
version: link:../../internals/types
|
||||
'@vercel/client':
|
||||
specifier: 13.0.0
|
||||
specifier: 13.0.1
|
||||
version: link:../client
|
||||
'@vercel/error-utils':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../error-utils
|
||||
'@vercel/frameworks':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../frameworks
|
||||
'@vercel/fs-detectors':
|
||||
specifier: 5.0.0
|
||||
specifier: 5.0.1
|
||||
version: link:../fs-detectors
|
||||
'@vercel/fun':
|
||||
specifier: 1.0.4
|
||||
@@ -619,6 +619,9 @@ importers:
|
||||
jest-matcher-utils:
|
||||
specifier: 29.3.1
|
||||
version: 29.3.1
|
||||
json-parse-better-errors:
|
||||
specifier: 1.0.2
|
||||
version: 1.0.2
|
||||
jsonlines:
|
||||
specifier: 0.1.1
|
||||
version: 0.1.1
|
||||
@@ -634,9 +637,6 @@ importers:
|
||||
minimatch:
|
||||
specifier: 3.1.2
|
||||
version: 3.1.2
|
||||
mri:
|
||||
specifier: 1.1.5
|
||||
version: 1.1.5
|
||||
ms:
|
||||
specifier: 2.1.2
|
||||
version: 2.1.2
|
||||
@@ -734,7 +734,7 @@ importers:
|
||||
packages/client:
|
||||
dependencies:
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/routing-utils':
|
||||
specifier: 3.0.0
|
||||
@@ -810,8 +810,8 @@ importers:
|
||||
packages/edge:
|
||||
devDependencies:
|
||||
'@edge-runtime/jest-environment':
|
||||
specifier: 2.2.3
|
||||
version: 2.2.3
|
||||
specifier: 2.3.0
|
||||
version: 2.3.0
|
||||
'@types/jest':
|
||||
specifier: 27.4.1
|
||||
version: 27.4.1
|
||||
@@ -857,6 +857,9 @@ importers:
|
||||
'@iarna/toml':
|
||||
specifier: 2.2.3
|
||||
version: 2.2.3
|
||||
'@vercel/error-utils':
|
||||
specifier: 2.0.1
|
||||
version: link:../error-utils
|
||||
js-yaml:
|
||||
specifier: 3.13.1
|
||||
version: 3.13.1
|
||||
@@ -873,9 +876,6 @@ importers:
|
||||
'@types/node-fetch':
|
||||
specifier: 2.5.8
|
||||
version: 2.5.8
|
||||
'@vercel/error-utils':
|
||||
specifier: 2.0.0
|
||||
version: link:../error-utils
|
||||
'@vercel/routing-utils':
|
||||
specifier: 3.0.0
|
||||
version: link:../routing-utils
|
||||
@@ -892,10 +892,10 @@ importers:
|
||||
packages/fs-detectors:
|
||||
dependencies:
|
||||
'@vercel/error-utils':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../error-utils
|
||||
'@vercel/frameworks':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../frameworks
|
||||
'@vercel/routing-utils':
|
||||
specifier: 3.0.0
|
||||
@@ -935,7 +935,7 @@ importers:
|
||||
specifier: 7.3.10
|
||||
version: 7.3.10
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
jest-junit:
|
||||
specifier: 16.0.0
|
||||
@@ -969,10 +969,10 @@ importers:
|
||||
specifier: 0.25.24
|
||||
version: 0.25.24
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/node':
|
||||
specifier: 3.0.0
|
||||
specifier: 3.0.3
|
||||
version: link:../node
|
||||
'@vercel/routing-utils':
|
||||
specifier: 3.0.0
|
||||
@@ -1036,7 +1036,7 @@ importers:
|
||||
specifier: 2.1.0
|
||||
version: 2.1.0
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/ncc':
|
||||
specifier: 0.24.0
|
||||
@@ -1081,7 +1081,7 @@ importers:
|
||||
specifier: 14.18.33
|
||||
version: 14.18.33
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/static-config':
|
||||
specifier: 3.0.0
|
||||
@@ -1141,7 +1141,7 @@ importers:
|
||||
specifier: 3.2.0
|
||||
version: 3.2.0
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/nft':
|
||||
specifier: 0.22.5
|
||||
@@ -1219,25 +1219,22 @@ importers:
|
||||
packages/node:
|
||||
dependencies:
|
||||
'@edge-runtime/node-utils':
|
||||
specifier: 2.0.3
|
||||
version: 2.0.3
|
||||
specifier: 2.2.0
|
||||
version: 2.2.0
|
||||
'@edge-runtime/primitives':
|
||||
specifier: 2.1.2
|
||||
version: 2.1.2
|
||||
specifier: 3.1.0
|
||||
version: 3.1.0
|
||||
'@edge-runtime/vm':
|
||||
specifier: 3.0.1
|
||||
version: 3.0.1
|
||||
specifier: 3.1.0
|
||||
version: 3.1.0
|
||||
'@types/node':
|
||||
specifier: 14.18.33
|
||||
version: 14.18.33
|
||||
'@types/node-fetch':
|
||||
specifier: 2.6.3
|
||||
version: 2.6.3
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/error-utils':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../error-utils
|
||||
'@vercel/static-config':
|
||||
specifier: 3.0.0
|
||||
@@ -1249,8 +1246,8 @@ importers:
|
||||
specifier: 1.0.5
|
||||
version: 1.0.5
|
||||
edge-runtime:
|
||||
specifier: 2.4.4
|
||||
version: 2.4.4
|
||||
specifier: 2.5.0
|
||||
version: 2.5.0
|
||||
esbuild:
|
||||
specifier: 0.14.47
|
||||
version: 0.14.47
|
||||
@@ -1272,6 +1269,9 @@ importers:
|
||||
typescript:
|
||||
specifier: 4.9.5
|
||||
version: 4.9.5
|
||||
undici:
|
||||
specifier: 5.23.0
|
||||
version: 5.23.0
|
||||
devDependencies:
|
||||
'@babel/core':
|
||||
specifier: 7.5.0
|
||||
@@ -1343,7 +1343,7 @@ importers:
|
||||
specifier: 14.18.33
|
||||
version: 14.18.33
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/ncc':
|
||||
specifier: 0.24.0
|
||||
@@ -1377,7 +1377,7 @@ importers:
|
||||
specifier: 6.0.0
|
||||
version: 6.0.0
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
execa:
|
||||
specifier: 3.2.0
|
||||
@@ -1392,7 +1392,7 @@ importers:
|
||||
packages/remix:
|
||||
dependencies:
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/nft':
|
||||
specifier: 0.22.5
|
||||
@@ -1411,8 +1411,8 @@ importers:
|
||||
version: 12.0.0
|
||||
devDependencies:
|
||||
'@remix-run/dev':
|
||||
specifier: npm:@vercel/remix-run-dev@1.19.2
|
||||
version: /@vercel/remix-run-dev@1.19.2(@types/node@14.18.33)
|
||||
specifier: npm:@vercel/remix-run-dev@1.19.3
|
||||
version: /@vercel/remix-run-dev@1.19.3(@types/node@14.18.33)
|
||||
'@types/jest':
|
||||
specifier: 27.5.1
|
||||
version: 27.5.1
|
||||
@@ -1458,7 +1458,7 @@ importers:
|
||||
specifier: 6.0.0
|
||||
version: 6.0.0
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/ncc':
|
||||
specifier: 0.24.0
|
||||
@@ -1482,7 +1482,7 @@ importers:
|
||||
specifier: 1.0.10
|
||||
version: link:../gatsby-plugin-vercel-analytics
|
||||
'@vercel/gatsby-plugin-vercel-builder':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.3
|
||||
version: link:../gatsby-plugin-vercel-builder
|
||||
devDependencies:
|
||||
'@types/aws-lambda':
|
||||
@@ -1513,16 +1513,16 @@ importers:
|
||||
specifier: 7.3.13
|
||||
version: 7.3.13
|
||||
'@vercel/build-utils':
|
||||
specifier: 7.0.0
|
||||
specifier: 7.1.0
|
||||
version: link:../build-utils
|
||||
'@vercel/error-utils':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../error-utils
|
||||
'@vercel/frameworks':
|
||||
specifier: 2.0.0
|
||||
specifier: 2.0.1
|
||||
version: link:../frameworks
|
||||
'@vercel/fs-detectors':
|
||||
specifier: 5.0.0
|
||||
specifier: 5.0.1
|
||||
version: link:../fs-detectors
|
||||
'@vercel/ncc':
|
||||
specifier: 0.24.0
|
||||
@@ -3233,58 +3233,41 @@ packages:
|
||||
dependencies:
|
||||
'@jridgewell/trace-mapping': 0.3.9
|
||||
|
||||
/@edge-runtime/format@2.1.0:
|
||||
resolution: {integrity: sha512-gc2qbYEIIJRczBApBPznVI1c5vZgzrZQOsFZnAxxFiYah9qldHiu1YEitzSvXI8X8ZgvAguuIiyIbpWz17nlXA==}
|
||||
engines: {node: '>=14'}
|
||||
/@edge-runtime/cookies@3.4.0:
|
||||
resolution: {integrity: sha512-rhkTN7D8YO78lf76gdmK4FYc4Z5zQMGPABFLCWiJzeHmHgaCievF/lHEf1WO1OGZVxe1V34NYxsNTZsXwLht3Q==}
|
||||
engines: {node: '>=16'}
|
||||
|
||||
/@edge-runtime/format@2.2.0:
|
||||
resolution: {integrity: sha512-gPrS6AVw/qJJL0vcxMXv4kFXCU3ZTCD1uuJpwX15YxHV8BgU9OG5v9LrkkXcr96PBT/9epypfNJMhlWADuEziw==}
|
||||
engines: {node: '>=16'}
|
||||
dev: false
|
||||
|
||||
/@edge-runtime/jest-environment@2.2.3:
|
||||
resolution: {integrity: sha512-5DEv8nzuMFGoVbNYbOz7/mileYSbq1/oIvisyTeSfyjId7Pc5Qh2t3BH7ixLa62aVz7oCQlALM4cYGbZQZw1YQ==}
|
||||
engines: {node: '>=14'}
|
||||
/@edge-runtime/jest-environment@2.3.0:
|
||||
resolution: {integrity: sha512-ecjoJ6Ai/Cr/QOFpLC9nu5WC8LHnyFrnbkd8/L53q7sSmeWPKkzvjeFnaS1GLbYHPKZ1GidTsCquw6IPL1xlxA==}
|
||||
engines: {node: '>=16'}
|
||||
dependencies:
|
||||
'@edge-runtime/vm': 3.0.3
|
||||
'@edge-runtime/vm': 3.1.0
|
||||
'@jest/environment': 29.5.0
|
||||
'@jest/fake-timers': 29.5.0
|
||||
jest-mock: 29.5.0
|
||||
jest-util: 29.5.0
|
||||
dev: true
|
||||
|
||||
/@edge-runtime/node-utils@2.0.3:
|
||||
resolution: {integrity: sha512-JUSbi5xu/A8+D2t9B9wfirCI1J8n8q0660FfmqZgA+n3RqxD3y7SnamL1sKRE5/AbHsKs9zcqCbK2YDklbc9Bg==}
|
||||
engines: {node: '>=14'}
|
||||
dev: false
|
||||
|
||||
/@edge-runtime/node-utils@2.1.0:
|
||||
resolution: {integrity: sha512-/zxJ7URFqli6aES7BSCH856sheK6pS6RfcXtKEjinO1u6ZQKRBZhFei7xik8XWFopv/nHT758BK97kUPcNXK1A==}
|
||||
engines: {node: '>=14'}
|
||||
dev: true
|
||||
|
||||
/@edge-runtime/primitives@2.1.2:
|
||||
resolution: {integrity: sha512-SR04SMDybALlhIYIi0hiuEUwIl0b7Sn+RKwQkX6hydg4+AKMzBNDFhj2nqHDD1+xkHArV9EhmJIb6iGjShwSzg==}
|
||||
engines: {node: '>=14'}
|
||||
dev: false
|
||||
|
||||
/@edge-runtime/primitives@3.0.1:
|
||||
resolution: {integrity: sha512-l5NNDcPkKW4N6qRmB8zzpCF6uRW1S808V/zm72z7b/aWwZUYbmEPPkzyhGAW0aQxLU1pGdZ8u2gNjamdaU6RXw==}
|
||||
engines: {node: '>=14'}
|
||||
dev: false
|
||||
|
||||
/@edge-runtime/primitives@3.0.3:
|
||||
resolution: {integrity: sha512-YnfMWMRQABAH8IsnFMJWMW+SyB4ZeYBPnR7V0aqdnew7Pq60cbH5DyFjS/FhiLwvHQk9wBREmXD7PP0HooEQ1A==}
|
||||
engines: {node: '>=14'}
|
||||
|
||||
/@edge-runtime/vm@3.0.1:
|
||||
resolution: {integrity: sha512-69twXLIcqVx0iNlc1vFqnXgka2CZi2c/QBAmMzXBk0M6mPG+ICCBh2dd+cv1K+HW2pfLuSW+EskkFXWGeCf1Vw==}
|
||||
engines: {node: '>=14'}
|
||||
/@edge-runtime/node-utils@2.2.0:
|
||||
resolution: {integrity: sha512-eRM3d/zwF+VczI9+YY9j0b5s/NQ6Cj6y6XY1Fb3HHdu8rCphH8Z41qjTYt4S315FUXo78GcDgnYv7GUvqQ0a8A==}
|
||||
engines: {node: '>=16'}
|
||||
dependencies:
|
||||
'@edge-runtime/primitives': 3.0.1
|
||||
dev: false
|
||||
'@edge-runtime/cookies': 3.4.0
|
||||
|
||||
/@edge-runtime/vm@3.0.3:
|
||||
resolution: {integrity: sha512-SPfI1JeIRNs/4EEE2Oc0X6gG3RqjD1TnKu2lwmwFXq0435xgZGKhc3UiKkYAdoMn2dNFD73nlabMKHBRoMRpxg==}
|
||||
engines: {node: '>=14'}
|
||||
/@edge-runtime/primitives@3.1.0:
|
||||
resolution: {integrity: sha512-yxr1QM/lC8nrU38zxePeDqVeIjwsJ83gKGTH8YJ4CoHTv3q+6xEeqRIT+/9IPX/FApWYtnxHauhNqr6CHRj5YA==}
|
||||
engines: {node: '>=16'}
|
||||
|
||||
/@edge-runtime/vm@3.1.0:
|
||||
resolution: {integrity: sha512-Y2JZgJP+4byI17SiDeEZhvBUvJ+om7E5ll/jrS7aGRpet5qKnJSsGep6xxhMjqT/j8ulFvTMN/kdlMMy5pEKBQ==}
|
||||
engines: {node: '>=16'}
|
||||
dependencies:
|
||||
'@edge-runtime/primitives': 3.0.3
|
||||
'@edge-runtime/primitives': 3.1.0
|
||||
|
||||
/@emotion/hash@0.9.0:
|
||||
resolution: {integrity: sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==}
|
||||
@@ -4234,8 +4217,8 @@ packages:
|
||||
engines: {node: '>=14'}
|
||||
dev: true
|
||||
|
||||
/@remix-run/server-runtime@1.19.2:
|
||||
resolution: {integrity: sha512-d+oOaQlBPFHPum1nstJCntRgwgi4fzijW51yPCo3ljUxIrjlDjutX2GCQ72Apd6Ffpd11/6nEq+B90EY+Ala9Q==}
|
||||
/@remix-run/server-runtime@1.19.3:
|
||||
resolution: {integrity: sha512-KzQ+htUsKqpBgKE2tWo7kIIGy3MyHP58Io/itUPvV+weDjApwr9tQr9PZDPA3yAY6rAzLax7BU0NMSYCXWFY5A==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
dependencies:
|
||||
'@remix-run/router': 1.7.2
|
||||
@@ -5129,6 +5112,10 @@ packages:
|
||||
resolution: {integrity: sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==}
|
||||
dev: true
|
||||
|
||||
/@types/json-parse-better-errors@1.0.0:
|
||||
resolution: {integrity: sha512-JAsGXEMsiw2ttNrlady/Z8ztrSEl1y8IoG9ge7hpBQ4I+ilKxelOPGKnVmt9TX69lkXdJioDWCkzkktWcdAshA==}
|
||||
dev: true
|
||||
|
||||
/@types/json-schema@7.0.11:
|
||||
resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==}
|
||||
|
||||
@@ -5195,10 +5182,6 @@ packages:
|
||||
minipass: 5.0.0
|
||||
dev: true
|
||||
|
||||
/@types/mri@1.1.0:
|
||||
resolution: {integrity: sha512-fMl88ZoZXOB7VKazJ6wUMpZc9QIn+jcigSFRf2K/rrw4DcXn+/uGxlWX8DDlcE7JkwgIZ7BDH+JgxZPlc/Ap3g==}
|
||||
dev: true
|
||||
|
||||
/@types/ms@0.7.30:
|
||||
resolution: {integrity: sha512-OftRLCgAzJP7vmKn9by/GVjnf4hloz/pXNOwPo0vKGAfXI7GqWXJi9N2kRar4cP5s1dGwuwcagWqO6iHBTq1Mg==}
|
||||
dev: true
|
||||
@@ -5247,13 +5230,6 @@ packages:
|
||||
form-data: 3.0.1
|
||||
dev: true
|
||||
|
||||
/@types/node-fetch@2.6.3:
|
||||
resolution: {integrity: sha512-ETTL1mOEdq/sxUtgtOhKjyB2Irra4cjxksvcMUR5Zr4n+PxVhsCD9WS46oPbHL3et9Zde7CNRr+WUNlcHvsX+w==}
|
||||
dependencies:
|
||||
'@types/node': 16.18.11
|
||||
form-data: 3.0.1
|
||||
dev: false
|
||||
|
||||
/@types/node@10.12.18:
|
||||
resolution: {integrity: sha512-fh+pAqt4xRzPfqA6eh3Z2y6fyZavRIumvjhaCL753+TVkGKGhpPeyrJG2JftD0T9q4GF00KjefsQ+PQNDdWQaQ==}
|
||||
dev: false
|
||||
@@ -6030,12 +6006,12 @@ packages:
|
||||
- encoding
|
||||
- supports-color
|
||||
|
||||
/@vercel/remix-run-dev@1.19.2(@types/node@14.18.33):
|
||||
resolution: {integrity: sha512-SWvccKSjRheW4FhFVRvz/a2ipY2zmvjWKm0v2yi+WuKwmcMcYPwYSFn/yBiW1dMfrnmnVaXe0KLt61SWJRUpCw==}
|
||||
/@vercel/remix-run-dev@1.19.3(@types/node@14.18.33):
|
||||
resolution: {integrity: sha512-Sxg6X0Sp8t2ZpHPE9V/HASgbF9V3kYH7ll4NGDdABpRQVvgx4Y2kn4DZdFiDXslIWE7/ExBLCeN70S+JhdW1UQ==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
'@remix-run/serve': ^1.19.2
|
||||
'@remix-run/serve': ^1.19.3
|
||||
peerDependenciesMeta:
|
||||
'@remix-run/serve':
|
||||
optional: true
|
||||
@@ -6050,7 +6026,7 @@ packages:
|
||||
'@babel/traverse': 7.21.5
|
||||
'@babel/types': 7.21.5
|
||||
'@npmcli/package-json': 2.0.0
|
||||
'@remix-run/server-runtime': 1.19.2
|
||||
'@remix-run/server-runtime': 1.19.3
|
||||
'@vanilla-extract/integration': 6.2.1(@types/node@14.18.33)
|
||||
arg: 5.0.2
|
||||
cacache: 15.3.0
|
||||
@@ -6673,6 +6649,11 @@ packages:
|
||||
resolution: {integrity: sha512-V+SsTpDqkrWTimiotsyl33ePSjA5/KrithwupuvJ6ztsqPvGv6ge4OredFhPffVXiLN/QUWvE0XcqJaYgt6fOg==}
|
||||
engines: {node: '>= 14'}
|
||||
|
||||
/async-listen@3.0.1:
|
||||
resolution: {integrity: sha512-cWMaNwUJnf37C/S5TfCkk/15MwbPRwVYALA2jtjkbHjCmAPiDXyNJy2q3p1KAZzDLHAWyarUWSujUoHR4pEgrA==}
|
||||
engines: {node: '>= 14'}
|
||||
dev: false
|
||||
|
||||
/async-retry@1.1.3:
|
||||
resolution: {integrity: sha512-fiAB2uaoAoUS5Ua75XFGoMKF4hmQ5H4u4gsINUjwPNof5dygJS1zyL9mh0SOmIkzAwGijwG4ybLNc8yG2OGpEQ==}
|
||||
dependencies:
|
||||
@@ -6708,6 +6689,7 @@ packages:
|
||||
|
||||
/asynckit@0.4.0:
|
||||
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
|
||||
dev: true
|
||||
|
||||
/atob@2.1.2:
|
||||
resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==}
|
||||
@@ -7096,6 +7078,13 @@ packages:
|
||||
load-tsconfig: 0.2.3
|
||||
dev: true
|
||||
|
||||
/busboy@1.6.0:
|
||||
resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==}
|
||||
engines: {node: '>=10.16.0'}
|
||||
dependencies:
|
||||
streamsearch: 1.1.0
|
||||
dev: false
|
||||
|
||||
/bytes@3.0.0:
|
||||
resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==}
|
||||
engines: {node: '>= 0.8'}
|
||||
@@ -7585,6 +7574,7 @@ packages:
|
||||
engines: {node: '>= 0.8'}
|
||||
dependencies:
|
||||
delayed-stream: 1.0.0
|
||||
dev: true
|
||||
|
||||
/comma-separated-tokens@2.0.3:
|
||||
resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
|
||||
@@ -8060,6 +8050,7 @@ packages:
|
||||
/delayed-stream@1.0.0:
|
||||
resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
|
||||
engines: {node: '>=0.4.0'}
|
||||
dev: true
|
||||
|
||||
/delegates@1.0.0:
|
||||
resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
|
||||
@@ -8238,14 +8229,14 @@ packages:
|
||||
safer-buffer: 2.1.2
|
||||
dev: true
|
||||
|
||||
/edge-runtime@2.4.4:
|
||||
resolution: {integrity: sha512-uq1YdIxkMDsBYLdSSp/w62PciCL46ic4m1Z/2G6N8RcAPI8p35O8u6hJQT83j28Dnt4U5iyvmwFMYouHMK51uA==}
|
||||
engines: {node: '>=14'}
|
||||
/edge-runtime@2.5.0:
|
||||
resolution: {integrity: sha512-QgDNX6R+RPwhY3+vqHpvYE4XUoB/cFG60nGBKu9pmPOJxQleeTCj2F5CHimIpNqex9h1Cy2Y3tuQ+Vq2GzmZIA==}
|
||||
engines: {node: '>=16'}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
'@edge-runtime/format': 2.1.0
|
||||
'@edge-runtime/vm': 3.0.3
|
||||
async-listen: 3.0.0
|
||||
'@edge-runtime/format': 2.2.0
|
||||
'@edge-runtime/vm': 3.1.0
|
||||
async-listen: 3.0.1
|
||||
mri: 1.2.0
|
||||
picocolors: 1.0.0
|
||||
pretty-bytes: 5.6.0
|
||||
@@ -9997,6 +9988,7 @@ packages:
|
||||
asynckit: 0.4.0
|
||||
combined-stream: 1.0.8
|
||||
mime-types: 2.1.24
|
||||
dev: true
|
||||
|
||||
/format@0.2.2:
|
||||
resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
|
||||
@@ -13187,6 +13179,7 @@ packages:
|
||||
/mime-db@1.40.0:
|
||||
resolution: {integrity: sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==}
|
||||
engines: {node: '>= 0.6'}
|
||||
dev: true
|
||||
|
||||
/mime-db@1.52.0:
|
||||
resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
|
||||
@@ -13205,6 +13198,7 @@ packages:
|
||||
engines: {node: '>= 0.6'}
|
||||
dependencies:
|
||||
mime-db: 1.40.0
|
||||
dev: true
|
||||
|
||||
/mime-types@2.1.35:
|
||||
resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
|
||||
@@ -13391,15 +13385,9 @@ packages:
|
||||
engines: {node: '>=4'}
|
||||
dev: true
|
||||
|
||||
/mri@1.1.5:
|
||||
resolution: {integrity: sha512-d2RKzMD4JNyHMbnbWnznPaa8vbdlq/4pNZ3IgdaGrVbBhebBsGUUE/6qorTMYNS6TwuH3ilfOlD2bf4Igh8CKg==}
|
||||
engines: {node: '>=4'}
|
||||
dev: true
|
||||
|
||||
/mri@1.2.0:
|
||||
resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
|
||||
engines: {node: '>=4'}
|
||||
dev: false
|
||||
|
||||
/ms@2.0.0:
|
||||
resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
|
||||
@@ -15032,7 +15020,7 @@ packages:
|
||||
resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
|
||||
engines: {node: '>=6'}
|
||||
dependencies:
|
||||
mri: 1.1.5
|
||||
mri: 1.2.0
|
||||
dev: true
|
||||
|
||||
/safe-buffer@5.1.2:
|
||||
@@ -15075,6 +15063,7 @@ packages:
|
||||
|
||||
/semver@5.7.1:
|
||||
resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==}
|
||||
hasBin: true
|
||||
dev: true
|
||||
|
||||
/semver@6.1.1:
|
||||
@@ -15544,6 +15533,11 @@ packages:
|
||||
mixme: 0.5.9
|
||||
dev: true
|
||||
|
||||
/streamsearch@1.1.0:
|
||||
resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
|
||||
engines: {node: '>=10.0.0'}
|
||||
dev: false
|
||||
|
||||
/string-argv@0.3.1:
|
||||
resolution: {integrity: sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==}
|
||||
engines: {node: '>=0.6.19'}
|
||||
@@ -16536,6 +16530,13 @@ packages:
|
||||
which-boxed-primitive: 1.0.2
|
||||
dev: true
|
||||
|
||||
/undici@5.23.0:
|
||||
resolution: {integrity: sha512-1D7w+fvRsqlQ9GscLBwcAJinqcZGHUKjbOmXdlE/v8BvEGXjeWAax+341q44EuTcHXXnfyKNbKRq4Lg7OzhMmg==}
|
||||
engines: {node: '>=14.0'}
|
||||
dependencies:
|
||||
busboy: 1.6.0
|
||||
dev: false
|
||||
|
||||
/unicode-canonical-property-names-ecmascript@2.0.0:
|
||||
resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==}
|
||||
engines: {node: '>=4'}
|
||||
|
||||
Reference in New Issue
Block a user