This commit is contained in:
Dawid Wysokiński 2022-09-25 12:55:36 +02:00
parent 84430bc856
commit c5b82dcef4
Signed by: Kichiyaki
GPG Key ID: B5445E357FB8B892
13 changed files with 11 additions and 403 deletions

2
.env
View File

@ -1 +1 @@
DATE_OF_THE_EXAM=2022-01-14T00:00:00.000Z DATE_OF_THE_EXAM=2023-01-14T00:00:00.000Z

View File

@ -1,56 +0,0 @@
name: Build and push to registry
on:
push:
tags:
- '*'
jobs:
push_to_registry:
name: Push Docker image to Docker Hub
if: startsWith(github.ref, 'refs/tags/v')
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v3
- name: Get the version
id: get_version
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/v}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Cache Docker layers
uses: actions/cache@v2
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-buildx-${{ github.sha }}
restore-keys: |
${{ runner.os }}-buildx-
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.REGISTRY_LOGIN }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Push to Docker Hub
uses: docker/build-push-action@v2
with:
context: .
build-args: |
SENTRY_WEBPACK_PLUGIN_ENABLED=true
SENTRY_URL=${{ secrets.SENTRY_URL }}
SENTRY_ORG=${{ secrets.SENTRY_ORG }}
SENTRY_PROJECT=${{ secrets.SENTRY_PROJECT }}
SENTRY_AUTH_TOKEN=${{ secrets.SENTRY_AUTH_TOKEN }}
SENTRY_DSN=${{ secrets.SENTRY_DSN }}
VERSION=${{ steps.get_version.outputs.VERSION }}
PLAUSIBLE_ENABLED=true
PLAUSIBLE_DOMAIN=${{ secrets.PLAUSIBLE_DOMAIN }}
PLAUSIBLE_CUSTOM_DOMAIN=${{ secrets.PLAUSIBLE_CUSTOM_DOMAIN }}
tags: |
${{ secrets.REGISTRY_NAME }}/zdam-egzamin-zawodowy-website:latest
${{ secrets.REGISTRY_NAME }}/zdam-egzamin-zawodowy-website:${{ steps.get_version.outputs.VERSION }}
file: ./Dockerfile
push: true

View File

@ -9,31 +9,9 @@ RUN yarn install --frozen-lockfile
# Rebuild the source code only when needed # Rebuild the source code only when needed
FROM node:14.19.1-alpine AS builder FROM node:14.19.1-alpine AS builder
ARG VERSION="v0.0.0"
ARG SENTRY_WEBPACK_PLUGIN_ENABLED="false"
ARG SENTRY_URL=""
ARG SENTRY_ORG=""
ARG SENTRY_PROJECT=""
ARG SENTRY_AUTH_TOKEN=""
ARG SENTRY_DSN=""
ARG PLAUSIBLE_ENABLED="false"
ARG PLAUSIBLE_DOMAIN=""
ARG PLAUSIBLE_CUSTOM_DOMAIN=""
WORKDIR /app WORKDIR /app
ENV SENTRY_WEBPACK_PLUGIN_ENABLED=$SENTRY_WEBPACK_PLUGIN_ENABLED \ ENV BUILDING_PROCESS=true
SENTRY_URL=$SENTRY_URL \
SENTRY_ORG=$SENTRY_ORG \
SENTRY_PROJECT=$SENTRY_PROJECT \
SENTRY_AUTH_TOKEN=$SENTRY_AUTH_TOKEN \
SENTRY_DSN=$SENTRY_DSN \
NEXT_PUBLIC_SENTRY_DSN=$SENTRY_DSN \
NEXT_PUBLIC_VERSION=$VERSION \
NEXT_PUBLIC_PLAUSIBLE_ENABLED=$PLAUSIBLE_ENABLED \
NEXT_PUBLIC_PLAUSIBLE_DOMAIN=$PLAUSIBLE_DOMAIN \
NEXT_PUBLIC_PLAUSIBLE_CUSTOM_DOMAIN=$PLAUSIBLE_CUSTOM_DOMAIN \
BUILDING_PROCESS=true
COPY . . COPY . .
COPY --from=deps /app/node_modules ./node_modules COPY --from=deps /app/node_modules ./node_modules
@ -45,21 +23,7 @@ FROM node:14.19.1-alpine AS runner
WORKDIR /app WORKDIR /app
ARG VERSION="0.0.0" ENV BUILDING_PROCESS=false
ARG SENTRY_DSN=""
ARG PLAUSIBLE_ENABLED="false"
ARG PLAUSIBLE_DOMAIN=""
ARG PLAUSIBLE_CUSTOM_DOMAIN=""
ENV NODE_ENV=production \
SENTRY_DSN=$SENTRY_DSN \
NEXT_PUBLIC_SENTRY_DSN=$SENTRY_DSN \
VERSION=$VERSION \
NEXT_PUBLIC_VERSION=$VERSION \
NEXT_PUBLIC_PLAUSIBLE_ENABLED=$PLAUSIBLE_ENABLED \
NEXT_PUBLIC_PLAUSIBLE_DOMAIN=$PLAUSIBLE_DOMAIN \
NEXT_PUBLIC_PLAUSIBLE_CUSTOM_DOMAIN=$PLAUSIBLE_CUSTOM_DOMAIN \
BUILDING_PROCESS=false
COPY --from=builder /app/next.config.js ./ COPY --from=builder /app/next.config.js ./
COPY --from=builder /app/public ./public COPY --from=builder /app/public ./public

