From 32d4c33e4421a9c56f62a8c392f5417edddd0402 Mon Sep 17 00:00:00 2001 From: Michelle Chen Date: Tue, 21 May 2024 22:00:56 -0400 Subject: [PATCH] update to remix 2.9.2 (#2135) * update to remix 2.9.2 * revert all peerDependencies to 2.1.0 * ensure @remix-run/dev is listed in hydrogne package * update node to 18 * move @remix-run/dev to dev dependencies * update changeset --- .changeset/curly-olives-dream.md | 7 + docs/preview/package.json | 12 +- examples/express/package.json | 14 +- examples/multipass/package.json | 6 +- examples/partytown/package.json | 8 +- examples/subscriptions/package.json | 8 +- package-lock.json | 948 +++++++++++++++++++--------- packages/cli/package.json | 2 +- packages/hydrogen/package.json | 5 +- packages/remix-oxygen/package.json | 2 +- templates/hello-world/package.json | 6 +- templates/skeleton/package.json | 8 +- 12 files changed, 710 insertions(+), 316 deletions(-) create mode 100644 .changeset/curly-olives-dream.md diff --git a/.changeset/curly-olives-dream.md b/.changeset/curly-olives-dream.md new file mode 100644 index 0000000000..4faf853984 --- /dev/null +++ b/.changeset/curly-olives-dream.md @@ -0,0 +1,7 @@ +--- +'skeleton': patch +'@shopify/cli-hydrogen': patch +'@shopify/create-hydrogen': patch +--- + +Update remix to v2.9.2 diff --git a/docs/preview/package.json b/docs/preview/package.json index 58fe3273ae..64dd8d29fd 100644 --- a/docs/preview/package.json +++ b/docs/preview/package.json @@ -8,10 +8,10 @@ "typecheck": "tsc" }, "dependencies": { - "@remix-run/css-bundle": "^2.8.0", - "@remix-run/node": "^2.8.0", - "@remix-run/react": "^2.8.0", - "@remix-run/serve": "^2.8.0", + "@remix-run/css-bundle": "^2.9.2", + "@remix-run/node": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/serve": "^2.9.2", "he": "^1.2.0", "isbot": "^3.6.8", "marked": "^9.1.0", @@ -20,8 +20,8 @@ "react-syntax-highlighter": "^15.5.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@types/he": "^1.2.1", "@types/react": "^18.2.20", "@types/react-dom": "^18.2.7", diff --git a/examples/express/package.json b/examples/express/package.json index 80be9838e4..b30e0f2cf1 100644 --- a/examples/express/package.json +++ b/examples/express/package.json @@ -11,11 +11,11 @@ "typecheck": "tsc" }, "dependencies": { - "@remix-run/css-bundle": "^2.8.0", - "@remix-run/express": "^2.8.0", - "@remix-run/node": "^2.8.0", - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/css-bundle": "^2.9.2", + "@remix-run/express": "^2.9.2", + "@remix-run/node": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -28,8 +28,8 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@types/compression": "^1.7.2", "@types/express": "^4.17.17", "@types/morgan": "^1.9.4", diff --git a/examples/multipass/package.json b/examples/multipass/package.json index 74b767e98e..80e2871a33 100644 --- a/examples/multipass/package.json +++ b/examples/multipass/package.json @@ -12,7 +12,7 @@ }, "prettier": "@shopify/prettier-config", "dependencies": { - "@remix-run/react": "^2.8.0", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -26,8 +26,8 @@ "snakecase-keys": "^5.5.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", "@shopify/prettier-config": "^1.1.2", diff --git a/examples/partytown/package.json b/examples/partytown/package.json index c226c7f79d..d03c45a59b 100644 --- a/examples/partytown/package.json +++ b/examples/partytown/package.json @@ -15,7 +15,7 @@ "prettier": "@shopify/prettier-config", "dependencies": { "@builder.io/partytown": "^0.8.1", - "@remix-run/react": "^2.8.0", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -27,8 +27,8 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", "@shopify/prettier-config": "^1.1.2", @@ -43,6 +43,6 @@ "typescript": "^5.2.2" }, "engines": { - "node": ">=16.13" + "node": ">=18.0.0" } } diff --git a/examples/subscriptions/package.json b/examples/subscriptions/package.json index 106a931e47..89ab0ae0d5 100644 --- a/examples/subscriptions/package.json +++ b/examples/subscriptions/package.json @@ -12,7 +12,7 @@ }, "prettier": "@shopify/prettier-config", "dependencies": { - "@remix-run/react": "^2.8.0", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -24,8 +24,8 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", "@shopify/prettier-config": "^1.1.2", @@ -45,7 +45,7 @@ "typescript": "^5.2.2" }, "engines": { - "node": ">=16.13" + "node": ">=18.0.0" }, "browserslist": [ "defaults" diff --git a/package-lock.json b/package-lock.json index 8ec67b1e29..279b6215e7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -56,10 +56,10 @@ "docs/preview": { "name": "docs-preview", "dependencies": { - "@remix-run/css-bundle": "^2.8.0", - "@remix-run/node": "^2.8.0", - "@remix-run/react": "^2.8.0", - "@remix-run/serve": "^2.8.0", + "@remix-run/css-bundle": "^2.9.2", + "@remix-run/node": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/serve": "^2.9.2", "he": "^1.2.0", "isbot": "^3.6.8", "marked": "^9.1.0", @@ -68,8 +68,8 @@ "react-syntax-highlighter": "^15.5.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@types/he": "^1.2.1", "@types/react": "^18.2.20", "@types/react-dom": "^18.2.7", @@ -81,6 +81,92 @@ "node": ">=18.0.0" } }, + "docs/preview/node_modules/@remix-run/css-bundle": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/css-bundle/-/css-bundle-2.9.2.tgz", + "integrity": "sha512-q+rfqcM+1Tf+kTpwaGlyBhwAGZyaQtE8sD0cJQBbhP6GZzMrnKUp2KY+w2Xuh04HnKSO3kTp67SvVUCdN+xllg==", + "engines": { + "node": ">=18.0.0" + } + }, + "docs/preview/node_modules/@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "dependencies": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "eslint": "^8.0.0", + "react": "^18.0.0", + "typescript": "^5.1.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "docs/preview/node_modules/@remix-run/express": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/express/-/express-2.9.2.tgz", + "integrity": "sha512-KhGPwX01gopvOzOCc0V2x+TC2UhfbwnDPjBk/KLFjn3z9srYD2X0xVdqGiNp6tXSiUuLDx8NlfHjrfLVwfJYnQ==", + "dependencies": { + "@remix-run/node": "2.9.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "express": "^4.17.1", + "typescript": "^5.1.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "docs/preview/node_modules/@remix-run/serve": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/serve/-/serve-2.9.2.tgz", + "integrity": "sha512-wA3mjQcIkkzmr2798mMDDCkVmVraVwFgLiZ0ManlU5mOWZhI0W+b55fxHltJ4gkAMGYaxrk7vq/s8s/r+L3cTQ==", + "dependencies": { + "@remix-run/express": "2.9.2", + "@remix-run/node": "2.9.2", + "chokidar": "^3.5.3", + "compression": "^1.7.4", + "express": "^4.17.1", + "get-port": "5.1.1", + "morgan": "^1.10.0", + "source-map-support": "^0.5.21" + }, + "bin": { + "remix-serve": "dist/cli.js" + }, + "engines": { + "node": ">=18.0.0" + } + }, "examples/analytics": { "name": "example-analytics", "dependencies": { @@ -108,11 +194,11 @@ "examples/express": { "name": "example-hydrogen-express", "dependencies": { - "@remix-run/css-bundle": "^2.8.0", - "@remix-run/express": "^2.8.0", - "@remix-run/node": "^2.8.0", - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/css-bundle": "^2.9.2", + "@remix-run/express": "^2.9.2", + "@remix-run/node": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -125,8 +211,8 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@types/compression": "^1.7.2", "@types/express": "^4.17.17", "@types/morgan": "^1.9.4", @@ -142,6 +228,71 @@ "node": ">=18.0.0" } }, + "examples/express/node_modules/@remix-run/css-bundle": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/css-bundle/-/css-bundle-2.9.2.tgz", + "integrity": "sha512-q+rfqcM+1Tf+kTpwaGlyBhwAGZyaQtE8sD0cJQBbhP6GZzMrnKUp2KY+w2Xuh04HnKSO3kTp67SvVUCdN+xllg==", + "engines": { + "node": ">=18.0.0" + } + }, + "examples/express/node_modules/@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "dependencies": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "eslint": "^8.0.0", + "react": "^18.0.0", + "typescript": "^5.1.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "examples/express/node_modules/@remix-run/express": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/express/-/express-2.9.2.tgz", + "integrity": "sha512-KhGPwX01gopvOzOCc0V2x+TC2UhfbwnDPjBk/KLFjn3z9srYD2X0xVdqGiNp6tXSiUuLDx8NlfHjrfLVwfJYnQ==", + "dependencies": { + "@remix-run/node": "2.9.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "express": "^4.17.1", + "typescript": "^5.1.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "examples/infinite-scroll": { "name": "example-infinite-scroll", "dependencies": { @@ -166,7 +317,7 @@ "examples/multipass": { "name": "example-multipass", "dependencies": { - "@remix-run/react": "^2.8.0", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -180,8 +331,8 @@ "snakecase-keys": "^5.5.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", "@shopify/prettier-config": "^1.1.2", @@ -199,6 +350,43 @@ "node": ">=18.0.0" } }, + "examples/multipass/node_modules/@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "dependencies": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "eslint": "^8.0.0", + "react": "^18.0.0", + "typescript": "^5.1.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "examples/optimistic-cart-ui": { "name": "example-optimistic-cart-ui", "dependencies": { @@ -210,7 +398,7 @@ "version": "1.0.0", "dependencies": { "@builder.io/partytown": "^0.8.1", - "@remix-run/react": "^2.8.0", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -222,8 +410,8 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", "@shopify/prettier-config": "^1.1.2", @@ -238,13 +426,50 @@ "typescript": "^5.2.2" }, "engines": { - "node": ">=16.13" + "node": ">=18.0.0" + } + }, + "examples/partytown/node_modules/@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "dependencies": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "eslint": "^8.0.0", + "react": "^18.0.0", + "typescript": "^5.1.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "examples/subscriptions": { "name": "example-subscriptions", "dependencies": { - "@remix-run/react": "^2.8.0", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -256,8 +481,8 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", "@shopify/prettier-config": "^1.1.2", @@ -277,7 +502,44 @@ "typescript": "^5.2.2" }, "engines": { - "node": ">=16.13" + "node": ">=18.0.0" + } + }, + "examples/subscriptions/node_modules/@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "dependencies": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "eslint": "^8.0.0", + "react": "^18.0.0", + "typescript": "^5.1.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "examples/third-party-queries-caching": { @@ -7254,18 +7516,10 @@ "node": ">=12" } }, - "node_modules/@remix-run/css-bundle": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/css-bundle/-/css-bundle-2.8.0.tgz", - "integrity": "sha512-QGZ9i99qQNeRt9ophHtF2mMXNQFURlyogA75oMWbZfVxDt3kV6jjit+LTgQ3rxjOvu2Q81xNnb7rc7Mi/nnRSQ==", - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@remix-run/dev": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/dev/-/dev-2.8.0.tgz", - "integrity": "sha512-kZtmK/7vKk7QV8CGCyC9Or3wP7EwL4rOJS9vObmTRAPv8mLyznR8bJxeNVWA7ICnCGejF8s2X3abVJrkEMiFlg==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/dev/-/dev-2.9.2.tgz", + "integrity": "sha512-70dr9HH/mCHP5+uPoQXyS9+r73IL//IDPaFruIhK8kmmLPGAg5bGyFRz/xX6LTa98gPdAwZXxBy7frudeh2Z0Q==", "dev": true, "dependencies": { "@babel/core": "^7.21.8", @@ -7278,9 +7532,9 @@ "@babel/types": "^7.22.5", "@mdx-js/mdx": "^2.3.0", "@npmcli/package-json": "^4.0.1", - "@remix-run/node": "2.8.0", - "@remix-run/router": "1.15.2", - "@remix-run/server-runtime": "2.8.0", + "@remix-run/node": "2.9.2", + "@remix-run/router": "1.16.1", + "@remix-run/server-runtime": "2.9.2", "@types/mdx": "^2.0.5", "@vanilla-extract/integration": "^6.2.0", "arg": "^5.0.1", @@ -7329,7 +7583,8 @@ "node": ">=18.0.0" }, "peerDependencies": { - "@remix-run/serve": "^2.8.0", + "@remix-run/react": "^2.9.2", + "@remix-run/serve": "^2.9.2", "typescript": "^5.1.0", "vite": "^5.1.0", "wrangler": "^3.28.2" @@ -7511,76 +7766,18 @@ "node": ">=6" } }, - "node_modules/@remix-run/eslint-config": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.8.0.tgz", - "integrity": "sha512-4y5TxhWbivKT2g8d2wciWSns6KhuvJPXoLuuBa2v3At20LxqWdyqErZfPHPrecXHjl/vJpSAGOGXAU1WuS39kg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.21.8", - "@babel/eslint-parser": "^7.21.8", - "@babel/preset-react": "^7.18.6", - "@rushstack/eslint-patch": "^1.2.0", - "@typescript-eslint/eslint-plugin": "^5.59.0", - "@typescript-eslint/parser": "^5.59.0", - "eslint-import-resolver-node": "0.3.7", - "eslint-import-resolver-typescript": "^3.5.4", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-jest": "^26.9.0", - "eslint-plugin-jest-dom": "^4.0.3", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-react": "^7.32.2", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^5.10.2" - }, - "engines": { - "node": ">=18.0.0" - }, - "peerDependencies": { - "eslint": "^8.0.0", - "react": "^18.0.0", - "typescript": "^5.1.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@remix-run/express": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/express/-/express-2.8.0.tgz", - "integrity": "sha512-15qnPt+vrvv66pvdcRiodNF5I5Rot07HoKjVlrXYSO4KbSg9WTE0jCPX0rFStD4QNTa2hIl8YftPlmZXjFxQoQ==", - "dependencies": { - "@remix-run/node": "2.8.0" - }, - "engines": { - "node": ">=18.0.0" - }, - "peerDependencies": { - "express": "^4.17.1", - "typescript": "^5.1.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/@remix-run/node": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/node/-/node-2.8.0.tgz", - "integrity": "sha512-UGAckayyhw14v70O1Lcf75Nr/ipLOG5e20tMiMee96sCXWaHGHpv9VbAVoDXiVKqI3sw4dJarNc0qo794zwAbg==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/node/-/node-2.9.2.tgz", + "integrity": "sha512-2Mt2107pfelz4T+ziDBef3P4A7kgPqCDshnEYCVGxInivJ3HHwAKUcb7MhGa8uMMMA6LMWxbAPYNHPzC3iKv2A==", "dependencies": { - "@remix-run/server-runtime": "2.8.0", + "@remix-run/server-runtime": "2.9.2", "@remix-run/web-fetch": "^4.4.2", - "@remix-run/web-file": "^3.1.0", - "@remix-run/web-stream": "^1.1.0", "@web3-storage/multipart-parser": "^1.0.0", "cookie-signature": "^1.1.0", "source-map-support": "^0.5.21", - "stream-slice": "^0.1.2" + "stream-slice": "^0.1.2", + "undici": "^6.10.1" }, "engines": { "node": ">=18.0.0" @@ -7602,15 +7799,24 @@ "node": ">=6.6.0" } }, + "node_modules/@remix-run/node/node_modules/undici": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.18.0.tgz", + "integrity": "sha512-nT8jjv/fE9Et1ilR6QoW8ingRTY2Pp4l2RUrdzV5Yz35RJDrtPc1DXvuNqcpsJSGIRHFdt3YKKktTzJA6r0fTA==", + "engines": { + "node": ">=18.17" + } + }, "node_modules/@remix-run/react": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/react/-/react-2.8.0.tgz", - "integrity": "sha512-QDbdAFOPssVGIlT1Klp/GiS6Sbkmwn9e2tJXXtPwchLCePGCnIlJXtBe/jokFBwcG8ce+oTRzSVmJ75kEEahZA==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/react/-/react-2.9.2.tgz", + "integrity": "sha512-DcZDzm68MBxGn8hjf/VsuUpjxDYZ8VOOH79P1zWu4hb3hBr90WV1Sa/gIAFUEGpOCcSQ0EG/ci8MaFxcAaPz2Q==", "dependencies": { - "@remix-run/router": "1.15.2", - "@remix-run/server-runtime": "2.8.0", - "react-router": "6.22.2", - "react-router-dom": "6.22.2" + "@remix-run/router": "1.16.1", + "@remix-run/server-runtime": "2.9.2", + "react-router": "6.23.1", + "react-router-dom": "6.23.1", + "turbo-stream": "^2.0.0" }, "engines": { "node": ">=18.0.0" @@ -7627,45 +7833,25 @@ } }, "node_modules/@remix-run/router": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.15.2.tgz", - "integrity": "sha512-+Rnav+CaoTE5QJc4Jcwh5toUpnVLKYbpU6Ys0zqbakqbaLQHeglLVHPfxOiQqdNmUy5C2lXz5dwC6tQNX2JW2Q==", + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.16.1.tgz", + "integrity": "sha512-es2g3dq6Nb07iFxGk5GuHN20RwBZOsuDQN7izWIisUcv9r+d2C5jQxqmgkdebXgReWfiyUabcki6Fg77mSNrig==", "engines": { "node": ">=14.0.0" } }, - "node_modules/@remix-run/serve": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/serve/-/serve-2.8.0.tgz", - "integrity": "sha512-khZ09edcyDC88+I3379ArspawRPeKroxILuXbNa9tdHJvy1Fk3hTVMiZHxlb1/u3W6VVD5f5xMoLHzwVr6q5Xw==", - "dependencies": { - "@remix-run/express": "2.8.0", - "@remix-run/node": "2.8.0", - "chokidar": "^3.5.3", - "compression": "^1.7.4", - "express": "^4.17.1", - "get-port": "5.1.1", - "morgan": "^1.10.0", - "source-map-support": "^0.5.21" - }, - "bin": { - "remix-serve": "dist/cli.js" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@remix-run/server-runtime": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/server-runtime/-/server-runtime-2.8.0.tgz", - "integrity": "sha512-bb6rRefxEqA1fHGUo2i2s1uMztYqQlxupVCVsAs+sUkzTXtORJW+b0oFIKf5yWyaarBJ4zeLyoPsAMBqVX8P3w==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/server-runtime/-/server-runtime-2.9.2.tgz", + "integrity": "sha512-dX37FEeMVVg7KUbpRhX4hD0nUY0Sscz/qAjU4lYCdd6IzwJGariTmz+bQTXKCjploZuXj09OQZHSOS/ydkUVDA==", "dependencies": { - "@remix-run/router": "1.15.2", + "@remix-run/router": "1.16.1", "@types/cookie": "^0.6.0", "@web3-storage/multipart-parser": "^1.0.0", "cookie": "^0.6.0", "set-cookie-parser": "^2.4.8", - "source-map": "^0.7.3" + "source-map": "^0.7.3", + "turbo-stream": "^2.0.0" }, "engines": { "node": ">=18.0.0" @@ -25344,11 +25530,11 @@ } }, "node_modules/react-router": { - "version": "6.22.2", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.22.2.tgz", - "integrity": "sha512-YD3Dzprzpcq+tBMHBS822tCjnWD3iIZbTeSXMY9LPSG541EfoBGyZ3bS25KEnaZjLcmQpw2AVLkFyfgXY8uvcw==", + "version": "6.23.1", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.23.1.tgz", + "integrity": "sha512-fzcOaRF69uvqbbM7OhvQyBTFDVrrGlsFdS3AL+1KfIBtGETibHzi3FkoTRyiDJnWNc2VxrfvR+657ROHjaNjqQ==", "dependencies": { - "@remix-run/router": "1.15.2" + "@remix-run/router": "1.16.1" }, "engines": { "node": ">=14.0.0" @@ -25358,12 +25544,12 @@ } }, "node_modules/react-router-dom": { - "version": "6.22.2", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.22.2.tgz", - "integrity": "sha512-WgqxD2qySEIBPZ3w0sHH+PUAiamDeszls9tzqMPBDA1YYVucTBXLU7+gtRfcSnhe92A3glPnvSxK2dhNoAVOIQ==", + "version": "6.23.1", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.23.1.tgz", + "integrity": "sha512-utP+K+aSTtEdbWpC+4gxhdlPFwuEfDKq8ZrPFU65bbRJY+l706qjR7yaidBpo3MSeA/fzwbXWbKBI6ftOnP3OQ==", "dependencies": { - "@remix-run/router": "1.15.2", - "react-router": "6.22.2" + "@remix-run/router": "1.16.1", + "react-router": "6.23.1" }, "engines": { "node": ">=14.0.0" @@ -28768,6 +28954,11 @@ "linux" ] }, + "node_modules/turbo-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo-stream/-/turbo-stream-2.0.1.tgz", + "integrity": "sha512-sm0ZtcX9YWh28p5X8t5McxC2uthrt9p+g0bGE0KTVFhnhNWefpSVCr+67zRNDUOfo4bpXwiOp7otO+dyQ7/y/A==" + }, "node_modules/turbo-windows-64": { "version": "1.12.0", "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.0.tgz", @@ -30726,7 +30917,7 @@ "cli-hydrogen": "dist/create-app.js" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", + "@remix-run/dev": "^2.9.2", "@types/diff": "^5.0.2", "@types/fs-extra": "^11.0.1", "@types/gunzip-maybe": "^1.4.0", @@ -30947,8 +31138,9 @@ "use-resize-observer": "^9.1.0" }, "devDependencies": { - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/generate-docs": "0.11.1", "@shopify/hydrogen-codegen": "*", "@testing-library/jest-dom": "^5.17.0", @@ -33340,7 +33532,7 @@ "version": "2.0.4", "license": "MIT", "devDependencies": { - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/server-runtime": "^2.9.2", "@shopify/oxygen-workers-types": "^4.0.0" }, "peerDependencies": { @@ -33351,8 +33543,8 @@ "templates/hello-world": { "version": "0.0.0", "dependencies": { - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -33365,7 +33557,7 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", + "@remix-run/dev": "^2.9.2", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", "@shopify/prettier-config": "^1.1.2", @@ -33384,8 +33576,8 @@ "templates/skeleton": { "version": "2024.4.4", "dependencies": { - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -33398,8 +33590,8 @@ }, "devDependencies": { "@graphql-codegen/cli": "5.0.2", - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@shopify/hydrogen-codegen": "^0.3.1", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", @@ -33418,6 +33610,43 @@ "engines": { "node": ">=18.0.0" } + }, + "templates/skeleton/node_modules/@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "dependencies": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "eslint": "^8.0.0", + "react": "^18.0.0", + "typescript": "^5.1.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } } }, "dependencies": { @@ -38117,15 +38346,10 @@ "config-chain": "^1.1.11" } }, - "@remix-run/css-bundle": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/css-bundle/-/css-bundle-2.8.0.tgz", - "integrity": "sha512-QGZ9i99qQNeRt9ophHtF2mMXNQFURlyogA75oMWbZfVxDt3kV6jjit+LTgQ3rxjOvu2Q81xNnb7rc7Mi/nnRSQ==" - }, "@remix-run/dev": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/dev/-/dev-2.8.0.tgz", - "integrity": "sha512-kZtmK/7vKk7QV8CGCyC9Or3wP7EwL4rOJS9vObmTRAPv8mLyznR8bJxeNVWA7ICnCGejF8s2X3abVJrkEMiFlg==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/dev/-/dev-2.9.2.tgz", + "integrity": "sha512-70dr9HH/mCHP5+uPoQXyS9+r73IL//IDPaFruIhK8kmmLPGAg5bGyFRz/xX6LTa98gPdAwZXxBy7frudeh2Z0Q==", "dev": true, "requires": { "@babel/core": "^7.21.8", @@ -38138,9 +38362,9 @@ "@babel/types": "^7.22.5", "@mdx-js/mdx": "^2.3.0", "@npmcli/package-json": "^4.0.1", - "@remix-run/node": "2.8.0", - "@remix-run/router": "1.15.2", - "@remix-run/server-runtime": "2.8.0", + "@remix-run/node": "2.9.2", + "@remix-run/router": "1.16.1", + "@remix-run/server-runtime": "2.9.2", "@types/mdx": "^2.0.5", "@vanilla-extract/integration": "^6.2.0", "arg": "^5.0.1", @@ -38298,102 +38522,61 @@ } } }, - "@remix-run/eslint-config": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.8.0.tgz", - "integrity": "sha512-4y5TxhWbivKT2g8d2wciWSns6KhuvJPXoLuuBa2v3At20LxqWdyqErZfPHPrecXHjl/vJpSAGOGXAU1WuS39kg==", - "dev": true, - "requires": { - "@babel/core": "^7.21.8", - "@babel/eslint-parser": "^7.21.8", - "@babel/preset-react": "^7.18.6", - "@rushstack/eslint-patch": "^1.2.0", - "@typescript-eslint/eslint-plugin": "^5.59.0", - "@typescript-eslint/parser": "^5.59.0", - "eslint-import-resolver-node": "0.3.7", - "eslint-import-resolver-typescript": "^3.5.4", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-jest": "^26.9.0", - "eslint-plugin-jest-dom": "^4.0.3", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-react": "^7.32.2", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-testing-library": "^5.10.2" - } - }, - "@remix-run/express": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/express/-/express-2.8.0.tgz", - "integrity": "sha512-15qnPt+vrvv66pvdcRiodNF5I5Rot07HoKjVlrXYSO4KbSg9WTE0jCPX0rFStD4QNTa2hIl8YftPlmZXjFxQoQ==", - "requires": { - "@remix-run/node": "2.8.0" - } - }, "@remix-run/node": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/node/-/node-2.8.0.tgz", - "integrity": "sha512-UGAckayyhw14v70O1Lcf75Nr/ipLOG5e20tMiMee96sCXWaHGHpv9VbAVoDXiVKqI3sw4dJarNc0qo794zwAbg==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/node/-/node-2.9.2.tgz", + "integrity": "sha512-2Mt2107pfelz4T+ziDBef3P4A7kgPqCDshnEYCVGxInivJ3HHwAKUcb7MhGa8uMMMA6LMWxbAPYNHPzC3iKv2A==", "requires": { - "@remix-run/server-runtime": "2.8.0", + "@remix-run/server-runtime": "2.9.2", "@remix-run/web-fetch": "^4.4.2", - "@remix-run/web-file": "^3.1.0", - "@remix-run/web-stream": "^1.1.0", "@web3-storage/multipart-parser": "^1.0.0", "cookie-signature": "^1.1.0", "source-map-support": "^0.5.21", - "stream-slice": "^0.1.2" + "stream-slice": "^0.1.2", + "undici": "^6.10.1" }, "dependencies": { "cookie-signature": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.1.tgz", "integrity": "sha512-78KWk9T26NhzXtuL26cIJ8/qNHANyJ/ZYrmEXFzUmhZdjpBv+DlWlOANRTGBt48YcyslsLrj0bMLFTmXvLRCOw==" + }, + "undici": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.18.0.tgz", + "integrity": "sha512-nT8jjv/fE9Et1ilR6QoW8ingRTY2Pp4l2RUrdzV5Yz35RJDrtPc1DXvuNqcpsJSGIRHFdt3YKKktTzJA6r0fTA==" } } }, "@remix-run/react": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/react/-/react-2.8.0.tgz", - "integrity": "sha512-QDbdAFOPssVGIlT1Klp/GiS6Sbkmwn9e2tJXXtPwchLCePGCnIlJXtBe/jokFBwcG8ce+oTRzSVmJ75kEEahZA==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/react/-/react-2.9.2.tgz", + "integrity": "sha512-DcZDzm68MBxGn8hjf/VsuUpjxDYZ8VOOH79P1zWu4hb3hBr90WV1Sa/gIAFUEGpOCcSQ0EG/ci8MaFxcAaPz2Q==", "requires": { - "@remix-run/router": "1.15.2", - "@remix-run/server-runtime": "2.8.0", - "react-router": "6.22.2", - "react-router-dom": "6.22.2" + "@remix-run/router": "1.16.1", + "@remix-run/server-runtime": "2.9.2", + "react-router": "6.23.1", + "react-router-dom": "6.23.1", + "turbo-stream": "^2.0.0" } }, "@remix-run/router": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.15.2.tgz", - "integrity": "sha512-+Rnav+CaoTE5QJc4Jcwh5toUpnVLKYbpU6Ys0zqbakqbaLQHeglLVHPfxOiQqdNmUy5C2lXz5dwC6tQNX2JW2Q==" - }, - "@remix-run/serve": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/serve/-/serve-2.8.0.tgz", - "integrity": "sha512-khZ09edcyDC88+I3379ArspawRPeKroxILuXbNa9tdHJvy1Fk3hTVMiZHxlb1/u3W6VVD5f5xMoLHzwVr6q5Xw==", - "requires": { - "@remix-run/express": "2.8.0", - "@remix-run/node": "2.8.0", - "chokidar": "^3.5.3", - "compression": "^1.7.4", - "express": "^4.17.1", - "get-port": "5.1.1", - "morgan": "^1.10.0", - "source-map-support": "^0.5.21" - } + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.16.1.tgz", + "integrity": "sha512-es2g3dq6Nb07iFxGk5GuHN20RwBZOsuDQN7izWIisUcv9r+d2C5jQxqmgkdebXgReWfiyUabcki6Fg77mSNrig==" }, "@remix-run/server-runtime": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/@remix-run/server-runtime/-/server-runtime-2.8.0.tgz", - "integrity": "sha512-bb6rRefxEqA1fHGUo2i2s1uMztYqQlxupVCVsAs+sUkzTXtORJW+b0oFIKf5yWyaarBJ4zeLyoPsAMBqVX8P3w==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/server-runtime/-/server-runtime-2.9.2.tgz", + "integrity": "sha512-dX37FEeMVVg7KUbpRhX4hD0nUY0Sscz/qAjU4lYCdd6IzwJGariTmz+bQTXKCjploZuXj09OQZHSOS/ydkUVDA==", "requires": { - "@remix-run/router": "1.15.2", + "@remix-run/router": "1.16.1", "@types/cookie": "^0.6.0", "@web3-storage/multipart-parser": "^1.0.0", "cookie": "^0.6.0", "set-cookie-parser": "^2.4.8", - "source-map": "^0.7.3" + "source-map": "^0.7.3", + "turbo-stream": "^2.0.0" } }, "@remix-run/web-blob": { @@ -38750,7 +38933,7 @@ "@ast-grep/napi": "0.11.0", "@oclif/core": "3.23.0", "@parcel/watcher": "^2.3.0", - "@remix-run/dev": "^2.8.0", + "@remix-run/dev": "^2.9.2", "@shopify/cli-kit": "3.59.2", "@shopify/oxygen-cli": "~4.4.0", "@shopify/plugin-cloudflare": "3.59.2", @@ -39127,8 +39310,9 @@ "@shopify/hydrogen": { "version": "file:packages/hydrogen", "requires": { - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/generate-docs": "0.11.1", "@shopify/hydrogen-codegen": "*", "@shopify/hydrogen-react": "2024.4.2", @@ -40786,7 +40970,7 @@ "@shopify/remix-oxygen": { "version": "file:packages/remix-oxygen", "requires": { - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/server-runtime": "^2.9.2", "@shopify/oxygen-workers-types": "^4.0.0" } }, @@ -43883,12 +44067,12 @@ "docs-preview": { "version": "file:docs/preview", "requires": { - "@remix-run/css-bundle": "^2.8.0", - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", - "@remix-run/node": "^2.8.0", - "@remix-run/react": "^2.8.0", - "@remix-run/serve": "^2.8.0", + "@remix-run/css-bundle": "^2.9.2", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", + "@remix-run/node": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/serve": "^2.9.2", "@types/he": "^1.2.1", "@types/react": "^18.2.20", "@types/react-dom": "^18.2.7", @@ -43901,6 +44085,60 @@ "react-dom": "^18.2.0", "react-syntax-highlighter": "^15.5.0", "typescript": "^5.2.2" + }, + "dependencies": { + "@remix-run/css-bundle": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/css-bundle/-/css-bundle-2.9.2.tgz", + "integrity": "sha512-q+rfqcM+1Tf+kTpwaGlyBhwAGZyaQtE8sD0cJQBbhP6GZzMrnKUp2KY+w2Xuh04HnKSO3kTp67SvVUCdN+xllg==" + }, + "@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "requires": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + } + }, + "@remix-run/express": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/express/-/express-2.9.2.tgz", + "integrity": "sha512-KhGPwX01gopvOzOCc0V2x+TC2UhfbwnDPjBk/KLFjn3z9srYD2X0xVdqGiNp6tXSiUuLDx8NlfHjrfLVwfJYnQ==", + "requires": { + "@remix-run/node": "2.9.2" + } + }, + "@remix-run/serve": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/serve/-/serve-2.9.2.tgz", + "integrity": "sha512-wA3mjQcIkkzmr2798mMDDCkVmVraVwFgLiZ0ManlU5mOWZhI0W+b55fxHltJ4gkAMGYaxrk7vq/s8s/r+L3cTQ==", + "requires": { + "@remix-run/express": "2.9.2", + "@remix-run/node": "2.9.2", + "chokidar": "^3.5.3", + "compression": "^1.7.4", + "express": "^4.17.1", + "get-port": "5.1.1", + "morgan": "^1.10.0", + "source-map-support": "^0.5.21" + } + } } }, "doctrine": { @@ -44989,13 +45227,13 @@ "example-hydrogen-express": { "version": "file:examples/express", "requires": { - "@remix-run/css-bundle": "^2.8.0", - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", - "@remix-run/express": "^2.8.0", - "@remix-run/node": "^2.8.0", - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/css-bundle": "^2.9.2", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", + "@remix-run/express": "^2.9.2", + "@remix-run/node": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -45016,6 +45254,45 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "typescript": "^5.2.2" + }, + "dependencies": { + "@remix-run/css-bundle": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/css-bundle/-/css-bundle-2.9.2.tgz", + "integrity": "sha512-q+rfqcM+1Tf+kTpwaGlyBhwAGZyaQtE8sD0cJQBbhP6GZzMrnKUp2KY+w2Xuh04HnKSO3kTp67SvVUCdN+xllg==" + }, + "@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "requires": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + } + }, + "@remix-run/express": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/express/-/express-2.9.2.tgz", + "integrity": "sha512-KhGPwX01gopvOzOCc0V2x+TC2UhfbwnDPjBk/KLFjn3z9srYD2X0xVdqGiNp6tXSiUuLDx8NlfHjrfLVwfJYnQ==", + "requires": { + "@remix-run/node": "2.9.2" + } + } } }, "example-infinite-scroll": { @@ -45042,9 +45319,9 @@ "example-multipass": { "version": "file:examples/multipass", "requires": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", - "@remix-run/react": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -45068,6 +45345,32 @@ "react-dom": "^18.2.0", "snakecase-keys": "^5.5.0", "typescript": "^5.2.2" + }, + "dependencies": { + "@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "requires": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + } + } } }, "example-optimistic-cart-ui": { @@ -45080,9 +45383,9 @@ "version": "file:examples/partytown", "requires": { "@builder.io/partytown": "^0.8.1", - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", - "@remix-run/react": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -45104,14 +45407,40 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "typescript": "^5.2.2" + }, + "dependencies": { + "@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "requires": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + } + } } }, "example-subscriptions": { "version": "file:examples/subscriptions", "requires": { - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", - "@remix-run/react": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", + "@remix-run/react": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -45138,6 +45467,32 @@ "react-dom": "^18.2.0", "tailwindcss": "^3.3.0", "typescript": "^5.2.2" + }, + "dependencies": { + "@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "requires": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + } + } } }, "example-third-party-queries-caching": { @@ -46658,9 +47013,9 @@ "hello-world": { "version": "file:templates/hello-world", "requires": { - "@remix-run/dev": "^2.8.0", - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -51752,20 +52107,20 @@ "dev": true }, "react-router": { - "version": "6.22.2", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.22.2.tgz", - "integrity": "sha512-YD3Dzprzpcq+tBMHBS822tCjnWD3iIZbTeSXMY9LPSG541EfoBGyZ3bS25KEnaZjLcmQpw2AVLkFyfgXY8uvcw==", + "version": "6.23.1", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.23.1.tgz", + "integrity": "sha512-fzcOaRF69uvqbbM7OhvQyBTFDVrrGlsFdS3AL+1KfIBtGETibHzi3FkoTRyiDJnWNc2VxrfvR+657ROHjaNjqQ==", "requires": { - "@remix-run/router": "1.15.2" + "@remix-run/router": "1.16.1" } }, "react-router-dom": { - "version": "6.22.2", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.22.2.tgz", - "integrity": "sha512-WgqxD2qySEIBPZ3w0sHH+PUAiamDeszls9tzqMPBDA1YYVucTBXLU7+gtRfcSnhe92A3glPnvSxK2dhNoAVOIQ==", + "version": "6.23.1", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.23.1.tgz", + "integrity": "sha512-utP+K+aSTtEdbWpC+4gxhdlPFwuEfDKq8ZrPFU65bbRJY+l706qjR7yaidBpo3MSeA/fzwbXWbKBI6ftOnP3OQ==", "requires": { - "@remix-run/router": "1.15.2", - "react-router": "6.22.2" + "@remix-run/router": "1.16.1", + "react-router": "6.23.1" } }, "react-syntax-highlighter": { @@ -52880,10 +53235,10 @@ "version": "file:templates/skeleton", "requires": { "@graphql-codegen/cli": "5.0.2", - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -52907,6 +53262,32 @@ "typescript": "^5.2.2", "vite": "^5.1.0", "vite-tsconfig-paths": "^4.3.1" + }, + "dependencies": { + "@remix-run/eslint-config": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@remix-run/eslint-config/-/eslint-config-2.9.2.tgz", + "integrity": "sha512-tZV98Fz1QHAwIA9MOo48Es0ltAzvOIj/uCjCDsKOEndhEX+qwH1qC7eLIBGJiRDgEO3hIQUtzUuw5S6J8B2B+w==", + "dev": true, + "requires": { + "@babel/core": "^7.21.8", + "@babel/eslint-parser": "^7.21.8", + "@babel/preset-react": "^7.18.6", + "@rushstack/eslint-patch": "^1.2.0", + "@typescript-eslint/eslint-plugin": "^5.59.0", + "@typescript-eslint/parser": "^5.59.0", + "eslint-import-resolver-node": "0.3.7", + "eslint-import-resolver-typescript": "^3.5.4", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jest": "^26.9.0", + "eslint-plugin-jest-dom": "^4.0.3", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-testing-library": "^5.10.2" + } + } } }, "slash": { @@ -54145,6 +54526,11 @@ "dev": true, "optional": true }, + "turbo-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/turbo-stream/-/turbo-stream-2.0.1.tgz", + "integrity": "sha512-sm0ZtcX9YWh28p5X8t5McxC2uthrt9p+g0bGE0KTVFhnhNWefpSVCr+67zRNDUOfo4bpXwiOp7otO+dyQ7/y/A==" + }, "turbo-windows-64": { "version": "1.12.0", "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-1.12.0.tgz", diff --git a/packages/cli/package.json b/packages/cli/package.json index 78d9e56ac0..f0bbc1aa84 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -16,7 +16,7 @@ "test:watch": "cross-env SHOPIFY_UNIT_TEST=1 vitest --test-timeout=20000" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", + "@remix-run/dev": "^2.9.2", "@types/diff": "^5.0.2", "@types/fs-extra": "^11.0.1", "@types/gunzip-maybe": "^1.4.0", diff --git a/packages/hydrogen/package.json b/packages/hydrogen/package.json index 1356f960f6..d214915260 100644 --- a/packages/hydrogen/package.json +++ b/packages/hydrogen/package.json @@ -71,8 +71,9 @@ "use-resize-observer": "^9.1.0" }, "devDependencies": { - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/generate-docs": "0.11.1", "@shopify/hydrogen-codegen": "*", "@testing-library/jest-dom": "^5.17.0", diff --git a/packages/remix-oxygen/package.json b/packages/remix-oxygen/package.json index d7cfc61e38..0af2d0501d 100644 --- a/packages/remix-oxygen/package.json +++ b/packages/remix-oxygen/package.json @@ -40,7 +40,7 @@ "dist" ], "devDependencies": { - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/server-runtime": "^2.9.2", "@shopify/oxygen-workers-types": "^4.0.0" }, "peerDependencies": { diff --git a/templates/hello-world/package.json b/templates/hello-world/package.json index 602a219e37..7cbd631817 100644 --- a/templates/hello-world/package.json +++ b/templates/hello-world/package.json @@ -12,8 +12,8 @@ }, "prettier": "@shopify/prettier-config", "dependencies": { - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -26,7 +26,7 @@ "react-dom": "^18.2.0" }, "devDependencies": { - "@remix-run/dev": "^2.8.0", + "@remix-run/dev": "^2.9.2", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0", "@shopify/prettier-config": "^1.1.2", diff --git a/templates/skeleton/package.json b/templates/skeleton/package.json index f95e0fac53..72d568e643 100644 --- a/templates/skeleton/package.json +++ b/templates/skeleton/package.json @@ -14,8 +14,8 @@ }, "prettier": "@shopify/prettier-config", "dependencies": { - "@remix-run/react": "^2.8.0", - "@remix-run/server-runtime": "^2.8.0", + "@remix-run/react": "^2.9.2", + "@remix-run/server-runtime": "^2.9.2", "@shopify/cli": "3.59.2", "@shopify/cli-hydrogen": "^8.0.4", "@shopify/hydrogen": "2024.4.2", @@ -28,8 +28,8 @@ }, "devDependencies": { "@graphql-codegen/cli": "5.0.2", - "@remix-run/dev": "^2.8.0", - "@remix-run/eslint-config": "^2.8.0", + "@remix-run/dev": "^2.9.2", + "@remix-run/eslint-config": "^2.9.2", "@shopify/hydrogen-codegen": "^0.3.1", "@shopify/mini-oxygen": "^3.0.2", "@shopify/oxygen-workers-types": "^4.0.0",