From a0e84d76b67d4c57c4defee06185949c41782eab Mon Sep 17 00:00:00 2001 From: Michelle Chen Date: Wed, 3 Jul 2024 02:57:49 -0400 Subject: [PATCH] Update `@shopify/oxygen-workers-types` to v4.1.2 (#2252) * Update `@shopify/oxygen-workers-types` to v4.1.1 * add the package to hydrogen * Add type to codegen * Update changeset * Remove workers types dependency from hydrogen-codegen * Remove workers types dependency from hydrogen and refactor type files * Split types in MiniOxygen to avoid checking worker types in Hydrogen * Add extension to CLI import * Update changeset * Remove workers types dependency from hydrogen package.json * Workaround wrong types * Fix types in CLI to avoid depending on workers types * Revert type split and fix it in origin * Update to types 4.1.2 and remove workaround * Fix type in hydrogen-react * Changesets * Merge main * Dedup package-lock.json * Cleanup --------- Co-authored-by: Fran Dios --- .changeset/big-otters-brake.md | 6 + package-lock.json | 660 +++++++++--------- packages/cli/{remix.env.d.ts => dev.env.d.ts} | 25 +- packages/cli/src/commands/hydrogen/upgrade.ts | 2 +- packages/cli/src/lib/mini-oxygen/node.ts | 2 +- packages/cli/tsconfig.json | 4 +- packages/hydrogen-codegen/tsconfig.json | 3 +- packages/hydrogen-react/src/useMoney.tsx | 2 +- .../{hydrogen.config.d.ts => dev.env.d.ts} | 20 +- packages/hydrogen/package.json | 2 +- .../hydrogen/src/cache/create-with-cache.ts | 3 +- packages/hydrogen/src/cache/run-with-cache.ts | 3 +- packages/hydrogen/src/cache/server-fetch.ts | 3 +- .../src/customer/auth.helpers.test.ts | 2 +- .../hydrogen/src/customer/auth.helpers.ts | 12 +- .../hydrogen/src/customer/customer.test.ts | 2 +- packages/hydrogen/src/customer/customer.ts | 8 +- packages/hydrogen/src/customer/types.ts | 4 +- packages/hydrogen/src/index.ts | 2 +- packages/hydrogen/src/storefront.ts | 3 +- .../src/{hydrogen.d.ts => types.d.ts} | 2 + packages/hydrogen/src/vite/request-events.ts | 3 +- packages/hydrogen/tsconfig.json | 10 +- packages/mini-oxygen/package.json | 2 +- packages/remix-oxygen/package.json | 4 +- packages/remix-oxygen/tsconfig.json | 5 +- templates/skeleton/package.json | 2 +- tsconfig.json | 2 +- 28 files changed, 438 insertions(+), 360 deletions(-) create mode 100644 .changeset/big-otters-brake.md rename packages/cli/{remix.env.d.ts => dev.env.d.ts} (57%) rename packages/hydrogen/{hydrogen.config.d.ts => dev.env.d.ts} (62%) rename packages/hydrogen/src/{hydrogen.d.ts => types.d.ts} (96%) diff --git a/.changeset/big-otters-brake.md b/.changeset/big-otters-brake.md new file mode 100644 index 0000000000..b99f15c788 --- /dev/null +++ b/.changeset/big-otters-brake.md @@ -0,0 +1,6 @@ +--- +'@shopify/remix-oxygen': patch +'skeleton': patch +--- + +Update `@shopify/oxygen-workers-types` to fix issues on Windows. diff --git a/package-lock.json b/package-lock.json index 5eec67f035..e97d637a56 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3430,9 +3430,9 @@ } }, "node_modules/@graphql-codegen/client-preset/node_modules/@graphql-codegen/visitor-plugin-common": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-5.2.0.tgz", - "integrity": "sha512-0p8AwmARaZCAlDFfQu6Sz+JV6SjbPDx3y2nNM7WAAf0au7Im/GpJ7Ke3xaIYBc1b2rTZ+DqSTJI/zomENGD9NA==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-5.3.1.tgz", + "integrity": "sha512-MktoBdNZhSmugiDjmFl1z6rEUUaqyxtFJYWnDilE7onkPgyw//O0M+TuPBJPBWdyV6J2ond0Hdqtq+rkghgSIQ==", "devOptional": true, "dependencies": { "@graphql-codegen/plugin-helpers": "^5.0.4", @@ -3951,6 +3951,27 @@ "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", "devOptional": true }, + "node_modules/@graphql-tools/executor-graphql-ws/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "devOptional": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/@graphql-tools/executor-http": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@graphql-tools/executor-http/-/executor-http-1.0.3.tgz", @@ -4573,6 +4594,27 @@ "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==", "devOptional": true }, + "node_modules/@graphql-tools/url-loader/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "devOptional": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/@graphql-tools/utils": { "version": "10.0.13", "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-10.0.13.tgz", @@ -4700,9 +4742,9 @@ } }, "node_modules/@inquirer/core/node_modules/@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "version": "20.14.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz", + "integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==", "dev": true, "dependencies": { "undici-types": "~5.26.4" @@ -5236,17 +5278,6 @@ "node": ">=16.13" } }, - "node_modules/@miniflare/cache/node_modules/undici": { - "version": "5.28.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", - "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, - "engines": { - "node": ">=14.0" - } - }, "node_modules/@miniflare/core": { "version": "2.14.2", "resolved": "https://registry.npmjs.org/@miniflare/core/-/core-2.14.2.tgz", @@ -5275,17 +5306,6 @@ "node": ">=10" } }, - "node_modules/@miniflare/core/node_modules/undici": { - "version": "5.28.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", - "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, - "engines": { - "node": ">=14.0" - } - }, "node_modules/@miniflare/queues": { "version": "2.14.2", "resolved": "https://registry.npmjs.org/@miniflare/queues/-/queues-2.14.2.tgz", @@ -5358,15 +5378,24 @@ "node": ">=16.13" } }, - "node_modules/@miniflare/web-sockets/node_modules/undici": { - "version": "5.28.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", - "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, + "node_modules/@miniflare/web-sockets/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "engines": { - "node": ">=14.0" + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, "node_modules/@mswjs/cookies": { @@ -5515,15 +5544,16 @@ } }, "node_modules/@npmcli/package-json/node_modules/glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { @@ -5567,9 +5597,9 @@ } }, "node_modules/@npmcli/package-json/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -5716,9 +5746,9 @@ } }, "node_modules/@oclif/core/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -7113,9 +7143,9 @@ } }, "node_modules/@remix-run/dev/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -7175,27 +7205,6 @@ "node": ">=6" } }, - "node_modules/@remix-run/dev/node_modules/ws": { - "version": "7.5.10", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", - "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", - "dev": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "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", @@ -7287,9 +7296,9 @@ } }, "node_modules/@remix-run/node/node_modules/undici": { - "version": "6.18.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.18.2.tgz", - "integrity": "sha512-o/MQLTwRm9IVhOqhZ0NQ9oXax1ygPjw6Vs+Vq/4QRjbOAC3B1GCHy7TYxxbExKlb7bzDRzt9vBWU6BDz0RFfYg==", + "version": "6.19.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.19.2.tgz", + "integrity": "sha512-JfjKqIauur3Q6biAtHJ564e3bWa8VvT+7cSiOJHFbX4Erv6CLGDpg8z+Fmg/1OI/47RA+GI2QZaF48SSaLvyBA==", "engines": { "node": ">=18.17" } @@ -7994,9 +8003,9 @@ } }, "node_modules/@shopify/cli-kit/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", "engines": { "node": ">=12.20" }, @@ -8058,9 +8067,9 @@ } }, "node_modules/@shopify/graphql-codegen/node_modules/type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "engines": { "node": ">=16" }, @@ -8120,11 +8129,10 @@ } }, "node_modules/@shopify/oxygen-workers-types": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@shopify/oxygen-workers-types/-/oxygen-workers-types-4.0.0.tgz", - "integrity": "sha512-9MiXUSu0kXA9mNPMDK6+S8eRuGZ6o0HB4/P1ebZzFlsxFYxfvTu29KDJv/RYKoJufniv/WNSvwHKFyDgEmkJnw==", - "dev": true, - "hasInstallScript": true + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@shopify/oxygen-workers-types/-/oxygen-workers-types-4.1.2.tgz", + "integrity": "sha512-UypDLh4/BR56i8kq+iZk4meJQd584A9I/RH2kQah/I0UK6k8ohWl5ehfwaxOwAtc/fDSsj+2WA6fbOLRa9FtKA==", + "dev": true }, "node_modules/@shopify/plugin-cloudflare": { "version": "3.61.2", @@ -9696,9 +9704,9 @@ } }, "node_modules/@vitest/runner/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", "dev": true, "engines": { "node": ">=12.20" @@ -10576,11 +10584,10 @@ } }, "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "version": "3.0.2", + "license": "MIT", "dependencies": { - "fill-range": "^7.1.1" + "fill-range": "^7.0.1" }, "engines": { "node": ">=8" @@ -10776,15 +10783,16 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { @@ -10807,9 +10815,9 @@ } }, "node_modules/cacache/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -14268,9 +14276,8 @@ } }, "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "version": "7.0.1", + "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -16734,9 +16741,9 @@ } }, "node_modules/ink/node_modules/ws": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz", - "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "engines": { "node": ">=10.0.0" }, @@ -17160,8 +17167,7 @@ }, "node_modules/is-number": { "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", "engines": { "node": ">=0.12.0" } @@ -21195,6 +21201,26 @@ "node": ">=16.13" } }, + "node_modules/miniflare/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/minimatch": { "version": "3.1.2", "license": "ISC", @@ -21482,9 +21508,9 @@ "dev": true }, "node_modules/msw/node_modules/type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "dev": true, "engines": { "node": ">=16" @@ -22480,6 +22506,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "dev": true + }, "node_modules/pako": { "version": "0.2.9", "license": "MIT" @@ -22684,9 +22716,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "dev": true, "engines": { "node": "14 || >=16.14" @@ -23214,9 +23246,10 @@ } }, "node_modules/postcss-selector-parser": { - "version": "6.0.10", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", "dev": true, - "license": "MIT", "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -24281,9 +24314,9 @@ } }, "node_modules/remark-rehype/node_modules/unified": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", - "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", "dev": true, "dependencies": { "@types/unist": "^3.0.0", @@ -24510,9 +24543,9 @@ ] }, "node_modules/remark-stringify/node_modules/unified": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", - "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", "dev": true, "dependencies": { "@types/unist": "^3.0.0", @@ -26241,19 +26274,6 @@ } } }, - "node_modules/tailwindcss/node_modules/postcss-selector-parser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", - "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/tailwindcss/node_modules/yaml": { "version": "1.10.2", "dev": true, @@ -26580,8 +26600,7 @@ }, "node_modules/to-regex-range": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", "dependencies": { "is-number": "^7.0.0" }, @@ -27572,9 +27591,9 @@ } }, "node_modules/typescript": { - "version": "5.4.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", - "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.3.tgz", + "integrity": "sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==", "devOptional": true, "bin": { "tsc": "bin/tsc", @@ -27640,9 +27659,9 @@ "license": "MIT" }, "node_modules/undici": { - "version": "5.28.4", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", - "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "version": "5.28.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", + "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", "dependencies": { "@fastify/busboy": "^2.0.0" }, @@ -29070,15 +29089,16 @@ "license": "ISC" }, "node_modules/ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "devOptional": true, "engines": { - "node": ">=10.0.0" + "node": ">=8.3.0" }, "peerDependencies": { "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" + "utf-8-validate": "^5.0.2" }, "peerDependenciesMeta": { "bufferutil": { @@ -29568,9 +29588,9 @@ } }, "packages/cli/node_modules/string-width": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", - "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dependencies": { "emoji-regex": "^10.3.0", "get-east-asian-width": "^1.0.0", @@ -29598,9 +29618,9 @@ } }, "packages/cli/node_modules/type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "dev": true, "engines": { "node": ">=16" @@ -29679,9 +29699,9 @@ } }, "packages/hydrogen-codegen/node_modules/type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "dev": true, "engines": { "node": ">=16" @@ -30261,9 +30281,9 @@ } }, "packages/hydrogen-react/node_modules/globby": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz", - "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz", + "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==", "dev": true, "dependencies": { "@sindresorhus/merge-streams": "^2.1.0", @@ -31715,9 +31735,9 @@ } }, "packages/hydrogen-react/node_modules/type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "engines": { "node": ">=16" }, @@ -31726,9 +31746,9 @@ } }, "packages/hydrogen-react/node_modules/unified": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", - "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", "dev": true, "dependencies": { "@types/unist": "^3.0.0", @@ -31914,9 +31934,9 @@ } }, "packages/hydrogen/node_modules/type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "engines": { "node": ">=16" }, @@ -31948,7 +31968,7 @@ "ws": "^8.17.1" }, "devDependencies": { - "@shopify/oxygen-workers-types": "^4.0.0", + "@shopify/oxygen-workers-types": "^4.1.2", "@types/body-parser": "1.19.3", "@types/connect": "^3.4.35", "@types/eventsource": "^1.1.10", @@ -32006,10 +32026,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "packages/mini-oxygen/node_modules/undici": { + "version": "5.28.4", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", + "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "dependencies": { + "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=14.0" + } + }, "packages/mini-oxygen/node_modules/ws": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz", - "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "engines": { "node": ">=10.0.0" }, @@ -32032,11 +32063,11 @@ "license": "MIT", "devDependencies": { "@remix-run/server-runtime": "^2.9.2", - "@shopify/oxygen-workers-types": "^4.0.0" + "@shopify/oxygen-workers-types": "^4.1.2" }, "peerDependencies": { "@remix-run/server-runtime": "^2.1.0", - "@shopify/oxygen-workers-types": "^3.17.3 || ^4.0.0" + "@shopify/oxygen-workers-types": "^3.17.3 || ^4.1.2" } }, "templates/skeleton": { @@ -32060,7 +32091,7 @@ "@remix-run/eslint-config": "^2.9.2", "@shopify/hydrogen-codegen": "^0.3.1", "@shopify/mini-oxygen": "^3.0.3", - "@shopify/oxygen-workers-types": "^4.0.0", + "@shopify/oxygen-workers-types": "^4.1.2", "@shopify/prettier-config": "^1.1.2", "@total-typescript/ts-reset": "^0.4.2", "@types/eslint": "^8.4.10", @@ -34190,9 +34221,9 @@ }, "dependencies": { "@graphql-codegen/visitor-plugin-common": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-5.2.0.tgz", - "integrity": "sha512-0p8AwmARaZCAlDFfQu6Sz+JV6SjbPDx3y2nNM7WAAf0au7Im/GpJ7Ke3xaIYBc1b2rTZ+DqSTJI/zomENGD9NA==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-5.3.1.tgz", + "integrity": "sha512-MktoBdNZhSmugiDjmFl1z6rEUUaqyxtFJYWnDilE7onkPgyw//O0M+TuPBJPBWdyV6J2ond0Hdqtq+rkghgSIQ==", "devOptional": true, "requires": { "@graphql-codegen/plugin-helpers": "^5.0.4", @@ -34655,6 +34686,13 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", "devOptional": true + }, + "ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "devOptional": true, + "requires": {} } } }, @@ -35149,6 +35187,13 @@ "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz", "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==", "devOptional": true + }, + "ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "devOptional": true, + "requires": {} } } }, @@ -35249,9 +35294,9 @@ }, "dependencies": { "@types/node": { - "version": "20.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.2.tgz", - "integrity": "sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==", + "version": "20.14.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz", + "integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==", "dev": true, "requires": { "undici-types": "~5.26.4" @@ -35644,16 +35689,6 @@ "@miniflare/shared": "2.14.2", "http-cache-semantics": "^4.1.0", "undici": "5.28.2" - }, - "dependencies": { - "undici": { - "version": "5.28.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", - "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", - "requires": { - "@fastify/busboy": "^2.0.0" - } - } } }, "@miniflare/core": { @@ -35677,14 +35712,6 @@ "version": "10.0.0", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==" - }, - "undici": { - "version": "5.28.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", - "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", - "requires": { - "@fastify/busboy": "^2.0.0" - } } } }, @@ -35742,13 +35769,11 @@ "ws": "^8.2.2" }, "dependencies": { - "undici": { - "version": "5.28.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", - "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", - "requires": { - "@fastify/busboy": "^2.0.0" - } + "ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "requires": {} } } }, @@ -35863,15 +35888,16 @@ } }, "glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", "dev": true, "requires": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" } }, @@ -35897,9 +35923,9 @@ "dev": true }, "minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -36017,9 +36043,9 @@ } }, "minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "requires": { "brace-expansion": "^2.0.1" } @@ -36814,9 +36840,9 @@ "dev": true }, "minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -36851,13 +36877,6 @@ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true - }, - "ws": { - "version": "7.5.10", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", - "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", - "dev": true, - "requires": {} } } }, @@ -36913,9 +36932,9 @@ "integrity": "sha512-78KWk9T26NhzXtuL26cIJ8/qNHANyJ/ZYrmEXFzUmhZdjpBv+DlWlOANRTGBt48YcyslsLrj0bMLFTmXvLRCOw==" }, "undici": { - "version": "6.18.2", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.18.2.tgz", - "integrity": "sha512-o/MQLTwRm9IVhOqhZ0NQ9oXax1ygPjw6Vs+Vq/4QRjbOAC3B1GCHy7TYxxbExKlb7bzDRzt9vBWU6BDz0RFfYg==" + "version": "6.19.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.19.2.tgz", + "integrity": "sha512-JfjKqIauur3Q6biAtHJ564e3bWa8VvT+7cSiOJHFbX4Erv6CLGDpg8z+Fmg/1OI/47RA+GI2QZaF48SSaLvyBA==" } } }, @@ -37251,9 +37270,9 @@ } }, "string-width": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", - "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "requires": { "emoji-regex": "^10.3.0", "get-east-asian-width": "^1.0.0", @@ -37269,9 +37288,9 @@ } }, "type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "dev": true } } @@ -37483,9 +37502,9 @@ "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==" }, "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==" } } }, @@ -37528,9 +37547,9 @@ }, "dependencies": { "type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==" + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==" } } }, @@ -37559,9 +37578,9 @@ }, "dependencies": { "type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==" + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==" } } }, @@ -37577,9 +37596,9 @@ }, "dependencies": { "type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "dev": true } } @@ -37982,9 +38001,9 @@ } }, "globby": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz", - "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz", + "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==", "dev": true, "requires": { "@sindresorhus/merge-streams": "^2.1.0", @@ -38953,14 +38972,14 @@ } }, "type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==" + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==" }, "unified": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", - "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", "dev": true, "requires": { "@types/unist": "^3.0.0", @@ -39097,7 +39116,7 @@ "@miniflare/shared": "^2.14.2", "@miniflare/storage-memory": "^2.14.2", "@miniflare/web-sockets": "^2.14.2", - "@shopify/oxygen-workers-types": "^4.0.0", + "@shopify/oxygen-workers-types": "^4.1.2", "@types/body-parser": "1.19.3", "@types/connect": "^3.4.35", "@types/eventsource": "^1.1.10", @@ -39145,9 +39164,18 @@ "resolved": "https://registry.npmjs.org/get-port/-/get-port-7.1.0.tgz", "integrity": "sha512-QB9NKEeDg3xxVwCCwJQ9+xycaz6pBB6iQ76wiWMl1927n0Kir6alPiP+yuiICLLU4jpMe08dXfpebuQppFA2zw==" }, + "undici": { + "version": "5.28.4", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", + "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "requires": { + "@fastify/busboy": "^2.0.0" + } + }, "ws": { - "version": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz", - "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "requires": {} } } @@ -39175,9 +39203,9 @@ } }, "@shopify/oxygen-workers-types": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@shopify/oxygen-workers-types/-/oxygen-workers-types-4.0.0.tgz", - "integrity": "sha512-9MiXUSu0kXA9mNPMDK6+S8eRuGZ6o0HB4/P1ebZzFlsxFYxfvTu29KDJv/RYKoJufniv/WNSvwHKFyDgEmkJnw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@shopify/oxygen-workers-types/-/oxygen-workers-types-4.1.2.tgz", + "integrity": "sha512-UypDLh4/BR56i8kq+iZk4meJQd584A9I/RH2kQah/I0UK6k8ohWl5ehfwaxOwAtc/fDSsj+2WA6fbOLRa9FtKA==", "dev": true }, "@shopify/plugin-cloudflare": { @@ -39197,7 +39225,7 @@ "version": "file:packages/remix-oxygen", "requires": { "@remix-run/server-runtime": "^2.9.2", - "@shopify/oxygen-workers-types": "^4.0.0" + "@shopify/oxygen-workers-types": "^4.1.2" } }, "@sinclair/typebox": { @@ -40331,9 +40359,9 @@ } }, "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", "dev": true } } @@ -40967,11 +40995,9 @@ } }, "braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "version": "3.0.2", "requires": { - "fill-range": "^7.1.1" + "fill-range": "^7.0.1" } }, "breakword": { @@ -41093,15 +41119,16 @@ } }, "glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", "dev": true, "requires": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" } }, @@ -41112,9 +41139,9 @@ "dev": true }, "minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -43545,9 +43572,7 @@ } }, "fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "version": "7.0.1", "requires": { "to-regex-range": "^5.0.1" } @@ -45155,9 +45180,9 @@ } }, "ws": { - "version": "8.17.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz", - "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "requires": {} } } @@ -45401,9 +45426,7 @@ "dev": true }, "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + "version": "7.0.0" }, "is-number-object": { "version": "1.0.7", @@ -47977,6 +48000,14 @@ "ws": "^8.11.0", "youch": "^3.2.2", "zod": "^3.20.6" + }, + "dependencies": { + "ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "requires": {} + } } }, "minimatch": { @@ -48190,9 +48221,9 @@ "dev": true }, "type-fest": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.20.0.tgz", - "integrity": "sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.21.0.tgz", + "integrity": "sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==", "dev": true } } @@ -48837,6 +48868,12 @@ "semver": "^7.3.7" } }, + "package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "dev": true + }, "pako": { "version": "0.2.9" }, @@ -48993,9 +49030,9 @@ }, "dependencies": { "lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "dev": true } } @@ -49321,7 +49358,9 @@ } }, "postcss-selector-parser": { - "version": "6.0.10", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", + "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", "dev": true, "requires": { "cssesc": "^3.0.0", @@ -50063,9 +50102,9 @@ "dev": true }, "unified": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", - "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", "dev": true, "requires": { "@types/unist": "^3.0.0", @@ -50210,9 +50249,9 @@ "dev": true }, "unified": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", - "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", "dev": true, "requires": { "@types/unist": "^3.0.0", @@ -50748,7 +50787,7 @@ "@shopify/hydrogen": "2024.4.7", "@shopify/hydrogen-codegen": "^0.3.1", "@shopify/mini-oxygen": "^3.0.3", - "@shopify/oxygen-workers-types": "^4.0.0", + "@shopify/oxygen-workers-types": "^4.1.2", "@shopify/prettier-config": "^1.1.2", "@shopify/remix-oxygen": "^2.0.4", "@total-typescript/ts-reset": "^0.4.2", @@ -51455,16 +51494,6 @@ "yaml": "^1.10.2" } }, - "postcss-selector-parser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz", - "integrity": "sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, "yaml": { "version": "1.10.2", "dev": true @@ -51716,8 +51745,6 @@ }, "to-regex-range": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "requires": { "is-number": "^7.0.0" } @@ -52276,9 +52303,9 @@ } }, "typescript": { - "version": "5.4.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", - "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.3.tgz", + "integrity": "sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==", "devOptional": true }, "ua-parser-js": { @@ -52312,9 +52339,9 @@ "dev": true }, "undici": { - "version": "5.28.4", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", - "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "version": "5.28.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", + "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", "requires": { "@fastify/busboy": "^2.0.0" } @@ -53165,9 +53192,10 @@ "version": "1.0.2" }, "ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "devOptional": true, "requires": {} }, "xtend": { diff --git a/packages/cli/remix.env.d.ts b/packages/cli/dev.env.d.ts similarity index 57% rename from packages/cli/remix.env.d.ts rename to packages/cli/dev.env.d.ts index dfd42f3cd4..42a52626b4 100644 --- a/packages/cli/remix.env.d.ts +++ b/packages/cli/dev.env.d.ts @@ -1,9 +1,11 @@ -/// +/** + * This file is used to provide types for generator utilities. + */ import type { - storefront, - customeraccount, - hydrogencart, + Storefront, + CustomerAccount, + HydrogenCart, } from '@shopify/hydrogen'; import type { LanguageCode, @@ -26,10 +28,23 @@ declare module '@shopify/remix-oxygen' { declare global { /** * The I18nLocale used for Storefront API query context. + * Also used for the generated i18n functions. */ type I18nLocale = { language: LanguageCode; country: CountryCode; - pathPrefix: string; + pathPrefix?: string; }; + + /** + * This type is used to import types from mini-oxygen + */ + type ExecutionContext = { + waitUntil: (promise: Promise) => void; + }; + + /** + * This type is used to import types from mini-oxygen + */ + type ExportedHandlerFetchHandler = Function; } diff --git a/packages/cli/src/commands/hydrogen/upgrade.ts b/packages/cli/src/commands/hydrogen/upgrade.ts index 0eae62ebbe..610e2bd5ae 100644 --- a/packages/cli/src/commands/hydrogen/upgrade.ts +++ b/packages/cli/src/commands/hydrogen/upgrade.ts @@ -294,7 +294,7 @@ export async function getChangelog(): Promise { throw new Error('Failed to fetch changelog.json'); } - const json = await response.json(); + const json: ChangeLog = await response.json(); if ('releases' in json && 'url' in json) { CACHED_CHANGELOG = json; diff --git a/packages/cli/src/lib/mini-oxygen/node.ts b/packages/cli/src/lib/mini-oxygen/node.ts index 435160f364..6010e657bc 100644 --- a/packages/cli/src/lib/mini-oxygen/node.ts +++ b/packages/cli/src/lib/mini-oxygen/node.ts @@ -50,7 +50,7 @@ export async function startNodeServer({ method: 'POST', body: JSON.stringify({ ...(asyncLocalStorage.getStore() as Record), - ...(await request.json>()), + ...((await request.json()) as Record), }), }), ), diff --git a/packages/cli/tsconfig.json b/packages/cli/tsconfig.json index 022c3dfa4a..a93b493d82 100644 --- a/packages/cli/tsconfig.json +++ b/packages/cli/tsconfig.json @@ -1,13 +1,13 @@ { "extends": "../../tsconfig.json", - "include": ["src", "remix.env.d.ts", "assets"], + "include": ["src", "dev.env.d.ts", "assets"], "exclude": ["dist", "__tests__", "node_modules", ".turbo"], "compilerOptions": { "module": "NodeNext", "moduleResolution": "NodeNext", "jsx": "react-jsx", "noUncheckedIndexedAccess": true, - "types": ["@shopify/oxygen-workers-types", "node", "@remix-run/dev"], + "types": ["node", "@remix-run/dev"], "outDir": "dist", "paths": { "~/mini-oxygen/*": ["../mini-oxygen/src/*"], diff --git a/packages/hydrogen-codegen/tsconfig.json b/packages/hydrogen-codegen/tsconfig.json index e877944060..2a6115f268 100644 --- a/packages/hydrogen-codegen/tsconfig.json +++ b/packages/hydrogen-codegen/tsconfig.json @@ -5,6 +5,7 @@ "compilerOptions": { "moduleResolution": "node", "rootDir": ".", - "outDir": "dist" + "outDir": "dist", + "types": ["node"] } } diff --git a/packages/hydrogen-react/src/useMoney.tsx b/packages/hydrogen-react/src/useMoney.tsx index 65deb0bc34..91fb3402c6 100644 --- a/packages/hydrogen-react/src/useMoney.tsx +++ b/packages/hydrogen-react/src/useMoney.tsx @@ -117,7 +117,7 @@ export function useMoney(money: MoneyV2): UseMoneyValue { const options = useMemo( () => ({ - style: 'currency', + style: 'currency' as const, currency: money.currencyCode, }), [money.currencyCode], diff --git a/packages/hydrogen/hydrogen.config.d.ts b/packages/hydrogen/dev.env.d.ts similarity index 62% rename from packages/hydrogen/hydrogen.config.d.ts rename to packages/hydrogen/dev.env.d.ts index 5fcb6264db..b24de505a2 100644 --- a/packages/hydrogen/hydrogen.config.d.ts +++ b/packages/hydrogen/dev.env.d.ts @@ -1,4 +1,10 @@ -import type {HydrogenCart, Storefront} from '@shopify/hydrogen'; +/** + * This file is used to provide types for doc examples. + * Do not place here types needed for the library itself. + */ + +import type {HydrogenCart, Storefront} from './src/index'; +import type {WaitUntil} from './src/types'; declare global { /** @@ -17,6 +23,18 @@ declare global { PUBLIC_STOREFRONT_ID: string; PUBLIC_CHECKOUT_DOMAIN: string; } + + /** + * This type is used to import types from mini-oxygen + */ + interface ExecutionContext { + waitUntil: WaitUntil; + } + + /** + * This type is used to import types from mini-oxygen + */ + type ExportedHandlerFetchHandler = Function; } /** diff --git a/packages/hydrogen/package.json b/packages/hydrogen/package.json index d55aa414fd..ec49f64451 100644 --- a/packages/hydrogen/package.json +++ b/packages/hydrogen/package.json @@ -65,8 +65,8 @@ "dependencies": { "@shopify/hydrogen-react": "2024.4.4", "content-security-policy-builder": "^2.2.0", - "type-fest": "^4.5.0", "source-map-support": "^0.5.21", + "type-fest": "^4.5.0", "use-resize-observer": "^9.1.0", "worktop": "^0.7.3" }, diff --git a/packages/hydrogen/src/cache/create-with-cache.ts b/packages/hydrogen/src/cache/create-with-cache.ts index e3c5f3b6ed..dbea1d21d4 100644 --- a/packages/hydrogen/src/cache/create-with-cache.ts +++ b/packages/hydrogen/src/cache/create-with-cache.ts @@ -6,12 +6,13 @@ import { CacheKey, runWithCache, } from './run-with-cache'; +import type {WaitUntil} from '../types'; type CreateWithCacheOptions = { /** An instance that implements the [Cache API](https://developer.mozilla.org/en-US/docs/Web/API/Cache) */ cache: Cache; /** The `waitUntil` function is used to keep the current request/response lifecycle alive even after a response has been sent. It should be provided by your platform. */ - waitUntil: ExecutionContext['waitUntil']; + waitUntil: WaitUntil; /** The `request` object is used to access certain headers for debugging */ request?: CrossRuntimeRequest; }; diff --git a/packages/hydrogen/src/cache/run-with-cache.ts b/packages/hydrogen/src/cache/run-with-cache.ts index 88848cb104..c7347ca29b 100644 --- a/packages/hydrogen/src/cache/run-with-cache.ts +++ b/packages/hydrogen/src/cache/run-with-cache.ts @@ -12,6 +12,7 @@ import { } from './sub-request'; import {type StackInfo} from '../utils/callsites'; import {hashKey} from '../utils/hash'; +import type {WaitUntil} from '../types'; /** * The cache key is used to uniquely identify a value in the cache. @@ -50,7 +51,7 @@ type WithCacheOptions = { strategy?: CachingStrategy | null; cacheInstance?: Cache; shouldCacheResult?: (value: T) => boolean; - waitUntil?: ExecutionContext['waitUntil']; + waitUntil?: WaitUntil; debugInfo?: DebugOptions; }; diff --git a/packages/hydrogen/src/cache/server-fetch.ts b/packages/hydrogen/src/cache/server-fetch.ts index b24c574b5f..fc2b965288 100644 --- a/packages/hydrogen/src/cache/server-fetch.ts +++ b/packages/hydrogen/src/cache/server-fetch.ts @@ -4,13 +4,14 @@ import { runWithCache, type DebugOptions, } from './run-with-cache.js'; +import type {WaitUntil} from '../types.js'; export type FetchCacheOptions = { cache?: CachingStrategy; cacheInstance?: Cache; cacheKey?: CacheKey; shouldCacheResponse?: (body: any, response: Response) => boolean; - waitUntil?: ExecutionContext['waitUntil']; + waitUntil?: WaitUntil; returnType?: 'json' | 'text' | 'arrayBuffer' | 'blob'; debugInfo?: DebugOptions; }; diff --git a/packages/hydrogen/src/customer/auth.helpers.test.ts b/packages/hydrogen/src/customer/auth.helpers.test.ts index 3502ff9143..376152790f 100644 --- a/packages/hydrogen/src/customer/auth.helpers.test.ts +++ b/packages/hydrogen/src/customer/auth.helpers.test.ts @@ -1,5 +1,5 @@ import {describe, it, expect, vi, beforeEach, afterEach} from 'vitest'; -import type {HydrogenSession} from '../hydrogen'; +import type {HydrogenSession} from '../types'; import {CUSTOMER_ACCOUNT_SESSION_KEY} from '../constants'; import {checkExpires, clearSession, refreshToken} from './auth.helpers'; diff --git a/packages/hydrogen/src/customer/auth.helpers.ts b/packages/hydrogen/src/customer/auth.helpers.ts index 5cf01365cb..933720bded 100644 --- a/packages/hydrogen/src/customer/auth.helpers.ts +++ b/packages/hydrogen/src/customer/auth.helpers.ts @@ -1,4 +1,4 @@ -import type {HydrogenSession} from '../hydrogen'; +import type {HydrogenSession} from '../types'; import {BadRequest} from './BadRequest'; import { USER_AGENT, @@ -130,9 +130,11 @@ export async function refreshToken({ }); } - const {access_token, expires_in, refresh_token} = await response.json< - Omit - >(); + const { + access_token, + expires_in, + refresh_token, + }: Omit = await response.json(); const accessToken = await exchangeAccessToken( access_token, @@ -295,7 +297,7 @@ export async function exchangeAccessToken( ...debugInfo, }); - const data = await response.json(); + const data: AccessTokenResponse = await response.json(); if (data.error) { throw new BadRequest(data.error_description); diff --git a/packages/hydrogen/src/customer/customer.test.ts b/packages/hydrogen/src/customer/customer.test.ts index 20f889d02e..599f7bbcdc 100644 --- a/packages/hydrogen/src/customer/customer.test.ts +++ b/packages/hydrogen/src/customer/customer.test.ts @@ -1,5 +1,5 @@ import {describe, it, expect, vi, beforeEach, afterEach} from 'vitest'; -import type {HydrogenSession, HydrogenSessionData} from '../hydrogen'; +import type {HydrogenSession, HydrogenSessionData} from '../types'; import {createCustomerAccountClient} from './customer'; import {BUYER_SESSION_KEY, CUSTOMER_ACCOUNT_SESSION_KEY} from '../constants'; import crypto from 'node:crypto'; diff --git a/packages/hydrogen/src/customer/customer.ts b/packages/hydrogen/src/customer/customer.ts index 25a6e0971f..cf5b9e96db 100644 --- a/packages/hydrogen/src/customer/customer.ts +++ b/packages/hydrogen/src/customer/customer.ts @@ -486,8 +486,12 @@ export function createCustomerAccountClient({ }); } - const {access_token, expires_in, id_token, refresh_token} = - await response.json(); + const { + access_token, + expires_in, + id_token, + refresh_token, + }: AccessTokenResponse = await response.json(); const sessionNonce = session.get(CUSTOMER_ACCOUNT_SESSION_KEY)?.nonce; const responseNonce = await getNonce(id_token); diff --git a/packages/hydrogen/src/customer/types.ts b/packages/hydrogen/src/customer/types.ts index 5ebad85c1b..082a4be101 100644 --- a/packages/hydrogen/src/customer/types.ts +++ b/packages/hydrogen/src/customer/types.ts @@ -4,7 +4,7 @@ import type { } from '@shopify/hydrogen-codegen'; import {type GraphQLError} from '../utils/graphql'; import type {CrossRuntimeRequest} from '../utils/request'; -import type {HydrogenSession} from '../hydrogen'; +import type {HydrogenSession, WaitUntil} from '../types'; import type { LanguageCode, BuyerInput, @@ -137,7 +137,7 @@ export type CustomerAccountOptions = { /** The object for the current Request. It should be provided by your platform. */ request: CrossRuntimeRequest; /** The waitUntil function is used to keep the current request/response lifecycle alive even after a response has been sent. It should be provided by your platform. */ - waitUntil?: ExecutionContext['waitUntil']; + waitUntil?: WaitUntil; /** This is the route in your app that authorizes the customer after logging in. Make sure to call `customer.authorize()` within the loader on this route. It defaults to `/account/authorize`. */ authUrl?: string; /** Use this method to overwrite the default logged-out redirect behavior. The default handler [throws a redirect](https://remix.run/docs/en/main/utils/redirect#:~:text=!session) to `/account/login` with current path as `return_to` query param. */ diff --git a/packages/hydrogen/src/index.ts b/packages/hydrogen/src/index.ts index 434931f917..07a530bd48 100644 --- a/packages/hydrogen/src/index.ts +++ b/packages/hydrogen/src/index.ts @@ -161,4 +161,4 @@ export type { StorefrontApiResponsePartial, } from '@shopify/hydrogen-react'; -export type {HydrogenSessionData, HydrogenSession} from './hydrogen'; +export type {HydrogenSessionData, HydrogenSession} from './types'; diff --git a/packages/hydrogen/src/storefront.ts b/packages/hydrogen/src/storefront.ts index 6e26b16d33..26d066e96e 100644 --- a/packages/hydrogen/src/storefront.ts +++ b/packages/hydrogen/src/storefront.ts @@ -53,6 +53,7 @@ import { withSyncStack, type StackInfo, } from './utils/callsites'; +import type {WaitUntil} from './types'; export type I18nBase = { language: LanguageCode; @@ -168,7 +169,7 @@ type HydrogenClientProps = { /** The globally unique identifier for the Shop */ storefrontId?: string; /** The `waitUntil` function is used to keep the current request/response lifecycle alive even after a response has been sent. It should be provided by your platform. */ - waitUntil?: ExecutionContext['waitUntil']; + waitUntil?: WaitUntil; /** An object containing a country code and language code */ i18n?: TI18n; /** Whether it should print GraphQL errors automatically. Defaults to true */ diff --git a/packages/hydrogen/src/hydrogen.d.ts b/packages/hydrogen/src/types.d.ts similarity index 96% rename from packages/hydrogen/src/hydrogen.d.ts rename to packages/hydrogen/src/types.d.ts index de87038069..b40c2d41c7 100644 --- a/packages/hydrogen/src/hydrogen.d.ts +++ b/packages/hydrogen/src/types.d.ts @@ -36,6 +36,8 @@ export interface HydrogenSession< isPending?: boolean; } +export type WaitUntil = (promise: Promise) => void; + declare global { interface Window { privacyBanner: PrivacyBanner; diff --git a/packages/hydrogen/src/vite/request-events.ts b/packages/hydrogen/src/vite/request-events.ts index daa3642f1f..4545b0e363 100644 --- a/packages/hydrogen/src/vite/request-events.ts +++ b/packages/hydrogen/src/vite/request-events.ts @@ -2,6 +2,7 @@ import path from 'node:path'; import {EventEmitter} from 'node:events'; import type {IncomingMessage, ServerResponse} from 'node:http'; import {mapSourcePosition} from 'source-map-support'; +import type {WaitUntil} from '../types.js'; const IGNORED_ROUTES = new Set([ '/graphiql', @@ -29,7 +30,7 @@ export type RequestEventPayload = { startTime: number; endTime?: number; cacheStatus?: 'MISS' | 'HIT' | 'STALE' | 'PUT'; - waitUntil?: ExecutionContext['waitUntil']; + waitUntil?: WaitUntil; graphql?: string | null; stackInfo?: { file?: string; diff --git a/packages/hydrogen/tsconfig.json b/packages/hydrogen/tsconfig.json index 4314e233f3..df081458de 100644 --- a/packages/hydrogen/tsconfig.json +++ b/packages/hydrogen/tsconfig.json @@ -1,15 +1,9 @@ { "extends": "../../tsconfig.json", - "include": ["src", "./hydrogen.config.d.ts"], + "include": ["src", "dev.env.d.ts"], "compilerOptions": { "jsx": "react-jsx", - "types": [ - "@shopify/oxygen-workers-types", - "node", - "vite/client", - "jest", - "@testing-library/jest-dom" - ], + "types": ["node", "vite/client", "jest", "@testing-library/jest-dom"], "paths": { "@shopify/hydrogen": ["./src"], "~/mini-oxygen/*": ["../mini-oxygen/src/*"] diff --git a/packages/mini-oxygen/package.json b/packages/mini-oxygen/package.json index 698027d43e..f8faed865f 100644 --- a/packages/mini-oxygen/package.json +++ b/packages/mini-oxygen/package.json @@ -61,7 +61,7 @@ "ws": "^8.17.1" }, "devDependencies": { - "@shopify/oxygen-workers-types": "^4.0.0", + "@shopify/oxygen-workers-types": "^4.1.2", "@types/body-parser": "1.19.3", "@types/connect": "^3.4.35", "@types/eventsource": "^1.1.10", diff --git a/packages/remix-oxygen/package.json b/packages/remix-oxygen/package.json index 0af2d0501d..4d2e59424e 100644 --- a/packages/remix-oxygen/package.json +++ b/packages/remix-oxygen/package.json @@ -41,10 +41,10 @@ ], "devDependencies": { "@remix-run/server-runtime": "^2.9.2", - "@shopify/oxygen-workers-types": "^4.0.0" + "@shopify/oxygen-workers-types": "^4.1.2" }, "peerDependencies": { "@remix-run/server-runtime": "^2.1.0", - "@shopify/oxygen-workers-types": "^3.17.3 || ^4.0.0" + "@shopify/oxygen-workers-types": "^3.17.3 || ^4.1.2" } } diff --git a/packages/remix-oxygen/tsconfig.json b/packages/remix-oxygen/tsconfig.json index 596e2cf729..6f7497184e 100644 --- a/packages/remix-oxygen/tsconfig.json +++ b/packages/remix-oxygen/tsconfig.json @@ -1,4 +1,7 @@ { "extends": "../../tsconfig.json", - "include": ["src"] + "include": ["src"], + "compilerOptions": { + "types": ["@shopify/oxygen-workers-types", "node"] + } } diff --git a/templates/skeleton/package.json b/templates/skeleton/package.json index 7b8fa32bd9..4c3460684f 100644 --- a/templates/skeleton/package.json +++ b/templates/skeleton/package.json @@ -32,7 +32,7 @@ "@remix-run/eslint-config": "^2.9.2", "@shopify/hydrogen-codegen": "^0.3.1", "@shopify/mini-oxygen": "^3.0.3", - "@shopify/oxygen-workers-types": "^4.0.0", + "@shopify/oxygen-workers-types": "^4.1.2", "@shopify/prettier-config": "^1.1.2", "@total-typescript/ts-reset": "^0.4.2", "@types/eslint": "^8.4.10", diff --git a/tsconfig.json b/tsconfig.json index fd0c387f1a..99d440b728 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,7 +5,7 @@ "lib": ["DOM", "DOM.Iterable", "ESNext"], "target": "ESNext", "module": "ESNext", - "types": ["@shopify/oxygen-workers-types", "node"], + "types": ["node"], "moduleResolution": "Node", "allowSyntheticDefaultImports": true, "strict": true,