View File

@ -2,28 +2,6 @@
![Screenshot](/screenshots/indexpage.png?raw=true) ![Screenshot](/screenshots/indexpage.png?raw=true)
A web app for practising the theoretical part of the [vocational exam](https://cke.gov.pl/en/vocational-examination/).
## Development
### Prerequisites
1. Node.JS
2. yarn
3. [Configured backend](https://github.com/zdam-egzamin-zawodowy/backend)
### Installation
1. Clone this repo
```
git clone git@github.com:zdam-egzamin-zawodowy/website.git
```
2. Open the folder with this project in a terminal.
3. ``yarn install``
4. ``yarn run dev``
## License ## License
Distributed under the MIT License. See ``LICENSE`` for more information. Distributed under the MIT License. See ``LICENSE`` for more information.

View File

@ -1,17 +1,8 @@
const { withSentryConfig } = require('@sentry/nextjs');
const CDN = process.env.NEXT_PUBLIC_CDN_URI const CDN = process.env.NEXT_PUBLIC_CDN_URI
? new URL(process.env.NEXT_PUBLIC_CDN_URI) ? new URL(process.env.NEXT_PUBLIC_CDN_URI)
: ''; : '';
const cfg = { module.exports = {
sentry: {
disableServerWebpackPlugin:
process.env.SENTRY_WEBPACK_PLUGIN_ENABLED !== 'true',
get disableClientWebpackPlugin() {
return this.disableServerWebpackPlugin;
},
},
i18n: { i18n: {
locales: ['pl'], locales: ['pl'],
defaultLocale: 'pl', defaultLocale: 'pl',
@ -34,8 +25,3 @@ const cfg = {
]; ];
}, },
}; };
module.exports = withSentryConfig(cfg, {
silent: true,
release: 'zdam-egzamin-zawodowy-website@' + process.env.NEXT_PUBLIC_VERSION,
});

View File

@ -17,14 +17,12 @@
"@material-ui/core": "^4.11.3", "@material-ui/core": "^4.11.3",
"@material-ui/icons": "^4.11.2", "@material-ui/icons": "^4.11.2",
"@material-ui/lab": "^4.0.0-alpha.57", "@material-ui/lab": "^4.0.0-alpha.57",
"@sentry/nextjs": "6.18.2",
"clsx": "^1.1.1", "clsx": "^1.1.1",
"date-fns": "^2.19.0", "date-fns": "^2.19.0",
"graphql": "^15.5.0", "graphql": "^15.5.0",
"graphql-request": "^3.4.0", "graphql-request": "^3.4.0",
"lodash": "^4.17.21", "lodash": "^4.17.21",
"next": "12.1.0", "next": "12.1.0",
"next-plausible": "^3.1.4",
"next-sitemap": "^1.6.25", "next-sitemap": "^1.6.25",
"polish-plurals": "^1.1.0", "polish-plurals": "^1.1.0",
"react": "17.0.2", "react": "17.0.2",

View File

@ -1 +0,0 @@
import './sentry.server.config'

View File

@ -1,21 +0,0 @@
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.NODE_ENV ?? 'development',
release:
'zdam-egzamin-zawodowy-website@' +
(process.env.NEXT_PUBLIC_VERSION ?? 'development'),
});
};
initSentry();

