diff --git a/.circleci/config.yml b/.circleci/config.yml index 87eaebf9b..9c9f1e70f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -88,7 +88,7 @@ jobs: name: Install Dependencies command: npm i - - run: npm run build:production:imex + - run: NODE_OPTIONS=--max-old-space-size=8192 npm run build:production:imex - aws-cli/setup: aws_access_key_id: AWS_ACCESS_KEY_ID @@ -151,7 +151,7 @@ jobs: rome-app-build: docker: - image: cimg/node:22.13.1 - + resource_class: large working_directory: ~/repo/client steps: @@ -161,7 +161,7 @@ jobs: name: Install Dependencies command: npm i - - run: npm run build:production:rome + - run: NODE_OPTIONS=--max-old-space-size=8192 npm run build:production:rome - aws-cli/setup: aws_access_key_id: AWS_ACCESS_KEY_ID @@ -209,7 +209,7 @@ jobs: test-rome-app-build: docker: - image: cimg/node:22.13.1 - + resource_class: large working_directory: ~/repo/client steps: @@ -219,7 +219,7 @@ jobs: name: Install Dependencies command: npm i - - run: npm run build:test:rome + - run: NODE_OPTIONS=--max-old-space-size=8192 npm run build:test:rome - aws-cli/setup: aws_access_key_id: AWS_ACCESS_KEY_ID @@ -277,7 +277,7 @@ jobs: name: Install Dependencies command: npm i - - run: npm run build:test:imex + - run: NODE_OPTIONS=--max-old-space-size=8192 npm run build:test:imex - aws-s3/sync: from: build @@ -298,7 +298,7 @@ jobs: name: Install Dependencies command: npm i - - run: npm run build:test:imex + - run: NODE_OPTIONS=--max-old-space-size=8192 npm run build:test:imex - aws-cli/setup: aws_access_key_id: AWS_ACCESS_KEY_ID diff --git a/client/package-lock.json b/client/package-lock.json index a544dc7f2..4ed331a94 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -15,14 +15,15 @@ "@fingerprintjs/fingerprintjs": "^4.5.1", "@jsreport/browser-client": "^3.1.0", "@reduxjs/toolkit": "^2.5.0", - "@sentry/cli": "^2.40.0", - "@sentry/react": "^7.114.0", + "@sentry/cli": "^2.42.2", + "@sentry/react": "^9.3.0", + "@sentry/vite-plugin": "^3.2.1", "@splitsoftware/splitio-react": "^1.13.0", "@tanem/react-nprogress": "^5.0.53", "@vitejs/plugin-react": "^4.3.4", "antd": "^5.23.1", "apollo-link-logger": "^2.0.1", - "apollo-link-sentry": "^3.3.0", + "apollo-link-sentry": "^4.1.0", "autosize": "^6.0.1", "axios": "^1.7.9", "classnames": "^2.5.1", @@ -91,7 +92,7 @@ "@emotion/babel-plugin": "^11.13.5", "@emotion/react": "^11.14.0", "@eslint/js": "^9.18.0", - "@sentry/webpack-plugin": "^2.22.4", + "@sentry/webpack-plugin": "^3.2.1", "@testing-library/cypress": "^10.0.2", "browserslist": "^4.24.4", "browserslist-to-esbuild": "^2.1.1", @@ -5242,88 +5243,90 @@ "dev": true, "license": "MIT" }, - "node_modules/@sentry-internal/feedback": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-7.120.3.tgz", - "integrity": "sha512-ewJJIQ0mbsOX6jfiVFvqMjokxNtgP3dNwUv+4nenN+iJJPQsM6a0ocro3iscxwVdbkjw5hY3BUV2ICI5Q0UWoA==", + "node_modules/@sentry-internal/browser-utils": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/browser-utils/-/browser-utils-9.3.0.tgz", + "integrity": "sha512-G3z4HCUyb5nJe03EPUhWjnaHqMDt4mOTFJDNha3DGoB51lMYojpQI1Qo1u6bY4qkWVSO1c+HqOU0RVsXoAchtQ==", "license": "MIT", "dependencies": { - "@sentry/core": "7.120.3", - "@sentry/types": "7.120.3", - "@sentry/utils": "7.120.3" + "@sentry/core": "9.3.0" }, "engines": { - "node": ">=12" + "node": ">=18" + } + }, + "node_modules/@sentry-internal/feedback": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-9.3.0.tgz", + "integrity": "sha512-LQmIbQaATlN5QEwCD2Xt+7VKfwfR5W3dbn0jdF1x4hQFE/srdnOj60xMz/mj3tP5BxV552xJniGsyZ8lXHDb2A==", + "license": "MIT", + "dependencies": { + "@sentry/core": "9.3.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@sentry-internal/replay": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay/-/replay-9.3.0.tgz", + "integrity": "sha512-ZkH+Gahn89JygpuiFn26ZgAqJXHtnr+HjfQ2ONOFoWQHNH6X5wk75UTma55aYk1d8VcBPFoU6WjFhZoQ55SV1g==", + "license": "MIT", + "dependencies": { + "@sentry-internal/browser-utils": "9.3.0", + "@sentry/core": "9.3.0" + }, + "engines": { + "node": ">=18" } }, "node_modules/@sentry-internal/replay-canvas": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-7.120.3.tgz", - "integrity": "sha512-s5xy+bVL1eDZchM6gmaOiXvTqpAsUfO7122DxVdEDMtwVq3e22bS2aiGa8CUgOiJkulZ+09q73nufM77kOmT/A==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-9.3.0.tgz", + "integrity": "sha512-MhDMJeRGa55a0D541+OzTFMWwbabthhDGbAL90/NpappfyeBbAiktmCNl0BFTZuRbCGrC2m1LLCqHegCVKW4fQ==", "license": "MIT", "dependencies": { - "@sentry/core": "7.120.3", - "@sentry/replay": "7.120.3", - "@sentry/types": "7.120.3", - "@sentry/utils": "7.120.3" + "@sentry-internal/replay": "9.3.0", + "@sentry/core": "9.3.0" }, "engines": { - "node": ">=12" - } - }, - "node_modules/@sentry-internal/tracing": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.120.3.tgz", - "integrity": "sha512-Ausx+Jw1pAMbIBHStoQ6ZqDZR60PsCByvHdw/jdH9AqPrNE9xlBSf9EwcycvmrzwyKspSLaB52grlje2cRIUMg==", - "license": "MIT", - "dependencies": { - "@sentry/core": "7.120.3", - "@sentry/types": "7.120.3", - "@sentry/utils": "7.120.3" - }, - "engines": { - "node": ">=8" + "node": ">=18" } }, "node_modules/@sentry/babel-plugin-component-annotate": { - "version": "2.23.0", - "resolved": "https://registry.npmjs.org/@sentry/babel-plugin-component-annotate/-/babel-plugin-component-annotate-2.23.0.tgz", - "integrity": "sha512-+uLqaCKeYmH/W2YUV1XHkFEtpHdx/aFjCQahPVsvXyqg13dfkR6jaygPL4DB5DJtUSmPFCUE3MEk9ZO5JlhJYg==", - "dev": true, + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sentry/babel-plugin-component-annotate/-/babel-plugin-component-annotate-3.2.1.tgz", + "integrity": "sha512-tUp2e+CERpRFzTftjPxt7lg4BF0R3K+wGfeJyIqrc0tbJ2y6duT8OD0ArWoOi1g8xQ73NDn1/mEeS8pC+sbjTQ==", "license": "MIT", "engines": { "node": ">= 14" } }, "node_modules/@sentry/browser": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.120.3.tgz", - "integrity": "sha512-i9vGcK9N8zZ/JQo1TCEfHHYZ2miidOvgOABRUc9zQKhYdcYQB2/LU1kqlj77Pxdxf4wOa9137d6rPrSn9iiBxg==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-9.3.0.tgz", + "integrity": "sha512-yPwWWQo/hpN63p0NGmk/Dd1Fx5CQRWNMfuV7dtfPBtg3vRjDecA9OLyK29AqK5h3Fl8FuJOyOqB87CvtXUqh5g==", "license": "MIT", "dependencies": { - "@sentry-internal/feedback": "7.120.3", - "@sentry-internal/replay-canvas": "7.120.3", - "@sentry-internal/tracing": "7.120.3", - "@sentry/core": "7.120.3", - "@sentry/integrations": "7.120.3", - "@sentry/replay": "7.120.3", - "@sentry/types": "7.120.3", - "@sentry/utils": "7.120.3" + "@sentry-internal/browser-utils": "9.3.0", + "@sentry-internal/feedback": "9.3.0", + "@sentry-internal/replay": "9.3.0", + "@sentry-internal/replay-canvas": "9.3.0", + "@sentry/core": "9.3.0" }, "engines": { - "node": ">=8" + "node": ">=18" } }, "node_modules/@sentry/bundler-plugin-core": { - "version": "2.23.0", - "resolved": "https://registry.npmjs.org/@sentry/bundler-plugin-core/-/bundler-plugin-core-2.23.0.tgz", - "integrity": "sha512-Qbw+jZFK63w+V193l0eCFKLzGba2Iu93Fx8kCRzZ3uqjky002H8U3pu4mKgcc11J+u8QTjfNZGUyXsxz0jv2mg==", - "dev": true, + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sentry/bundler-plugin-core/-/bundler-plugin-core-3.2.1.tgz", + "integrity": "sha512-1wId05LXf6LyTeNwqyhSDSWYbYtFT/NQRqq3sW7hcL4nZuAgzT82PSvxeeCgR/D2qXOj7RCYXXZtyWzzo3wtXA==", "license": "MIT", "dependencies": { "@babel/core": "^7.18.5", - "@sentry/babel-plugin-component-annotate": "2.23.0", - "@sentry/cli": "2.39.1", + "@sentry/babel-plugin-component-annotate": "3.2.1", + "@sentry/cli": "2.42.2", "dotenv": "^16.3.1", "find-up": "^5.0.0", "glob": "^9.3.2", @@ -5334,185 +5337,10 @@ "node": ">= 14" } }, - "node_modules/@sentry/bundler-plugin-core/node_modules/@sentry/cli": { - "version": "2.39.1", - "resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-2.39.1.tgz", - "integrity": "sha512-JIb3e9vh0+OmQ0KxmexMXg9oZsR/G7HMwxt5BUIKAXZ9m17Xll4ETXTRnRUBT3sf7EpNGAmlQk1xEmVN9pYZYQ==", - "dev": true, - "hasInstallScript": true, - "license": "BSD-3-Clause", - "dependencies": { - "https-proxy-agent": "^5.0.0", - "node-fetch": "^2.6.7", - "progress": "^2.0.3", - "proxy-from-env": "^1.1.0", - "which": "^2.0.2" - }, - "bin": { - "sentry-cli": "bin/sentry-cli" - }, - "engines": { - "node": ">= 10" - }, - "optionalDependencies": { - "@sentry/cli-darwin": "2.39.1", - "@sentry/cli-linux-arm": "2.39.1", - "@sentry/cli-linux-arm64": "2.39.1", - "@sentry/cli-linux-i686": "2.39.1", - "@sentry/cli-linux-x64": "2.39.1", - "@sentry/cli-win32-i686": "2.39.1", - "@sentry/cli-win32-x64": "2.39.1" - } - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/@sentry/cli-darwin": { - "version": "2.39.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-darwin/-/cli-darwin-2.39.1.tgz", - "integrity": "sha512-kiNGNSAkg46LNGatfNH5tfsmI/kCAaPA62KQuFZloZiemTNzhy9/6NJP8HZ/GxGs8GDMxic6wNrV9CkVEgFLJQ==", - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/@sentry/cli-linux-arm": { - "version": "2.39.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm/-/cli-linux-arm-2.39.1.tgz", - "integrity": "sha512-DkENbxyRxUrfLnJLXTA4s5UL/GoctU5Cm4ER1eB7XN7p9WsamFJd/yf2KpltkjEyiTuplv0yAbdjl1KX3vKmEQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "os": [ - "linux", - "freebsd" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/@sentry/cli-linux-arm64": { - "version": "2.39.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm64/-/cli-linux-arm64-2.39.1.tgz", - "integrity": "sha512-5VbVJDatolDrWOgaffsEM7znjs0cR8bHt9Bq0mStM3tBolgAeSDHE89NgHggfZR+DJ2VWOy4vgCwkObrUD6NQw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "os": [ - "linux", - "freebsd" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/@sentry/cli-linux-i686": { - "version": "2.39.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-linux-i686/-/cli-linux-i686-2.39.1.tgz", - "integrity": "sha512-pXWVoKXCRrY7N8vc9H7mETiV9ZCz+zSnX65JQCzZxgYrayQPJTc+NPRnZTdYdk5RlAupXaFicBI2GwOCRqVRkg==", - "cpu": [ - "x86", - "ia32" - ], - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "os": [ - "linux", - "freebsd" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/@sentry/cli-linux-x64": { - "version": "2.39.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-linux-x64/-/cli-linux-x64-2.39.1.tgz", - "integrity": "sha512-IwayNZy+it7FWG4M9LayyUmG1a/8kT9+/IEm67sT5+7dkMIMcpmHDqL8rWcPojOXuTKaOBBjkVdNMBTXy0mXlA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "os": [ - "linux", - "freebsd" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/@sentry/cli-win32-i686": { - "version": "2.39.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-win32-i686/-/cli-win32-i686-2.39.1.tgz", - "integrity": "sha512-NglnNoqHSmE+Dz/wHeIVRnV2bLMx7tIn3IQ8vXGO5HWA2f8zYJGktbkLq1Lg23PaQmeZLPGlja3gBQfZYSG10Q==", - "cpu": [ - "x86", - "ia32" - ], - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/@sentry/cli-win32-x64": { - "version": "2.39.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-win32-x64/-/cli-win32-x64-2.39.1.tgz", - "integrity": "sha512-xv0R2CMf/X1Fte3cMWie1NXuHmUyQPDBfCyIt6k6RPFPxAYUgcqgMPznYwVMwWEA1W43PaOkSn3d8ZylsDaETw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "BSD-3-Clause", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, - "license": "ISC" - }, - "node_modules/@sentry/bundler-plugin-core/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/@sentry/cli": { - "version": "2.41.1", - "resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-2.41.1.tgz", - "integrity": "sha512-0GVmDiTV7R1492wkVY4bGcfC0fSmRmQjuxaaPI8CIV9B2VP9pBVCUizi1mevXaaE4I3fM60LI+XYrKFEneuVog==", + "version": "2.42.2", + "resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-2.42.2.tgz", + "integrity": "sha512-spb7S/RUumCGyiSTg8DlrCX4bivCNmU/A1hcfkwuciTFGu8l5CDc2I6jJWWZw8/0enDGxuj5XujgXvU5tr4bxg==", "hasInstallScript": true, "license": "BSD-3-Clause", "dependencies": { @@ -5529,19 +5357,19 @@ "node": ">= 10" }, "optionalDependencies": { - "@sentry/cli-darwin": "2.41.1", - "@sentry/cli-linux-arm": "2.41.1", - "@sentry/cli-linux-arm64": "2.41.1", - "@sentry/cli-linux-i686": "2.41.1", - "@sentry/cli-linux-x64": "2.41.1", - "@sentry/cli-win32-i686": "2.41.1", - "@sentry/cli-win32-x64": "2.41.1" + "@sentry/cli-darwin": "2.42.2", + "@sentry/cli-linux-arm": "2.42.2", + "@sentry/cli-linux-arm64": "2.42.2", + "@sentry/cli-linux-i686": "2.42.2", + "@sentry/cli-linux-x64": "2.42.2", + "@sentry/cli-win32-i686": "2.42.2", + "@sentry/cli-win32-x64": "2.42.2" } }, "node_modules/@sentry/cli-darwin": { - "version": "2.41.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-darwin/-/cli-darwin-2.41.1.tgz", - "integrity": "sha512-7pS3pu/SuhE6jOn3wptstAg6B5nUP878O6s+2svT7b5fKNfYUi/6NPK6dAveh2Ca0rwVq40TO4YFJabWMgTpdQ==", + "version": "2.42.2", + "resolved": "https://registry.npmjs.org/@sentry/cli-darwin/-/cli-darwin-2.42.2.tgz", + "integrity": "sha512-GtJSuxER7Vrp1IpxdUyRZzcckzMnb4N5KTW7sbTwUiwqARRo+wxS+gczYrS8tdgtmXs5XYhzhs+t4d52ITHMIg==", "license": "BSD-3-Clause", "optional": true, "os": [ @@ -5552,9 +5380,9 @@ } }, "node_modules/@sentry/cli-linux-arm": { - "version": "2.41.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm/-/cli-linux-arm-2.41.1.tgz", - "integrity": "sha512-wNUvquD6qjOCczvuBGf9OiD29nuQ6yf8zzfyPJa5Bdx1QXuteKsKb6HBrMwuIR3liyuu0duzHd+H/+p1n541Hg==", + "version": "2.42.2", + "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm/-/cli-linux-arm-2.42.2.tgz", + "integrity": "sha512-7udCw+YL9lwq+9eL3WLspvnuG+k5Icg92YE7zsteTzWLwgPVzaxeZD2f8hwhsu+wmL+jNqbpCRmktPteh3i2mg==", "cpu": [ "arm" ], @@ -5569,9 +5397,9 @@ } }, "node_modules/@sentry/cli-linux-arm64": { - "version": "2.41.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm64/-/cli-linux-arm64-2.41.1.tgz", - "integrity": "sha512-EzYCEnnENBnS5kpNW+2dBcrPZn1MVfywh2joGVQZTpmgDL5YFJ59VOd+K0XuEwqgFI8BSNI14KXZ75s4DD1/Vw==", + "version": "2.42.2", + "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm64/-/cli-linux-arm64-2.42.2.tgz", + "integrity": "sha512-BOxzI7sgEU5Dhq3o4SblFXdE9zScpz6EXc5Zwr1UDZvzgXZGosUtKVc7d1LmkrHP8Q2o18HcDWtF3WvJRb5Zpw==", "cpu": [ "arm64" ], @@ -5586,9 +5414,9 @@ } }, "node_modules/@sentry/cli-linux-i686": { - "version": "2.41.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-linux-i686/-/cli-linux-i686-2.41.1.tgz", - "integrity": "sha512-urpQCWrdYnSAsZY3udttuMV88wTJzKZL10xsrp7sjD/Hd+O6qSLVLkxebIlxts70jMLLFHYrQ2bkRg5kKuX6Fg==", + "version": "2.42.2", + "resolved": "https://registry.npmjs.org/@sentry/cli-linux-i686/-/cli-linux-i686-2.42.2.tgz", + "integrity": "sha512-Sw/dQp5ZPvKnq3/y7wIJyxTUJYPGoTX/YeMbDs8BzDlu9to2LWV3K3r7hE7W1Lpbaw4tSquUHiQjP5QHCOS7aQ==", "cpu": [ "x86", "ia32" @@ -5604,9 +5432,9 @@ } }, "node_modules/@sentry/cli-linux-x64": { - "version": "2.41.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-linux-x64/-/cli-linux-x64-2.41.1.tgz", - "integrity": "sha512-ZqpYwHXAaK4MMEFlyaLYr6mJTmpy9qP6n30jGhLTW7kHKS3s6GPLCSlNmIfeClrInEt0963fM633ZRnXa04VPw==", + "version": "2.42.2", + "resolved": "https://registry.npmjs.org/@sentry/cli-linux-x64/-/cli-linux-x64-2.42.2.tgz", + "integrity": "sha512-mU4zUspAal6TIwlNLBV5oq6yYqiENnCWSxtSQVzWs0Jyq97wtqGNG9U+QrnwjJZ+ta/hvye9fvL2X25D/RxHQw==", "cpu": [ "x64" ], @@ -5621,9 +5449,9 @@ } }, "node_modules/@sentry/cli-win32-i686": { - "version": "2.41.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-win32-i686/-/cli-win32-i686-2.41.1.tgz", - "integrity": "sha512-AuRimCeVsx99DIOr9cwdYBHk39tlmAuPDdy2r16iNzY0InXs4xOys4gGzM7N4vlFQvFkzuc778Su0HkfasgprA==", + "version": "2.42.2", + "resolved": "https://registry.npmjs.org/@sentry/cli-win32-i686/-/cli-win32-i686-2.42.2.tgz", + "integrity": "sha512-iHvFHPGqgJMNqXJoQpqttfsv2GI3cGodeTq4aoVLU/BT3+hXzbV0x1VpvvEhncJkDgDicJpFLM8sEPHb3b8abw==", "cpu": [ "x86", "ia32" @@ -5638,9 +5466,9 @@ } }, "node_modules/@sentry/cli-win32-x64": { - "version": "2.41.1", - "resolved": "https://registry.npmjs.org/@sentry/cli-win32-x64/-/cli-win32-x64-2.41.1.tgz", - "integrity": "sha512-6JcPvXGye61+wPp0xdzfc2YLE/Dcud8JdaK8VxLM3b/8+Em7E+UyliDu3uF8+YGUqizY5JYTd3fs17DC8DZhLw==", + "version": "2.42.2", + "resolved": "https://registry.npmjs.org/@sentry/cli-win32-x64/-/cli-win32-x64-2.42.2.tgz", + "integrity": "sha512-vPPGHjYoaGmfrU7xhfFxG7qlTBacroz5NdT+0FmDn6692D8IvpNXl1K+eV3Kag44ipJBBeR8g1HRJyx/F/9ACw==", "cpu": [ "x64" ], @@ -5675,96 +5503,52 @@ } }, "node_modules/@sentry/core": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.120.3.tgz", - "integrity": "sha512-vyy11fCGpkGK3qI5DSXOjgIboBZTriw0YDx/0KyX5CjIjDDNgp5AGgpgFkfZyiYiaU2Ww3iFuKo4wHmBusz1uA==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-9.3.0.tgz", + "integrity": "sha512-SxQ4z7wTkfguvYb2ctNEMU9kVAbhl9ymfjhLnrvtygTwL5soLqAKdco/lX/4P9K9Osgb2Dl6urQWRl+AhzKVbQ==", "license": "MIT", - "dependencies": { - "@sentry/types": "7.120.3", - "@sentry/utils": "7.120.3" - }, "engines": { - "node": ">=8" - } - }, - "node_modules/@sentry/integrations": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry/integrations/-/integrations-7.120.3.tgz", - "integrity": "sha512-6i/lYp0BubHPDTg91/uxHvNui427df9r17SsIEXa2eKDwQ9gW2qRx5IWgvnxs2GV/GfSbwcx4swUB3RfEWrXrQ==", - "license": "MIT", - "dependencies": { - "@sentry/core": "7.120.3", - "@sentry/types": "7.120.3", - "@sentry/utils": "7.120.3", - "localforage": "^1.8.1" - }, - "engines": { - "node": ">=8" + "node": ">=18" } }, "node_modules/@sentry/react": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-7.120.3.tgz", - "integrity": "sha512-BcpoK9dwblfb20xwjn/1DRtplvPEXFc3XCRkYSnTfnfZNU8yPOcVX4X2X0I8R+/gsg+MWiFOdEtXJ3FqpJiJ4Q==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@sentry/react/-/react-9.3.0.tgz", + "integrity": "sha512-/ruDHBHLDXmZoEHNCSjdekZr9+0pbOC5+BY1oABGoDXRISGyoenOBtAsX8TsaC9oJYhr16yKDFlYxzzQRhxDyg==", "license": "MIT", "dependencies": { - "@sentry/browser": "7.120.3", - "@sentry/core": "7.120.3", - "@sentry/types": "7.120.3", - "@sentry/utils": "7.120.3", + "@sentry/browser": "9.3.0", + "@sentry/core": "9.3.0", "hoist-non-react-statics": "^3.3.2" }, "engines": { - "node": ">=8" + "node": ">=18" }, "peerDependencies": { - "react": "15.x || 16.x || 17.x || 18.x" + "react": "^16.14.0 || 17.x || 18.x || 19.x" } }, - "node_modules/@sentry/replay": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.120.3.tgz", - "integrity": "sha512-CjVq1fP6bpDiX8VQxudD5MPWwatfXk8EJ2jQhJTcWu/4bCSOQmHxnnmBM+GVn5acKUBCodWHBN+IUZgnJheZSg==", + "node_modules/@sentry/vite-plugin": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sentry/vite-plugin/-/vite-plugin-3.2.1.tgz", + "integrity": "sha512-A/R9PAWPkWR6iqbJJ4C9BygcET0HAq5irEKy7xPmzB0mjW5XbDwbhQtHHnb6C1q/JrfzufB3TZWrG2XfrBRazg==", "license": "MIT", "dependencies": { - "@sentry-internal/tracing": "7.120.3", - "@sentry/core": "7.120.3", - "@sentry/types": "7.120.3", - "@sentry/utils": "7.120.3" + "@sentry/bundler-plugin-core": "3.2.1", + "unplugin": "1.0.1" }, "engines": { - "node": ">=12" - } - }, - "node_modules/@sentry/types": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.120.3.tgz", - "integrity": "sha512-C4z+3kGWNFJ303FC+FxAd4KkHvxpNFYAFN8iMIgBwJdpIl25KZ8Q/VdGn0MLLUEHNLvjob0+wvwlcRBBNLXOow==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@sentry/utils": { - "version": "7.120.3", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.120.3.tgz", - "integrity": "sha512-UDAOQJtJDxZHQ5Nm1olycBIsz2wdGX8SdzyGVHmD8EOQYAeDZQyIlQYohDe9nazdIOQLZCIc3fU0G9gqVLkaGQ==", - "license": "MIT", - "dependencies": { - "@sentry/types": "7.120.3" - }, - "engines": { - "node": ">=8" + "node": ">= 14" } }, "node_modules/@sentry/webpack-plugin": { - "version": "2.23.0", - "resolved": "https://registry.npmjs.org/@sentry/webpack-plugin/-/webpack-plugin-2.23.0.tgz", - "integrity": "sha512-WxYUbTt/tNfeDm9apeUDXXKs6bEuuVrgYJeCDPDzjGQdmLTsZnbLxcX/b+zr4pceyzZNFEJujk60rRWCjFZY3w==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sentry/webpack-plugin/-/webpack-plugin-3.2.1.tgz", + "integrity": "sha512-wP/JDljhB9pCFc62rSwWbIglF2Os8FLV68pQuyJnmImM9cjGjlK6UO+qKa2pOLYsmAcnn+t3Bhu77bbzPIStCg==", "dev": true, "license": "MIT", "dependencies": { - "@sentry/bundler-plugin-core": "2.23.0", + "@sentry/bundler-plugin-core": "3.2.1", "unplugin": "1.0.1", "uuid": "^9.0.0" }, @@ -6648,7 +6432,6 @@ "version": "8.14.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", - "dev": true, "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -6827,7 +6610,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, "license": "ISC", "dependencies": { "normalize-path": "^3.0.0", @@ -6841,7 +6623,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, "license": "MIT", "engines": { "node": ">=8.6" @@ -6864,9 +6645,9 @@ } }, "node_modules/apollo-link-sentry": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/apollo-link-sentry/-/apollo-link-sentry-3.3.0.tgz", - "integrity": "sha512-wLffWmo5sRw3rHN1Ck6azM0oxObvtaBBf3AC8cLX4SxhyjmkRIagGDji6CFkyAhxupPz0b9/H1u4Ocx+63lNug==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/apollo-link-sentry/-/apollo-link-sentry-4.1.0.tgz", + "integrity": "sha512-wHiJXZ9OzmRbV3famykszz0E0SZyCBpa3Rt0EVrdOKDN9qQQaE63xQB2lFa3mUkZb95GMc+6ugPt8bVIkwsRPQ==", "license": "MIT", "dependencies": { "deepmerge": "^4.2.2", @@ -6876,7 +6657,7 @@ }, "peerDependencies": { "@apollo/client": "^3.2.3", - "@sentry/browser": "^7.41.0", + "@sentry/core": "^8.33.0", "graphql": "15 - 16" } }, @@ -7440,7 +7221,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -7503,7 +7283,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "devOptional": true, "license": "MIT", "dependencies": { "fill-range": "^7.1.1" @@ -10678,7 +10457,6 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "devOptional": true, "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" @@ -10710,7 +10488,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, "license": "MIT", "dependencies": { "locate-path": "^6.0.0", @@ -10867,7 +10644,6 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, "hasInstallScript": true, "license": "MIT", "optional": true, @@ -11038,7 +10814,6 @@ "version": "9.3.5", "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", - "dev": true, "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", @@ -11070,7 +10845,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" @@ -11080,7 +10854,6 @@ "version": "8.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", - "dev": true, "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" @@ -11570,12 +11343,6 @@ "node": ">= 4" } }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", - "license": "MIT" - }, "node_modules/immer": { "version": "10.1.1", "resolved": "https://registry.npmjs.org/immer/-/immer-10.1.1.tgz", @@ -11842,7 +11609,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, "license": "MIT", "dependencies": { "binary-extensions": "^2.0.0" @@ -11985,7 +11751,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -12039,7 +11804,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "devOptional": true, "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" @@ -12116,7 +11880,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "devOptional": true, "license": "MIT", "engines": { "node": ">=0.12.0" @@ -12728,15 +12491,6 @@ "integrity": "sha512-bW/Yp/9dod6fmyR+XqSUL1N5JE7QRxQ3KrBIbYS1FTv32e5i3SEtQVX+71CYNv8maWNSOgnlCoNp9X78f/cKiA==", "license": "MIT" }, - "node_modules/lie": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", - "integrity": "sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==", - "license": "MIT", - "dependencies": { - "immediate": "~3.0.5" - } - }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -12788,20 +12542,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/localforage": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.10.0.tgz", - "integrity": "sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==", - "license": "Apache-2.0", - "dependencies": { - "lie": "3.1.1" - } - }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, "license": "MIT", "dependencies": { "p-locate": "^5.0.0" @@ -13091,7 +12835,6 @@ "version": "0.30.8", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.8.tgz", "integrity": "sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==", - "dev": true, "license": "MIT", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -13910,7 +13653,6 @@ "version": "4.2.8", "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", - "dev": true, "license": "ISC", "engines": { "node": ">=8" @@ -14091,7 +13833,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -14399,7 +14140,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" @@ -14415,7 +14155,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, "license": "MIT", "dependencies": { "p-limit": "^3.0.2" @@ -14562,7 +14301,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -14597,7 +14335,6 @@ "version": "1.11.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - "dev": true, "license": "BlueOak-1.0.0", "dependencies": { "lru-cache": "^10.2.0", @@ -14614,14 +14351,12 @@ "version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true, "license": "ISC" }, "node_modules/path-scurry/node_modules/minipass": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", - "dev": true, "license": "ISC", "engines": { "node": ">=16 || 14 >=14.17" @@ -18121,7 +17856,6 @@ "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==", - "devOptional": true, "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -18657,7 +18391,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.0.1.tgz", "integrity": "sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==", - "dev": true, "license": "MIT", "dependencies": { "acorn": "^8.8.1", @@ -18670,7 +18403,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, "license": "MIT", "dependencies": { "anymatch": "~3.1.2", @@ -18695,7 +18427,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, "license": "ISC", "dependencies": { "is-glob": "^4.0.1" @@ -18708,7 +18439,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, "license": "MIT", "engines": { "node": ">=8.6" @@ -18721,7 +18451,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, "license": "MIT", "dependencies": { "picomatch": "^2.2.1" @@ -19265,7 +18994,6 @@ "version": "3.2.3", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, "license": "MIT", "engines": { "node": ">=10.13.0" @@ -19275,7 +19003,6 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz", "integrity": "sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==", - "dev": true, "license": "MIT" }, "node_modules/websocket-driver": { @@ -19889,7 +19616,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=10" diff --git a/client/package.json b/client/package.json index fff01743b..e3576dfb1 100644 --- a/client/package.json +++ b/client/package.json @@ -14,14 +14,15 @@ "@fingerprintjs/fingerprintjs": "^4.5.1", "@jsreport/browser-client": "^3.1.0", "@reduxjs/toolkit": "^2.5.0", - "@sentry/cli": "^2.40.0", - "@sentry/react": "^7.114.0", + "@sentry/cli": "^2.42.2", + "@sentry/react": "^9.3.0", + "@sentry/vite-plugin": "^3.2.1", "@splitsoftware/splitio-react": "^1.13.0", "@tanem/react-nprogress": "^5.0.53", "@vitejs/plugin-react": "^4.3.4", "antd": "^5.23.1", "apollo-link-logger": "^2.0.1", - "apollo-link-sentry": "^3.3.0", + "apollo-link-sentry": "^4.1.0", "autosize": "^6.0.1", "axios": "^1.7.9", "classnames": "^2.5.1", @@ -98,8 +99,7 @@ "test": "cypress open", "eject": "react-scripts eject", "madge": "madge --image ./madge-graph.svg --extensions js,jsx,ts,tsx --circular .", - "eulaize": "node src/utils/eulaize.js", - "sentry:sourcemaps:imex": "sentry-cli sourcemaps inject --org imex --project imexonline ./build && sentry-cli sourcemaps upload --org imex --project imexonline ./build" + "eulaize": "node src/utils/eulaize.js" }, "browserslist": { "production": [ @@ -127,7 +127,7 @@ "@emotion/babel-plugin": "^11.13.5", "@emotion/react": "^11.14.0", "@eslint/js": "^9.18.0", - "@sentry/webpack-plugin": "^2.22.4", + "@sentry/webpack-plugin": "^3.2.1", "@testing-library/cypress": "^10.0.2", "browserslist": "^4.24.4", "browserslist-to-esbuild": "^2.1.1", diff --git a/client/src/graphql/apollo-error-handling.js b/client/src/graphql/apollo-error-handling.js index 5e6e88691..3fdaa929c 100644 --- a/client/src/graphql/apollo-error-handling.js +++ b/client/src/graphql/apollo-error-handling.js @@ -1,12 +1,10 @@ import { onError } from "@apollo/client/link/error"; //https://stackoverflow.com/questions/57163454/refreshing-a-token-with-apollo-client-firebase-auth -import * as Sentry from "@sentry/react"; const errorLink = onError(({ graphQLErrors, networkError, operation, forward }) => { if (graphQLErrors) { graphQLErrors.forEach(({ message, locations, path }) => { console.log(`[GraphQL error]: Message: ${message}, Location: ${locations}, Path: ${path}`); - Sentry.captureException({ message, locations, path }); }); } if (networkError) console.log(`[Network error]: ${JSON.stringify(networkError)}`); diff --git a/client/src/index.jsx b/client/src/index.jsx index 2e47b02d1..327d57e84 100644 --- a/client/src/index.jsx +++ b/client/src/index.jsx @@ -1,10 +1,12 @@ +import "./utils/sentry"; //Must be first. import * as Sentry from "@sentry/react"; +import { ConfigProvider } from "antd"; import Dinero from "dinero.js"; -import React from "react"; import ReactDOM from "react-dom/client"; import { Provider } from "react-redux"; import { createBrowserRouter, createRoutesFromElements, Route, RouterProvider } from "react-router-dom"; import { PersistGate } from "redux-persist/integration/react"; +import { registerSW } from "virtual:pwa-register"; import AppContainer from "./App/App.container"; import LoadingSpinner from "./components/loading-spinner/loading-spinner.component"; import "./index.css"; @@ -12,56 +14,18 @@ import { persistor, store } from "./redux/store"; import reportWebVitals from "./reportWebVitals"; import "./translations/i18n"; import "./utils/CleanAxios"; -import { ConfigProvider } from "antd"; -import InstanceRenderManager from "./utils/instanceRenderMgr"; -import { registerSW } from "virtual:pwa-register"; window.global ||= window; registerSW({ immediate: true }); -//import { BrowserTracing } from "@sentry/tracing"; -//import "antd/dist/antd.css"; -// import "antd/dist/antd.less"; // Dinero.defaultCurrency = "CAD"; // Dinero.globalLocale = "en-CA"; Dinero.globalRoundingMode = "HALF_EVEN"; -if (import.meta.env.PROD) { - Sentry.init({ - dsn: InstanceRenderManager({ - imex: "https://fd7e89369b6b4bdc9c6c4c9f22fa4ee4@o492140.ingest.sentry.io/5651027", - rome: "https://a6acc91c073e414196014b8484627a61@o492140.ingest.sentry.io/4504561071161344" - }), +const sentryCreateBrowserRouter = Sentry.wrapCreateBrowserRouterV6(createBrowserRouter); - ignoreErrors: [ - "ResizeObserver loop", - "ResizeObserver loop limit exceeded", - "Module specifier, 'fs' does not start", - "Module specifier, 'zlib' does not start with" - ], - integrations: [ - Sentry.replayIntegration({ - maskAllText: false, - blockAllMedia: true - }), - Sentry.browserTracingIntegration() - ], - tracePropagationTargets: [ - "api.imex.online", - "api.test.imex.online", - "db.imex.online", - "api.romeonline.io", - "api.test.romeonline.io", - "db.romeonline.io" - ], - tracesSampleRate: 1.0, - replaysOnErrorSampleRate: 1.0, - environment: import.meta.env.MODE - }); -} - -const router = createBrowserRouter(createRoutesFromElements(} />)); +const router = sentryCreateBrowserRouter(createRoutesFromElements(} />)); if (import.meta.env.DEV) { let styles = diff --git a/client/src/pages/manage/manage.page.component.jsx b/client/src/pages/manage/manage.page.component.jsx index 5dbf95dc5..bcf0ca09b 100644 --- a/client/src/pages/manage/manage.page.component.jsx +++ b/client/src/pages/manage/manage.page.component.jsx @@ -142,7 +142,7 @@ export function Manage({ conflict, bodyshop, alerts, setAlerts }) { const fetchedAlerts = await response.json(); setAlerts(fetchedAlerts); } catch (error) { - console.error("Error fetching alerts:", error); + console.warn("Error fetching alerts:", error.message); } }; diff --git a/client/src/redux/user/user.sagas.js b/client/src/redux/user/user.sagas.js index 5e5259874..a8c0ffd0b 100644 --- a/client/src/redux/user/user.sagas.js +++ b/client/src/redux/user/user.sagas.js @@ -351,7 +351,7 @@ export function* SetAuthLevelFromShopDetails({ payload }) { ? window.$crisp.push(["set", "session:segments", [["allAccess"]]]) : window.$crisp.push(["set", "session:segments", [["basic"]]]); } catch (error) { - console.error("Couldnt find $crisp."); + console.warn("Couldnt find $crisp.", error.message); } } catch (error) { yield put(signInFailure(error.message)); diff --git a/client/src/utils/GraphQLClient.js b/client/src/utils/GraphQLClient.js index 689083139..1e316f894 100644 --- a/client/src/utils/GraphQLClient.js +++ b/client/src/utils/GraphQLClient.js @@ -7,9 +7,9 @@ import { getMainDefinition } from "@apollo/client/utilities"; //import { split } from "apollo-link"; import apolloLogger from "apollo-link-logger"; //import axios from "axios"; +import { SentryLink } from "apollo-link-sentry"; import { auth } from "../firebase/firebase.utils"; import errorLink from "../graphql/apollo-error-handling"; -import { SentryLink } from "apollo-link-sentry"; //import { store } from "../redux/store"; const httpLink = new HttpLink({ diff --git a/client/src/utils/sentry.js b/client/src/utils/sentry.js new file mode 100644 index 000000000..d1152d773 --- /dev/null +++ b/client/src/utils/sentry.js @@ -0,0 +1,63 @@ +import * as Sentry from "@sentry/react"; +import { excludeGraphQLFetch } from "apollo-link-sentry"; +import { useEffect } from "react"; +import { createRoutesFromChildren, matchRoutes, useLocation, useNavigationType } from "react-router-dom"; +import InstanceRenderManager from "./instanceRenderMgr"; + +const currentDatePST = new Date() + .toLocaleDateString("en-US", { + timeZone: "America/Los_Angeles", + year: "numeric", + month: "2-digit", + day: "2-digit" + }) + .split("/") + .reverse() + .join("-"); +const sentryRelease = + `${import.meta.env.VITE_APP_IS_TEST ? "test" : "production"}-${currentDatePST}-${process.env.VITE_GIT_COMMIT_HASH}`.trim(); + +if (!import.meta.env.DEV) { + Sentry.init({ + dsn: InstanceRenderManager({ + imex: "https://fd7e89369b6b4bdc9c6c4c9f22fa4ee4@o492140.ingest.sentry.io/5651027", + rome: "https://a6acc91c073e414196014b8484627a61@o492140.ingest.sentry.io/4504561071161344" + }), + release: sentryRelease, + + ignoreErrors: [ + "ResizeObserver loop", + "ResizeObserver loop limit exceeded", + "Module specifier, 'fs' does not start", + "Module specifier, 'zlib' does not start with", + "Messaging: This browser doesn't support the API's required to use the Firebase SDK.", + "Failed to update a ServiceWorker for scope" + ], + integrations: [ + // See docs for support of different versions of variation of react router + // https://docs.sentry.io/platforms/javascript/guides/react/configuration/integrations/react-router/ + Sentry.reactRouterV6BrowserTracingIntegration({ + useEffect, + useLocation, + useNavigationType, + createRoutesFromChildren, + matchRoutes + }), + Sentry.replayIntegration(), + Sentry.browserProfilingIntegration() + ], + + tracePropagationTargets: [ + "api.imex.online", + "api.test.imex.online", + "db.imex.online", + "api.romeonline.io", + "api.test.romeonline.io", + "db.romeonline.io" + ], + tracesSampleRate: 1.0, + replaysOnErrorSampleRate: 1.0, + environment: import.meta.env.MODE, + beforeBreadcrumb: excludeGraphQLFetch + }); +} diff --git a/client/vite.config.js b/client/vite.config.js index 0882c1e3a..6b13da6bf 100644 --- a/client/vite.config.js +++ b/client/vite.config.js @@ -1,16 +1,31 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; import react from "@vitejs/plugin-react"; +import chalk from "chalk"; +import * as child from "child_process"; import { promises as fsPromises } from "fs"; import { createLogger, defineConfig } from "vite"; import { ViteEjsPlugin } from "vite-plugin-ejs"; import eslint from "vite-plugin-eslint"; import { VitePWA } from "vite-plugin-pwa"; import InstanceRenderManager from "./src/utils/instanceRenderMgr"; -import chalk from "chalk"; // Ensure your environment variables are set correctly for Vite 6 process.env.VITE_APP_GIT_SHA_DATE = new Date().toLocaleString("en-US", { timeZone: "America/Los_Angeles" }); +const commitHash = child.execSync("git rev-parse HEAD").toString().trimEnd(); +process.env.VITE_GIT_COMMIT_HASH = commitHash; + +const currentDatePST = new Date() + .toLocaleDateString("en-US", { + timeZone: "America/Los_Angeles", + year: "numeric", + month: "2-digit", + day: "2-digit" + }) + .split("/") + .reverse() + .join("-"); const getFormattedTimestamp = () => new Date().toLocaleTimeString("en-US", { hour12: true }).replace("AM", "a.m.").replace("PM", "p.m."); @@ -78,10 +93,25 @@ export default defineConfig({ } }), react(), - eslint() + eslint(), + sentryVitePlugin({ + org: "imex", + reactComponentAnnotation: { + enabled: true + }, + release: { + name: `${process.env.VITE_APP_IS_TEST ? "test" : "production"}-${currentDatePST}-${commitHash}`.trim() + }, + project: InstanceRenderManager({ + instance: process.env.VITE_APP_INSTANCE, + imex: "imexonline", + rome: "rome-online" + }) + }) ], define: { - APP_VERSION: JSON.stringify(process.env.npm_package_version) + APP_VERSION: JSON.stringify(process.env.npm_package_version), + __COMMIT_HASH__: JSON.stringify(commitHash) }, server: { host: true, @@ -184,7 +214,9 @@ export default defineConfig({ "libphonenumber-js": ["libphonenumber-js"] } } - } + }, + + sourcemap: true }, optimizeDeps: { include: [