From 90196870042a7f903d307d45ad65feeb415714cd Mon Sep 17 00:00:00 2001 From: Kichiyaki Date: Thu, 4 Nov 2021 09:23:45 +0100 Subject: [PATCH] add and setup sentry --- .env | 1 + .env.production | 3 +- Dockerfile | 10 ++ next.config.js | 13 +- package.json | 1 + public/sitemap.xml | 4 +- sentry.client.config.ts | 1 + sentry.server.config.ts | 20 +++ src/features/ErrorPage/ErrorPage.tsx | 40 +++++- src/features/IndexPage/IndexPage.tsx | 1 + yarn.lock | 205 ++++++++++++++++++++++++++- 11 files changed, 289 insertions(+), 10 deletions(-) create mode 100644 sentry.client.config.ts create mode 100644 sentry.server.config.ts diff --git a/.env b/.env index 05f9e3e..9d4ef63 100644 --- a/.env +++ b/.env @@ -1 +1,2 @@ DATE_OF_THE_EXAM=2022-01-14T00:00:00.000Z +NEXT_PUBLIC_SENTRY_ENVIRONMENT=development diff --git a/.env.production b/.env.production index 1d26356..c34d463 100644 --- a/.env.production +++ b/.env.production @@ -1,4 +1,5 @@ GA_TRACKING_ID=G-355ES1R23J NEXT_PUBLIC_API_URI=https://api.zdamegzaminzawodowy.pl/graphql NEXT_PUBLIC_URL=https://zdamegzaminzawodowy.pl -NEXT_PUBLIC_CDN_URI=https://cdn.zdamegzaminzawodowy.pl/ \ No newline at end of file +NEXT_PUBLIC_CDN_URI=https://cdn.zdamegzaminzawodowy.pl/ +NEXT_PUBLIC_SENTRY_ENVIRONMENT=production diff --git a/Dockerfile b/Dockerfile index a53f5b2..d80c41f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,7 +8,17 @@ RUN yarn install --frozen-lockfile # Rebuild the source code only when needed FROM node:14.18.1-alpine AS builder +ARG ENABLE_SENTRY_WEBPACK_PLUGIN="false" +ARG SENTRY_URL="" +ARG SENTRY_ORG="" +ARG SENTRY_PROJECT="" +ARG SENTRY_AUTH_TOKEN="" WORKDIR /app +ENV ENABLE_SENTRY_WEBPACK_PLUGIN=$ENABLE_SENTRY_WEBPACK_PLUGIN +ENV SENTRY_URL=$SENTRY_URL +ENV SENTRY_ORG=$SENTRY_ORG +ENV SENTRY_PROJECT=$SENTRY_PROJECT +ENV SENTRY_AUTH_TOKEN=$SENTRY_AUTH_TOKEN ENV BUILDING_PROCESS true COPY . . COPY --from=deps /app/node_modules ./node_modules diff --git a/next.config.js b/next.config.js index 40acc6e..ec9aee2 100644 --- a/next.config.js +++ b/next.config.js @@ -1,8 +1,17 @@ +const { withSentryConfig } = require('@sentry/nextjs'); + const CDN = process.env.NEXT_PUBLIC_CDN_URI ? new URL(process.env.NEXT_PUBLIC_CDN_URI) : ''; -module.exports = { +const cfg = { + sentry: { + disableServerWebpackPlugin: + process.env.ENABLE_SENTRY_WEBPACK_PLUGIN !== 'true', + get disableClientWebpackPlugin() { + return this.disableServerWebpackPlugin; + }, + }, i18n: { locales: ['pl'], defaultLocale: 'pl', @@ -25,3 +34,5 @@ module.exports = { ]; }, }; + +module.exports = withSentryConfig(cfg, { silent: true }); diff --git a/package.json b/package.json index 701ee32..403e822 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "@material-ui/core": "^4.11.3", "@material-ui/icons": "^4.11.2", "@material-ui/lab": "^4.0.0-alpha.57", + "@sentry/nextjs": "^6.13.3", "clsx": "^1.1.1", "date-fns": "^2.19.0", "graphql": "^15.5.0", diff --git a/public/sitemap.xml b/public/sitemap.xml index 656a052..d6567e0 100644 --- a/public/sitemap.xml +++ b/public/sitemap.xml @@ -1,5 +1,5 @@ -https://zdamegzaminzawodowy.pldaily0.72021-08-07T09:32:37.074Z -https://zdamegzaminzawodowy.pl/polityka-prywatnoscidaily0.72021-08-07T09:32:37.075Z +https://zdamegzaminzawodowy.pldaily0.72021-11-04T07:31:14.551Z +https://zdamegzaminzawodowy.pl/polityka-prywatnoscidaily0.72021-11-04T07:31:14.552Z \ No newline at end of file diff --git a/sentry.client.config.ts b/sentry.client.config.ts new file mode 100644 index 0000000..06bbb55 --- /dev/null +++ b/sentry.client.config.ts @@ -0,0 +1 @@ +import './sentry.server.config' diff --git a/sentry.server.config.ts b/sentry.server.config.ts new file mode 100644 index 0000000..5d85144 --- /dev/null +++ b/sentry.server.config.ts @@ -0,0 +1,20 @@ +import * as Sentry from '@sentry/nextjs'; + +const initSentry = () => { + const SENTRY_DSN = + process.env.SENTRY_DSN || process.env.NEXT_PUBLIC_SENTRY_DSN; + + if (!SENTRY_DSN) { + return; + } + + Sentry.init({ + dsn: SENTRY_DSN, + tracesSampleRate: 0.3, + environment: + process.env.SENTRY_ENVIRONMENT || + process.env.NEXT_PUBLIC_SENTRY_ENVIRONMENT, + }); +}; + +initSentry(); diff --git a/src/features/ErrorPage/ErrorPage.tsx b/src/features/ErrorPage/ErrorPage.tsx index 64f8c82..77e0d97 100644 --- a/src/features/ErrorPage/ErrorPage.tsx +++ b/src/features/ErrorPage/ErrorPage.tsx @@ -1,10 +1,12 @@ import { NextPage } from 'next'; import { ErrorProps } from 'next/error'; +import * as Sentry from '@sentry/nextjs'; import { Box, Typography } from '@material-ui/core'; import Layout from 'common/Layout/Layout'; import Section from 'common/Section/Section'; import Seo from 'common/Seo/Seo'; +import { useEffect } from 'react'; const getTitleForStatusCode = (statusCode: number): string => { switch (statusCode) { @@ -15,8 +17,22 @@ const getTitleForStatusCode = (statusCode: number): string => { } }; -const ErrorPage: NextPage = ({ statusCode, title }: ErrorProps) => { +const ErrorPage: NextPage< + ErrorProps & { hasGetInitialPropsRun?: boolean; err?: any } +> = ({ statusCode, title, hasGetInitialPropsRun, err }) => { + useEffect(() => { + // getInitialProps is not called in case of + // https://github.com/vercel/next.js/issues/8592. As a workaround, we pass + // err via _app.js so it can be captured + if (hasGetInitialPropsRun || !err) { + return; + } + + Sentry.captureException(err); + }, [hasGetInitialPropsRun, err]); + const _title = title ?? getTitleForStatusCode(statusCode); + return ( @@ -38,8 +54,26 @@ const ErrorPage: NextPage = ({ statusCode, title }: ErrorProps) => { ); }; -ErrorPage.getInitialProps = ({ res, err }) => { - return { statusCode: (res ? res.statusCode : err?.statusCode) ?? 404 }; +ErrorPage.getInitialProps = async ({ res, err, asPath }) => { + const props = { + statusCode: (res ? res.statusCode : err?.statusCode) ?? 404, + hasGetInitialPropsRun: true, + }; + + if (!err) { + Sentry.captureException( + new Error(`_error.js getInitialProps missing data at path: ${asPath}`) + ); + await Sentry.flush(2000); + + return props; + } + + Sentry.captureException(err); + + await Sentry.flush(2000); + + return props; }; export default ErrorPage; diff --git a/src/features/IndexPage/IndexPage.tsx b/src/features/IndexPage/IndexPage.tsx index b4f7711..f4037c6 100644 --- a/src/features/IndexPage/IndexPage.tsx +++ b/src/features/IndexPage/IndexPage.tsx @@ -17,6 +17,7 @@ import AboutExam from './components/AboutExam/AboutExam'; import ExamParts from './components/ExamParts/ExamParts'; import CheckMobileApp from './components/CheckMobileApp/CheckMobileApp'; import Professions from './components/Professions/Professions'; +import * as Sentry from '@sentry/nextjs'; interface IndexPageProps { professions: Profession[]; diff --git a/yarn.lock b/yarn.lock index c27caa0..e78b971 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1135,6 +1135,139 @@ dependencies: any-observable "^0.3.0" +"@sentry/browser@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-6.13.3.tgz#d4511791b1e484ad48785eba3bce291fdf115c1e" + integrity sha512-jwlpsk2/u1cofvfYsjmqcnx50JJtf/T6HTgdW+ih8+rqWC5ABEZf4IiB/H+KAyjJ3wVzCOugMq5irL83XDCfqQ== + dependencies: + "@sentry/core" "6.13.3" + "@sentry/types" "6.13.3" + "@sentry/utils" "6.13.3" + tslib "^1.9.3" + +"@sentry/cli@^1.68.0": + version "1.71.0" + resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-1.71.0.tgz#1e33e05d7651b68f501764ab24dce3d5932b195d" + integrity sha512-Z8TzH7PkiRfjWSzjXOfPWWp6wxjr+n39Jdrt26OcInVQZM1sx/gZULrDiQZ1L2dy9Fe9AR4SF4nt2/7h2GmLQQ== + dependencies: + https-proxy-agent "^5.0.0" + mkdirp "^0.5.5" + node-fetch "^2.6.0" + npmlog "^4.1.2" + progress "^2.0.3" + proxy-from-env "^1.1.0" + +"@sentry/core@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-6.13.3.tgz#5cbbb995128e793ebebcbf1d3b7514e0e5e8b221" + integrity sha512-obm3SjgCk8A7nB37b2AU1eq1q7gMoJRrGMv9VRIyfcG0Wlz/5lJ9O3ohUk+YZaaVfZMxXn6hFtsBiOWmlv7IIA== + dependencies: + "@sentry/hub" "6.13.3" + "@sentry/minimal" "6.13.3" + "@sentry/types" "6.13.3" + "@sentry/utils" "6.13.3" + tslib "^1.9.3" + +"@sentry/hub@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-6.13.3.tgz#cc09623a69b5343315fdb61c7fdd0be74b72299f" + integrity sha512-eYppBVqvhs5cvm33snW2sxfcw6G20/74RbBn+E4WDo15hozis89kU7ZCJDOPkXuag3v1h9igns/kM6PNBb41dw== + dependencies: + "@sentry/types" "6.13.3" + "@sentry/utils" "6.13.3" + tslib "^1.9.3" + +"@sentry/integrations@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-6.13.3.tgz#9d80229de6e815c53fa52ca2422a0d13820b8d4e" + integrity sha512-iC8LkbBTxlRo9FNxRqFfEm85FrELltc3E9gFsFSBkCnf7S/3nDCDW+mJX92KpRk97Wqid6/JwlXttKz8lsdF2A== + dependencies: + "@sentry/types" "6.13.3" + "@sentry/utils" "6.13.3" + localforage "^1.8.1" + tslib "^1.9.3" + +"@sentry/minimal@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-6.13.3.tgz#a675a79bcc830142e4f95e6198a2efde2cd3901e" + integrity sha512-63MlYYRni3fs5Bh8XBAfVZ+ctDdWg0fapSTP1ydIC37fKvbE+5zhyUqwrEKBIiclEApg1VKX7bkKxVdu/vsFdw== + dependencies: + "@sentry/hub" "6.13.3" + "@sentry/types" "6.13.3" + tslib "^1.9.3" + +"@sentry/nextjs@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/nextjs/-/nextjs-6.13.3.tgz#03ae3e1ad0f6cd3fa66fdb644f89aa173b6db247" + integrity sha512-Om9jdOX9TSOyfEcogF5v6r3SpNJMeMdeeE4RON3Aui6W3dfV/vpt60rMVliVyAHlWSAfbYzkcFaWm1at76/JEg== + dependencies: + "@sentry/core" "6.13.3" + "@sentry/integrations" "6.13.3" + "@sentry/node" "6.13.3" + "@sentry/react" "6.13.3" + "@sentry/tracing" "6.13.3" + "@sentry/utils" "6.13.3" + "@sentry/webpack-plugin" "1.17.1" + tslib "^1.9.3" + +"@sentry/node@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/node/-/node-6.13.3.tgz#94c646c31fd240ab68ee8b85aa663e65eb499d06" + integrity sha512-ZeZSw+TcPcf4e0j7iEqNMtoVmz+WFW/TEoGokXIwysZqSgchKdAXDHqn+CqUqFan7d76JcJmzztAUK2JruQ2Kg== + dependencies: + "@sentry/core" "6.13.3" + "@sentry/hub" "6.13.3" + "@sentry/tracing" "6.13.3" + "@sentry/types" "6.13.3" + "@sentry/utils" "6.13.3" + cookie "^0.4.1" + https-proxy-agent "^5.0.0" + lru_map "^0.3.3" + tslib "^1.9.3" + +"@sentry/react@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/react/-/react-6.13.3.tgz#f9607e0a60d52efd0baa96a14e694b6059f9379a" + integrity sha512-fdfmD9XNpGDwdkeLyd+iq+kqtNeghpH3wiez2rD81ZBvrn70uKaO2/yYDE71AXC6fUOwQuJmdfAuqBcNJkYIEw== + dependencies: + "@sentry/browser" "6.13.3" + "@sentry/minimal" "6.13.3" + "@sentry/types" "6.13.3" + "@sentry/utils" "6.13.3" + hoist-non-react-statics "^3.3.2" + tslib "^1.9.3" + +"@sentry/tracing@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-6.13.3.tgz#ca657d4afa99c50f15e638fe38405bac33e780ee" + integrity sha512-yyOFIhqlprPM0g4f35Icear3eZk2mwyYcGEzljJfY2iU6pJwj1lzia5PfSwiCW7jFGMmlBJNhOAIpfhlliZi8Q== + dependencies: + "@sentry/hub" "6.13.3" + "@sentry/minimal" "6.13.3" + "@sentry/types" "6.13.3" + "@sentry/utils" "6.13.3" + tslib "^1.9.3" + +"@sentry/types@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-6.13.3.tgz#63ad5b6735b0dfd90b3a256a9f8e77b93f0f66b2" + integrity sha512-Vrz5CdhaTRSvCQjSyIFIaV9PodjAVFkzJkTRxyY7P77RcegMsRSsG1yzlvCtA99zG9+e6MfoJOgbOCwuZids5A== + +"@sentry/utils@6.13.3": + version "6.13.3" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-6.13.3.tgz#188754d40afe693c3fcae410f9322531588a9926" + integrity sha512-zYFuFH3MaYtBZTeJ4Yajg7pDf0pM3MWs3+9k5my9Fd+eqNcl7dYQYJbT9gyC0HXK1QI4CAMNNlHNl4YXhF91ag== + dependencies: + "@sentry/types" "6.13.3" + tslib "^1.9.3" + +"@sentry/webpack-plugin@1.17.1": + version "1.17.1" + resolved "https://registry.yarnpkg.com/@sentry/webpack-plugin/-/webpack-plugin-1.17.1.tgz#1b3ebbe9991e4d77125ace2b24594059a088268a" + integrity sha512-L47a0hxano4a+9jbvQSBzHCT1Ph8fYAvGGUvFg8qc69yXS9si5lXRNIH/pavN6mqJjhQjAcEsEp+vxgvT4xZDQ== + dependencies: + "@sentry/cli" "^1.68.0" + "@sindresorhus/is@^0.14.0": version "0.14.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" @@ -2195,6 +2328,11 @@ convert-source-map@1.7.0, convert-source-map@^1.7.0: dependencies: safe-buffer "~5.1.1" +cookie@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" + integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== + copy-to-clipboard@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" @@ -3520,6 +3658,11 @@ image-size@1.0.0: dependencies: queue "6.0.2" +immediate@~3.0.5: + version "3.0.6" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" + integrity sha1-nbHb0Pr43m++D13V5Wu2BigN5ps= + immutable@~3.7.6: version "3.7.6" resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b" @@ -4138,6 +4281,13 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" +lie@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz#9a436b2cc7746ca59de7a41fa469b3efb76bd87e" + integrity sha1-mkNrLMd0bKWd56QfpGmz77dr2H4= + dependencies: + immediate "~3.0.5" + lines-and-columns@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" @@ -4206,6 +4356,13 @@ loader-utils@1.2.3: emojis-list "^2.0.0" json5 "^1.0.1" +localforage@^1.8.1: + version "1.10.0" + resolved "https://registry.yarnpkg.com/localforage/-/localforage-1.10.0.tgz#5c465dc5f62b2807c3a84c0c6a1b1b3212781dd4" + integrity sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg== + dependencies: + lie "3.1.1" + locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -4348,6 +4505,11 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru_map@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/lru_map/-/lru_map-0.3.3.tgz#b5c8351b9464cbd750335a79650a0ec0e56118dd" + integrity sha1-tcg1G5Rky9dQM1p5ZQoOwOVhGN0= + make-dir@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" @@ -4476,6 +4638,13 @@ mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== +mkdirp@^0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + mkdirp@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" @@ -4631,6 +4800,13 @@ node-fetch@2.6.1, node-fetch@^2.6.1: resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== +node-fetch@^2.6.0: + version "2.6.6" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.6.tgz#1751a7c01834e8e1697758732e9efb6eeadfaf89" + integrity sha512-Z8/6vRlTUChSdIgMa51jxQ4lrw/Jy5SOW10ObaA47/RElsAN2c5Pn8bTgFGWn/ibwzXTE8qwr1Yzx28vsecXEA== + dependencies: + whatwg-url "^5.0.0" + node-html-parser@1.4.9: version "1.4.9" resolved "https://registry.yarnpkg.com/node-html-parser/-/node-html-parser-1.4.9.tgz#3c8f6cac46479fae5800725edb532e9ae8fd816c" @@ -4675,7 +4851,7 @@ normalize-url@^4.1.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== -npmlog@^4.0.1: +npmlog@^4.0.1, npmlog@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -5102,7 +5278,7 @@ process@0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= -progress@^2.0.0: +progress@^2.0.0, progress@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== @@ -5123,6 +5299,11 @@ prop-types@^15.6.2, prop-types@^15.7.2: object-assign "^4.1.1" react-is "^16.8.1" +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + public-encrypt@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" @@ -6175,6 +6356,11 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + ts-easing@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/ts-easing/-/ts-easing-0.2.0.tgz#c8a8a35025105566588d87dbda05dd7fbfa5a4ec" @@ -6206,7 +6392,7 @@ tsconfig-paths@^3.9.0: minimist "^1.2.0" strip-bom "^3.0.0" -tslib@^1.8.1, tslib@^1.9.0: +tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== @@ -6392,6 +6578,11 @@ watchpack@2.1.1: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -6402,6 +6593,14 @@ whatwg-fetch@^3.4.1: resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + whatwg-url@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06"