View File

@ -1,12 +1,10 @@
import { NextPage } from 'next'; import { NextPage } from 'next';
import { ErrorProps } from 'next/error'; import { ErrorProps } from 'next/error';
import * as Sentry from '@sentry/nextjs';
import { Box, Typography } from '@material-ui/core'; import { Box, Typography } from '@material-ui/core';
import Layout from 'common/Layout/Layout'; import Layout from 'common/Layout/Layout';
import Section from 'common/Section/Section'; import Section from 'common/Section/Section';
import Seo from 'common/Seo/Seo'; import Seo from 'common/Seo/Seo';
import { useEffect } from 'react';
const getTitleForStatusCode = (statusCode: number): string => { const getTitleForStatusCode = (statusCode: number): string => {
switch (statusCode) { switch (statusCode) {
@ -17,20 +15,7 @@ const getTitleForStatusCode = (statusCode: number): string => {
} }
}; };
const ErrorPage: NextPage< const ErrorPage: NextPage<ErrorProps> = ({ statusCode, title }) => {
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); const _title = title ?? getTitleForStatusCode(statusCode);
return ( return (
@ -54,26 +39,10 @@ const ErrorPage: NextPage<
); );
}; };
ErrorPage.getInitialProps = async ({ res, err, asPath }) => { ErrorPage.getInitialProps = async ({ res, err }) => {
const props = { return {
statusCode: (res ? res.statusCode : err?.statusCode) ?? 404, 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; export default ErrorPage;

View File

@ -1,25 +0,0 @@
import React, { PropsWithChildren } from 'react';
import PlausibleProvider from 'next-plausible';
type PlausibleProviderProps = PropsWithChildren<
Partial<Parameters<typeof PlausibleProvider>[0]>
>;
const MyPlausibleProvider = ({ children, ...rest }: PlausibleProviderProps) => {
return (
<PlausibleProvider
enabled={process.env.NEXT_PUBLIC_PLAUSIBLE_ENABLED === 'true'}
domain={process.env.NEXT_PUBLIC_PLAUSIBLE_DOMAIN ?? ''}
customDomain={process.env.NEXT_PUBLIC_PLAUSIBLE_CUSTOM_DOMAIN}
trackLocalhost={
process.env.NEXT_PUBLIC_PLAUSIBLE_TRACK_LOCALHOST === 'true'
}
selfHosted={process.env.NEXT_PUBLIC_PLAUSIBLE_CUSTOM_DOMAIN !== ''}
{...rest}
>
{children}
</PlausibleProvider>
);
};
export default MyPlausibleProvider;

View File

@ -1,7 +1,6 @@
import '@kichiyaki/roboto'; import '@kichiyaki/roboto';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { AppProps } from 'next/app'; import { AppProps } from 'next/app';
import PlausibleProvider from 'libs/plausible/PlausibleProvider';
import ThemeProvider from 'libs/material-ui/ThemeProvider'; import ThemeProvider from 'libs/material-ui/ThemeProvider';
const App = ({ Component, pageProps }: AppProps) => { const App = ({ Component, pageProps }: AppProps) => {
@ -14,9 +13,7 @@ const App = ({ Component, pageProps }: AppProps) => {
return ( return (
<ThemeProvider> <ThemeProvider>
<PlausibleProvider> <Component {...pageProps} />
<Component {...pageProps} />
</PlausibleProvider>
</ThemeProvider> </ThemeProvider>
); );
}; };

View File

@ -1,7 +1,6 @@
import { GetServerSideProps } from 'next'; import { GetServerSideProps } from 'next';
import { gql } from 'graphql-request'; import { gql } from 'graphql-request';
import { getServerSideSitemap } from 'next-sitemap'; import { getServerSideSitemap } from 'next-sitemap';
import * as Sentry from '@sentry/nextjs';
import { ISitemapField } from 'next-sitemap/dist/@types/interface'; import { ISitemapField } from 'next-sitemap/dist/@types/interface';
import { createClient } from 'libs/graphql'; import { createClient } from 'libs/graphql';
import { Query, QueryQualificationsArgs } from 'libs/graphql'; import { Query, QueryQualificationsArgs } from 'libs/graphql';
@ -49,7 +48,6 @@ export const getServerSideProps: GetServerSideProps = async ctx => {
} }
} catch (e) { } catch (e) {
console.log('server-sitemap.xml', e.message); console.log('server-sitemap.xml', e.message);
Sentry.captureException(e);
} }
return getServerSideSitemap(ctx, fields); return getServerSideSitemap(ctx, fields);

185
yarn.lock
View File

@ -1128,139 +1128,6 @@
dependencies: dependencies:
any-observable "^0.3.0" any-observable "^0.3.0"
"@sentry/browser@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-6.18.2.tgz#f980add635c242420a7f0c4dd3ed5668f1f39513"
integrity sha512-EsqKSNboi2gOiMuEwQranLucxrARi00y2vgUnaPXcqTKTlVlHDetoWHvq8/r29idA1JHGka5tDrwrmWccWIkrg==
dependencies:
"@sentry/core" "6.18.2"
"@sentry/types" "6.18.2"
"@sentry/utils" "6.18.2"
tslib "^1.9.3"
"@sentry/cli@^1.73.0":
version "1.73.0"
resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-1.73.0.tgz#0d0bce913e0060ae192741c6693c57e50078c886"
integrity sha512-n4YINqmoncGUkLEpd4WuW+oD+aoUyQPhRbSBSYkbCFxPPmopn1VExCB2Vvzwj7vjXYRRGkix6keBMS0LLs3A3Q==
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"
"@sentry/core@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/core/-/core-6.18.2.tgz#d27619b7b4a4b90e2cfdc254d40ee9d630b251b9"
integrity sha512-r5ad/gq5S/JHc9sd5CUhZQT9ojQ+f+thk/AoGeGawX/8HURZYAgIqD565d6FK0VsZEDkdRMl58z1Qon20h3y1g==
dependencies:
"@sentry/hub" "6.18.2"
"@sentry/minimal" "6.18.2"
"@sentry/types" "6.18.2"
"@sentry/utils" "6.18.2"
tslib "^1.9.3"
"@sentry/hub@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-6.18.2.tgz#fdb8536f61899fd48f3d1b49a6957348ad729ec5"
integrity sha512-d0AugekMkbnN12b4EXMjseJxtLPc9S20DGobCPUb4oAQT6S2oDQEj1jwP6PQ5vtgyy+GMYWxBMgqAQ4pjVYISQ==
dependencies:
"@sentry/types" "6.18.2"
"@sentry/utils" "6.18.2"
tslib "^1.9.3"
"@sentry/integrations@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-6.18.2.tgz#caed0092e8a6c9fb0b8b7efd2deef946ca76e626"
integrity sha512-jzEH15m1dewzma2Fp0ENNRUDEOI3gGPfC/+lsLAuj9AMoNZ6qykQP8cB8OPTlzIZc0oyWGAE/1LoTrndPAvoPA==
dependencies:
"@sentry/types" "6.18.2"
"@sentry/utils" "6.18.2"
localforage "^1.8.1"
tslib "^1.9.3"
"@sentry/minimal@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-6.18.2.tgz#581c2fc030b9c89f1fcdc3e4855b91ce6c95db56"
integrity sha512-n7KYuo34W2LxE+3dnZ47of7XHuORINCnXq66XH72eoj67tf0XeWbIhEJrYGmoLRyRfoCYYrBLWiDl/uTjLzrzQ==
dependencies:
"@sentry/hub" "6.18.2"
"@sentry/types" "6.18.2"
tslib "^1.9.3"
"@sentry/nextjs@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/nextjs/-/nextjs-6.18.2.tgz#573adfe524163bd15d73ef3bd9f1c19ddc21864a"
integrity sha512-/H+nnIalHRw2/BWmrjJ7145AwcPeFo03e2LuYGGuNhUmHKsioiZliz7dd7C+7epLS7cajkjmcCNqtW9jvI82hw==
dependencies:
"@sentry/core" "6.18.2"
"@sentry/hub" "6.18.2"
"@sentry/integrations" "6.18.2"
"@sentry/node" "6.18.2"
"@sentry/react" "6.18.2"
"@sentry/tracing" "6.18.2"
"@sentry/utils" "6.18.2"
"@sentry/webpack-plugin" "1.18.8"
tslib "^1.9.3"
"@sentry/node@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/node/-/node-6.18.2.tgz#0d3a294ad89434b108f79da5c4d9fcde4f251993"
integrity sha512-1S+44c09n3KVpCYjwOfnA9jKvnpPegpQWM81Nu5J6ToGx+ZiddMq6B9GRXUnFfZ7Z6fJHZzFtySasQC7KqkQoA==
dependencies:
"@sentry/core" "6.18.2"
"@sentry/hub" "6.18.2"
"@sentry/types" "6.18.2"
"@sentry/utils" "6.18.2"
cookie "^0.4.1"
https-proxy-agent "^5.0.0"
lru_map "^0.3.3"
tslib "^1.9.3"
"@sentry/react@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/react/-/react-6.18.2.tgz#9ba69862c1cf0bd9a47870c8836358db7200c421"
integrity sha512-TgCgoiduaPLq/YDh1urF+ZckIGiIzhMFPHs9tlMaqFkEwPOOENJTiPiwTs56x39/2B0tn3XNfY8Un8kG5hsINQ==
dependencies:
"@sentry/browser" "6.18.2"
"@sentry/minimal" "6.18.2"
"@sentry/types" "6.18.2"
"@sentry/utils" "6.18.2"
hoist-non-react-statics "^3.3.2"
tslib "^1.9.3"
"@sentry/tracing@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-6.18.2.tgz#163ecf0042aeb300c12952a91784fda6630085ef"
integrity sha512-hg6NLqrqJ5sUPTyWEQ2RqdnhQVnyLtx8II0IyWxQLDWD8UCe3Mu6G7mroDtakPWcP+lWz6OnKfMEfuhMcxR8fw==
dependencies:
"@sentry/hub" "6.18.2"
"@sentry/minimal" "6.18.2"
"@sentry/types" "6.18.2"
"@sentry/utils" "6.18.2"
tslib "^1.9.3"
"@sentry/types@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/types/-/types-6.18.2.tgz#f528fec8b75c19d5a6976004e71703184c6cf7be"
integrity sha512-WzpJf/Q5aORTzrSwer/As1NlO90dBAQpaHV2ikDDKqOyMWEgjKb5/4gh59p9gH8JMMnLetP1AvQel0fOj5UnUw==
"@sentry/utils@6.18.2":
version "6.18.2"
resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-6.18.2.tgz#c572a3ff49113e7dc4c97db1a18d117f199b9fff"
integrity sha512-EC619jesknyu4xpwud5WC/5odYLz6JUy7OSFy5405PpdGeh/m8XUvuJAx4zDx0Iz/Mlk0S1Md+ZcQwqkv39dkw==
dependencies:
"@sentry/types" "6.18.2"
tslib "^1.9.3"
"@sentry/webpack-plugin@1.18.8":
version "1.18.8"
resolved "https://registry.yarnpkg.com/@sentry/webpack-plugin/-/webpack-plugin-1.18.8.tgz#247a73a0aa9e28099a736bbe89ca0d35cbac7636"
integrity sha512-PtKr0NL62b5L3kPFGjwSNbIUwwcW5E5G6bQxAYZGpkgL1MFPnS4ND0SAsySuX0byQJRFFium5A19LpzyvQZSlQ==
dependencies:
"@sentry/cli" "^1.73.0"
"@sindresorhus/is@^0.14.0": "@sindresorhus/is@^0.14.0":
version "0.14.0" version "0.14.0"
resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea"
@ -2172,11 +2039,6 @@ convert-source-map@^1.7.0:
dependencies: dependencies:
safe-buffer "~5.1.1" safe-buffer "~5.1.1"
cookie@^0.4.1:
version "0.4.2"
resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432"
integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==
copy-to-clipboard@^3.3.1: copy-to-clipboard@^3.3.1:
version "3.3.1" version "3.3.1"
resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae"
@ -3433,11 +3295,6 @@ ignore@^5.2.0:
resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"
integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==
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: immutable@~3.7.6:
version "3.7.6" version "3.7.6"
resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b" resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b"
@ -4051,13 +3908,6 @@ levn@^0.4.1:
prelude-ls "^1.2.1" prelude-ls "^1.2.1"
type-check "~0.4.0" 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: lines-and-columns@^1.1.6:
version "1.2.4" version "1.2.4"
resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
@ -4117,13 +3967,6 @@ load-json-file@^4.0.0:
pify "^3.0.0" pify "^3.0.0"
strip-bom "^3.0.0" strip-bom "^3.0.0"
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: locate-path@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
@ -4261,11 +4104,6 @@ lru-cache@^6.0.0:
dependencies: dependencies:
yallist "^4.0.0" 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-error@^1, make-error@^1.1.1: make-error@^1, make-error@^1.1.1:
version "1.3.6" version "1.3.6"
resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"
@ -4362,13 +4200,6 @@ mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3:
resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113"
integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== 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: mkdirp@^1.0.4:
version "1.0.4" version "1.0.4"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
@ -4423,11 +4254,6 @@ natural-compare@^1.4.0:
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
next-plausible@^3.1.4:
version "3.1.4"
resolved "https://registry.yarnpkg.com/next-plausible/-/next-plausible-3.1.4.tgz#a386ff4e2327995cb4a1307e53e1b4af70817b52"
integrity sha512-NMLKJ0AKlKuvYU//RytyqSES5NtLRoH/ym3fCC02w2Ed1SrTgNRUrgpxyJrcguY/DYGPncQ3a0/nQ358vUTAwQ==
next-sitemap@^1.6.25: next-sitemap@^1.6.25:
version "1.9.12" version "1.9.12"
resolved "https://registry.yarnpkg.com/next-sitemap/-/next-sitemap-1.9.12.tgz#288c2dfc907039892e21eb1b0c7a94d288f323d9" resolved "https://registry.yarnpkg.com/next-sitemap/-/next-sitemap-1.9.12.tgz#288c2dfc907039892e21eb1b0c7a94d288f323d9"
@ -4528,7 +4354,7 @@ normalize-url@^4.1.0:
resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a"
integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==
npmlog@^4.0.1, npmlog@^4.1.2: npmlog@^4.0.1:
version "4.1.2" version "4.1.2"
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
@ -4948,7 +4774,7 @@ process-nextick-args@~2.0.0:
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
progress@^2.0.0, progress@^2.0.3: progress@^2.0.0:
version "2.0.3" version "2.0.3"
resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
@ -4969,11 +4795,6 @@ prop-types@^15.6.2, prop-types@^15.7.2:
object-assign "^4.1.1" object-assign "^4.1.1"
react-is "^16.8.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==
pump@^3.0.0: pump@^3.0.0:
version "3.0.0" version "3.0.0"
resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
@ -5900,7 +5721,7 @@ tsconfig-paths@^3.9.0:
minimist "^1.2.0" minimist "^1.2.0"
strip-bom "^3.0.0" strip-bom "^3.0.0"
tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: tslib@^1.8.1, tslib@^1.9.0:
version "1.14.1" version "1.14.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==