diff --git a/.circleci/config.yml b/.circleci/config.yml
index b1451e587..8d0860a22 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -42,31 +42,22 @@ jobs:
app-build:
docker:
- image: cimg/node:16.15.0
-
+ resource_class: large
working_directory: ~/repo/client
steps:
- checkout:
path: ~/repo
-
- - restore_cache:
- name: Restore Yarn Package Cache
- keys:
- - yarn-packages-{{ checksum "yarn.lock" }}
- run:
name: Install Dependencies
- command: yarn install --frozen-lockfile --cache-folder ~/.cache/yarn
- - save_cache:
- name: Save Yarn Package Cache
- key: yarn-packages-{{ checksum "yarn.lock" }}
- paths:
- - ~/.cache/yarn
+ command: npm i
- - run: yarn run build
+ - run: npm run build
- aws-s3/sync:
from: build
to: "s3://imex-online-production/"
+ arguments: "--exclude '*.map'"
- jira/notify
rome-api-deploy:
@@ -245,31 +236,22 @@ jobs:
test-app-build:
docker:
- image: cimg/node:16.15.0
-
+ resource_class: large
working_directory: ~/repo/client
steps:
- checkout:
path: ~/repo
-
- - restore_cache:
- name: Restore Yarn Package Cache
- keys:
- - yarn-packages-{{ checksum "yarn.lock" }}
- run:
name: Install Dependencies
- command: yarn install --frozen-lockfile --cache-folder ~/.cache/yarn
- - save_cache:
- name: Save Yarn Package Cache
- key: yarn-packages-{{ checksum "yarn.lock" }}
- paths:
- - ~/.cache/yarn
+ command: npm i
- - run: yarn run build:test
+ - run: npm run build:test
- aws-s3/sync:
from: build
to: "s3://imex-online-test/"
+ arguments: "--exclude '*.map'"
- jira/notify
test-app-beta-build:
@@ -411,4 +393,4 @@ workflows:
#- admin-app-build:
#filters:
#branches:
- #only: master
\ No newline at end of file
+ #only: master
diff --git a/client/.gitignore b/client/.gitignore
new file mode 100644
index 000000000..387b4257c
--- /dev/null
+++ b/client/.gitignore
@@ -0,0 +1,3 @@
+
+# Sentry Config File
+.sentryclirc
diff --git a/client/craco.config.js b/client/craco.config.js
index b8967bc1e..a4f0ee09f 100644
--- a/client/craco.config.js
+++ b/client/craco.config.js
@@ -1,25 +1,25 @@
// craco.config.js
const TerserPlugin = require("terser-webpack-plugin");
const CracoLessPlugin = require("craco-less");
-const SentryWebpackPlugin = require("@sentry/webpack-plugin");
+//const SentryWebpackPlugin = require("@sentry/webpack-plugin");
module.exports = {
plugins: [
- {
- plugin: SentryWebpackPlugin,
- options: {
- // sentry-cli configuration
- authToken:
- "6b45b028a02342db97a9a2f92c0959058665443d379d4a3a876430009e744260",
- org: "snapt-software",
- project: "rome-online",
- release: process.env.REACT_APP_GIT_SHA,
+ // {
+ // plugin: SentryWebpackPlugin,
+ // options: {
+ // // sentry-cli configuration
+ // authToken:
+ // "6b45b028a02342db97a9a2f92c0959058665443d379d4a3a876430009e744260",
+ // org: "snapt-software",
+ // project: "imexonline",
+ // release: process.env.REACT_APP_GIT_SHA,
- // webpack-specific configuration
- include: ".",
- ignore: ["node_modules", "webpack.config.js"],
- },
- },
+ // // webpack-specific configuration
+ // include: ".",
+ // ignore: ["node_modules", "webpack.config.js"],
+ // },
+ // },
{
plugin: CracoLessPlugin,
options: {
diff --git a/client/package-lock.json b/client/package-lock.json
index 9a868698e..25a526f60 100644
--- a/client/package-lock.json
+++ b/client/package-lock.json
@@ -13,12 +13,14 @@
"@craco/craco": "^7.0.0",
"@fingerprintjs/fingerprintjs": "^3.4.2",
"@jsreport/browser-client": "^3.1.0",
- "@sentry/react": "^7.40.0",
+ "@sentry/cli": "^2.27.0",
+ "@sentry/react": "^7.99.0",
"@sentry/tracing": "^7.40.0",
"@splitsoftware/splitio-react": "^1.8.1",
"@tanem/react-nprogress": "^5.0.8",
"antd": "^4.24.8",
"apollo-link-logger": "^2.0.1",
+ "apollo-link-sentry": "^3.3.0",
"axios": "^1.3.4",
"craco-less": "^2.0.0",
"dinero.js": "^1.9.1",
@@ -4214,40 +4216,195 @@
"integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==",
"license": "MIT"
},
- "node_modules/@sentry/browser": {
- "version": "7.40.0",
- "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.40.0.tgz",
- "integrity": "sha512-07rZ+cTcpmYB1r84/oZtmSPJJvLCxW8yIh/5s4MdKRyZpqIDKhOz6cCS/4j+l1V+MeLcNLZBjFtNdKA2eocTpg==",
- "license": "MIT",
+ "node_modules/@sentry-internal/feedback": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-7.99.0.tgz",
+ "integrity": "sha512-exIO1o+bE0MW4z30FxC0cYzJ4ZHSMlDPMHCBDPzU+MWGQc/fb8s58QUrx5Dnm6HTh9G3H+YlroCxIo9u0GSwGQ==",
"dependencies": {
- "@sentry/core": "7.40.0",
- "@sentry/replay": "7.40.0",
- "@sentry/types": "7.40.0",
- "@sentry/utils": "7.40.0",
- "tslib": "^1.9.3"
+ "@sentry/core": "7.99.0",
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@sentry-internal/feedback/node_modules/@sentry/core": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.99.0.tgz",
+ "integrity": "sha512-vOAtzcAXEUtS/oW7wi3wMkZ3hsb5Ch96gKyrrj/mXdOp2zrcwdNV6N9/pawq2E9P/7Pw8AXw4CeDZztZrjQLuA==",
+ "dependencies": {
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
},
"engines": {
"node": ">=8"
}
},
- "node_modules/@sentry/browser/node_modules/tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "license": "0BSD"
+ "node_modules/@sentry-internal/feedback/node_modules/@sentry/types": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.99.0.tgz",
+ "integrity": "sha512-94qwOw4w40sAs5mCmzcGyj8ZUu/KhnWnuMZARRq96k+SjRW/tHFAOlIdnFSrt3BLPvSOK7R3bVAskZQ0N4FTmA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry-internal/feedback/node_modules/@sentry/utils": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.99.0.tgz",
+ "integrity": "sha512-cYZy5WNTkWs5GgggGnjfGqC44CWir0pAv4GVVSx0fsup4D4pMKBJPrtub15f9uC+QkUf3vVkqwpBqeFxtmJQTQ==",
+ "dependencies": {
+ "@sentry/types": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry-internal/replay-canvas": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-7.99.0.tgz",
+ "integrity": "sha512-PoIkfusToDq0snfl2M6HJx/1KJYtXxYhQplrn11kYadO04SdG0XGXf4h7wBTMEQ7LDEAtQyvsOu4nEQtTO3YjQ==",
+ "dependencies": {
+ "@sentry/core": "7.99.0",
+ "@sentry/replay": "7.99.0",
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@sentry-internal/replay-canvas/node_modules/@sentry/core": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.99.0.tgz",
+ "integrity": "sha512-vOAtzcAXEUtS/oW7wi3wMkZ3hsb5Ch96gKyrrj/mXdOp2zrcwdNV6N9/pawq2E9P/7Pw8AXw4CeDZztZrjQLuA==",
+ "dependencies": {
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry-internal/replay-canvas/node_modules/@sentry/types": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.99.0.tgz",
+ "integrity": "sha512-94qwOw4w40sAs5mCmzcGyj8ZUu/KhnWnuMZARRq96k+SjRW/tHFAOlIdnFSrt3BLPvSOK7R3bVAskZQ0N4FTmA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry-internal/replay-canvas/node_modules/@sentry/utils": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.99.0.tgz",
+ "integrity": "sha512-cYZy5WNTkWs5GgggGnjfGqC44CWir0pAv4GVVSx0fsup4D4pMKBJPrtub15f9uC+QkUf3vVkqwpBqeFxtmJQTQ==",
+ "dependencies": {
+ "@sentry/types": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry-internal/tracing": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.99.0.tgz",
+ "integrity": "sha512-z3JQhHjoM1KdM20qrHwRClKJrNLr2CcKtCluq7xevLtXHJWNAQQbafnWD+Aoj85EWXBzKt9yJMv2ltcXJ+at+w==",
+ "dependencies": {
+ "@sentry/core": "7.99.0",
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry-internal/tracing/node_modules/@sentry/core": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.99.0.tgz",
+ "integrity": "sha512-vOAtzcAXEUtS/oW7wi3wMkZ3hsb5Ch96gKyrrj/mXdOp2zrcwdNV6N9/pawq2E9P/7Pw8AXw4CeDZztZrjQLuA==",
+ "dependencies": {
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry-internal/tracing/node_modules/@sentry/types": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.99.0.tgz",
+ "integrity": "sha512-94qwOw4w40sAs5mCmzcGyj8ZUu/KhnWnuMZARRq96k+SjRW/tHFAOlIdnFSrt3BLPvSOK7R3bVAskZQ0N4FTmA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry-internal/tracing/node_modules/@sentry/utils": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.99.0.tgz",
+ "integrity": "sha512-cYZy5WNTkWs5GgggGnjfGqC44CWir0pAv4GVVSx0fsup4D4pMKBJPrtub15f9uC+QkUf3vVkqwpBqeFxtmJQTQ==",
+ "dependencies": {
+ "@sentry/types": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry/browser": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.99.0.tgz",
+ "integrity": "sha512-bgfoUv3wkwwLgN5YUOe0ibB3y268ZCnamZh6nLFqnY/UBKC1+FXWFdvzVON/XKUm62LF8wlpCybOf08ebNj2yg==",
+ "dependencies": {
+ "@sentry-internal/feedback": "7.99.0",
+ "@sentry-internal/replay-canvas": "7.99.0",
+ "@sentry-internal/tracing": "7.99.0",
+ "@sentry/core": "7.99.0",
+ "@sentry/replay": "7.99.0",
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry/browser/node_modules/@sentry/core": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.99.0.tgz",
+ "integrity": "sha512-vOAtzcAXEUtS/oW7wi3wMkZ3hsb5Ch96gKyrrj/mXdOp2zrcwdNV6N9/pawq2E9P/7Pw8AXw4CeDZztZrjQLuA==",
+ "dependencies": {
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry/browser/node_modules/@sentry/types": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.99.0.tgz",
+ "integrity": "sha512-94qwOw4w40sAs5mCmzcGyj8ZUu/KhnWnuMZARRq96k+SjRW/tHFAOlIdnFSrt3BLPvSOK7R3bVAskZQ0N4FTmA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry/browser/node_modules/@sentry/utils": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.99.0.tgz",
+ "integrity": "sha512-cYZy5WNTkWs5GgggGnjfGqC44CWir0pAv4GVVSx0fsup4D4pMKBJPrtub15f9uC+QkUf3vVkqwpBqeFxtmJQTQ==",
+ "dependencies": {
+ "@sentry/types": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
},
"node_modules/@sentry/cli": {
- "version": "1.74.6",
- "resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-1.74.6.tgz",
- "integrity": "sha512-pJ7JJgozyjKZSTjOGi86chIngZMLUlYt2HOog+OJn+WGvqEkVymu8m462j1DiXAnex9NspB4zLLNuZ/R6rTQHg==",
- "dev": true,
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-2.27.0.tgz",
+ "integrity": "sha512-pc0opd71W8lGhYvmB1keQtJkarxzCS9f9ErKYv6TfXOOX6drvwkyA6vD/6xEnpzyvqGAuGRU4T4sEeLD3irwUQ==",
"hasInstallScript": true,
- "license": "BSD-3-Clause",
"dependencies": {
"https-proxy-agent": "^5.0.0",
- "mkdirp": "^0.5.5",
"node-fetch": "^2.6.7",
- "npmlog": "^4.1.2",
"progress": "^2.0.3",
"proxy-from-env": "^1.1.0",
"which": "^2.0.2"
@@ -4256,7 +4413,124 @@
"sentry-cli": "bin/sentry-cli"
},
"engines": {
- "node": ">= 8"
+ "node": ">= 10"
+ },
+ "optionalDependencies": {
+ "@sentry/cli-darwin": "2.27.0",
+ "@sentry/cli-linux-arm": "2.27.0",
+ "@sentry/cli-linux-arm64": "2.27.0",
+ "@sentry/cli-linux-i686": "2.27.0",
+ "@sentry/cli-linux-x64": "2.27.0",
+ "@sentry/cli-win32-i686": "2.27.0",
+ "@sentry/cli-win32-x64": "2.27.0"
+ }
+ },
+ "node_modules/@sentry/cli-darwin": {
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/@sentry/cli-darwin/-/cli-darwin-2.27.0.tgz",
+ "integrity": "sha512-/DOZlN5rK19g7YP2OaVNauQhUrRfJ88RDr6qURFiqdxYHDc3isPFGHZJmeZBTwOnDDepyZb4XLaOyfwvAOxHig==",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@sentry/cli-linux-arm": {
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm/-/cli-linux-arm-2.27.0.tgz",
+ "integrity": "sha512-JmMQ9zgFhkZUEN5WIYuJisu4Jif/ThRHDjbsbXBRbUkkgRn88hgUfg299djMvlZZxjpl3K9AEua+1TIUeQd0Sg==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux",
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@sentry/cli-linux-arm64": {
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm64/-/cli-linux-arm64-2.27.0.tgz",
+ "integrity": "sha512-f+zuB9XGfB8pNamNgSDhqsavuLuzi6saZxbr3uQf30bA5AESI5hspOd1zPcidOORCVZxiPzQe3+T7avBI1XLuw==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "linux",
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@sentry/cli-linux-i686": {
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/@sentry/cli-linux-i686/-/cli-linux-i686-2.27.0.tgz",
+ "integrity": "sha512-/4eyz7jnYp20mZqNtpvCEBkxFW0nEjEZRo2BiASQ5/7K8CmoJRe1vhpDA0WOfzi1zTFIfpdE1/RZm2CjHS6DHQ==",
+ "cpu": [
+ "x86",
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "linux",
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@sentry/cli-linux-x64": {
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/@sentry/cli-linux-x64/-/cli-linux-x64-2.27.0.tgz",
+ "integrity": "sha512-ptu7wXecnYssihzHlxEOaqbFHWmNEfbepBKGXTdWK2kC+D51+7yHsR9xRdThwVID1bisFgjAveKmBQjmKuXjHQ==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "linux",
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@sentry/cli-win32-i686": {
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/@sentry/cli-win32-i686/-/cli-win32-i686-2.27.0.tgz",
+ "integrity": "sha512-Db4/xmdE5qV4Aq7Yc8vRw22Y46JJdGMdsMsl5jIf0GVSQPgO23O/2uTiDGpPOdeq91K9EtvpH1zQfDLIfLMaXw==",
+ "cpu": [
+ "x86",
+ "ia32"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@sentry/cli-win32-x64": {
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/@sentry/cli-win32-x64/-/cli-win32-x64-2.27.0.tgz",
+ "integrity": "sha512-q7y/BH4iGfs0TD5PXh2Q8oqnTbOIufoT1NWJcKqvZcOiqCLK3PNUiq7xUeX1PMTrFYAh3Bm6EekOnMavqvbGmg==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=10"
}
},
"node_modules/@sentry/core": {
@@ -4280,16 +4554,15 @@
"license": "0BSD"
},
"node_modules/@sentry/react": {
- "version": "7.40.0",
- "resolved": "https://registry.npmjs.org/@sentry/react/-/react-7.40.0.tgz",
- "integrity": "sha512-7yYagpOCdsXnVTtLL8Y7wAf2xXgsk2ncuju3O/G4kEckkLewZWmQeoknOSGFlAgVdGNhTaXc2WGzgOiBMOkhug==",
- "license": "MIT",
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/react/-/react-7.99.0.tgz",
+ "integrity": "sha512-RtHwgzMHJhzJfSQpVG0SDPQYMTGDX3Q37/YWI59S4ALMbSW4/F6n/eQAvGVYZKbh2UCSqgFuRWaXOYkSZT17wA==",
"dependencies": {
- "@sentry/browser": "7.40.0",
- "@sentry/types": "7.40.0",
- "@sentry/utils": "7.40.0",
- "hoist-non-react-statics": "^3.3.2",
- "tslib": "^1.9.3"
+ "@sentry/browser": "7.99.0",
+ "@sentry/core": "7.99.0",
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0",
+ "hoist-non-react-statics": "^3.3.2"
},
"engines": {
"node": ">=8"
@@ -4298,26 +4571,82 @@
"react": "15.x || 16.x || 17.x || 18.x"
}
},
- "node_modules/@sentry/react/node_modules/tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "license": "0BSD"
+ "node_modules/@sentry/react/node_modules/@sentry/core": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.99.0.tgz",
+ "integrity": "sha512-vOAtzcAXEUtS/oW7wi3wMkZ3hsb5Ch96gKyrrj/mXdOp2zrcwdNV6N9/pawq2E9P/7Pw8AXw4CeDZztZrjQLuA==",
+ "dependencies": {
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry/react/node_modules/@sentry/types": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.99.0.tgz",
+ "integrity": "sha512-94qwOw4w40sAs5mCmzcGyj8ZUu/KhnWnuMZARRq96k+SjRW/tHFAOlIdnFSrt3BLPvSOK7R3bVAskZQ0N4FTmA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry/react/node_modules/@sentry/utils": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.99.0.tgz",
+ "integrity": "sha512-cYZy5WNTkWs5GgggGnjfGqC44CWir0pAv4GVVSx0fsup4D4pMKBJPrtub15f9uC+QkUf3vVkqwpBqeFxtmJQTQ==",
+ "dependencies": {
+ "@sentry/types": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
},
"node_modules/@sentry/replay": {
- "version": "7.40.0",
- "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.40.0.tgz",
- "integrity": "sha512-Y9Kvo9jKouUdrHQhHVv5SmWZClF5o7BFI6oVpLlv4zXORPQlyoZONM/9sxiMvvH73alDSpxzCoxyhlypAOH4ww==",
- "license": "MIT",
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.99.0.tgz",
+ "integrity": "sha512-gyN/I2WpQrLAZDT+rScB/0jnFL2knEVBo8U8/OVt8gNP20Pq8T/rDZKO/TG0cBfvULDUbJj2P4CJryn2p/O2rA==",
"dependencies": {
- "@sentry/core": "7.40.0",
- "@sentry/types": "7.40.0",
- "@sentry/utils": "7.40.0"
+ "@sentry-internal/tracing": "7.99.0",
+ "@sentry/core": "7.99.0",
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
},
"engines": {
"node": ">=12"
}
},
+ "node_modules/@sentry/replay/node_modules/@sentry/core": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.99.0.tgz",
+ "integrity": "sha512-vOAtzcAXEUtS/oW7wi3wMkZ3hsb5Ch96gKyrrj/mXdOp2zrcwdNV6N9/pawq2E9P/7Pw8AXw4CeDZztZrjQLuA==",
+ "dependencies": {
+ "@sentry/types": "7.99.0",
+ "@sentry/utils": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry/replay/node_modules/@sentry/types": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.99.0.tgz",
+ "integrity": "sha512-94qwOw4w40sAs5mCmzcGyj8ZUu/KhnWnuMZARRq96k+SjRW/tHFAOlIdnFSrt3BLPvSOK7R3bVAskZQ0N4FTmA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@sentry/replay/node_modules/@sentry/utils": {
+ "version": "7.99.0",
+ "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.99.0.tgz",
+ "integrity": "sha512-cYZy5WNTkWs5GgggGnjfGqC44CWir0pAv4GVVSx0fsup4D4pMKBJPrtub15f9uC+QkUf3vVkqwpBqeFxtmJQTQ==",
+ "dependencies": {
+ "@sentry/types": "7.99.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/@sentry/tracing": {
"version": "7.40.0",
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.40.0.tgz",
@@ -4381,6 +4710,27 @@
"node": ">= 8"
}
},
+ "node_modules/@sentry/webpack-plugin/node_modules/@sentry/cli": {
+ "version": "1.77.3",
+ "resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-1.77.3.tgz",
+ "integrity": "sha512-c3eDqcDRmy4TFz2bFU5Y6QatlpoBPPa8cxBooaS4aMQpnIdLYPF1xhyyiW0LQlDUNc3rRjNF7oN5qKoaRoMTQQ==",
+ "dev": true,
+ "hasInstallScript": true,
+ "dependencies": {
+ "https-proxy-agent": "^5.0.0",
+ "mkdirp": "^0.5.5",
+ "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": ">= 8"
+ }
+ },
"node_modules/@sinclair/typebox": {
"version": "0.24.51",
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz",
@@ -6112,12 +6462,21 @@
"@apollo/client": "^3.0.0"
}
},
- "node_modules/aproba": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
- "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
- "dev": true,
- "license": "ISC"
+ "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==",
+ "dependencies": {
+ "deepmerge": "^4.2.2",
+ "dot-prop": "^6.0.0",
+ "tslib": "^2.0.3",
+ "zen-observable-ts": "^1.2.5"
+ },
+ "peerDependencies": {
+ "@apollo/client": "^3.2.3",
+ "@sentry/browser": "^7.41.0",
+ "graphql": "15 - 16"
+ }
},
"node_modules/arch": {
"version": "2.2.0",
@@ -6140,17 +6499,6 @@
],
"license": "MIT"
},
- "node_modules/are-we-there-yet": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz",
- "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "delegates": "^1.0.0",
- "readable-stream": "^2.0.6"
- }
- },
"node_modules/arg": {
"version": "5.0.2",
"resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
@@ -7571,16 +7919,6 @@
"node": ">=4"
}
},
- "node_modules/code-point-at": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
- "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/collect-v8-coverage": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz",
@@ -7743,13 +8081,6 @@
"node": ">=0.8"
}
},
- "node_modules/console-control-strings": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
- "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==",
- "dev": true,
- "license": "ISC"
- },
"node_modules/content-disposition": {
"version": "0.5.4",
"resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
@@ -8911,13 +9242,6 @@
"node": ">=0.4.0"
}
},
- "node_modules/delegates": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
- "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/denque": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/denque/-/denque-1.5.1.tgz",
@@ -9218,6 +9542,28 @@
"tslib": "^2.0.3"
}
},
+ "node_modules/dot-prop": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-6.0.1.tgz",
+ "integrity": "sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==",
+ "dependencies": {
+ "is-obj": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/dot-prop/node_modules/is-obj": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
+ "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/dotenv": {
"version": "16.0.1",
"resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.1.tgz",
@@ -11285,74 +11631,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/gauge": {
- "version": "2.7.4",
- "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
- "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "aproba": "^1.0.3",
- "console-control-strings": "^1.0.0",
- "has-unicode": "^2.0.0",
- "object-assign": "^4.1.0",
- "signal-exit": "^3.0.0",
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1",
- "wide-align": "^1.1.0"
- }
- },
- "node_modules/gauge/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gauge/node_modules/is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "number-is-nan": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gauge/node_modules/string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "code-point-at": "^1.0.0",
- "is-fullwidth-code-point": "^1.0.0",
- "strip-ansi": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gauge/node_modules/strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/gensync": {
"version": "1.0.0-beta.2",
"resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
@@ -11755,13 +12033,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/has-unicode": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
- "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==",
- "dev": true,
- "license": "ISC"
- },
"node_modules/he": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
@@ -15746,19 +16017,6 @@
"node": ">=8"
}
},
- "node_modules/npmlog": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
- "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "are-we-there-yet": "~1.1.2",
- "console-control-strings": "~1.1.0",
- "gauge": "~2.7.3",
- "set-blocking": "~2.0.0"
- }
- },
"node_modules/nth-check": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
@@ -15771,16 +16029,6 @@
"url": "https://github.com/fb55/nth-check?sponsor=1"
}
},
- "node_modules/number-is-nan": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
- "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/nwsapi": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.1.tgz",
@@ -17796,7 +18044,6 @@
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
"integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
- "dev": true,
"license": "MIT",
"engines": {
"node": ">=0.4.0"
@@ -20528,13 +20775,6 @@
"node": ">= 0.8.0"
}
},
- "node_modules/set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
- "dev": true,
- "license": "ISC"
- },
"node_modules/setprototypeof": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
@@ -23069,16 +23309,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/wide-align": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
- "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "string-width": "^1.0.2 || 2 || 3 || 4"
- }
- },
"node_modules/wildcard": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz",
diff --git a/client/package.json b/client/package.json
index 602f30e12..a93f91fac 100644
--- a/client/package.json
+++ b/client/package.json
@@ -9,12 +9,14 @@
"@craco/craco": "^7.0.0",
"@fingerprintjs/fingerprintjs": "^3.4.2",
"@jsreport/browser-client": "^3.1.0",
- "@sentry/react": "^7.40.0",
+ "@sentry/cli": "^2.27.0",
+ "@sentry/react": "^7.99.0",
"@sentry/tracing": "^7.40.0",
"@splitsoftware/splitio-react": "^1.8.1",
"@tanem/react-nprogress": "^5.0.8",
"antd": "^4.24.8",
"apollo-link-logger": "^2.0.1",
+ "apollo-link-sentry": "^3.3.0",
"axios": "^1.3.4",
"craco-less": "^2.0.0",
"dinero.js": "^1.9.1",
@@ -88,13 +90,14 @@
"scripts": {
"analyze": "source-map-explorer 'build/static/js/*.js'",
"start": "craco start",
- "build": "REACT_APP_GIT_SHA=`git rev-parse --short HEAD` craco build",
+ "build": "REACT_APP_GIT_SHA=`git rev-parse --short HEAD` craco build && npm run sentry:sourcemaps",
"build:test": "env-cmd -f .env.test npm run build",
"build-deploy:test": "npm run build:test && s3cmd sync build/* s3://imex-online-test && echo '🚀 TESTING Deployed!'",
"buildcra": "REACT_APP_GIT_SHA=`git rev-parse --short HEAD` craco build",
"test": "cypress open",
"eject": "react-scripts eject",
- "madge": "madge --image ./madge-graph.svg --extensions js,jsx,ts,tsx --circular ."
+ "madge": "madge --image ./madge-graph.svg --extensions js,jsx,ts,tsx --circular .",
+ "sentry:sourcemaps": "sentry-cli sourcemaps inject --org imex --project imexonline ./build && sentry-cli sourcemaps upload --org imex --project imexonline ./build"
},
"eslintConfig": {
"extends": [
diff --git a/client/src/App/App.container.jsx b/client/src/App/App.container.jsx
index c58ddd7e4..206b2016d 100644
--- a/client/src/App/App.container.jsx
+++ b/client/src/App/App.container.jsx
@@ -8,6 +8,7 @@ import { useTranslation } from "react-i18next";
import GlobalLoadingBar from "../components/global-loading-bar/global-loading-bar.component";
import client from "../utils/GraphQLClient";
import App from "./App";
+import * as Sentry from "@sentry/react";
moment.locale("en-US");
@@ -18,7 +19,7 @@ export const factory = SplitSdk({
},
});
-export default function AppContainer() {
+function AppContainer() {
const { t } = useTranslation();
return (
@@ -48,3 +49,5 @@ export default function AppContainer() {
);
}
+
+export default Sentry.withProfiler(AppContainer);
diff --git a/client/src/components/bill-enter-modal/bill-enter-modal.container.jsx b/client/src/components/bill-enter-modal/bill-enter-modal.container.jsx
index 90a14a5d1..b0c8c22da 100644
--- a/client/src/components/bill-enter-modal/bill-enter-modal.container.jsx
+++ b/client/src/components/bill-enter-modal/bill-enter-modal.container.jsx
@@ -105,6 +105,7 @@ function BillEnterModalContainer({
location,
outstanding_returns,
inventory,
+ federal_tax_exempt,
...remainingValues
} = values;
diff --git a/client/src/components/csi-response-form/csi-response-form.container.jsx b/client/src/components/csi-response-form/csi-response-form.container.jsx
index a1882b09a..d7a565608 100644
--- a/client/src/components/csi-response-form/csi-response-form.container.jsx
+++ b/client/src/components/csi-response-form/csi-response-form.container.jsx
@@ -5,6 +5,7 @@ import React, { useEffect } from "react";
import { useTranslation } from "react-i18next";
import { useLocation } from "react-router-dom";
import { QUERY_CSI_RESPONSE_BY_PK } from "../../graphql/csi.queries";
+import { DateFormatter } from "../../utils/DateFormatter";
import AlertComponent from "../alert/alert.component";
import ConfigFormComponents from "../config-form-components/config-form-components.component";
import LoadingSpinner from "../loading-spinner/loading-spinner.component";
@@ -44,6 +45,13 @@ export default function CsiResponseFormContainer() {
readOnly
componentList={data.csi_by_pk.csiquestion.config}
/>
+ {data.csi_by_pk.validuntil ? (
+ <>
+ {t("csi.fields.validuntil")}
+ {": "}
+
+