diff --git a/app/modules/stripe/stripe.server.ts b/app/modules/stripe/stripe.server.ts index 1ef32a9c..24d4c658 100644 --- a/app/modules/stripe/stripe.server.ts +++ b/app/modules/stripe/stripe.server.ts @@ -6,6 +6,6 @@ if (!process.env.STRIPE_SECRET_KEY) { } export const stripe = new Stripe(process.env.STRIPE_SECRET_KEY, { - apiVersion: '2023-10-16', + apiVersion: '2024-04-10', typescript: true, }) diff --git a/package-lock.json b/package-lock.json index b4f0858f..67a4f3a8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "dependencies": { "@conform-to/react": "1.0.1", "@conform-to/zod": "1.0.1", - "@epic-web/client-hints": "^1.3.1", + "@epic-web/client-hints": "^1.3.2", "@prisma/client": "5.4.2", "@radix-ui/react-dropdown-menu": "^2.0.6", "@radix-ui/react-select": "^2.0.0", @@ -44,7 +44,7 @@ "remix-i18next": "^6.1.0", "remix-utils": "7.0.0-pre.4", "sonner": "^1.4.41", - "stripe": "^14.25.0", + "stripe": "^15.5.0", "tailwind-merge": "^2.3.0", "tailwindcss-animate": "^1.0.7", "tsx": "^3.14.0", @@ -60,20 +60,20 @@ "@types/morgan": "^1.9.9", "@types/react": "^18.3.1", "@types/react-dom": "^18.3.0", - "@vitest/coverage-v8": "^1.5.3", + "@vitest/coverage-v8": "^1.6.0", "autoprefixer": "^10.4.19", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", "postcss": "^8.4.38", "prettier": "^3.2.5", "prettier-plugin-tailwindcss": "^0.5.14", - "remix-development-tools": "^4.1.4", + "remix-development-tools": "^4.1.6", "remix-flat-routes": "^0.5.12", "tailwindcss": "^3.4.3", "typescript": "^5.4.5", "vite": "^5.2.11", "vite-tsconfig-paths": "^4.3.2", - "vitest": "^1.5.3" + "vitest": "^1.6.0" }, "engines": { "node": ">=18.0.0" @@ -1466,9 +1466,9 @@ } }, "node_modules/@floating-ui/dom": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.4.tgz", - "integrity": "sha512-0G8R+zOvQsAG1pg2Q99P21jiqxqGBW1iRe/iXHsBRBxnpXKFI8QwbB4x5KmYLggNO5m34IQgOIu9SCRfR/WWiQ==", + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.5.tgz", + "integrity": "sha512-Nsdud2X65Dz+1RHjAIP0t8z5e2ff/IRbei6BqFrl1urT8sDVzM1HMQ+R0XcU5ceRfyO3I6ayeqIfh+6Wb8LGTw==", "dependencies": { "@floating-ui/core": "^1.0.0", "@floating-ui/utils": "^0.2.0" @@ -4239,9 +4239,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.12.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.8.tgz", - "integrity": "sha512-NU0rJLJnshZWdE/097cdCBbyW1h4hEg0xpovcoAQYHl8dnEyp/NAOiE45pvc+Bd1Dt+2r94v2eGFpQJ4R7g+2w==", + "version": "20.12.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.10.tgz", + "integrity": "sha512-Eem5pH9pmWBHoGAT8Dr5fdc5rYA+4NAovdM4EktRPVAAiJhmWWfQrA0cFhAbOsQdSfIHjAud6YdkbL69+zSKjw==", "dependencies": { "undici-types": "~5.26.4" } @@ -5470,15 +5470,6 @@ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, - "node_modules/builtins": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", - "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, "node_modules/bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", @@ -5588,9 +5579,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001615", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001615.tgz", - "integrity": "sha512-1IpazM5G3r38meiae0bHRnPhz+CBQ3ZLqbQMtrg+AsTPKAXgW38JNsXkyZ+v8waCsDmPq87lmfun5Q2AGysNEQ==", + "version": "1.0.30001616", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001616.tgz", + "integrity": "sha512-RHVYKov7IcdNjVHJFNY/78RdG4oGVjbayxv8u5IO74Wv7Hlq4PnJE6mo/OjFijjVFNy5ijnCt6H3IIo4t+wfEw==", "dev": true, "funding": [ { @@ -5880,9 +5871,10 @@ } }, "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "dev": true, "engines": { "node": ">=0.8" } @@ -6592,6 +6584,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/defaults/node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "engines": { + "node": ">=0.8" + } + }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -6915,9 +6915,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.756", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.756.tgz", - "integrity": "sha512-RJKZ9+vEBMeiPAvKNWyZjuYyUqMndcP1f335oHqn3BEQbs2NFtVrnK5+6Xg5wSM9TknNNpWghGDUCKGYF+xWXw==", + "version": "1.4.757", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.757.tgz", + "integrity": "sha512-jftDaCknYSSt/+KKeXzH3LX5E2CvRLm75P3Hj+J/dv3CL0qUYcOt13d5FN1NiL5IJbbhzHrb3BomeG2tkSlZmw==", "dev": true }, "node_modules/emoji-regex": { @@ -8765,9 +8765,9 @@ } }, "node_modules/get-tsconfig": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.3.tgz", - "integrity": "sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==", + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.4.tgz", + "integrity": "sha512-ofbkKj+0pjXjhejr007J/fLf+sW+8H7K5GCm+msC8q3IpvgjobpyPqSRFemNyIMxklC0zeJpi7VDFna19FacvQ==", "dependencies": { "resolve-pkg-maps": "^1.0.0" }, @@ -14328,9 +14328,9 @@ } }, "node_modules/remix-development-tools": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/remix-development-tools/-/remix-development-tools-4.1.4.tgz", - "integrity": "sha512-m7whc0iwskF6lg+NggzSJtryxw3gwlvIHOBLXXcrqi0JpAqgdc/26nPH2mKjIvUgGdK6Hl/mSUfFI6wOuIq+yw==", + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/remix-development-tools/-/remix-development-tools-4.1.6.tgz", + "integrity": "sha512-k2RkkQUVovEKXBxm51ad/MZqnxCaAt3qHYJnLYfTps/S7e/iz71/I0Z/HVqq/7UE446LkuQektk5k7929LLmoA==", "dev": true, "dependencies": { "@radix-ui/react-accordion": "^1.1.2", @@ -14512,15 +14512,6 @@ } } }, - "node_modules/remix-development-tools/node_modules/clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, "node_modules/remix-development-tools/node_modules/tailwind-merge": { "version": "1.14.0", "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-1.14.0.tgz", @@ -15586,9 +15577,9 @@ "dev": true }, "node_modules/stripe": { - "version": "14.25.0", - "resolved": "https://registry.npmjs.org/stripe/-/stripe-14.25.0.tgz", - "integrity": "sha512-wQS3GNMofCXwH8TSje8E1SE8zr6ODiGtHQgPtO95p9Mb4FhKC9jvXR2NUTpZ9ZINlckJcFidCmaTFV4P6vsb9g==", + "version": "15.5.0", + "resolved": "https://registry.npmjs.org/stripe/-/stripe-15.5.0.tgz", + "integrity": "sha512-c04ToET4ZUzoeSh2rWarXCPNa2+6YzkwNAcWaT4axYRlN/u1XMkz9+inouNsXWjeT6ttBrp1twz10x/sCbWLpQ==", "dependencies": { "@types/node": ">=8.1.0", "qs": "^6.11.0" @@ -17306,13 +17297,10 @@ } }, "node_modules/validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", + "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } diff --git a/package.json b/package.json index a605d549..4503aa3b 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "dependencies": { "@conform-to/react": "1.0.1", "@conform-to/zod": "1.0.1", - "@epic-web/client-hints": "^1.3.1", + "@epic-web/client-hints": "^1.3.2", "@prisma/client": "5.4.2", "@radix-ui/react-dropdown-menu": "^2.0.6", "@radix-ui/react-select": "^2.0.0", @@ -59,7 +59,7 @@ "remix-i18next": "^6.1.0", "remix-utils": "7.0.0-pre.4", "sonner": "^1.4.41", - "stripe": "^14.25.0", + "stripe": "^15.5.0", "tailwind-merge": "^2.3.0", "tailwindcss-animate": "^1.0.7", "tsx": "^3.14.0", @@ -75,20 +75,20 @@ "@types/morgan": "^1.9.9", "@types/react": "^18.3.1", "@types/react-dom": "^18.3.0", - "@vitest/coverage-v8": "^1.5.3", + "@vitest/coverage-v8": "^1.6.0", "autoprefixer": "^10.4.19", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", "postcss": "^8.4.38", "prettier": "^3.2.5", "prettier-plugin-tailwindcss": "^0.5.14", - "remix-development-tools": "^4.1.4", + "remix-development-tools": "^4.1.6", "remix-flat-routes": "^0.5.12", "tailwindcss": "^3.4.3", "typescript": "^5.4.5", "vite": "^5.2.11", "vite-tsconfig-paths": "^4.3.2", - "vitest": "^1.5.3" + "vitest": "^1.6.0" }, "engines": { "node": ">=18.0.0" diff --git a/prisma/seed.ts b/prisma/seed.ts index 0be832df..0eb43545 100644 --- a/prisma/seed.ts +++ b/prisma/seed.ts @@ -140,7 +140,6 @@ async function seed() { }, invoice_history: { enabled: true }, payment_method_update: { enabled: true }, - subscription_pause: { enabled: false }, subscription_cancel: { enabled: true }, subscription_update: { enabled: true,