From 00793fe3d245cfc184546af1db3fae57f5da9ed6 Mon Sep 17 00:00:00 2001 From: Anthony Shew Date: Mon, 24 Jun 2024 18:00:56 -0600 Subject: [PATCH] More kitchen-sink. (#8593) ### Description `kitchen-sink`! --- examples/kitchen-sink/apps/blog/package.json | 2 +- .../kitchen-sink/apps/blog/vite.config.ts | 2 + examples/kitchen-sink/pnpm-lock.yaml | 102 ++++++++++++++++++ examples/kitchen-sink/turbo.json | 8 +- 4 files changed, 112 insertions(+), 2 deletions(-) diff --git a/examples/kitchen-sink/apps/blog/package.json b/examples/kitchen-sink/apps/blog/package.json index 32fd80184be39..813c5af6386cd 100644 --- a/examples/kitchen-sink/apps/blog/package.json +++ b/examples/kitchen-sink/apps/blog/package.json @@ -25,6 +25,7 @@ "@types/react-dom": "^18.2.7", "@typescript-eslint/eslint-plugin": "^6.7.4", "@typescript-eslint/parser": "^6.7.4", + "@vercel/remix": "2.9.2-patch.2", "autoprefixer": "^10.4.19", "eslint": "^8.38.0", "eslint-import-resolver-typescript": "^3.6.1", @@ -42,4 +43,3 @@ "node": ">=20.0.0" } } - diff --git a/examples/kitchen-sink/apps/blog/vite.config.ts b/examples/kitchen-sink/apps/blog/vite.config.ts index 54066fb7ad8ce..704b8f7606449 100644 --- a/examples/kitchen-sink/apps/blog/vite.config.ts +++ b/examples/kitchen-sink/apps/blog/vite.config.ts @@ -1,10 +1,12 @@ import { vitePlugin as remix } from "@remix-run/dev"; import { defineConfig } from "vite"; import tsconfigPaths from "vite-tsconfig-paths"; +import { vercelPreset } from "@vercel/remix/vite"; export default defineConfig({ plugins: [ remix({ + presets: [vercelPreset()], future: { v3_fetcherPersist: true, v3_relativeSplatPath: true, diff --git a/examples/kitchen-sink/pnpm-lock.yaml b/examples/kitchen-sink/pnpm-lock.yaml index ea8c578dcd102..61d0a4e805624 100644 --- a/examples/kitchen-sink/pnpm-lock.yaml +++ b/examples/kitchen-sink/pnpm-lock.yaml @@ -149,6 +149,9 @@ importers: '@typescript-eslint/parser': specifier: ^6.7.4 version: 6.12.0(eslint@8.57.0)(typescript@5.3.3) + '@vercel/remix': + specifier: 2.9.2-patch.2 + version: 2.9.2-patch.2(@remix-run/dev@2.9.2)(@remix-run/node@2.9.2)(@remix-run/server-runtime@2.9.2)(react-dom@18.2.0)(react@18.2.0) autoprefixer: specifier: ^10.4.19 version: 10.4.19(postcss@8.4.38) @@ -2043,6 +2046,7 @@ packages: /@remix-run/dev@2.9.2(@remix-run/react@2.9.2)(@remix-run/serve@2.9.2)(typescript@5.3.3)(vite@5.1.4): resolution: {integrity: sha512-70dr9HH/mCHP5+uPoQXyS9+r73IL//IDPaFruIhK8kmmLPGAg5bGyFRz/xX6LTa98gPdAwZXxBy7frudeh2Z0Q==} engines: {node: '>=18.0.0'} + hasBin: true peerDependencies: '@remix-run/react': ^2.9.2 '@remix-run/serve': ^2.9.2 @@ -2385,6 +2389,15 @@ packages: engines: {node: '>= 10'} dev: true + /@ts-morph/common@0.11.1: + resolution: {integrity: sha512-7hWZS0NRpEsNV8vWJzg7FEz6V8MaLNeJOmwmghqUXTpzk16V1LLZhdo+4QvE/+zv4cVci0OviuJFnqhEfoV3+g==} + dependencies: + fast-glob: 3.3.2 + minimatch: 3.1.2 + mkdirp: 1.0.4 + path-browserify: 1.0.1 + dev: true + /@types/acorn@4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: @@ -2933,6 +2946,34 @@ packages: resolution: {integrity: sha512-17kVyLq3ePTKOkveHxXuIJZtGYs+cSoev7BlP+Lf4916qfDhk/HBjvlYDe8egrea7LNPHKwSZJK/bzZC+Q6AwQ==} dev: true + /@vercel/remix@2.9.2-patch.2(@remix-run/dev@2.9.2)(@remix-run/node@2.9.2)(@remix-run/server-runtime@2.9.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-sKSeBFqTj0HSYsf7KpxA84ixrb4AkuoDm0G7hlrWUnRtCy9Fa65YX8fbHoewdVbc8uTBa2XAiBCjPMmtohas9w==} + engines: {node: '>=18.0.0'} + peerDependencies: + '@remix-run/dev': 2.9.2 + '@remix-run/node': 2.9.2 + '@remix-run/server-runtime': 2.9.2 + react: '*' + react-dom: '*' + dependencies: + '@remix-run/dev': 2.9.2(@remix-run/react@2.9.2)(@remix-run/serve@2.9.2)(typescript@5.3.3)(vite@5.1.4) + '@remix-run/node': 2.9.2(typescript@5.3.3) + '@remix-run/server-runtime': 2.9.2(typescript@5.3.3) + '@vercel/static-config': 3.0.0 + isbot: 3.8.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + ts-morph: 12.0.0 + dev: true + + /@vercel/static-config@3.0.0: + resolution: {integrity: sha512-2qtvcBJ1bGY0dYGYh3iM7yGKkk971FujLEDXzuW5wcZsPr1GSEjO/w2iSr3qve6nDDtBImsGoDEnus5FI4+fIw==} + dependencies: + ajv: 8.6.3 + json-schema-to-ts: 1.6.4 + ts-morph: 12.0.0 + dev: true + /@vercel/style-guide@5.2.0(eslint@8.57.0)(prettier@3.2.5)(typescript@5.3.3): resolution: {integrity: sha512-fNSKEaZvSkiBoF6XEefs8CcgAV9K9e+MbcsDZjUsktHycKdA0jvjAzQi1W/FzLS+Nr5zZ6oejCwq/97dHUKe0g==} engines: {node: '>=16'} @@ -3077,6 +3118,15 @@ packages: uri-js: 4.4.1 dev: true + /ajv@8.6.3: + resolution: {integrity: sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==} + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + dev: true + /ansi-escapes@4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} engines: {node: '>=8'} @@ -3248,6 +3298,7 @@ packages: /autoprefixer@10.4.19(postcss@8.4.38): resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==} engines: {node: ^10 || ^12 || >=14} + hasBin: true peerDependencies: postcss: ^8.1.0 dependencies: @@ -3695,6 +3746,10 @@ packages: resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} + /code-block-writer@10.1.1: + resolution: {integrity: sha512-67ueh2IRGst/51p0n6FvPrnRjAGHY5F8xdjkgrYE7DDzpJe6qA07RYQ9VcoUeo5ATOjSOiWpSL3SWBRRbempMw==} + dev: true + /collect-v8-coverage@1.0.2: resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==} @@ -4390,6 +4445,7 @@ packages: /eslint-config-prettier@9.0.0(eslint@8.57.0): resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} + hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: @@ -5921,6 +5977,11 @@ packages: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} dev: true + /isbot@3.8.0: + resolution: {integrity: sha512-vne1mzQUTR+qsMLeCBL9+/tgnDXRyc2pygLGl/WsgA+EZKIiB5Ehu0CiVTHIIk30zhJ24uGz4M5Ppse37aR0Hg==} + engines: {node: '>=12'} + dev: true + /isbot@4.4.0: resolution: {integrity: sha512-8ZvOWUA68kyJO4hHJdWjyreq7TYNWTS9y15IzeqVdKxR9pPr3P/3r9AHcoIv9M0Rllkao5qWz2v1lmcyKIVCzQ==} engines: {node: '>=18'} @@ -6044,6 +6105,7 @@ packages: /jest-cli@29.7.0(@types/node@20.11.24): resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -6394,6 +6456,7 @@ packages: /jest@29.7.0(@types/node@20.11.24): resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -6504,10 +6567,21 @@ packages: engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dev: true + /json-schema-to-ts@1.6.4: + resolution: {integrity: sha512-pR4yQ9DHz6itqswtHCm26mw45FSNfQ9rEQjosaZErhn5J3J2sIViQiz8rDaezjKAhFGpmsoczYVBgGHzFw/stA==} + dependencies: + '@types/json-schema': 7.0.15 + ts-toolbelt: 6.15.5 + dev: true + /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} dev: true + /json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + dev: true + /json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} dev: true @@ -7708,6 +7782,7 @@ packages: /next@14.1.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-McrGJqlGSHeaz2yTRPkEucxQKe5Zq7uPwyeHNmJaZNY4wx9E9QdxmTp310agFRoMuIYgQrCrT3petg13fSVOww==} engines: {node: '>=18.17.0'} + hasBin: true peerDependencies: '@opentelemetry/api': ^1.1.0 react: ^18.2.0 @@ -8084,6 +8159,10 @@ packages: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} + /path-browserify@1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + dev: true + /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -8722,6 +8801,11 @@ packages: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} + /require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + dev: true + /require-like@0.1.2: resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} dev: true @@ -9533,6 +9617,7 @@ packages: /ts-jest@29.1.2(@babel/core@7.24.0)(jest@29.7.0)(typescript@5.3.3): resolution: {integrity: sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==} engines: {node: ^16.10.0 || ^18.0.0 || >=20.0.0} + hasBin: true peerDependencies: '@babel/core': '>=7.0.0-beta.0 <8' '@jest/types': ^29.0.0 @@ -9563,9 +9648,21 @@ packages: yargs-parser: 21.1.1 dev: false + /ts-morph@12.0.0: + resolution: {integrity: sha512-VHC8XgU2fFW7yO1f/b3mxKDje1vmyzFXHWzOYmKEkCEwcLjDtbdLgBQviqj4ZwP4MJkQtRo6Ha2I29lq/B+VxA==} + dependencies: + '@ts-morph/common': 0.11.1 + code-block-writer: 10.1.1 + dev: true + + /ts-toolbelt@6.15.5: + resolution: {integrity: sha512-FZIXf1ksVyLcfr7M317jbB67XFJhOO1YqdTcuGaq9q5jLUoTikukZ+98TPjKiP2jC5CgmYdWWYs0s2nLSU0/1A==} + dev: true + /tsconfck@3.1.0(typescript@5.3.3): resolution: {integrity: sha512-CMjc5zMnyAjcS9sPLytrbFmj89st2g+JYtY/c02ug4Q+CZaAtCgbyviI0n1YvjZE/pzoc6FbNsINS13DOL1B9w==} engines: {node: ^18 || >=20} + hasBin: true peerDependencies: typescript: ^5.0.0 peerDependenciesMeta: @@ -9603,6 +9700,7 @@ packages: /tsup@8.0.2(typescript@5.3.3): resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} engines: {node: '>=18'} + hasBin: true peerDependencies: '@microsoft/api-extractor': ^7.36.0 '@swc/core': ^1 @@ -10007,6 +10105,7 @@ packages: /update-browserslist-db@1.0.13(browserslist@4.22.2): resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: @@ -10016,6 +10115,7 @@ packages: /update-browserslist-db@1.0.16(browserslist@4.23.1): resolution: {integrity: sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==} + hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: @@ -10191,6 +10291,7 @@ packages: /vite@4.5.0: resolution: {integrity: sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==} engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true peerDependencies: '@types/node': '>= 14' less: '*' @@ -10225,6 +10326,7 @@ packages: /vite@5.1.4: resolution: {integrity: sha512-n+MPqzq+d9nMVTKyewqw6kSt+R3CkvF9QAKY8obiQn8g1fwTscKxyfaYnC632HtBXAQGc1Yjomphwn1dtwGAHg==} engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true peerDependencies: '@types/node': ^18.0.0 || >=20.0.0 less: '*' diff --git a/examples/kitchen-sink/turbo.json b/examples/kitchen-sink/turbo.json index 9bdb6d1f812fa..826a4d1ecd645 100644 --- a/examples/kitchen-sink/turbo.json +++ b/examples/kitchen-sink/turbo.json @@ -4,7 +4,13 @@ "build": { "inputs": ["$TURBO_DEFAULT$", ".env*"], "dependsOn": ["^build"], - "outputs": ["build/**", "dist/**", ".next/**", "!.next/cache/**"] + "outputs": [ + "build/**", + ".vercel/**", + "dist/**", + ".next/**", + "!.next/cache/**" + ] }, "test": { "outputs": ["coverage/**"],