From df21f1202b19389a66cd47a894e00b18a9436b38 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 18 Jul 2021 15:15:25 -0400 Subject: [PATCH 01/81] Use inboard with Python 3.9 for back-end - Update Dockerfile for inboard: https://inboard.bws.bio - Set inboard environment variables: `APP_MODULE`, `PRE_START_PATH` - Remove references to `start-reload.sh` (not present in inboard) - Update pyproject.toml for inboard: Gunicorn 20, Uvicorn 0.14, and FastAPI 0.66 (and thereby Starlette and pydantic) are managed there. - Update Python version in pyproject.toml to 3.9 --- {{cookiecutter.project_slug}}/.env | 2 ++ {{cookiecutter.project_slug}}/README.md | 22 +------------------ .../backend/app/pyproject.toml | 7 ++---- .../backend/backend.dockerfile | 17 +++++--------- .../docker-compose.override.yml | 7 +++--- .../docker-compose.yml | 19 ++++++++-------- 6 files changed, 24 insertions(+), 50 deletions(-) diff --git a/{{cookiecutter.project_slug}}/.env b/{{cookiecutter.project_slug}}/.env index f6540eeff7..47bfdbe1c1 100644 --- a/{{cookiecutter.project_slug}}/.env +++ b/{{cookiecutter.project_slug}}/.env @@ -14,7 +14,9 @@ DOCKER_IMAGE_CELERYWORKER={{cookiecutter.docker_image_celeryworker}} DOCKER_IMAGE_FRONTEND={{cookiecutter.docker_image_frontend}} # Backend +BACKEND_APP_MODULE=app.main:app BACKEND_CORS_ORIGINS={{cookiecutter.backend_cors_origins}} +BACKEND_PRE_START_PATH=/app/prestart.sh PROJECT_NAME={{cookiecutter.project_name}} SECRET_KEY={{cookiecutter.secret_key}} FIRST_SUPERUSER={{cookiecutter.first_superuser}} diff --git a/{{cookiecutter.project_slug}}/README.md b/{{cookiecutter.project_slug}}/README.md index 5594dd546d..84d95f70c0 100644 --- a/{{cookiecutter.project_slug}}/README.md +++ b/{{cookiecutter.project_slug}}/README.md @@ -82,9 +82,7 @@ During development, you can change Docker Compose settings that will only affect The changes to that file only affect the local development environment, not the production environment. So, you can add "temporary" changes that help the development workflow. -For example, the directory with the backend code is mounted as a Docker "host volume", mapping the code you change live to the directory inside the container. That allows you to test your changes right away, without having to build the Docker image again. It should only be done during development, for production, you should build the Docker image with a recent version of the backend code. But during development, it allows you to iterate very fast. - -There is also a command override that runs `/start-reload.sh` (included in the base image) instead of the default `/start.sh` (also included in the base image). It starts a single server process (instead of multiple, as would be for production) and reloads the process whenever the code changes. Have in mind that if you have a syntax error and save the Python file, it will break and exit, and the container will stop. After that, you can restart the container by fixing the error and running again: +For example, the directory with the backend code is mounted as a Docker "host volume", mapping the code you change live to the directory inside the container. That allows you to test your changes right away, without having to build the Docker image again. It should only be done during development, for production, you should build the Docker image with a recent version of the backend code. But during development, it allows you to iterate very fast. Have in mind that if you have a syntax error and save the Python file, it will break and exit, and the container will stop. After that, you can restart the container by fixing the error and running again: ```console $ docker-compose up -d @@ -112,24 +110,6 @@ root@7f2607af31c3:/app# that means that you are in a `bash` session inside your container, as a `root` user, under the `/app` directory. -There you can use the script `/start-reload.sh` to run the debug live reloading server. You can run that script from inside the container with: - -```console -$ bash /start-reload.sh -``` - -...it will look like: - -```console -root@7f2607af31c3:/app# bash /start-reload.sh -``` - -and then hit enter. That runs the live reloading server that auto reloads when it detects code changes. - -Nevertheless, if it doesn't detect a change but a syntax error, it will just stop with an error. But as the container is still alive and you are in a Bash session, you can quickly restart it after fixing the error, running the same command ("up arrow" and "Enter"). - -...this previous detail is what makes it useful to have the container alive doing nothing and then, in a Bash session, make it run the live reload server. - ### Backend tests To test the backend run: diff --git a/{{cookiecutter.project_slug}}/backend/app/pyproject.toml b/{{cookiecutter.project_slug}}/backend/app/pyproject.toml index ea4e04e198..cd9a9949fa 100644 --- a/{{cookiecutter.project_slug}}/backend/app/pyproject.toml +++ b/{{cookiecutter.project_slug}}/backend/app/pyproject.toml @@ -5,19 +5,16 @@ description = "" authors = ["Admin "] [tool.poetry.dependencies] -python = "^3.7" -uvicorn = "^0.11.3" -fastapi = "^0.54.1" +python = "^3.9" +inboard = {version = "^0.10.2", extras = ["fastapi"]} python-multipart = "^0.0.5" email-validator = "^1.0.5" requests = "^2.23.0" celery = "^4.4.2" passlib = {extras = ["bcrypt"], version = "^1.7.2"} tenacity = "^6.1.0" -pydantic = "^1.4" emails = "^0.5.15" raven = "^6.10.0" -gunicorn = "^20.0.4" jinja2 = "^2.11.2" psycopg2-binary = "^2.8.5" alembic = "^1.4.2" diff --git a/{{cookiecutter.project_slug}}/backend/backend.dockerfile b/{{cookiecutter.project_slug}}/backend/backend.dockerfile index 8c39c502af..fdd16c5b43 100644 --- a/{{cookiecutter.project_slug}}/backend/backend.dockerfile +++ b/{{cookiecutter.project_slug}}/backend/backend.dockerfile @@ -1,16 +1,10 @@ -FROM tiangolo/uvicorn-gunicorn-fastapi:python3.7 - -WORKDIR /app/ - -# Install Poetry -RUN curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | POETRY_HOME=/opt/poetry python && \ - cd /usr/local/bin && \ - ln -s /opt/poetry/bin/poetry && \ - poetry config virtualenvs.create false +FROM ghcr.io/br3ndonland/inboard:fastapi-python3.9 # Copy poetry.lock* in case it doesn't exist in the repo COPY ./app/pyproject.toml ./app/poetry.lock* /app/ +WORKDIR /app/ + # Allow installing dev dependencies to run tests ARG INSTALL_DEV=false RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; else poetry install --no-root --no-dev ; fi" @@ -21,5 +15,6 @@ RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; els ARG INSTALL_JUPYTER=false RUN bash -c "if [ $INSTALL_JUPYTER == 'true' ] ; then pip install jupyterlab ; fi" -COPY ./app /app -ENV PYTHONPATH=/app +ARG BACKEND_APP_MODULE=app.main:app BACKEND_PRE_START_PATH=/app/prestart.sh +ENV APP_MODULE=${BACKEND_APP_MODULE} PRE_START_PATH=${BACKEND_PRE_START_PATH} +COPY ./app/ /app/ diff --git a/{{cookiecutter.project_slug}}/docker-compose.override.yml b/{{cookiecutter.project_slug}}/docker-compose.override.yml index cb9b60950f..5c57620d8f 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.override.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.override.yml @@ -1,6 +1,5 @@ version: "3.3" services: - proxy: ports: - "80:80" @@ -40,7 +39,7 @@ services: ports: - "8888:8888" volumes: - - ./backend/app:/app + - ./backend/app/app:/app/app environment: - JUPYTER=jupyter lab --ip=0.0.0.0 --allow-root --NotebookApp.custom_display_url=http://127.0.0.1:8888 - SERVER_HOST=http://${DOMAIN?Variable not set} @@ -48,10 +47,10 @@ services: context: ./backend dockerfile: backend.dockerfile args: + BACKEND_APP_MODULE: ${BACKEND_APP_MODULE-app.main:app} + BACKEND_PRE_START_PATH: ${BACKEND_PRE_START_PATH-/app/prestart.sh} INSTALL_DEV: ${INSTALL_DEV-true} INSTALL_JUPYTER: ${INSTALL_JUPYTER-true} - # command: bash -c "while true; do sleep 1; done" # Infinite loop to keep container live doing nothing - command: /start-reload.sh labels: - traefik.enable=true - traefik.constraint-label-stack=${TRAEFIK_TAG?Variable not set} diff --git a/{{cookiecutter.project_slug}}/docker-compose.yml b/{{cookiecutter.project_slug}}/docker-compose.yml index fcc48f529d..5e89373107 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.yml @@ -1,6 +1,5 @@ version: "3.3" services: - proxy: image: traefik:v2.2 networks: @@ -62,7 +61,7 @@ services: # Redirect a domain without www to www # To enable it remove the previous line and uncomment the next # - traefik.http.middlewares.${STACK_NAME}-www-redirect.redirectregex.replacement=https://www.${DOMAIN}/$${3} - # Middleware to redirect www, to disable it remove the next line + # Middleware to redirect www, to disable it remove the next line - traefik.http.routers.${STACK_NAME?Variable not set}-proxy-https.middlewares=${STACK_NAME?Variable not set}-www-redirect # Middleware to redirect www, and redirect HTTP to HTTPS # to disable www redirection remove the section: ${STACK_NAME?Variable not set}-www-redirect, @@ -110,7 +109,7 @@ services: # image: rabbitmq:3-management # # You also have to change the flower command - + flower: image: mher/flower networks: @@ -136,9 +135,9 @@ services: - traefik.http.routers.${STACK_NAME?Variable not set}-flower-https.tls=true - traefik.http.routers.${STACK_NAME?Variable not set}-flower-https.tls.certresolver=le - traefik.http.services.${STACK_NAME?Variable not set}-flower.loadbalancer.server.port=5555 - + backend: - image: '${DOCKER_IMAGE_BACKEND?Variable not set}:${TAG-latest}' + image: "${DOCKER_IMAGE_BACKEND?Variable not set}:${TAG-latest}" depends_on: - db env_file: @@ -152,6 +151,8 @@ services: context: ./backend dockerfile: backend.dockerfile args: + BACKEND_APP_MODULE: ${BACKEND_APP_MODULE-app.main:app} + BACKEND_PRE_START_PATH: ${BACKEND_PRE_START_PATH-/app/prestart.sh} INSTALL_DEV: ${INSTALL_DEV-false} deploy: labels: @@ -159,9 +160,9 @@ services: - traefik.constraint-label-stack=${TRAEFIK_TAG?Variable not set} - traefik.http.routers.${STACK_NAME?Variable not set}-backend-http.rule=PathPrefix(`/api`) || PathPrefix(`/docs`) || PathPrefix(`/redoc`) - traefik.http.services.${STACK_NAME?Variable not set}-backend.loadbalancer.server.port=80 - + celeryworker: - image: '${DOCKER_IMAGE_CELERYWORKER?Variable not set}:${TAG-latest}' + image: "${DOCKER_IMAGE_CELERYWORKER?Variable not set}:${TAG-latest}" depends_on: - db - queue @@ -177,9 +178,9 @@ services: dockerfile: celeryworker.dockerfile args: INSTALL_DEV: ${INSTALL_DEV-false} - + frontend: - image: '${DOCKER_IMAGE_FRONTEND?Variable not set}:${TAG-latest}' + image: "${DOCKER_IMAGE_FRONTEND?Variable not set}:${TAG-latest}" build: context: ./frontend args: From bc8d9d5f2952b8ea85bcd35d91468d108f080215 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 18 Jul 2021 15:18:38 -0400 Subject: [PATCH 02/81] Update Poetry build backend to poetry-core https://python-poetry.org/docs/pyproject/#poetry-and-pep-517 --- {{cookiecutter.project_slug}}/backend/app/pyproject.toml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/{{cookiecutter.project_slug}}/backend/app/pyproject.toml b/{{cookiecutter.project_slug}}/backend/app/pyproject.toml index cd9a9949fa..c3d60d19b3 100644 --- a/{{cookiecutter.project_slug}}/backend/app/pyproject.toml +++ b/{{cookiecutter.project_slug}}/backend/app/pyproject.toml @@ -37,7 +37,7 @@ multi_line_output = 3 include_trailing_comma = true force_grid_wrap = 0 line_length = 88 -[build-system] -requires = ["poetry>=0.12"] -build-backend = "poetry.masonry.api" +[build-system] +requires = ["poetry-core>=1.0.0"] +build-backend = "poetry.core.masonry.api" From f17cb9d0e3eb270d5498611aef012798be2058be Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 18 Jul 2021 15:19:51 -0400 Subject: [PATCH 03/81] Restrict SQLAlchemy to 1.3 https://docs.sqlalchemy.org/en/14/changelog/migration_14.html The previous SQLAlchemy version constraint in pyproject.toml, `sqlalchemy = "^1.3.16"`, allowed SQLAlchemy 1.4 to be installed. SQLAlchemy 1.4 includes many API changes, and should not be installed until the back-end Python application logic has been updated. This commit will update the version constraint to `sqlalchemy = "~1.3"`, which allows further updates to SQLAlchemy 1.3, but not SQLAlchemy 1.4. See https://semver.npmjs.com/ for a helpful demonstration of this. This commit will also install `psycopg2` through SQLAlchemy for maximum compatibility. --- {{cookiecutter.project_slug}}/backend/app/pyproject.toml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/{{cookiecutter.project_slug}}/backend/app/pyproject.toml b/{{cookiecutter.project_slug}}/backend/app/pyproject.toml index c3d60d19b3..a245c8bf5e 100644 --- a/{{cookiecutter.project_slug}}/backend/app/pyproject.toml +++ b/{{cookiecutter.project_slug}}/backend/app/pyproject.toml @@ -16,9 +16,8 @@ tenacity = "^6.1.0" emails = "^0.5.15" raven = "^6.10.0" jinja2 = "^2.11.2" -psycopg2-binary = "^2.8.5" alembic = "^1.4.2" -sqlalchemy = "^1.3.16" +sqlalchemy = {extras = ["postgresql_psycopg2binary"], version = "~1.3"} pytest = "^5.4.1" python-jose = {extras = ["cryptography"], version = "^3.1.0"} From 16130f03ed382bd60d08799b4760de453bb179dc Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 18 Jul 2021 17:43:45 -0400 Subject: [PATCH 04/81] Version-control `poetry.lock` with Git MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit tiangolo/full-stack-fastapi-postgresql#69 tiangolo/full-stack-fastapi-postgresql#123 tiangolo/full-stack-fastapi-postgresql#144 tiangolo/full-stack-fastapi-postgresql@00297f9 Commit 00297f9 gitignored poetry.lock. This commit will add poetry.lock to version control with Git to avoid dependency resolution errors during Docker builds. There is no established convention for working with Poetry in Docker, so developers have to consider each use case individually. See: https://github.com/python-poetry/poetry/discussions/1879#discussioncomment-346113 In this project, the Dockerfile copies poetry.lock into the Docker image, but there's no step to generate poetry.lock in the first place. Without poetry.lock, dependency resolutions are commonly seen, such as: ```text ❯ bash scripts/test.sh WARNING: The following deploy sub-keys are not supported and have been ignored: labels WARNING: The following deploy sub-keys are not supported and have been ignored: labels WARNING: The following deploy sub-keys are not supported and have been ignored: labels WARNING: The following deploy sub-keys are not supported and have been ignored: labels WARNING: The following deploy sub-keys are not supported and have been ignored: labels db uses an image, skipping flower uses an image, skipping pgadmin uses an image, skipping proxy uses an image, skipping queue uses an image, skipping Building backend [+] Building 15.3s (8/10) => [internal] load build definition from backend.dockerfile 0.2s => => transferring dockerfile: 797B 0.1s => [internal] load .dockerignore 0.1s => => transferring context: 2B 0.0s => [internal] load metadata for ghcr.io/br3ndonland/inboard:fastapi-python3.9 0.3s => [1/6] FROM ghcr.io/br3ndonland/inboard:fastapi-python3.9@sha256:5591f436a37490a1569afd9e55ae 0.0s => [internal] load build context 0.0s => => transferring context: 64.67kB 0.0s => CACHED [2/6] COPY ./app/pyproject.toml ./app/poetry.lock* /app/ 0.0s => CACHED [3/6] WORKDIR /app/ 0.0s => ERROR [4/6] RUN bash -c "if [ true == 'true' ] ; then poetry install --no-root ; else poetr 14.4s ------ > [4/6] RUN bash -c "if [ true == 'true' ] ; then poetry install --no-root ; else poetry install --no-root --no-dev ; fi": Skipping virtualenv creation, as specified in config file. Installing dependencies from lock file Warning: The lock file is not up to date with the latest changes in pyproject.toml. You may be getting dependencies. Run update to update them. SolverProblemError Because app depends on sqlalchemy-stubs (^0.3) which doesn't match any versions, version solving failed. at /opt/poetry/lib/poetry/puzzle/solver.py:241 in _solve 237│ packages = result.packages 238│ except OverrideNeeded as e: 239│ return self.solve_in_compatibility_mode(e.overrides, use_latest=use_latest) 240│ except SolveFailure as e: → 241│ raise SolverProblemError(e) 242│ 243│ results = dict( 244│ depth_first_search( 245│ PackageNode(self._package, packages), aggregate_package_nodes ------ executor failed running [/bin/sh -c bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; else poetry install --no-root --no-dev ; fi"]: exit code: 1 ERROR: Service 'backend' failed to build : Build failed ``` --- .gitignore | 2 +- .../backend/app/poetry.lock | 1805 +++++++++++++++++ 2 files changed, 1806 insertions(+), 1 deletion(-) create mode 100644 {{cookiecutter.project_slug}}/backend/app/poetry.lock diff --git a/.gitignore b/.gitignore index 5d778b370c..e6d43a8c94 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ .vscode testing-project .mypy_cache -poetry.lock +# poetry.lock dev-link/ diff --git a/{{cookiecutter.project_slug}}/backend/app/poetry.lock b/{{cookiecutter.project_slug}}/backend/app/poetry.lock new file mode 100644 index 0000000000..2182b59d19 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/poetry.lock @@ -0,0 +1,1805 @@ +[[package]] +name = "alembic" +version = "1.6.5" +description = "A database migration tool for SQLAlchemy." +category = "main" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" + +[package.dependencies] +Mako = "*" +python-dateutil = "*" +python-editor = ">=0.3" +SQLAlchemy = ">=1.3.0" + +[[package]] +name = "amqp" +version = "2.6.1" +description = "Low-level AMQP client for Python (fork of amqplib)." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.dependencies] +vine = ">=1.1.3,<5.0.0a1" + +[[package]] +name = "appdirs" +version = "1.4.4" +description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "asgiref" +version = "3.4.1" +description = "ASGI specs, helper code, and adapters" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.extras] +tests = ["pytest", "pytest-asyncio", "mypy (>=0.800)"] + +[[package]] +name = "atomicwrites" +version = "1.4.0" +description = "Atomic file writes." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "attrs" +version = "21.2.0" +description = "Classes Without Boilerplate" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.extras] +dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit"] +docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"] +tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface"] +tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins"] + +[[package]] +name = "autoflake" +version = "1.4" +description = "Removes unused imports and unused variables" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +pyflakes = ">=1.1.0" + +[[package]] +name = "bcrypt" +version = "3.2.0" +description = "Modern password hashing for your software and your servers" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +cffi = ">=1.1" +six = ">=1.4.1" + +[package.extras] +tests = ["pytest (>=3.2.1,!=3.3.0)"] +typecheck = ["mypy"] + +[[package]] +name = "billiard" +version = "3.6.4.0" +description = "Python multiprocessing fork with improvements and bugfixes" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "black" +version = "19.10b0" +description = "The uncompromising code formatter." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +appdirs = "*" +attrs = ">=18.1.0" +click = ">=6.5" +pathspec = ">=0.6,<1" +regex = "*" +toml = ">=0.9.4" +typed-ast = ">=1.4.0" + +[package.extras] +d = ["aiohttp (>=3.3.2)", "aiohttp-cors"] + +[[package]] +name = "cachetools" +version = "4.2.2" +description = "Extensible memoizing collections and decorators" +category = "main" +optional = false +python-versions = "~=3.5" + +[[package]] +name = "celery" +version = "4.4.7" +description = "Distributed Task Queue." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.dependencies] +billiard = ">=3.6.3.0,<4.0" +kombu = ">=4.6.10,<4.7" +pytz = ">0.0-dev" +vine = "1.3.0" + +[package.extras] +arangodb = ["pyArango (>=1.3.2)"] +auth = ["cryptography"] +azureblockblob = ["azure-storage (==0.36.0)", "azure-common (==1.1.5)", "azure-storage-common (==1.1.0)"] +brotli = ["brotli (>=1.0.0)", "brotlipy (>=0.7.0)"] +cassandra = ["cassandra-driver (<3.21.0)"] +consul = ["python-consul"] +cosmosdbsql = ["pydocumentdb (==2.3.2)"] +couchbase = ["couchbase-cffi (<3.0.0)", "couchbase (<3.0.0)"] +couchdb = ["pycouchdb"] +django = ["Django (>=1.11)"] +dynamodb = ["boto3 (>=1.9.178)"] +elasticsearch = ["elasticsearch"] +eventlet = ["eventlet (>=0.24.1)"] +gevent = ["gevent"] +librabbitmq = ["librabbitmq (>=1.5.0)"] +lzma = ["backports.lzma"] +memcache = ["pylibmc"] +mongodb = ["pymongo[srv] (>=3.3.0)"] +msgpack = ["msgpack"] +pymemcache = ["python-memcached"] +pyro = ["pyro4"] +redis = ["redis (>=3.2.0)"] +riak = ["riak (>=2.0)"] +s3 = ["boto3 (>=1.9.125)"] +slmq = ["softlayer-messaging (>=1.0.3)"] +solar = ["ephem"] +sqlalchemy = ["sqlalchemy"] +sqs = ["boto3 (>=1.9.125)", "pycurl (==7.43.0.5)"] +tblib = ["tblib (>=1.3.0)", "tblib (>=1.5.0)"] +yaml = ["PyYAML (>=3.10)"] +zookeeper = ["kazoo (>=1.3.1)"] +zstd = ["zstandard"] + +[[package]] +name = "certifi" +version = "2021.5.30" +description = "Python package for providing Mozilla's CA Bundle." +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "cffi" +version = "1.14.6" +description = "Foreign Function Interface for Python calling C code." +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +pycparser = "*" + +[[package]] +name = "chardet" +version = "4.0.0" +description = "Universal encoding detector for Python 2 and 3" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "charset-normalizer" +version = "2.0.3" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +category = "main" +optional = false +python-versions = ">=3.5.0" + +[package.extras] +unicode_backport = ["unicodedata2"] + +[[package]] +name = "click" +version = "8.0.1" +description = "Composable command line interface toolkit" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[[package]] +name = "colorama" +version = "0.4.4" +description = "Cross-platform colored terminal text." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "coverage" +version = "5.5" +description = "Code coverage measurement for Python" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" + +[package.extras] +toml = ["toml"] + +[[package]] +name = "cryptography" +version = "3.4.7" +description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +cffi = ">=1.12" + +[package.extras] +docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx-rtd-theme"] +docstest = ["doc8", "pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"] +pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"] +sdist = ["setuptools-rust (>=0.11.4)"] +ssh = ["bcrypt (>=3.1.5)"] +test = ["pytest (>=6.0)", "pytest-cov", "pytest-subtests", "pytest-xdist", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"] + +[[package]] +name = "cssselect" +version = "1.1.0" +description = "cssselect parses CSS3 Selectors and translates them to XPath 1.0" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "cssutils" +version = "2.3.0" +description = "A CSS Cascading Style Sheets library for Python" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.extras] +docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"] +testing = ["pytest (>=4.6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "mock", "lxml", "cssselect", "pytest-black (>=0.3.7)", "pytest-mypy", "importlib-resources"] + +[[package]] +name = "dnspython" +version = "2.1.0" +description = "DNS toolkit" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.extras] +dnssec = ["cryptography (>=2.6)"] +doh = ["requests", "requests-toolbelt"] +idna = ["idna (>=2.1)"] +curio = ["curio (>=1.2)", "sniffio (>=1.1)"] +trio = ["trio (>=0.14.0)", "sniffio (>=1.1)"] + +[[package]] +name = "ecdsa" +version = "0.17.0" +description = "ECDSA cryptographic signature library (pure python)" +category = "main" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" + +[package.dependencies] +six = ">=1.9.0" + +[package.extras] +gmpy = ["gmpy"] +gmpy2 = ["gmpy2"] + +[[package]] +name = "email-validator" +version = "1.1.3" +description = "A robust email syntax and deliverability validation library for Python 2.x/3.x." +category = "main" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" + +[package.dependencies] +dnspython = ">=1.15.0" +idna = ">=2.0.0" + +[[package]] +name = "emails" +version = "0.5.15" +description = "Modern python library for emails." +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +chardet = "*" +cssutils = "*" +lxml = "*" +premailer = "*" +python-dateutil = "*" +requests = "*" + +[[package]] +name = "fastapi" +version = "0.66.0" +description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +pydantic = ">=1.6.2,<1.7 || >1.7,<1.7.1 || >1.7.1,<1.7.2 || >1.7.2,<1.7.3 || >1.7.3,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0" +starlette = "0.14.2" + +[package.extras] +all = ["requests (>=2.24.0,<3.0.0)", "aiofiles (>=0.5.0,<0.6.0)", "jinja2 (>=2.11.2,<3.0.0)", "python-multipart (>=0.0.5,<0.0.6)", "itsdangerous (>=1.1.0,<2.0.0)", "pyyaml (>=5.3.1,<6.0.0)", "graphene (>=2.1.8,<3.0.0)", "ujson (>=4.0.1,<5.0.0)", "orjson (>=3.2.1,<4.0.0)", "email_validator (>=1.1.1,<2.0.0)", "uvicorn[standard] (>=0.12.0,<0.14.0)", "async_exit_stack (>=1.0.1,<2.0.0)", "async_generator (>=1.10,<2.0.0)"] +dev = ["python-jose[cryptography] (>=3.1.0,<4.0.0)", "passlib[bcrypt] (>=1.7.2,<2.0.0)", "autoflake (>=1.3.1,<2.0.0)", "flake8 (>=3.8.3,<4.0.0)", "uvicorn[standard] (>=0.12.0,<0.14.0)", "graphene (>=2.1.8,<3.0.0)"] +doc = ["mkdocs (>=1.1.2,<2.0.0)", "mkdocs-material (>=7.1.9,<8.0.0)", "markdown-include (>=0.6.0,<0.7.0)", "mkdocs-markdownextradata-plugin (>=0.1.7,<0.2.0)", "typer-cli (>=0.0.12,<0.0.13)", "pyyaml (>=5.3.1,<6.0.0)"] +test = ["pytest (==5.4.3)", "pytest-cov (==2.10.0)", "pytest-asyncio (>=0.14.0,<0.15.0)", "mypy (==0.812)", "flake8 (>=3.8.3,<4.0.0)", "black (==20.8b1)", "isort (>=5.0.6,<6.0.0)", "requests (>=2.24.0,<3.0.0)", "httpx (>=0.14.0,<0.15.0)", "email_validator (>=1.1.1,<2.0.0)", "sqlalchemy (>=1.3.18,<1.4.0)", "peewee (>=3.13.3,<4.0.0)", "databases[sqlite] (>=0.3.2,<0.4.0)", "orjson (>=3.2.1,<4.0.0)", "ujson (>=4.0.1,<5.0.0)", "async_exit_stack (>=1.0.1,<2.0.0)", "async_generator (>=1.10,<2.0.0)", "python-multipart (>=0.0.5,<0.0.6)", "aiofiles (>=0.5.0,<0.6.0)", "flask (>=1.1.2,<2.0.0)"] + +[[package]] +name = "flake8" +version = "3.9.2" +description = "the modular source code checker: pep8 pyflakes and co" +category = "dev" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" + +[package.dependencies] +mccabe = ">=0.6.0,<0.7.0" +pycodestyle = ">=2.7.0,<2.8.0" +pyflakes = ">=2.3.0,<2.4.0" + +[[package]] +name = "gunicorn" +version = "20.1.0" +description = "WSGI HTTP Server for UNIX" +category = "main" +optional = false +python-versions = ">=3.5" + +[package.extras] +eventlet = ["eventlet (>=0.24.1)"] +gevent = ["gevent (>=1.4.0)"] +setproctitle = ["setproctitle"] +tornado = ["tornado (>=0.2)"] + +[[package]] +name = "h11" +version = "0.12.0" +description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" +category = "main" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "httptools" +version = "0.2.0" +description = "A collection of framework independent HTTP protocol utils." +category = "main" +optional = false +python-versions = "*" + +[package.extras] +test = ["Cython (==0.29.22)"] + +[[package]] +name = "idna" +version = "3.2" +description = "Internationalized Domain Names in Applications (IDNA)" +category = "main" +optional = false +python-versions = ">=3.5" + +[[package]] +name = "inboard" +version = "0.10.2" +description = "Docker images and utilities to power your Python APIs and help you ship faster." +category = "main" +optional = false +python-versions = ">=3.8,<4.0" + +[package.dependencies] +fastapi = {version = ">=0.66,<0.67", optional = true, markers = "extra == \"all\" or extra == \"fastapi\""} +gunicorn = ">=20,<21" +toml = {version = ">=0.10", optional = true, markers = "extra == \"all\" or extra == \"fastapi\""} +uvicorn = {version = ">=0.14,<0.15", extras = ["standard"]} + +[package.extras] +all = ["fastapi (>=0.66,<0.67)", "toml (>=0.10)"] +fastapi = ["fastapi (>=0.66,<0.67)", "toml (>=0.10)"] +starlette = ["starlette (>=0.14,<0.15)"] + +[[package]] +name = "isort" +version = "4.3.21" +description = "A Python utility / library to sort Python imports." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.extras] +pipfile = ["pipreqs", "requirementslib"] +pyproject = ["toml"] +requirements = ["pipreqs", "pip-api"] +xdg_home = ["appdirs (>=1.4.0)"] + +[[package]] +name = "jinja2" +version = "2.11.3" +description = "A very fast and expressive template engine." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.dependencies] +MarkupSafe = ">=0.23" + +[package.extras] +i18n = ["Babel (>=0.8)"] + +[[package]] +name = "kombu" +version = "4.6.11" +description = "Messaging library for Python." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.dependencies] +amqp = ">=2.6.0,<2.7" + +[package.extras] +azureservicebus = ["azure-servicebus (>=0.21.1)"] +azurestoragequeues = ["azure-storage-queue"] +consul = ["python-consul (>=0.6.0)"] +librabbitmq = ["librabbitmq (>=1.5.2)"] +mongodb = ["pymongo (>=3.3.0)"] +msgpack = ["msgpack"] +pyro = ["pyro4"] +qpid = ["qpid-python (>=0.26)", "qpid-tools (>=0.26)"] +redis = ["redis (>=3.3.11)"] +slmq = ["softlayer-messaging (>=1.0.3)"] +sqlalchemy = ["sqlalchemy"] +sqs = ["boto3 (>=1.4.4)", "pycurl (==7.43.0.2)"] +yaml = ["PyYAML (>=3.10)"] +zookeeper = ["kazoo (>=1.3.1)"] + +[[package]] +name = "lxml" +version = "4.6.3" +description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, != 3.4.*" + +[package.extras] +cssselect = ["cssselect (>=0.7)"] +html5 = ["html5lib"] +htmlsoup = ["beautifulsoup4"] +source = ["Cython (>=0.29.7)"] + +[[package]] +name = "mako" +version = "1.1.4" +description = "A super-fast templating language that borrows the best ideas from the existing templating languages." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.dependencies] +MarkupSafe = ">=0.9.2" + +[package.extras] +babel = ["babel"] +lingua = ["lingua"] + +[[package]] +name = "markupsafe" +version = "2.0.1" +description = "Safely add untrusted strings to HTML/XML markup." +category = "main" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "mccabe" +version = "0.6.1" +description = "McCabe checker, plugin for flake8" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "more-itertools" +version = "8.8.0" +description = "More routines for operating on iterables, beyond itertools" +category = "main" +optional = false +python-versions = ">=3.5" + +[[package]] +name = "mypy" +version = "0.770" +description = "Optional static typing for Python" +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +mypy-extensions = ">=0.4.3,<0.5.0" +typed-ast = ">=1.4.0,<1.5.0" +typing-extensions = ">=3.7.4" + +[package.extras] +dmypy = ["psutil (>=4.0)"] + +[[package]] +name = "mypy-extensions" +version = "0.4.3" +description = "Experimental type system extensions for programs checked with the mypy typechecker." +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "packaging" +version = "21.0" +description = "Core utilities for Python packages" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +pyparsing = ">=2.0.2" + +[[package]] +name = "passlib" +version = "1.7.4" +description = "comprehensive password hashing framework supporting over 30 schemes" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +bcrypt = {version = ">=3.1.0", optional = true, markers = "extra == \"bcrypt\""} + +[package.extras] +argon2 = ["argon2-cffi (>=18.2.0)"] +bcrypt = ["bcrypt (>=3.1.0)"] +build_docs = ["sphinx (>=1.6)", "sphinxcontrib-fulltoc (>=1.2.0)", "cloud-sptheme (>=1.10.1)"] +totp = ["cryptography"] + +[[package]] +name = "pathspec" +version = "0.9.0" +description = "Utility library for gitignore style pattern matching of file paths." +category = "dev" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" + +[[package]] +name = "pluggy" +version = "0.13.1" +description = "plugin and hook calling mechanisms for python" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.extras] +dev = ["pre-commit", "tox"] + +[[package]] +name = "premailer" +version = "3.9.0" +description = "Turns CSS blocks into style attributes" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +cachetools = "*" +cssselect = "*" +cssutils = "*" +lxml = "*" +requests = "*" + +[package.extras] +dev = ["tox", "twine", "therapist", "black", "flake8", "wheel"] +test = ["nose", "mock"] + +[[package]] +name = "psycopg2-binary" +version = "2.9.1" +description = "psycopg2 - Python-PostgreSQL Database Adapter" +category = "main" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "py" +version = "1.10.0" +description = "library with cross-python path, ini-parsing, io, code, log facilities" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "pyasn1" +version = "0.4.8" +description = "ASN.1 types and codecs" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "pycodestyle" +version = "2.7.0" +description = "Python style guide checker" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "pycparser" +version = "2.20" +description = "C parser in Python" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "pydantic" +version = "1.8.2" +description = "Data validation and settings management using python 3.6 type hinting" +category = "main" +optional = false +python-versions = ">=3.6.1" + +[package.dependencies] +typing-extensions = ">=3.7.4.3" + +[package.extras] +dotenv = ["python-dotenv (>=0.10.4)"] +email = ["email-validator (>=1.0.3)"] + +[[package]] +name = "pyflakes" +version = "2.3.1" +description = "passive checker of Python programs" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "pyparsing" +version = "2.4.7" +description = "Python parsing module" +category = "main" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "pytest" +version = "5.4.3" +description = "pytest: simple powerful testing with Python" +category = "main" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""} +attrs = ">=17.4.0" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +more-itertools = ">=4.0.0" +packaging = "*" +pluggy = ">=0.12,<1.0" +py = ">=1.5.0" +wcwidth = "*" + +[package.extras] +checkqa-mypy = ["mypy (==v0.761)"] +testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"] + +[[package]] +name = "pytest-cov" +version = "2.12.1" +description = "Pytest plugin for measuring coverage." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.dependencies] +coverage = ">=5.2.1" +pytest = ">=4.6" +toml = "*" + +[package.extras] +testing = ["fields", "hunter", "process-tests", "six", "pytest-xdist", "virtualenv"] + +[[package]] +name = "python-dateutil" +version = "2.8.2" +description = "Extensions to the standard Python datetime module" +category = "main" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" + +[package.dependencies] +six = ">=1.5" + +[[package]] +name = "python-dotenv" +version = "0.18.0" +description = "Read key-value pairs from a .env file and set them as environment variables" +category = "main" +optional = false +python-versions = "*" + +[package.extras] +cli = ["click (>=5.0)"] + +[[package]] +name = "python-editor" +version = "1.0.4" +description = "Programmatically open an editor, capture the result." +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "python-jose" +version = "3.3.0" +description = "JOSE implementation in Python" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +cryptography = {version = ">=3.4.0", optional = true, markers = "extra == \"cryptography\""} +ecdsa = "!=0.15" +pyasn1 = "*" +rsa = "*" + +[package.extras] +cryptography = ["cryptography (>=3.4.0)"] +pycrypto = ["pycrypto (>=2.6.0,<2.7.0)", "pyasn1"] +pycryptodome = ["pycryptodome (>=3.3.1,<4.0.0)", "pyasn1"] + +[[package]] +name = "python-multipart" +version = "0.0.5" +description = "A streaming multipart parser for Python" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +six = ">=1.4.0" + +[[package]] +name = "pytz" +version = "2021.1" +description = "World timezone definitions, modern and historical" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "pyyaml" +version = "5.4.1" +description = "YAML parser and emitter for Python" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" + +[[package]] +name = "raven" +version = "6.10.0" +description = "Raven is a client for Sentry (https://getsentry.com)" +category = "main" +optional = false +python-versions = "*" + +[package.extras] +flask = ["Flask (>=0.8)", "blinker (>=1.1)"] +tests = ["bottle", "celery (>=2.5)", "coverage (<4)", "exam (>=0.5.2)", "flake8 (==3.5.0)", "logbook", "mock", "nose", "pytz", "pytest (>=3.2.0,<3.3.0)", "pytest-timeout (==1.2.1)", "pytest-xdist (==1.18.2)", "pytest-pythonpath (==0.7.2)", "pytest-cov (==2.5.1)", "pytest-flake8 (==1.0.0)", "requests", "tornado (>=4.1,<5.0)", "tox", "webob", "webtest", "wheel", "anyjson", "zconfig", "Flask (>=0.8)", "blinker (>=1.1)", "Flask-Login (>=0.2.0)", "blinker (>=1.1)", "sanic (>=0.7.0)", "aiohttp"] + +[[package]] +name = "regex" +version = "2021.7.6" +description = "Alternative regular expression module, to replace re." +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "requests" +version = "2.26.0" +description = "Python HTTP for Humans." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = {version = ">=2.0.0,<2.1.0", markers = "python_version >= \"3\""} +idna = {version = ">=2.5,<4", markers = "python_version >= \"3\""} +urllib3 = ">=1.21.1,<1.27" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] +use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"] + +[[package]] +name = "rsa" +version = "4.7.2" +description = "Pure-Python RSA implementation" +category = "main" +optional = false +python-versions = ">=3.5, <4" + +[package.dependencies] +pyasn1 = ">=0.1.3" + +[[package]] +name = "six" +version = "1.16.0" +description = "Python 2 and 3 compatibility utilities" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "sqlalchemy" +version = "1.3.24" +description = "Database Abstraction Library" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.dependencies] +psycopg2-binary = {version = "*", optional = true, markers = "extra == \"postgresql_psycopg2binary\""} + +[package.extras] +mssql = ["pyodbc"] +mssql_pymssql = ["pymssql"] +mssql_pyodbc = ["pyodbc"] +mysql = ["mysqlclient"] +oracle = ["cx-oracle"] +postgresql = ["psycopg2"] +postgresql_pg8000 = ["pg8000 (<1.16.6)"] +postgresql_psycopg2binary = ["psycopg2-binary"] +postgresql_psycopg2cffi = ["psycopg2cffi"] +pymysql = ["pymysql (<1)", "pymysql"] + +[[package]] +name = "sqlalchemy-stubs" +version = "0.3" +description = "SQLAlchemy stubs and mypy plugin" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +mypy = ">=0.720" +typing-extensions = ">=3.7.4" + +[[package]] +name = "starlette" +version = "0.14.2" +description = "The little ASGI library that shines." +category = "main" +optional = false +python-versions = ">=3.6" + +[package.extras] +full = ["aiofiles", "graphene", "itsdangerous", "jinja2", "python-multipart", "pyyaml", "requests"] + +[[package]] +name = "tenacity" +version = "6.3.1" +description = "Retry code until it succeeds" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +six = ">=1.9.0" + +[package.extras] +doc = ["reno", "sphinx", "tornado (>=4.5)"] + +[[package]] +name = "toml" +version = "0.10.2" +description = "Python Library for Tom's Obvious, Minimal Language" +category = "main" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "typed-ast" +version = "1.4.3" +description = "a fork of Python 2 and 3 ast modules with type comment support" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "typing-extensions" +version = "3.10.0.0" +description = "Backported and Experimental Type Hints for Python 3.5+" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "urllib3" +version = "1.26.6" +description = "HTTP library with thread-safe connection pooling, file post, and more." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" + +[package.extras] +brotli = ["brotlipy (>=0.6.0)"] +secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"] +socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] + +[[package]] +name = "uvicorn" +version = "0.14.0" +description = "The lightning-fast ASGI server." +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +asgiref = ">=3.3.4" +click = ">=7" +colorama = {version = ">=0.4", optional = true, markers = "sys_platform == \"win32\" and extra == \"standard\""} +h11 = ">=0.8" +httptools = {version = ">=0.2.0,<0.3.0", optional = true, markers = "extra == \"standard\""} +python-dotenv = {version = ">=0.13", optional = true, markers = "extra == \"standard\""} +PyYAML = {version = ">=5.1", optional = true, markers = "extra == \"standard\""} +uvloop = {version = ">=0.14.0,<0.15.0 || >0.15.0,<0.15.1 || >0.15.1", optional = true, markers = "sys_platform != \"win32\" and sys_platform != \"cygwin\" and platform_python_implementation != \"PyPy\" and extra == \"standard\""} +watchgod = {version = ">=0.6", optional = true, markers = "extra == \"standard\""} +websockets = {version = ">=9.1", optional = true, markers = "extra == \"standard\""} + +[package.extras] +standard = ["websockets (>=9.1)", "httptools (>=0.2.0,<0.3.0)", "watchgod (>=0.6)", "python-dotenv (>=0.13)", "PyYAML (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "colorama (>=0.4)"] + +[[package]] +name = "uvloop" +version = "0.15.3" +description = "Fast implementation of asyncio event loop on top of libuv" +category = "main" +optional = false +python-versions = ">=3.7" + +[package.extras] +dev = ["Cython (>=0.29.20,<0.30.0)", "pytest (>=3.6.0)", "Sphinx (>=1.7.3,<1.8.0)", "sphinxcontrib-asyncio (>=0.2.0,<0.3.0)", "sphinx-rtd-theme (>=0.2.4,<0.3.0)", "aiohttp", "flake8 (>=3.8.4,<3.9.0)", "psutil", "pycodestyle (>=2.6.0,<2.7.0)", "pyOpenSSL (>=19.0.0,<19.1.0)", "mypy (>=0.800)"] +docs = ["Sphinx (>=1.7.3,<1.8.0)", "sphinxcontrib-asyncio (>=0.2.0,<0.3.0)", "sphinx-rtd-theme (>=0.2.4,<0.3.0)"] +test = ["aiohttp", "flake8 (>=3.8.4,<3.9.0)", "psutil", "pycodestyle (>=2.6.0,<2.7.0)", "pyOpenSSL (>=19.0.0,<19.1.0)", "mypy (>=0.800)"] + +[[package]] +name = "vine" +version = "1.3.0" +description = "Promises, promises, promises." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "watchgod" +version = "0.7" +description = "Simple, modern file watching and code reload in python." +category = "main" +optional = false +python-versions = ">=3.5" + +[[package]] +name = "wcwidth" +version = "0.2.5" +description = "Measures the displayed width of unicode strings in a terminal" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "websockets" +version = "9.1" +description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" +category = "main" +optional = false +python-versions = ">=3.6.1" + +[metadata] +lock-version = "1.1" +python-versions = "^3.9" +content-hash = "b2f733693484cc918fc4d664d313cf5c48fcee6a415df41ce684aa13e405ffb6" + +[metadata.files] +alembic = [ + {file = "alembic-1.6.5-py2.py3-none-any.whl", hash = "sha256:e78be5b919f5bb184e3e0e2dd1ca986f2362e29a2bc933c446fe89f39dbe4e9c"}, + {file = "alembic-1.6.5.tar.gz", hash = "sha256:a21fedebb3fb8f6bbbba51a11114f08c78709377051384c9c5ead5705ee93a51"}, +] +amqp = [ + {file = "amqp-2.6.1-py2.py3-none-any.whl", hash = "sha256:aa7f313fb887c91f15474c1229907a04dac0b8135822d6603437803424c0aa59"}, + {file = "amqp-2.6.1.tar.gz", hash = "sha256:70cdb10628468ff14e57ec2f751c7aa9e48e7e3651cfd62d431213c0c4e58f21"}, +] +appdirs = [ + {file = "appdirs-1.4.4-py2.py3-none-any.whl", hash = "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"}, + {file = "appdirs-1.4.4.tar.gz", hash = "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41"}, +] +asgiref = [ + {file = "asgiref-3.4.1-py3-none-any.whl", hash = "sha256:ffc141aa908e6f175673e7b1b3b7af4fdb0ecb738fc5c8b88f69f055c2415214"}, + {file = "asgiref-3.4.1.tar.gz", hash = "sha256:4ef1ab46b484e3c706329cedeff284a5d40824200638503f5768edb6de7d58e9"}, +] +atomicwrites = [ + {file = "atomicwrites-1.4.0-py2.py3-none-any.whl", hash = "sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197"}, + {file = "atomicwrites-1.4.0.tar.gz", hash = "sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"}, +] +attrs = [ + {file = "attrs-21.2.0-py2.py3-none-any.whl", hash = "sha256:149e90d6d8ac20db7a955ad60cf0e6881a3f20d37096140088356da6c716b0b1"}, + {file = "attrs-21.2.0.tar.gz", hash = "sha256:ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb"}, +] +autoflake = [ + {file = "autoflake-1.4.tar.gz", hash = "sha256:61a353012cff6ab94ca062823d1fb2f692c4acda51c76ff83a8d77915fba51ea"}, +] +bcrypt = [ + {file = "bcrypt-3.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c95d4cbebffafcdd28bd28bb4e25b31c50f6da605c81ffd9ad8a3d1b2ab7b1b6"}, + {file = "bcrypt-3.2.0-cp36-abi3-manylinux1_x86_64.whl", hash = "sha256:63d4e3ff96188e5898779b6057878fecf3f11cfe6ec3b313ea09955d587ec7a7"}, + {file = "bcrypt-3.2.0-cp36-abi3-manylinux2010_x86_64.whl", hash = "sha256:cd1ea2ff3038509ea95f687256c46b79f5fc382ad0aa3664d200047546d511d1"}, + {file = "bcrypt-3.2.0-cp36-abi3-manylinux2014_aarch64.whl", hash = "sha256:cdcdcb3972027f83fe24a48b1e90ea4b584d35f1cc279d76de6fc4b13376239d"}, + {file = "bcrypt-3.2.0-cp36-abi3-win32.whl", hash = "sha256:a67fb841b35c28a59cebed05fbd3e80eea26e6d75851f0574a9273c80f3e9b55"}, + {file = "bcrypt-3.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:81fec756feff5b6818ea7ab031205e1d323d8943d237303baca2c5f9c7846f34"}, + {file = "bcrypt-3.2.0.tar.gz", hash = "sha256:5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29"}, +] +billiard = [ + {file = "billiard-3.6.4.0-py3-none-any.whl", hash = "sha256:87103ea78fa6ab4d5c751c4909bcff74617d985de7fa8b672cf8618afd5a875b"}, + {file = "billiard-3.6.4.0.tar.gz", hash = "sha256:299de5a8da28a783d51b197d496bef4f1595dd023a93a4f59dde1886ae905547"}, +] +black = [ + {file = "black-19.10b0-py36-none-any.whl", hash = "sha256:1b30e59be925fafc1ee4565e5e08abef6b03fe455102883820fe5ee2e4734e0b"}, + {file = "black-19.10b0.tar.gz", hash = "sha256:c2edb73a08e9e0e6f65a0e6af18b059b8b1cdd5bef997d7a0b181df93dc81539"}, +] +cachetools = [ + {file = "cachetools-4.2.2-py3-none-any.whl", hash = "sha256:2cc0b89715337ab6dbba85b5b50effe2b0c74e035d83ee8ed637cf52f12ae001"}, + {file = "cachetools-4.2.2.tar.gz", hash = "sha256:61b5ed1e22a0924aed1d23b478f37e8d52549ff8a961de2909c69bf950020cff"}, +] +celery = [ + {file = "celery-4.4.7-py2.py3-none-any.whl", hash = "sha256:a92e1d56e650781fb747032a3997d16236d037c8199eacd5217d1a72893bca45"}, + {file = "celery-4.4.7.tar.gz", hash = "sha256:d220b13a8ed57c78149acf82c006785356071844afe0b27012a4991d44026f9f"}, +] +certifi = [ + {file = "certifi-2021.5.30-py2.py3-none-any.whl", hash = "sha256:50b1e4f8446b06f41be7dd6338db18e0990601dce795c2b1686458aa7e8fa7d8"}, + {file = "certifi-2021.5.30.tar.gz", hash = "sha256:2bbf76fd432960138b3ef6dda3dde0544f27cbf8546c458e60baf371917ba9ee"}, +] +cffi = [ + {file = "cffi-1.14.6-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:22b9c3c320171c108e903d61a3723b51e37aaa8c81255b5e7ce102775bd01e2c"}, + {file = "cffi-1.14.6-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:f0c5d1acbfca6ebdd6b1e3eded8d261affb6ddcf2186205518f1428b8569bb99"}, + {file = "cffi-1.14.6-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:99f27fefe34c37ba9875f224a8f36e31d744d8083e00f520f133cab79ad5e819"}, + {file = "cffi-1.14.6-cp27-cp27m-win32.whl", hash = "sha256:55af55e32ae468e9946f741a5d51f9896da6b9bf0bbdd326843fec05c730eb20"}, + {file = "cffi-1.14.6-cp27-cp27m-win_amd64.whl", hash = "sha256:7bcac9a2b4fdbed2c16fa5681356d7121ecabf041f18d97ed5b8e0dd38a80224"}, + {file = "cffi-1.14.6-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:ed38b924ce794e505647f7c331b22a693bee1538fdf46b0222c4717b42f744e7"}, + {file = "cffi-1.14.6-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:e22dcb48709fc51a7b58a927391b23ab37eb3737a98ac4338e2448bef8559b33"}, + {file = "cffi-1.14.6-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:aedb15f0a5a5949ecb129a82b72b19df97bbbca024081ed2ef88bd5c0a610534"}, + {file = "cffi-1.14.6-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:48916e459c54c4a70e52745639f1db524542140433599e13911b2f329834276a"}, + {file = "cffi-1.14.6-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:f627688813d0a4140153ff532537fbe4afea5a3dffce1f9deb7f91f848a832b5"}, + {file = "cffi-1.14.6-cp35-cp35m-win32.whl", hash = "sha256:f0010c6f9d1a4011e429109fda55a225921e3206e7f62a0c22a35344bfd13cca"}, + {file = "cffi-1.14.6-cp35-cp35m-win_amd64.whl", hash = "sha256:57e555a9feb4a8460415f1aac331a2dc833b1115284f7ded7278b54afc5bd218"}, + {file = "cffi-1.14.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e8c6a99be100371dbb046880e7a282152aa5d6127ae01783e37662ef73850d8f"}, + {file = "cffi-1.14.6-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:19ca0dbdeda3b2615421d54bef8985f72af6e0c47082a8d26122adac81a95872"}, + {file = "cffi-1.14.6-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:d950695ae4381ecd856bcaf2b1e866720e4ab9a1498cba61c602e56630ca7195"}, + {file = "cffi-1.14.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e9dc245e3ac69c92ee4c167fbdd7428ec1956d4e754223124991ef29eb57a09d"}, + {file = "cffi-1.14.6-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a8661b2ce9694ca01c529bfa204dbb144b275a31685a075ce123f12331be790b"}, + {file = "cffi-1.14.6-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b315d709717a99f4b27b59b021e6207c64620790ca3e0bde636a6c7f14618abb"}, + {file = "cffi-1.14.6-cp36-cp36m-win32.whl", hash = "sha256:80b06212075346b5546b0417b9f2bf467fea3bfe7352f781ffc05a8ab24ba14a"}, + {file = "cffi-1.14.6-cp36-cp36m-win_amd64.whl", hash = "sha256:a9da7010cec5a12193d1af9872a00888f396aba3dc79186604a09ea3ee7c029e"}, + {file = "cffi-1.14.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4373612d59c404baeb7cbd788a18b2b2a8331abcc84c3ba40051fcd18b17a4d5"}, + {file = "cffi-1.14.6-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:f10afb1004f102c7868ebfe91c28f4a712227fe4cb24974350ace1f90e1febbf"}, + {file = "cffi-1.14.6-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:fd4305f86f53dfd8cd3522269ed7fc34856a8ee3709a5e28b2836b2db9d4cd69"}, + {file = "cffi-1.14.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d6169cb3c6c2ad50db5b868db6491a790300ade1ed5d1da29289d73bbe40b56"}, + {file = "cffi-1.14.6-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5d4b68e216fc65e9fe4f524c177b54964af043dde734807586cf5435af84045c"}, + {file = "cffi-1.14.6-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33791e8a2dc2953f28b8d8d300dde42dd929ac28f974c4b4c6272cb2955cb762"}, + {file = "cffi-1.14.6-cp37-cp37m-win32.whl", hash = "sha256:0c0591bee64e438883b0c92a7bed78f6290d40bf02e54c5bf0978eaf36061771"}, + {file = "cffi-1.14.6-cp37-cp37m-win_amd64.whl", hash = "sha256:8eb687582ed7cd8c4bdbff3df6c0da443eb89c3c72e6e5dcdd9c81729712791a"}, + {file = "cffi-1.14.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ba6f2b3f452e150945d58f4badd92310449876c4c954836cfb1803bdd7b422f0"}, + {file = "cffi-1.14.6-cp38-cp38-manylinux1_i686.whl", hash = "sha256:64fda793737bc4037521d4899be780534b9aea552eb673b9833b01f945904c2e"}, + {file = "cffi-1.14.6-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:9f3e33c28cd39d1b655ed1ba7247133b6f7fc16fa16887b120c0c670e35ce346"}, + {file = "cffi-1.14.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:26bb2549b72708c833f5abe62b756176022a7b9a7f689b571e74c8478ead51dc"}, + {file = "cffi-1.14.6-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb687a11f0a7a1839719edd80f41e459cc5366857ecbed383ff376c4e3cc6afd"}, + {file = "cffi-1.14.6-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d2ad4d668a5c0645d281dcd17aff2be3212bc109b33814bbb15c4939f44181cc"}, + {file = "cffi-1.14.6-cp38-cp38-win32.whl", hash = "sha256:487d63e1454627c8e47dd230025780e91869cfba4c753a74fda196a1f6ad6548"}, + {file = "cffi-1.14.6-cp38-cp38-win_amd64.whl", hash = "sha256:c33d18eb6e6bc36f09d793c0dc58b0211fccc6ae5149b808da4a62660678b156"}, + {file = "cffi-1.14.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:06c54a68935738d206570b20da5ef2b6b6d92b38ef3ec45c5422c0ebaf338d4d"}, + {file = "cffi-1.14.6-cp39-cp39-manylinux1_i686.whl", hash = "sha256:f174135f5609428cc6e1b9090f9268f5c8935fddb1b25ccb8255a2d50de6789e"}, + {file = "cffi-1.14.6-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f3ebe6e73c319340830a9b2825d32eb6d8475c1dac020b4f0aa774ee3b898d1c"}, + {file = "cffi-1.14.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c8d896becff2fa653dc4438b54a5a25a971d1f4110b32bd3068db3722c80202"}, + {file = "cffi-1.14.6-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4922cd707b25e623b902c86188aca466d3620892db76c0bdd7b99a3d5e61d35f"}, + {file = "cffi-1.14.6-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c9e005e9bd57bc987764c32a1bee4364c44fdc11a3cc20a40b93b444984f2b87"}, + {file = "cffi-1.14.6-cp39-cp39-win32.whl", hash = "sha256:eb9e2a346c5238a30a746893f23a9535e700f8192a68c07c0258e7ece6ff3728"}, + {file = "cffi-1.14.6-cp39-cp39-win_amd64.whl", hash = "sha256:818014c754cd3dba7229c0f5884396264d51ffb87ec86e927ef0be140bfdb0d2"}, + {file = "cffi-1.14.6.tar.gz", hash = "sha256:c9a875ce9d7fe32887784274dd533c57909b7b1dcadcc128a2ac21331a9765dd"}, +] +chardet = [ + {file = "chardet-4.0.0-py2.py3-none-any.whl", hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"}, + {file = "chardet-4.0.0.tar.gz", hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa"}, +] +charset-normalizer = [ + {file = "charset-normalizer-2.0.3.tar.gz", hash = "sha256:c46c3ace2d744cfbdebceaa3c19ae691f53ae621b39fd7570f59d14fb7f2fd12"}, + {file = "charset_normalizer-2.0.3-py3-none-any.whl", hash = "sha256:88fce3fa5b1a84fdcb3f603d889f723d1dd89b26059d0123ca435570e848d5e1"}, +] +click = [ + {file = "click-8.0.1-py3-none-any.whl", hash = "sha256:fba402a4a47334742d782209a7c79bc448911afe1149d07bdabdf480b3e2f4b6"}, + {file = "click-8.0.1.tar.gz", hash = "sha256:8c04c11192119b1ef78ea049e0a6f0463e4c48ef00a30160c704337586f3ad7a"}, +] +colorama = [ + {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, + {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, +] +coverage = [ + {file = "coverage-5.5-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:b6d534e4b2ab35c9f93f46229363e17f63c53ad01330df9f2d6bd1187e5eaacf"}, + {file = "coverage-5.5-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:b7895207b4c843c76a25ab8c1e866261bcfe27bfaa20c192de5190121770672b"}, + {file = "coverage-5.5-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:c2723d347ab06e7ddad1a58b2a821218239249a9e4365eaff6649d31180c1669"}, + {file = "coverage-5.5-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:900fbf7759501bc7807fd6638c947d7a831fc9fdf742dc10f02956ff7220fa90"}, + {file = "coverage-5.5-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:004d1880bed2d97151facef49f08e255a20ceb6f9432df75f4eef018fdd5a78c"}, + {file = "coverage-5.5-cp27-cp27m-win32.whl", hash = "sha256:06191eb60f8d8a5bc046f3799f8a07a2d7aefb9504b0209aff0b47298333302a"}, + {file = "coverage-5.5-cp27-cp27m-win_amd64.whl", hash = "sha256:7501140f755b725495941b43347ba8a2777407fc7f250d4f5a7d2a1050ba8e82"}, + {file = "coverage-5.5-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:372da284cfd642d8e08ef606917846fa2ee350f64994bebfbd3afb0040436905"}, + {file = "coverage-5.5-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:8963a499849a1fc54b35b1c9f162f4108017b2e6db2c46c1bed93a72262ed083"}, + {file = "coverage-5.5-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:869a64f53488f40fa5b5b9dcb9e9b2962a66a87dab37790f3fcfb5144b996ef5"}, + {file = "coverage-5.5-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:4a7697d8cb0f27399b0e393c0b90f0f1e40c82023ea4d45d22bce7032a5d7b81"}, + {file = "coverage-5.5-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:8d0a0725ad7c1a0bcd8d1b437e191107d457e2ec1084b9f190630a4fb1af78e6"}, + {file = "coverage-5.5-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:51cb9476a3987c8967ebab3f0fe144819781fca264f57f89760037a2ea191cb0"}, + {file = "coverage-5.5-cp310-cp310-win_amd64.whl", hash = "sha256:c0891a6a97b09c1f3e073a890514d5012eb256845c451bd48f7968ef939bf4ae"}, + {file = "coverage-5.5-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:3487286bc29a5aa4b93a072e9592f22254291ce96a9fbc5251f566b6b7343cdb"}, + {file = "coverage-5.5-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:deee1077aae10d8fa88cb02c845cfba9b62c55e1183f52f6ae6a2df6a2187160"}, + {file = "coverage-5.5-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:f11642dddbb0253cc8853254301b51390ba0081750a8ac03f20ea8103f0c56b6"}, + {file = "coverage-5.5-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:6c90e11318f0d3c436a42409f2749ee1a115cd8b067d7f14c148f1ce5574d701"}, + {file = "coverage-5.5-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:30c77c1dc9f253283e34c27935fded5015f7d1abe83bc7821680ac444eaf7793"}, + {file = "coverage-5.5-cp35-cp35m-win32.whl", hash = "sha256:9a1ef3b66e38ef8618ce5fdc7bea3d9f45f3624e2a66295eea5e57966c85909e"}, + {file = "coverage-5.5-cp35-cp35m-win_amd64.whl", hash = "sha256:972c85d205b51e30e59525694670de6a8a89691186012535f9d7dbaa230e42c3"}, + {file = "coverage-5.5-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:af0e781009aaf59e25c5a678122391cb0f345ac0ec272c7961dc5455e1c40066"}, + {file = "coverage-5.5-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:74d881fc777ebb11c63736622b60cb9e4aee5cace591ce274fb69e582a12a61a"}, + {file = "coverage-5.5-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:92b017ce34b68a7d67bd6d117e6d443a9bf63a2ecf8567bb3d8c6c7bc5014465"}, + {file = "coverage-5.5-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:d636598c8305e1f90b439dbf4f66437de4a5e3c31fdf47ad29542478c8508bbb"}, + {file = "coverage-5.5-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:41179b8a845742d1eb60449bdb2992196e211341818565abded11cfa90efb821"}, + {file = "coverage-5.5-cp36-cp36m-win32.whl", hash = "sha256:040af6c32813fa3eae5305d53f18875bedd079960822ef8ec067a66dd8afcd45"}, + {file = "coverage-5.5-cp36-cp36m-win_amd64.whl", hash = "sha256:5fec2d43a2cc6965edc0bb9e83e1e4b557f76f843a77a2496cbe719583ce8184"}, + {file = "coverage-5.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:18ba8bbede96a2c3dde7b868de9dcbd55670690af0988713f0603f037848418a"}, + {file = "coverage-5.5-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:2910f4d36a6a9b4214bb7038d537f015346f413a975d57ca6b43bf23d6563b53"}, + {file = "coverage-5.5-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:f0b278ce10936db1a37e6954e15a3730bea96a0997c26d7fee88e6c396c2086d"}, + {file = "coverage-5.5-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:796c9c3c79747146ebd278dbe1e5c5c05dd6b10cc3bcb8389dfdf844f3ead638"}, + {file = "coverage-5.5-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:53194af30d5bad77fcba80e23a1441c71abfb3e01192034f8246e0d8f99528f3"}, + {file = "coverage-5.5-cp37-cp37m-win32.whl", hash = "sha256:184a47bbe0aa6400ed2d41d8e9ed868b8205046518c52464fde713ea06e3a74a"}, + {file = "coverage-5.5-cp37-cp37m-win_amd64.whl", hash = "sha256:2949cad1c5208b8298d5686d5a85b66aae46d73eec2c3e08c817dd3513e5848a"}, + {file = "coverage-5.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:217658ec7187497e3f3ebd901afdca1af062b42cfe3e0dafea4cced3983739f6"}, + {file = "coverage-5.5-cp38-cp38-manylinux1_i686.whl", hash = "sha256:1aa846f56c3d49205c952d8318e76ccc2ae23303351d9270ab220004c580cfe2"}, + {file = "coverage-5.5-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:24d4a7de75446be83244eabbff746d66b9240ae020ced65d060815fac3423759"}, + {file = "coverage-5.5-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:d1f8bf7b90ba55699b3a5e44930e93ff0189aa27186e96071fac7dd0d06a1873"}, + {file = "coverage-5.5-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:970284a88b99673ccb2e4e334cfb38a10aab7cd44f7457564d11898a74b62d0a"}, + {file = "coverage-5.5-cp38-cp38-win32.whl", hash = "sha256:01d84219b5cdbfc8122223b39a954820929497a1cb1422824bb86b07b74594b6"}, + {file = "coverage-5.5-cp38-cp38-win_amd64.whl", hash = "sha256:2e0d881ad471768bf6e6c2bf905d183543f10098e3b3640fc029509530091502"}, + {file = "coverage-5.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d1f9ce122f83b2305592c11d64f181b87153fc2c2bbd3bb4a3dde8303cfb1a6b"}, + {file = "coverage-5.5-cp39-cp39-manylinux1_i686.whl", hash = "sha256:13c4ee887eca0f4c5a247b75398d4114c37882658300e153113dafb1d76de529"}, + {file = "coverage-5.5-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:52596d3d0e8bdf3af43db3e9ba8dcdaac724ba7b5ca3f6358529d56f7a166f8b"}, + {file = "coverage-5.5-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:2cafbbb3af0733db200c9b5f798d18953b1a304d3f86a938367de1567f4b5bff"}, + {file = "coverage-5.5-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:44d654437b8ddd9eee7d1eaee28b7219bec228520ff809af170488fd2fed3e2b"}, + {file = "coverage-5.5-cp39-cp39-win32.whl", hash = "sha256:d314ed732c25d29775e84a960c3c60808b682c08d86602ec2c3008e1202e3bb6"}, + {file = "coverage-5.5-cp39-cp39-win_amd64.whl", hash = "sha256:13034c4409db851670bc9acd836243aeee299949bd5673e11844befcb0149f03"}, + {file = "coverage-5.5-pp36-none-any.whl", hash = "sha256:f030f8873312a16414c0d8e1a1ddff2d3235655a2174e3648b4fa66b3f2f1079"}, + {file = "coverage-5.5-pp37-none-any.whl", hash = "sha256:2a3859cb82dcbda1cfd3e6f71c27081d18aa251d20a17d87d26d4cd216fb0af4"}, + {file = "coverage-5.5.tar.gz", hash = "sha256:ebe78fe9a0e874362175b02371bdfbee64d8edc42a044253ddf4ee7d3c15212c"}, +] +cryptography = [ + {file = "cryptography-3.4.7-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:3d8427734c781ea5f1b41d6589c293089704d4759e34597dce91014ac125aad1"}, + {file = "cryptography-3.4.7-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:8e56e16617872b0957d1c9742a3f94b43533447fd78321514abbe7db216aa250"}, + {file = "cryptography-3.4.7-cp36-abi3-manylinux2010_x86_64.whl", hash = "sha256:37340614f8a5d2fb9aeea67fd159bfe4f5f4ed535b1090ce8ec428b2f15a11f2"}, + {file = "cryptography-3.4.7-cp36-abi3-manylinux2014_aarch64.whl", hash = "sha256:240f5c21aef0b73f40bb9f78d2caff73186700bf1bc6b94285699aff98cc16c6"}, + {file = "cryptography-3.4.7-cp36-abi3-manylinux2014_x86_64.whl", hash = "sha256:1e056c28420c072c5e3cb36e2b23ee55e260cb04eee08f702e0edfec3fb51959"}, + {file = "cryptography-3.4.7-cp36-abi3-win32.whl", hash = "sha256:0f1212a66329c80d68aeeb39b8a16d54ef57071bf22ff4e521657b27372e327d"}, + {file = "cryptography-3.4.7-cp36-abi3-win_amd64.whl", hash = "sha256:de4e5f7f68220d92b7637fc99847475b59154b7a1b3868fb7385337af54ac9ca"}, + {file = "cryptography-3.4.7-pp36-pypy36_pp73-manylinux2010_x86_64.whl", hash = "sha256:26965837447f9c82f1855e0bc8bc4fb910240b6e0d16a664bb722df3b5b06873"}, + {file = "cryptography-3.4.7-pp36-pypy36_pp73-manylinux2014_x86_64.whl", hash = "sha256:eb8cc2afe8b05acbd84a43905832ec78e7b3873fb124ca190f574dca7389a87d"}, + {file = "cryptography-3.4.7-pp37-pypy37_pp73-manylinux2010_x86_64.whl", hash = "sha256:7ec5d3b029f5fa2b179325908b9cd93db28ab7b85bb6c1db56b10e0b54235177"}, + {file = "cryptography-3.4.7-pp37-pypy37_pp73-manylinux2014_x86_64.whl", hash = "sha256:ee77aa129f481be46f8d92a1a7db57269a2f23052d5f2433b4621bb457081cc9"}, + {file = "cryptography-3.4.7.tar.gz", hash = "sha256:3d10de8116d25649631977cb37da6cbdd2d6fa0e0281d014a5b7d337255ca713"}, +] +cssselect = [ + {file = "cssselect-1.1.0-py2.py3-none-any.whl", hash = "sha256:f612ee47b749c877ebae5bb77035d8f4202c6ad0f0fc1271b3c18ad6c4468ecf"}, + {file = "cssselect-1.1.0.tar.gz", hash = "sha256:f95f8dedd925fd8f54edb3d2dfb44c190d9d18512377d3c1e2388d16126879bc"}, +] +cssutils = [ + {file = "cssutils-2.3.0-py3-none-any.whl", hash = "sha256:0cf1f6086b020dee18048ff3999339499f725934017ef9ae2cd5bb77f9ab5f46"}, + {file = "cssutils-2.3.0.tar.gz", hash = "sha256:b2d3b16047caae82e5c590036935bafa1b621cf45c2f38885af4be4838f0fd00"}, +] +dnspython = [ + {file = "dnspython-2.1.0-py3-none-any.whl", hash = "sha256:95d12f6ef0317118d2a1a6fc49aac65ffec7eb8087474158f42f26a639135216"}, + {file = "dnspython-2.1.0.zip", hash = "sha256:e4a87f0b573201a0f3727fa18a516b055fd1107e0e5477cded4a2de497df1dd4"}, +] +ecdsa = [ + {file = "ecdsa-0.17.0-py2.py3-none-any.whl", hash = "sha256:5cf31d5b33743abe0dfc28999036c849a69d548f994b535e527ee3cb7f3ef676"}, + {file = "ecdsa-0.17.0.tar.gz", hash = "sha256:b9f500bb439e4153d0330610f5d26baaf18d17b8ced1bc54410d189385ea68aa"}, +] +email-validator = [ + {file = "email_validator-1.1.3-py2.py3-none-any.whl", hash = "sha256:5675c8ceb7106a37e40e2698a57c056756bf3f272cfa8682a4f87ebd95d8440b"}, + {file = "email_validator-1.1.3.tar.gz", hash = "sha256:aa237a65f6f4da067119b7df3f13e89c25c051327b2b5b66dc075f33d62480d7"}, +] +emails = [ + {file = "emails-0.5.15-py2.py3-none-any.whl", hash = "sha256:2d93bb09539d65a16cf1f68db4ffd0f7f45067633e950866e8a4ef89a7c290ec"}, + {file = "emails-0.5.15.tar.gz", hash = "sha256:fcc02567a528eae6b66d2a5c20ce7a0326e4f6b201bc8ae302f89413164db06a"}, +] +fastapi = [ + {file = "fastapi-0.66.0-py3-none-any.whl", hash = "sha256:85d8aee8c3c46171f4cb7bb3651425a42c07cb9183345d100ef55d88ca2ce15f"}, + {file = "fastapi-0.66.0.tar.gz", hash = "sha256:6ea4225448786f3d6fae737713789f87631a7455f65580de0a4a2e50471060d9"}, +] +flake8 = [ + {file = "flake8-3.9.2-py2.py3-none-any.whl", hash = "sha256:bf8fd333346d844f616e8d47905ef3a3384edae6b4e9beb0c5101e25e3110907"}, + {file = "flake8-3.9.2.tar.gz", hash = "sha256:07528381786f2a6237b061f6e96610a4167b226cb926e2aa2b6b1d78057c576b"}, +] +gunicorn = [ + {file = "gunicorn-20.1.0.tar.gz", hash = "sha256:e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8"}, +] +h11 = [ + {file = "h11-0.12.0-py3-none-any.whl", hash = "sha256:36a3cb8c0a032f56e2da7084577878a035d3b61d104230d4bd49c0c6b555a9c6"}, + {file = "h11-0.12.0.tar.gz", hash = "sha256:47222cb6067e4a307d535814917cd98fd0a57b6788ce715755fa2b6c28b56042"}, +] +httptools = [ + {file = "httptools-0.2.0-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:79dbc21f3612a78b28384e989b21872e2e3cf3968532601544696e4ed0007ce5"}, + {file = "httptools-0.2.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:78d03dd39b09c99ec917d50189e6743adbfd18c15d5944392d2eabda688bf149"}, + {file = "httptools-0.2.0-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:a23166e5ae2775709cf4f7ad4c2048755ebfb272767d244e1a96d55ac775cca7"}, + {file = "httptools-0.2.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:3ab1f390d8867f74b3b5ee2a7ecc9b8d7f53750bd45714bf1cb72a953d7dfa77"}, + {file = "httptools-0.2.0-cp36-cp36m-win_amd64.whl", hash = "sha256:a7594f9a010cdf1e16a58b3bf26c9da39bbf663e3b8d46d39176999d71816658"}, + {file = "httptools-0.2.0-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:01b392a166adcc8bc2f526a939a8aabf89fe079243e1543fd0e7dc1b58d737cb"}, + {file = "httptools-0.2.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:80ffa04fe8c8dfacf6e4cef8277347d35b0442c581f5814f3b0cf41b65c43c6e"}, + {file = "httptools-0.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d5682eeb10cca0606c4a8286a3391d4c3c5a36f0c448e71b8bd05be4e1694bfb"}, + {file = "httptools-0.2.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:a289c27ccae399a70eacf32df9a44059ca2ba4ac444604b00a19a6c1f0809943"}, + {file = "httptools-0.2.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:813871f961edea6cb2fe312f2d9b27d12a51ba92545380126f80d0de1917ea15"}, + {file = "httptools-0.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:cc9be041e428c10f8b6ab358c6b393648f9457094e1dcc11b4906026d43cd380"}, + {file = "httptools-0.2.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:b08d00d889a118f68f37f3c43e359aab24ee29eb2e3fe96d64c6a2ba8b9d6557"}, + {file = "httptools-0.2.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:fd3b8905e21431ad306eeaf56644a68fdd621bf8f3097eff54d0f6bdf7262065"}, + {file = "httptools-0.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:200fc1cdf733a9ff554c0bb97a4047785cfaad9875307d6087001db3eb2b417f"}, + {file = "httptools-0.2.0.tar.gz", hash = "sha256:94505026be56652d7a530ab03d89474dc6021019d6b8682281977163b3471ea0"}, +] +idna = [ + {file = "idna-3.2-py3-none-any.whl", hash = "sha256:14475042e284991034cb48e06f6851428fb14c4dc953acd9be9a5e95c7b6dd7a"}, + {file = "idna-3.2.tar.gz", hash = "sha256:467fbad99067910785144ce333826c71fb0e63a425657295239737f7ecd125f3"}, +] +inboard = [ + {file = "inboard-0.10.2-py3-none-any.whl", hash = "sha256:0f0ef56d2df297fee85998fb6aff55b3fd89531b0d1406cddb0167c6259cdef8"}, + {file = "inboard-0.10.2.tar.gz", hash = "sha256:9ca0d412a6232034af24307fa6f450998576bfa2b2b2f348d9619362c74784b5"}, +] +isort = [ + {file = "isort-4.3.21-py2.py3-none-any.whl", hash = "sha256:6e811fcb295968434526407adb8796944f1988c5b65e8139058f2014cbe100fd"}, + {file = "isort-4.3.21.tar.gz", hash = "sha256:54da7e92468955c4fceacd0c86bd0ec997b0e1ee80d97f67c35a78b719dccab1"}, +] +jinja2 = [ + {file = "Jinja2-2.11.3-py2.py3-none-any.whl", hash = "sha256:03e47ad063331dd6a3f04a43eddca8a966a26ba0c5b7207a9a9e4e08f1b29419"}, + {file = "Jinja2-2.11.3.tar.gz", hash = "sha256:a6d58433de0ae800347cab1fa3043cebbabe8baa9d29e668f1c768cb87a333c6"}, +] +kombu = [ + {file = "kombu-4.6.11-py2.py3-none-any.whl", hash = "sha256:be48cdffb54a2194d93ad6533d73f69408486483d189fe9f5990ee24255b0e0a"}, + {file = "kombu-4.6.11.tar.gz", hash = "sha256:ca1b45faac8c0b18493d02a8571792f3c40291cf2bcf1f55afed3d8f3aa7ba74"}, +] +lxml = [ + {file = "lxml-4.6.3-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:df7c53783a46febb0e70f6b05df2ba104610f2fb0d27023409734a3ecbb78fb2"}, + {file = "lxml-4.6.3-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:1b7584d421d254ab86d4f0b13ec662a9014397678a7c4265a02a6d7c2b18a75f"}, + {file = "lxml-4.6.3-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:079f3ae844f38982d156efce585bc540c16a926d4436712cf4baee0cce487a3d"}, + {file = "lxml-4.6.3-cp27-cp27m-win32.whl", hash = "sha256:bc4313cbeb0e7a416a488d72f9680fffffc645f8a838bd2193809881c67dd106"}, + {file = "lxml-4.6.3-cp27-cp27m-win_amd64.whl", hash = "sha256:8157dadbb09a34a6bd95a50690595e1fa0af1a99445e2744110e3dca7831c4ee"}, + {file = "lxml-4.6.3-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:7728e05c35412ba36d3e9795ae8995e3c86958179c9770e65558ec3fdfd3724f"}, + {file = "lxml-4.6.3-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:4bff24dfeea62f2e56f5bab929b4428ae6caba2d1eea0c2d6eb618e30a71e6d4"}, + {file = "lxml-4.6.3-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:74f7d8d439b18fa4c385f3f5dfd11144bb87c1da034a466c5b5577d23a1d9b51"}, + {file = "lxml-4.6.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:f90ba11136bfdd25cae3951af8da2e95121c9b9b93727b1b896e3fa105b2f586"}, + {file = "lxml-4.6.3-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:4c61b3a0db43a1607d6264166b230438f85bfed02e8cff20c22e564d0faff354"}, + {file = "lxml-4.6.3-cp35-cp35m-manylinux2014_x86_64.whl", hash = "sha256:5c8c163396cc0df3fd151b927e74f6e4acd67160d6c33304e805b84293351d16"}, + {file = "lxml-4.6.3-cp35-cp35m-win32.whl", hash = "sha256:f2380a6376dfa090227b663f9678150ef27543483055cc327555fb592c5967e2"}, + {file = "lxml-4.6.3-cp35-cp35m-win_amd64.whl", hash = "sha256:c4f05c5a7c49d2fb70223d0d5bcfbe474cf928310ac9fa6a7c6dddc831d0b1d4"}, + {file = "lxml-4.6.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d2e35d7bf1c1ac8c538f88d26b396e73dd81440d59c1ef8522e1ea77b345ede4"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:289e9ca1a9287f08daaf796d96e06cb2bc2958891d7911ac7cae1c5f9e1e0ee3"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:bccbfc27563652de7dc9bdc595cb25e90b59c5f8e23e806ed0fd623755b6565d"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:d916d31fd85b2f78c76400d625076d9124de3e4bda8b016d25a050cc7d603f24"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:820628b7b3135403540202e60551e741f9b6d3304371712521be939470b454ec"}, + {file = "lxml-4.6.3-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:c47ff7e0a36d4efac9fd692cfa33fbd0636674c102e9e8d9b26e1b93a94e7617"}, + {file = "lxml-4.6.3-cp36-cp36m-win32.whl", hash = "sha256:5a0a14e264069c03e46f926be0d8919f4105c1623d620e7ec0e612a2e9bf1c04"}, + {file = "lxml-4.6.3-cp36-cp36m-win_amd64.whl", hash = "sha256:92e821e43ad382332eade6812e298dc9701c75fe289f2a2d39c7960b43d1e92a"}, + {file = "lxml-4.6.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:efd7a09678fd8b53117f6bae4fa3825e0a22b03ef0a932e070c0bdbb3a35e654"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:efac139c3f0bf4f0939f9375af4b02c5ad83a622de52d6dfa8e438e8e01d0eb0"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:0fbcf5565ac01dff87cbfc0ff323515c823081c5777a9fc7703ff58388c258c3"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:36108c73739985979bf302006527cf8a20515ce444ba916281d1c43938b8bb96"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:122fba10466c7bd4178b07dba427aa516286b846b2cbd6f6169141917283aae2"}, + {file = "lxml-4.6.3-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:cdaf11d2bd275bf391b5308f86731e5194a21af45fbaaaf1d9e8147b9160ea92"}, + {file = "lxml-4.6.3-cp37-cp37m-win32.whl", hash = "sha256:3439c71103ef0e904ea0a1901611863e51f50b5cd5e8654a151740fde5e1cade"}, + {file = "lxml-4.6.3-cp37-cp37m-win_amd64.whl", hash = "sha256:4289728b5e2000a4ad4ab8da6e1db2e093c63c08bdc0414799ee776a3f78da4b"}, + {file = "lxml-4.6.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b007cbb845b28db4fb8b6a5cdcbf65bacb16a8bd328b53cbc0698688a68e1caa"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux1_i686.whl", hash = "sha256:76fa7b1362d19f8fbd3e75fe2fb7c79359b0af8747e6f7141c338f0bee2f871a"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:26e761ab5b07adf5f555ee82fb4bfc35bf93750499c6c7614bd64d12aaa67927"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:e1cbd3f19a61e27e011e02f9600837b921ac661f0c40560eefb366e4e4fb275e"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:66e575c62792c3f9ca47cb8b6fab9e35bab91360c783d1606f758761810c9791"}, + {file = "lxml-4.6.3-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:1b38116b6e628118dea5b2186ee6820ab138dbb1e24a13e478490c7db2f326ae"}, + {file = "lxml-4.6.3-cp38-cp38-win32.whl", hash = "sha256:89b8b22a5ff72d89d48d0e62abb14340d9e99fd637d046c27b8b257a01ffbe28"}, + {file = "lxml-4.6.3-cp38-cp38-win_amd64.whl", hash = "sha256:2a9d50e69aac3ebee695424f7dbd7b8c6d6eb7de2a2eb6b0f6c7db6aa41e02b7"}, + {file = "lxml-4.6.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ce256aaa50f6cc9a649c51be3cd4ff142d67295bfc4f490c9134d0f9f6d58ef0"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux1_i686.whl", hash = "sha256:7610b8c31688f0b1be0ef882889817939490a36d0ee880ea562a4e1399c447a1"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f8380c03e45cf09f8557bdaa41e1fa7c81f3ae22828e1db470ab2a6c96d8bc23"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:3082c518be8e97324390614dacd041bb1358c882d77108ca1957ba47738d9d59"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:884ab9b29feaca361f7f88d811b1eea9bfca36cf3da27768d28ad45c3ee6f969"}, + {file = "lxml-4.6.3-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:6f12e1427285008fd32a6025e38e977d44d6382cf28e7201ed10d6c1698d2a9a"}, + {file = "lxml-4.6.3-cp39-cp39-win32.whl", hash = "sha256:33bb934a044cf32157c12bfcfbb6649807da20aa92c062ef51903415c704704f"}, + {file = "lxml-4.6.3-cp39-cp39-win_amd64.whl", hash = "sha256:542d454665a3e277f76954418124d67516c5f88e51a900365ed54a9806122b83"}, + {file = "lxml-4.6.3.tar.gz", hash = "sha256:39b78571b3b30645ac77b95f7c69d1bffc4cf8c3b157c435a34da72e78c82468"}, +] +mako = [ + {file = "Mako-1.1.4-py2.py3-none-any.whl", hash = "sha256:aea166356da44b9b830c8023cd9b557fa856bd8b4035d6de771ca027dfc5cc6e"}, + {file = "Mako-1.1.4.tar.gz", hash = "sha256:17831f0b7087c313c0ffae2bcbbd3c1d5ba9eeac9c38f2eb7b50e8c99fe9d5ab"}, +] +markupsafe = [ + {file = "MarkupSafe-2.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:0446679737af14f45767963a1a9ef7620189912317d095f2d9ffa183a4d25d2b"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:f826e31d18b516f653fe296d967d700fddad5901ae07c622bb3705955e1faa94"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:fa130dd50c57d53368c9d59395cb5526eda596d3ffe36666cd81a44d56e48872"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:905fec760bd2fa1388bb5b489ee8ee5f7291d692638ea5f67982d968366bef9f"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:6c4ca60fa24e85fe25b912b01e62cb969d69a23a5d5867682dd3e80b5b02581d"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b2f4bf27480f5e5e8ce285a8c8fd176c0b03e93dcc6646477d4630e83440c6a9"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0717a7390a68be14b8c793ba258e075c6f4ca819f15edfc2a3a027c823718567"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:6557b31b5e2c9ddf0de32a691f2312a32f77cd7681d8af66c2692efdbef84c18"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:49e3ceeabbfb9d66c3aef5af3a60cc43b85c33df25ce03d0031a608b0a8b2e3f"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:d7f9850398e85aba693bb640262d3611788b1f29a79f0c93c565694658f4071f"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:6a7fae0dd14cf60ad5ff42baa2e95727c3d81ded453457771d02b7d2b3f9c0c2"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:b7f2d075102dc8c794cbde1947378051c4e5180d52d276987b8d28a3bd58c17d"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:a30e67a65b53ea0a5e62fe23682cfe22712e01f453b95233b25502f7c61cb415"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:611d1ad9a4288cf3e3c16014564df047fe08410e628f89805e475368bd304914"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:be98f628055368795d818ebf93da628541e10b75b41c559fdf36d104c5787066"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:1d609f577dc6e1aa17d746f8bd3c31aa4d258f4070d61b2aa5c4166c1539de35"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7d91275b0245b1da4d4cfa07e0faedd5b0812efc15b702576d103293e252af1b"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:01a9b8ea66f1658938f65b93a85ebe8bc016e6769611be228d797c9d998dd298"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:47ab1e7b91c098ab893b828deafa1203de86d0bc6ab587b160f78fe6c4011f75"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:97383d78eb34da7e1fa37dd273c20ad4320929af65d156e35a5e2d89566d9dfb"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-win32.whl", hash = "sha256:023cb26ec21ece8dc3907c0e8320058b2e0cb3c55cf9564da612bc325bed5e64"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:984d76483eb32f1bcb536dc27e4ad56bba4baa70be32fa87152832cdd9db0833"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2ef54abee730b502252bcdf31b10dacb0a416229b72c18b19e24a4509f273d26"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3c112550557578c26af18a1ccc9e090bfe03832ae994343cfdacd287db6a6ae7"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:53edb4da6925ad13c07b6d26c2a852bd81e364f95301c66e930ab2aef5b5ddd8"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f5653a225f31e113b152e56f154ccbe59eeb1c7487b39b9d9f9cdb58e6c79dc5"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:4efca8f86c54b22348a5467704e3fec767b2db12fc39c6d963168ab1d3fc9135"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:ab3ef638ace319fa26553db0624c4699e31a28bb2a835c5faca8f8acf6a5a902"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:f8ba0e8349a38d3001fae7eadded3f6606f0da5d748ee53cc1dab1d6527b9509"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-win32.whl", hash = "sha256:10f82115e21dc0dfec9ab5c0223652f7197feb168c940f3ef61563fc2d6beb74"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:693ce3f9e70a6cf7d2fb9e6c9d8b204b6b39897a2c4a1aa65728d5ac97dcc1d8"}, + {file = "MarkupSafe-2.0.1.tar.gz", hash = "sha256:594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a"}, +] +mccabe = [ + {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, + {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, +] +more-itertools = [ + {file = "more-itertools-8.8.0.tar.gz", hash = "sha256:83f0308e05477c68f56ea3a888172c78ed5d5b3c282addb67508e7ba6c8f813a"}, + {file = "more_itertools-8.8.0-py3-none-any.whl", hash = "sha256:2cf89ec599962f2ddc4d568a05defc40e0a587fbc10d5989713638864c36be4d"}, +] +mypy = [ + {file = "mypy-0.770-cp35-cp35m-macosx_10_6_x86_64.whl", hash = "sha256:a34b577cdf6313bf24755f7a0e3f3c326d5c1f4fe7422d1d06498eb25ad0c600"}, + {file = "mypy-0.770-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:86c857510a9b7c3104cf4cde1568f4921762c8f9842e987bc03ed4f160925754"}, + {file = "mypy-0.770-cp35-cp35m-win_amd64.whl", hash = "sha256:a8ffcd53cb5dfc131850851cc09f1c44689c2812d0beb954d8138d4f5fc17f65"}, + {file = "mypy-0.770-cp36-cp36m-macosx_10_6_x86_64.whl", hash = "sha256:7687f6455ec3ed7649d1ae574136835a4272b65b3ddcf01ab8704ac65616c5ce"}, + {file = "mypy-0.770-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:3beff56b453b6ef94ecb2996bea101a08f1f8a9771d3cbf4988a61e4d9973761"}, + {file = "mypy-0.770-cp36-cp36m-win_amd64.whl", hash = "sha256:15b948e1302682e3682f11f50208b726a246ab4e6c1b39f9264a8796bb416aa2"}, + {file = "mypy-0.770-cp37-cp37m-macosx_10_6_x86_64.whl", hash = "sha256:b90928f2d9eb2f33162405f32dde9f6dcead63a0971ca8a1b50eb4ca3e35ceb8"}, + {file = "mypy-0.770-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:c56ffe22faa2e51054c5f7a3bc70a370939c2ed4de308c690e7949230c995913"}, + {file = "mypy-0.770-cp37-cp37m-win_amd64.whl", hash = "sha256:8dfb69fbf9f3aeed18afffb15e319ca7f8da9642336348ddd6cab2713ddcf8f9"}, + {file = "mypy-0.770-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:219a3116ecd015f8dca7b5d2c366c973509dfb9a8fc97ef044a36e3da66144a1"}, + {file = "mypy-0.770-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7ec45a70d40ede1ec7ad7f95b3c94c9cf4c186a32f6bacb1795b60abd2f9ef27"}, + {file = "mypy-0.770-cp38-cp38-win_amd64.whl", hash = "sha256:f91c7ae919bbc3f96cd5e5b2e786b2b108343d1d7972ea130f7de27fdd547cf3"}, + {file = "mypy-0.770-py3-none-any.whl", hash = "sha256:3b1fc683fb204c6b4403a1ef23f0b1fac8e4477091585e0c8c54cbdf7d7bb164"}, + {file = "mypy-0.770.tar.gz", hash = "sha256:8a627507ef9b307b46a1fea9513d5c98680ba09591253082b4c48697ba05a4ae"}, +] +mypy-extensions = [ + {file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"}, + {file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"}, +] +packaging = [ + {file = "packaging-21.0-py3-none-any.whl", hash = "sha256:c86254f9220d55e31cc94d69bade760f0847da8000def4dfe1c6b872fd14ff14"}, + {file = "packaging-21.0.tar.gz", hash = "sha256:7dc96269f53a4ccec5c0670940a4281106dd0bb343f47b7471f779df49c2fbe7"}, +] +passlib = [ + {file = "passlib-1.7.4-py2.py3-none-any.whl", hash = "sha256:aa6bca462b8d8bda89c70b382f0c298a20b5560af6cbfa2dce410c0a2fb669f1"}, + {file = "passlib-1.7.4.tar.gz", hash = "sha256:defd50f72b65c5402ab2c573830a6978e5f202ad0d984793c8dde2c4152ebe04"}, +] +pathspec = [ + {file = "pathspec-0.9.0-py2.py3-none-any.whl", hash = "sha256:7d15c4ddb0b5c802d161efc417ec1a2558ea2653c2e8ad9c19098201dc1c993a"}, + {file = "pathspec-0.9.0.tar.gz", hash = "sha256:e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1"}, +] +pluggy = [ + {file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"}, + {file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"}, +] +premailer = [ + {file = "premailer-3.9.0-py2.py3-none-any.whl", hash = "sha256:d674826981be58d2eaa51db25f31bfe02f2859760aa1ff9879de9110f48e6476"}, + {file = "premailer-3.9.0.tar.gz", hash = "sha256:da18b9e8cb908893b67ab9b7451276fef7c0ab179f40189378545f6bb0ab3695"}, +] +psycopg2-binary = [ + {file = "psycopg2-binary-2.9.1.tar.gz", hash = "sha256:b0221ca5a9837e040ebf61f48899926b5783668b7807419e4adae8175a31f773"}, + {file = "psycopg2_binary-2.9.1-cp36-cp36m-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:c250a7ec489b652c892e4f0a5d122cc14c3780f9f643e1a326754aedf82d9a76"}, + {file = "psycopg2_binary-2.9.1-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aef9aee84ec78af51107181d02fe8773b100b01c5dfde351184ad9223eab3698"}, + {file = "psycopg2_binary-2.9.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:123c3fb684e9abfc47218d3784c7b4c47c8587951ea4dd5bc38b6636ac57f616"}, + {file = "psycopg2_binary-2.9.1-cp36-cp36m-manylinux_2_24_aarch64.whl", hash = "sha256:995fc41ebda5a7a663a254a1dcac52638c3e847f48307b5416ee373da15075d7"}, + {file = "psycopg2_binary-2.9.1-cp36-cp36m-manylinux_2_24_ppc64le.whl", hash = "sha256:fbb42a541b1093385a2d8c7eec94d26d30437d0e77c1d25dae1dcc46741a385e"}, + {file = "psycopg2_binary-2.9.1-cp36-cp36m-win32.whl", hash = "sha256:20f1ab44d8c352074e2d7ca67dc00843067788791be373e67a0911998787ce7d"}, + {file = "psycopg2_binary-2.9.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f6fac64a38f6768e7bc7b035b9e10d8a538a9fadce06b983fb3e6fa55ac5f5ce"}, + {file = "psycopg2_binary-2.9.1-cp37-cp37m-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:1e3a362790edc0a365385b1ac4cc0acc429a0c0d662d829a50b6ce743ae61b5a"}, + {file = "psycopg2_binary-2.9.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f8559617b1fcf59a9aedba2c9838b5b6aa211ffedecabca412b92a1ff75aac1a"}, + {file = "psycopg2_binary-2.9.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a36c7eb6152ba5467fb264d73844877be8b0847874d4822b7cf2d3c0cb8cdcb0"}, + {file = "psycopg2_binary-2.9.1-cp37-cp37m-manylinux_2_24_aarch64.whl", hash = "sha256:2f62c207d1740b0bde5c4e949f857b044818f734a3d57f1d0d0edc65050532ed"}, + {file = "psycopg2_binary-2.9.1-cp37-cp37m-manylinux_2_24_ppc64le.whl", hash = "sha256:cfc523edecddaef56f6740d7de1ce24a2fdf94fd5e704091856a201872e37f9f"}, + {file = "psycopg2_binary-2.9.1-cp37-cp37m-win32.whl", hash = "sha256:1e85b74cbbb3056e3656f1cc4781294df03383127a8114cbc6531e8b8367bf1e"}, + {file = "psycopg2_binary-2.9.1-cp37-cp37m-win_amd64.whl", hash = "sha256:1473c0215b0613dd938db54a653f68251a45a78b05f6fc21af4326f40e8360a2"}, + {file = "psycopg2_binary-2.9.1-cp38-cp38-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:35c4310f8febe41f442d3c65066ca93cccefd75013df3d8c736c5b93ec288140"}, + {file = "psycopg2_binary-2.9.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8c13d72ed6af7fd2c8acbd95661cf9477f94e381fce0792c04981a8283b52917"}, + {file = "psycopg2_binary-2.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14db1752acdd2187d99cb2ca0a1a6dfe57fc65c3281e0f20e597aac8d2a5bd90"}, + {file = "psycopg2_binary-2.9.1-cp38-cp38-manylinux_2_24_aarch64.whl", hash = "sha256:aed4a9a7e3221b3e252c39d0bf794c438dc5453bc2963e8befe9d4cd324dff72"}, + {file = "psycopg2_binary-2.9.1-cp38-cp38-manylinux_2_24_ppc64le.whl", hash = "sha256:da113b70f6ec40e7d81b43d1b139b9db6a05727ab8be1ee559f3a69854a69d34"}, + {file = "psycopg2_binary-2.9.1-cp38-cp38-win32.whl", hash = "sha256:4235f9d5ddcab0b8dbd723dca56ea2922b485ea00e1dafacf33b0c7e840b3d32"}, + {file = "psycopg2_binary-2.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:988b47ac70d204aed01589ed342303da7c4d84b56c2f4c4b8b00deda123372bf"}, + {file = "psycopg2_binary-2.9.1-cp39-cp39-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:7360647ea04db2e7dff1648d1da825c8cf68dc5fbd80b8fb5b3ee9f068dcd21a"}, + {file = "psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca86db5b561b894f9e5f115d6a159fff2a2570a652e07889d8a383b5fae66eb4"}, + {file = "psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ced67f1e34e1a450cdb48eb53ca73b60aa0af21c46b9b35ac3e581cf9f00e31"}, + {file = "psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_24_aarch64.whl", hash = "sha256:0f2e04bd2a2ab54fa44ee67fe2d002bb90cee1c0f1cc0ebc3148af7b02034cbd"}, + {file = "psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_24_ppc64le.whl", hash = "sha256:3242b9619de955ab44581a03a64bdd7d5e470cc4183e8fcadd85ab9d3756ce7a"}, + {file = "psycopg2_binary-2.9.1-cp39-cp39-win32.whl", hash = "sha256:0b7dae87f0b729922e06f85f667de7bf16455d411971b2043bbd9577af9d1975"}, + {file = "psycopg2_binary-2.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:b4d7679a08fea64573c969f6994a2631908bb2c0e69a7235648642f3d2e39a68"}, +] +py = [ + {file = "py-1.10.0-py2.py3-none-any.whl", hash = "sha256:3b80836aa6d1feeaa108e046da6423ab8f6ceda6468545ae8d02d9d58d18818a"}, + {file = "py-1.10.0.tar.gz", hash = "sha256:21b81bda15b66ef5e1a777a21c4dcd9c20ad3efd0b3f817e7a809035269e1bd3"}, +] +pyasn1 = [ + {file = "pyasn1-0.4.8-py2.4.egg", hash = "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"}, + {file = "pyasn1-0.4.8-py2.5.egg", hash = "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf"}, + {file = "pyasn1-0.4.8-py2.6.egg", hash = "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00"}, + {file = "pyasn1-0.4.8-py2.7.egg", hash = "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8"}, + {file = "pyasn1-0.4.8-py2.py3-none-any.whl", hash = "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d"}, + {file = "pyasn1-0.4.8-py3.1.egg", hash = "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86"}, + {file = "pyasn1-0.4.8-py3.2.egg", hash = "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7"}, + {file = "pyasn1-0.4.8-py3.3.egg", hash = "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576"}, + {file = "pyasn1-0.4.8-py3.4.egg", hash = "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12"}, + {file = "pyasn1-0.4.8-py3.5.egg", hash = "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2"}, + {file = "pyasn1-0.4.8-py3.6.egg", hash = "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359"}, + {file = "pyasn1-0.4.8-py3.7.egg", hash = "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776"}, + {file = "pyasn1-0.4.8.tar.gz", hash = "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba"}, +] +pycodestyle = [ + {file = "pycodestyle-2.7.0-py2.py3-none-any.whl", hash = "sha256:514f76d918fcc0b55c6680472f0a37970994e07bbb80725808c17089be302068"}, + {file = "pycodestyle-2.7.0.tar.gz", hash = "sha256:c389c1d06bf7904078ca03399a4816f974a1d590090fecea0c63ec26ebaf1cef"}, +] +pycparser = [ + {file = "pycparser-2.20-py2.py3-none-any.whl", hash = "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"}, + {file = "pycparser-2.20.tar.gz", hash = "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0"}, +] +pydantic = [ + {file = "pydantic-1.8.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:05ddfd37c1720c392f4e0d43c484217b7521558302e7069ce8d318438d297739"}, + {file = "pydantic-1.8.2-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:a7c6002203fe2c5a1b5cbb141bb85060cbff88c2d78eccbc72d97eb7022c43e4"}, + {file = "pydantic-1.8.2-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:589eb6cd6361e8ac341db97602eb7f354551482368a37f4fd086c0733548308e"}, + {file = "pydantic-1.8.2-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:10e5622224245941efc193ad1d159887872776df7a8fd592ed746aa25d071840"}, + {file = "pydantic-1.8.2-cp36-cp36m-win_amd64.whl", hash = "sha256:99a9fc39470010c45c161a1dc584997f1feb13f689ecf645f59bb4ba623e586b"}, + {file = "pydantic-1.8.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a83db7205f60c6a86f2c44a61791d993dff4b73135df1973ecd9eed5ea0bda20"}, + {file = "pydantic-1.8.2-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:41b542c0b3c42dc17da70554bc6f38cbc30d7066d2c2815a94499b5684582ecb"}, + {file = "pydantic-1.8.2-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:ea5cb40a3b23b3265f6325727ddfc45141b08ed665458be8c6285e7b85bd73a1"}, + {file = "pydantic-1.8.2-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:18b5ea242dd3e62dbf89b2b0ec9ba6c7b5abaf6af85b95a97b00279f65845a23"}, + {file = "pydantic-1.8.2-cp37-cp37m-win_amd64.whl", hash = "sha256:234a6c19f1c14e25e362cb05c68afb7f183eb931dd3cd4605eafff055ebbf287"}, + {file = "pydantic-1.8.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:021ea0e4133e8c824775a0cfe098677acf6fa5a3cbf9206a376eed3fc09302cd"}, + {file = "pydantic-1.8.2-cp38-cp38-manylinux1_i686.whl", hash = "sha256:e710876437bc07bd414ff453ac8ec63d219e7690128d925c6e82889d674bb505"}, + {file = "pydantic-1.8.2-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:ac8eed4ca3bd3aadc58a13c2aa93cd8a884bcf21cb019f8cfecaae3b6ce3746e"}, + {file = "pydantic-1.8.2-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:4a03cbbe743e9c7247ceae6f0d8898f7a64bb65800a45cbdc52d65e370570820"}, + {file = "pydantic-1.8.2-cp38-cp38-win_amd64.whl", hash = "sha256:8621559dcf5afacf0069ed194278f35c255dc1a1385c28b32dd6c110fd6531b3"}, + {file = "pydantic-1.8.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8b223557f9510cf0bfd8b01316bf6dd281cf41826607eada99662f5e4963f316"}, + {file = "pydantic-1.8.2-cp39-cp39-manylinux1_i686.whl", hash = "sha256:244ad78eeb388a43b0c927e74d3af78008e944074b7d0f4f696ddd5b2af43c62"}, + {file = "pydantic-1.8.2-cp39-cp39-manylinux2014_i686.whl", hash = "sha256:05ef5246a7ffd2ce12a619cbb29f3307b7c4509307b1b49f456657b43529dc6f"}, + {file = "pydantic-1.8.2-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:54cd5121383f4a461ff7644c7ca20c0419d58052db70d8791eacbbe31528916b"}, + {file = "pydantic-1.8.2-cp39-cp39-win_amd64.whl", hash = "sha256:4be75bebf676a5f0f87937c6ddb061fa39cbea067240d98e298508c1bda6f3f3"}, + {file = "pydantic-1.8.2-py3-none-any.whl", hash = "sha256:fec866a0b59f372b7e776f2d7308511784dace622e0992a0b59ea3ccee0ae833"}, + {file = "pydantic-1.8.2.tar.gz", hash = "sha256:26464e57ccaafe72b7ad156fdaa4e9b9ef051f69e175dbbb463283000c05ab7b"}, +] +pyflakes = [ + {file = "pyflakes-2.3.1-py2.py3-none-any.whl", hash = "sha256:7893783d01b8a89811dd72d7dfd4d84ff098e5eed95cfa8905b22bbffe52efc3"}, + {file = "pyflakes-2.3.1.tar.gz", hash = "sha256:f5bc8ecabc05bb9d291eb5203d6810b49040f6ff446a756326104746cc00c1db"}, +] +pyparsing = [ + {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"}, + {file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"}, +] +pytest = [ + {file = "pytest-5.4.3-py3-none-any.whl", hash = "sha256:5c0db86b698e8f170ba4582a492248919255fcd4c79b1ee64ace34301fb589a1"}, + {file = "pytest-5.4.3.tar.gz", hash = "sha256:7979331bfcba207414f5e1263b5a0f8f521d0f457318836a7355531ed1a4c7d8"}, +] +pytest-cov = [ + {file = "pytest-cov-2.12.1.tar.gz", hash = "sha256:261ceeb8c227b726249b376b8526b600f38667ee314f910353fa318caa01f4d7"}, + {file = "pytest_cov-2.12.1-py2.py3-none-any.whl", hash = "sha256:261bb9e47e65bd099c89c3edf92972865210c36813f80ede5277dceb77a4a62a"}, +] +python-dateutil = [ + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, +] +python-dotenv = [ + {file = "python-dotenv-0.18.0.tar.gz", hash = "sha256:effaac3c1e58d89b3ccb4d04a40dc7ad6e0275fda25fd75ae9d323e2465e202d"}, + {file = "python_dotenv-0.18.0-py2.py3-none-any.whl", hash = "sha256:dd8fe852847f4fbfadabf6183ddd4c824a9651f02d51714fa075c95561959c7d"}, +] +python-editor = [ + {file = "python-editor-1.0.4.tar.gz", hash = "sha256:51fda6bcc5ddbbb7063b2af7509e43bd84bfc32a4ff71349ec7847713882327b"}, + {file = "python_editor-1.0.4-py2-none-any.whl", hash = "sha256:5f98b069316ea1c2ed3f67e7f5df6c0d8f10b689964a4a811ff64f0106819ec8"}, + {file = "python_editor-1.0.4-py2.7.egg", hash = "sha256:ea87e17f6ec459e780e4221f295411462e0d0810858e055fc514684350a2f522"}, + {file = "python_editor-1.0.4-py3-none-any.whl", hash = "sha256:1bf6e860a8ad52a14c3ee1252d5dc25b2030618ed80c022598f00176adc8367d"}, + {file = "python_editor-1.0.4-py3.5.egg", hash = "sha256:c3da2053dbab6b29c94e43c486ff67206eafbe7eb52dbec7390b5e2fb05aac77"}, +] +python-jose = [ + {file = "python-jose-3.3.0.tar.gz", hash = "sha256:55779b5e6ad599c6336191246e95eb2293a9ddebd555f796a65f838f07e5d78a"}, + {file = "python_jose-3.3.0-py2.py3-none-any.whl", hash = "sha256:9b1376b023f8b298536eedd47ae1089bcdb848f1535ab30555cd92002d78923a"}, +] +python-multipart = [ + {file = "python-multipart-0.0.5.tar.gz", hash = "sha256:f7bb5f611fc600d15fa47b3974c8aa16e93724513b49b5f95c81e6624c83fa43"}, +] +pytz = [ + {file = "pytz-2021.1-py2.py3-none-any.whl", hash = "sha256:eb10ce3e7736052ed3623d49975ce333bcd712c7bb19a58b9e2089d4057d0798"}, + {file = "pytz-2021.1.tar.gz", hash = "sha256:83a4a90894bf38e243cf052c8b58f381bfe9a7a483f6a9cab140bc7f702ac4da"}, +] +pyyaml = [ + {file = "PyYAML-5.4.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:3b2b1824fe7112845700f815ff6a489360226a5609b96ec2190a45e62a9fc922"}, + {file = "PyYAML-5.4.1-cp27-cp27m-win32.whl", hash = "sha256:129def1b7c1bf22faffd67b8f3724645203b79d8f4cc81f674654d9902cb4393"}, + {file = "PyYAML-5.4.1-cp27-cp27m-win_amd64.whl", hash = "sha256:4465124ef1b18d9ace298060f4eccc64b0850899ac4ac53294547536533800c8"}, + {file = "PyYAML-5.4.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:bb4191dfc9306777bc594117aee052446b3fa88737cd13b7188d0e7aa8162185"}, + {file = "PyYAML-5.4.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:6c78645d400265a062508ae399b60b8c167bf003db364ecb26dcab2bda048253"}, + {file = "PyYAML-5.4.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:4e0583d24c881e14342eaf4ec5fbc97f934b999a6828693a99157fde912540cc"}, + {file = "PyYAML-5.4.1-cp36-cp36m-win32.whl", hash = "sha256:3bd0e463264cf257d1ffd2e40223b197271046d09dadf73a0fe82b9c1fc385a5"}, + {file = "PyYAML-5.4.1-cp36-cp36m-win_amd64.whl", hash = "sha256:e4fac90784481d221a8e4b1162afa7c47ed953be40d31ab4629ae917510051df"}, + {file = "PyYAML-5.4.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5accb17103e43963b80e6f837831f38d314a0495500067cb25afab2e8d7a4018"}, + {file = "PyYAML-5.4.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:e1d4970ea66be07ae37a3c2e48b5ec63f7ba6804bdddfdbd3cfd954d25a82e63"}, + {file = "PyYAML-5.4.1-cp37-cp37m-win32.whl", hash = "sha256:dd5de0646207f053eb0d6c74ae45ba98c3395a571a2891858e87df7c9b9bd51b"}, + {file = "PyYAML-5.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:08682f6b72c722394747bddaf0aa62277e02557c0fd1c42cb853016a38f8dedf"}, + {file = "PyYAML-5.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d2d9808ea7b4af864f35ea216be506ecec180628aced0704e34aca0b040ffe46"}, + {file = "PyYAML-5.4.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:8c1be557ee92a20f184922c7b6424e8ab6691788e6d86137c5d93c1a6ec1b8fb"}, + {file = "PyYAML-5.4.1-cp38-cp38-win32.whl", hash = "sha256:fa5ae20527d8e831e8230cbffd9f8fe952815b2b7dae6ffec25318803a7528fc"}, + {file = "PyYAML-5.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:0f5f5786c0e09baddcd8b4b45f20a7b5d61a7e7e99846e3c799b05c7c53fa696"}, + {file = "PyYAML-5.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:294db365efa064d00b8d1ef65d8ea2c3426ac366c0c4368d930bf1c5fb497f77"}, + {file = "PyYAML-5.4.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:74c1485f7707cf707a7aef42ef6322b8f97921bd89be2ab6317fd782c2d53183"}, + {file = "PyYAML-5.4.1-cp39-cp39-win32.whl", hash = "sha256:49d4cdd9065b9b6e206d0595fee27a96b5dd22618e7520c33204a4a3239d5b10"}, + {file = "PyYAML-5.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:c20cfa2d49991c8b4147af39859b167664f2ad4561704ee74c1de03318e898db"}, + {file = "PyYAML-5.4.1.tar.gz", hash = "sha256:607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e"}, +] +raven = [ + {file = "raven-6.10.0-py2.py3-none-any.whl", hash = "sha256:44a13f87670836e153951af9a3c80405d36b43097db869a36e92809673692ce4"}, + {file = "raven-6.10.0.tar.gz", hash = "sha256:3fa6de6efa2493a7c827472e984ce9b020797d0da16f1db67197bcc23c8fae54"}, +] +regex = [ + {file = "regex-2021.7.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e6a1e5ca97d411a461041d057348e578dc344ecd2add3555aedba3b408c9f874"}, + {file = "regex-2021.7.6-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:6afe6a627888c9a6cfbb603d1d017ce204cebd589d66e0703309b8048c3b0854"}, + {file = "regex-2021.7.6-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:ccb3d2190476d00414aab36cca453e4596e8f70a206e2aa8db3d495a109153d2"}, + {file = "regex-2021.7.6-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:ed693137a9187052fc46eedfafdcb74e09917166362af4cc4fddc3b31560e93d"}, + {file = "regex-2021.7.6-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:99d8ab206a5270c1002bfcf25c51bf329ca951e5a169f3b43214fdda1f0b5f0d"}, + {file = "regex-2021.7.6-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:b85ac458354165405c8a84725de7bbd07b00d9f72c31a60ffbf96bb38d3e25fa"}, + {file = "regex-2021.7.6-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:3f5716923d3d0bfb27048242a6e0f14eecdb2e2a7fac47eda1d055288595f222"}, + {file = "regex-2021.7.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e5983c19d0beb6af88cb4d47afb92d96751fb3fa1784d8785b1cdf14c6519407"}, + {file = "regex-2021.7.6-cp36-cp36m-win32.whl", hash = "sha256:c92831dac113a6e0ab28bc98f33781383fe294df1a2c3dfd1e850114da35fd5b"}, + {file = "regex-2021.7.6-cp36-cp36m-win_amd64.whl", hash = "sha256:791aa1b300e5b6e5d597c37c346fb4d66422178566bbb426dd87eaae475053fb"}, + {file = "regex-2021.7.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:59506c6e8bd9306cd8a41511e32d16d5d1194110b8cfe5a11d102d8b63cf945d"}, + {file = "regex-2021.7.6-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:564a4c8a29435d1f2256ba247a0315325ea63335508ad8ed938a4f14c4116a5d"}, + {file = "regex-2021.7.6-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:59c00bb8dd8775473cbfb967925ad2c3ecc8886b3b2d0c90a8e2707e06c743f0"}, + {file = "regex-2021.7.6-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:9a854b916806c7e3b40e6616ac9e85d3cdb7649d9e6590653deb5b341a736cec"}, + {file = "regex-2021.7.6-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:db2b7df831c3187a37f3bb80ec095f249fa276dbe09abd3d35297fc250385694"}, + {file = "regex-2021.7.6-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:173bc44ff95bc1e96398c38f3629d86fa72e539c79900283afa895694229fe6a"}, + {file = "regex-2021.7.6-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:15dddb19823f5147e7517bb12635b3c82e6f2a3a6b696cc3e321522e8b9308ad"}, + {file = "regex-2021.7.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ddeabc7652024803666ea09f32dd1ed40a0579b6fbb2a213eba590683025895"}, + {file = "regex-2021.7.6-cp37-cp37m-win32.whl", hash = "sha256:f080248b3e029d052bf74a897b9d74cfb7643537fbde97fe8225a6467fb559b5"}, + {file = "regex-2021.7.6-cp37-cp37m-win_amd64.whl", hash = "sha256:d8bbce0c96462dbceaa7ac4a7dfbbee92745b801b24bce10a98d2f2b1ea9432f"}, + {file = "regex-2021.7.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:edd1a68f79b89b0c57339bce297ad5d5ffcc6ae7e1afdb10f1947706ed066c9c"}, + {file = "regex-2021.7.6-cp38-cp38-manylinux1_i686.whl", hash = "sha256:422dec1e7cbb2efbbe50e3f1de36b82906def93ed48da12d1714cabcd993d7f0"}, + {file = "regex-2021.7.6-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:cbe23b323988a04c3e5b0c387fe3f8f363bf06c0680daf775875d979e376bd26"}, + {file = "regex-2021.7.6-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:0eb2c6e0fcec5e0f1d3bcc1133556563222a2ffd2211945d7b1480c1b1a42a6f"}, + {file = "regex-2021.7.6-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:1c78780bf46d620ff4fff40728f98b8afd8b8e35c3efd638c7df67be2d5cddbf"}, + {file = "regex-2021.7.6-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:bc84fb254a875a9f66616ed4538542fb7965db6356f3df571d783f7c8d256edd"}, + {file = "regex-2021.7.6-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:598c0a79b4b851b922f504f9f39a863d83ebdfff787261a5ed061c21e67dd761"}, + {file = "regex-2021.7.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:875c355360d0f8d3d827e462b29ea7682bf52327d500a4f837e934e9e4656068"}, + {file = "regex-2021.7.6-cp38-cp38-win32.whl", hash = "sha256:e586f448df2bbc37dfadccdb7ccd125c62b4348cb90c10840d695592aa1b29e0"}, + {file = "regex-2021.7.6-cp38-cp38-win_amd64.whl", hash = "sha256:2fe5e71e11a54e3355fa272137d521a40aace5d937d08b494bed4529964c19c4"}, + {file = "regex-2021.7.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6110bab7eab6566492618540c70edd4d2a18f40ca1d51d704f1d81c52d245026"}, + {file = "regex-2021.7.6-cp39-cp39-manylinux1_i686.whl", hash = "sha256:4f64fc59fd5b10557f6cd0937e1597af022ad9b27d454e182485f1db3008f417"}, + {file = "regex-2021.7.6-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:89e5528803566af4df368df2d6f503c84fbfb8249e6631c7b025fe23e6bd0cde"}, + {file = "regex-2021.7.6-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:2366fe0479ca0e9afa534174faa2beae87847d208d457d200183f28c74eaea59"}, + {file = "regex-2021.7.6-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:f9392a4555f3e4cb45310a65b403d86b589adc773898c25a39184b1ba4db8985"}, + {file = "regex-2021.7.6-cp39-cp39-manylinux2014_i686.whl", hash = "sha256:2bceeb491b38225b1fee4517107b8491ba54fba77cf22a12e996d96a3c55613d"}, + {file = "regex-2021.7.6-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:f98dc35ab9a749276f1a4a38ab3e0e2ba1662ce710f6530f5b0a6656f1c32b58"}, + {file = "regex-2021.7.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:319eb2a8d0888fa6f1d9177705f341bc9455a2c8aca130016e52c7fe8d6c37a3"}, + {file = "regex-2021.7.6-cp39-cp39-win32.whl", hash = "sha256:eaf58b9e30e0e546cdc3ac06cf9165a1ca5b3de8221e9df679416ca667972035"}, + {file = "regex-2021.7.6-cp39-cp39-win_amd64.whl", hash = "sha256:4c9c3155fe74269f61e27617529b7f09552fbb12e44b1189cebbdb24294e6e1c"}, + {file = "regex-2021.7.6.tar.gz", hash = "sha256:8394e266005f2d8c6f0bc6780001f7afa3ef81a7a2111fa35058ded6fce79e4d"}, +] +requests = [ + {file = "requests-2.26.0-py2.py3-none-any.whl", hash = "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24"}, + {file = "requests-2.26.0.tar.gz", hash = "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"}, +] +rsa = [ + {file = "rsa-4.7.2-py3-none-any.whl", hash = "sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2"}, + {file = "rsa-4.7.2.tar.gz", hash = "sha256:9d689e6ca1b3038bc82bf8d23e944b6b6037bc02301a574935b2dd946e0353b9"}, +] +six = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] +sqlalchemy = [ + {file = "SQLAlchemy-1.3.24-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:87a2725ad7d41cd7376373c15fd8bf674e9c33ca56d0b8036add2d634dba372e"}, + {file = "SQLAlchemy-1.3.24-cp27-cp27m-win32.whl", hash = "sha256:f597a243b8550a3a0b15122b14e49d8a7e622ba1c9d29776af741f1845478d79"}, + {file = "SQLAlchemy-1.3.24-cp27-cp27m-win_amd64.whl", hash = "sha256:fc4cddb0b474b12ed7bdce6be1b9edc65352e8ce66bc10ff8cbbfb3d4047dbf4"}, + {file = "SQLAlchemy-1.3.24-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:f1149d6e5c49d069163e58a3196865e4321bad1803d7886e07d8710de392c548"}, + {file = "SQLAlchemy-1.3.24-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:14f0eb5db872c231b20c18b1e5806352723a3a89fb4254af3b3e14f22eaaec75"}, + {file = "SQLAlchemy-1.3.24-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:e98d09f487267f1e8d1179bf3b9d7709b30a916491997137dd24d6ae44d18d79"}, + {file = "SQLAlchemy-1.3.24-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:fc1f2a5a5963e2e73bac4926bdaf7790c4d7d77e8fc0590817880e22dd9d0b8b"}, + {file = "SQLAlchemy-1.3.24-cp35-cp35m-win32.whl", hash = "sha256:f3c5c52f7cb8b84bfaaf22d82cb9e6e9a8297f7c2ed14d806a0f5e4d22e83fb7"}, + {file = "SQLAlchemy-1.3.24-cp35-cp35m-win_amd64.whl", hash = "sha256:0352db1befcbed2f9282e72843f1963860bf0e0472a4fa5cf8ee084318e0e6ab"}, + {file = "SQLAlchemy-1.3.24-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:2ed6343b625b16bcb63c5b10523fd15ed8934e1ed0f772c534985e9f5e73d894"}, + {file = "SQLAlchemy-1.3.24-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:34fcec18f6e4b24b4a5f6185205a04f1eab1e56f8f1d028a2a03694ebcc2ddd4"}, + {file = "SQLAlchemy-1.3.24-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:e47e257ba5934550d7235665eee6c911dc7178419b614ba9e1fbb1ce6325b14f"}, + {file = "SQLAlchemy-1.3.24-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:816de75418ea0953b5eb7b8a74933ee5a46719491cd2b16f718afc4b291a9658"}, + {file = "SQLAlchemy-1.3.24-cp36-cp36m-win32.whl", hash = "sha256:26155ea7a243cbf23287f390dba13d7927ffa1586d3208e0e8d615d0c506f996"}, + {file = "SQLAlchemy-1.3.24-cp36-cp36m-win_amd64.whl", hash = "sha256:f03bd97650d2e42710fbe4cf8a59fae657f191df851fc9fc683ecef10746a375"}, + {file = "SQLAlchemy-1.3.24-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:a006d05d9aa052657ee3e4dc92544faae5fcbaafc6128217310945610d862d39"}, + {file = "SQLAlchemy-1.3.24-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:1e2f89d2e5e3c7a88e25a3b0e43626dba8db2aa700253023b82e630d12b37109"}, + {file = "SQLAlchemy-1.3.24-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:0d5d862b1cfbec5028ce1ecac06a3b42bc7703eb80e4b53fceb2738724311443"}, + {file = "SQLAlchemy-1.3.24-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:0172423a27fbcae3751ef016663b72e1a516777de324a76e30efa170dbd3dd2d"}, + {file = "SQLAlchemy-1.3.24-cp37-cp37m-win32.whl", hash = "sha256:d37843fb8df90376e9e91336724d78a32b988d3d20ab6656da4eb8ee3a45b63c"}, + {file = "SQLAlchemy-1.3.24-cp37-cp37m-win_amd64.whl", hash = "sha256:c10ff6112d119f82b1618b6dc28126798481b9355d8748b64b9b55051eb4f01b"}, + {file = "SQLAlchemy-1.3.24-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:861e459b0e97673af6cc5e7f597035c2e3acdfb2608132665406cded25ba64c7"}, + {file = "SQLAlchemy-1.3.24-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:5de2464c254380d8a6c20a2746614d5a436260be1507491442cf1088e59430d2"}, + {file = "SQLAlchemy-1.3.24-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:d375d8ccd3cebae8d90270f7aa8532fe05908f79e78ae489068f3b4eee5994e8"}, + {file = "SQLAlchemy-1.3.24-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:014ea143572fee1c18322b7908140ad23b3994036ef4c0d630110faf942652f8"}, + {file = "SQLAlchemy-1.3.24-cp38-cp38-win32.whl", hash = "sha256:6607ae6cd3a07f8a4c3198ffbf256c261661965742e2b5265a77cd5c679c9bba"}, + {file = "SQLAlchemy-1.3.24-cp38-cp38-win_amd64.whl", hash = "sha256:fcb251305fa24a490b6a9ee2180e5f8252915fb778d3dafc70f9cc3f863827b9"}, + {file = "SQLAlchemy-1.3.24-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:01aa5f803db724447c1d423ed583e42bf5264c597fd55e4add4301f163b0be48"}, + {file = "SQLAlchemy-1.3.24-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:4d0e3515ef98aa4f0dc289ff2eebb0ece6260bbf37c2ea2022aad63797eacf60"}, + {file = "SQLAlchemy-1.3.24-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:bce28277f308db43a6b4965734366f533b3ff009571ec7ffa583cb77539b84d6"}, + {file = "SQLAlchemy-1.3.24-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:8110e6c414d3efc574543109ee618fe2c1f96fa31833a1ff36cc34e968c4f233"}, + {file = "SQLAlchemy-1.3.24-cp39-cp39-win32.whl", hash = "sha256:ee5f5188edb20a29c1cc4a039b074fdc5575337c9a68f3063449ab47757bb064"}, + {file = "SQLAlchemy-1.3.24-cp39-cp39-win_amd64.whl", hash = "sha256:09083c2487ca3c0865dc588e07aeaa25416da3d95f7482c07e92f47e080aa17b"}, + {file = "SQLAlchemy-1.3.24.tar.gz", hash = "sha256:ebbb777cbf9312359b897bf81ba00dae0f5cb69fba2a18265dcc18a6f5ef7519"}, +] +sqlalchemy-stubs = [ + {file = "sqlalchemy-stubs-0.3.tar.gz", hash = "sha256:a3318c810697164e8c818aa2d90bac570c1a0e752ced3ec25455b309c0bee8fd"}, + {file = "sqlalchemy_stubs-0.3-py3-none-any.whl", hash = "sha256:ca1250605a39648cc433f5c70cb1a6f9fe0b60bdda4c51e1f9a2ab3651daadc8"}, +] +starlette = [ + {file = "starlette-0.14.2-py3-none-any.whl", hash = "sha256:3c8e48e52736b3161e34c9f0e8153b4f32ec5d8995a3ee1d59410d92f75162ed"}, + {file = "starlette-0.14.2.tar.gz", hash = "sha256:7d49f4a27f8742262ef1470608c59ddbc66baf37c148e938c7038e6bc7a998aa"}, +] +tenacity = [ + {file = "tenacity-6.3.1-py2.py3-none-any.whl", hash = "sha256:baed357d9f35ec64264d8a4bbf004c35058fad8795c5b0d8a7dc77ecdcbb8f39"}, + {file = "tenacity-6.3.1.tar.gz", hash = "sha256:e14d191fb0a309b563904bbc336582efe2037de437e543b38da749769b544d7f"}, +] +toml = [ + {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, + {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, +] +typed-ast = [ + {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:2068531575a125b87a41802130fa7e29f26c09a2833fea68d9a40cf33902eba6"}, + {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:c907f561b1e83e93fad565bac5ba9c22d96a54e7ea0267c708bffe863cbe4075"}, + {file = "typed_ast-1.4.3-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:1b3ead4a96c9101bef08f9f7d1217c096f31667617b58de957f690c92378b528"}, + {file = "typed_ast-1.4.3-cp35-cp35m-win32.whl", hash = "sha256:dde816ca9dac1d9c01dd504ea5967821606f02e510438120091b84e852367428"}, + {file = "typed_ast-1.4.3-cp35-cp35m-win_amd64.whl", hash = "sha256:777a26c84bea6cd934422ac2e3b78863a37017618b6e5c08f92ef69853e765d3"}, + {file = "typed_ast-1.4.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f8afcf15cc511ada719a88e013cec87c11aff7b91f019295eb4530f96fe5ef2f"}, + {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:52b1eb8c83f178ab787f3a4283f68258525f8d70f778a2f6dd54d3b5e5fb4341"}, + {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:01ae5f73431d21eead5015997ab41afa53aa1fbe252f9da060be5dad2c730ace"}, + {file = "typed_ast-1.4.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:c190f0899e9f9f8b6b7863debfb739abcb21a5c054f911ca3596d12b8a4c4c7f"}, + {file = "typed_ast-1.4.3-cp36-cp36m-win32.whl", hash = "sha256:398e44cd480f4d2b7ee8d98385ca104e35c81525dd98c519acff1b79bdaac363"}, + {file = "typed_ast-1.4.3-cp36-cp36m-win_amd64.whl", hash = "sha256:bff6ad71c81b3bba8fa35f0f1921fb24ff4476235a6e94a26ada2e54370e6da7"}, + {file = "typed_ast-1.4.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0fb71b8c643187d7492c1f8352f2c15b4c4af3f6338f21681d3681b3dc31a266"}, + {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:760ad187b1041a154f0e4d0f6aae3e40fdb51d6de16e5c99aedadd9246450e9e"}, + {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:5feca99c17af94057417d744607b82dd0a664fd5e4ca98061480fd8b14b18d04"}, + {file = "typed_ast-1.4.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:95431a26309a21874005845c21118c83991c63ea800dd44843e42a916aec5899"}, + {file = "typed_ast-1.4.3-cp37-cp37m-win32.whl", hash = "sha256:aee0c1256be6c07bd3e1263ff920c325b59849dc95392a05f258bb9b259cf39c"}, + {file = "typed_ast-1.4.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9ad2c92ec681e02baf81fdfa056fe0d818645efa9af1f1cd5fd6f1bd2bdfd805"}, + {file = "typed_ast-1.4.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b36b4f3920103a25e1d5d024d155c504080959582b928e91cb608a65c3a49e1a"}, + {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_i686.whl", hash = "sha256:067a74454df670dcaa4e59349a2e5c81e567d8d65458d480a5b3dfecec08c5ff"}, + {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7538e495704e2ccda9b234b82423a4038f324f3a10c43bc088a1636180f11a41"}, + {file = "typed_ast-1.4.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:af3d4a73793725138d6b334d9d247ce7e5f084d96284ed23f22ee626a7b88e39"}, + {file = "typed_ast-1.4.3-cp38-cp38-win32.whl", hash = "sha256:f2362f3cb0f3172c42938946dbc5b7843c2a28aec307c49100c8b38764eb6927"}, + {file = "typed_ast-1.4.3-cp38-cp38-win_amd64.whl", hash = "sha256:dd4a21253f42b8d2b48410cb31fe501d32f8b9fbeb1f55063ad102fe9c425e40"}, + {file = "typed_ast-1.4.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f328adcfebed9f11301eaedfa48e15bdece9b519fb27e6a8c01aa52a17ec31b3"}, + {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_i686.whl", hash = "sha256:2c726c276d09fc5c414693a2de063f521052d9ea7c240ce553316f70656c84d4"}, + {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:cae53c389825d3b46fb37538441f75d6aecc4174f615d048321b716df2757fb0"}, + {file = "typed_ast-1.4.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:b9574c6f03f685070d859e75c7f9eeca02d6933273b5e69572e5ff9d5e3931c3"}, + {file = "typed_ast-1.4.3-cp39-cp39-win32.whl", hash = "sha256:209596a4ec71d990d71d5e0d312ac935d86930e6eecff6ccc7007fe54d703808"}, + {file = "typed_ast-1.4.3-cp39-cp39-win_amd64.whl", hash = "sha256:9c6d1a54552b5330bc657b7ef0eae25d00ba7ffe85d9ea8ae6540d2197a3788c"}, + {file = "typed_ast-1.4.3.tar.gz", hash = "sha256:fb1bbeac803adea29cedd70781399c99138358c26d05fcbd23c13016b7f5ec65"}, +] +typing-extensions = [ + {file = "typing_extensions-3.10.0.0-py2-none-any.whl", hash = "sha256:0ac0f89795dd19de6b97debb0c6af1c70987fd80a2d62d1958f7e56fcc31b497"}, + {file = "typing_extensions-3.10.0.0-py3-none-any.whl", hash = "sha256:779383f6086d90c99ae41cf0ff39aac8a7937a9283ce0a414e5dd782f4c94a84"}, + {file = "typing_extensions-3.10.0.0.tar.gz", hash = "sha256:50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342"}, +] +urllib3 = [ + {file = "urllib3-1.26.6-py2.py3-none-any.whl", hash = "sha256:39fb8672126159acb139a7718dd10806104dec1e2f0f6c88aab05d17df10c8d4"}, + {file = "urllib3-1.26.6.tar.gz", hash = "sha256:f57b4c16c62fa2760b7e3d97c35b255512fb6b59a259730f36ba32ce9f8e342f"}, +] +uvicorn = [ + {file = "uvicorn-0.14.0-py3-none-any.whl", hash = "sha256:2a76bb359171a504b3d1c853409af3adbfa5cef374a4a59e5881945a97a93eae"}, + {file = "uvicorn-0.14.0.tar.gz", hash = "sha256:45ad7dfaaa7d55cab4cd1e85e03f27e9d60bc067ddc59db52a2b0aeca8870292"}, +] +uvloop = [ + {file = "uvloop-0.15.3-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:e71fb9038bfcd7646ca126c5ef19b17e48d4af9e838b2bcfda7a9f55a6552a32"}, + {file = "uvloop-0.15.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7522df4e45e4f25b50adbbbeb5bb9847495c438a628177099d2721f2751ff825"}, + {file = "uvloop-0.15.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae2b325c0f6d748027f7463077e457006b4fdb35a8788f01754aadba825285ee"}, + {file = "uvloop-0.15.3-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:0de811931e90ae2da9e19ce70ffad73047ab0c1dba7c6e74f9ae1a3aabeb89bd"}, + {file = "uvloop-0.15.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7f4b8a905df909a407c5791fb582f6c03b0d3b491ecdc1cdceaefbc9bf9e08f6"}, + {file = "uvloop-0.15.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d8ffe44ae709f839c54bacf14ed283f41bee90430c3b398e521e10f8d117b3a"}, + {file = "uvloop-0.15.3-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:63a3288abbc9c8ee979d7e34c34e780b2fbab3e7e53d00b6c80271119f277399"}, + {file = "uvloop-0.15.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5cda65fc60a645470b8525ce014516b120b7057b576fa876cdfdd5e60ab1efbb"}, + {file = "uvloop-0.15.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ff05116ede1ebdd81802df339e5b1d4cab1dfbd99295bf27e90b4cec64d70e9"}, + {file = "uvloop-0.15.3.tar.gz", hash = "sha256:905f0adb0c09c9f44222ee02f6b96fd88b493478fffb7a345287f9444e926030"}, +] +vine = [ + {file = "vine-1.3.0-py2.py3-none-any.whl", hash = "sha256:ea4947cc56d1fd6f2095c8d543ee25dad966f78692528e68b4fada11ba3f98af"}, + {file = "vine-1.3.0.tar.gz", hash = "sha256:133ee6d7a9016f177ddeaf191c1f58421a1dcc6ee9a42c58b34bed40e1d2cd87"}, +] +watchgod = [ + {file = "watchgod-0.7-py3-none-any.whl", hash = "sha256:d6c1ea21df37847ac0537ca0d6c2f4cdf513562e95f77bb93abbcf05573407b7"}, + {file = "watchgod-0.7.tar.gz", hash = "sha256:48140d62b0ebe9dd9cf8381337f06351e1f2e70b2203fa9c6eff4e572ca84f29"}, +] +wcwidth = [ + {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"}, + {file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"}, +] +websockets = [ + {file = "websockets-9.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d144b350045c53c8ff09aa1cfa955012dd32f00c7e0862c199edcabb1a8b32da"}, + {file = "websockets-9.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:b4ad84b156cf50529b8ac5cc1638c2cf8680490e3fccb6121316c8c02620a2e4"}, + {file = "websockets-9.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:2cf04601633a4ec176b9cc3d3e73789c037641001dbfaf7c411f89cd3e04fcaf"}, + {file = "websockets-9.1-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:5c8f0d82ea2468282e08b0cf5307f3ad022290ed50c45d5cb7767957ca782880"}, + {file = "websockets-9.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:caa68c95bc1776d3521f81eeb4d5b9438be92514ec2a79fececda814099c8314"}, + {file = "websockets-9.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:d2c2d9b24d3c65b5a02cac12cbb4e4194e590314519ed49db2f67ef561c3cf58"}, + {file = "websockets-9.1-cp36-cp36m-win32.whl", hash = "sha256:f31722f1c033c198aa4a39a01905951c00bd1c74f922e8afc1b1c62adbcdd56a"}, + {file = "websockets-9.1-cp36-cp36m-win_amd64.whl", hash = "sha256:3ddff38894c7857c476feb3538dd847514379d6dc844961dc99f04b0384b1b1b"}, + {file = "websockets-9.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:51d04df04ed9d08077d10ccbe21e6805791b78eac49d16d30a1f1fe2e44ba0af"}, + {file = "websockets-9.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:f68c352a68e5fdf1e97288d5cec9296664c590c25932a8476224124aaf90dbcd"}, + {file = "websockets-9.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:b43b13e5622c5a53ab12f3272e6f42f1ce37cd5b6684b2676cb365403295cd40"}, + {file = "websockets-9.1-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:9147868bb0cc01e6846606cd65cbf9c58598f187b96d14dd1ca17338b08793bb"}, + {file = "websockets-9.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:836d14eb53b500fd92bd5db2fc5894f7c72b634f9c2a28f546f75967503d8e25"}, + {file = "websockets-9.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:48c222feb3ced18f3dc61168ca18952a22fb88e5eb8902d2bf1b50faefdc34a2"}, + {file = "websockets-9.1-cp37-cp37m-win32.whl", hash = "sha256:900589e19200be76dd7cbaa95e9771605b5ce3f62512d039fb3bc5da9014912a"}, + {file = "websockets-9.1-cp37-cp37m-win_amd64.whl", hash = "sha256:ab5ee15d3462198c794c49ccd31773d8a2b8c17d622aa184f669d2b98c2f0857"}, + {file = "websockets-9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:85e701a6c316b7067f1e8675c638036a796fe5116783a4c932e7eb8e305a3ffe"}, + {file = "websockets-9.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:b2e71c4670ebe1067fa8632f0d081e47254ee2d3d409de54168b43b0ba9147e0"}, + {file = "websockets-9.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:230a3506df6b5f446fed2398e58dcaafdff12d67fe1397dff196411a9e820d02"}, + {file = "websockets-9.1-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:7df3596838b2a0c07c6f6d67752c53859a54993d4f062689fdf547cb56d0f84f"}, + {file = "websockets-9.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:826ccf85d4514609219725ba4a7abd569228c2c9f1968e8be05be366f68291ec"}, + {file = "websockets-9.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:0dd4eb8e0bbf365d6f652711ce21b8fd2b596f873d32aabb0fbb53ec604418cc"}, + {file = "websockets-9.1-cp38-cp38-win32.whl", hash = "sha256:1d0971cc7251aeff955aa742ec541ee8aaea4bb2ebf0245748fbec62f744a37e"}, + {file = "websockets-9.1-cp38-cp38-win_amd64.whl", hash = "sha256:7189e51955f9268b2bdd6cc537e0faa06f8fffda7fb386e5922c6391de51b077"}, + {file = "websockets-9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e9e5fd6dbdf95d99bc03732ded1fc8ef22ebbc05999ac7e0c7bf57fe6e4e5ae2"}, + {file = "websockets-9.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:9e7fdc775fe7403dbd8bc883ba59576a6232eac96dacb56512daacf7af5d618d"}, + {file = "websockets-9.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:597c28f3aa7a09e8c070a86b03107094ee5cdafcc0d55f2f2eac92faac8dc67d"}, + {file = "websockets-9.1-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:ad893d889bc700a5835e0a95a3e4f2c39e91577ab232a3dc03c262a0f8fc4b5c"}, + {file = "websockets-9.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:1d6b4fddb12ab9adf87b843cd4316c4bd602db8d5efd2fb83147f0458fe85135"}, + {file = "websockets-9.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:ebf459a1c069f9866d8569439c06193c586e72c9330db1390af7c6a0a32c4afd"}, + {file = "websockets-9.1-cp39-cp39-win32.whl", hash = "sha256:be5fd35e99970518547edc906efab29afd392319f020c3c58b0e1a158e16ed20"}, + {file = "websockets-9.1-cp39-cp39-win_amd64.whl", hash = "sha256:85db8090ba94e22d964498a47fdd933b8875a1add6ebc514c7ac8703eb97bbf0"}, + {file = "websockets-9.1.tar.gz", hash = "sha256:276d2339ebf0df4f45df453923ebd2270b87900eda5dfd4a6b0cfa15f82111c3"}, +] From 3d2e0938e4398f14536b9a6db80652131f53cdf5 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 18 Jul 2021 17:46:27 -0400 Subject: [PATCH 05/81] Pin mher/flower Docker image to fix startup error tiangolo/full-stack-fastapi-postgresql#398 tiangolo/full-stack-fastapi-postgresql#399 Error: ```text ERROR: for flower Cannot start service flower: OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "celery --broker=amqp://guest@queue:5672//": stat celery --broker=amqp://guest@queue:5672//: no such file or directory: unknown ``` --- {{cookiecutter.project_slug}}/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/docker-compose.yml b/{{cookiecutter.project_slug}}/docker-compose.yml index 5e89373107..1223104ad2 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.yml @@ -111,7 +111,7 @@ services: # You also have to change the flower command flower: - image: mher/flower + image: mher/flower:0.9.7 networks: - ${TRAEFIK_PUBLIC_NETWORK?Variable not set} - default From bbd84b82f8e75ea8086200f145a5dca3ee2bf251 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 18 Jul 2021 21:17:16 -0400 Subject: [PATCH 06/81] Update Celery Docker image to Python 3.9 https://docs.celeryproject.org/en/stable/whatsnew-5.1.html While the Celery Docker image has been upgraded to Python 3.9, the application is still running Celery 4. Further updates to the source code will be needed before upgrading from Celery 4. --- {{cookiecutter.project_slug}}/backend/celeryworker.dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/backend/celeryworker.dockerfile b/{{cookiecutter.project_slug}}/backend/celeryworker.dockerfile index 4695a7b7ec..220f656775 100644 --- a/{{cookiecutter.project_slug}}/backend/celeryworker.dockerfile +++ b/{{cookiecutter.project_slug}}/backend/celeryworker.dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7 +FROM python:3.9 WORKDIR /app/ From 2cbf37f2f06e7747035e640ac633905e32ab3c2b Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 18 Jul 2021 21:38:24 -0400 Subject: [PATCH 07/81] Fix Travis CI Docker `ARG` error Must be running an old version of Docker. ```text ERROR: Dockerfile parse error line 18: ARG requires exactly one argument ``` --- {{cookiecutter.project_slug}}/backend/backend.dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/backend/backend.dockerfile b/{{cookiecutter.project_slug}}/backend/backend.dockerfile index fdd16c5b43..1edfa6aa60 100644 --- a/{{cookiecutter.project_slug}}/backend/backend.dockerfile +++ b/{{cookiecutter.project_slug}}/backend/backend.dockerfile @@ -15,6 +15,7 @@ RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; els ARG INSTALL_JUPYTER=false RUN bash -c "if [ $INSTALL_JUPYTER == 'true' ] ; then pip install jupyterlab ; fi" -ARG BACKEND_APP_MODULE=app.main:app BACKEND_PRE_START_PATH=/app/prestart.sh +ARG BACKEND_APP_MODULE=app.main:app +ARG BACKEND_PRE_START_PATH=/app/prestart.sh ENV APP_MODULE=${BACKEND_APP_MODULE} PRE_START_PATH=${BACKEND_PRE_START_PATH} COPY ./app/ /app/ From 9bde2f3c491e2991955bff349b8f6af05889d2b4 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Mon, 19 Jul 2021 21:47:38 -0400 Subject: [PATCH 08/81] Enable Uvicorn reloading for local development whythawk-full-stack-fastapi-postgresql#1 tiangolo/uvicorn-gunicorn-docker#1 tiangolo/uvicorn-gunicorn-docker#6 PR #1 updated the backend Docker image from https://github.com/tiangolo/uvicorn-gunicorn-fastapi-docker to https://github.com/br3ndonland/inboard (see https://inboard.bws.bio). The previous Docker image had a start-reload.sh script, which started Uvicorn with reloading. With inboard, there's no need for a separate script. The same effect can be achieved with environment variables (`PROCESS_MANAGER=uvicorn`, `WITH_RELOAD=true`). --- {{cookiecutter.project_slug}}/backend/backend.dockerfile | 4 +++- {{cookiecutter.project_slug}}/docker-compose.override.yml | 2 ++ {{cookiecutter.project_slug}}/docker-compose.yml | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/backend/backend.dockerfile b/{{cookiecutter.project_slug}}/backend/backend.dockerfile index 1edfa6aa60..e40372054b 100644 --- a/{{cookiecutter.project_slug}}/backend/backend.dockerfile +++ b/{{cookiecutter.project_slug}}/backend/backend.dockerfile @@ -17,5 +17,7 @@ RUN bash -c "if [ $INSTALL_JUPYTER == 'true' ] ; then pip install jupyterlab ; f ARG BACKEND_APP_MODULE=app.main:app ARG BACKEND_PRE_START_PATH=/app/prestart.sh -ENV APP_MODULE=${BACKEND_APP_MODULE} PRE_START_PATH=${BACKEND_PRE_START_PATH} +ARG BACKEND_PROCESS_MANAGER=gunicorn +ARG BACKEND_WITH_RELOAD=false +ENV APP_MODULE=${BACKEND_APP_MODULE} PRE_START_PATH=${BACKEND_PRE_START_PATH} PROCESS_MANAGER=${BACKEND_PROCESS_MANAGER} WITH_RELOAD=${BACKEND_WITH_RELOAD} COPY ./app/ /app/ diff --git a/{{cookiecutter.project_slug}}/docker-compose.override.yml b/{{cookiecutter.project_slug}}/docker-compose.override.yml index 5c57620d8f..2eef2a98e1 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.override.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.override.yml @@ -49,6 +49,8 @@ services: args: BACKEND_APP_MODULE: ${BACKEND_APP_MODULE-app.main:app} BACKEND_PRE_START_PATH: ${BACKEND_PRE_START_PATH-/app/prestart.sh} + BACKEND_PROCESS_MANAGER: ${BACKEND_PROCESS_MANAGER-uvicorn} + BACKEND_WITH_RELOAD: ${BACKEND_WITH_RELOAD-true} INSTALL_DEV: ${INSTALL_DEV-true} INSTALL_JUPYTER: ${INSTALL_JUPYTER-true} labels: diff --git a/{{cookiecutter.project_slug}}/docker-compose.yml b/{{cookiecutter.project_slug}}/docker-compose.yml index 1223104ad2..51da17575e 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.yml @@ -153,6 +153,8 @@ services: args: BACKEND_APP_MODULE: ${BACKEND_APP_MODULE-app.main:app} BACKEND_PRE_START_PATH: ${BACKEND_PRE_START_PATH-/app/prestart.sh} + BACKEND_PROCESS_MANAGER: ${BACKEND_PROCESS_MANAGER-gunicorn} + BACKEND_WITH_RELOAD: ${BACKEND_WITH_RELOAD-false} INSTALL_DEV: ${INSTALL_DEV-false} deploy: labels: From b2f3d94f3d8ec4f9a72ac071ab02b5a67adab713 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sat, 31 Jul 2021 16:29:46 -0400 Subject: [PATCH 09/81] Add Neo4j to Docker Compose network - Pull official Docker image: https://hub.docker.com/_/neo4j - Specify platform to avoid issues with experimental ARM images https://hub.docker.com/r/neo4j/neo4j-arm64-experimental - Add Neo4j service to Docker Compose - Register Neo4j storage volumes with Docker Compose - Add Traefik labels for deployment, allowing access to the dashboard - Add overrides for local development --- {{cookiecutter.project_slug}}/README.md | 2 + .../docker-compose.override.yml | 4 ++ .../docker-compose.yml | 44 +++++++++++++++++++ 3 files changed, 50 insertions(+) diff --git a/{{cookiecutter.project_slug}}/README.md b/{{cookiecutter.project_slug}}/README.md index 84d95f70c0..1dd52672d8 100644 --- a/{{cookiecutter.project_slug}}/README.md +++ b/{{cookiecutter.project_slug}}/README.md @@ -30,6 +30,8 @@ Alternative automatic documentation with ReDoc (from the OpenAPI backend): http: PGAdmin, PostgreSQL web administration: http://localhost:5050 +Neo4j web administration: http://localhost:7474 + Flower, administration of Celery tasks: http://localhost:5555 Traefik UI, to see how the routes are being handled by the proxy: http://localhost:8090 diff --git a/{{cookiecutter.project_slug}}/docker-compose.override.yml b/{{cookiecutter.project_slug}}/docker-compose.override.yml index 2eef2a98e1..e4c1e8c0d2 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.override.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.override.yml @@ -31,6 +31,10 @@ services: ports: - "5050:5050" + neo4j: + environment: + - NEO4J_AUTH=none + flower: ports: - "5555:5555" diff --git a/{{cookiecutter.project_slug}}/docker-compose.yml b/{{cookiecutter.project_slug}}/docker-compose.yml index 51da17575e..935ab520a8 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.yml @@ -103,6 +103,48 @@ services: - traefik.http.routers.${STACK_NAME?Variable not set}-pgadmin-https.tls.certresolver=le - traefik.http.services.${STACK_NAME?Variable not set}-pgadmin.loadbalancer.server.port=5050 + neo4j: + image: neo4j + platform: linux/amd64 + networks: + - ${TRAEFIK_PUBLIC_NETWORK?Variable not set} + - default + ports: + - "6477:6477" + - "7474:7474" + - "7687:7687" + volumes: + - app-neo4j-data:/data + - app-neo4j-plugins:/plugins + env_file: + - .env + environment: + - NEO4J_ACCEPT_LICENSE_AGREEMENT=yes + - NEO4J_AUTH=neo4j/neo4j + - NEO4J_dbms_default__advertised__address=0.0.0.0 + - NEO4J_dbms_mode=SINGLE + deploy: + labels: + - traefik.enable=true + - traefik.docker.network=${TRAEFIK_PUBLIC_NETWORK?Variable not set} + - traefik.constraint-label=${TRAEFIK_PUBLIC_TAG?Variable not set} + - traefik.http.routers.${STACK_NAME?Variable not set}-neo4j-http.rule=Host(`neo4j.${DOMAIN?Variable not set}`) + - traefik.http.routers.${STACK_NAME?Variable not set}-neo4j-http.entrypoints=http + - traefik.http.routers.${STACK_NAME?Variable not set}-neo4j-http.middlewares=${STACK_NAME?Variable not set}-https-redirect + - traefik.http.routers.${STACK_NAME?Variable not set}-neo4j-https.rule=Host(`neo4j.${DOMAIN?Variable not set}`) + - traefik.http.routers.${STACK_NAME?Variable not set}-neo4j-https.entrypoints=https + - traefik.http.routers.${STACK_NAME?Variable not set}-neo4j-https.tls=true + - traefik.http.routers.${STACK_NAME?Variable not set}-neo4j-https.tls.certresolver=le + - traefik.http.services.${STACK_NAME?Variable not set}-neo4j.loadbalancer.server.port=7474 + replicas: 1 + resources: + limits: + memory: 1024M + reservations: + memory: 500M + restart_policy: + condition: on-failure + queue: image: rabbitmq:3 # Using the below image instead is required to enable the "Broker" tab in the flower UI: @@ -196,6 +238,8 @@ services: volumes: app-db-data: + app-neo4j-data: + app-neo4j-plugins: networks: traefik-public: From 75a57ed786f3c6623148800b233015ecb4f4b36f Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sat, 31 Jul 2021 18:56:12 -0400 Subject: [PATCH 10/81] Remove Docker Compose platform key Travis CI error: ERROR: The Compose file './docker-compose.yml' is invalid because: Unsupported config option for services.neo4j: 'platform' --- {{cookiecutter.project_slug}}/docker-compose.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/docker-compose.yml b/{{cookiecutter.project_slug}}/docker-compose.yml index 935ab520a8..153498960a 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.yml @@ -105,7 +105,6 @@ services: neo4j: image: neo4j - platform: linux/amd64 networks: - ${TRAEFIK_PUBLIC_NETWORK?Variable not set} - default From 3c10c6ea0eb55a0527c6930307ae77e57e32d090 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sat, 14 Aug 2021 16:45:52 -0400 Subject: [PATCH 11/81] Remove previous front-end code The .env file will be retained for compatibility. --- .../frontend/.dockerignore | 1 - .../frontend/.gitignore | 21 -- .../frontend/Dockerfile | 28 --- .../frontend/README.md | 31 --- .../frontend/babel.config.js | 10 - .../frontend/nginx-backend-not-found.conf | 9 - .../frontend/package.json | 74 ------- .../frontend/public/favicon.ico | Bin 1150 -> 0 bytes .../img/icons/android-chrome-192x192.png | Bin 9416 -> 0 bytes .../img/icons/android-chrome-512x512.png | Bin 29808 -> 0 bytes .../img/icons/apple-touch-icon-120x120.png | Bin 3369 -> 0 bytes .../img/icons/apple-touch-icon-152x152.png | Bin 4046 -> 0 bytes .../img/icons/apple-touch-icon-180x180.png | Bin 4678 -> 0 bytes .../img/icons/apple-touch-icon-60x60.png | Bin 1491 -> 0 bytes .../img/icons/apple-touch-icon-76x76.png | Bin 1823 -> 0 bytes .../public/img/icons/apple-touch-icon.png | Bin 4678 -> 0 bytes .../public/img/icons/favicon-16x16.png | Bin 799 -> 0 bytes .../public/img/icons/favicon-32x32.png | Bin 1271 -> 0 bytes .../img/icons/msapplication-icon-144x144.png | Bin 1169 -> 0 bytes .../public/img/icons/mstile-150x150.png | Bin 4282 -> 0 bytes .../public/img/icons/safari-pinned-tab.svg | 149 -------------- .../frontend/public/index.html | 21 -- .../frontend/public/manifest.json | 20 -- .../frontend/public/robots.txt | 2 - .../frontend/src/App.vue | 43 ----- .../frontend/src/api.ts | 45 ----- .../frontend/src/assets/logo.png | Bin 6849 -> 0 bytes .../frontend/src/component-hooks.ts | 8 - .../src/components/NotificationsManager.vue | 77 -------- .../src/components/RouterComponent.vue | 11 -- .../frontend/src/components/UploadButton.vue | 34 ---- .../frontend/src/env.ts | 14 -- .../frontend/src/interfaces/index.ts | 23 --- .../frontend/src/main.ts | 19 -- .../frontend/src/plugins/vee-validate.ts | 4 - .../frontend/src/plugins/vuetify.ts | 6 - .../frontend/src/registerServiceWorker.ts | 26 --- .../frontend/src/router.ts | 97 ---------- .../frontend/src/shims-tsx.d.ts | 13 -- .../frontend/src/shims-vue.d.ts | 4 - .../frontend/src/store/admin/actions.ts | 60 ------ .../frontend/src/store/admin/getters.ts | 18 -- .../frontend/src/store/admin/index.ts | 15 -- .../frontend/src/store/admin/mutations.ts | 20 -- .../frontend/src/store/admin/state.ts | 5 - .../frontend/src/store/index.ts | 19 -- .../frontend/src/store/main/actions.ts | 173 ----------------- .../frontend/src/store/main/getters.ts | 29 --- .../frontend/src/store/main/index.ts | 21 -- .../frontend/src/store/main/mutations.ts | 43 ----- .../frontend/src/store/main/state.ts | 17 -- .../frontend/src/store/state.ts | 5 - .../frontend/src/utils.ts | 5 - .../frontend/src/views/Login.vue | 58 ------ .../frontend/src/views/PasswordRecovery.vue | 52 ----- .../frontend/src/views/ResetPassword.vue | 84 -------- .../frontend/src/views/main/Dashboard.vue | 37 ---- .../frontend/src/views/main/Main.vue | 182 ------------------ .../frontend/src/views/main/Start.vue | 38 ---- .../frontend/src/views/main/admin/Admin.vue | 28 --- .../src/views/main/admin/AdminUsers.vue | 83 -------- .../src/views/main/admin/CreateUser.vue | 97 ---------- .../src/views/main/admin/EditUser.vue | 163 ---------------- .../src/views/main/profile/UserProfile.vue | 46 ----- .../views/main/profile/UserProfileEdit.vue | 97 ---------- .../main/profile/UserProfileEditPassword.vue | 86 --------- .../frontend/tests/unit/upload-button.spec.ts | 15 -- .../frontend/tsconfig.json | 41 ---- .../frontend/tslint.json | 19 -- .../frontend/vue.config.js | 35 ---- 70 files changed, 2381 deletions(-) delete mode 100755 {{cookiecutter.project_slug}}/frontend/.dockerignore delete mode 100644 {{cookiecutter.project_slug}}/frontend/.gitignore delete mode 100644 {{cookiecutter.project_slug}}/frontend/Dockerfile delete mode 100644 {{cookiecutter.project_slug}}/frontend/README.md delete mode 100644 {{cookiecutter.project_slug}}/frontend/babel.config.js delete mode 100644 {{cookiecutter.project_slug}}/frontend/nginx-backend-not-found.conf delete mode 100644 {{cookiecutter.project_slug}}/frontend/package.json delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/favicon.ico delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/android-chrome-192x192.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/android-chrome-512x512.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-120x120.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-152x152.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-180x180.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-60x60.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-76x76.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/favicon-16x16.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/favicon-32x32.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/msapplication-icon-144x144.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/mstile-150x150.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/img/icons/safari-pinned-tab.svg delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/index.html delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/manifest.json delete mode 100644 {{cookiecutter.project_slug}}/frontend/public/robots.txt delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/App.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/api.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/assets/logo.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/component-hooks.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/components/NotificationsManager.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/components/RouterComponent.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/components/UploadButton.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/env.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/interfaces/index.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/main.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/plugins/vee-validate.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/plugins/vuetify.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/registerServiceWorker.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/router.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/shims-tsx.d.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/shims-vue.d.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/admin/actions.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/admin/getters.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/admin/index.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/admin/mutations.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/admin/state.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/index.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/main/actions.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/main/getters.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/main/index.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/main/mutations.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/main/state.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/store/state.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/utils.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/Login.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/PasswordRecovery.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/ResetPassword.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/Dashboard.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/Main.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/Start.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/admin/Admin.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/admin/AdminUsers.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/admin/CreateUser.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/admin/EditUser.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfile.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfileEdit.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfileEditPassword.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/tests/unit/upload-button.spec.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/tsconfig.json delete mode 100644 {{cookiecutter.project_slug}}/frontend/tslint.json delete mode 100644 {{cookiecutter.project_slug}}/frontend/vue.config.js diff --git a/{{cookiecutter.project_slug}}/frontend/.dockerignore b/{{cookiecutter.project_slug}}/frontend/.dockerignore deleted file mode 100755 index 3c3629e647..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/.dockerignore +++ /dev/null @@ -1 +0,0 @@ -node_modules diff --git a/{{cookiecutter.project_slug}}/frontend/.gitignore b/{{cookiecutter.project_slug}}/frontend/.gitignore deleted file mode 100644 index 185e663192..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -.DS_Store -node_modules -/dist - -# local env files -.env.local -.env.*.local - -# Log files -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# Editor directories and files -.idea -.vscode -*.suo -*.ntvs* -*.njsproj -*.sln -*.sw* diff --git a/{{cookiecutter.project_slug}}/frontend/Dockerfile b/{{cookiecutter.project_slug}}/frontend/Dockerfile deleted file mode 100644 index 75157e0968..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -# Stage 0, "build-stage", based on Node.js, to build and compile the frontend -FROM tiangolo/node-frontend:10 as build-stage - -WORKDIR /app - -COPY package*.json /app/ - -RUN npm install - -COPY ./ /app/ - -ARG FRONTEND_ENV=production - -ENV VUE_APP_ENV=${FRONTEND_ENV} - -# Comment out the next line to disable tests -RUN npm run test:unit - -RUN npm run build - - -# Stage 1, based on Nginx, to have only the compiled app, ready for production with Nginx -FROM nginx:1.15 - -COPY --from=build-stage /app/dist/ /usr/share/nginx/html - -COPY --from=build-stage /nginx.conf /etc/nginx/conf.d/default.conf -COPY ./nginx-backend-not-found.conf /etc/nginx/extra-conf.d/backend-not-found.conf diff --git a/{{cookiecutter.project_slug}}/frontend/README.md b/{{cookiecutter.project_slug}}/frontend/README.md deleted file mode 100644 index 60e84fbb39..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/README.md +++ /dev/null @@ -1,31 +0,0 @@ -# frontend - -## Project setup -``` -npm install -``` - -### Compiles and hot-reloads for development -``` -npm run serve -``` - -### Compiles and minifies for production -``` -npm run build -``` - -### Run your tests -``` -npm run test -``` - -### Lints and fixes files -``` -npm run lint -``` - -### Run your unit tests -``` -npm run test:unit -``` diff --git a/{{cookiecutter.project_slug}}/frontend/babel.config.js b/{{cookiecutter.project_slug}}/frontend/babel.config.js deleted file mode 100644 index 5902d7d136..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/babel.config.js +++ /dev/null @@ -1,10 +0,0 @@ -module.exports = { - "presets": [ - [ - "@vue/cli-plugin-babel/preset", - { - "useBuiltIns": "entry" - } - ] - ] -} \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/nginx-backend-not-found.conf b/{{cookiecutter.project_slug}}/frontend/nginx-backend-not-found.conf deleted file mode 100644 index f6fea66358..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/nginx-backend-not-found.conf +++ /dev/null @@ -1,9 +0,0 @@ -location /api { - return 404; -} -location /docs { - return 404; -} -location /redoc { - return 404; -} diff --git a/{{cookiecutter.project_slug}}/frontend/package.json b/{{cookiecutter.project_slug}}/frontend/package.json deleted file mode 100644 index a83c616980..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/package.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "name": "frontend", - "version": "0.1.0", - "private": true, - "scripts": { - "serve": "vue-cli-service serve", - "build": "vue-cli-service build", - "test:unit": "vue-cli-service test:unit", - "lint": "vue-cli-service lint" - }, - "dependencies": { - "@babel/polyfill": "^7.2.5", - "axios": "^0.18.0", - "core-js": "^3.4.3", - "register-service-worker": "^1.0.0", - "typesafe-vuex": "^3.1.1", - "vee-validate": "^2.1.7", - "vue": "^2.5.22", - "vue-class-component": "^6.0.0", - "vue-property-decorator": "^7.3.0", - "vue-router": "^3.0.2", - "vuetify": "^1.4.4", - "vuex": "^3.1.0" - }, - "devDependencies": { - "@types/jest": "^23.3.13", - "@vue/cli-plugin-babel": "^4.1.1", - "@vue/cli-plugin-pwa": "^4.1.1", - "@vue/cli-plugin-typescript": "^4.1.1", - "@vue/cli-plugin-unit-jest": "^4.1.1", - "@vue/cli-service": "^4.1.1", - "@vue/test-utils": "^1.0.0-beta.28", - "babel-core": "7.0.0-bridge.0", - "ts-jest": "^23.10.5", - "typescript": "^3.2.4", - "vue-cli-plugin-vuetify": "^2.0.2", - "vue-template-compiler": "^2.5.22" - }, - "postcss": { - "plugins": { - "autoprefixer": {} - } - }, - "browserslist": [ - "> 1%", - "last 2 versions", - "not ie <= 10" - ], - "jest": { - "moduleFileExtensions": [ - "js", - "jsx", - "json", - "vue", - "ts", - "tsx" - ], - "transform": { - "^.+\\.vue$": "vue-jest", - ".+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$": "jest-transform-stub", - "^.+\\.tsx?$": "ts-jest" - }, - "moduleNameMapper": { - "^@/(.*)$": "/src/$1" - }, - "snapshotSerializers": [ - "jest-serializer-vue" - ], - "testMatch": [ - "**/tests/unit/**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)" - ], - "testURL": "http://localhost/" - } -} diff --git a/{{cookiecutter.project_slug}}/frontend/public/favicon.ico b/{{cookiecutter.project_slug}}/frontend/public/favicon.ico deleted file mode 100644 index c7b9a43c8cd16d0b434adaf513fcacb340809a11..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1150 zcmchVOGsN$5QZm2NTI$erQpKHrdQX(jn+pVxKN`Ng)RzW5+8_2Xb@Y)Dkd6tq9V8u z3WAh^C@KZ1kA;tohzs}b3NC_*QmUXr$oP*rH(2mdT{z*(KX=aj=bX$9kqMvFRKj;Q zwI&d~A);J>5-PDega~WT5us%#Dc(Y}C4WpP?+fS;FaZ*z_CFzgiW=w{I02=q_TUz( z?=^H2uwoIK1n%|Ay21~QgjV1emYtWttJdz^L#=DjJ@Ex*9UPc*7<=rZo*_NAh4PxA zqkso~Ioa1y$e+3kIkXi29YNLi&lW}vY6C}ut4{8ou(7w=$_=$v{yJ$h?y!&bJfq*( zL_NQRF37$6e>%9erGV?p^lRFD?|5J_eupXaS;QluyrOmBT>PJhirMYb*i?(4Tf=j~?VvnUlY_ zDCVuuk3E&T9aP~Cr-0i-MaKUjf_|U!=R&t}_CfD=d${p~HH`BPaqb9aXT}UI$iGRg z>0^GlZ`vM4?;$*LhfI(RG|XK4GF+@-W*W}YJT5&2N_ZyZuaM_Ry=%PWx>r0P(Rc?> jRc4}SfGA>*agjwN{7E7DEm(*)%rSx{B0<6wBoglxJAy|R diff --git a/{{cookiecutter.project_slug}}/frontend/public/img/icons/android-chrome-192x192.png b/{{cookiecutter.project_slug}}/frontend/public/img/icons/android-chrome-192x192.png deleted file mode 100644 index b02aa64d97167ad649e496908b35f14c603d9249..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9416 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 ROru=^AazZ3N)e9H{|11FNXq~K diff --git a/{{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-152x152.png b/{{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-152x152.png deleted file mode 100644 index f24d454a2ecb8851bb893192b64ee09386d30e24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4046 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 cK^5JQ0?3d{m_4Kdj*!1;003@kYpI!lw*K!+ zMhKRlYSNuSL+q-ouM7aSXo?F560pwcq-CNH03o~pfQkixGY~?p13-Wn0BqO;fNVAZ zF!|)S7|Vk{NF8-G)qv~2Pf`233=o0%YwN2+eiA?-6k^qmdZhqBv!<=4j0pO+T`(63 zoo?u#em%?m-0Mw>^S_yuw5QQE2PFT#_0?4&G>AGq_;Xmb8?HdT=6%0r?J_^XX*`T2 z!(G zlc3{fa#U@Ti%?||!xO+_IsQy`#8YOJQBY9uWJl5Zp)E=LG&8|S8=ZZigj3oLoTrUr z>+aQV3I&HkQ`|IzORvNB{=oQQVBZC~xoD{TK;*^hbWhxa@3|egGQ+DYyX#9uUEM)= zFLRg5cRwDkxck*`N|Z|5iejjSr;W1}tUs5udSpI$@8X8bJV6&^(5>-e%oKN<@7>$b zZ&nRPKywAFe2!gqes0IL4^^#R8F$OF6{%2zCyhmelRnY2nokO=>xreBChbjT5Wv1m zPQ~PVOi;gd`_&g}SJ9sq0WqMlX}>b8$5W=^*%xS4!c;vaUT$nBmTudc4Wayb=I3BK zw=EU{#N-6&HLCN9`AghGB@GTwsf3r@ zzZ`eg9C5T34P$z*btRD8ls`g=kbMa=a)F&4Cs)7x)^ms{dxEYHn_KM`RXtks_xIZg z{GENY*@u^xD$H>W>ITjU8QbBtLP$A4$w8jUMPSwP^01j=+WUK7)#?!|*08V@Wu8x< zhY1p)B)?)U6U}5ZXk-fXOvmr}?Z!T!{~>@hrA%WrYnD#5Tz=F4JHvD$B}LbgL_|bH z-#}k6L>_Ia-7L*7Q?ZVI4p{IVaw(oL1_tk^*f(cKd@LqvmIgQpcBgJ_SnuFhJ}^DF zqW@4&!4VmE(0-L9 z%+5$Bg!X*1F3+wgmCm5Bb#Hc9bhN@5_3H2-JiEpiO6nsuUwCsW%S7w_mrp(Kt*x49 zo1IC;3M-epyT)Q&Z}sh7`Rsg%3^&!`vb)^OTf8I)*y+i6Ng>H`b=V;MJqV5wtW7iN zr9C3;KU7A?w#PZ3@{a}|DmvDL|K5%{F(|OH5k@*Y1_W$_>)QF}Sosci49C4M9xk>a zd=wQcMlNf#n2DC*#!_qTR7loEULMx5_S&5Pa+Mhwx?-pjAU5pRKiFR-I`S;bis7U( zGw(Z6*5BunN&gWpf9>ypbYGpN{<3X*x|Oh&VJi9Ckcmbx=0UZ@82w_?gYp5LU+O=H z3T3(Vy``RUW9hUs4zg;juYZ>rZrL8K=@wddAla(uh$TPiFFe`WNtG(5kK?9Fs$I&t zbc>{HE+&2o3=RtN8H~uEUXAUD2JcrA=d`)u z2^kZ0*p9Z=Jnx0GgPnifSarTJM_+PhjA%_1_p##$#e0kIcKEiVB5X)traE!E{ zf6l>R*cRwP&e)CcA(hNeuwR>1!(c!!IbkK+(J%d0@nXEjqN+5Td;Oi(SEn0mbCGLH z9}2JcMYF~tkP0s9s;LiWAD4Fsb9jFihCYO`C!sgv${}(R-jX`xXjet~!u;Hbmc5}3 z3PYyX;O=G;-<>C2pnZuyotQ4?6RTz#&APphC7kPiKhETZ?MmgY>`CQrLvHuY{^odi zxeJyy&F0I=vy8VmCymt!*bP>`b>BU7-0%GiM9hAzfo!XP-c2PC!Ua>WN(MUz9AP^Z z{dTWjT=+)Oo(peZ9hF=~UKM1)P89z8k%8*?AqR?0A=ci<_WN3H!T`rxCQeftD zE-Oul^SM)KJXAft(aX;HFze)xu7$|ucJ7})%+x#%7)Z@-$1{;!FiMs z%=)F~(d`&Kwg+|`=ty;5C@S(gJ2zOObMJA)Pu$m`-@WSfCCqyU%i5XR){`0mgfah6 zjJ9m0G)`=hc~fg2WmAw&Kj@T}4E1$6#y5QNE@p5?A$C``vj-*f(kurf$g6I!0U9RZ zOr5R4p;uNzDl(ZYStAN4GguVJ!>n zp zU^J({4P_nPz-PYFhDl^-9EA~`3Dgh>mGIB=v_91sW!ZnR_=jvlJqoTx=)KulH+` zU(e&b`#qN5k*o6V2l(yRUGQ`T1HRf945k^Cc2nAV9!qET#0tsoRs#hI{^cDFD7InJ zj}GYHON%x4#87|U>v_Zl4H|_%&0$4&`35;V%gfz5K20B#R?7c~PZli**_JQM zA!?Ll1A5EWAcx}>$xX2UEc6{_;#Q~wP zWA-QlWCnUyc&UC0=$ICjG0vWmUkc%heLd$m4G%8uy9)aKh3@fjll{ZD4Wu7Ak@yw; zh|DK*hUpBh)9|}gXk7oH$}ccl;>RBxN)Ve1W|YgoHS8Vh;(8MH>)oGgT05fW2z40P zwO1aEVOc!zAK`kT)=A8?*e-x^xh-MY?V4L+Nx^{;SJ>eabEL+5&k7!yYN2v7!$Xy| zEAJAS>w%pD?pGbST%^}9FQggO)?I(=5B3GRL|?MC)4Ltt*z(QG=DnAE-_KjLabsP$TFl*jZ%Nq48HrN2I}lA6l~0CDNQs$*eJ|jAma;q+!}w(&Rpx0=lq( zh0$zVBXEI{Q)qj%q|(SKKc1FBn|*>Jz!nM369!#?y+@9VN^GCwqq|=%i2cTZZm2&z zWm!1fJtOQ%1Mb0vd6q_Rk}5_48p5UKfEJt;S6YrDySowlAhA=~MuLHl3Rr)!Q6ob` zEUs1L@1`E|T<-+Iq@6vxdDCWoMWS}Lgs#`&?JQqiKf@8^UU-%iZ{t#qy!y!L_9 zK#A8VP)L;yei!>KQaZbaCmL~_TI-Y(rB_7N{+M0>0glhyshUk;-`zK6U>s7%Sf60( zEp0w^c%&|10dqh{s_=_pG5U&9_7_B2+V$H#l|cyv4_PDCkQb^>THQ-~rS$YfDRs+Hq6W z?@80gKV*s@UEk?q!xw!E7gI9$U{yM6XXuRXd|oo}`bIcSBM&*E#OF5i~xQYeH`FsmnLuBL^I_UhyuH#I?0pJ$NHx#@Y( z`+B`<(uN_7GhK4SC)lxGjy-6?(v-Ba9(_E}a_S-ZT;&mFLO}hDv|=X2(VCa4$nRMY z&m9i417mV1D@HKk)=5�MrHbYR_buu=L>f*wO=Er8~{qfkYT+HoHag8)VqJoC-#@ zNT})4xRE%sP-B9?xmL5!2Y8VLa?yj@Y@r1C)6o~9GF9nWG!SI2VJ$>ejtUE%Qv&r_ zYLgZ0h3iIrw7{TyurC(g^$XT%PP5`FB3aFpP&fM-8!J#3I_ujG?;7(Xv5ni%BjYP4 z^+oydy=)_&bdxYJx`X%G5PFkUB%3h6RiOs^F?#ojsB%DbfhqzGhuv4)S1%vw@PDyE z3xWF{Y^0>+=Wg! z{>z@$rD6ej*V- z^$zKIOWOfdN4~7@ndhru01+3cxwD&_Muyja({*O;-5VnF(e$WDALNStE{1{F#ts+VR{o zSlQ*@U=Du8fgKW$lU~)O)b6FS?H1SSnKVIC=DOvbo8IUvM zVf+U4YxG%qLGd%ew7Jp8>@U`ew+A#Q=2oJHNH@_f!WadS20$KZEZ+BHAvU@FB zzRCYN5r+Z#g`C^hrH$yW7ABstwjvMM*CHGzY41bbo2zy$6E8DAOPn zUnHG?e7?u7pQ}Kqbu1jEd+=mcGea4aL6V4g(m*b7x}z|ijsjb3e|tf-3&^JK{=sWz z8sqIu9jy)#J}n}cXqtXmkb-NDVPcAKn=G9uX42zYvufu_OCr>xJ=oTNp8WA5wEqvM z{r~m8;7_C>U68iRr@|rd7UYhON#(-S_+Uf>s)hhPU{{exlxc&eD diff --git a/{{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-60x60.png b/{{cookiecutter.project_slug}}/frontend/public/img/icons/apple-touch-icon-60x60.png deleted file mode 100644 index cf10a5602e653bb126332934e2b7f34081c19a01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1491 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

aZW9cb|x>1jZDoAu$NpeWiVk@{x{! zmmBmDgx|qNN?LyIrl9$qmj{KjZ8zpa=4edK3FuFS$KFl}bWPoO*Ax#Z1c2#3JAN(O zYhi>`%H9fSnLkAq|5vs>+?U*bdfMc6TmDu+QqnN9xgfZsG25($^;v7U1nBl9Q^o*i z)&?UaYZ=~7XZa75xPKB1s~MB1m<*dN08pqiy*q!)_Kc|;EZs3&nNdMQ5#LFu+J z?*($vO)$hkMOVc16f-ep;K@_~&Y6t?0t9I0(lBkZBfic|u)3pK$Xv=A@jUQnB2sC` zbI)L9m;VNkWOao}2c3b4_u4+bg zuf-@d1$?asdD1~mORQ02#!&1Xm#41*xz}wETNqKb;kueQ*~OpcAXTpJFYUYcKoA&Z z8Ke=2Vh~cu_uTb&6AH75L!k8zo~&wRsDLs^3YkD2!~;%u6sFrzV2A5(FQ|3}+0-K- zWX)W2yq%?^)iKhyMGPB5*DnWBaLqAHLJ47;r5nvkeq3u_?J{Xaf_}6I+xpLwKS7NC z|KYU%zup)8i85jc)^Yt*I0W8;+zHUI3V7@o;3DUYasdq>DFK%im4J)F?;|B-<=}8R z>HESGa5)KyCnGII|E+YX&h4Y+xCRvyX@oGhhG4 j58+{W$RJv~NLLKlV4)8v^7hU(R-4l(}$teLl` diff --git a/{{cookiecutter.project_slug}}/frontend/public/img/icons/favicon-16x16.png b/{{cookiecutter.project_slug}}/frontend/public/img/icons/favicon-16x16.png deleted file mode 100644 index 42af00963d81b8e39a30435c60ac482d1f8756e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 799 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU$g(vPY0F z14ES>14Ba#1H&(%P{RubhEf9thF1v;3|2E37{m+a>WRE8{w#)hawXn|-Xp4{E;v!=;4B^%-x&;Cm1 zP>^*#n_J!T^1SBMI!C4h-R53dN8`?ylD}d{L%(vZvUKT)~-CgWFQy3lt zIqW5#zOL*K8HL%o&D;R|TePl5?VWhq^wrj^qed%lKKkpp-FogeyEi+p zE?K8rW7E1fuEJ{5jaaAp0~aIt+keS?T)@vXM=*X}V#VGMCm1~v-+0wr{w3CJ-R8wG zS@XVpzqP-5Mf0H?y-zh=XVL>S6E;rKnDmrMQlmoKbK9p$evXN`oe{6g>lvi)-+#c) zb+Al&$zRqtWk1@VTt6MPmq9d7^!kmXZn8k{sFt`!l%ynwlArU1(iRB6fMfqu& zIjIUIl?AB^nFS@u3=9=>9)IHDC=AokIOTu(jOWuJ24-b$y<~1-Wnu5hBFw@HE)6D! wQ<#-EhbWxBaplC3Ge=~Ou%B-5Sm33{@Jd{;RG<|Mp00i_>zopr0DGh}-~a#s diff --git a/{{cookiecutter.project_slug}}/frontend/public/img/icons/favicon-32x32.png b/{{cookiecutter.project_slug}}/frontend/public/img/icons/favicon-32x32.png deleted file mode 100644 index 46ca04dee251a4fa85a2891a145fbe20cc619d96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1271 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 - - - -Created by potrace 1.11, written by Peter Selinger 2001-2013 - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/public/index.html b/{{cookiecutter.project_slug}}/frontend/public/index.html deleted file mode 100644 index cad5aa7efa..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/public/index.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - <%= VUE_APP_NAME %> - - - - - - - -

- - - diff --git a/{{cookiecutter.project_slug}}/frontend/public/manifest.json b/{{cookiecutter.project_slug}}/frontend/public/manifest.json deleted file mode 100644 index 8ce10b9116..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/public/manifest.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "frontend", - "short_name": "frontend", - "icons": [ - { - "src": "/img/icons/android-chrome-192x192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "/img/icons/android-chrome-512x512.png", - "sizes": "512x512", - "type": "image/png" - } - ], - "start_url": "/", - "display": "standalone", - "background_color": "#000000", - "theme_color": "#4DBA87" -} diff --git a/{{cookiecutter.project_slug}}/frontend/public/robots.txt b/{{cookiecutter.project_slug}}/frontend/public/robots.txt deleted file mode 100644 index eb0536286f..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/public/robots.txt +++ /dev/null @@ -1,2 +0,0 @@ -User-agent: * -Disallow: diff --git a/{{cookiecutter.project_slug}}/frontend/src/App.vue b/{{cookiecutter.project_slug}}/frontend/src/App.vue deleted file mode 100644 index 795a97c955..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/App.vue +++ /dev/null @@ -1,43 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/api.ts b/{{cookiecutter.project_slug}}/frontend/src/api.ts deleted file mode 100644 index c24712b872..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/api.ts +++ /dev/null @@ -1,45 +0,0 @@ -import axios from 'axios'; -import { apiUrl } from '@/env'; -import { IUserProfile, IUserProfileUpdate, IUserProfileCreate } from './interfaces'; - -function authHeaders(token: string) { - return { - headers: { - Authorization: `Bearer ${token}`, - }, - }; -} - -export const api = { - async logInGetToken(username: string, password: string) { - const params = new URLSearchParams(); - params.append('username', username); - params.append('password', password); - - return axios.post(`${apiUrl}/api/v1/login/access-token`, params); - }, - async getMe(token: string) { - return axios.get(`${apiUrl}/api/v1/users/me`, authHeaders(token)); - }, - async updateMe(token: string, data: IUserProfileUpdate) { - return axios.put(`${apiUrl}/api/v1/users/me`, data, authHeaders(token)); - }, - async getUsers(token: string) { - return axios.get(`${apiUrl}/api/v1/users/`, authHeaders(token)); - }, - async updateUser(token: string, userId: number, data: IUserProfileUpdate) { - return axios.put(`${apiUrl}/api/v1/users/${userId}`, data, authHeaders(token)); - }, - async createUser(token: string, data: IUserProfileCreate) { - return axios.post(`${apiUrl}/api/v1/users/`, data, authHeaders(token)); - }, - async passwordRecovery(email: string) { - return axios.post(`${apiUrl}/api/v1/password-recovery/${email}`); - }, - async resetPassword(password: string, token: string) { - return axios.post(`${apiUrl}/api/v1/reset-password/`, { - new_password: password, - token, - }); - }, -}; diff --git a/{{cookiecutter.project_slug}}/frontend/src/assets/logo.png b/{{cookiecutter.project_slug}}/frontend/src/assets/logo.png deleted file mode 100644 index f3d2503fc2a44b5053b0837ebea6e87a2d339a43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6849 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 -
- - {{ currentNotificationContent }} - Close - -
- - diff --git a/{{cookiecutter.project_slug}}/frontend/src/components/RouterComponent.vue b/{{cookiecutter.project_slug}}/frontend/src/components/RouterComponent.vue deleted file mode 100644 index ed986a6fda..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/components/RouterComponent.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/components/UploadButton.vue b/{{cookiecutter.project_slug}}/frontend/src/components/UploadButton.vue deleted file mode 100644 index 8902e949e9..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/components/UploadButton.vue +++ /dev/null @@ -1,34 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/env.ts b/{{cookiecutter.project_slug}}/frontend/src/env.ts deleted file mode 100644 index b3387e69bc..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/env.ts +++ /dev/null @@ -1,14 +0,0 @@ -const env = process.env.VUE_APP_ENV; - -let envApiUrl = ''; - -if (env === 'production') { - envApiUrl = `https://${process.env.VUE_APP_DOMAIN_PROD}`; -} else if (env === 'staging') { - envApiUrl = `https://${process.env.VUE_APP_DOMAIN_STAG}`; -} else { - envApiUrl = `http://${process.env.VUE_APP_DOMAIN_DEV}`; -} - -export const apiUrl = envApiUrl; -export const appName = process.env.VUE_APP_NAME; diff --git a/{{cookiecutter.project_slug}}/frontend/src/interfaces/index.ts b/{{cookiecutter.project_slug}}/frontend/src/interfaces/index.ts deleted file mode 100644 index a1b93403cf..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/interfaces/index.ts +++ /dev/null @@ -1,23 +0,0 @@ -export interface IUserProfile { - email: string; - is_active: boolean; - is_superuser: boolean; - full_name: string; - id: number; -} - -export interface IUserProfileUpdate { - email?: string; - full_name?: string; - password?: string; - is_active?: boolean; - is_superuser?: boolean; -} - -export interface IUserProfileCreate { - email: string; - full_name?: string; - password?: string; - is_active?: boolean; - is_superuser?: boolean; -} diff --git a/{{cookiecutter.project_slug}}/frontend/src/main.ts b/{{cookiecutter.project_slug}}/frontend/src/main.ts deleted file mode 100644 index a844b1eab8..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/main.ts +++ /dev/null @@ -1,19 +0,0 @@ -import '@babel/polyfill'; -// Import Component hooks before component definitions -import './component-hooks'; -import Vue from 'vue'; -import './plugins/vuetify'; -import './plugins/vee-validate'; -import App from './App.vue'; -import router from './router'; -import store from '@/store'; -import './registerServiceWorker'; -import 'vuetify/dist/vuetify.min.css'; - -Vue.config.productionTip = false; - -new Vue({ - router, - store, - render: (h) => h(App), -}).$mount('#app'); diff --git a/{{cookiecutter.project_slug}}/frontend/src/plugins/vee-validate.ts b/{{cookiecutter.project_slug}}/frontend/src/plugins/vee-validate.ts deleted file mode 100644 index 9c4238f2f7..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/plugins/vee-validate.ts +++ /dev/null @@ -1,4 +0,0 @@ -import Vue from 'vue'; -import VeeValidate from 'vee-validate'; - -Vue.use(VeeValidate); diff --git a/{{cookiecutter.project_slug}}/frontend/src/plugins/vuetify.ts b/{{cookiecutter.project_slug}}/frontend/src/plugins/vuetify.ts deleted file mode 100644 index 8fdfce3a4a..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/plugins/vuetify.ts +++ /dev/null @@ -1,6 +0,0 @@ -import Vue from 'vue'; -import Vuetify from 'vuetify'; - -Vue.use(Vuetify, { - iconfont: 'md', -}); diff --git a/{{cookiecutter.project_slug}}/frontend/src/registerServiceWorker.ts b/{{cookiecutter.project_slug}}/frontend/src/registerServiceWorker.ts deleted file mode 100644 index d3db583898..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/registerServiceWorker.ts +++ /dev/null @@ -1,26 +0,0 @@ -/* tslint:disable:no-console */ - -import { register } from 'register-service-worker'; - -if (process.env.NODE_ENV === 'production') { - register(`${process.env.BASE_URL}service-worker.js`, { - ready() { - console.log( - 'App is being served from cache by a service worker.\n' + - 'For more details, visit https://goo.gl/AFskqB', - ); - }, - cached() { - console.log('Content has been cached for offline use.'); - }, - updated() { - console.log('New content is available; please refresh.'); - }, - offline() { - console.log('No internet connection found. App is running in offline mode.'); - }, - error(error) { - console.error('Error during service worker registration:', error); - }, - }); -} diff --git a/{{cookiecutter.project_slug}}/frontend/src/router.ts b/{{cookiecutter.project_slug}}/frontend/src/router.ts deleted file mode 100644 index b649c173ad..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/router.ts +++ /dev/null @@ -1,97 +0,0 @@ -import Vue from 'vue'; -import Router from 'vue-router'; - -import RouterComponent from './components/RouterComponent.vue'; - -Vue.use(Router); - -export default new Router({ - mode: 'history', - base: process.env.BASE_URL, - routes: [ - { - path: '/', - component: () => import(/* webpackChunkName: "start" */ './views/main/Start.vue'), - children: [ - { - path: 'login', - // route level code-splitting - // this generates a separate chunk (about.[hash].js) for this route - // which is lazy-loaded when the route is visited. - component: () => import(/* webpackChunkName: "login" */ './views/Login.vue'), - }, - { - path: 'recover-password', - component: () => import(/* webpackChunkName: "recover-password" */ './views/PasswordRecovery.vue'), - }, - { - path: 'reset-password', - component: () => import(/* webpackChunkName: "reset-password" */ './views/ResetPassword.vue'), - }, - { - path: 'main', - component: () => import(/* webpackChunkName: "main" */ './views/main/Main.vue'), - children: [ - { - path: 'dashboard', - component: () => import(/* webpackChunkName: "main-dashboard" */ './views/main/Dashboard.vue'), - }, - { - path: 'profile', - component: RouterComponent, - redirect: 'profile/view', - children: [ - { - path: 'view', - component: () => import( - /* webpackChunkName: "main-profile" */ './views/main/profile/UserProfile.vue'), - }, - { - path: 'edit', - component: () => import( - /* webpackChunkName: "main-profile-edit" */ './views/main/profile/UserProfileEdit.vue'), - }, - { - path: 'password', - component: () => import( - /* webpackChunkName: "main-profile-password" */ './views/main/profile/UserProfileEditPassword.vue'), - }, - ], - }, - { - path: 'admin', - component: () => import(/* webpackChunkName: "main-admin" */ './views/main/admin/Admin.vue'), - redirect: 'admin/users/all', - children: [ - { - path: 'users', - redirect: 'users/all', - }, - { - path: 'users/all', - component: () => import( - /* webpackChunkName: "main-admin-users" */ './views/main/admin/AdminUsers.vue'), - }, - { - path: 'users/edit/:id', - name: 'main-admin-users-edit', - component: () => import( - /* webpackChunkName: "main-admin-users-edit" */ './views/main/admin/EditUser.vue'), - }, - { - path: 'users/create', - name: 'main-admin-users-create', - component: () => import( - /* webpackChunkName: "main-admin-users-create" */ './views/main/admin/CreateUser.vue'), - }, - ], - }, - ], - }, - ], - }, - { - path: '/*', redirect: '/', - }, - ], -}); diff --git a/{{cookiecutter.project_slug}}/frontend/src/shims-tsx.d.ts b/{{cookiecutter.project_slug}}/frontend/src/shims-tsx.d.ts deleted file mode 100644 index 3b88b58292..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/shims-tsx.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import Vue, { VNode } from 'vue'; - -declare global { - namespace JSX { - // tslint:disable no-empty-interface - interface Element extends VNode {} - // tslint:disable no-empty-interface - interface ElementClass extends Vue {} - interface IntrinsicElements { - [elem: string]: any; - } - } -} diff --git a/{{cookiecutter.project_slug}}/frontend/src/shims-vue.d.ts b/{{cookiecutter.project_slug}}/frontend/src/shims-vue.d.ts deleted file mode 100644 index 8f6f410263..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/shims-vue.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -declare module '*.vue' { - import Vue from 'vue'; - export default Vue; -} diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/admin/actions.ts b/{{cookiecutter.project_slug}}/frontend/src/store/admin/actions.ts deleted file mode 100644 index 125a08e6fd..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/admin/actions.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { api } from '@/api'; -import { ActionContext } from 'vuex'; -import { IUserProfileCreate, IUserProfileUpdate } from '@/interfaces'; -import { State } from '../state'; -import { AdminState } from './state'; -import { getStoreAccessors } from 'typesafe-vuex'; -import { commitSetUsers, commitSetUser } from './mutations'; -import { dispatchCheckApiError } from '../main/actions'; -import { commitAddNotification, commitRemoveNotification } from '../main/mutations'; - -type MainContext = ActionContext; - -export const actions = { - async actionGetUsers(context: MainContext) { - try { - const response = await api.getUsers(context.rootState.main.token); - if (response) { - commitSetUsers(context, response.data); - } - } catch (error) { - await dispatchCheckApiError(context, error); - } - }, - async actionUpdateUser(context: MainContext, payload: { id: number, user: IUserProfileUpdate }) { - try { - const loadingNotification = { content: 'saving', showProgress: true }; - commitAddNotification(context, loadingNotification); - const response = (await Promise.all([ - api.updateUser(context.rootState.main.token, payload.id, payload.user), - await new Promise((resolve, reject) => setTimeout(() => resolve(), 500)), - ]))[0]; - commitSetUser(context, response.data); - commitRemoveNotification(context, loadingNotification); - commitAddNotification(context, { content: 'User successfully updated', color: 'success' }); - } catch (error) { - await dispatchCheckApiError(context, error); - } - }, - async actionCreateUser(context: MainContext, payload: IUserProfileCreate) { - try { - const loadingNotification = { content: 'saving', showProgress: true }; - commitAddNotification(context, loadingNotification); - const response = (await Promise.all([ - api.createUser(context.rootState.main.token, payload), - await new Promise((resolve, reject) => setTimeout(() => resolve(), 500)), - ]))[0]; - commitSetUser(context, response.data); - commitRemoveNotification(context, loadingNotification); - commitAddNotification(context, { content: 'User successfully created', color: 'success' }); - } catch (error) { - await dispatchCheckApiError(context, error); - } - }, -}; - -const { dispatch } = getStoreAccessors(''); - -export const dispatchCreateUser = dispatch(actions.actionCreateUser); -export const dispatchGetUsers = dispatch(actions.actionGetUsers); -export const dispatchUpdateUser = dispatch(actions.actionUpdateUser); diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/admin/getters.ts b/{{cookiecutter.project_slug}}/frontend/src/store/admin/getters.ts deleted file mode 100644 index c5832ef449..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/admin/getters.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { AdminState } from './state'; -import { getStoreAccessors } from 'typesafe-vuex'; -import { State } from '../state'; - -export const getters = { - adminUsers: (state: AdminState) => state.users, - adminOneUser: (state: AdminState) => (userId: number) => { - const filteredUsers = state.users.filter((user) => user.id === userId); - if (filteredUsers.length > 0) { - return { ...filteredUsers[0] }; - } - }, -}; - -const { read } = getStoreAccessors(''); - -export const readAdminOneUser = read(getters.adminOneUser); -export const readAdminUsers = read(getters.adminUsers); diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/admin/index.ts b/{{cookiecutter.project_slug}}/frontend/src/store/admin/index.ts deleted file mode 100644 index dcaf6abbd1..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/admin/index.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { mutations } from './mutations'; -import { getters } from './getters'; -import { actions } from './actions'; -import { AdminState } from './state'; - -const defaultState: AdminState = { - users: [], -}; - -export const adminModule = { - state: defaultState, - mutations, - actions, - getters, -}; diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/admin/mutations.ts b/{{cookiecutter.project_slug}}/frontend/src/store/admin/mutations.ts deleted file mode 100644 index dea471d4e7..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/admin/mutations.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { IUserProfile } from '@/interfaces'; -import { AdminState } from './state'; -import { getStoreAccessors } from 'typesafe-vuex'; -import { State } from '../state'; - -export const mutations = { - setUsers(state: AdminState, payload: IUserProfile[]) { - state.users = payload; - }, - setUser(state: AdminState, payload: IUserProfile) { - const users = state.users.filter((user: IUserProfile) => user.id !== payload.id); - users.push(payload); - state.users = users; - }, -}; - -const { commit } = getStoreAccessors(''); - -export const commitSetUser = commit(mutations.setUser); -export const commitSetUsers = commit(mutations.setUsers); diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/admin/state.ts b/{{cookiecutter.project_slug}}/frontend/src/store/admin/state.ts deleted file mode 100644 index 8dfefe2f99..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/admin/state.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { IUserProfile } from '@/interfaces'; - -export interface AdminState { - users: IUserProfile[]; -} diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/index.ts b/{{cookiecutter.project_slug}}/frontend/src/store/index.ts deleted file mode 100644 index 1089971525..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/index.ts +++ /dev/null @@ -1,19 +0,0 @@ -import Vue from 'vue'; -import Vuex, { StoreOptions } from 'vuex'; - -import { mainModule } from './main'; -import { State } from './state'; -import { adminModule } from './admin'; - -Vue.use(Vuex); - -const storeOptions: StoreOptions = { - modules: { - main: mainModule, - admin: adminModule, - }, -}; - -export const store = new Vuex.Store(storeOptions); - -export default store; diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/main/actions.ts b/{{cookiecutter.project_slug}}/frontend/src/store/main/actions.ts deleted file mode 100644 index d02c06d53c..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/main/actions.ts +++ /dev/null @@ -1,173 +0,0 @@ -import { api } from '@/api'; -import router from '@/router'; -import { getLocalToken, removeLocalToken, saveLocalToken } from '@/utils'; -import { AxiosError } from 'axios'; -import { getStoreAccessors } from 'typesafe-vuex'; -import { ActionContext } from 'vuex'; -import { State } from '../state'; -import { - commitAddNotification, - commitRemoveNotification, - commitSetLoggedIn, - commitSetLogInError, - commitSetToken, - commitSetUserProfile, -} from './mutations'; -import { AppNotification, MainState } from './state'; - -type MainContext = ActionContext; - -export const actions = { - async actionLogIn(context: MainContext, payload: { username: string; password: string }) { - try { - const response = await api.logInGetToken(payload.username, payload.password); - const token = response.data.access_token; - if (token) { - saveLocalToken(token); - commitSetToken(context, token); - commitSetLoggedIn(context, true); - commitSetLogInError(context, false); - await dispatchGetUserProfile(context); - await dispatchRouteLoggedIn(context); - commitAddNotification(context, { content: 'Logged in', color: 'success' }); - } else { - await dispatchLogOut(context); - } - } catch (err) { - commitSetLogInError(context, true); - await dispatchLogOut(context); - } - }, - async actionGetUserProfile(context: MainContext) { - try { - const response = await api.getMe(context.state.token); - if (response.data) { - commitSetUserProfile(context, response.data); - } - } catch (error) { - await dispatchCheckApiError(context, error); - } - }, - async actionUpdateUserProfile(context: MainContext, payload) { - try { - const loadingNotification = { content: 'saving', showProgress: true }; - commitAddNotification(context, loadingNotification); - const response = (await Promise.all([ - api.updateMe(context.state.token, payload), - await new Promise((resolve, reject) => setTimeout(() => resolve(), 500)), - ]))[0]; - commitSetUserProfile(context, response.data); - commitRemoveNotification(context, loadingNotification); - commitAddNotification(context, { content: 'Profile successfully updated', color: 'success' }); - } catch (error) { - await dispatchCheckApiError(context, error); - } - }, - async actionCheckLoggedIn(context: MainContext) { - if (!context.state.isLoggedIn) { - let token = context.state.token; - if (!token) { - const localToken = getLocalToken(); - if (localToken) { - commitSetToken(context, localToken); - token = localToken; - } - } - if (token) { - try { - const response = await api.getMe(token); - commitSetLoggedIn(context, true); - commitSetUserProfile(context, response.data); - } catch (error) { - await dispatchRemoveLogIn(context); - } - } else { - await dispatchRemoveLogIn(context); - } - } - }, - async actionRemoveLogIn(context: MainContext) { - removeLocalToken(); - commitSetToken(context, ''); - commitSetLoggedIn(context, false); - }, - async actionLogOut(context: MainContext) { - await dispatchRemoveLogIn(context); - await dispatchRouteLogOut(context); - }, - async actionUserLogOut(context: MainContext) { - await dispatchLogOut(context); - commitAddNotification(context, { content: 'Logged out', color: 'success' }); - }, - actionRouteLogOut(context: MainContext) { - if (router.currentRoute.path !== '/login') { - router.push('/login'); - } - }, - async actionCheckApiError(context: MainContext, payload: AxiosError) { - if (payload.response!.status === 401) { - await dispatchLogOut(context); - } - }, - actionRouteLoggedIn(context: MainContext) { - if (router.currentRoute.path === '/login' || router.currentRoute.path === '/') { - router.push('/main'); - } - }, - async removeNotification(context: MainContext, payload: { notification: AppNotification, timeout: number }) { - return new Promise((resolve, reject) => { - setTimeout(() => { - commitRemoveNotification(context, payload.notification); - resolve(true); - }, payload.timeout); - }); - }, - async passwordRecovery(context: MainContext, payload: { username: string }) { - const loadingNotification = { content: 'Sending password recovery email', showProgress: true }; - try { - commitAddNotification(context, loadingNotification); - const response = (await Promise.all([ - api.passwordRecovery(payload.username), - await new Promise((resolve, reject) => setTimeout(() => resolve(), 500)), - ]))[0]; - commitRemoveNotification(context, loadingNotification); - commitAddNotification(context, { content: 'Password recovery email sent', color: 'success' }); - await dispatchLogOut(context); - } catch (error) { - commitRemoveNotification(context, loadingNotification); - commitAddNotification(context, { color: 'error', content: 'Incorrect username' }); - } - }, - async resetPassword(context: MainContext, payload: { password: string, token: string }) { - const loadingNotification = { content: 'Resetting password', showProgress: true }; - try { - commitAddNotification(context, loadingNotification); - const response = (await Promise.all([ - api.resetPassword(payload.password, payload.token), - await new Promise((resolve, reject) => setTimeout(() => resolve(), 500)), - ]))[0]; - commitRemoveNotification(context, loadingNotification); - commitAddNotification(context, { content: 'Password successfully reset', color: 'success' }); - await dispatchLogOut(context); - } catch (error) { - commitRemoveNotification(context, loadingNotification); - commitAddNotification(context, { color: 'error', content: 'Error resetting password' }); - } - }, -}; - -const { dispatch } = getStoreAccessors(''); - -export const dispatchCheckApiError = dispatch(actions.actionCheckApiError); -export const dispatchCheckLoggedIn = dispatch(actions.actionCheckLoggedIn); -export const dispatchGetUserProfile = dispatch(actions.actionGetUserProfile); -export const dispatchLogIn = dispatch(actions.actionLogIn); -export const dispatchLogOut = dispatch(actions.actionLogOut); -export const dispatchUserLogOut = dispatch(actions.actionUserLogOut); -export const dispatchRemoveLogIn = dispatch(actions.actionRemoveLogIn); -export const dispatchRouteLoggedIn = dispatch(actions.actionRouteLoggedIn); -export const dispatchRouteLogOut = dispatch(actions.actionRouteLogOut); -export const dispatchUpdateUserProfile = dispatch(actions.actionUpdateUserProfile); -export const dispatchRemoveNotification = dispatch(actions.removeNotification); -export const dispatchPasswordRecovery = dispatch(actions.passwordRecovery); -export const dispatchResetPassword = dispatch(actions.resetPassword); diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/main/getters.ts b/{{cookiecutter.project_slug}}/frontend/src/store/main/getters.ts deleted file mode 100644 index 58f83978fa..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/main/getters.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { MainState } from './state'; -import { getStoreAccessors } from 'typesafe-vuex'; -import { State } from '../state'; - -export const getters = { - hasAdminAccess: (state: MainState) => { - return ( - state.userProfile && - state.userProfile.is_superuser && state.userProfile.is_active); - }, - loginError: (state: MainState) => state.logInError, - dashboardShowDrawer: (state: MainState) => state.dashboardShowDrawer, - dashboardMiniDrawer: (state: MainState) => state.dashboardMiniDrawer, - userProfile: (state: MainState) => state.userProfile, - token: (state: MainState) => state.token, - isLoggedIn: (state: MainState) => state.isLoggedIn, - firstNotification: (state: MainState) => state.notifications.length > 0 && state.notifications[0], -}; - -const {read} = getStoreAccessors(''); - -export const readDashboardMiniDrawer = read(getters.dashboardMiniDrawer); -export const readDashboardShowDrawer = read(getters.dashboardShowDrawer); -export const readHasAdminAccess = read(getters.hasAdminAccess); -export const readIsLoggedIn = read(getters.isLoggedIn); -export const readLoginError = read(getters.loginError); -export const readToken = read(getters.token); -export const readUserProfile = read(getters.userProfile); -export const readFirstNotification = read(getters.firstNotification); diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/main/index.ts b/{{cookiecutter.project_slug}}/frontend/src/store/main/index.ts deleted file mode 100644 index 56ba1a0c2f..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/main/index.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { mutations } from './mutations'; -import { getters } from './getters'; -import { actions } from './actions'; -import { MainState } from './state'; - -const defaultState: MainState = { - isLoggedIn: null, - token: '', - logInError: false, - userProfile: null, - dashboardMiniDrawer: false, - dashboardShowDrawer: true, - notifications: [], -}; - -export const mainModule = { - state: defaultState, - mutations, - actions, - getters, -}; diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/main/mutations.ts b/{{cookiecutter.project_slug}}/frontend/src/store/main/mutations.ts deleted file mode 100644 index 3e9c8ba2c0..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/main/mutations.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { IUserProfile } from '@/interfaces'; -import { MainState, AppNotification } from './state'; -import { getStoreAccessors } from 'typesafe-vuex'; -import { State } from '../state'; - - -export const mutations = { - setToken(state: MainState, payload: string) { - state.token = payload; - }, - setLoggedIn(state: MainState, payload: boolean) { - state.isLoggedIn = payload; - }, - setLogInError(state: MainState, payload: boolean) { - state.logInError = payload; - }, - setUserProfile(state: MainState, payload: IUserProfile) { - state.userProfile = payload; - }, - setDashboardMiniDrawer(state: MainState, payload: boolean) { - state.dashboardMiniDrawer = payload; - }, - setDashboardShowDrawer(state: MainState, payload: boolean) { - state.dashboardShowDrawer = payload; - }, - addNotification(state: MainState, payload: AppNotification) { - state.notifications.push(payload); - }, - removeNotification(state: MainState, payload: AppNotification) { - state.notifications = state.notifications.filter((notification) => notification !== payload); - }, -}; - -const {commit} = getStoreAccessors(''); - -export const commitSetDashboardMiniDrawer = commit(mutations.setDashboardMiniDrawer); -export const commitSetDashboardShowDrawer = commit(mutations.setDashboardShowDrawer); -export const commitSetLoggedIn = commit(mutations.setLoggedIn); -export const commitSetLogInError = commit(mutations.setLogInError); -export const commitSetToken = commit(mutations.setToken); -export const commitSetUserProfile = commit(mutations.setUserProfile); -export const commitAddNotification = commit(mutations.addNotification); -export const commitRemoveNotification = commit(mutations.removeNotification); diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/main/state.ts b/{{cookiecutter.project_slug}}/frontend/src/store/main/state.ts deleted file mode 100644 index be24b63ae9..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/main/state.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { IUserProfile } from '@/interfaces'; - -export interface AppNotification { - content: string; - color?: string; - showProgress?: boolean; -} - -export interface MainState { - token: string; - isLoggedIn: boolean | null; - logInError: boolean; - userProfile: IUserProfile | null; - dashboardMiniDrawer: boolean; - dashboardShowDrawer: boolean; - notifications: AppNotification[]; -} diff --git a/{{cookiecutter.project_slug}}/frontend/src/store/state.ts b/{{cookiecutter.project_slug}}/frontend/src/store/state.ts deleted file mode 100644 index ecec111cd8..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/store/state.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { MainState } from './main/state'; - -export interface State { - main: MainState; -} diff --git a/{{cookiecutter.project_slug}}/frontend/src/utils.ts b/{{cookiecutter.project_slug}}/frontend/src/utils.ts deleted file mode 100644 index ade11b6a2e..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/utils.ts +++ /dev/null @@ -1,5 +0,0 @@ -export const getLocalToken = () => localStorage.getItem('token'); - -export const saveLocalToken = (token: string) => localStorage.setItem('token', token); - -export const removeLocalToken = () => localStorage.removeItem('token'); diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/Login.vue b/{{cookiecutter.project_slug}}/frontend/src/views/Login.vue deleted file mode 100644 index 28bcb5965e..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/Login.vue +++ /dev/null @@ -1,58 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/PasswordRecovery.vue b/{{cookiecutter.project_slug}}/frontend/src/views/PasswordRecovery.vue deleted file mode 100644 index bc1a7ade3f..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/PasswordRecovery.vue +++ /dev/null @@ -1,52 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/ResetPassword.vue b/{{cookiecutter.project_slug}}/frontend/src/views/ResetPassword.vue deleted file mode 100644 index 3e680eb171..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/ResetPassword.vue +++ /dev/null @@ -1,84 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/Dashboard.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/Dashboard.vue deleted file mode 100644 index 421879b1b6..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/Dashboard.vue +++ /dev/null @@ -1,37 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/Main.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/Main.vue deleted file mode 100644 index 846d93bd40..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/Main.vue +++ /dev/null @@ -1,182 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/Start.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/Start.vue deleted file mode 100644 index 71eeaafeff..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/Start.vue +++ /dev/null @@ -1,38 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/Admin.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/Admin.vue deleted file mode 100644 index 1282176aaf..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/Admin.vue +++ /dev/null @@ -1,28 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/AdminUsers.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/AdminUsers.vue deleted file mode 100644 index 9b35d9a6c1..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/AdminUsers.vue +++ /dev/null @@ -1,83 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/CreateUser.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/CreateUser.vue deleted file mode 100644 index 892283ec6c..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/CreateUser.vue +++ /dev/null @@ -1,97 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/EditUser.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/EditUser.vue deleted file mode 100644 index 7421233140..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/admin/EditUser.vue +++ /dev/null @@ -1,163 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfile.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfile.vue deleted file mode 100644 index 25960bd42e..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfile.vue +++ /dev/null @@ -1,46 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfileEdit.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfileEdit.vue deleted file mode 100644 index dfbea8d874..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfileEdit.vue +++ /dev/null @@ -1,97 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfileEditPassword.vue b/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfileEditPassword.vue deleted file mode 100644 index 80e2cc5864..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/src/views/main/profile/UserProfileEditPassword.vue +++ /dev/null @@ -1,86 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/tests/unit/upload-button.spec.ts b/{{cookiecutter.project_slug}}/frontend/tests/unit/upload-button.spec.ts deleted file mode 100644 index b40eed7bea..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/tests/unit/upload-button.spec.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { shallowMount } from '@vue/test-utils'; -import UploadButton from '@/components/UploadButton.vue'; -import '@/plugins/vuetify'; - -describe('UploadButton.vue', () => { - it('renders props.title when passed', () => { - const title = 'upload a file'; - const wrapper = shallowMount(UploadButton, { - slots: { - default: title, - }, - }); - expect(wrapper.text()).toMatch(title); - }); -}); diff --git a/{{cookiecutter.project_slug}}/frontend/tsconfig.json b/{{cookiecutter.project_slug}}/frontend/tsconfig.json deleted file mode 100644 index 88cfbc31d8..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/tsconfig.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "compilerOptions": { - "noImplicitAny": false, - "target": "esnext", - "module": "esnext", - "strict": true, - "jsx": "preserve", - "importHelpers": true, - "moduleResolution": "node", - "experimentalDecorators": true, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "sourceMap": true, - "baseUrl": ".", - "types": [ - "webpack-env", - "jest" - ], - "paths": { - "@/*": [ - "src/*" - ] - }, - "lib": [ - "esnext", - "dom", - "dom.iterable", - "scripthost" - ] - }, - "include": [ - "src/**/*.ts", - "src/**/*.tsx", - "src/**/*.vue", - "tests/**/*.ts", - "tests/**/*.tsx" - ], - "exclude": [ - "node_modules" - ] -} diff --git a/{{cookiecutter.project_slug}}/frontend/tslint.json b/{{cookiecutter.project_slug}}/frontend/tslint.json deleted file mode 100644 index 2b37e401c3..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/tslint.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "defaultSeverity": "warning", - "extends": [ - "tslint:recommended" - ], - "linterOptions": { - "exclude": [ - "node_modules/**" - ] - }, - "rules": { - "quotemark": [true, "single"], - "indent": [true, "spaces", 2], - "interface-name": false, - "ordered-imports": false, - "object-literal-sort-keys": false, - "no-consecutive-blank-lines": false - } -} diff --git a/{{cookiecutter.project_slug}}/frontend/vue.config.js b/{{cookiecutter.project_slug}}/frontend/vue.config.js deleted file mode 100644 index 140713412f..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/vue.config.js +++ /dev/null @@ -1,35 +0,0 @@ -module.exports = { - // Fix Vuex-typescript in prod: https://github.com/istrib/vuex-typescript/issues/13#issuecomment-409869231 - configureWebpack: (config) => { - if (process.env.NODE_ENV === 'production') { - config.optimization.minimizer[0].options.terserOptions = Object.assign( - {}, - config.optimization.minimizer[0].options.terserOptions, - { - ecma: 5, - compress: { - keep_fnames: true, - }, - warnings: false, - mangle: { - keep_fnames: true, - }, - }, - ); - } - }, - chainWebpack: config => { - config.module - .rule('vue') - .use('vue-loader') - .loader('vue-loader') - .tap(options => Object.assign(options, { - transformAssetUrls: { - 'v-img': ['src', 'lazy-src'], - 'v-card': 'src', - 'v-card-media': 'src', - 'v-responsive': 'src', - } - })); - }, -} From 3480f5f6f9f08e0c90f60bf6bc5cffd4a2cbf551 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sat, 14 Aug 2021 16:51:01 -0400 Subject: [PATCH 12/81] Add front-end code from whythawk/nuxt-for-fastapi https://github.com/whythawk/nuxt-for-fastapi --- .../frontend/.babelrc | 16 + .../frontend/.editorconfig | 13 + .../frontend/.eslintrc.js | 26 + .../frontend/.gitattributes | 2 + .../frontend/.gitignore | 76 + .../frontend/.prettierrc | 6 + .../frontend/LICENSE | 21 + .../frontend/README.md | 56 + {{cookiecutter.project_slug}}/frontend/api.ts | 74 + .../frontend/app/router.scrollBehavior.ts | 4 + .../frontend/assets/css/tailwind.css | 4 + .../frontend/components/HeadingBar.vue | 21 + .../frontend/components/Logo.vue | 35 + .../frontend/components/NavBar.vue | 301 + .../frontend/components/NotificationsBar.vue | 145 + .../frontend/content/article-content.md | 18 + .../frontend/content/get-started.md | 57 + .../frontend/interfaces/index.ts | 30 + .../frontend/jest.config.js | 18 + .../frontend/layouts/content.vue | 14 + .../frontend/layouts/default.vue | 12 + .../frontend/layouts/landing.vue | 205 + .../frontend/middleware/anonymous.ts | 5 + .../frontend/middleware/authenticated.ts | 5 + .../frontend/middleware/has-admin-access.ts | 8 + .../frontend/nuxt.config.js | 91 + .../frontend/package.json | 50 + .../frontend/pages/admin/create.vue | 221 + .../frontend/pages/admin/edit/_id.vue | 259 + .../frontend/pages/admin/index.vue | 133 + .../frontend/pages/article-content.vue | 22 + .../frontend/pages/get-started.vue | 22 + .../frontend/pages/index.vue | 212 + .../frontend/pages/login.vue | 124 + .../frontend/pages/main/dashboard.vue | 52 + .../pages/main/profile/edit-password.vue | 117 + .../frontend/pages/main/profile/edit.vue | 124 + .../frontend/pages/main/profile/index.vue | 86 + .../frontend/pages/recover-password.vue | 97 + .../frontend/pages/register.vue | 313 + .../frontend/pages/reset-password.vue | 219 + .../frontend/plugins/vee-validate.ts | 22 + .../frontend/static/favicon.ico | Bin 0 -> 1393 bytes .../frontend/static/icon.png | Bin 0 -> 12699 bytes .../frontend/static/sw.js | 17 + .../frontend/store/admin/actions.ts | 82 + .../frontend/store/admin/getters.ts | 9 + .../frontend/store/admin/mutations.ts | 14 + .../frontend/store/admin/state.ts | 11 + .../frontend/store/helpers/actions.ts | 0 .../frontend/store/helpers/getters.ts | 3 + .../frontend/store/helpers/mutations.ts | 5 + .../frontend/store/helpers/state.ts | 9 + .../frontend/store/main/actions.ts | 174 + .../frontend/store/main/getters.ts | 17 + .../frontend/store/main/mutations.ts | 31 + .../frontend/store/main/state.ts | 25 + .../frontend/tailwind.config.js | 41 + .../frontend/test/Logo.spec.js | 9 + .../frontend/tsconfig.json | 39 + .../frontend/tslint.json | 19 + .../frontend/utils.ts | 6 + .../frontend/yarn.lock | 13137 ++++++++++++++++ 63 files changed, 16984 insertions(+) create mode 100644 {{cookiecutter.project_slug}}/frontend/.babelrc create mode 100644 {{cookiecutter.project_slug}}/frontend/.editorconfig create mode 100644 {{cookiecutter.project_slug}}/frontend/.eslintrc.js create mode 100644 {{cookiecutter.project_slug}}/frontend/.gitattributes create mode 100644 {{cookiecutter.project_slug}}/frontend/.gitignore create mode 100644 {{cookiecutter.project_slug}}/frontend/.prettierrc create mode 100644 {{cookiecutter.project_slug}}/frontend/LICENSE create mode 100644 {{cookiecutter.project_slug}}/frontend/README.md create mode 100644 {{cookiecutter.project_slug}}/frontend/api.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/app/router.scrollBehavior.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/assets/css/tailwind.css create mode 100644 {{cookiecutter.project_slug}}/frontend/components/HeadingBar.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/Logo.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/NavBar.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/NotificationsBar.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/content/article-content.md create mode 100644 {{cookiecutter.project_slug}}/frontend/content/get-started.md create mode 100644 {{cookiecutter.project_slug}}/frontend/interfaces/index.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/jest.config.js create mode 100644 {{cookiecutter.project_slug}}/frontend/layouts/content.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/layouts/default.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/layouts/landing.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/middleware/anonymous.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/middleware/authenticated.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/middleware/has-admin-access.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/nuxt.config.js create mode 100644 {{cookiecutter.project_slug}}/frontend/package.json create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/admin/create.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/admin/edit/_id.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/admin/index.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/article-content.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/get-started.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/index.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/login.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/main/dashboard.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/main/profile/edit-password.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/main/profile/edit.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/main/profile/index.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/recover-password.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/register.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/reset-password.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/plugins/vee-validate.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/static/favicon.ico create mode 100644 {{cookiecutter.project_slug}}/frontend/static/icon.png create mode 100644 {{cookiecutter.project_slug}}/frontend/static/sw.js create mode 100644 {{cookiecutter.project_slug}}/frontend/store/admin/actions.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/admin/getters.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/admin/mutations.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/admin/state.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/helpers/actions.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/helpers/getters.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/helpers/mutations.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/helpers/state.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/main/actions.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/main/getters.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/main/mutations.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/store/main/state.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/tailwind.config.js create mode 100644 {{cookiecutter.project_slug}}/frontend/test/Logo.spec.js create mode 100644 {{cookiecutter.project_slug}}/frontend/tsconfig.json create mode 100644 {{cookiecutter.project_slug}}/frontend/tslint.json create mode 100644 {{cookiecutter.project_slug}}/frontend/utils.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/yarn.lock diff --git a/{{cookiecutter.project_slug}}/frontend/.babelrc b/{{cookiecutter.project_slug}}/frontend/.babelrc new file mode 100644 index 0000000000..84c2e570ec --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/.babelrc @@ -0,0 +1,16 @@ +{ + "env": { + "test": { + "presets": [ + [ + "@babel/preset-env", + { + "targets": { + "node": "current" + } + } + ] + ] + } + } +} diff --git a/{{cookiecutter.project_slug}}/frontend/.editorconfig b/{{cookiecutter.project_slug}}/frontend/.editorconfig new file mode 100644 index 0000000000..5d12634847 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/.editorconfig @@ -0,0 +1,13 @@ +# editorconfig.org +root = true + +[*] +indent_style = space +indent_size = 2 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false diff --git a/{{cookiecutter.project_slug}}/frontend/.eslintrc.js b/{{cookiecutter.project_slug}}/frontend/.eslintrc.js new file mode 100644 index 0000000000..b838fd9418 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/.eslintrc.js @@ -0,0 +1,26 @@ +module.exports = { + root: true, + env: { + browser: true, + node: true, + }, + extends: [ + "@nuxtjs/eslint-config-typescript", + "plugin:prettier/recommended", + "plugin:nuxt/recommended", + ], + plugins: [], + // add your custom rules here + // https://allurcode.com/custom-linting-rules-in-nuxtjs-and-eslint/ + // https://stackoverflow.com/questions/53516594/why-do-i-keep-getting-delete-cr-prettier-prettier + rules: { + "no-console": process.env.VUE_APP_ENV === "production" ? "error" : "off", + "no-debugger": process.env.VUE_APP_ENV === "production" ? "error" : "off", + "prettier/prettier": [ + "error", + { + endOfLine: "auto", + }, + ], + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/.gitattributes b/{{cookiecutter.project_slug}}/frontend/.gitattributes new file mode 100644 index 0000000000..dfe0770424 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/.gitattributes @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/{{cookiecutter.project_slug}}/frontend/.gitignore b/{{cookiecutter.project_slug}}/frontend/.gitignore new file mode 100644 index 0000000000..e1da6ae8ea --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/.gitignore @@ -0,0 +1,76 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# TypeScript v1 declaration files +typings/ + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variables file +.env + +# parcel-bundler cache (https://parceljs.org/) +.cache + +# next.js build output +.next + +# nuxt.js build output +.nuxt + +# vuepress build output +.vuepress/dist + +# Serverless directories +.serverless + +# FuseBox cache +.fusebox/ diff --git a/{{cookiecutter.project_slug}}/frontend/.prettierrc b/{{cookiecutter.project_slug}}/frontend/.prettierrc new file mode 100644 index 0000000000..153c35da99 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/.prettierrc @@ -0,0 +1,6 @@ +{ + "semi": false, + "singleQuote": false, + "tabWidth": 2, + "endOfLine": "auto" +} diff --git a/{{cookiecutter.project_slug}}/frontend/LICENSE b/{{cookiecutter.project_slug}}/frontend/LICENSE new file mode 100644 index 0000000000..82a10b588a --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 Gavin Chait + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/{{cookiecutter.project_slug}}/frontend/README.md b/{{cookiecutter.project_slug}}/frontend/README.md new file mode 100644 index 0000000000..29e14df0f2 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/README.md @@ -0,0 +1,56 @@ +# Nuxt.js frontend replacement for FastAPI base project generator + +## What is it? + +Accelerate your next FastAPI Base Project Generator frontend development by replacing Vue.js with NuxtJS, an open source framework making web development simple and powerful. + +## Build Setup + +First deploy FastAPI's [Base Project Generator](https://github.com/tiangolo/full-stack-fastapi-postgresql), then replace the entire `frontend` folder with this one, updating the `.env` settings, and `nuxt.config.js`, and `package.json` 'frontend' project name with your own. + +```bash +# install dependencies +$ yarn install + +# serve with hot reload at localhost:3000 +$ yarn dev + +# build for production and launch server +$ yarn build +$ yarn start + +# generate static project +$ yarn generate +``` + +Hot reload does not work in WSL2 (only WSL1, as of 1 April 2021). For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). + +## Nuxt.js and components + +- [Nuxt.js](https://nuxtjs.org/) +- [Nuxt-property-decorator](https://github.com/nuxt-community/nuxt-property-decorator) +- [Vue Class Component](https://class-component.vuejs.org/) + +## TailwindCSS + +- [Tailwindcss](https://tailwindcss.com/) +- [Tailwind heroicons](https://heroicons.com/) +- [Tailwind typography](https://github.com/tailwindlabs/tailwindcss-typography) + +## Helpers + +- [Nuxt/content](https://content.nuxtjs.org/) +- [Vee-validate](https://vee-validate.logaretm.com/v3/) +- [Nuxt/PWA](https://pwa.nuxtjs.org/) + +Nuxt/PWA is a zero config PWA solution: + +- Registers a service worker for offline caching. +- Automatically generate manifest.json file. +- Automatically adds SEO friendly meta data with manifest integration. +- Automatically generates app icons with different sizes. +- Free background push notifications using OneSignal. + +## Licence + +This project is licensed under the terms of the MIT license. diff --git a/{{cookiecutter.project_slug}}/frontend/api.ts b/{{cookiecutter.project_slug}}/frontend/api.ts new file mode 100644 index 0000000000..17af8872b9 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/api.ts @@ -0,0 +1,74 @@ +import axios from "axios" +import { + IUserProfile, + IUserProfileUpdate, + IUserProfileCreate, + IUserOpenProfileCreate, +} from "./interfaces" + +function authHeaders(token: string) { + return { + headers: { + Authorization: `Bearer ${token}`, + }, + } +} + +export const api = { + async logInGetToken(username: string, password: string) { + const params = new URLSearchParams() + params.append("username", username) + params.append("password", password) + return await axios.post( + `${process.env.apiUrl}/api/v1/login/access-token`, + params + ) + }, + async createMe(data: IUserOpenProfileCreate) { + return await axios.post(`${process.env.apiUrl}/api/v1/users/open`, data) + }, + async getMe(token: string) { + return await axios.get( + `${process.env.apiUrl}/api/v1/users/me`, + authHeaders(token) + ) + }, + async updateMe(token: string, data: IUserProfileUpdate) { + return await axios.put( + `${process.env.apiUrl}/api/v1/users/me`, + data, + authHeaders(token) + ) + }, + async getUsers(token: string) { + return await axios.get( + `${process.env.apiUrl}/api/v1/users/`, + authHeaders(token) + ) + }, + async updateUser(token: string, userId: number, data: IUserProfileUpdate) { + return await axios.put( + `${process.env.apiUrl}/api/v1/users/${userId}`, + data, + authHeaders(token) + ) + }, + async createUser(token: string, data: IUserProfileCreate) { + return await axios.post( + `${process.env.apiUrl}/api/v1/users/`, + data, + authHeaders(token) + ) + }, + async passwordRecovery(email: string) { + return await axios.post( + `${process.env.apiUrl}/api/v1/password-recovery/${email}` + ) + }, + async resetPassword(password: string, token: string) { + return await axios.post(`${process.env.apiUrl}/api/v1/reset-password/`, { + new_password: password, + token, + }) + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/app/router.scrollBehavior.ts b/{{cookiecutter.project_slug}}/frontend/app/router.scrollBehavior.ts new file mode 100644 index 0000000000..e2363bb71b --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/app/router.scrollBehavior.ts @@ -0,0 +1,4 @@ +export default function (to: any, from: any, savedPosition: any) { + // https://router.vuejs.org/guide/advanced/scroll-behavior.html + return { x: 0, y: 0 } +} diff --git a/{{cookiecutter.project_slug}}/frontend/assets/css/tailwind.css b/{{cookiecutter.project_slug}}/frontend/assets/css/tailwind.css new file mode 100644 index 0000000000..60e84d58a2 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/assets/css/tailwind.css @@ -0,0 +1,4 @@ +/* ./assets/css/tailwind.css */ +@tailwind base; +@tailwind components; +@tailwind utilities; \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/HeadingBar.vue b/{{cookiecutter.project_slug}}/frontend/components/HeadingBar.vue new file mode 100644 index 0000000000..58296964af --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/HeadingBar.vue @@ -0,0 +1,21 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/components/Logo.vue b/{{cookiecutter.project_slug}}/frontend/components/Logo.vue new file mode 100644 index 0000000000..9872bf6fa0 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/Logo.vue @@ -0,0 +1,35 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/components/NavBar.vue b/{{cookiecutter.project_slug}}/frontend/components/NavBar.vue new file mode 100644 index 0000000000..1a2a0fa132 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/NavBar.vue @@ -0,0 +1,301 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/components/NotificationsBar.vue b/{{cookiecutter.project_slug}}/frontend/components/NotificationsBar.vue new file mode 100644 index 0000000000..a56eb07c9d --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/NotificationsBar.vue @@ -0,0 +1,145 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/content/article-content.md b/{{cookiecutter.project_slug}}/frontend/content/article-content.md new file mode 100644 index 0000000000..4c370d5603 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/content/article-content.md @@ -0,0 +1,18 @@ +--- +title: Article content +description: 'Empower your NuxtJS application with @nuxt/content module: write in a content/ directory and fetch your Markdown, JSON, YAML and CSV files through a MongoDB like API, acting as a Git-based Headless CMS.' +--- + +Empower your NuxtJS application with `@nuxtjs/content` module: write in a `content/` directory and fetch your Markdown, JSON, YAML and CSV files through a MongoDB like API, acting as a **Git-based Headless CMS**. + +## Writing content + +Learn how to write your `content/`, supporting Markdown, YAML, CSV and JSON: https://content.nuxtjs.org/writing. + +## Fetching content + +Learn how to fetch your content with `$content`: https://content.nuxtjs.org/fetching. + +## Displaying content + +Learn how to display your Markdown content with the `` component directly in your template: https://content.nuxtjs.org/displaying. \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/content/get-started.md b/{{cookiecutter.project_slug}}/frontend/content/get-started.md new file mode 100644 index 0000000000..5aead98648 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/content/get-started.md @@ -0,0 +1,57 @@ +--- +title: Getting started +description: 'Accelerate your next FastAPI Base Project Generator frontend development by replacing Vue.js with NuxtJS, an open source framework making web development simple and powerful.' +--- + +Accelerate your next FastAPI Base Project Generator frontend development by replacing Vue.js with NuxtJS, an open source framework making web development simple and powerful. + +## Build Setup + +First deploy FastAPI's [Base Project Generator](https://github.com/tiangolo/full-stack-fastapi-postgresql), then replace the entire `frontend` folder with this one, updating the `.env` settings, and `nuxt.config.js`, and `package.json` 'frontend' project name with your own. + +```bash +# install dependencies +$ yarn install + +# serve with hot reload at localhost:3000 +$ yarn dev + +# build for production and launch server +$ yarn build +$ yarn start + +# generate static project +$ yarn generate +``` + +Hot reload does not work in WSL2 (only WSL1, as of 1 April 2021). For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). + +## Nuxt.js and components + +- [Nuxt.js](https://nuxtjs.org/) +- [Nuxt-property-decorator](https://github.com/nuxt-community/nuxt-property-decorator) +- [Vue Class Component](https://class-component.vuejs.org/) + +## TailwindCSS + +- [Tailwindcss](https://tailwindcss.com/) +- [Tailwind heroicons](https://heroicons.com/) +- [Tailwind typography](https://github.com/tailwindlabs/tailwindcss-typography) + +## Helpers + +- [Nuxt/content](https://content.nuxtjs.org/) +- [Vee-validate](https://vee-validate.logaretm.com/v3/) +- [Nuxt/PWA](https://pwa.nuxtjs.org/) + +Nuxt/PWA is a zero config PWA solution: + +- Registers a service worker for offline caching. +- Automatically generate manifest.json file. +- Automatically adds SEO friendly meta data with manifest integration. +- Automatically generates app icons with different sizes. +- Free background push notifications using OneSignal. + +## Licence + +This project is licensed under the terms of the MIT license. \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/interfaces/index.ts b/{{cookiecutter.project_slug}}/frontend/interfaces/index.ts new file mode 100644 index 0000000000..9a594b7242 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/interfaces/index.ts @@ -0,0 +1,30 @@ +/* eslint-disable camelcase */ +export interface IUserProfile { + email: string + is_active: boolean + is_superuser: boolean + full_name: string + id: number +} + +export interface IUserProfileUpdate { + email?: string + full_name?: string + password?: string + is_active?: boolean + is_superuser?: boolean +} + +export interface IUserProfileCreate { + email: string + full_name?: string + password?: string + is_active?: boolean + is_superuser?: boolean +} + +export interface IUserOpenProfileCreate { + email: string + full_name?: string + password: string +} diff --git a/{{cookiecutter.project_slug}}/frontend/jest.config.js b/{{cookiecutter.project_slug}}/frontend/jest.config.js new file mode 100644 index 0000000000..152978fd64 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/jest.config.js @@ -0,0 +1,18 @@ +module.exports = { + moduleNameMapper: { + '^@/(.*)$': '/$1', + '^~/(.*)$': '/$1', + '^vue$': 'vue/dist/vue.common.js', + }, + moduleFileExtensions: ['ts', 'js', 'vue', 'json'], + transform: { + '^.+\\.ts$': 'ts-jest', + '^.+\\.js$': 'babel-jest', + '.*\\.(vue)$': 'vue-jest', + }, + collectCoverage: true, + collectCoverageFrom: [ + '/components/**/*.vue', + '/pages/**/*.vue', + ], +} diff --git a/{{cookiecutter.project_slug}}/frontend/layouts/content.vue b/{{cookiecutter.project_slug}}/frontend/layouts/content.vue new file mode 100644 index 0000000000..30f36dbfae --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/layouts/content.vue @@ -0,0 +1,14 @@ + diff --git a/{{cookiecutter.project_slug}}/frontend/layouts/default.vue b/{{cookiecutter.project_slug}}/frontend/layouts/default.vue new file mode 100644 index 0000000000..2b93748e35 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/layouts/default.vue @@ -0,0 +1,12 @@ + diff --git a/{{cookiecutter.project_slug}}/frontend/layouts/landing.vue b/{{cookiecutter.project_slug}}/frontend/layouts/landing.vue new file mode 100644 index 0000000000..c780c3eaa3 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/layouts/landing.vue @@ -0,0 +1,205 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/middleware/anonymous.ts b/{{cookiecutter.project_slug}}/frontend/middleware/anonymous.ts new file mode 100644 index 0000000000..02bc3fa332 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/middleware/anonymous.ts @@ -0,0 +1,5 @@ +export default function ({ store, redirect }) { + if (store.getters["main/isLoggedIn"]) { + return redirect("/") + } +} diff --git a/{{cookiecutter.project_slug}}/frontend/middleware/authenticated.ts b/{{cookiecutter.project_slug}}/frontend/middleware/authenticated.ts new file mode 100644 index 0000000000..9707d09576 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/middleware/authenticated.ts @@ -0,0 +1,5 @@ +export default function ({ store, redirect }) { + if (!store.getters["main/isLoggedIn"]) { + return redirect("/login") + } +} diff --git a/{{cookiecutter.project_slug}}/frontend/middleware/has-admin-access.ts b/{{cookiecutter.project_slug}}/frontend/middleware/has-admin-access.ts new file mode 100644 index 0000000000..9fe6b8f63b --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/middleware/has-admin-access.ts @@ -0,0 +1,8 @@ +export default function ({ store, redirect }) { + if ( + !store.getters["main/hasAdminAccess"] && + !store.getters["main/isLoggedIn"] + ) { + return redirect("/") + } +} diff --git a/{{cookiecutter.project_slug}}/frontend/nuxt.config.js b/{{cookiecutter.project_slug}}/frontend/nuxt.config.js new file mode 100644 index 0000000000..c29d22c7e5 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/nuxt.config.js @@ -0,0 +1,91 @@ +export default { + // Global page headers: https://go.nuxtjs.dev/config-head + head: { + title: "frontend", + meta: [ + { charset: "utf-8" }, + { name: "viewport", content: "width=device-width, initial-scale=1" }, + { hid: "description", name: "description", content: "" }, + ], + link: [{ rel: "icon", type: "image/x-icon", href: "/favicon.ico" }], + }, + + // Env: https://nuxtjs.org/docs/2.x/configuration-glossary/configuration-env/ + env: { + baseUrl: process.env.BASE_URL || "http://localhost:3000", + appName: process.env.VUE_APP_NAME, + apiUrl: `http://${process.env.VUE_APP_DOMAIN}`, + }, + + // Global CSS: https://go.nuxtjs.dev/config-css + css: [], + + // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins + plugins: ["~/plugins/vee-validate"], + + // Auto import components: https://go.nuxtjs.dev/config-components + components: true, + + // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules + buildModules: [ + // https://go.nuxtjs.dev/typescript + "@nuxt/typescript-build", + // https://go.nuxtjs.dev/tailwindcss + "@nuxtjs/tailwindcss", + ], + + // Modules: https://go.nuxtjs.dev/config-modules + modules: [ + // https://go.nuxtjs.dev/axios + "@nuxtjs/axios", + // https://go.nuxtjs.dev/pwa + "@nuxtjs/pwa", + // https://go.nuxtjs.dev/content + "@nuxt/content", + // https://i18n.nuxtjs.org/ + "nuxt-i18n", + ], + + // Axios module configuration: https://go.nuxtjs.dev/config-axios + axios: {}, + + // nuxt/i18n module configuration: https://i18n.nuxtjs.org/basic-usage + i18n: { + locales: ["en", "fr", "es"], + defaultLocale: "en", + vueI18n: { + fallbackLocale: "en", + messages: { + en: { + welcome: "Welcome", + }, + fr: { + welcome: "Bienvenue", + }, + es: { + welcome: "Bienvenido", + }, + }, + }, + detectBrowserLanguage: { + useCookie: true, + cookieKey: "i18n_redirected", + onlyOnRoot: true, // recommended + }, + }, + + // PWA module configuration: https://go.nuxtjs.dev/pwa + pwa: { + manifest: { + lang: "en", + }, + }, + + // Content module configuration: https://go.nuxtjs.dev/config-content + content: {}, + + // Build Configuration: https://go.nuxtjs.dev/config-build + build: { + transpile: ["vee-validate/dist/rules"], + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/package.json b/{{cookiecutter.project_slug}}/frontend/package.json new file mode 100644 index 0000000000..98e6ad209f --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/package.json @@ -0,0 +1,50 @@ +{ + "name": "frontend", + "version": "1.0.0", + "private": true, + "scripts": { + "dev": "nuxt", + "build": "nuxt build", + "start": "nuxt start", + "generate": "nuxt generate", + "lint:js": "eslint --ext \".js,.vue\" --ignore-path .gitignore .", + "lint": "yarn lint:js", + "test": "jest" + }, + "dependencies": { + "@nuxt/content": "^1.14.0", + "@nuxtjs/axios": "^5.13.1", + "@nuxtjs/pwa": "^3.3.5", + "@tailwindcss/forms": "^0.3.2", + "@tailwindcss/typography": "^0.4.0", + "core-js": "^3.9.1", + "nuxt": "^2.15.3", + "nuxt-i18n": "^6.24.0", + "nuxt-property-decorator": "^2.9.1", + "vee-validate": "^3.4.5" + }, + "devDependencies": { + "@nuxt/types": "^2.15.3", + "@nuxt/typescript-build": "^2.1.0", + "@nuxtjs/eslint-config-typescript": "^6.0.0", + "@nuxtjs/eslint-module": "^3.0.2", + "@nuxtjs/tailwindcss": "^4.0.3", + "@tailwindcss/postcss7-compat": "^2.1.0", + "@vue/test-utils": "^1.1.3", + "autoprefixer": "^9", + "babel-core": "7.0.0-bridge.0", + "babel-eslint": "^10.1.0", + "babel-jest": "^26.6.3", + "eslint": "^7.22.0", + "eslint-config-prettier": "^8.1.0", + "eslint-plugin-nuxt": "^2.0.0", + "eslint-plugin-prettier": "^3.3.1", + "eslint-plugin-vue": "^7.7.0", + "jest": "^26.6.3", + "postcss": "^7", + "prettier": "^2.2.1", + "tailwindcss": "npm:@tailwindcss/postcss7-compat", + "ts-jest": "^26.5.4", + "vue-jest": "^3.0.4" + } +} diff --git a/{{cookiecutter.project_slug}}/frontend/pages/admin/create.vue b/{{cookiecutter.project_slug}}/frontend/pages/admin/create.vue new file mode 100644 index 0000000000..fa1b94cdae --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/admin/create.vue @@ -0,0 +1,221 @@ + + + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/admin/edit/_id.vue b/{{cookiecutter.project_slug}}/frontend/pages/admin/edit/_id.vue new file mode 100644 index 0000000000..73a719e88b --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/admin/edit/_id.vue @@ -0,0 +1,259 @@ + + + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/admin/index.vue b/{{cookiecutter.project_slug}}/frontend/pages/admin/index.vue new file mode 100644 index 0000000000..bf8b564514 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/admin/index.vue @@ -0,0 +1,133 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/article-content.vue b/{{cookiecutter.project_slug}}/frontend/pages/article-content.vue new file mode 100644 index 0000000000..8c0c891d64 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/article-content.vue @@ -0,0 +1,22 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/get-started.vue b/{{cookiecutter.project_slug}}/frontend/pages/get-started.vue new file mode 100644 index 0000000000..c632b73221 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/get-started.vue @@ -0,0 +1,22 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/index.vue b/{{cookiecutter.project_slug}}/frontend/pages/index.vue new file mode 100644 index 0000000000..266204892e --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/index.vue @@ -0,0 +1,212 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/login.vue b/{{cookiecutter.project_slug}}/frontend/pages/login.vue new file mode 100644 index 0000000000..4c526d6bc3 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/login.vue @@ -0,0 +1,124 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/main/dashboard.vue b/{{cookiecutter.project_slug}}/frontend/pages/main/dashboard.vue new file mode 100644 index 0000000000..479fb367c9 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/main/dashboard.vue @@ -0,0 +1,52 @@ + + + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit-password.vue b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit-password.vue new file mode 100644 index 0000000000..9f7832df33 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit-password.vue @@ -0,0 +1,117 @@ + + + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit.vue b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit.vue new file mode 100644 index 0000000000..ee0c01a33e --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit.vue @@ -0,0 +1,124 @@ + + + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/index.vue b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/index.vue new file mode 100644 index 0000000000..399c60d184 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/index.vue @@ -0,0 +1,86 @@ + + + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/recover-password.vue b/{{cookiecutter.project_slug}}/frontend/pages/recover-password.vue new file mode 100644 index 0000000000..3467a3d2bf --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/recover-password.vue @@ -0,0 +1,97 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/register.vue b/{{cookiecutter.project_slug}}/frontend/pages/register.vue new file mode 100644 index 0000000000..6cc19689b5 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/register.vue @@ -0,0 +1,313 @@ + + + diff --git a/{{cookiecutter.project_slug}}/frontend/pages/reset-password.vue b/{{cookiecutter.project_slug}}/frontend/pages/reset-password.vue new file mode 100644 index 0000000000..1933d1d3c9 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/reset-password.vue @@ -0,0 +1,219 @@ + + + + + diff --git a/{{cookiecutter.project_slug}}/frontend/plugins/vee-validate.ts b/{{cookiecutter.project_slug}}/frontend/plugins/vee-validate.ts new file mode 100644 index 0000000000..ea3eb0e73a --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/plugins/vee-validate.ts @@ -0,0 +1,22 @@ +import Vue from "vue" +import { ValidationObserver, ValidationProvider, extend } from "vee-validate" +import { required, confirmed, email } from "vee-validate/dist/rules" + +extend("required", { + ...required, + message: "true", +}) + +extend("confirmed", { + ...confirmed, + message: "true", +}) + +extend("email", { + ...email, + message: "Please use a valid email address.", +}) + +// Register it globally +Vue.component("ValidationProvider", ValidationProvider) +Vue.component("ValidationObserver", ValidationObserver) diff --git a/{{cookiecutter.project_slug}}/frontend/static/favicon.ico b/{{cookiecutter.project_slug}}/frontend/static/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..3632d0c89129045dc4103e84e59e426c57b8f51a GIT binary patch literal 1393 zcmV-%1&;cOP)Px)D@jB_R9Fe^ReNldMG&9eyIx;VxmMIdgjhwCKeVN$X=xNR5F_{iAD9pW6t#*F zgsb$5TDXc(+R_KbHns{HwTUSSMxqkbMAXm+Qmqd}qLq*w23kw2)Y7}&?)uyB`r&ui zgSLtP7@6d5XJ%(+e>;!;h%VEAG6Suz+(=E0vHu2kKIR~YDr+g=KThO5N?%t`9J7Cz z!`J{cS7sBbmBg4LMc2`Q*c=vb%;M+)D8)#rilGypCSqLx@dPzj-aO`0Ee@jx&{DMo z2WG&xg=Vd*Cq_lch7F)fE%7L^BtJ8$xL~eTcPV~!0CdAiRcr*Z+1D9sR%#uxa2%lS zMHc30U1D*;LsF_{LE;nVHg~>ZH^SfO0I1*c5a(Lr^e$ztX)$85I|Ia7@DN4Y6RSN5 zisVjYMleQy5y_2LmgG+w;e3P~i4NCXgH*d=HbBx*5MrLSb{`J>9A!vneqSRxGno<9 zE23>mQG7tr%OUm=gpmORdJXM@drwr%R(lc%Hl26;kf|LIe!i@Uup z*Llp$^8n6C$?f4TR{7EZgs8wRV8aUOrpM1&9Zf!U!LkK0XZn-1d__lJO8SGj2H%rk z@(%pkpq}e2T|eKn4__}1pt<5c)b=i<{s+pMyer&M%jvnfQA(ANZUt|F4GdoFEX4rC-M{KbO^D{(o%D)QCbo>s)CXAnlwG$1v zG;RKh+q6M%LCF^=-+R!_`1Hh)C$%n|A_Hh?Ux_qOl*A&ww!d(JcrU;Vzm zBG@?@XRm(q{u@8){e>ARy8+@`9F{%vo}5Rut}DOnXHL8pwpR&B8???!!vXa93sL(d z7}ev^F#=m1G@tfB&J5T*g`4%n#MuEhNFI+z66b5RB$+6gvwV4s=Hnc(FX2KxVAtV= zoT7Cmg#u`*xdEwPjlh3UtnETz)7V_4UsRy3cBH?kdC#u1re3e@AG~=G{(JEdP3`SM z|A4$M&soglW;|3e0KQf0ObP`+zET)O5%DcFb4{0NWL@>xLB1RP@zaEilp5=v$vc>R zJ#Os7gltH=e}(ZJCtn{ATlR}$Y6*J5Xi{ze4}hlX*{IVZpg%zqd9@kLx?0B$wa+`~ z@dT{8k1qE3ZMq>boI;T?y4pSnK!58AkB&jyP1Dx+f_&(| z@D4l!jWKpe^+%z*p;ELnVGFW!2Bo?%mfh~sy^PqGXwo~9O7a(Kk05}S%B4vCOgJ2( zS!?%%h6+l?*b!|q$1akMRcDMPsTZLO8B1irg)A#%p)|d&4pVxhE)Ffb6^8??E%{@J9`p7P#__uNTS#9TpzPzVuwC5DwQPdixgxK z$6~Dd^w&+2dJAv+m`Oz2ol=McA&%%hWCL`l@?rdE;fE27OwMDy=O^#?a$EmkbYzQ* zYh|omoW8~B2*hv;bbiiZi+cUyUYB?NFB$k7NQU1u0aJ3K00000NkvXXu0mjfj6#%2 literal 0 HcmV?d00001 diff --git a/{{cookiecutter.project_slug}}/frontend/static/icon.png b/{{cookiecutter.project_slug}}/frontend/static/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e076dd8cd57ce1bc7d62808744c1da1b70c37ee2 GIT binary patch literal 12699 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 client.navigate(client.url)) + }) +}) diff --git a/{{cookiecutter.project_slug}}/frontend/store/admin/actions.ts b/{{cookiecutter.project_slug}}/frontend/store/admin/actions.ts new file mode 100644 index 0000000000..ec5e686d48 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/admin/actions.ts @@ -0,0 +1,82 @@ +import { api } from "@/api" +import { IUserProfileCreate, IUserProfileUpdate } from "@/interfaces" +// Review global namespacing https://vuex.vuejs.org/guide/modules.html + +export default { + async getUsers({ commit, dispatch, rootState }) { + try { + const response = await api.getUsers(rootState.main.token) + if (response) { + await commit("setUsers", response.data) + } + } catch (error) { + await dispatch("main/checkApiError", error, { root: true }) + } + }, + async updateUser( + { commit, dispatch, rootState }, + payload: { id: number; user: IUserProfileUpdate } + ) { + try { + const loadingNotification = { + content: "Saving...", + showProgress: true, + } + await commit("main/addNotification", loadingNotification, { root: true }) + const response = ( + await Promise.all([ + api.updateUser(rootState.main.token, payload.id, payload.user), + // eslint-disable-next-line @typescript-eslint/no-unused-vars + await new Promise((resolve) => + setTimeout(() => resolve(), 500) + ), + ]) + )[0] + await commit("setUser", response.data) + await commit("main/removeNotification", loadingNotification, { + root: true, + }) + await commit( + "main/addNotification", + { + content: "User successfully updated", + color: "success", + }, + { root: true } + ) + } catch (error) { + await dispatch("main/checkApiError", error, { root: true }) + } + }, + async createUser( + { commit, dispatch, rootState }, + payload: IUserProfileCreate + ) { + try { + const loadingNotification = { content: "Saving...", showProgress: true } + await commit("main/addNotification", loadingNotification, { root: true }) + const response = ( + await Promise.all([ + api.createUser(rootState.main.token, payload), + await new Promise((resolve) => + setTimeout(() => resolve(), 500) + ), + ]) + )[0] + await commit("setUser", response.data) + await commit("main/removeNotification", loadingNotification, { + root: true, + }) + await commit( + "main/addNotification", + { + content: "User successfully created", + color: "success", + }, + { root: true } + ) + } catch (error) { + await dispatch("main/checkApiError", error, { root: true }) + } + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/store/admin/getters.ts b/{{cookiecutter.project_slug}}/frontend/store/admin/getters.ts new file mode 100644 index 0000000000..6038d17078 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/admin/getters.ts @@ -0,0 +1,9 @@ +export default { + adminUsers: (state) => state.users, + adminOneUser: (state) => (userId: number) => { + const filteredUsers = state.users.filter((user) => user.id === userId) + if (filteredUsers.length > 0) { + return { ...filteredUsers[0] } + } + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/store/admin/mutations.ts b/{{cookiecutter.project_slug}}/frontend/store/admin/mutations.ts new file mode 100644 index 0000000000..369aba7986 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/admin/mutations.ts @@ -0,0 +1,14 @@ +import { IUserProfile } from "@/interfaces" + +export default { + setUsers(state, payload: IUserProfile[]) { + state.users = payload + }, + setUser(state, payload: IUserProfile) { + const users = state.users.filter( + (user: IUserProfile) => user.id !== payload.id + ) + users.push(payload) + state.users = users + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/store/admin/state.ts b/{{cookiecutter.project_slug}}/frontend/store/admin/state.ts new file mode 100644 index 0000000000..731edf6398 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/admin/state.ts @@ -0,0 +1,11 @@ +import { IUserProfile } from "@/interfaces" + +export interface AdminState { + users: IUserProfile[] +} + +const defaultState: AdminState = { + users: [], +} + +export default () => defaultState diff --git a/{{cookiecutter.project_slug}}/frontend/store/helpers/actions.ts b/{{cookiecutter.project_slug}}/frontend/store/helpers/actions.ts new file mode 100644 index 0000000000..e69de29bb2 diff --git a/{{cookiecutter.project_slug}}/frontend/store/helpers/getters.ts b/{{cookiecutter.project_slug}}/frontend/store/helpers/getters.ts new file mode 100644 index 0000000000..e0548952b7 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/helpers/getters.ts @@ -0,0 +1,3 @@ +export default { + headingTitle: (state) => state.headingTitle, +} diff --git a/{{cookiecutter.project_slug}}/frontend/store/helpers/mutations.ts b/{{cookiecutter.project_slug}}/frontend/store/helpers/mutations.ts new file mode 100644 index 0000000000..651b6570a5 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/helpers/mutations.ts @@ -0,0 +1,5 @@ +export default { + setHeadingTitle(state, payload: string) { + state.headingTitle = payload + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/store/helpers/state.ts b/{{cookiecutter.project_slug}}/frontend/store/helpers/state.ts new file mode 100644 index 0000000000..3053162b81 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/helpers/state.ts @@ -0,0 +1,9 @@ +export interface HelperState { + headingTitle: string | null +} + +const defaultState: HelperState = { + headingTitle: null, +} + +export default () => defaultState diff --git a/{{cookiecutter.project_slug}}/frontend/store/main/actions.ts b/{{cookiecutter.project_slug}}/frontend/store/main/actions.ts new file mode 100644 index 0000000000..60feea1ed8 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/main/actions.ts @@ -0,0 +1,174 @@ +import { api } from "@/api" +import { getLocalToken, removeLocalToken, saveLocalToken } from "@/utils" +import { AxiosError } from "axios" +import { IUserOpenProfileCreate } from "@/interfaces" +import { AppNotification } from "./state" + +export default { + async logIn( + { commit, dispatch }, + payload: { username: string; password: string } + ) { + try { + const response = await api.logInGetToken( + payload.username, + payload.password + ) + const token = response.data.access_token + if (token) { + saveLocalToken(token) + await commit("setToken", token) + await commit("setLoggedIn", true) + await commit("setLogInError", false) + await dispatch("getUserProfile") + } else { + await dispatch("logOut") + } + } catch (error) { + commit("setLogInError", true) + await dispatch("logOut") + } + }, + async getUserProfile({ commit, dispatch, state }) { + try { + const response = await api.getMe(state.token) + if (response.data) { + await commit("setUserProfile", response.data) + } + } catch (error) { + await dispatch("checkApiError", error) + } + }, + async updateUserProfile({ commit, dispatch, state }, payload) { + try { + const loadingNotification = { content: "Saving...", showProgress: true } + await commit("addNotification", loadingNotification) + const response = ( + await Promise.all([ + api.updateMe(state.token, payload), + await new Promise((resolve) => + setTimeout(() => resolve(), 500) + ), + ]) + )[0] + await commit("setUserProfile", response.data) + await commit("removeNotification", loadingNotification) + await commit("addNotification", { + content: "Profile successfully updated", + color: "success", + }) + } catch (error) { + await dispatch("checkApiError", error) + } + }, + async createUserProfile( + { commit, dispatch }, + payload: IUserOpenProfileCreate + ) { + try { + const loadingNotification = { content: "Creating...", showProgress: true } + await commit("addNotification", loadingNotification) + await Promise.all([ + api.createMe(payload), + await new Promise((resolve) => setTimeout(() => resolve(), 500)), + ]) + await commit("removeNotification", loadingNotification) + await commit("addNotification", { + content: "Account successfully created", + color: "success", + }) + } catch (error) { + // console.log(error.response) + await dispatch("checkApiError", error) + } + }, + async checkLoggedIn({ commit, dispatch, state }) { + if (!state.isLoggedIn) { + let token = state.token + if (!token) { + const localToken = getLocalToken() + if (localToken) { + await commit("setToken", token) + token = localToken + } + } + if (token) { + try { + const response = await api.getMe(token) + await commit("setLoggedIn", true) + await commit("setUserProfile", response.data) + } catch (error) { + await dispatch("logOut") + } + } else { + await dispatch("logOut") + } + } + }, + async logOut({ commit }) { + removeLocalToken() + await commit("setToken", "") + await commit("setLoggedIn", false) + await commit("setUserProfile", null) + }, + async checkApiError({ dispatch }, payload: AxiosError) { + // console.log(payload.response) + if (payload.response!.status === 401) { + await dispatch("logOut") + } + }, + async removeNotification( + { commit }, + payload: { notification: AppNotification; timeout: number } + ) { + return await new Promise((resolve) => { + setTimeout(() => { + commit("removeNotification", payload.notification) + resolve(true) + }, payload.timeout) + }) + }, + async passwordRecovery({ commit, dispatch }, payload: { username: string }) { + try { + await Promise.all([ + api.passwordRecovery(payload.username), + await new Promise((resolve) => setTimeout(() => resolve(), 500)), + ]) + } catch (error) {} + // Refactored this ... shouldn't give user indication if their attempt was successful or not + await dispatch("logOut") + const loadingNotification = { + content: "Sending password recovery email", + showProgress: true, + } + await commit("addNotification", loadingNotification) + }, + async resetPassword( + { commit, dispatch }, + payload: { password: string; token: string } + ) { + const loadingNotification = { + content: "Resetting password", + showProgress: true, + } + try { + await commit("addNotification", loadingNotification) + await Promise.all([ + api.resetPassword(payload.password, payload.token), + await new Promise((resolve) => setTimeout(() => resolve(), 500)), + ]) + await commit("removeNotification", loadingNotification) + await commit("addNotification", { + content: "Password successfully reset", + color: "success", + }) + await dispatch("logOut") + } catch (error) { + await commit("removeNotification", loadingNotification) + await commit("addNotification", { + color: "error", + content: "Error resetting password", + }) + } + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/store/main/getters.ts b/{{cookiecutter.project_slug}}/frontend/store/main/getters.ts new file mode 100644 index 0000000000..99839b92b1 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/main/getters.ts @@ -0,0 +1,17 @@ +export default { + hasAdminAccess: (state) => { + return ( + state.userProfile && + state.userProfile.is_superuser && + state.userProfile.is_active + ) + }, + loginError: (state) => state.logInError, + dashboardShowDrawer: (state) => state.dashboardShowDrawer, + dashboardMiniDrawer: (state) => state.dashboardMiniDrawer, + userProfile: (state) => state.userProfile, + token: (state) => state.token, + isLoggedIn: (state) => state.isLoggedIn, + firstNotification: (state) => + state.notifications.length > 0 && state.notifications[0], +} diff --git a/{{cookiecutter.project_slug}}/frontend/store/main/mutations.ts b/{{cookiecutter.project_slug}}/frontend/store/main/mutations.ts new file mode 100644 index 0000000000..c847ff92b8 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/main/mutations.ts @@ -0,0 +1,31 @@ +import { IUserProfile } from "@/interfaces" +import { AppNotification } from "./state" + +export default { + setToken(state, payload: string) { + state.token = payload + }, + setLoggedIn(state, payload: boolean) { + state.isLoggedIn = payload + }, + setLogInError(state, payload: boolean) { + state.logInError = payload + }, + setUserProfile(state, payload: IUserProfile) { + state.userProfile = payload + }, + setDashboardMiniDrawer(state, payload: boolean) { + state.dashboardMiniDrawer = payload + }, + setDashboardShowDrawer(state, payload: boolean) { + state.dashboardShowDrawer = payload + }, + addNotification(state, payload: AppNotification) { + state.notifications.push(payload) + }, + removeNotification(state, payload: AppNotification) { + state.notifications = state.notifications.filter( + (notification) => notification !== payload + ) + }, +} diff --git a/{{cookiecutter.project_slug}}/frontend/store/main/state.ts b/{{cookiecutter.project_slug}}/frontend/store/main/state.ts new file mode 100644 index 0000000000..939418ba06 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/store/main/state.ts @@ -0,0 +1,25 @@ +import { IUserProfile } from "@/interfaces" + +export interface AppNotification { + content: string + color?: string + showProgress?: boolean +} + +export interface MainState { + token: string + isLoggedIn: boolean | null + logInError: boolean + userProfile: IUserProfile | null + notifications: AppNotification[] +} + +const defaultState: MainState = { + isLoggedIn: null, + token: "", + logInError: false, + userProfile: null, + notifications: [], +} + +export default () => defaultState diff --git a/{{cookiecutter.project_slug}}/frontend/tailwind.config.js b/{{cookiecutter.project_slug}}/frontend/tailwind.config.js new file mode 100644 index 0000000000..9dfbd350c3 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/tailwind.config.js @@ -0,0 +1,41 @@ +module.exports = { + purge: [ + "./components/**/*.{vue,js,ts}", + "./layouts/**/*.vue", + "./pages/**/*.vue", + "./plugins/**/*.{js,ts}", + "./nuxt.config.{js,ts}", + ], + darkMode: false, // or 'media' or 'class' + // https://devdojo.com/tnylea/custom-animations-in-tailwindcss + theme: { + extend: { + keyframes: { + "fade-in": { + "0%": { + opacity: "0", + }, + "100%": { + opacity: "1", + }, + }, + "fade-out": { + from: { + opacity: "1", + }, + to: { + opacity: "0", + }, + }, + }, + animation: { + "fade-in": "fade-in 0.5s ease-out", + "fade-out": "fade-out 0.5s ease-out", + }, + }, + }, + variants: { + extend: {}, + }, + plugins: [require("@tailwindcss/typography"), require("@tailwindcss/forms")], +} diff --git a/{{cookiecutter.project_slug}}/frontend/test/Logo.spec.js b/{{cookiecutter.project_slug}}/frontend/test/Logo.spec.js new file mode 100644 index 0000000000..c5fbeeb73d --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/test/Logo.spec.js @@ -0,0 +1,9 @@ +import { mount } from '@vue/test-utils' +import Logo from '@/components/Logo.vue' + +describe('Logo', () => { + test('is a Vue instance', () => { + const wrapper = mount(Logo) + expect(wrapper.vm).toBeTruthy() + }) +}) diff --git a/{{cookiecutter.project_slug}}/frontend/tsconfig.json b/{{cookiecutter.project_slug}}/frontend/tsconfig.json new file mode 100644 index 0000000000..c859c1c2f8 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/tsconfig.json @@ -0,0 +1,39 @@ +{ + "compilerOptions": { + "noImplicitAny": false, + "target": "ES2018", + "module": "ESNext", + "moduleResolution": "Node", + "lib": [ + "ESNext", + "ESNext.AsyncIterable", + "DOM" + ], + "esModuleInterop": true, + "allowJs": true, + "sourceMap": true, + "strict": true, + "noEmit": true, + "experimentalDecorators": true, + "baseUrl": ".", + "paths": { + "~/*": [ + "./*" + ], + "@/*": [ + "./*" + ] + }, + "types": [ + "@nuxt/types", + "@nuxtjs/axios", + "@nuxt/content", + "@types/node" + ] + }, + "exclude": [ + "node_modules", + ".nuxt", + "dist" + ] +} diff --git a/{{cookiecutter.project_slug}}/frontend/tslint.json b/{{cookiecutter.project_slug}}/frontend/tslint.json new file mode 100644 index 0000000000..2b37e401c3 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/tslint.json @@ -0,0 +1,19 @@ +{ + "defaultSeverity": "warning", + "extends": [ + "tslint:recommended" + ], + "linterOptions": { + "exclude": [ + "node_modules/**" + ] + }, + "rules": { + "quotemark": [true, "single"], + "indent": [true, "spaces", 2], + "interface-name": false, + "ordered-imports": false, + "object-literal-sort-keys": false, + "no-consecutive-blank-lines": false + } +} diff --git a/{{cookiecutter.project_slug}}/frontend/utils.ts b/{{cookiecutter.project_slug}}/frontend/utils.ts new file mode 100644 index 0000000000..880dc0c67f --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/utils.ts @@ -0,0 +1,6 @@ +export const getLocalToken = () => localStorage.getItem("token") + +export const saveLocalToken = (token: string) => + localStorage.setItem("token", token) + +export const removeLocalToken = () => localStorage.removeItem("token") diff --git a/{{cookiecutter.project_slug}}/frontend/yarn.lock b/{{cookiecutter.project_slug}}/frontend/yarn.lock new file mode 100644 index 0000000000..a34e711f38 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/yarn.lock @@ -0,0 +1,13137 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== + dependencies: + "@babel/highlight" "^7.10.4" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.8.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" + integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== + dependencies: + "@babel/highlight" "^7.12.13" + +"@babel/compat-data@^7.13.0", "@babel/compat-data@^7.13.12", "@babel/compat-data@^7.13.8": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.13.12.tgz#a8a5ccac19c200f9dd49624cac6e19d7be1236a1" + integrity sha512-3eJJ841uKxeV8dcN/2yGEUy+RfgQspPEgQat85umsE1rotuquQ2AbIub4S6j7c50a2d+4myc+zSlnXeIHrOnhQ== + +"@babel/core@^7.1.0", "@babel/core@^7.12.16", "@babel/core@^7.13.10", "@babel/core@^7.7.5": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.13.10.tgz#07de050bbd8193fcd8a3c27918c0890613a94559" + integrity sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.13.9" + "@babel/helper-compilation-targets" "^7.13.10" + "@babel/helper-module-transforms" "^7.13.0" + "@babel/helpers" "^7.13.10" + "@babel/parser" "^7.13.10" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.1.2" + lodash "^4.17.19" + semver "^6.3.0" + source-map "^0.5.0" + +"@babel/eslint-parser@^7.12.16": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.13.10.tgz#e272979914f36bb6cea144c14c32bb51632696dd" + integrity sha512-/I1HQ3jGPhIpeBFeI3wO9WwWOnBYpuR0pX0KlkdGcRQAVX9prB/FCS2HBpL7BiFbzhny1YCiBH8MTZD2jJa7Hg== + dependencies: + eslint-scope "5.1.0" + eslint-visitor-keys "^1.3.0" + semver "^6.3.0" + +"@babel/generator@^7.13.0", "@babel/generator@^7.13.9": + version "7.13.9" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.13.9.tgz#3a7aa96f9efb8e2be42d38d80e2ceb4c64d8de39" + integrity sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw== + dependencies: + "@babel/types" "^7.13.0" + jsesc "^2.5.1" + source-map "^0.5.0" + +"@babel/helper-annotate-as-pure@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz#0f58e86dfc4bb3b1fcd7db806570e177d439b6ab" + integrity sha512-7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-builder-binary-assignment-operator-visitor@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz#6bc20361c88b0a74d05137a65cac8d3cbf6f61fc" + integrity sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA== + dependencies: + "@babel/helper-explode-assignable-expression" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.13.10", "@babel/helper-compilation-targets@^7.13.8": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz#1310a1678cb8427c07a753750da4f8ce442bdd0c" + integrity sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA== + dependencies: + "@babel/compat-data" "^7.13.8" + "@babel/helper-validator-option" "^7.12.17" + browserslist "^4.14.5" + semver "^6.3.0" + +"@babel/helper-create-class-features-plugin@^7.13.0": + version "7.13.11" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.13.11.tgz#30d30a005bca2c953f5653fc25091a492177f4f6" + integrity sha512-ays0I7XYq9xbjCSvT+EvysLgfc3tOkwCULHjrnscGT3A9qD4sk3wXnJ3of0MAWsWGjdinFvajHU2smYuqXKMrw== + dependencies: + "@babel/helper-function-name" "^7.12.13" + "@babel/helper-member-expression-to-functions" "^7.13.0" + "@babel/helper-optimise-call-expression" "^7.12.13" + "@babel/helper-replace-supers" "^7.13.0" + "@babel/helper-split-export-declaration" "^7.12.13" + +"@babel/helper-create-regexp-features-plugin@^7.12.13": + version "7.12.17" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.17.tgz#a2ac87e9e319269ac655b8d4415e94d38d663cb7" + integrity sha512-p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.12.13" + regexpu-core "^4.7.1" + +"@babel/helper-define-polyfill-provider@^0.1.5": + version "0.1.5" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.5.tgz#3c2f91b7971b9fc11fe779c945c014065dea340e" + integrity sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg== + dependencies: + "@babel/helper-compilation-targets" "^7.13.0" + "@babel/helper-module-imports" "^7.12.13" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/traverse" "^7.13.0" + debug "^4.1.1" + lodash.debounce "^4.0.8" + resolve "^1.14.2" + semver "^6.1.2" + +"@babel/helper-explode-assignable-expression@^7.12.13": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.13.0.tgz#17b5c59ff473d9f956f40ef570cf3a76ca12657f" + integrity sha512-qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA== + dependencies: + "@babel/types" "^7.13.0" + +"@babel/helper-function-name@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz#93ad656db3c3c2232559fd7b2c3dbdcbe0eb377a" + integrity sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA== + dependencies: + "@babel/helper-get-function-arity" "^7.12.13" + "@babel/template" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/helper-get-function-arity@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz#bc63451d403a3b3082b97e1d8b3fe5bd4091e583" + integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-hoist-variables@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.0.tgz#5d5882e855b5c5eda91e0cadc26c6e7a2c8593d8" + integrity sha512-0kBzvXiIKfsCA0y6cFEIJf4OdzfpRuNk4+YTeHZpGGc666SATFKTz6sRncwFnQk7/ugJ4dSrCj6iJuvW4Qwr2g== + dependencies: + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.0" + +"@babel/helper-member-expression-to-functions@^7.13.0", "@babel/helper-member-expression-to-functions@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz#dfe368f26d426a07299d8d6513821768216e6d72" + integrity sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw== + dependencies: + "@babel/types" "^7.13.12" + +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz#c6a369a6f3621cb25da014078684da9196b61977" + integrity sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA== + dependencies: + "@babel/types" "^7.13.12" + +"@babel/helper-module-transforms@^7.13.0": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz#600e58350490828d82282631a1422268e982ba96" + integrity sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ== + dependencies: + "@babel/helper-module-imports" "^7.13.12" + "@babel/helper-replace-supers" "^7.13.12" + "@babel/helper-simple-access" "^7.13.12" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/helper-validator-identifier" "^7.12.11" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.12" + +"@babel/helper-optimise-call-expression@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz#5c02d171b4c8615b1e7163f888c1c81c30a2aaea" + integrity sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz#806526ce125aed03373bc416a828321e3a6a33af" + integrity sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ== + +"@babel/helper-remap-async-to-generator@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.13.0.tgz#376a760d9f7b4b2077a9dd05aa9c3927cadb2209" + integrity sha512-pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.12.13" + "@babel/helper-wrap-function" "^7.13.0" + "@babel/types" "^7.13.0" + +"@babel/helper-replace-supers@^7.12.13", "@babel/helper-replace-supers@^7.13.0", "@babel/helper-replace-supers@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz#6442f4c1ad912502481a564a7386de0c77ff3804" + integrity sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.13.12" + "@babel/helper-optimise-call-expression" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.12" + +"@babel/helper-simple-access@^7.12.13", "@babel/helper-simple-access@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz#dd6c538afb61819d205a012c31792a39c7a5eaf6" + integrity sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA== + dependencies: + "@babel/types" "^7.13.12" + +"@babel/helper-skip-transparent-expression-wrappers@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz#462dc63a7e435ade8468385c63d2b84cce4b3cbf" + integrity sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA== + dependencies: + "@babel/types" "^7.12.1" + +"@babel/helper-split-export-declaration@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz#e9430be00baf3e88b0e13e6f9d4eaf2136372b05" + integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-validator-identifier@^7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed" + integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== + +"@babel/helper-validator-option@^7.12.17": + version "7.12.17" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831" + integrity sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw== + +"@babel/helper-wrap-function@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.13.0.tgz#bdb5c66fda8526ec235ab894ad53a1235c79fcc4" + integrity sha512-1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA== + dependencies: + "@babel/helper-function-name" "^7.12.13" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.0" + +"@babel/helpers@^7.13.10": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.13.10.tgz#fd8e2ba7488533cdeac45cc158e9ebca5e3c7df8" + integrity sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ== + dependencies: + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.0" + +"@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.13.10.tgz#a8b2a66148f5b27d666b15d81774347a731d52d1" + integrity sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg== + dependencies: + "@babel/helper-validator-identifier" "^7.12.11" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.13.0", "@babel/parser@^7.13.10", "@babel/parser@^7.7.0": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.13.12.tgz#ba320059420774394d3b0c0233ba40e4250b81d1" + integrity sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw== + +"@babel/parser@^7.13.15", "@babel/parser@^7.5.5", "@babel/parser@^7.9.6": + version "7.13.15" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.13.15.tgz#8e66775fb523599acb6a289e12929fa5ab0954d8" + integrity sha512-b9COtcAlVEQljy/9fbcMHpG+UIW9ReF+gpaxDHTlZd0c6/UU9ng8zdySAW9sRTzpvcdCHn6bUcbuYUgGzLAWVQ== + +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12.tgz#a3484d84d0b549f3fc916b99ee4783f26fabad2a" + integrity sha512-d0u3zWKcoZf379fOeJdr1a5WPDny4aOFZ6hlfKivgK0LY7ZxNfoaHL2fWwdGtHyVvra38FC+HVYkO+byfSA8AQ== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" + "@babel/plugin-proposal-optional-chaining" "^7.13.12" + +"@babel/plugin-proposal-async-generator-functions@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.13.8.tgz#87aacb574b3bc4b5603f6fe41458d72a5a2ec4b1" + integrity sha512-rPBnhj+WgoSmgq+4gQUtXx/vOcU+UYtjy1AA/aeD61Hwj410fwYyqfUcRP3lR8ucgliVJL/G7sXcNUecC75IXA== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-remap-async-to-generator" "^7.13.0" + "@babel/plugin-syntax-async-generators" "^7.8.4" + +"@babel/plugin-proposal-class-properties@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.13.0.tgz#146376000b94efd001e57a40a88a525afaab9f37" + integrity sha512-KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.13.0" + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-proposal-decorators@^7.13.5": + version "7.13.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.13.5.tgz#d28071457a5ba8ee1394b23e38d5dcf32ea20ef7" + integrity sha512-i0GDfVNuoapwiheevUOuSW67mInqJ8qw7uWfpjNVeHMn143kXblEy/bmL9AdZ/0yf/4BMQeWXezK0tQIvNPqag== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.13.0" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/plugin-syntax-decorators" "^7.12.13" + +"@babel/plugin-proposal-dynamic-import@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.13.8.tgz#876a1f6966e1dec332e8c9451afda3bebcdf2e1d" + integrity sha512-ONWKj0H6+wIRCkZi9zSbZtE/r73uOhMVHh256ys0UzfM7I3d4n+spZNWjOnJv2gzopumP2Wxi186vI8N0Y2JyQ== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + +"@babel/plugin-proposal-export-namespace-from@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.13.tgz#393be47a4acd03fa2af6e3cde9b06e33de1b446d" + integrity sha512-INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + +"@babel/plugin-proposal-json-strings@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.13.8.tgz#bf1fb362547075afda3634ed31571c5901afef7b" + integrity sha512-w4zOPKUFPX1mgvTmL/fcEqy34hrQ1CRcGxdphBc6snDnnqJ47EZDIyop6IwXzAC8G916hsIuXB2ZMBCExC5k7Q== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/plugin-syntax-json-strings" "^7.8.3" + +"@babel/plugin-proposal-logical-assignment-operators@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.13.8.tgz#93fa78d63857c40ce3c8c3315220fd00bfbb4e1a" + integrity sha512-aul6znYB4N4HGweImqKn59Su9RS8lbUIqxtXTOcAGtNIDczoEFv+l1EhmX8rUBp3G1jMjKJm8m0jXVp63ZpS4A== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + +"@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.13.8.tgz#3730a31dafd3c10d8ccd10648ed80a2ac5472ef3" + integrity sha512-iePlDPBn//UhxExyS9KyeYU7RM9WScAG+D3Hhno0PLJebAEpDZMocbDe64eqynhNAnwz/vZoL/q/QB2T1OH39A== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + +"@babel/plugin-proposal-numeric-separator@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.13.tgz#bd9da3188e787b5120b4f9d465a8261ce67ed1db" + integrity sha512-O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + +"@babel/plugin-proposal-object-rest-spread@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.13.8.tgz#5d210a4d727d6ce3b18f9de82cc99a3964eed60a" + integrity sha512-DhB2EuB1Ih7S3/IRX5AFVgZ16k3EzfRbq97CxAVI1KSYcW+lexV8VZb7G7L8zuPVSdQMRn0kiBpf/Yzu9ZKH0g== + dependencies: + "@babel/compat-data" "^7.13.8" + "@babel/helper-compilation-targets" "^7.13.8" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-transform-parameters" "^7.13.0" + +"@babel/plugin-proposal-optional-catch-binding@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.13.8.tgz#3ad6bd5901506ea996fc31bdcf3ccfa2bed71107" + integrity sha512-0wS/4DUF1CuTmGo+NiaHfHcVSeSLj5S3e6RivPTg/2k3wOv3jO35tZ6/ZWsQhQMvdgI7CwphjQa/ccarLymHVA== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + +"@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.13.8": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.13.12.tgz#ba9feb601d422e0adea6760c2bd6bbb7bfec4866" + integrity sha512-fcEdKOkIB7Tf4IxrgEVeFC4zeJSTr78no9wTdBuZZbqF64kzllU0ybo2zrzm7gUQfxGhBgq4E39oRs8Zx/RMYQ== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + +"@babel/plugin-proposal-private-methods@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.13.0.tgz#04bd4c6d40f6e6bbfa2f57e2d8094bad900ef787" + integrity sha512-MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.13.0" + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-proposal-unicode-property-regex@^7.12.13", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.13.tgz#bebde51339be829c17aaaaced18641deb62b39ba" + integrity sha512-XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.12.13" + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-async-generators@^7.8.4": + version "7.8.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-bigint@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-decorators@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.12.13.tgz#fac829bf3c7ef4a1bc916257b403e58c6bdaf648" + integrity sha512-Rw6aIXGuqDLr6/LoBBYE57nKOzQpz/aDkKlMqEwH+Vp0MXbG6H/TfRjaY343LKxzAKAMXIHsQ8JzaZKuDZ9MwA== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-dynamic-import@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" + integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-export-namespace-from@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" + integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.3" + +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-json-strings@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-jsx@^7.2.0": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.13.tgz#044fb81ebad6698fe62c478875575bcbb9b70f15" + integrity sha512-d4HM23Q1K7oq/SLNmG6mRt85l2csmQ0cHRaxRXjKW0YFdEXqlZ5kzFQKH5Uc3rDJECgu+yCRgPkG04Mm98R/1g== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-object-rest-spread@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-chaining@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-top-level-await@^7.12.13", "@babel/plugin-syntax-top-level-await@^7.8.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz#c5f0fa6e249f5b739727f923540cf7a806130178" + integrity sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-arrow-functions@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.13.0.tgz#10a59bebad52d637a027afa692e8d5ceff5e3dae" + integrity sha512-96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-transform-async-to-generator@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz#8e112bf6771b82bf1e974e5e26806c5c99aa516f" + integrity sha512-3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg== + dependencies: + "@babel/helper-module-imports" "^7.12.13" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-remap-async-to-generator" "^7.13.0" + +"@babel/plugin-transform-block-scoped-functions@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz#a9bf1836f2a39b4eb6cf09967739de29ea4bf4c4" + integrity sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-block-scoping@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.13.tgz#f36e55076d06f41dfd78557ea039c1b581642e61" + integrity sha512-Pxwe0iqWJX4fOOM2kEZeUuAxHMWb9nK+9oh5d11bsLoB0xMg+mkDpt0eYuDZB7ETrY9bbcVlKUGTOGWy7BHsMQ== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-classes@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.13.0.tgz#0265155075c42918bf4d3a4053134176ad9b533b" + integrity sha512-9BtHCPUARyVH1oXGcSJD3YpsqRLROJx5ZNP6tN5vnk17N0SVf9WCtf8Nuh1CFmgByKKAIMstitKduoCmsaDK5g== + dependencies: + "@babel/helper-annotate-as-pure" "^7.12.13" + "@babel/helper-function-name" "^7.12.13" + "@babel/helper-optimise-call-expression" "^7.12.13" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-replace-supers" "^7.13.0" + "@babel/helper-split-export-declaration" "^7.12.13" + globals "^11.1.0" + +"@babel/plugin-transform-computed-properties@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.13.0.tgz#845c6e8b9bb55376b1fa0b92ef0bdc8ea06644ed" + integrity sha512-RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-transform-destructuring@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.13.0.tgz#c5dce270014d4e1ebb1d806116694c12b7028963" + integrity sha512-zym5em7tePoNT9s964c0/KU3JPPnuq7VhIxPRefJ4/s82cD+q1mgKfuGRDMCPL0HTyKz4dISuQlCusfgCJ86HA== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-transform-dotall-regex@^7.12.13", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz#3f1601cc29905bfcb67f53910f197aeafebb25ad" + integrity sha512-foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.12.13" + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-duplicate-keys@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.13.tgz#6f06b87a8b803fd928e54b81c258f0a0033904de" + integrity sha512-NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-exponentiation-operator@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz#4d52390b9a273e651e4aba6aee49ef40e80cd0a1" + integrity sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA== + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.12.13" + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-for-of@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.13.0.tgz#c799f881a8091ac26b54867a845c3e97d2696062" + integrity sha512-IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-transform-function-name@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.13.tgz#bb024452f9aaed861d374c8e7a24252ce3a50051" + integrity sha512-6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ== + dependencies: + "@babel/helper-function-name" "^7.12.13" + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-literals@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz#2ca45bafe4a820197cf315794a4d26560fe4bdb9" + integrity sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-member-expression-literals@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.13.tgz#5ffa66cd59b9e191314c9f1f803b938e8c081e40" + integrity sha512-kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-modules-amd@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.13.0.tgz#19f511d60e3d8753cc5a6d4e775d3a5184866cc3" + integrity sha512-EKy/E2NHhY/6Vw5d1k3rgoobftcNUmp9fGjb9XZwQLtTctsRBOTRO7RHHxfIky1ogMN5BxN7p9uMA3SzPfotMQ== + dependencies: + "@babel/helper-module-transforms" "^7.13.0" + "@babel/helper-plugin-utils" "^7.13.0" + babel-plugin-dynamic-import-node "^2.3.3" + +"@babel/plugin-transform-modules-commonjs@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.13.8.tgz#7b01ad7c2dcf2275b06fa1781e00d13d420b3e1b" + integrity sha512-9QiOx4MEGglfYZ4XOnU79OHr6vIWUakIj9b4mioN8eQIoEh+pf5p/zEB36JpDFWA12nNMiRf7bfoRvl9Rn79Bw== + dependencies: + "@babel/helper-module-transforms" "^7.13.0" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-simple-access" "^7.12.13" + babel-plugin-dynamic-import-node "^2.3.3" + +"@babel/plugin-transform-modules-systemjs@^7.13.8": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.13.8.tgz#6d066ee2bff3c7b3d60bf28dec169ad993831ae3" + integrity sha512-hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A== + dependencies: + "@babel/helper-hoist-variables" "^7.13.0" + "@babel/helper-module-transforms" "^7.13.0" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-validator-identifier" "^7.12.11" + babel-plugin-dynamic-import-node "^2.3.3" + +"@babel/plugin-transform-modules-umd@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.13.0.tgz#8a3d96a97d199705b9fd021580082af81c06e70b" + integrity sha512-D/ILzAh6uyvkWjKKyFE/W0FzWwasv6vPTSqPcjxFqn6QpX3u8DjRVliq4F2BamO2Wee/om06Vyy+vPkNrd4wxw== + dependencies: + "@babel/helper-module-transforms" "^7.13.0" + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.13.tgz#2213725a5f5bbbe364b50c3ba5998c9599c5c9d9" + integrity sha512-Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.12.13" + +"@babel/plugin-transform-new-target@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.13.tgz#e22d8c3af24b150dd528cbd6e685e799bf1c351c" + integrity sha512-/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-object-super@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz#b4416a2d63b8f7be314f3d349bd55a9c1b5171f7" + integrity sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + "@babel/helper-replace-supers" "^7.12.13" + +"@babel/plugin-transform-parameters@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.13.0.tgz#8fa7603e3097f9c0b7ca1a4821bc2fb52e9e5007" + integrity sha512-Jt8k/h/mIwE2JFEOb3lURoY5C85ETcYPnbuAJ96zRBzh1XHtQZfs62ChZ6EP22QlC8c7Xqr9q+e1SU5qttwwjw== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-transform-property-literals@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz#4e6a9e37864d8f1b3bc0e2dce7bf8857db8b1a81" + integrity sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-regenerator@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.13.tgz#b628bcc9c85260ac1aeb05b45bde25210194a2f5" + integrity sha512-lxb2ZAvSLyJ2PEe47hoGWPmW22v7CtSl9jW8mingV4H2sEX/JOcrAj2nPuGWi56ERUm2bUpjKzONAuT6HCn2EA== + dependencies: + regenerator-transform "^0.14.2" + +"@babel/plugin-transform-reserved-words@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.13.tgz#7d9988d4f06e0fe697ea1d9803188aa18b472695" + integrity sha512-xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-runtime@^7.13.10": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.13.10.tgz#a1e40d22e2bf570c591c9c7e5ab42d6bf1e419e1" + integrity sha512-Y5k8ipgfvz5d/76tx7JYbKQTcgFSU6VgJ3kKQv4zGTKr+a9T/KBvfRvGtSFgKDQGt/DBykQixV0vNWKIdzWErA== + dependencies: + "@babel/helper-module-imports" "^7.12.13" + "@babel/helper-plugin-utils" "^7.13.0" + babel-plugin-polyfill-corejs2 "^0.1.4" + babel-plugin-polyfill-corejs3 "^0.1.3" + babel-plugin-polyfill-regenerator "^0.1.2" + semver "^6.3.0" + +"@babel/plugin-transform-shorthand-properties@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz#db755732b70c539d504c6390d9ce90fe64aff7ad" + integrity sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-spread@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.13.0.tgz#84887710e273c1815ace7ae459f6f42a5d31d5fd" + integrity sha512-V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" + +"@babel/plugin-transform-sticky-regex@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz#760ffd936face73f860ae646fb86ee82f3d06d1f" + integrity sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-template-literals@^7.13.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.13.0.tgz#a36049127977ad94438dee7443598d1cefdf409d" + integrity sha512-d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw== + dependencies: + "@babel/helper-plugin-utils" "^7.13.0" + +"@babel/plugin-transform-typeof-symbol@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz#785dd67a1f2ea579d9c2be722de8c84cb85f5a7f" + integrity sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-unicode-escapes@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.13.tgz#840ced3b816d3b5127dd1d12dcedc5dead1a5e74" + integrity sha512-0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-transform-unicode-regex@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz#b52521685804e155b1202e83fc188d34bb70f5ac" + integrity sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.12.13" + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/preset-env@^7.13.10": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.13.12.tgz#6dff470478290582ac282fb77780eadf32480237" + integrity sha512-JzElc6jk3Ko6zuZgBtjOd01pf9yYDEIH8BcqVuYIuOkzOwDesoa/Nz4gIo4lBG6K861KTV9TvIgmFuT6ytOaAA== + dependencies: + "@babel/compat-data" "^7.13.12" + "@babel/helper-compilation-targets" "^7.13.10" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/helper-validator-option" "^7.12.17" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.13.12" + "@babel/plugin-proposal-async-generator-functions" "^7.13.8" + "@babel/plugin-proposal-class-properties" "^7.13.0" + "@babel/plugin-proposal-dynamic-import" "^7.13.8" + "@babel/plugin-proposal-export-namespace-from" "^7.12.13" + "@babel/plugin-proposal-json-strings" "^7.13.8" + "@babel/plugin-proposal-logical-assignment-operators" "^7.13.8" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8" + "@babel/plugin-proposal-numeric-separator" "^7.12.13" + "@babel/plugin-proposal-object-rest-spread" "^7.13.8" + "@babel/plugin-proposal-optional-catch-binding" "^7.13.8" + "@babel/plugin-proposal-optional-chaining" "^7.13.12" + "@babel/plugin-proposal-private-methods" "^7.13.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.12.13" + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-class-properties" "^7.12.13" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.12.13" + "@babel/plugin-transform-arrow-functions" "^7.13.0" + "@babel/plugin-transform-async-to-generator" "^7.13.0" + "@babel/plugin-transform-block-scoped-functions" "^7.12.13" + "@babel/plugin-transform-block-scoping" "^7.12.13" + "@babel/plugin-transform-classes" "^7.13.0" + "@babel/plugin-transform-computed-properties" "^7.13.0" + "@babel/plugin-transform-destructuring" "^7.13.0" + "@babel/plugin-transform-dotall-regex" "^7.12.13" + "@babel/plugin-transform-duplicate-keys" "^7.12.13" + "@babel/plugin-transform-exponentiation-operator" "^7.12.13" + "@babel/plugin-transform-for-of" "^7.13.0" + "@babel/plugin-transform-function-name" "^7.12.13" + "@babel/plugin-transform-literals" "^7.12.13" + "@babel/plugin-transform-member-expression-literals" "^7.12.13" + "@babel/plugin-transform-modules-amd" "^7.13.0" + "@babel/plugin-transform-modules-commonjs" "^7.13.8" + "@babel/plugin-transform-modules-systemjs" "^7.13.8" + "@babel/plugin-transform-modules-umd" "^7.13.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.12.13" + "@babel/plugin-transform-new-target" "^7.12.13" + "@babel/plugin-transform-object-super" "^7.12.13" + "@babel/plugin-transform-parameters" "^7.13.0" + "@babel/plugin-transform-property-literals" "^7.12.13" + "@babel/plugin-transform-regenerator" "^7.12.13" + "@babel/plugin-transform-reserved-words" "^7.12.13" + "@babel/plugin-transform-shorthand-properties" "^7.12.13" + "@babel/plugin-transform-spread" "^7.13.0" + "@babel/plugin-transform-sticky-regex" "^7.12.13" + "@babel/plugin-transform-template-literals" "^7.13.0" + "@babel/plugin-transform-typeof-symbol" "^7.12.13" + "@babel/plugin-transform-unicode-escapes" "^7.12.13" + "@babel/plugin-transform-unicode-regex" "^7.12.13" + "@babel/preset-modules" "^0.1.4" + "@babel/types" "^7.13.12" + babel-plugin-polyfill-corejs2 "^0.1.4" + babel-plugin-polyfill-corejs3 "^0.1.3" + babel-plugin-polyfill-regenerator "^0.1.2" + core-js-compat "^3.9.0" + semver "^6.3.0" + +"@babel/preset-modules@^0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.4.tgz#362f2b68c662842970fdb5e254ffc8fc1c2e415e" + integrity sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-transform-dotall-regex" "^7.4.4" + "@babel/types" "^7.4.4" + esutils "^2.0.2" + +"@babel/runtime@^7.13.10", "@babel/runtime@^7.8.4": + version "7.13.10" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.13.10.tgz#47d42a57b6095f4468da440388fdbad8bebf0d7d" + integrity sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw== + dependencies: + regenerator-runtime "^0.13.4" + +"@babel/template@^7.12.13", "@babel/template@^7.3.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz#530265be8a2589dbb37523844c5bcb55947fb327" + integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/parser" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.13.0", "@babel/traverse@^7.7.0": + version "7.13.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.13.0.tgz#6d95752475f86ee7ded06536de309a65fc8966cc" + integrity sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.13.0" + "@babel/helper-function-name" "^7.12.13" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/parser" "^7.13.0" + "@babel/types" "^7.13.0" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.19" + +"@babel/traverse@^7.5.5": + version "7.13.15" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.13.15.tgz#c38bf7679334ddd4028e8e1f7b3aa5019f0dada7" + integrity sha512-/mpZMNvj6bce59Qzl09fHEs8Bt8NnpEDQYleHUPZQ3wXUMvXi+HJPLars68oAbmp839fGoOkv2pSL2z9ajCIaQ== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.13.9" + "@babel/helper-function-name" "^7.12.13" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/parser" "^7.13.15" + "@babel/types" "^7.13.14" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.12.1", "@babel/types@^7.12.13", "@babel/types@^7.13.0", "@babel/types@^7.13.12", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.7.0": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.13.12.tgz#edbf99208ef48852acdff1c8a681a1e4ade580cd" + integrity sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA== + dependencies: + "@babel/helper-validator-identifier" "^7.12.11" + lodash "^4.17.19" + to-fast-properties "^2.0.0" + +"@babel/types@^7.13.14": + version "7.13.14" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.13.14.tgz#c35a4abb15c7cd45a2746d78ab328e362cbace0d" + integrity sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ== + dependencies: + "@babel/helper-validator-identifier" "^7.12.11" + lodash "^4.17.19" + to-fast-properties "^2.0.0" + +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + +"@cnakazawa/watch@^1.0.3": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" + integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== + dependencies: + exec-sh "^0.3.2" + minimist "^1.2.0" + +"@csstools/convert-colors@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" + integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== + +"@eslint/eslintrc@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.0.tgz#99cc0a0584d72f1df38b900fb062ba995f395547" + integrity sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + +"@fullhuman/postcss-purgecss@^3.1.3": + version "3.1.3" + resolved "https://registry.yarnpkg.com/@fullhuman/postcss-purgecss/-/postcss-purgecss-3.1.3.tgz#47af7b87c9bfb3de4bc94a38f875b928fffdf339" + integrity sha512-kwOXw8fZ0Lt1QmeOOrd+o4Ibvp4UTEBFQbzvWldjlKv5n+G9sXfIPn1hh63IQIL8K8vbvv1oYMJiIUbuy9bGaA== + dependencies: + purgecss "^3.1.3" + +"@intlify/shared@^9.0.0": + version "9.1.4" + resolved "https://registry.yarnpkg.com/@intlify/shared/-/shared-9.1.4.tgz#0388515e5458fe1a2314c8f844db31bad26b8558" + integrity sha512-2rlkzmgj6fdSW8gsVtuw0vebMMGXGvRI3CwsshtAdShwea1bUuHtjJqze0ZhiVaRi87yAl4U5CaGC/t721TD5Q== + +"@intlify/vue-i18n-extensions@^1.0.1": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@intlify/vue-i18n-extensions/-/vue-i18n-extensions-1.0.2.tgz#ab7f8507f7d423c368e44fa21d6dece700261fca" + integrity sha512-rnfA0ScyBXyp9xsSD4EAMGeOh1yv/AE7fhqdAdSOr5X8N39azz257umfRtzNT9sHXAKSSzpCVhIbMAkp5c/gjQ== + dependencies: + "@babel/parser" "^7.9.6" + +"@intlify/vue-i18n-loader@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@intlify/vue-i18n-loader/-/vue-i18n-loader-1.1.0.tgz#eecc6460823676f533784b3641665c5a609eccf0" + integrity sha512-9LXiztMtYKTE8t/hRwwGUp+ofrwU0sxLQLzFEOZ38zvn0DonUIQmZUj1cfz5p1Lu8BllxKbCrn6HnsRJ+LYA6g== + dependencies: + "@intlify/shared" "^9.0.0" + js-yaml "^3.13.1" + json5 "^2.1.1" + +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + +"@jest/console@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" + integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^26.6.2" + jest-util "^26.6.2" + slash "^3.0.0" + +"@jest/core@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" + integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/reporters" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-changed-files "^26.6.2" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-resolve-dependencies "^26.6.3" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + jest-watcher "^26.6.2" + micromatch "^4.0.2" + p-each-series "^2.1.0" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + +"@jest/environment@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" + integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== + dependencies: + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + +"@jest/fake-timers@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" + integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== + dependencies: + "@jest/types" "^26.6.2" + "@sinonjs/fake-timers" "^6.0.1" + "@types/node" "*" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +"@jest/globals@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" + integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/types" "^26.6.2" + expect "^26.6.2" + +"@jest/reporters@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" + integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.2.4" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^4.0.3" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.0.2" + jest-haste-map "^26.6.2" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + slash "^3.0.0" + source-map "^0.6.0" + string-length "^4.0.1" + terminal-link "^2.0.0" + v8-to-istanbul "^7.0.0" + optionalDependencies: + node-notifier "^8.0.0" + +"@jest/source-map@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" + integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.2.4" + source-map "^0.6.0" + +"@jest/test-result@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" + integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + +"@jest/test-sequencer@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" + integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== + dependencies: + "@jest/test-result" "^26.6.2" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + +"@jest/transform@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" + integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^26.6.2" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-regex-util "^26.0.0" + jest-util "^26.6.2" + micromatch "^4.0.2" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + +"@jest/types@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" + integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + +"@koa/router@^9.0.1": + version "9.4.0" + resolved "https://registry.yarnpkg.com/@koa/router/-/router-9.4.0.tgz#734b64c0ae566eb5af752df71e4143edc4748e48" + integrity sha512-dOOXgzqaDoHu5qqMEPLKEgLz5CeIA7q8+1W62mCvFVCOqeC71UoTGJ4u1xUSOpIl2J1x2pqrNULkFteUeZW3/A== + dependencies: + debug "^4.1.1" + http-errors "^1.7.3" + koa-compose "^4.1.0" + methods "^1.1.2" + path-to-regexp "^6.1.0" + +"@lokidb/full-text-search@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@lokidb/full-text-search/-/full-text-search-2.1.0.tgz#5f0b36dc0d67ba365f84663a9c0438537c186a76" + integrity sha512-KZm8CV0tW/DE+ca4RF8/7kiZnMWqk4x6xrwOImOw1xgMQVzS3jtxHOhWIRk+valUlimDzNxhrstMjBWsdzgqFg== + optionalDependencies: + "@lokidb/loki" "2.1.0" + +"@lokidb/loki@2.1.0", "@lokidb/loki@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@lokidb/loki/-/loki-2.1.0.tgz#f707e184016ce57d6dd12013938c33f9c540960e" + integrity sha512-u2VH/4h4kZww23bak5I/oRai8VqIZCSuqiLbuSHpYXHB9Na5E9KNazh59prgUyvMzfooY7XKiHejbKVxFoAEOQ== + +"@nodelib/fs.scandir@2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz#d4b3549a5db5de2683e0c1071ab4f140904bbf69" + integrity sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA== + dependencies: + "@nodelib/fs.stat" "2.0.4" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.4", "@nodelib/fs.stat@^2.0.2": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz#a3f2dd61bab43b8db8fa108a121cfffe4c676655" + integrity sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz#cce9396b30aa5afe9e3756608f5831adcb53d063" + integrity sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow== + dependencies: + "@nodelib/fs.scandir" "2.1.4" + fastq "^1.6.0" + +"@npmcli/move-file@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + +"@nuxt/babel-preset-app@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/babel-preset-app/-/babel-preset-app-2.15.3.tgz#d97c2ae488cfdcbf0c7e0f412d10bb9554f38cb7" + integrity sha512-Z4Do1z2hSrdZKp6II/r9OG3o0tKPhWLeEjHHHKjl482PO65MadghyCspLJtQOV+TdJoZZYksph1O0F19nIgF6Q== + dependencies: + "@babel/compat-data" "^7.13.8" + "@babel/core" "^7.13.10" + "@babel/helper-compilation-targets" "^7.13.10" + "@babel/helper-module-imports" "^7.12.13" + "@babel/plugin-proposal-class-properties" "^7.13.0" + "@babel/plugin-proposal-decorators" "^7.13.5" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8" + "@babel/plugin-proposal-optional-chaining" "^7.13.8" + "@babel/plugin-transform-runtime" "^7.13.10" + "@babel/preset-env" "^7.13.10" + "@babel/runtime" "^7.13.10" + "@vue/babel-preset-jsx" "^1.2.4" + core-js "^2.6.5" + core-js-compat "^3.9.1" + regenerator-runtime "^0.13.7" + +"@nuxt/builder@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/builder/-/builder-2.15.3.tgz#8d0f19fb984b237c3048aafbb7dee5120945cda9" + integrity sha512-/Cb+pkB5dC31870PYLySGule+sNsnwtNugUTXPsE7cwMj0Cz+3y04TT+sMf4/bP6eGUoMaebPkXzMqEW/glY4w== + dependencies: + "@nuxt/devalue" "^1.2.5" + "@nuxt/utils" "2.15.3" + "@nuxt/vue-app" "2.15.3" + "@nuxt/webpack" "2.15.3" + chalk "^4.1.0" + chokidar "^3.5.1" + consola "^2.15.3" + fs-extra "^9.1.0" + glob "^7.1.6" + hash-sum "^2.0.0" + ignore "^5.1.8" + lodash "^4.17.21" + pify "^5.0.0" + serialize-javascript "^5.0.1" + upath "^2.0.1" + +"@nuxt/cli@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/cli/-/cli-2.15.3.tgz#6c2b02fcf7bc48d7d3ceac81f99cd639cc4b8e3b" + integrity sha512-5XMqaHf8VvWwe1MHGnHZ9Kg1lPfr/cUtK/gEHy/vu1o98VEeHtCTpn1/VZ9hA8zqkXBPfaH3bUPnFWEt+ByW1A== + dependencies: + "@nuxt/config" "2.15.3" + "@nuxt/utils" "2.15.3" + boxen "^5.0.0" + chalk "^4.1.0" + compression "^1.7.4" + connect "^3.7.0" + consola "^2.15.3" + crc "^3.8.0" + defu "^3.2.2" + destr "^1.1.0" + execa "^5.0.0" + exit "^0.1.2" + fs-extra "^9.1.0" + globby "^11.0.2" + hable "^3.0.0" + lodash "^4.17.21" + minimist "^1.2.5" + opener "1.5.2" + pretty-bytes "^5.6.0" + semver "^7.3.4" + serve-static "^1.14.1" + std-env "^2.3.0" + upath "^2.0.1" + wrap-ansi "^7.0.0" + +"@nuxt/components@^2.1.2": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@nuxt/components/-/components-2.1.4.tgz#6d3774704be9b3f692a9bb6d994b1261351799d8" + integrity sha512-V3AMoZz2ADhI0SbbUoX1U70eulL/xDwWpV5L/PLmoUHN7NuzsvBbOIl8JBXxf+Vp/d5TZwO0I2x7cHiukydfmA== + dependencies: + chalk "^4.1.0" + chokidar "^3.5.1" + glob "^7.1.6" + globby "^11.0.3" + scule "^0.1.1" + semver "^7.3.5" + upath "^2.0.1" + vue-template-compiler "^2.6.12" + +"@nuxt/config@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/config/-/config-2.15.3.tgz#05635654a88971c2f22b3eb4a631ec51f67d823a" + integrity sha512-5MmGJiOj91F4EIm+ikfegXt520QlJV4RF2hWsTLzliddwE+voSjcF/Se6c0pLrLLTmVQKlM2e5JcZQplbpYYtA== + dependencies: + "@nuxt/utils" "2.15.3" + consola "^2.15.3" + defu "^3.2.2" + destr "^1.1.0" + dotenv "^8.2.0" + lodash "^4.17.21" + rc9 "^1.2.0" + std-env "^2.3.0" + ufo "^0.6.10" + +"@nuxt/content@^1.14.0": + version "1.14.0" + resolved "https://registry.yarnpkg.com/@nuxt/content/-/content-1.14.0.tgz#5775b596d2db1ae65c41d461c0a6734fc276cb82" + integrity sha512-MYx+dTu2ZRUHWGp9EgVtFfXJHFeCKrzazaM4a9785OCipItp6zmm1hTlbfdCYenwa0HgaOXCxYAiN0h6tjyUZw== + dependencies: + "@lokidb/full-text-search" "^2.1.0" + "@lokidb/loki" "^2.1.0" + "@nuxt/types" "^2.15.2" + "@types/js-yaml" "^4.0.0" + "@types/xml2js" "^0.4.8" + change-case "^4.1.2" + chokidar "^3.5.1" + consola "^2.15.3" + csvtojson "^2.0.10" + defu "^3.2.2" + detab "^2.0.4" + escape-html "^1.0.3" + graceful-fs "^4.2.6" + gray-matter "^4.0.2" + hasha "^5.2.2" + hookable "^4.4.1" + html-tags "^3.1.0" + js-yaml "4.0.0" + mdast-util-to-hast "^10.2.0" + mkdirp "^1.0.4" + node-req "^2.1.2" + node-res "^5.0.1" + p-queue "6.6.2" + prismjs "^1.23.0" + property-information "^5.6.0" + rehype-raw "^5.0.0" + rehype-sort-attribute-values "^3.0.2" + rehype-sort-attributes "^3.0.2" + remark-autolink-headings "^6.0.1" + remark-external-links "^8.0.0" + remark-footnotes "^3.0.0" + remark-gfm "^1.0.0" + remark-parse "^9.0.0" + remark-rehype "^8.0.0" + remark-slug "^6.0.0" + remark-squeeze-paragraphs "^4.0.0" + unified "^9.2.1" + unist-builder "^2.0.3" + ws "^7.4.3" + xml2js "^0.4.23" + +"@nuxt/core@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/core/-/core-2.15.3.tgz#9caa8c0fb758e26a7328e5d06dfd3bcfdc570082" + integrity sha512-x2o8MqkdvsM+GMHG7fezdYHMHuI33FCDuOJiL66Qgi54gqfSrRv9QYZnixcxk8TsRX81Hlz+l4XqpSQa99N0MA== + dependencies: + "@nuxt/config" "2.15.3" + "@nuxt/server" "2.15.3" + "@nuxt/utils" "2.15.3" + consola "^2.15.3" + fs-extra "^9.1.0" + hable "^3.0.0" + hash-sum "^2.0.0" + lodash "^4.17.21" + +"@nuxt/devalue@^1.2.5": + version "1.2.5" + resolved "https://registry.yarnpkg.com/@nuxt/devalue/-/devalue-1.2.5.tgz#8d95e3e74b3332d3eb713342c5c4d18096047d66" + integrity sha512-Tg86C7tqzvZtZli2BQVqgzZN136mZDTgauvJXagglKkP2xt5Kw3NUIiJyjX0Ww/IZy2xVmD0LN+CEPpij4dB2g== + dependencies: + consola "^2.9.0" + +"@nuxt/friendly-errors-webpack-plugin@^2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@nuxt/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-2.5.0.tgz#5374665bc72d34b7dbadcc361a4777e3f0f5d46b" + integrity sha512-pUgPFmRL56/xuTCGN5rqgTfxvs1N/AYJw7q7tUHiZaBm3UyPgbIVPkadS9njwbFbPD2XcebVy7npQMMVwQJWfA== + dependencies: + chalk "^2.3.2" + consola "^2.6.0" + error-stack-parser "^2.0.0" + string-width "^2.0.0" + +"@nuxt/generator@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/generator/-/generator-2.15.3.tgz#c9f73085c47d557e610193b6454e2afdd6f13271" + integrity sha512-WetoXQQ5UaizPF96/WAVPucrCUkWub5S2e7VvRS4HKrV6s9bUfj0zlJJTqZhOMLt/TxxF10Y9FThaP1+uLW3iw== + dependencies: + "@nuxt/utils" "2.15.3" + chalk "^4.1.0" + consola "^2.15.3" + defu "^3.2.2" + devalue "^2.0.1" + fs-extra "^9.1.0" + html-minifier "^4.0.0" + node-html-parser "^2.2.1" + ufo "^0.6.10" + +"@nuxt/loading-screen@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@nuxt/loading-screen/-/loading-screen-2.0.3.tgz#1d6b1f976bb143c6592231af0bf7fa6245f6ebd2" + integrity sha512-ThvxxUpfTZezzz0gAgyG4vHCM7KDeA692EL7lKrZ/fU8JvXlG6LYngVLWAobexBsydtGkuZyKCwCVDnEGNL4jw== + dependencies: + connect "^3.7.0" + defu "^2.0.4" + get-port-please "^1.0.0" + node-res "^5.0.1" + serve-static "^1.14.1" + +"@nuxt/opencollective@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@nuxt/opencollective/-/opencollective-0.3.2.tgz#83cb70cdb2bac5fad6f8c93529e7b11187d49c02" + integrity sha512-XG7rUdXG9fcafu9KTDIYjJSkRO38EwjlKYIb5TQ/0WDbiTUTtUtgncMscKOYzfsY86kGs05pAuMOR+3Fi0aN3A== + dependencies: + chalk "^4.1.0" + consola "^2.15.0" + node-fetch "^2.6.1" + +"@nuxt/postcss8@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@nuxt/postcss8/-/postcss8-1.1.3.tgz#a7f8f6f2a664430bbdd3b175498eb693e0b1b351" + integrity sha512-CdHtErhvQwueNZPBOmlAAKrNCK7aIpZDYhtS7TzXlSgPHHox1g3cSlf+Ke9oB/8t4mNNjdB+prclme2ibuCOEA== + dependencies: + autoprefixer "^10.2.5" + css-loader "^5.0.0" + defu "^3.2.2" + postcss "^8.1.10" + postcss-import "^13.0.0" + postcss-loader "^4.1.0" + postcss-url "^10.1.1" + semver "^7.3.4" + +"@nuxt/server@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/server/-/server-2.15.3.tgz#43e9c8beb9547a0dbaef9b6001a69ae251ed6a38" + integrity sha512-jEUddpu1RuXnzjfUdiMD5I+LAs8LQXfdoYJtdR2kAzaDZnGeNWE6kZ2WD9B8uqPAl5497j69bdWFvK87NSaRXA== + dependencies: + "@nuxt/utils" "2.15.3" + "@nuxt/vue-renderer" "2.15.3" + "@nuxtjs/youch" "^4.2.3" + compression "^1.7.4" + connect "^3.7.0" + consola "^2.15.3" + etag "^1.8.1" + fresh "^0.5.2" + fs-extra "^9.1.0" + ip "^1.1.5" + launch-editor-middleware "^2.2.1" + on-headers "^1.0.2" + pify "^5.0.0" + serve-placeholder "^1.2.3" + serve-static "^1.14.1" + server-destroy "^1.0.1" + ufo "^0.6.10" + +"@nuxt/telemetry@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@nuxt/telemetry/-/telemetry-1.3.3.tgz#beefa94c6032a1312c7dc9c8784c6b8cc3aa42ae" + integrity sha512-ElnoAJo1n/Ui0j9i3xqhXajoGJdEwmkEtsWftlZUpQNJxdfoz+623qnt9XHMYa0X5Nf1PXYdcUKa2u4AASXOjA== + dependencies: + arg "^5.0.0" + chalk "^4.1.0" + ci-info "^2.0.0" + consola "^2.15.0" + create-require "^1.1.1" + defu "^3.2.2" + destr "^1.1.0" + dotenv "^8.2.0" + fs-extra "^8.1.0" + git-url-parse "^11.4.3" + inquirer "^7.3.3" + is-docker "^2.1.1" + jiti "^1.3.0" + nanoid "^3.1.20" + node-fetch "^2.6.1" + parse-git-config "^3.0.0" + rc9 "^1.2.0" + std-env "^2.2.1" + +"@nuxt/types@^2.15.2", "@nuxt/types@^2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/types/-/types-2.15.3.tgz#2c93829554ff261f488f41d7332aa1cc2e343ada" + integrity sha512-dOO5uSDOjeMxDtowRd3b1ZMMeoUQjVHsf/3rMjAgIDojESbIkLE+yN0zSPBzDomjh8KF82ZNYDeDrN34cadW5g== + dependencies: + "@types/autoprefixer" "^9.7.2" + "@types/babel__core" "^7.1.12" + "@types/compression" "^1.7.0" + "@types/connect" "^3.4.34" + "@types/etag" "^1.8.0" + "@types/file-loader" "^4.2.0" + "@types/html-minifier" "^4.0.0" + "@types/less" "^3.0.2" + "@types/node" "^12.20.5" + "@types/optimize-css-assets-webpack-plugin" "^5.0.2" + "@types/pug" "^2.0.4" + "@types/sass" "^1.16.0" + "@types/serve-static" "^1.13.9" + "@types/terser-webpack-plugin" "^4.2.0" + "@types/webpack" "^4.41.26" + "@types/webpack-bundle-analyzer" "^3.9.1" + "@types/webpack-dev-middleware" "^4.1.0" + "@types/webpack-hot-middleware" "^2.25.3" + sass-loader "^10.1.1" + +"@nuxt/typescript-build@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@nuxt/typescript-build/-/typescript-build-2.1.0.tgz#191fe60e942ce84a01468ba6e255744e01c7c538" + integrity sha512-7TLMpfzgOckf3cBkzoPFns6Xl8FzY6MoFfm/5HUE47QeTWAdOG9ZFxMrVhHWieZHYUuV+k6byRtaRv4S/3R8zA== + dependencies: + consola "^2.15.3" + fork-ts-checker-webpack-plugin "^6.1.1" + ts-loader "^8.0.17" + typescript "~4.2" + +"@nuxt/utils@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/utils/-/utils-2.15.3.tgz#45a2e368829274fa03c4d647dea7e420cd50caaa" + integrity sha512-sJPBjTZ9XsPKrKM1mdyNmb6c59l/4RIhBACDwOhgLVMUZVMWQkV0dqhoykd2ZIVqyEaNEE49hsfo3934aQlPtw== + dependencies: + consola "^2.15.3" + create-require "^1.1.1" + fs-extra "^9.1.0" + hash-sum "^2.0.0" + jiti "^1.6.3" + lodash "^4.17.21" + proper-lockfile "^4.1.2" + semver "^7.3.4" + serialize-javascript "^5.0.1" + signal-exit "^3.0.3" + ua-parser-js "^0.7.24" + ufo "^0.6.10" + +"@nuxt/vue-app@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/vue-app/-/vue-app-2.15.3.tgz#081d15d96e4675ee2f83b223a2a8697e91251f39" + integrity sha512-Dd4OdtZY7+PN2tMjgkdUP+w9WjLQjUbUq8HrACMeT9Vz8FbX2aoYyLzku7KFZy/2PBk1Yz5ZaJIjrcZPobEAfQ== + dependencies: + node-fetch "^2.6.1" + ufo "^0.6.10" + unfetch "^4.2.0" + vue "^2.6.12" + vue-client-only "^2.0.0" + vue-meta "^2.4.0" + vue-no-ssr "^1.1.1" + vue-router "^3.5.1" + vue-template-compiler "^2.6.12" + vuex "^3.6.2" + +"@nuxt/vue-renderer@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/vue-renderer/-/vue-renderer-2.15.3.tgz#7c920ae3ae05b6ef4b7bd0d70b2b7ee7818c02b6" + integrity sha512-ovZ2NWlTsX0hbeuJhuyRrCpEkZn5mdM3YWaOCAG4jctee+sK/C76TtbVNsK9Rbu1vxMe/6zlHOPpE2LV+TRJdw== + dependencies: + "@nuxt/devalue" "^1.2.5" + "@nuxt/utils" "2.15.3" + consola "^2.15.3" + defu "^3.2.2" + fs-extra "^9.1.0" + lodash "^4.17.21" + lru-cache "^5.1.1" + ufo "^0.6.10" + vue "^2.6.12" + vue-meta "^2.4.0" + vue-server-renderer "^2.6.12" + +"@nuxt/webpack@2.15.3": + version "2.15.3" + resolved "https://registry.yarnpkg.com/@nuxt/webpack/-/webpack-2.15.3.tgz#df1e757512b7624a34539bed91e74b59d0ba415e" + integrity sha512-ca692q7MRbNutxjTEfF3wnMvRJ9BbXRDA7zeBnIDHFho6b8mlAskPy5716rxZ3CYhQ2rGVQc5it3+JyjCEw59Q== + dependencies: + "@babel/core" "^7.13.10" + "@nuxt/babel-preset-app" "2.15.3" + "@nuxt/friendly-errors-webpack-plugin" "^2.5.0" + "@nuxt/utils" "2.15.3" + babel-loader "^8.2.2" + cache-loader "^4.1.0" + caniuse-lite "^1.0.30001198" + consola "^2.15.3" + css-loader "^4.3.0" + cssnano "^4.1.10" + eventsource-polyfill "^0.9.6" + extract-css-chunks-webpack-plugin "^4.9.0" + file-loader "^6.2.0" + glob "^7.1.6" + hard-source-webpack-plugin "^0.13.1" + hash-sum "^2.0.0" + html-webpack-plugin "^4.5.1" + lodash "^4.17.21" + memory-fs "^0.5.0" + optimize-css-assets-webpack-plugin "^5.0.4" + pify "^5.0.0" + pnp-webpack-plugin "^1.6.4" + postcss "^7.0.32" + postcss-import "^12.0.1" + postcss-import-resolver "^2.0.0" + postcss-loader "^3.0.0" + postcss-preset-env "^6.7.0" + postcss-url "^8.0.0" + semver "^7.3.4" + std-env "^2.3.0" + style-resources-loader "^1.4.1" + terser-webpack-plugin "^4.2.3" + thread-loader "^3.0.1" + time-fix-plugin "^2.0.7" + ufo "^0.6.10" + url-loader "^4.1.1" + vue-loader "^15.9.6" + vue-style-loader "^4.1.3" + vue-template-compiler "^2.6.12" + webpack "^4.46.0" + webpack-bundle-analyzer "^4.4.0" + webpack-dev-middleware "^4.1.0" + webpack-hot-middleware "^2.25.0" + webpack-node-externals "^2.5.2" + webpackbar "^4.0.0" + +"@nuxtjs/axios@^5.13.1": + version "5.13.1" + resolved "https://registry.yarnpkg.com/@nuxtjs/axios/-/axios-5.13.1.tgz#70c7444e6be8989372c249637f9287c844340f42" + integrity sha512-vZpXV2AAkQ5Duejubt1k3ZgUnYowYnPvmcUt0hskd+OebmQ+jF6Wk6rOG0/9EeknOxm7mtTGgKSwdlE1jDo+xA== + dependencies: + "@nuxtjs/proxy" "^2.1.0" + axios "^0.21.1" + axios-retry "^3.1.9" + consola "^2.15.3" + defu "^3.2.2" + +"@nuxtjs/eslint-config-typescript@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@nuxtjs/eslint-config-typescript/-/eslint-config-typescript-6.0.0.tgz#e3ea273edf2dfcb176a9f28ca1a95870a6c21cd8" + integrity sha512-oQm0ZmWdHNf8TKWbSUhwniarCX590oHnxuArvwApLDaaNaw0m4TL5+rpARMCVtlS33YhJ/Le+GaeyS5HeVt19A== + dependencies: + "@nuxtjs/eslint-config" "6.0.0" + "@typescript-eslint/eslint-plugin" "^4.16.1" + "@typescript-eslint/parser" "^4.16.1" + +"@nuxtjs/eslint-config@6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@nuxtjs/eslint-config/-/eslint-config-6.0.0.tgz#bf8b7b1f72fc9080ba2a6c71f2447d4166d374e3" + integrity sha512-DQLyMS+A1lPeo3ajMEISz8rPzCU4DTIKQtv9HRy1A3w5583dXcbHMQzNg3qGHoTPJ/FzM1+WhV8Ak3+gQ+9uoQ== + dependencies: + eslint-config-standard "^16.0.2" + eslint-plugin-import "^2.22.1" + eslint-plugin-jest "^24.1.7" + eslint-plugin-node "^11.1.0" + eslint-plugin-promise "^4.3.1" + eslint-plugin-standard "^4.1.0" + eslint-plugin-unicorn "^28.0.2" + eslint-plugin-vue "^7.7.0" + +"@nuxtjs/eslint-module@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@nuxtjs/eslint-module/-/eslint-module-3.0.2.tgz#45208e6e1b486beb6d0854777faf124751971bc6" + integrity sha512-9q6/bMSvUU2L7Vhy5LUmghW3BQZMReQAvywBwZtX7s62W6dIL7IdD1T3u2zc8JW90grtJK84Ocx3dyYTj/Oavw== + dependencies: + consola "^2.15.0" + eslint-webpack-plugin "^2.4.1" + +"@nuxtjs/proxy@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@nuxtjs/proxy/-/proxy-2.1.0.tgz#fa7715a11d237fa1273503c4e9e137dd1bf5575b" + integrity sha512-/qtoeqXgZ4Mg6LRg/gDUZQrFpOlOdHrol/vQYMnKu3aN3bP90UfOUB3QSDghUUK7OISAJ0xp8Ld78aHyCTcKCQ== + dependencies: + http-proxy-middleware "^1.0.6" + +"@nuxtjs/pwa@^3.3.5": + version "3.3.5" + resolved "https://registry.yarnpkg.com/@nuxtjs/pwa/-/pwa-3.3.5.tgz#db7c905536ebe8a464a347b6ae3215810642c044" + integrity sha512-8tTmW8DBspWxlJwTimOHTkwfkwPpL9wIcGmy75Gcmin+c9YtX2Ehxmhgt/TLFOC9XsLAqojqynw3/Agr/9OE1w== + dependencies: + clone-deep "^4.0.1" + defu "^3.2.2" + execa "^5.0.0" + fs-extra "^9.1.0" + hasha "^5.2.2" + jimp-compact "^0.16.1" + lodash.template "^4.5.0" + serve-static "^1.14.1" + workbox-cdn "^5.1.4" + +"@nuxtjs/tailwindcss@^4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@nuxtjs/tailwindcss/-/tailwindcss-4.0.3.tgz#c90d6facc6718dbc6f56f28c3d1daf82544276f7" + integrity sha512-dr+Bq4chALKllQaIoGrAV3JplP141wL50lfO8BwAD2R99ywwwM5DUMAUrpppuWHT4x/Lp/SzUwbCKsRJBhuQGA== + dependencies: + "@nuxt/postcss8" "^1.1.3" + "@tailwindcss/jit" "^0.1.18" + autoprefixer "^10.2.5" + chalk "^4.1.0" + clear-module "^4.1.1" + consola "^2.15.3" + defu "^3.2.2" + postcss "^8.2.9" + postcss-custom-properties "^11.0.0" + postcss-nesting "^7.0.1" + tailwind-config-viewer "^1.5.1" + tailwindcss "^2.0.4" + ufo "^0.6.10" + +"@nuxtjs/youch@^4.2.3": + version "4.2.3" + resolved "https://registry.yarnpkg.com/@nuxtjs/youch/-/youch-4.2.3.tgz#36f8b22df5a0efaa81373109851e1d857aca6bed" + integrity sha512-XiTWdadTwtmL/IGkNqbVe+dOlT+IMvcBu7TvKI7plWhVQeBCQ9iKhk3jgvVWFyiwL2yHJDlEwOM5v9oVES5Xmw== + dependencies: + cookie "^0.3.1" + mustache "^2.3.0" + stack-trace "0.0.10" + +"@polka/url@^1.0.0-next.9": + version "1.0.0-next.11" + resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.11.tgz#aeb16f50649a91af79dbe36574b66d0f9e4d9f71" + integrity sha512-3NsZsJIA/22P3QUyrEDNA2D133H4j224twJrdipXN38dpnIOzAbUDtOwkcJ5pXmn75w7LSQDjA4tO9dm1XlqlA== + +"@sinonjs/commons@^1.7.0": + version "1.8.2" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.2.tgz#858f5c4b48d80778fde4b9d541f27edc0d56488b" + integrity sha512-sruwd86RJHdsVf/AtBoijDmUqJp3B6hF/DGC23C+JaegnDHaZyewCjoVGTdg3J0uz3Zs7NnIT05OBOmML72lQw== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" + integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== + dependencies: + "@sinonjs/commons" "^1.7.0" + +"@tailwindcss/forms@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@tailwindcss/forms/-/forms-0.3.2.tgz#e28c4514a53e69f725416a5a2a6d0f221683f069" + integrity sha512-aj2/rJsGb2whAZ/BQWHWWQRSbhH0r/l1ozOByiv+ZNjBD84GMvb5dhAyfpeasFky+EJrAwX5eaqft8NQMZFWvA== + dependencies: + mini-svg-data-uri "^1.2.3" + +"@tailwindcss/jit@^0.1.18": + version "0.1.18" + resolved "https://registry.yarnpkg.com/@tailwindcss/jit/-/jit-0.1.18.tgz#f44ac25b347ad1b4056af4fbda69399070206825" + integrity sha512-WNSEiwbggtO9n6+ok2fFdYmhqY20oqLmB82H23nY8P5WzijZbIshojoY3s/OvPD7cmvzkweZ6LLKGWuDS1/vLA== + dependencies: + chokidar "^3.5.1" + dlv "^1.1.3" + fast-glob "^3.2.5" + lodash.topath "^4.5.2" + normalize-path "^3.0.0" + object-hash "^2.1.1" + parse-glob "^3.0.4" + postcss-selector-parser "^6.0.4" + quick-lru "^5.1.1" + +"@tailwindcss/postcss7-compat@^2.1.0", "tailwindcss@npm:@tailwindcss/postcss7-compat": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@tailwindcss/postcss7-compat/-/postcss7-compat-2.1.0.tgz#1393b99d9e60783990baa1b3e2ae69afac12f660" + integrity sha512-1Z6nPrkOp0Aa+NH5q6DYNizKf3qc6x735We0kpnIj1k5Cn+RkP69z+MpFLvz5lGGPRV/i+uS9uItoafnjIoZoQ== + dependencies: + "@fullhuman/postcss-purgecss" "^3.1.3" + autoprefixer "^9" + bytes "^3.0.0" + chalk "^4.1.0" + chokidar "^3.5.1" + color "^3.1.3" + detective "^5.2.0" + didyoumean "^1.2.1" + dlv "^1.1.3" + fast-glob "^3.2.5" + fs-extra "^9.1.0" + html-tags "^3.1.0" + lodash "^4.17.21" + lodash.topath "^4.5.2" + modern-normalize "^1.0.0" + node-emoji "^1.8.1" + normalize-path "^3.0.0" + object-hash "^2.1.1" + parse-glob "^3.0.4" + postcss "^7" + postcss-functions "^3" + postcss-js "^2" + postcss-nested "^4" + postcss-selector-parser "^6.0.4" + postcss-value-parser "^4.1.0" + pretty-hrtime "^1.0.3" + quick-lru "^5.1.1" + reduce-css-calc "^2.1.8" + resolve "^1.20.0" + +"@tailwindcss/typography@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@tailwindcss/typography/-/typography-0.4.0.tgz#b80974ad6af93df7b06e1981cb4d79698b6ad5c7" + integrity sha512-3BfOYT5MYNEq81Ism3L2qu/HRP2Q5vWqZtZRQqQrthHuaTK9qpuPfbMT5WATjAM5J1OePKBaI5pLoX4S1JGNMQ== + dependencies: + lodash.castarray "^4.4.0" + lodash.isplainobject "^4.0.6" + lodash.merge "^4.6.2" + lodash.uniq "^4.5.0" + +"@types/anymatch@*": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" + integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== + +"@types/autoprefixer@^9.7.2": + version "9.7.2" + resolved "https://registry.yarnpkg.com/@types/autoprefixer/-/autoprefixer-9.7.2.tgz#64b3251c9675feef5a631b7dd34cfea50a8fdbcc" + integrity sha512-QX7U7YW3zX3ex6MECtWO9folTGsXeP4b8bSjTq3I1ODM+H+sFHwGKuof+T+qBcDClGlCGtDb3SVfiTVfmcxw4g== + dependencies: + "@types/browserslist" "*" + postcss "7.x.x" + +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.12", "@types/babel__core@^7.1.7": + version "7.1.14" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz#faaeefc4185ec71c389f4501ee5ec84b170cc402" + integrity sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.2" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz#f3d71178e187858f7c45e30380f8f1b7415a12d8" + integrity sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.4.0" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.0.tgz#0c888dd70b3ee9eebb6e4f200e809da0076262be" + integrity sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": + version "7.11.1" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.11.1.tgz#654f6c4f67568e24c23b367e947098c6206fa639" + integrity sha512-Vs0hm0vPahPMYi9tDjtP66llufgO3ST16WXaSTtDGEl9cewAl3AibmxWw6TINOqHPT9z0uABKAYjT9jNSg4npw== + dependencies: + "@babel/types" "^7.3.0" + +"@types/body-parser@*": + version "1.19.0" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f" + integrity sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/browserslist@*": + version "4.15.0" + resolved "https://registry.yarnpkg.com/@types/browserslist/-/browserslist-4.15.0.tgz#ba0265b33003a2581df1fc5f483321a30205f2d2" + integrity sha512-h9LyKErRGZqMsHh9bd+FE8yCIal4S0DxKTOeui56VgVXqa66TKiuaIUxCAI7c1O0LjaUzOTcsMyOpO9GetozRA== + dependencies: + browserslist "*" + +"@types/clean-css@*": + version "4.2.3" + resolved "https://registry.yarnpkg.com/@types/clean-css/-/clean-css-4.2.3.tgz#12c13cc815f5e793014ee002c6324455907d851c" + integrity sha512-ET0ldU/vpXecy5vO8JRIhtJWSrk1vzXdJcp3Bjf8bARZynl6vfkhEKY/A7njfNIRlmyTGuVFuqnD6I3tOGdXpQ== + dependencies: + "@types/node" "*" + source-map "^0.6.0" + +"@types/compression@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@types/compression/-/compression-1.7.0.tgz#8dc2a56604873cf0dd4e746d9ae4d31ae77b2390" + integrity sha512-3LzWUM+3k3XdWOUk/RO+uSjv7YWOatYq2QADJntK1pjkk4DfVP0KrIEPDnXRJxAAGKe0VpIPRmlINLDuCedZWw== + dependencies: + "@types/express" "*" + +"@types/connect@*", "@types/connect@^3.4.34": + version "3.4.34" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.34.tgz#170a40223a6d666006d93ca128af2beb1d9b1901" + integrity sha512-ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ== + dependencies: + "@types/node" "*" + +"@types/eslint@^7.2.6": + version "7.2.7" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.2.7.tgz#f7ef1cf0dceab0ae6f9a976a0a9af14ab1baca26" + integrity sha512-EHXbc1z2GoQRqHaAT7+grxlTJ3WE2YNeD6jlpPoRc83cCoThRY+NUWjCUZaYmk51OICkPXn2hhphcWcWXgNW0Q== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*": + version "0.0.46" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.46.tgz#0fb6bfbbeabd7a30880504993369c4bf1deab1fe" + integrity sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg== + +"@types/etag@^1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@types/etag/-/etag-1.8.0.tgz#37f0b1f3ea46da7ae319bbedb607e375b4c99f7e" + integrity sha512-EdSN0x+Y0/lBv7YAb8IU4Jgm6DWM+Bqtz7o5qozl96fzaqdqbdfHS5qjdpFeIv7xQ8jSLyjMMNShgYtMajEHyQ== + dependencies: + "@types/node" "*" + +"@types/express-serve-static-core@^4.17.18": + version "4.17.19" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.19.tgz#00acfc1632e729acac4f1530e9e16f6dd1508a1d" + integrity sha512-DJOSHzX7pCiSElWaGR8kCprwibCB/3yW6vcT8VG3P0SJjnv19gnWG/AZMfM60Xj/YJIp/YCaDHyvzsFVeniARA== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + +"@types/express@*": + version "4.17.11" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.11.tgz#debe3caa6f8e5fcda96b47bd54e2f40c4ee59545" + integrity sha512-no+R6rW60JEc59977wIxreQVsIEOAYwgCqldrA/vkpCnbD7MqTefO97lmoBe4WE0F156bC4uLSP1XHDOySnChg== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^4.17.18" + "@types/qs" "*" + "@types/serve-static" "*" + +"@types/file-loader@^4.2.0": + version "4.2.0" + resolved "https://registry.yarnpkg.com/@types/file-loader/-/file-loader-4.2.0.tgz#ec8e793e275b7f90cdec3ff286518c6bf7bb8fc3" + integrity sha512-N3GMqKiKSNd41q4/lZlkdvNXKKWVdOXrA8Rniu64+25X0K2U1mWmTSu1CIqXKKsZUCwfaFcaioviLQtQ+EowLg== + dependencies: + "@types/webpack" "*" + +"@types/graceful-fs@^4.1.2": + version "4.1.5" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" + integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== + dependencies: + "@types/node" "*" + +"@types/hast@^2.0.0": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.1.tgz#b16872f2a6144c7025f296fb9636a667ebb79cd9" + integrity sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q== + dependencies: + "@types/unist" "*" + +"@types/html-minifier-terser@^5.0.0": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#3c9ee980f1a10d6021ae6632ca3e79ca2ec4fb50" + integrity sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA== + +"@types/html-minifier@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/html-minifier/-/html-minifier-4.0.0.tgz#2065cb9944f2d1b241146707c6935aa7b947d279" + integrity sha512-eFnGhrKmjWBlnSGNtunetE3UU2Tc/LUl92htFslSSTmpp9EKHQVcYQadCyYfnzUEFB5G/3wLWo/USQS/mEPKrA== + dependencies: + "@types/clean-css" "*" + "@types/relateurl" "*" + "@types/uglify-js" "*" + +"@types/http-proxy@^1.17.4": + version "1.17.5" + resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.5.tgz#c203c5e6e9dc6820d27a40eb1e511c70a220423d" + integrity sha512-GNkDE7bTv6Sf8JbV2GksknKOsk7OznNYHSdrtvPJXO0qJ9odZig6IZKUi5RFGi6d1bf6dgIAe4uXi3DBc7069Q== + dependencies: + "@types/node" "*" + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" + integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== + +"@types/istanbul-lib-report@*": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz#508b13aa344fa4976234e75dddcc34925737d821" + integrity sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA== + dependencies: + "@types/istanbul-lib-report" "*" + +"@types/js-yaml@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.0.tgz#d1a11688112091f2c711674df3a65ea2f47b5dfb" + integrity sha512-4vlpCM5KPCL5CfGmTbpjwVKbISRYhduEJvvUWsH5EB7QInhEj94XPZ3ts/9FPiLZFqYO0xoW4ZL8z2AabTGgJA== + +"@types/json-schema@*", "@types/json-schema@^7.0.3", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6": + version "7.0.7" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad" + integrity sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA== + +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= + +"@types/less@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/less/-/less-3.0.2.tgz#2761d477678c8374cb9897666871662eb1d1115e" + integrity sha512-62vfe65cMSzYaWmpmhqCMMNl0khen89w57mByPi1OseGfcV/LV03fO8YVrNj7rFQsRWNJo650WWyh6m7p8vZmA== + +"@types/mdast@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb" + integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw== + dependencies: + "@types/unist" "*" + +"@types/mime@^1": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" + integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== + +"@types/node@*": + version "14.14.35" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.35.tgz#42c953a4e2b18ab931f72477e7012172f4ffa313" + integrity sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag== + +"@types/node@^12.20.5": + version "12.20.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.6.tgz#7b73cce37352936e628c5ba40326193443cfba25" + integrity sha512-sRVq8d+ApGslmkE9e3i+D3gFGk7aZHAT+G4cIpIEdLJYPsWiSPwcAnJEjddLQQDqV3Ra2jOclX/Sv6YrvGYiWA== + +"@types/normalize-package-data@^2.4.0": + version "2.4.0" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" + integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== + +"@types/optimize-css-assets-webpack-plugin@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@types/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.2.tgz#37afc6ca5eecae865551e86d1fd3012aedc40798" + integrity sha512-kOeZHQyoeau/6Obelj5/iow7uo5rH2KpbdWPEGCqbC4bxkiteg794tU4LqKFlQKdM5QGCp5Hbapl+zDdQzBNkQ== + dependencies: + "@types/webpack" "*" + +"@types/parse-json@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== + +"@types/parse5@^5.0.0": + version "5.0.3" + resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109" + integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== + +"@types/prettier@^2.0.0": + version "2.2.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.2.3.tgz#ef65165aea2924c9359205bf748865b8881753c0" + integrity sha512-PijRCG/K3s3w1We6ynUKdxEc5AcuuH3NBmMDP8uvKVp6X43UY7NQlTzczakXP3DJR0F4dfNQIGjU2cUeRYs2AA== + +"@types/pug@^2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@types/pug/-/pug-2.0.4.tgz#8772fcd0418e3cd2cc171555d73007415051f4b2" + integrity sha1-h3L80EGOPNLMFxVV1zAHQVBR9LI= + +"@types/q@^1.5.1": + version "1.5.4" + resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" + integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== + +"@types/qs@*": + version "6.9.6" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1" + integrity sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA== + +"@types/range-parser@*": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" + integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== + +"@types/relateurl@*": + version "0.2.28" + resolved "https://registry.yarnpkg.com/@types/relateurl/-/relateurl-0.2.28.tgz#6bda7db8653fa62643f5ee69e9f69c11a392e3a6" + integrity sha1-a9p9uGU/piZD9e5p6facEaOS46Y= + +"@types/sass@^1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@types/sass/-/sass-1.16.0.tgz#b41ac1c17fa68ffb57d43e2360486ef526b3d57d" + integrity sha512-2XZovu4NwcqmtZtsBR5XYLw18T8cBCnU2USFHTnYLLHz9fkhnoEMoDsqShJIOFsFhn5aJHjweiUUdTrDGujegA== + dependencies: + "@types/node" "*" + +"@types/serve-static@*", "@types/serve-static@^1.13.9": + version "1.13.9" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.9.tgz#aacf28a85a05ee29a11fb7c3ead935ac56f33e4e" + integrity sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA== + dependencies: + "@types/mime" "^1" + "@types/node" "*" + +"@types/source-list-map@*": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" + integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== + +"@types/stack-utils@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.0.tgz#7036640b4e21cc2f259ae826ce843d277dad8cff" + integrity sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw== + +"@types/strip-bom@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/strip-bom/-/strip-bom-3.0.0.tgz#14a8ec3956c2e81edb7520790aecf21c290aebd2" + integrity sha1-FKjsOVbC6B7bdSB5CuzyHCkK69I= + +"@types/strip-json-comments@0.0.30": + version "0.0.30" + resolved "https://registry.yarnpkg.com/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz#9aa30c04db212a9a0649d6ae6fd50accc40748a1" + integrity sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ== + +"@types/tapable@*", "@types/tapable@^1.0.5": + version "1.0.6" + resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74" + integrity sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA== + +"@types/terser-webpack-plugin@^4.2.0": + version "4.2.0" + resolved "https://registry.yarnpkg.com/@types/terser-webpack-plugin/-/terser-webpack-plugin-4.2.0.tgz#fe39917d334287c5cf25abcf370867a31ed59cd6" + integrity sha512-oGfGZzjwKY7s8gAYLZJuVuu9GXuc/ACo7bL/DQg7ROFkEMFQULB1W7qZjQrTXf2SkTfQx7/zcerfuLkUCVFGhg== + dependencies: + "@types/webpack" "*" + terser "^4.6.13" + +"@types/uglify-js@*": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.13.0.tgz#1cad8df1fb0b143c5aba08de5712ea9d1ff71124" + integrity sha512-EGkrJD5Uy+Pg0NUR8uA4bJ5WMfljyad0G+784vLCNUkD+QwOJXUbBYExXfVGf7YtyzdQp3L/XMYcliB987kL5Q== + dependencies: + source-map "^0.6.1" + +"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" + integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== + +"@types/webpack-bundle-analyzer@^3.9.1": + version "3.9.1" + resolved "https://registry.yarnpkg.com/@types/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.9.1.tgz#27a8923a4e71c13ac5f043f34f12136d8c99cf8e" + integrity sha512-AmRIHpxByb9Hm7AZE1Ya0v6/Ek9t6MKBl/7l7ay+WeFqE6dedOJFL/7OuUzFxjUA+iDUM71yRNrzrkkq4pmX2A== + dependencies: + "@types/webpack" "*" + +"@types/webpack-dev-middleware@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@types/webpack-dev-middleware/-/webpack-dev-middleware-4.1.0.tgz#3bf432f2ff2313b6470af21b748dd5d73dba5ec6" + integrity sha512-cG/RhZcpAmVCQi7sGMc7bFyYGA2Yzu/+pWxTJezs7z2asjGZJ7j+0/+t39AuxQQbEuABWgYAwolg/DysGEcLyA== + dependencies: + "@types/connect" "*" + "@types/webpack" "*" + +"@types/webpack-hot-middleware@^2.25.3": + version "2.25.3" + resolved "https://registry.yarnpkg.com/@types/webpack-hot-middleware/-/webpack-hot-middleware-2.25.3.tgz#ba6265ada359cae4f437d8ac08ac5b8c616f7521" + integrity sha512-zGkTzrwQnhSadIXGYGZLu7tpXQwn4+6y9nGeql+5UeRtW/k54Jp4SnzB0Qw00ednw0ZFoZOvqTFfXSbFXohc5Q== + dependencies: + "@types/connect" "*" + "@types/webpack" "*" + +"@types/webpack-sources@*": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-2.1.0.tgz#8882b0bd62d1e0ce62f183d0d01b72e6e82e8c10" + integrity sha512-LXn/oYIpBeucgP1EIJbKQ2/4ZmpvRl+dlrFdX7+94SKRUV3Evy3FsfMZY318vGhkWUS5MPhtOM3w1/hCOAOXcg== + dependencies: + "@types/node" "*" + "@types/source-list-map" "*" + source-map "^0.7.3" + +"@types/webpack@*", "@types/webpack@^4.41.26", "@types/webpack@^4.41.8": + version "4.41.26" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.26.tgz#27a30d7d531e16489f9c7607c747be6bc1a459ef" + integrity sha512-7ZyTfxjCRwexh+EJFwRUM+CDB2XvgHl4vfuqf1ZKrgGvcS5BrNvPQqJh3tsZ0P6h6Aa1qClVHaJZszLPzpqHeA== + dependencies: + "@types/anymatch" "*" + "@types/node" "*" + "@types/tapable" "*" + "@types/uglify-js" "*" + "@types/webpack-sources" "*" + source-map "^0.6.0" + +"@types/xml2js@^0.4.8": + version "0.4.8" + resolved "https://registry.yarnpkg.com/@types/xml2js/-/xml2js-0.4.8.tgz#84c120c864a5976d0b5cf2f930a75d850fc2b03a" + integrity sha512-EyvT83ezOdec7BhDaEcsklWy7RSIdi6CNe95tmOAK0yx/Lm30C9K75snT3fYayK59ApC2oyW+rcHErdG05FHJA== + dependencies: + "@types/node" "*" + +"@types/yargs-parser@*": + version "20.2.0" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.0.tgz#dd3e6699ba3237f0348cd085e4698780204842f9" + integrity sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA== + +"@types/yargs@^15.0.0": + version "15.0.13" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.13.tgz#34f7fec8b389d7f3c1fd08026a5763e072d3c6dc" + integrity sha512-kQ5JNTrbDv3Rp5X2n/iUu37IJBDU2gsZ5R/g1/KHOOEc5IKfUFjXT6DENPGduh08I/pamwtEq4oul7gUqKTQDQ== + dependencies: + "@types/yargs-parser" "*" + +"@typescript-eslint/eslint-plugin@^4.16.1": + version "4.19.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.19.0.tgz#56f8da9ee118fe9763af34d6a526967234f6a7f0" + integrity sha512-CRQNQ0mC2Pa7VLwKFbrGVTArfdVDdefS+gTw0oC98vSI98IX5A8EVH4BzJ2FOB0YlCmm8Im36Elad/Jgtvveaw== + dependencies: + "@typescript-eslint/experimental-utils" "4.19.0" + "@typescript-eslint/scope-manager" "4.19.0" + debug "^4.1.1" + functional-red-black-tree "^1.0.1" + lodash "^4.17.15" + regexpp "^3.0.0" + semver "^7.3.2" + tsutils "^3.17.1" + +"@typescript-eslint/experimental-utils@4.19.0", "@typescript-eslint/experimental-utils@^4.0.1": + version "4.19.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.19.0.tgz#9ca379919906dc72cb0fcd817d6cb5aa2d2054c6" + integrity sha512-9/23F1nnyzbHKuoTqFN1iXwN3bvOm/PRIXSBR3qFAYotK/0LveEOHr5JT1WZSzcD6BESl8kPOG3OoDRKO84bHA== + dependencies: + "@types/json-schema" "^7.0.3" + "@typescript-eslint/scope-manager" "4.19.0" + "@typescript-eslint/types" "4.19.0" + "@typescript-eslint/typescript-estree" "4.19.0" + eslint-scope "^5.0.0" + eslint-utils "^2.0.0" + +"@typescript-eslint/parser@^4.16.1": + version "4.19.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.19.0.tgz#4ae77513b39f164f1751f21f348d2e6cb2d11128" + integrity sha512-/uabZjo2ZZhm66rdAu21HA8nQebl3lAIDcybUoOxoI7VbZBYavLIwtOOmykKCJy+Xq6Vw6ugkiwn8Js7D6wieA== + dependencies: + "@typescript-eslint/scope-manager" "4.19.0" + "@typescript-eslint/types" "4.19.0" + "@typescript-eslint/typescript-estree" "4.19.0" + debug "^4.1.1" + +"@typescript-eslint/scope-manager@4.19.0": + version "4.19.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.19.0.tgz#5e0b49eca4df7684205d957c9856f4e720717a4f" + integrity sha512-GGy4Ba/hLXwJXygkXqMzduqOMc+Na6LrJTZXJWVhRrSuZeXmu8TAnniQVKgj8uTRKe4igO2ysYzH+Np879G75g== + dependencies: + "@typescript-eslint/types" "4.19.0" + "@typescript-eslint/visitor-keys" "4.19.0" + +"@typescript-eslint/types@4.19.0": + version "4.19.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.19.0.tgz#5181d5d2afd02e5b8f149ebb37ffc8bd7b07a568" + integrity sha512-A4iAlexVvd4IBsSTNxdvdepW0D4uR/fwxDrKUa+iEY9UWvGREu2ZyB8ylTENM1SH8F7bVC9ac9+si3LWNxcBuA== + +"@typescript-eslint/typescript-estree@4.19.0": + version "4.19.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.19.0.tgz#8a709ffa400284ab72df33376df085e2e2f61147" + integrity sha512-3xqArJ/A62smaQYRv2ZFyTA+XxGGWmlDYrsfZG68zJeNbeqRScnhf81rUVa6QG4UgzHnXw5VnMT5cg75dQGDkA== + dependencies: + "@typescript-eslint/types" "4.19.0" + "@typescript-eslint/visitor-keys" "4.19.0" + debug "^4.1.1" + globby "^11.0.1" + is-glob "^4.0.1" + semver "^7.3.2" + tsutils "^3.17.1" + +"@typescript-eslint/visitor-keys@4.19.0": + version "4.19.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.19.0.tgz#cbea35109cbd9b26e597644556be4546465d8f7f" + integrity sha512-aGPS6kz//j7XLSlgpzU2SeTqHPsmRYxFztj2vPuMMFJXZudpRSehE3WCV+BaxwZFvfAqMoSd86TEuM0PQ59E/A== + dependencies: + "@typescript-eslint/types" "4.19.0" + eslint-visitor-keys "^2.0.0" + +"@vue/babel-helper-vue-jsx-merge-props@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.2.1.tgz#31624a7a505fb14da1d58023725a4c5f270e6a81" + integrity sha512-QOi5OW45e2R20VygMSNhyQHvpdUwQZqGPc748JLGCYEy+yp8fNFNdbNIGAgZmi9e+2JHPd6i6idRuqivyicIkA== + +"@vue/babel-plugin-transform-vue-jsx@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@vue/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-1.2.1.tgz#646046c652c2f0242727f34519d917b064041ed7" + integrity sha512-HJuqwACYehQwh1fNT8f4kyzqlNMpBuUK4rSiSES5D4QsYncv5fxFsLyrxFPG2ksO7t5WP+Vgix6tt6yKClwPzA== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.2.0" + "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" + html-tags "^2.0.0" + lodash.kebabcase "^4.1.1" + svg-tags "^1.0.0" + +"@vue/babel-preset-jsx@^1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@vue/babel-preset-jsx/-/babel-preset-jsx-1.2.4.tgz#92fea79db6f13b01e80d3a0099e2924bdcbe4e87" + integrity sha512-oRVnmN2a77bYDJzeGSt92AuHXbkIxbf/XXSE3klINnh9AXBmVS1DGa1f0d+dDYpLfsAKElMnqKTQfKn7obcL4w== + dependencies: + "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" + "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" + "@vue/babel-sugar-composition-api-inject-h" "^1.2.1" + "@vue/babel-sugar-composition-api-render-instance" "^1.2.4" + "@vue/babel-sugar-functional-vue" "^1.2.2" + "@vue/babel-sugar-inject-h" "^1.2.2" + "@vue/babel-sugar-v-model" "^1.2.3" + "@vue/babel-sugar-v-on" "^1.2.3" + +"@vue/babel-sugar-composition-api-inject-h@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-composition-api-inject-h/-/babel-sugar-composition-api-inject-h-1.2.1.tgz#05d6e0c432710e37582b2be9a6049b689b6f03eb" + integrity sha512-4B3L5Z2G+7s+9Bwbf+zPIifkFNcKth7fQwekVbnOA3cr3Pq71q71goWr97sk4/yyzH8phfe5ODVzEjX7HU7ItQ== + dependencies: + "@babel/plugin-syntax-jsx" "^7.2.0" + +"@vue/babel-sugar-composition-api-render-instance@^1.2.4": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-composition-api-render-instance/-/babel-sugar-composition-api-render-instance-1.2.4.tgz#e4cbc6997c344fac271785ad7a29325c51d68d19" + integrity sha512-joha4PZznQMsxQYXtR3MnTgCASC9u3zt9KfBxIeuI5g2gscpTsSKRDzWQt4aqNIpx6cv8On7/m6zmmovlNsG7Q== + dependencies: + "@babel/plugin-syntax-jsx" "^7.2.0" + +"@vue/babel-sugar-functional-vue@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-functional-vue/-/babel-sugar-functional-vue-1.2.2.tgz#267a9ac8d787c96edbf03ce3f392c49da9bd2658" + integrity sha512-JvbgGn1bjCLByIAU1VOoepHQ1vFsroSA/QkzdiSs657V79q6OwEWLCQtQnEXD/rLTA8rRit4rMOhFpbjRFm82w== + dependencies: + "@babel/plugin-syntax-jsx" "^7.2.0" + +"@vue/babel-sugar-inject-h@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-inject-h/-/babel-sugar-inject-h-1.2.2.tgz#d738d3c893367ec8491dcbb669b000919293e3aa" + integrity sha512-y8vTo00oRkzQTgufeotjCLPAvlhnpSkcHFEp60+LJUwygGcd5Chrpn5480AQp/thrxVm8m2ifAk0LyFel9oCnw== + dependencies: + "@babel/plugin-syntax-jsx" "^7.2.0" + +"@vue/babel-sugar-v-model@^1.2.3": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-v-model/-/babel-sugar-v-model-1.2.3.tgz#fa1f29ba51ebf0aa1a6c35fa66d539bc459a18f2" + integrity sha512-A2jxx87mySr/ulAsSSyYE8un6SIH0NWHiLaCWpodPCVOlQVODCaSpiR4+IMsmBr73haG+oeCuSvMOM+ttWUqRQ== + dependencies: + "@babel/plugin-syntax-jsx" "^7.2.0" + "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" + "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" + camelcase "^5.0.0" + html-tags "^2.0.0" + svg-tags "^1.0.0" + +"@vue/babel-sugar-v-on@^1.2.3": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-v-on/-/babel-sugar-v-on-1.2.3.tgz#342367178586a69f392f04bfba32021d02913ada" + integrity sha512-kt12VJdz/37D3N3eglBywV8GStKNUhNrsxChXIV+o0MwVXORYuhDTHJRKPgLJRb/EY3vM2aRFQdxJBp9CLikjw== + dependencies: + "@babel/plugin-syntax-jsx" "^7.2.0" + "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" + camelcase "^5.0.0" + +"@vue/component-compiler-utils@^3.1.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-3.2.0.tgz#8f85182ceed28e9b3c75313de669f83166d11e5d" + integrity sha512-lejBLa7xAMsfiZfNp7Kv51zOzifnb29FwdnMLa96z26kXErPFioSf9BMcePVIQ6/Gc6/mC0UrPpxAWIHyae0vw== + dependencies: + consolidate "^0.15.1" + hash-sum "^1.0.2" + lru-cache "^4.1.2" + merge-source-map "^1.1.0" + postcss "^7.0.14" + postcss-selector-parser "^6.0.2" + source-map "~0.6.1" + vue-template-es2015-compiler "^1.9.0" + optionalDependencies: + prettier "^1.18.2" + +"@vue/test-utils@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@vue/test-utils/-/test-utils-1.1.3.tgz#747f5683d8d4633c85a385fe2e02c1bb35bec153" + integrity sha512-BAY1Cwe9JpkJseimC295EW3YlAmgIJI9OPkg2FSP62+PHZooB0B+wceDi9TYyU57oqzL0yLbcP73JKFpKiLc9A== + dependencies: + dom-event-types "^1.0.0" + lodash "^4.17.15" + pretty "^2.0.0" + +"@webassemblyjs/ast@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" + integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== + dependencies: + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/wast-parser" "1.9.0" + +"@webassemblyjs/floating-point-hex-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" + integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== + +"@webassemblyjs/helper-api-error@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" + integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== + +"@webassemblyjs/helper-buffer@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" + integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== + +"@webassemblyjs/helper-code-frame@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" + integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== + dependencies: + "@webassemblyjs/wast-printer" "1.9.0" + +"@webassemblyjs/helper-fsm@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" + integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== + +"@webassemblyjs/helper-module-context@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" + integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== + dependencies: + "@webassemblyjs/ast" "1.9.0" + +"@webassemblyjs/helper-wasm-bytecode@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" + integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== + +"@webassemblyjs/helper-wasm-section@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" + integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + +"@webassemblyjs/ieee754@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" + integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== + dependencies: + "@xtuc/ieee754" "^1.2.0" + +"@webassemblyjs/leb128@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" + integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== + dependencies: + "@xtuc/long" "4.2.2" + +"@webassemblyjs/utf8@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" + integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== + +"@webassemblyjs/wasm-edit@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" + integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/helper-wasm-section" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + "@webassemblyjs/wasm-opt" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + "@webassemblyjs/wast-printer" "1.9.0" + +"@webassemblyjs/wasm-gen@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" + integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/ieee754" "1.9.0" + "@webassemblyjs/leb128" "1.9.0" + "@webassemblyjs/utf8" "1.9.0" + +"@webassemblyjs/wasm-opt@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" + integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + +"@webassemblyjs/wasm-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" + integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-api-error" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/ieee754" "1.9.0" + "@webassemblyjs/leb128" "1.9.0" + "@webassemblyjs/utf8" "1.9.0" + +"@webassemblyjs/wast-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" + integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/floating-point-hex-parser" "1.9.0" + "@webassemblyjs/helper-api-error" "1.9.0" + "@webassemblyjs/helper-code-frame" "1.9.0" + "@webassemblyjs/helper-fsm" "1.9.0" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/wast-printer@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" + integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/wast-parser" "1.9.0" + "@xtuc/long" "4.2.2" + +"@xtuc/ieee754@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== + +"@xtuc/long@4.2.2": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== + +abab@^2.0.3, abab@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" + integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== + +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + +accepts@^1.3.5, accepts@~1.3.5: + version "1.3.7" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" + integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== + dependencies: + mime-types "~2.1.24" + negotiator "0.6.2" + +acorn-globals@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" + integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== + dependencies: + acorn "^7.1.1" + acorn-walk "^7.1.1" + +acorn-jsx@^5.2.0, acorn-jsx@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" + integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== + +acorn-node@^1.6.1: + version "1.8.2" + resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8" + integrity sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== + dependencies: + acorn "^7.0.0" + acorn-walk "^7.0.0" + xtend "^4.0.2" + +acorn-walk@^7.0.0, acorn-walk@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + +acorn-walk@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.0.2.tgz#d4632bfc63fd93d0f15fd05ea0e984ffd3f5a8c3" + integrity sha512-+bpA9MJsHdZ4bgfDcpk0ozQyhhVct7rzOmO0s1IIr0AGGgKBljss8n2zp11rRP2wid5VGeh04CgeKzgat5/25A== + +acorn@^6.4.1: + version "6.4.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" + integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== + +acorn@^7.0.0, acorn@^7.1.1, acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +acorn@^8.0.4, acorn@^8.0.5: + version "8.1.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.1.0.tgz#52311fd7037ae119cbb134309e901aa46295b3fe" + integrity sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA== + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + +ajv-errors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" + integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== + +ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== + +ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ajv@^7.0.2: + version "7.2.3" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-7.2.3.tgz#ca78d1cf458d7d36d1c3fa0794dd143406db5772" + integrity sha512-idv5WZvKVXDqKralOImQgPM9v6WOdLNa0IY3B3doOjw/YxRGT8I+allIJ6kd7Uaj+SF1xZUSU+nPM5aDNBVtnw== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +alphanum-sort@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" + integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= + +ansi-align@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" + integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== + dependencies: + string-width "^3.0.0" + +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-escapes@^4.2.1: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-html@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" + integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +any-promise@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +anymatch@^3.0.3, anymatch@~3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" + integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +aproba@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== + +arg@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.0.tgz#a20e2bb5710e82950a516b3f933fee5ed478be90" + integrity sha512-4P8Zm2H+BRS+c/xX1LrHw0qKpEhdlZjLCgWy+d78T9vqa2Z2SiD2wMrYuWIAFy5IZUD7nnNXroRttz+0RzlrzQ== + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + +array-includes@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.3.tgz#c7f619b382ad2afaf5326cddfdc0afc61af7690a" + integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.2" + get-intrinsic "^1.1.1" + is-string "^1.0.5" + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + +array.prototype.flat@^1.2.3: + version "1.2.4" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz#6ef638b43312bd401b4c6199fdec7e2dc9e9a123" + integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + +arrify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" + integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== + +asn1.js@^5.2.0: + version "5.4.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" + integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + safer-buffer "^2.1.0" + +asn1@~0.2.3: + version "0.2.4" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" + integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== + dependencies: + safer-buffer "~2.1.0" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + +assert@^1.1.1: + version "1.5.0" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" + integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA== + dependencies: + object-assign "^4.1.1" + util "0.10.3" + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +async-each@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" + integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== + +async@^2.6.2: + version "2.6.3" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" + integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== + dependencies: + lodash "^4.17.14" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + +at-least-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + +autoprefixer@^10.2.5: + version "10.2.5" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.2.5.tgz#096a0337dbc96c0873526d7fef5de4428d05382d" + integrity sha512-7H4AJZXvSsn62SqZyJCP+1AWwOuoYpUfK6ot9vm0e87XD6mT8lDywc9D9OTJPMULyGcvmIxzTAMeG2Cc+YX+fA== + dependencies: + browserslist "^4.16.3" + caniuse-lite "^1.0.30001196" + colorette "^1.2.2" + fraction.js "^4.0.13" + normalize-range "^0.1.2" + postcss-value-parser "^4.1.0" + +autoprefixer@^9, autoprefixer@^9.6.1: + version "9.8.6" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.6.tgz#3b73594ca1bf9266320c5acf1588d74dea74210f" + integrity sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg== + dependencies: + browserslist "^4.12.0" + caniuse-lite "^1.0.30001109" + colorette "^1.2.1" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^7.0.32" + postcss-value-parser "^4.1.0" + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + +aws4@^1.8.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" + integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== + +axios-retry@^3.1.9: + version "3.1.9" + resolved "https://registry.yarnpkg.com/axios-retry/-/axios-retry-3.1.9.tgz#6c30fc9aeb4519aebaec758b90ef56fa03fe72e8" + integrity sha512-NFCoNIHq8lYkJa6ku4m+V1837TP6lCa7n79Iuf8/AqATAHYB0ISaAS1eyIenDOfHOLtym34W65Sjke2xjg2fsA== + dependencies: + is-retry-allowed "^1.1.0" + +axios@^0.21.1: + version "0.21.1" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8" + integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA== + dependencies: + follow-redirects "^1.10.0" + +babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= + dependencies: + chalk "^1.1.3" + esutils "^2.0.2" + js-tokens "^3.0.2" + +babel-core@7.0.0-bridge.0: + version "7.0.0-bridge.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" + integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== + +babel-eslint@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232" + integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.7.0" + "@babel/traverse" "^7.7.0" + "@babel/types" "^7.7.0" + eslint-visitor-keys "^1.0.0" + resolve "^1.12.0" + +babel-jest@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" + integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== + dependencies: + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/babel__core" "^7.1.7" + babel-plugin-istanbul "^6.0.0" + babel-preset-jest "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + slash "^3.0.0" + +babel-loader@^8.2.2: + version "8.2.2" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.2.tgz#9363ce84c10c9a40e6c753748e1441b60c8a0b81" + integrity sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g== + dependencies: + find-cache-dir "^3.3.1" + loader-utils "^1.4.0" + make-dir "^3.1.0" + schema-utils "^2.6.5" + +babel-messages@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" + integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-dynamic-import-node@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" + integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== + dependencies: + object.assign "^4.1.0" + +babel-plugin-istanbul@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765" + integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^4.0.0" + test-exclude "^6.0.0" + +babel-plugin-jest-hoist@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" + integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" + "@types/babel__traverse" "^7.0.6" + +babel-plugin-polyfill-corejs2@^0.1.4: + version "0.1.10" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.1.10.tgz#a2c5c245f56c0cac3dbddbf0726a46b24f0f81d1" + integrity sha512-DO95wD4g0A8KRaHKi0D51NdGXzvpqVLnLu5BTvDlpqUEpTmeEtypgC1xqesORaWmiUOQI14UHKlzNd9iZ2G3ZA== + dependencies: + "@babel/compat-data" "^7.13.0" + "@babel/helper-define-polyfill-provider" "^0.1.5" + semver "^6.1.1" + +babel-plugin-polyfill-corejs3@^0.1.3: + version "0.1.7" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.7.tgz#80449d9d6f2274912e05d9e182b54816904befd0" + integrity sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.1.5" + core-js-compat "^3.8.1" + +babel-plugin-polyfill-regenerator@^0.1.2: + version "0.1.6" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.1.6.tgz#0fe06a026fe0faa628ccc8ba3302da0a6ce02f3f" + integrity sha512-OUrYG9iKPKz8NxswXbRAdSwF0GhRdIEMTloQATJi4bDuFqrXaXcCUT/VGNrr8pBcjMh1RxZ7Xt9cytVJTJfvMg== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.1.5" + +babel-plugin-transform-es2015-modules-commonjs@^6.26.0: + version "6.26.2" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3" + integrity sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q== + dependencies: + babel-plugin-transform-strict-mode "^6.24.1" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-types "^6.26.0" + +babel-plugin-transform-strict-mode@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" + integrity sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-preset-current-node-syntax@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + dependencies: + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-bigint" "^7.8.3" + "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + +babel-preset-jest@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" + integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== + dependencies: + babel-plugin-jest-hoist "^26.6.2" + babel-preset-current-node-syntax "^1.0.0" + +babel-runtime@^6.22.0, babel-runtime@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + +babel-template@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" + integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= + dependencies: + babel-runtime "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + lodash "^4.17.4" + +babel-traverse@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" + integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= + dependencies: + babel-code-frame "^6.26.0" + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + debug "^2.6.8" + globals "^9.18.0" + invariant "^2.2.2" + lodash "^4.17.4" + +babel-types@^6.24.1, babel-types@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= + dependencies: + babel-runtime "^6.26.0" + esutils "^2.0.2" + lodash "^4.17.4" + to-fast-properties "^1.0.3" + +babylon@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== + +bail@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" + integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= + +base64-js@^1.0.2, base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + dependencies: + tweetnacl "^0.14.3" + +big.js@^5.2.2: + version "5.2.2" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== + +binary-extensions@^1.0.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" + integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +bindings@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== + dependencies: + file-uri-to-path "1.0.0" + +bluebird@^3.1.1, bluebird@^3.5.1, bluebird@^3.5.5: + version "3.7.2" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== + +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.0.0, bn.js@^5.1.1: + version "5.2.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" + integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== + +boolbase@^1.0.0, boolbase@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= + +boxen@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.0.0.tgz#64fe9b16066af815f51057adcc800c3730120854" + integrity sha512-5bvsqw+hhgUi3oYGK0Vf4WpIkyemp60WBInn7+WNfoISzAqk/HX4L7WNROq38E6UR/y3YADpv6pEm4BfkeEAdA== + dependencies: + ansi-align "^3.0.0" + camelcase "^6.2.0" + chalk "^4.1.0" + cli-boxes "^2.2.1" + string-width "^4.2.0" + type-fest "^0.20.2" + widest-line "^3.1.0" + wrap-ansi "^7.0.0" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^2.3.1, braces@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +braces@^3.0.1, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +brorand@^1.0.1, brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= + +browser-process-hrtime@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" + integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== + +browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.2.0" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +browserify-cipher@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" + integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + +browserify-des@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" + integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" + integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== + dependencies: + bn.js "^5.0.0" + randombytes "^2.0.1" + +browserify-sign@^4.0.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" + integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== + dependencies: + bn.js "^5.1.1" + browserify-rsa "^4.0.1" + create-hash "^1.2.0" + create-hmac "^1.1.7" + elliptic "^6.5.3" + inherits "^2.0.4" + parse-asn1 "^5.1.5" + readable-stream "^3.6.0" + safe-buffer "^5.2.0" + +browserify-zlib@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" + integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== + dependencies: + pako "~1.0.5" + +browserslist@*, browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.3, browserslist@^4.6.4: + version "4.16.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.3.tgz#340aa46940d7db878748567c5dea24a48ddf3717" + integrity sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw== + dependencies: + caniuse-lite "^1.0.30001181" + colorette "^1.2.1" + electron-to-chromium "^1.3.649" + escalade "^3.1.1" + node-releases "^1.1.70" + +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + +bser@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== + dependencies: + node-int64 "^0.4.0" + +buffer-from@1.x, buffer-from@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + +buffer-json@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/buffer-json/-/buffer-json-2.0.0.tgz#f73e13b1e42f196fe2fd67d001c7d7107edd7c23" + integrity sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw== + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= + +buffer@^4.3.0: + version "4.9.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + +buffer@^5.1.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= + +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= + +bytes@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" + integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== + +cacache@^12.0.2: + version "12.0.4" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" + integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== + dependencies: + bluebird "^3.5.5" + chownr "^1.1.1" + figgy-pudding "^3.5.1" + glob "^7.1.4" + graceful-fs "^4.1.15" + infer-owner "^1.0.3" + lru-cache "^5.1.1" + mississippi "^3.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.3" + ssri "^6.0.1" + unique-filename "^1.1.1" + y18n "^4.0.0" + +cacache@^15.0.5: + version "15.0.6" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.6.tgz#65a8c580fda15b59150fb76bf3f3a8e45d583099" + integrity sha512-g1WYDMct/jzW+JdWEyjaX2zoBkZ6ZT9VpOyp2I/VMtDsNLffNat3kqPFfi1eDRSK9/SuKGyORDHcQMcPF8sQ/w== + dependencies: + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^6.0.0" + minipass "^3.1.1" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^1.0.3" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^8.0.1" + tar "^6.0.2" + unique-filename "^1.1.1" + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + +cache-content-type@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-content-type/-/cache-content-type-1.0.1.tgz#035cde2b08ee2129f4a8315ea8f00a00dba1453c" + integrity sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA== + dependencies: + mime-types "^2.1.18" + ylru "^1.2.0" + +cache-loader@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-4.1.0.tgz#9948cae353aec0a1fcb1eafda2300816ec85387e" + integrity sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw== + dependencies: + buffer-json "^2.0.0" + find-cache-dir "^3.0.0" + loader-utils "^1.2.3" + mkdirp "^0.5.1" + neo-async "^2.6.1" + schema-utils "^2.0.0" + +call-bind@^1.0.0, call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= + dependencies: + callsites "^2.0.0" + +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= + dependencies: + caller-callsite "^2.0.0" + +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + +callsites@^3.0.0, callsites@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camel-case@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" + integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= + dependencies: + no-case "^2.2.0" + upper-case "^1.1.1" + +camel-case@^4.1.1, camel-case@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== + dependencies: + pascal-case "^3.1.2" + tslib "^2.0.3" + +camelcase-css@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" + integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== + +camelcase@^5.0.0, camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +camelcase@^6.0.0, camelcase@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" + integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== + +caniuse-api@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" + integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== + dependencies: + browserslist "^4.0.0" + caniuse-lite "^1.0.0" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" + +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001181, caniuse-lite@^1.0.30001196, caniuse-lite@^1.0.30001198: + version "1.0.30001204" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz#256c85709a348ec4d175e847a3b515c66e79f2aa" + integrity sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ== + +capital-case@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/capital-case/-/capital-case-1.0.4.tgz#9d130292353c9249f6b00fa5852bee38a717e669" + integrity sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case-first "^2.0.2" + +capture-exit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" + integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== + dependencies: + rsvp "^4.8.4" + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + +ccount@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" + integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== + +chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0, chalk@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +change-case@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/change-case/-/change-case-4.1.2.tgz#fedfc5f136045e2398c0410ee441f95704641e12" + integrity sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A== + dependencies: + camel-case "^4.1.2" + capital-case "^1.0.4" + constant-case "^3.0.4" + dot-case "^3.0.4" + header-case "^2.0.4" + no-case "^3.0.4" + param-case "^3.0.4" + pascal-case "^3.1.2" + path-case "^3.0.4" + sentence-case "^3.0.4" + snake-case "^3.0.4" + tslib "^2.0.3" + +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== + +character-entities-legacy@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" + integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== + +character-entities@^1.0.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" + integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== + +character-reference-invalid@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" + integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== + +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== + +chokidar@^2.1.8: + version "2.1.8" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" + integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== + dependencies: + anymatch "^2.0.0" + async-each "^1.0.1" + braces "^2.3.2" + glob-parent "^3.1.0" + inherits "^2.0.3" + is-binary-path "^1.0.0" + is-glob "^4.0.0" + normalize-path "^3.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.2.1" + upath "^1.1.1" + optionalDependencies: + fsevents "^1.2.7" + +chokidar@^3.4.1, chokidar@^3.4.2, chokidar@^3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.3.1" + +chownr@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== + +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + +chrome-trace-event@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" + integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ== + dependencies: + tslib "^1.9.0" + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +ci-info@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.1.1.tgz#9a32fcefdf7bcdb6f0a7e1c0f8098ec57897b80a" + integrity sha512-kdRWLBIJwdsYJWYJFtAFFYxybguqeF91qpZaggjG5Nf8QKdizFG2hjqvaTXbxFIcYbSaD74KpAXv6BSm17DHEQ== + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +cjs-module-lexer@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" + integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +clean-css@^4.2.1, clean-css@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" + integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA== + dependencies: + source-map "~0.6.0" + +clean-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/clean-regexp/-/clean-regexp-1.0.0.tgz#8df7c7aae51fd36874e8f8d05b9180bc11a3fed7" + integrity sha1-jffHquUf02h06PjQW5GAvBGj/tc= + dependencies: + escape-string-regexp "^1.0.5" + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +clear-module@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/clear-module/-/clear-module-4.1.1.tgz#bf8ba3b62eb70ee1e0adec90589741425cf32db8" + integrity sha512-ng0E7LeODcT3QkazOckzZqbca+JByQy/Q2Z6qO24YsTp+pLxCfohGz2gJYJqZS0CWTX3LEUiHOqe5KlYeUbEMw== + dependencies: + parent-module "^2.0.0" + resolve-from "^5.0.0" + +cli-boxes@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" + integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== + +cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== + dependencies: + restore-cursor "^3.1.0" + +cli-width@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" + integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== + +clipboard@^2.0.0: + version "2.0.8" + resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.8.tgz#ffc6c103dd2967a83005f3f61976aa4655a4cdba" + integrity sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ== + dependencies: + good-listener "^1.2.2" + select "^1.1.2" + tiny-emitter "^2.0.0" + +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +clone-deep@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== + dependencies: + is-plain-object "^2.0.4" + kind-of "^6.0.2" + shallow-clone "^3.0.0" + +clone@2.x: + version "2.1.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= + +coa@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" + integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== + dependencies: + "@types/q" "^1.5.1" + chalk "^2.4.1" + q "^1.1.2" + +collect-v8-coverage@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0, color-convert@^1.9.1: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +color-string@^1.5.4: + version "1.5.5" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.5.tgz#65474a8f0e7439625f3d27a6a19d89fc45223014" + integrity sha512-jgIoum0OfQfq9Whcfc2z/VhCNcmQjWbey6qBX0vqt7YICflUmBCh9E9CiQD5GSJ+Uehixm3NUwHVhqUAWRivZg== + dependencies: + color-name "^1.0.0" + simple-swizzle "^0.2.2" + +color@^3.0.0, color@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/color/-/color-3.1.3.tgz#ca67fb4e7b97d611dcde39eceed422067d91596e" + integrity sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ== + dependencies: + color-convert "^1.9.1" + color-string "^1.5.4" + +colorette@^1.2.1, colorette@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" + integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== + +combined-stream@^1.0.6, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +comma-separated-tokens@^1.0.0: + version "1.0.8" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea" + integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== + +commander@^2.19.0, commander@^2.20.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commander@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" + integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== + +commander@^6.0.0, commander@^6.2.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= + +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + +compressible@~2.0.16: + version "2.0.18" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" + integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== + dependencies: + mime-db ">= 1.43.0 < 2" + +compression@^1.7.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== + dependencies: + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.16" + debug "2.6.9" + on-headers "~1.0.2" + safe-buffer "5.1.2" + vary "~1.1.2" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +concat-stream@^1.5.0: + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +condense-newlines@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/condense-newlines/-/condense-newlines-0.2.1.tgz#3de985553139475d32502c83b02f60684d24c55f" + integrity sha1-PemFVTE5R10yUCyDsC9gaE0kxV8= + dependencies: + extend-shallow "^2.0.1" + is-whitespace "^0.3.0" + kind-of "^3.0.2" + +config-chain@^1.1.12: + version "1.1.12" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" + integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + +connect@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/connect/-/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" + integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ== + dependencies: + debug "2.6.9" + finalhandler "1.1.2" + parseurl "~1.3.3" + utils-merge "1.0.1" + +consola@^2.10.0, consola@^2.15.0, consola@^2.15.3, consola@^2.6.0, consola@^2.9.0: + version "2.15.3" + resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" + integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== + +console-browserify@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" + integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== + +consolidate@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.15.1.tgz#21ab043235c71a07d45d9aad98593b0dba56bab7" + integrity sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw== + dependencies: + bluebird "^3.1.1" + +constant-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-3.0.4.tgz#3b84a9aeaf4cf31ec45e6bf5de91bdfb0589faf1" + integrity sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case "^2.0.2" + +constants-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= + +contains-path@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" + integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= + +content-disposition@~0.5.2: + version "0.5.3" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" + integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== + dependencies: + safe-buffer "5.1.2" + +content-type@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== + +convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" + integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== + dependencies: + safe-buffer "~5.1.1" + +cookie@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" + integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= + +cookie@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" + integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== + +cookies@~0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/cookies/-/cookies-0.8.0.tgz#1293ce4b391740a8406e3c9870e828c4b54f3f90" + integrity sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow== + dependencies: + depd "~2.0.0" + keygrip "~1.1.0" + +copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== + dependencies: + aproba "^1.1.1" + fs-write-stream-atomic "^1.0.8" + iferr "^0.1.5" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.0" + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + +core-js-compat@^3.8.1, core-js-compat@^3.9.0, core-js-compat@^3.9.1: + version "3.9.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.9.1.tgz#4e572acfe90aff69d76d8c37759d21a5c59bb455" + integrity sha512-jXAirMQxrkbiiLsCx9bQPJFA6llDadKMpYrBJQJ3/c4/vsPP/fAf29h24tviRlvwUL6AmY5CHLu2GvjuYviQqA== + dependencies: + browserslist "^4.16.3" + semver "7.0.0" + +core-js@^2.4.0, core-js@^2.6.5: + version "2.6.12" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" + integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== + +core-js@^3.9.1: + version "3.9.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.9.1.tgz#cec8de593db8eb2a85ffb0dbdeb312cb6e5460ae" + integrity sha512-gSjRvzkxQc1zjM/5paAmL4idJBFzuJoo+jDjF1tStYFMV2ERfD02HhahhCGXUyHxQRG4yFKVSdO6g62eoRMcDg== + +core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +cosmiconfig@^5.0.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" + integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.13.1" + parse-json "^4.0.0" + +cosmiconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" + integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.1.0" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.7.2" + +cosmiconfig@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3" + integrity sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + +crc@^3.8.0: + version "3.8.0" + resolved "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6" + integrity sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ== + dependencies: + buffer "^5.1.0" + +create-ecdh@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" + integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== + dependencies: + bn.js "^4.1.0" + elliptic "^6.5.3" + +create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + md5.js "^1.3.4" + ripemd160 "^2.0.1" + sha.js "^2.4.0" + +create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +create-require@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== + +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +crypto-browserify@^3.11.0: + version "3.12.0" + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" + integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== + dependencies: + browserify-cipher "^1.0.0" + browserify-sign "^4.0.0" + create-ecdh "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.0" + diffie-hellman "^5.0.0" + inherits "^2.0.1" + pbkdf2 "^3.0.3" + public-encrypt "^4.0.0" + randombytes "^2.0.0" + randomfill "^1.0.3" + +css-blank-pseudo@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz#dfdefd3254bf8a82027993674ccf35483bfcb3c5" + integrity sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w== + dependencies: + postcss "^7.0.5" + +css-color-names@0.0.4, css-color-names@^0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" + integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= + +css-declaration-sorter@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" + integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== + dependencies: + postcss "^7.0.1" + timsort "^0.3.0" + +css-has-pseudo@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz#3c642ab34ca242c59c41a125df9105841f6966ee" + integrity sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ== + dependencies: + postcss "^7.0.6" + postcss-selector-parser "^5.0.0-rc.4" + +css-loader@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.3.0.tgz#c888af64b2a5b2e85462c72c0f4a85c7e2e0821e" + integrity sha512-rdezjCjScIrsL8BSYszgT4s476IcNKt6yX69t0pHjJVnPUTDpn4WfIpDQTN3wCJvUvfsz/mFjuGOekf3PY3NUg== + dependencies: + camelcase "^6.0.0" + cssesc "^3.0.0" + icss-utils "^4.1.1" + loader-utils "^2.0.0" + postcss "^7.0.32" + postcss-modules-extract-imports "^2.0.0" + postcss-modules-local-by-default "^3.0.3" + postcss-modules-scope "^2.2.0" + postcss-modules-values "^3.0.0" + postcss-value-parser "^4.1.0" + schema-utils "^2.7.1" + semver "^7.3.2" + +css-loader@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.0.tgz#a9ecda190500863673ce4434033710404efbff00" + integrity sha512-MfRo2MjEeLXMlUkeUwN71Vx5oc6EJnx5UQ4Yi9iUtYQvrPtwLUucYptz0hc6n++kdNcyF5olYBS4vPjJDAcLkw== + dependencies: + camelcase "^6.2.0" + cssesc "^3.0.0" + icss-utils "^5.1.0" + loader-utils "^2.0.0" + postcss "^8.2.8" + postcss-modules-extract-imports "^3.0.0" + postcss-modules-local-by-default "^4.0.0" + postcss-modules-scope "^3.0.0" + postcss-modules-values "^4.0.0" + postcss-value-parser "^4.1.0" + schema-utils "^3.0.0" + semver "^7.3.4" + +css-prefers-color-scheme@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz#6f830a2714199d4f0d0d0bb8a27916ed65cff1f4" + integrity sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg== + dependencies: + postcss "^7.0.5" + +css-select-base-adapter@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" + integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== + +css-select@^2.0.0, css-select@^2.0.2: + version "2.1.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" + integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== + dependencies: + boolbase "^1.0.0" + css-what "^3.2.1" + domutils "^1.7.0" + nth-check "^1.0.2" + +css-tree@1.0.0-alpha.37: + version "1.0.0-alpha.37" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" + integrity sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg== + dependencies: + mdn-data "2.0.4" + source-map "^0.6.1" + +css-tree@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.2.tgz#9ae393b5dafd7dae8a622475caec78d3d8fbd7b5" + integrity sha512-wCoWush5Aeo48GLhfHPbmvZs59Z+M7k5+B1xDnXbdWNcEF423DoFdqSWE0PM5aNk5nI5cp1q7ms36zGApY/sKQ== + dependencies: + mdn-data "2.0.14" + source-map "^0.6.1" + +css-unit-converter@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.2.tgz#4c77f5a1954e6dbff60695ecb214e3270436ab21" + integrity sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA== + +css-what@^3.2.1: + version "3.4.2" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4" + integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== + +css@^2.1.0: + version "2.2.4" + resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929" + integrity sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw== + dependencies: + inherits "^2.0.3" + source-map "^0.6.1" + source-map-resolve "^0.5.2" + urix "^0.1.0" + +cssdb@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-4.4.0.tgz#3bf2f2a68c10f5c6a08abd92378331ee803cddb0" + integrity sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ== + +cssesc@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" + integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg== + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + +cssnano-preset-default@^4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76" + integrity sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA== + dependencies: + css-declaration-sorter "^4.0.1" + cssnano-util-raw-cache "^4.0.1" + postcss "^7.0.0" + postcss-calc "^7.0.1" + postcss-colormin "^4.0.3" + postcss-convert-values "^4.0.1" + postcss-discard-comments "^4.0.2" + postcss-discard-duplicates "^4.0.2" + postcss-discard-empty "^4.0.1" + postcss-discard-overridden "^4.0.1" + postcss-merge-longhand "^4.0.11" + postcss-merge-rules "^4.0.3" + postcss-minify-font-values "^4.0.2" + postcss-minify-gradients "^4.0.2" + postcss-minify-params "^4.0.2" + postcss-minify-selectors "^4.0.2" + postcss-normalize-charset "^4.0.1" + postcss-normalize-display-values "^4.0.2" + postcss-normalize-positions "^4.0.2" + postcss-normalize-repeat-style "^4.0.2" + postcss-normalize-string "^4.0.2" + postcss-normalize-timing-functions "^4.0.2" + postcss-normalize-unicode "^4.0.1" + postcss-normalize-url "^4.0.1" + postcss-normalize-whitespace "^4.0.2" + postcss-ordered-values "^4.1.2" + postcss-reduce-initial "^4.0.3" + postcss-reduce-transforms "^4.0.2" + postcss-svgo "^4.0.2" + postcss-unique-selectors "^4.0.1" + +cssnano-util-get-arguments@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" + integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= + +cssnano-util-get-match@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" + integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= + +cssnano-util-raw-cache@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" + integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== + dependencies: + postcss "^7.0.0" + +cssnano-util-same-parent@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" + integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== + +cssnano@^4.1.10: + version "4.1.10" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" + integrity sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ== + dependencies: + cosmiconfig "^5.0.0" + cssnano-preset-default "^4.0.7" + is-resolvable "^1.0.0" + postcss "^7.0.0" + +csso@^4.0.2: + version "4.2.0" + resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" + integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== + dependencies: + css-tree "^1.1.2" + +cssom@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== + +cssom@~0.3.6: + version "0.3.8" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== + +cssstyle@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== + dependencies: + cssom "~0.3.6" + +csvtojson@^2.0.10: + version "2.0.10" + resolved "https://registry.yarnpkg.com/csvtojson/-/csvtojson-2.0.10.tgz#11e7242cc630da54efce7958a45f443210357574" + integrity sha512-lUWFxGKyhraKCW8Qghz6Z0f2l/PqB1W3AO0HKJzGIQ5JRSlR651ekJDiGJbBT4sRNNv5ddnSGVEnsxP9XRCVpQ== + dependencies: + bluebird "^3.5.1" + lodash "^4.17.3" + strip-bom "^2.0.0" + +cuint@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cuint/-/cuint-0.2.2.tgz#408086d409550c2631155619e9fa7bcadc3b991b" + integrity sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs= + +cyclist@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" + integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + dependencies: + assert-plus "^1.0.0" + +data-urls@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== + dependencies: + abab "^2.0.3" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + +de-indent@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" + integrity sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0= + +deasync@^0.1.15: + version "0.1.21" + resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.21.tgz#bb11eabd4466c0d8776f0d82deb8a6126460d30f" + integrity sha512-kUmM8Y+PZpMpQ+B4AuOW9k2Pfx/mSupJtxOsLzmnHY2WqZUYRFccFn2RhzPAqt3Xb+sorK/badW2D4zNzqZz5w== + dependencies: + bindings "^1.5.0" + node-addon-api "^1.7.1" + +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@^3.1.0, debug@^3.1.1: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== + dependencies: + ms "2.1.2" + +debug@~3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + +decimal.js@^10.2.1: + version "10.2.1" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.1.tgz#238ae7b0f0c793d3e3cea410108b35a2c01426a3" + integrity sha512-KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw== + +decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= + +deep-equal@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= + +deep-is@^0.1.3, deep-is@~0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + +deepmerge@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" + integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== + +define-properties@^1.1.2, define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== + dependencies: + object-keys "^1.0.12" + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +defined@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" + integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= + +defu@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/defu/-/defu-2.0.4.tgz#09659a6e87a8fd7178be13bd43e9357ebf6d1c46" + integrity sha512-G9pEH1UUMxShy6syWk01VQSRVs3CDWtlxtZu7A+NyqjxaCA4gSlWAKDBx6QiUEKezqS8+DUlXLI14Fp05Hmpwg== + +defu@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/defu/-/defu-3.2.2.tgz#be20f4cc49b9805d54ee6b610658d53894942e97" + integrity sha512-8UWj5lNv7HD+kB0e9w77Z7TdQlbUYDVWqITLHNqFIn6khrNHv5WQo38Dcm1f6HeNyZf0U7UbPf6WeZDSdCzGDQ== + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + +delegate@^3.1.2: + version "3.2.0" + resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" + integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + +depd@^2.0.0, depd@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + +des.js@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" + integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA== + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +destr@^1.0.0, destr@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/destr/-/destr-1.1.0.tgz#2da6add6ba71e04fd0abfb1e642d4f6763235095" + integrity sha512-Ev/sqS5AzzDwlpor/5wFCDu0dYMQu/0x2D6XfAsQ0E7uQmamIgYJ6Dppo2T2EOFVkeVYWjc+PCLKaqZZ57qmLg== + +destroy@^1.0.4, destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= + +detab@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/detab/-/detab-2.0.4.tgz#b927892069aff405fbb9a186fe97a44a92a94b43" + integrity sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g== + dependencies: + repeat-string "^1.5.4" + +detect-indent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" + integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= + +detect-newline@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== + +detective@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/detective/-/detective-5.2.0.tgz#feb2a77e85b904ecdea459ad897cc90a99bd2a7b" + integrity sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg== + dependencies: + acorn-node "^1.6.1" + defined "^1.0.0" + minimist "^1.1.1" + +devalue@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/devalue/-/devalue-2.0.1.tgz#5d368f9adc0928e47b77eea53ca60d2f346f9762" + integrity sha512-I2TiqT5iWBEyB8GRfTDP0hiLZ0YeDJZ+upDxjBfOC2lebO5LezQMv7QvIUTzdb64jQyAKLf1AHADtGN+jw6v8Q== + +didyoumean@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.1.tgz#e92edfdada6537d484d73c0172fd1eba0c4976ff" + integrity sha1-6S7f2tplN9SE1zwBcv0eugxJdv8= + +diff-sequences@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" + integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== + +diffie-hellman@^5.0.0: + version "5.0.3" + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" + integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +dlv@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" + integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== + +doctrine@1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" + integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= + dependencies: + esutils "^2.0.2" + isarray "^1.0.0" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +dom-converter@^0.2: + version "0.2.0" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" + integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== + dependencies: + utila "~0.4" + +dom-event-types@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dom-event-types/-/dom-event-types-1.0.0.tgz#5830a0a29e1bf837fe50a70cd80a597232813cae" + integrity sha512-2G2Vwi2zXTHBGqXHsJ4+ak/iP0N8Ar+G8a7LiD2oup5o4sQWytwqqrZu/O6hIMV0KMID2PL69OhpshLO0n7UJQ== + +dom-serializer@0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" + integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== + dependencies: + domelementtype "^2.0.1" + entities "^2.0.0" + +domain-browser@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" + integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== + +domelementtype@1, domelementtype@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" + integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== + +domelementtype@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.1.0.tgz#a851c080a6d1c3d94344aed151d99f669edf585e" + integrity sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w== + +domexception@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== + dependencies: + webidl-conversions "^5.0.0" + +domhandler@^2.3.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" + integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== + dependencies: + domelementtype "1" + +domutils@^1.5.1, domutils@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" + integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== + dependencies: + dom-serializer "0" + domelementtype "1" + +dot-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + +dot-prop@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" + integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== + dependencies: + is-obj "^2.0.0" + +dotenv@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" + integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== + +duplexer@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== + +duplexify@^3.4.2, duplexify@^3.6.0: + version "3.7.1" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" + integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +editorconfig@^0.15.3: + version "0.15.3" + resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.15.3.tgz#bef84c4e75fb8dcb0ce5cee8efd51c15999befc5" + integrity sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g== + dependencies: + commander "^2.19.0" + lru-cache "^4.1.5" + semver "^5.6.0" + sigmund "^1.0.1" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + +electron-to-chromium@^1.3.649: + version "1.3.698" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.698.tgz#5de813960f23581a268718a0058683dffa15d221" + integrity sha512-VEXDzYblnlT+g8Q3gedwzgKOso1evkeJzV8lih7lV8mL8eAnGVnKyC3KsFT6S+R5PQO4ffdr1PI16/ElibY/kQ== + +elliptic@^6.5.3: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +emittery@^0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" + integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== + +"emoji-regex@>=6.0.0 <=6.1.1": + version "6.1.1" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.1.tgz#c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e" + integrity sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4= + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emojis-list@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" + integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== + +encodeurl@^1.0.2, encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + +end-of-stream@^1.0.0, end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.1, enhanced-resolve@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" + integrity sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg== + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.5.0" + tapable "^1.0.0" + +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +entities@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" + integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== + +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + +errno@^0.1.3, errno@~0.1.7: + version "0.1.8" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" + integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== + dependencies: + prr "~1.0.1" + +error-ex@^1.2.0, error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +error-stack-parser@^2.0.0: + version "2.0.6" + resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.6.tgz#5a99a707bd7a4c58a797902d48d82803ede6aad8" + integrity sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ== + dependencies: + stackframe "^1.1.1" + +es-abstract@^1.17.2, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2: + version "1.18.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0.tgz#ab80b359eecb7ede4c298000390bc5ac3ec7b5a4" + integrity sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + get-intrinsic "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.2" + is-callable "^1.2.3" + is-negative-zero "^2.0.1" + is-regex "^1.1.2" + is-string "^1.0.5" + object-inspect "^1.9.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + string.prototype.trimend "^1.0.4" + string.prototype.trimstart "^1.0.4" + unbox-primitive "^1.0.0" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-html@^1.0.3, escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +escodegen@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" + integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== + dependencies: + esprima "^4.0.1" + estraverse "^5.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + +eslint-config-prettier@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz#4ef1eaf97afe5176e6a75ddfb57c335121abc5a6" + integrity sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw== + +eslint-config-standard@^16.0.2: + version "16.0.2" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.2.tgz#71e91727ac7a203782d0a5ca4d1c462d14e234f6" + integrity sha512-fx3f1rJDsl9bY7qzyX8SAtP8GBSk6MfXFaTfaGgk12aAYW4gJSyRm7dM790L6cbXv63fvjY4XeSzXnb4WM+SKw== + +eslint-import-resolver-node@^0.3.4: + version "0.3.4" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz#85ffa81942c25012d8231096ddf679c03042c717" + integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA== + dependencies: + debug "^2.6.9" + resolve "^1.13.1" + +eslint-module-utils@^2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6" + integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA== + dependencies: + debug "^2.6.9" + pkg-dir "^2.0.0" + +eslint-plugin-es@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" + integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== + dependencies: + eslint-utils "^2.0.0" + regexpp "^3.0.0" + +eslint-plugin-import@^2.22.1: + version "2.22.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz#0896c7e6a0cf44109a2d97b95903c2bb689d7702" + integrity sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw== + dependencies: + array-includes "^3.1.1" + array.prototype.flat "^1.2.3" + contains-path "^0.1.0" + debug "^2.6.9" + doctrine "1.5.0" + eslint-import-resolver-node "^0.3.4" + eslint-module-utils "^2.6.0" + has "^1.0.3" + minimatch "^3.0.4" + object.values "^1.1.1" + read-pkg-up "^2.0.0" + resolve "^1.17.0" + tsconfig-paths "^3.9.0" + +eslint-plugin-jest@^24.1.7: + version "24.3.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-24.3.2.tgz#30a8b2dea6278d0da1d6fb9d6cd530aaf58050a1" + integrity sha512-cicWDr+RvTAOKS3Q/k03+Z3odt3VCiWamNUHWd6QWbVQWcYJyYgUTu8x0mx9GfeDEimawU5kQC+nQ3MFxIM6bw== + dependencies: + "@typescript-eslint/experimental-utils" "^4.0.1" + +eslint-plugin-node@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" + integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== + dependencies: + eslint-plugin-es "^3.0.0" + eslint-utils "^2.0.0" + ignore "^5.1.1" + minimatch "^3.0.4" + resolve "^1.10.1" + semver "^6.1.0" + +eslint-plugin-nuxt@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-nuxt/-/eslint-plugin-nuxt-2.0.0.tgz#62dce8b2f6aa205a93a328d22ce04c39f7ee79d7" + integrity sha512-0VaG4SlKeGwMKSmOug/gNjliKoDNM/XfgiPhJ4v6FnjYrM3zSwTQVMH6vPjI8Gs722NjgwOZTucvmYbHzYEp5A== + dependencies: + eslint-plugin-vue "^7.1.0" + semver "^7.3.2" + vue-eslint-parser "^7.1.1" + +eslint-plugin-prettier@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.3.1.tgz#7079cfa2497078905011e6f82e8dd8453d1371b7" + integrity sha512-Rq3jkcFY8RYeQLgk2cCwuc0P7SEFwDravPhsJZOQ5N4YI4DSg50NyqJ/9gdZHzQlHf8MvafSesbNJCcP/FF6pQ== + dependencies: + prettier-linter-helpers "^1.0.0" + +eslint-plugin-promise@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.3.1.tgz#61485df2a359e03149fdafc0a68b0e030ad2ac45" + integrity sha512-bY2sGqyptzFBDLh/GMbAxfdJC+b0f23ME63FOE4+Jao0oZ3E1LEwFtWJX/1pGMJLiTtrSSern2CRM/g+dfc0eQ== + +eslint-plugin-standard@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.1.0.tgz#0c3bf3a67e853f8bbbc580fb4945fbf16f41b7c5" + integrity sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ== + +eslint-plugin-unicorn@^28.0.2: + version "28.0.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-28.0.2.tgz#ab9884ebae04590ecd9c1c294330d889a74b7c37" + integrity sha512-k4AoFP7n8/oq6lBXkdc9Flid6vw2B8j7aXFCxgzJCyKvmaKrCUFb1TFPhG9eSJQFZowqmymMPRtl8oo9NKLUbw== + dependencies: + ci-info "^2.0.0" + clean-regexp "^1.0.0" + eslint-template-visitor "^2.2.2" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + import-modules "^2.1.0" + lodash "^4.17.20" + pluralize "^8.0.0" + read-pkg-up "^7.0.1" + regexp-tree "^0.1.22" + reserved-words "^0.1.2" + safe-regex "^2.1.1" + semver "^7.3.4" + +eslint-plugin-vue@^7.1.0, eslint-plugin-vue@^7.7.0: + version "7.8.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-7.8.0.tgz#cb0e85d65b65fa8d15e783fbb03c049d2c4cfdae" + integrity sha512-OGrnPz+PuYL2HmVyBHxm4mRjxW2kfFCQE6Hw9G6qOHs/Pcu0srOlCCW0FMa8SLzIEqxl8WuKoBSPcMnrjUG2vw== + dependencies: + eslint-utils "^2.1.0" + natural-compare "^1.4.0" + semver "^7.3.2" + vue-eslint-parser "^7.6.0" + +eslint-scope@5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5" + integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w== + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + +eslint-scope@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" + integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + +eslint-scope@^5.0.0, eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-template-visitor@^2.2.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/eslint-template-visitor/-/eslint-template-visitor-2.3.2.tgz#b52f96ff311e773a345d79053ccc78275bbc463d" + integrity sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA== + dependencies: + "@babel/core" "^7.12.16" + "@babel/eslint-parser" "^7.12.16" + eslint-visitor-keys "^2.0.0" + esquery "^1.3.1" + multimap "^1.1.0" + +eslint-utils@^2.0.0, eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" + integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== + +eslint-webpack-plugin@^2.4.1: + version "2.5.3" + resolved "https://registry.yarnpkg.com/eslint-webpack-plugin/-/eslint-webpack-plugin-2.5.3.tgz#a125585a1d8bb9c939f2a920a9bc9be4a21cdb58" + integrity sha512-LewNevZf9ghDCxCGT6QltNWVi8KIYWc4LKcin8K9Azh1hypG7YAmobUDIU67fAPa+eMjRnU4rjEkLbYI1w5/UA== + dependencies: + "@types/eslint" "^7.2.6" + arrify "^2.0.1" + jest-worker "^26.6.2" + micromatch "^4.0.2" + schema-utils "^3.0.0" + +eslint@^7.22.0: + version "7.22.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.22.0.tgz#07ecc61052fec63661a2cab6bd507127c07adc6f" + integrity sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg== + dependencies: + "@babel/code-frame" "7.12.11" + "@eslint/eslintrc" "^0.4.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.4.0" + esutils "^2.0.2" + file-entry-cache "^6.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.0.0" + globals "^13.6.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash "^4.17.21" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.4" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" + integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== + dependencies: + acorn "^7.1.1" + acorn-jsx "^5.2.0" + eslint-visitor-keys "^1.1.0" + +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" + +esprima@^4.0.0, esprima@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.3.1, esquery@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.1.0, esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +etag@^1.8.1, etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + +eventemitter3@^4.0.0, eventemitter3@^4.0.4: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + +events@^3.0.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + +eventsource-polyfill@^0.9.6: + version "0.9.6" + resolved "https://registry.yarnpkg.com/eventsource-polyfill/-/eventsource-polyfill-0.9.6.tgz#10e0d187f111b167f28fdab918843ce7d818f13c" + integrity sha1-EODRh/ERsWfyj9q5GIQ859gY8Tw= + +evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +exec-sh@^0.3.2: + version "0.3.6" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" + integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +execa@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== + dependencies: + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" + +execa@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" + integrity sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" + +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +expect@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" + integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== + dependencies: + "@jest/types" "^26.6.2" + ansi-styles "^4.0.0" + jest-get-type "^26.3.0" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extend@^3.0.0, extend@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +external-editor@^3.0.3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== + dependencies: + chardet "^0.7.0" + iconv-lite "^0.4.24" + tmp "^0.0.33" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extract-css-chunks-webpack-plugin@^4.9.0: + version "4.9.0" + resolved "https://registry.yarnpkg.com/extract-css-chunks-webpack-plugin/-/extract-css-chunks-webpack-plugin-4.9.0.tgz#da5e6b1d8b39a398c817ffc98550f4ccb6d795e1" + integrity sha512-HNuNPCXRMqJDQ1OHAUehoY+0JVCnw9Y/H22FQzYVwo8Ulgew98AGDu0grnY5c7xwiXHjQa6yJ/1dxLCI/xqTyQ== + dependencies: + loader-utils "^2.0.0" + normalize-url "1.9.1" + schema-utils "^1.0.0" + webpack-sources "^1.1.0" + +extract-from-css@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/extract-from-css/-/extract-from-css-0.4.4.tgz#1ea7df2e7c7c6eb9922fa08e8adaea486f6f8f92" + integrity sha1-HqffLnx8brmSL6COitrqSG9vj5I= + dependencies: + css "^2.1.0" + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + +extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= + +fast-deep-equal@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-diff@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" + integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== + +fast-glob@^3.1.1, fast-glob@^3.2.5: + version "3.2.5" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.5.tgz#7939af2a656de79a4f1901903ee8adcaa7cb9661" + integrity sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.0" + merge2 "^1.3.0" + micromatch "^4.0.2" + picomatch "^2.2.1" + +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +fastq@^1.6.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.11.0.tgz#bb9fb955a07130a918eb63c1f5161cc32a5d0858" + integrity sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g== + dependencies: + reusify "^1.0.4" + +fb-watchman@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" + integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== + dependencies: + bser "2.1.1" + +figgy-pudding@^3.5.1: + version "3.5.2" + resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" + integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== + +figures@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" + integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== + dependencies: + escape-string-regexp "^1.0.5" + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + +file-loader@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" + integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +filter-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" + integrity sha1-mzERErxsYSehbgFsbF1/GeCAXFs= + +finalhandler@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" + integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== + dependencies: + debug "2.6.9" + encodeurl "~1.0.2" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.3" + statuses "~1.5.0" + unpipe "~1.0.0" + +find-babel-config@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/find-babel-config/-/find-babel-config-1.2.0.tgz#a9b7b317eb5b9860cda9d54740a8c8337a2283a2" + integrity sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA== + dependencies: + json5 "^0.5.1" + path-exists "^3.0.0" + +find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" + integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== + dependencies: + commondir "^1.0.1" + make-dir "^2.0.0" + pkg-dir "^3.0.0" + +find-cache-dir@^3.0.0, find-cache-dir@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" + integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== + dependencies: + commondir "^1.0.1" + make-dir "^3.0.2" + pkg-dir "^4.1.0" + +find-up@^2.0.0, find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + dependencies: + locate-path "^2.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + +find-up@^4.0.0, find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + dependencies: + flatted "^3.1.0" + rimraf "^3.0.2" + +flat@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== + +flatted@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" + integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== + +flatten@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" + integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg== + +flush-write-stream@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" + integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== + dependencies: + inherits "^2.0.3" + readable-stream "^2.3.6" + +follow-redirects@^1.0.0, follow-redirects@^1.10.0: + version "1.13.3" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.3.tgz#e5598ad50174c1bc4e872301e82ac2cd97f90267" + integrity sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA== + +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + +fork-ts-checker-webpack-plugin@^6.1.1: + version "6.2.0" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.2.0.tgz#d13af02e24d1b17f769af6bdf41c1e849e1615cc" + integrity sha512-DTNbOhq6lRdjYprukX54JMeYJgQ0zMow+R5BMLwWxEX2NAXthIkwnV8DBmsWjwNLSUItKZM4TCCJbtgrtKBu2Q== + dependencies: + "@babel/code-frame" "^7.8.3" + "@types/json-schema" "^7.0.5" + chalk "^4.1.0" + chokidar "^3.4.2" + cosmiconfig "^6.0.0" + deepmerge "^4.2.2" + fs-extra "^9.0.0" + memfs "^3.1.2" + minimatch "^3.0.4" + schema-utils "2.7.0" + semver "^7.3.2" + tapable "^1.0.0" + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +forwarded@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" + integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= + +fraction.js@^4.0.13: + version "4.0.13" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.0.13.tgz#3c1c315fa16b35c85fffa95725a36fa729c69dfe" + integrity sha512-E1fz2Xs9ltlUp+qbiyx9wmt2n9dRzPsS11Jtdb8D2o+cC7wr9xkkKsVKJuBX0ST+LVS+LhLO+SbLJNtfWcJvXA== + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + dependencies: + map-cache "^0.2.2" + +fresh@0.5.2, fresh@^0.5.2, fresh@~0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + +from2@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +fs-extra@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-extra@^9.0.0, fs-extra@^9.0.1, fs-extra@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + +fs-memo@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/fs-memo/-/fs-memo-1.2.0.tgz#a2ec3be606b902077adbb37ec529c5ec5fb2e037" + integrity sha512-YEexkCpL4j03jn5SxaMHqcO6IuWuqm8JFUYhyCep7Ao89JIYmB8xoKhK7zXXJ9cCaNXpyNH5L3QtAmoxjoHW2w== + +fs-minipass@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + +fs-monkey@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.1.tgz#4a82f36944365e619f4454d9fff106553067b781" + integrity sha512-fcSa+wyTqZa46iWweI7/ZiUfegOZl0SG8+dltIwFXo7+zYU9J9kpS3NB6pZcSlJdhvIwp81Adx2XhZorncxiaA== + +fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +fsevents@^1.2.7: + version "1.2.13" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" + integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== + dependencies: + bindings "^1.5.0" + nan "^2.12.1" + +fsevents@^2.1.2, fsevents@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + +get-caller-file@^2.0.1, get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-intrinsic@^1.0.2, get-intrinsic@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + +get-port-please@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/get-port-please/-/get-port-please-1.1.0.tgz#7a60007578df6c4570c233803b48854c44db41f7" + integrity sha512-C9adQpQ9uyboxURlYAVcqvKdnrZ0uIad6lAZzIr51G5shhUFcZUwl8rxY0B0hB6OJytBNzPB1Uj/S1CpP9aFzQ== + dependencies: + fs-memo "^1.2.0" + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-stream@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + dependencies: + pump "^3.0.0" + +get-stream@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.0.tgz#3e0012cb6827319da2706e601a1583e8629a6718" + integrity sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg== + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + dependencies: + assert-plus "^1.0.0" + +git-config-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/git-config-path/-/git-config-path-2.0.0.tgz#62633d61af63af4405a5024efd325762f58a181b" + integrity sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA== + +git-up@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.2.tgz#10c3d731051b366dc19d3df454bfca3f77913a7c" + integrity sha512-kbuvus1dWQB2sSW4cbfTeGpCMd8ge9jx9RKnhXhuJ7tnvT+NIrTVfYZxjtflZddQYcmdOTlkAcjmx7bor+15AQ== + dependencies: + is-ssh "^1.3.0" + parse-url "^5.0.0" + +git-url-parse@^11.4.3: + version "11.4.4" + resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.4.4.tgz#5d747debc2469c17bc385719f7d0427802d83d77" + integrity sha512-Y4o9o7vQngQDIU9IjyCmRJBin5iYjI5u9ZITnddRZpD7dcCFQj2sL2XuMNbLRE4b4B/4ENPsp2Q8P44fjAZ0Pw== + dependencies: + git-up "^4.0.0" + +github-slugger@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.3.0.tgz#9bd0a95c5efdfc46005e82a906ef8e2a059124c9" + integrity sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q== + dependencies: + emoji-regex ">=6.0.0 <=6.1.1" + +glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= + dependencies: + glob-parent "^2.0.0" + is-glob "^2.0.0" + +glob-parent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" + integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= + dependencies: + is-glob "^2.0.0" + +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + +glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + +globals@^12.1.0: + version "12.4.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" + integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== + dependencies: + type-fest "^0.8.1" + +globals@^13.6.0: + version "13.7.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.7.0.tgz#aed3bcefd80ad3ec0f0be2cf0c895110c0591795" + integrity sha512-Aipsz6ZKRxa/xQkZhNg0qIWXT6x6rD46f6x/PCnBomlttdIyAPak4YD9jTmKpZ72uROSMU87qJtcgpgHaVchiA== + dependencies: + type-fest "^0.20.2" + +globals@^9.18.0: + version "9.18.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" + integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== + +globby@^11.0.1, globby@^11.0.2, globby@^11.0.3: + version "11.0.3" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.3.tgz#9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb" + integrity sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.1.1" + ignore "^5.1.4" + merge2 "^1.3.0" + slash "^3.0.0" + +good-listener@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" + integrity sha1-1TswzfkxPf+33JoNR3CWqm0UXFA= + dependencies: + delegate "^3.1.2" + +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6: + version "4.2.6" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz#ff040b2b0853b23c3d31027523706f1885d76bee" + integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== + +gray-matter@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-4.0.2.tgz#9aa379e3acaf421193fce7d2a28cebd4518ac454" + integrity sha512-7hB/+LxrOjq/dd8APlK0r24uL/67w7SkYnfwhNFwg/VDIGWGmduTDYf3WNstLW2fbbmRwrDGCVSJ2isuf2+4Hw== + dependencies: + js-yaml "^3.11.0" + kind-of "^6.0.2" + section-matter "^1.0.0" + strip-bom-string "^1.0.0" + +growly@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= + +gzip-size@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" + integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== + dependencies: + duplexer "^0.1.2" + +hable@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/hable/-/hable-3.0.0.tgz#6de089b2df946635cf8134b9e4859f1b62de255f" + integrity sha512-7+G0/2/COR8pwteYFqHIVYfQpuEiO2HXwJrhCBJVgrNrl9O5eaUoJVDGXUJX+0RpGncNVTuestexjk1afj01wQ== + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + +har-validator@~5.1.3: + version "5.1.5" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== + dependencies: + ajv "^6.12.3" + har-schema "^2.0.0" + +hard-source-webpack-plugin@^0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/hard-source-webpack-plugin/-/hard-source-webpack-plugin-0.13.1.tgz#a99071e25b232f1438a5bc3c99f10a3869e4428e" + integrity sha512-r9zf5Wq7IqJHdVAQsZ4OP+dcUSvoHqDMxJlIzaE2J0TZWn3UjMMrHqwDHR8Jr/pzPfG7XxSe36E7Y8QGNdtuAw== + dependencies: + chalk "^2.4.1" + find-cache-dir "^2.0.0" + graceful-fs "^4.1.11" + lodash "^4.15.0" + mkdirp "^0.5.1" + node-object-hash "^1.2.0" + parse-json "^4.0.0" + pkg-dir "^3.0.0" + rimraf "^2.6.2" + semver "^5.6.0" + tapable "^1.0.0-beta.5" + webpack-sources "^1.0.1" + write-json-file "^2.3.0" + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= + dependencies: + ansi-regex "^2.0.0" + +has-bigints@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-symbols@^1.0.0, has-symbols@^1.0.1, has-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +has@^1.0.0, has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +hash-base@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" + integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== + dependencies: + inherits "^2.0.4" + readable-stream "^3.6.0" + safe-buffer "^5.2.0" + +hash-sum@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" + integrity sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ= + +hash-sum@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a" + integrity sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg== + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hasha@^5.2.2: + version "5.2.2" + resolved "https://registry.yarnpkg.com/hasha/-/hasha-5.2.2.tgz#a48477989b3b327aea3c04f53096d816d97522a1" + integrity sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ== + dependencies: + is-stream "^2.0.0" + type-fest "^0.8.0" + +hast-to-hyperscript@^9.0.0: + version "9.0.1" + resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz#9b67fd188e4c81e8ad66f803855334173920218d" + integrity sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA== + dependencies: + "@types/unist" "^2.0.3" + comma-separated-tokens "^1.0.0" + property-information "^5.3.0" + space-separated-tokens "^1.0.0" + style-to-object "^0.3.0" + unist-util-is "^4.0.0" + web-namespaces "^1.0.0" + +hast-util-from-parse5@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz#554e34abdeea25ac76f5bd950a1f0180e0b3bc2a" + integrity sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA== + dependencies: + "@types/parse5" "^5.0.0" + hastscript "^6.0.0" + property-information "^5.0.0" + vfile "^4.0.0" + vfile-location "^3.2.0" + web-namespaces "^1.0.0" + +hast-util-is-element@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz#3b3ed5159a2707c6137b48637fbfe068e175a425" + integrity sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ== + +hast-util-parse-selector@^2.0.0: + version "2.2.5" + resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz#d57c23f4da16ae3c63b3b6ca4616683313499c3a" + integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== + +hast-util-raw@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-6.1.0.tgz#e16a3c2642f65cc7c480c165400a40d604ab75d0" + integrity sha512-5FoZLDHBpka20OlZZ4I/+RBw5piVQ8iI1doEvffQhx5CbCyTtP8UCq8Tw6NmTAMtXgsQxmhW7Ly8OdFre5/YMQ== + dependencies: + "@types/hast" "^2.0.0" + hast-util-from-parse5 "^6.0.0" + hast-util-to-parse5 "^6.0.0" + html-void-elements "^1.0.0" + parse5 "^6.0.0" + unist-util-position "^3.0.0" + unist-util-visit "^2.0.0" + vfile "^4.0.0" + web-namespaces "^1.0.0" + xtend "^4.0.0" + zwitch "^1.0.0" + +hast-util-to-parse5@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz#1ec44650b631d72952066cea9b1445df699f8479" + integrity sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ== + dependencies: + hast-to-hyperscript "^9.0.0" + property-information "^5.0.0" + web-namespaces "^1.0.0" + xtend "^4.0.0" + zwitch "^1.0.0" + +hastscript@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-6.0.0.tgz#e8768d7eac56c3fdeac8a92830d58e811e5bf640" + integrity sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w== + dependencies: + "@types/hast" "^2.0.0" + comma-separated-tokens "^1.0.0" + hast-util-parse-selector "^2.0.0" + property-information "^5.0.0" + space-separated-tokens "^1.0.0" + +he@1.2.0, he@^1.1.0, he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +header-case@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/header-case/-/header-case-2.0.4.tgz#5a42e63b55177349cf405beb8d775acabb92c063" + integrity sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q== + dependencies: + capital-case "^1.0.4" + tslib "^2.0.3" + +hex-color-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" + integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hookable@^4.4.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/hookable/-/hookable-4.4.1.tgz#3d7154ac7e1f6f147e50fef583832f2645b9f04f" + integrity sha512-KWjZM8C7IVT2qne5HTXjM6R6VnRfjfRlf/oCnHd+yFxoHO1DzOl6B9LzV/VqGQK/IrFewq+EG+ePVrE9Tpc3fg== + +hosted-git-info@^2.1.4: + version "2.8.8" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" + integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== + +hsl-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" + integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= + +hsla-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" + integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= + +html-comment-regex@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" + integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== + +html-encoding-sniffer@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== + dependencies: + whatwg-encoding "^1.0.5" + +html-entities@^1.2.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.4.0.tgz#cfbd1b01d2afaf9adca1b10ae7dffab98c71d2dc" + integrity sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA== + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + +html-minifier-terser@^5.0.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" + integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== + dependencies: + camel-case "^4.1.1" + clean-css "^4.2.3" + commander "^4.1.1" + he "^1.2.0" + param-case "^3.0.3" + relateurl "^0.2.7" + terser "^4.6.3" + +html-minifier@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-4.0.0.tgz#cca9aad8bce1175e02e17a8c33e46d8988889f56" + integrity sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig== + dependencies: + camel-case "^3.0.0" + clean-css "^4.2.1" + commander "^2.19.0" + he "^1.2.0" + param-case "^2.1.1" + relateurl "^0.2.7" + uglify-js "^3.5.1" + +html-tags@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b" + integrity sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos= + +html-tags@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" + integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== + +html-void-elements@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483" + integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w== + +html-webpack-plugin@^4.5.1: + version "4.5.2" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" + integrity sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A== + dependencies: + "@types/html-minifier-terser" "^5.0.0" + "@types/tapable" "^1.0.5" + "@types/webpack" "^4.41.8" + html-minifier-terser "^5.0.1" + loader-utils "^1.2.3" + lodash "^4.17.20" + pretty-error "^2.1.1" + tapable "^1.1.3" + util.promisify "1.0.0" + +htmlparser2@^3.10.1: + version "3.10.1" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" + integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== + dependencies: + domelementtype "^1.3.1" + domhandler "^2.3.0" + domutils "^1.5.1" + entities "^1.1.1" + inherits "^2.0.1" + readable-stream "^3.1.1" + +http-assert@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.4.1.tgz#c5f725d677aa7e873ef736199b89686cceb37878" + integrity sha512-rdw7q6GTlibqVVbXr0CKelfV5iY8G2HqEUkhSk297BMbSpSL8crXC+9rjKoMcZZEsksX30le6f/4ul4E28gegw== + dependencies: + deep-equal "~1.0.1" + http-errors "~1.7.2" + +http-errors@^1.6.3, http-errors@^1.7.3: + version "1.8.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.0.tgz#75d1bbe497e1044f51e4ee9e704a62f28d336507" + integrity sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + +http-errors@~1.7.2: + version "1.7.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" + integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-proxy-middleware@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-1.0.6.tgz#0618557722f450375d3796d701a8ac5407b3b94e" + integrity sha512-NyL6ZB6cVni7pl+/IT2W0ni5ME00xR0sN27AQZZrpKn1b+qRh+mLbBxIq9Cq1oGfmTc7BUq4HB77mxwCaxAYNg== + dependencies: + "@types/http-proxy" "^1.17.4" + http-proxy "^1.18.1" + is-glob "^4.0.1" + lodash "^4.17.20" + micromatch "^4.0.2" + +http-proxy@^1.18.1: + version "1.18.1" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" + integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== + dependencies: + eventemitter3 "^4.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +https-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" + integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= + +human-signals@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== + +iconv-lite@0.4.24, iconv-lite@^0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +icss-utils@^4.0.0, icss-utils@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" + integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== + dependencies: + postcss "^7.0.14" + +icss-utils@^5.0.0, icss-utils@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" + integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== + +ieee754@^1.1.13, ieee754@^1.1.4: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= + +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.1.1, ignore@^5.1.4, ignore@^5.1.8: + version "5.1.8" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + +import-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" + integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= + dependencies: + import-from "^2.1.0" + +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= + dependencies: + caller-path "^2.0.0" + resolve-from "^3.0.0" + +import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +import-from@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" + integrity sha1-M1238qev/VOqpHHUuAId7ja387E= + dependencies: + resolve-from "^3.0.0" + +import-local@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" + integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== + dependencies: + pkg-dir "^4.2.0" + resolve-cwd "^3.0.0" + +import-modules@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-modules/-/import-modules-2.1.0.tgz#abe7df297cb6c1f19b57246eb8b8bd9664b6d8c2" + integrity sha512-8HEWcnkbGpovH9yInoisxaSoIg9Brbul+Ju3Kqe2UsYDUBJD/iQjSgEj0zPcTDPKfPp2fs5xlv1i+JSye/m1/A== + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +indexes-of@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" + integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= + +infer-owner@^1.0.3, infer-owner@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +inherits@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= + +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + +ini@^1.3.4, ini@^1.3.5: + version "1.3.8" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== + +inline-style-parser@0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" + integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== + +inquirer@^7.3.3: + version "7.3.3" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" + integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== + dependencies: + ansi-escapes "^4.2.1" + chalk "^4.1.0" + cli-cursor "^3.1.0" + cli-width "^3.0.0" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.19" + mute-stream "0.0.8" + run-async "^2.4.0" + rxjs "^6.6.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + through "^2.3.6" + +invariant@^2.2.2: + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== + dependencies: + loose-envify "^1.0.0" + +ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + +is-absolute-url@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" + integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= + +is-absolute-url@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" + integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + +is-alphabetical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" + integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== + +is-alphanumerical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" + integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== + dependencies: + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-arrayish@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" + integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== + +is-bigint@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.1.tgz#6923051dfcbc764278540b9ce0e6b3213aa5ebc2" + integrity sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg== + +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= + dependencies: + binary-extensions "^1.0.0" + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-boolean-object@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.0.tgz#e2aaad3a3a8fca34c28f6eee135b156ed2587ff0" + integrity sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA== + dependencies: + call-bind "^1.0.0" + +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-buffer@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + +is-callable@^1.1.4, is-callable@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.3.tgz#8b1e0500b73a1d76c70487636f368e519de8db8e" + integrity sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ== + +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + +is-color-stop@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" + integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= + dependencies: + css-color-names "^0.0.4" + hex-color-regex "^1.1.0" + hsl-regex "^1.0.0" + hsla-regex "^1.0.0" + rgb-regex "^1.0.1" + rgba-regex "^1.0.0" + +is-core-module@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a" + integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== + dependencies: + has "^1.0.3" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== + dependencies: + kind-of "^6.0.0" + +is-date-object@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" + integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== + +is-decimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" + integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= + +is-docker@^2.0.0, is-docker@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.1.1.tgz#4125a88e44e450d384e09047ede71adc2d144156" + integrity sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw== + +is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= + +is-extglob@^2.1.0, is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== + +is-generator-function@^1.0.7: + version "1.0.8" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.8.tgz#dfb5c2b120e02b0a8d9d2c6806cd5621aa922f7b" + integrity sha512-2Omr/twNtufVZFr1GhxjOMFPAj2sjc/dKaIqBhvo4qciXfJmITGH6ZGd8eZYNHza8t1y0e01AuqRhJwfWp26WQ== + +is-glob@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" + integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= + dependencies: + is-extglob "^1.0.0" + +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + dependencies: + is-extglob "^2.1.0" + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + dependencies: + is-extglob "^2.1.1" + +is-hexadecimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" + integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== + +is-negative-zero@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" + integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== + +is-number-object@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.4.tgz#36ac95e741cf18b283fc1ddf5e83da798e3ec197" + integrity sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw== + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + dependencies: + kind-of "^3.0.2" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" + integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== + +is-plain-obj@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + +is-plain-obj@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + +is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +is-potential-custom-element-name@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz#0c52e54bcca391bb2c494b21e8626d7336c6e397" + integrity sha1-DFLlS8yjkbssSUsh6GJtczbG45c= + +is-regex@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.2.tgz#81c8ebde4db142f2cf1c53fc86d6a45788266251" + integrity sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg== + dependencies: + call-bind "^1.0.2" + has-symbols "^1.0.1" + +is-resolvable@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" + integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== + +is-retry-allowed@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" + integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== + +is-ssh@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.3.2.tgz#a4b82ab63d73976fd8263cceee27f99a88bdae2b" + integrity sha512-elEw0/0c2UscLrNG+OAorbP539E3rhliKPg+hDMWN9VwrDXfYK+4PBEykDPfxlYYtQvl84TascnQyobfQLHEhQ== + dependencies: + protocols "^1.1.0" + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= + +is-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" + integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== + +is-string@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" + integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== + +is-svg@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" + integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== + dependencies: + html-comment-regex "^1.1.0" + +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" + integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== + dependencies: + has-symbols "^1.0.1" + +is-typedarray@^1.0.0, is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + +is-url-superb@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-url-superb/-/is-url-superb-4.0.0.tgz#b54d1d2499bb16792748ac967aa3ecb41a33a8c2" + integrity sha512-GI+WjezhPPcbM+tqE9LnmsY5qqjwHzTvjJ36wxYX5ujNXefSUJ/T17r5bqDV8yLhcgB59KTPNOc9O9cmHTPWsA== + +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= + +is-whitespace@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/is-whitespace/-/is-whitespace-0.3.0.tgz#1639ecb1be036aec69a54cbb401cfbed7114ab7f" + integrity sha1-Fjnssb4DauxppUy7QBz77XEUq38= + +is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + +is-wsl@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" + integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= + +is-wsl@^2.1.1, is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + +istanbul-lib-coverage@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" + integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== + +istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" + integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== + dependencies: + "@babel/core" "^7.7.5" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" + +istanbul-lib-report@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^3.0.0" + supports-color "^7.1.0" + +istanbul-lib-source-maps@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" + integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^3.0.0" + source-map "^0.6.1" + +istanbul-reports@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" + integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" + +jest-changed-files@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" + integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== + dependencies: + "@jest/types" "^26.6.2" + execa "^4.0.0" + throat "^5.0.0" + +jest-cli@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" + integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== + dependencies: + "@jest/core" "^26.6.3" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + import-local "^3.0.2" + is-ci "^2.0.0" + jest-config "^26.6.3" + jest-util "^26.6.2" + jest-validate "^26.6.2" + prompts "^2.0.1" + yargs "^15.4.1" + +jest-config@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" + integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^26.6.3" + "@jest/types" "^26.6.2" + babel-jest "^26.6.3" + chalk "^4.0.0" + deepmerge "^4.2.2" + glob "^7.1.1" + graceful-fs "^4.2.4" + jest-environment-jsdom "^26.6.2" + jest-environment-node "^26.6.2" + jest-get-type "^26.3.0" + jest-jasmine2 "^26.6.3" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + micromatch "^4.0.2" + pretty-format "^26.6.2" + +jest-diff@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" + integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== + dependencies: + chalk "^4.0.0" + diff-sequences "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-docblock@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" + integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== + dependencies: + detect-newline "^3.0.0" + +jest-each@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" + integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + jest-get-type "^26.3.0" + jest-util "^26.6.2" + pretty-format "^26.6.2" + +jest-environment-jsdom@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" + integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + jsdom "^16.4.0" + +jest-environment-node@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" + integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +jest-get-type@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" + integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== + +jest-haste-map@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" + integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== + dependencies: + "@jest/types" "^26.6.2" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^26.0.0" + jest-serializer "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + micromatch "^4.0.2" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.1.2" + +jest-jasmine2@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" + integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== + dependencies: + "@babel/traverse" "^7.1.0" + "@jest/environment" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + expect "^26.6.2" + is-generator-fn "^2.0.0" + jest-each "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + pretty-format "^26.6.2" + throat "^5.0.0" + +jest-leak-detector@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" + integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== + dependencies: + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-matcher-utils@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" + integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== + dependencies: + chalk "^4.0.0" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-message-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" + integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== + dependencies: + "@babel/code-frame" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.4" + micromatch "^4.0.2" + pretty-format "^26.6.2" + slash "^3.0.0" + stack-utils "^2.0.2" + +jest-mock@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" + integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + +jest-pnp-resolver@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" + integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== + +jest-regex-util@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" + integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== + +jest-resolve-dependencies@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" + integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== + dependencies: + "@jest/types" "^26.6.2" + jest-regex-util "^26.0.0" + jest-snapshot "^26.6.2" + +jest-resolve@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" + integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + jest-pnp-resolver "^1.2.2" + jest-util "^26.6.2" + read-pkg-up "^7.0.1" + resolve "^1.18.1" + slash "^3.0.0" + +jest-runner@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" + integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.7.1" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-docblock "^26.0.0" + jest-haste-map "^26.6.2" + jest-leak-detector "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + jest-runtime "^26.6.3" + jest-util "^26.6.2" + jest-worker "^26.6.2" + source-map-support "^0.5.6" + throat "^5.0.0" + +jest-runtime@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" + integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/globals" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + cjs-module-lexer "^0.6.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + slash "^3.0.0" + strip-bom "^4.0.0" + yargs "^15.4.1" + +jest-serializer@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" + integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + +jest-snapshot@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" + integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== + dependencies: + "@babel/types" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/babel__traverse" "^7.0.4" + "@types/prettier" "^2.0.0" + chalk "^4.0.0" + expect "^26.6.2" + graceful-fs "^4.2.4" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + jest-haste-map "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + natural-compare "^1.4.0" + pretty-format "^26.6.2" + semver "^7.3.2" + +jest-util@^26.1.0, jest-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" + integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + +jest-validate@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" + integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== + dependencies: + "@jest/types" "^26.6.2" + camelcase "^6.0.0" + chalk "^4.0.0" + jest-get-type "^26.3.0" + leven "^3.1.0" + pretty-format "^26.6.2" + +jest-watcher@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" + integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== + dependencies: + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + jest-util "^26.6.2" + string-length "^4.0.1" + +jest-worker@^26.5.0, jest-worker@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + +jest@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" + integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== + dependencies: + "@jest/core" "^26.6.3" + import-local "^3.0.2" + jest-cli "^26.6.3" + +jimp-compact@^0.16.1: + version "0.16.1" + resolved "https://registry.yarnpkg.com/jimp-compact/-/jimp-compact-0.16.1.tgz#9582aea06548a2c1e04dd148d7c3ab92075aefa3" + integrity sha512-dZ6Ra7u1G8c4Letq/B5EzAxj4tLFHL+cGtdpR+PVm4yzPDj+lCk+AbivWt1eOM+ikzkowtyV7qSqX6qr3t71Ww== + +jiti@^1.3.0, jiti@^1.6.3: + version "1.6.4" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.6.4.tgz#63453b602d0234f8bd7ce638f03f0e74ef99be12" + integrity sha512-ICUtP0/rAyT/GaaDG0vj6fmWzx5yjFc7v+L1MAEARGl1+lrdJ8wtJNChr+ZGEdPoOhFwdhtcDO5VM2TNNgPpjQ== + +js-beautify@^1.6.12, js-beautify@^1.6.14: + version "1.13.5" + resolved "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.13.5.tgz#a08a97890cae55daf1d758d3f6577bd4a64d7014" + integrity sha512-MsXlH6Z/BiRYSkSRW3clNDqDjSpiSNOiG8xYVUBXt4k0LnGvDhlTGOlHX1VFtAdoLmtwjxMG5qiWKy/g+Ipv5w== + dependencies: + config-chain "^1.1.12" + editorconfig "^0.15.3" + glob "^7.1.3" + mkdirp "^1.0.4" + nopt "^5.0.0" + +js-cookie@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-2.2.1.tgz#69e106dc5d5806894562902aa5baec3744e9b2b8" + integrity sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ== + +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-tokens@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= + +js-yaml@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz#f426bc0ff4b4051926cd588c71113183409a121f" + integrity sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q== + dependencies: + argparse "^2.0.1" + +js-yaml@^3.11.0, js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + +jsdom@^16.4.0: + version "16.5.1" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.5.1.tgz#4ced6bbd7b77d67fb980e64d9e3e6fb900f97dd6" + integrity sha512-pF73EOsJgwZekbDHEY5VO/yKXUkab/DuvrQB/ANVizbr6UAHJsDdHXuotZYwkJSGQl1JM+ivXaqY+XBDDL4TiA== + dependencies: + abab "^2.0.5" + acorn "^8.0.5" + acorn-globals "^6.0.0" + cssom "^0.4.4" + cssstyle "^2.3.0" + data-urls "^2.0.0" + decimal.js "^10.2.1" + domexception "^2.0.1" + escodegen "^2.0.0" + html-encoding-sniffer "^2.0.1" + is-potential-custom-element-name "^1.0.0" + nwsapi "^2.2.0" + parse5 "6.0.1" + request "^2.88.2" + request-promise-native "^1.0.9" + saxes "^5.0.1" + symbol-tree "^3.2.4" + tough-cookie "^4.0.0" + w3c-hr-time "^1.0.2" + w3c-xmlserializer "^2.0.0" + webidl-conversions "^6.1.0" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + ws "^7.4.4" + xml-name-validator "^3.0.0" + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= + +json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + +json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + +json5@2.x, json5@^2.1.1, json5@^2.1.2: + version "2.2.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== + dependencies: + minimist "^1.2.5" + +json5@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= + +json5@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + dependencies: + minimist "^1.2.0" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +keygrip@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/keygrip/-/keygrip-1.1.0.tgz#871b1681d5e159c62a445b0c74b615e0917e7226" + integrity sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ== + dependencies: + tsscmp "1.0.6" + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.3" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + +klona@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.4.tgz#7bb1e3affb0cb8624547ef7e8f6708ea2e39dfc0" + integrity sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA== + +koa-compose@^3.0.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/koa-compose/-/koa-compose-3.2.1.tgz#a85ccb40b7d986d8e5a345b3a1ace8eabcf54de7" + integrity sha1-qFzLQLfZhtjlo0Wzoazo6rz1Tec= + dependencies: + any-promise "^1.1.0" + +koa-compose@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/koa-compose/-/koa-compose-4.1.0.tgz#507306b9371901db41121c812e923d0d67d3e877" + integrity sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw== + +koa-convert@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/koa-convert/-/koa-convert-1.2.0.tgz#da40875df49de0539098d1700b50820cebcd21d0" + integrity sha1-2kCHXfSd4FOQmNFwC1CCDOvNIdA= + dependencies: + co "^4.6.0" + koa-compose "^3.0.0" + +koa-send@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/koa-send/-/koa-send-5.0.1.tgz#39dceebfafb395d0d60beaffba3a70b4f543fe79" + integrity sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ== + dependencies: + debug "^4.1.1" + http-errors "^1.7.3" + resolve-path "^1.4.0" + +koa-static@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/koa-static/-/koa-static-5.0.0.tgz#5e92fc96b537ad5219f425319c95b64772776943" + integrity sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ== + dependencies: + debug "^3.1.0" + koa-send "^5.0.0" + +koa@^2.12.0: + version "2.13.1" + resolved "https://registry.yarnpkg.com/koa/-/koa-2.13.1.tgz#6275172875b27bcfe1d454356a5b6b9f5a9b1051" + integrity sha512-Lb2Dloc72auj5vK4X4qqL7B5jyDPQaZucc9sR/71byg7ryoD1NCaCm63CShk9ID9quQvDEi1bGR/iGjCG7As3w== + dependencies: + accepts "^1.3.5" + cache-content-type "^1.0.0" + content-disposition "~0.5.2" + content-type "^1.0.4" + cookies "~0.8.0" + debug "~3.1.0" + delegates "^1.0.0" + depd "^2.0.0" + destroy "^1.0.4" + encodeurl "^1.0.2" + escape-html "^1.0.3" + fresh "~0.5.2" + http-assert "^1.3.0" + http-errors "^1.6.3" + is-generator-function "^1.0.7" + koa-compose "^4.1.0" + koa-convert "^1.2.0" + on-finished "^2.3.0" + only "~0.0.2" + parseurl "^1.3.2" + statuses "^1.5.0" + type-is "^1.6.16" + vary "^1.1.2" + +last-call-webpack-plugin@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" + integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== + dependencies: + lodash "^4.17.5" + webpack-sources "^1.1.0" + +launch-editor-middleware@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/launch-editor-middleware/-/launch-editor-middleware-2.2.1.tgz#e14b07e6c7154b0a4b86a0fd345784e45804c157" + integrity sha512-s0UO2/gEGiCgei3/2UN3SMuUj1phjQN8lcpnvgLSz26fAzNWPQ6Nf/kF5IFClnfU2ehp6LrmKdMU/beveO+2jg== + dependencies: + launch-editor "^2.2.1" + +launch-editor@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.2.1.tgz#871b5a3ee39d6680fcc26d37930b6eeda89db0ca" + integrity sha512-On+V7K2uZK6wK7x691ycSUbLD/FyKKelArkbaAMSSJU8JmqmhwN2+mnJDNINuJWSrh2L0kDk+ZQtbC/gOWUwLw== + dependencies: + chalk "^2.3.0" + shell-quote "^1.6.1" + +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + +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" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + +load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + +loader-runner@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" + integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== + +loader-runner@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" + integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== + +loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" + integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^1.0.1" + +loader-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" + integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +lodash._reinterpolate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= + +lodash.castarray@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.castarray/-/lodash.castarray-4.4.0.tgz#c02513515e309daddd4c24c60cfddcf5976d9115" + integrity sha1-wCUTUV4wna3dTCTGDP3c9ZdtkRU= + +lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= + +lodash.isplainobject@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= + +lodash.kebabcase@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" + integrity sha1-hImxyw0p/4gZXM7KRI/21swpXDY= + +lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.sortby@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" + integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= + +lodash.template@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" + integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.templatesettings "^4.0.0" + +lodash.templatesettings@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" + integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== + dependencies: + lodash._reinterpolate "^3.0.0" + +lodash.toarray@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" + integrity sha1-JMS/zWsvuji/0FlNsRedjptlZWE= + +lodash.topath@^4.5.2: + version "4.5.2" + resolved "https://registry.yarnpkg.com/lodash.topath/-/lodash.topath-4.5.2.tgz#3616351f3bba61994a0931989660bd03254fd009" + integrity sha1-NhY1Hzu6YZlKCTGYlmC9AyVP0Ak= + +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= + +lodash@4.x, lodash@^4.15.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +longest-streak@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz#b8599957da5b5dab64dee3fe316fa774597d90e4" + integrity sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg== + +loose-envify@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +lower-case@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" + integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= + +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== + dependencies: + tslib "^2.0.3" + +lru-cache@^4.1.2, lru-cache@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +make-dir@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== + dependencies: + pify "^3.0.0" + +make-dir@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== + dependencies: + pify "^4.0.1" + semver "^5.6.0" + +make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0, make-dir@~3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + +make-error@1.x: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +makeerror@1.0.x: + version "1.0.11" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" + integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= + dependencies: + tmpl "1.0.x" + +map-age-cleaner@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + dependencies: + object-visit "^1.0.0" + +markdown-table@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-2.0.0.tgz#194a90ced26d31fe753d8b9434430214c011865b" + integrity sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A== + dependencies: + repeat-string "^1.0.0" + +md5.js@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +mdast-squeeze-paragraphs@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz#7c4c114679c3bee27ef10b58e2e015be79f1ef97" + integrity sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ== + dependencies: + unist-util-remove "^2.0.0" + +mdast-util-definitions@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz#c5c1a84db799173b4dcf7643cda999e440c24db2" + integrity sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ== + dependencies: + unist-util-visit "^2.0.0" + +mdast-util-find-and-replace@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz#b7db1e873f96f66588c321f1363069abf607d1b5" + integrity sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA== + dependencies: + escape-string-regexp "^4.0.0" + unist-util-is "^4.0.0" + unist-util-visit-parents "^3.0.0" + +mdast-util-footnote@^0.1.0: + version "0.1.7" + resolved "https://registry.yarnpkg.com/mdast-util-footnote/-/mdast-util-footnote-0.1.7.tgz#4b226caeab4613a3362c144c94af0fdd6f7e0ef0" + integrity sha512-QxNdO8qSxqbO2e3m09KwDKfWiLgqyCurdWTQ198NpbZ2hxntdc+VKS4fDJCmNWbAroUdYnSthu+XbZ8ovh8C3w== + dependencies: + mdast-util-to-markdown "^0.6.0" + micromark "~2.11.0" + +mdast-util-from-markdown@^0.8.0: + version "0.8.5" + resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz#d1ef2ca42bc377ecb0463a987910dae89bd9a28c" + integrity sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ== + dependencies: + "@types/mdast" "^3.0.0" + mdast-util-to-string "^2.0.0" + micromark "~2.11.0" + parse-entities "^2.0.0" + unist-util-stringify-position "^2.0.0" + +mdast-util-gfm-autolink-literal@^0.1.0: + version "0.1.3" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz#9c4ff399c5ddd2ece40bd3b13e5447d84e385fb7" + integrity sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A== + dependencies: + ccount "^1.0.0" + mdast-util-find-and-replace "^1.1.0" + micromark "^2.11.3" + +mdast-util-gfm-strikethrough@^0.2.0: + version "0.2.3" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz#45eea337b7fff0755a291844fbea79996c322890" + integrity sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA== + dependencies: + mdast-util-to-markdown "^0.6.0" + +mdast-util-gfm-table@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz#af05aeadc8e5ee004eeddfb324b2ad8c029b6ecf" + integrity sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ== + dependencies: + markdown-table "^2.0.0" + mdast-util-to-markdown "~0.6.0" + +mdast-util-gfm-task-list-item@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz#70c885e6b9f543ddd7e6b41f9703ee55b084af10" + integrity sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A== + dependencies: + mdast-util-to-markdown "~0.6.0" + +mdast-util-gfm@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz#8ecddafe57d266540f6881f5c57ff19725bd351c" + integrity sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ== + dependencies: + mdast-util-gfm-autolink-literal "^0.1.0" + mdast-util-gfm-strikethrough "^0.2.0" + mdast-util-gfm-table "^0.1.0" + mdast-util-gfm-task-list-item "^0.1.0" + mdast-util-to-markdown "^0.6.1" + +mdast-util-to-hast@^10.0.0, mdast-util-to-hast@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-10.2.0.tgz#61875526a017d8857b71abc9333942700b2d3604" + integrity sha512-JoPBfJ3gBnHZ18icCwHR50orC9kNH81tiR1gs01D8Q5YpV6adHNO9nKNuFBCJQ941/32PT1a63UF/DitmS3amQ== + dependencies: + "@types/mdast" "^3.0.0" + "@types/unist" "^2.0.0" + mdast-util-definitions "^4.0.0" + mdurl "^1.0.0" + unist-builder "^2.0.0" + unist-util-generated "^1.0.0" + unist-util-position "^3.0.0" + unist-util-visit "^2.0.0" + +mdast-util-to-markdown@^0.6.0, mdast-util-to-markdown@^0.6.1, mdast-util-to-markdown@~0.6.0: + version "0.6.5" + resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz#b33f67ca820d69e6cc527a93d4039249b504bebe" + integrity sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ== + dependencies: + "@types/unist" "^2.0.0" + longest-streak "^2.0.0" + mdast-util-to-string "^2.0.0" + parse-entities "^2.0.0" + repeat-string "^1.0.0" + zwitch "^1.0.0" + +mdast-util-to-string@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz#27055500103f51637bd07d01da01eb1967a43527" + integrity sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A== + +mdast-util-to-string@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz#b8cfe6a713e1091cb5b728fc48885a4767f8b97b" + integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w== + +mdn-data@2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" + integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== + +mdn-data@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" + integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== + +mdurl@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" + integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + +mem@^8.0.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-8.1.0.tgz#445e47827fb757a4e5f35b0a6a62743cbfdc0a0d" + integrity sha512-FIkgXo0kTi3XpvaznV5Muk6Y6w8SkdmRXcY7ZLonQesuYezp59UooLxAVBcGuN6PH2tXN84mR3vyzSc6oSMUfA== + dependencies: + map-age-cleaner "^0.1.3" + mimic-fn "^3.1.0" + +memfs@^3.1.2, memfs@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.2.0.tgz#f9438e622b5acd1daa8a4ae160c496fdd1325b26" + integrity sha512-f/xxz2TpdKv6uDn6GtHee8ivFyxwxmPuXatBb1FBwxYNuVpbM3k/Y1Z+vC0mH/dIXXrukYfe3qe5J32Dfjg93A== + dependencies: + fs-monkey "1.0.1" + +memory-fs@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +memory-fs@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" + integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +merge-source-map@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" + integrity sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw== + dependencies: + source-map "^0.6.1" + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +methods@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + +micromark-extension-footnote@^0.3.0: + version "0.3.2" + resolved "https://registry.yarnpkg.com/micromark-extension-footnote/-/micromark-extension-footnote-0.3.2.tgz#129b74ef4920ce96719b2c06102ee7abb2b88a20" + integrity sha512-gr/BeIxbIWQoUm02cIfK7mdMZ/fbroRpLsck4kvFtjbzP4yi+OPVbnukTc/zy0i7spC2xYE/dbX1Sur8BEDJsQ== + dependencies: + micromark "~2.11.0" + +micromark-extension-gfm-autolink-literal@~0.5.0: + version "0.5.6" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.6.tgz#406a58914d7a9cc6fb4cfafccc61a8ca36d7a12a" + integrity sha512-nHbR1NUOVhmlZNsnhE5B7WJzL7Xd8lc888z4AF27IpHMtO3NstclZmbrMI+AcdTPpO1wuGVwlK1Cnq+n8Sxlrw== + dependencies: + micromark "~2.11.3" + +micromark-extension-gfm-strikethrough@~0.6.5: + version "0.6.5" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz#96cb83356ff87bf31670eefb7ad7bba73e6514d1" + integrity sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw== + dependencies: + micromark "~2.11.0" + +micromark-extension-gfm-table@~0.4.0: + version "0.4.3" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz#4d49f1ce0ca84996c853880b9446698947f1802b" + integrity sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA== + dependencies: + micromark "~2.11.0" + +micromark-extension-gfm-tagfilter@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz#d9f26a65adee984c9ccdd7e182220493562841ad" + integrity sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q== + +micromark-extension-gfm-task-list-item@~0.3.0: + version "0.3.3" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz#d90c755f2533ed55a718129cee11257f136283b8" + integrity sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ== + dependencies: + micromark "~2.11.0" + +micromark-extension-gfm@^0.3.0: + version "0.3.3" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz#36d1a4c089ca8bdfd978c9bd2bf1a0cb24e2acfe" + integrity sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A== + dependencies: + micromark "~2.11.0" + micromark-extension-gfm-autolink-literal "~0.5.0" + micromark-extension-gfm-strikethrough "~0.6.5" + micromark-extension-gfm-table "~0.4.0" + micromark-extension-gfm-tagfilter "~0.3.0" + micromark-extension-gfm-task-list-item "~0.3.0" + +micromark@^2.11.3, micromark@~2.11.0, micromark@~2.11.3: + version "2.11.4" + resolved "https://registry.yarnpkg.com/micromark/-/micromark-2.11.4.tgz#d13436138eea826383e822449c9a5c50ee44665a" + integrity sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA== + dependencies: + debug "^4.0.0" + parse-entities "^2.0.0" + +micromatch@^3.1.10, micromatch@^3.1.4: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" + +micromatch@^4.0.0, micromatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" + integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== + dependencies: + braces "^3.0.1" + picomatch "^2.0.5" + +miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +mime-db@1.46.0, "mime-db@>= 1.43.0 < 2": + version "1.46.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.46.0.tgz#6267748a7f799594de3cbc8cde91def349661cee" + integrity sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ== + +mime-types@^2.1.12, mime-types@^2.1.18, mime-types@^2.1.19, mime-types@^2.1.27, mime-types@^2.1.28, mime-types@~2.1.19, mime-types@~2.1.24: + version "2.1.29" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.29.tgz#1d4ab77da64b91f5f72489df29236563754bb1b2" + integrity sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ== + dependencies: + mime-db "1.46.0" + +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mime@^2.3.1, mime@~2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz#6e3dc6cc2b9510643830e5f19d5cb753da5eeabe" + integrity sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg== + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +mimic-fn@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-3.1.0.tgz#65755145bbf3e36954b949c16450427451d5ca74" + integrity sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ== + +mini-svg-data-uri@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/mini-svg-data-uri/-/mini-svg-data-uri-1.2.3.tgz#e16baa92ad55ddaa1c2c135759129f41910bc39f" + integrity sha512-zd6KCAyXgmq6FV1mR10oKXYtvmA9vRoB6xPSTUJTbFApCtkefDnYueVR1gkof3KcdLZo1Y8mjF2DFmQMIxsHNQ== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= + +minimatch@^3.0.4, minimatch@~3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-pipeline@^1.2.2: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + +minipass@^3.0.0, minipass@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" + integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== + dependencies: + yallist "^4.0.0" + +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + +mississippi@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" + integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^3.0.0" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mkdirp@1.x, mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.1: + 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" + +modern-normalize@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/modern-normalize/-/modern-normalize-1.0.0.tgz#539d84a1e141338b01b346f3e27396d0ed17601e" + integrity sha512-1lM+BMLGuDfsdwf3rsgBSrxJwAZHFIrQ8YR61xIqdHo0uNKI9M52wNpHSrliZATJp51On6JD0AfRxd4YGSU0lw== + +move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= + dependencies: + aproba "^1.1.1" + copy-concurrently "^1.0.0" + fs-write-stream-atomic "^1.0.8" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.3" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +multimap@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/multimap/-/multimap-1.1.0.tgz#5263febc085a1791c33b59bb3afc6a76a2a10ca8" + integrity sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw== + +mustache@^2.3.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/mustache/-/mustache-2.3.2.tgz#a6d4d9c3f91d13359ab889a812954f9230a3d0c5" + integrity sha512-KpMNwdQsYz3O/SBS1qJ/o3sqUJ5wSb8gb0pul8CO0S56b9Y2ALm8zCfsjPXsqGFfoNBkDwZuZIAjhsZI03gYVQ== + +mute-stream@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== + +nan@^2.12.1: + version "2.14.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" + integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== + +nanoid@^3.1.20, nanoid@^3.1.22: + version "3.1.22" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.22.tgz#b35f8fb7d151990a8aebd5aa5015c03cf726f844" + integrity sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ== + +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + +negotiator@0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + +neo-async@^2.5.0, neo-async@^2.6.1, neo-async@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +no-case@^2.2.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" + integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== + dependencies: + lower-case "^1.1.1" + +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== + dependencies: + lower-case "^2.0.2" + tslib "^2.0.3" + +node-addon-api@^1.7.1: + version "1.7.2" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d" + integrity sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg== + +node-cache@^4.1.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/node-cache/-/node-cache-4.2.1.tgz#efd8474dee4edec4138cdded580f5516500f7334" + integrity sha512-BOb67bWg2dTyax5kdef5WfU3X8xu4wPg+zHzkvls0Q/QpYycIFRLEEIdAx9Wma43DxG6Qzn4illdZoYseKWa4A== + dependencies: + clone "2.x" + lodash "^4.17.15" + +node-emoji@^1.8.1: + version "1.10.0" + resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.10.0.tgz#8886abd25d9c7bb61802a658523d1f8d2a89b2da" + integrity sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw== + dependencies: + lodash.toarray "^4.4.0" + +node-fetch@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" + integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== + +node-html-parser@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/node-html-parser/-/node-html-parser-2.2.1.tgz#6507a8658810d1612890a8ddd534e01b2f97e07e" + integrity sha512-Vccqb62t6t7DkMVwqPQgb0NWO+gUMMDm+1X3LzqbtXLqjilCTtUYTlniKk08yuA1zIhEFVzu/dozpqs5KZbRFQ== + dependencies: + he "1.2.0" + +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= + +node-libs-browser@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" + integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== + dependencies: + assert "^1.1.1" + browserify-zlib "^0.2.0" + buffer "^4.3.0" + console-browserify "^1.1.0" + constants-browserify "^1.0.0" + crypto-browserify "^3.11.0" + domain-browser "^1.1.1" + events "^3.0.0" + https-browserify "^1.0.0" + os-browserify "^0.3.0" + path-browserify "0.0.1" + process "^0.11.10" + punycode "^1.2.4" + querystring-es3 "^0.2.0" + readable-stream "^2.3.3" + stream-browserify "^2.0.1" + stream-http "^2.7.2" + string_decoder "^1.0.0" + timers-browserify "^2.0.4" + tty-browserify "0.0.0" + url "^0.11.0" + util "^0.11.0" + vm-browserify "^1.0.1" + +node-modules-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" + integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= + +node-notifier@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" + integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== + dependencies: + growly "^1.3.0" + is-wsl "^2.2.0" + semver "^7.3.2" + shellwords "^0.1.1" + uuid "^8.3.0" + which "^2.0.2" + +node-object-hash@^1.2.0: + version "1.4.2" + resolved "https://registry.yarnpkg.com/node-object-hash/-/node-object-hash-1.4.2.tgz#385833d85b229902b75826224f6077be969a9e94" + integrity sha512-UdS4swXs85fCGWWf6t6DMGgpN/vnlKeSGEQ7hJcrs7PBFoxoKLmibc3QRb7fwiYsjdL7PX8iI/TMSlZ90dgHhQ== + +node-releases@^1.1.70: + version "1.1.71" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.71.tgz#cb1334b179896b1c89ecfdd4b725fb7bbdfc7dbb" + integrity sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg== + +node-req@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/node-req/-/node-req-2.1.2.tgz#32db660855db03b456de370ee0d53ecd6220287e" + integrity sha512-zJqZ03vs0oHN8u+wn7kUT/vj63jQdQvNYWjbRMGNVu7ijV3mVz8UwX7pJl7LUugOT2x8vBKasKqbUqnh6GDKMQ== + dependencies: + accepts "^1.3.5" + fresh "^0.5.2" + parseurl "^1.3.2" + proxy-addr "^2.0.4" + qs "^6.5.2" + type-is "^1.6.16" + +node-res@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/node-res/-/node-res-5.0.1.tgz#ffaa462e206509d66d0ba28a4daf1f032daa6460" + integrity sha512-YOleO9c7MAqoHC+Ccu2vzvV1fL6Ku49gShq3PIMKWHRgrMSih3XcwL05NbLBi6oU2J471gTBfdpVVxwT6Pfhxg== + dependencies: + destroy "^1.0.4" + etag "^1.8.1" + mime-types "^2.1.19" + on-finished "^2.3.0" + vary "^1.1.2" + +nopt@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== + dependencies: + abbrev "1" + +normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= + +normalize-url@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" + integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= + dependencies: + object-assign "^4.0.1" + prepend-http "^1.0.0" + query-string "^4.1.0" + sort-keys "^1.0.0" + +normalize-url@^3.0.0, normalize-url@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" + integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= + dependencies: + path-key "^2.0.0" + +npm-run-path@^4.0.0, npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +nth-check@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" + integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== + dependencies: + boolbase "~1.0.0" + +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= + +nuxt-i18n@^6.24.0: + version "6.24.0" + resolved "https://registry.yarnpkg.com/nuxt-i18n/-/nuxt-i18n-6.24.0.tgz#adc7cc64c95ef8325cadd1c29726ce4662619068" + integrity sha512-GrJzeSg31cDqmgT3TPt00mJ/flJ4qyL5AMf/fL6hvkMjRvlRyKcQRbGOvRYi9D0yef4RPM6sWBILskI/PZbPyQ== + dependencies: + "@babel/parser" "^7.5.5" + "@babel/traverse" "^7.5.5" + "@intlify/vue-i18n-extensions" "^1.0.1" + "@intlify/vue-i18n-loader" "^1.0.0" + cookie "^0.4.0" + devalue "^2.0.1" + js-cookie "^2.2.1" + klona "^2.0.4" + lodash.merge "^4.6.2" + ufo "^0.6.7" + vue-i18n "^8.23.0" + +nuxt-property-decorator@^2.9.1: + version "2.9.1" + resolved "https://registry.yarnpkg.com/nuxt-property-decorator/-/nuxt-property-decorator-2.9.1.tgz#60fd87b64d85519b091374c7ea4c0ce1979f6afa" + integrity sha512-dE2GrrGKZMhv0dHAr+Lmj+JOQfjIouINgF58QNRDFNOZXMJrXxKO5zGqvCRwmx3hxqqwht7TXHdz9w1AnvL2IA== + dependencies: + vue-class-component "^7.2.6" + vue-property-decorator "^9.0.0" + vuex-class "^0.3.2" + vuex-module-decorators "^1.0.1" + +nuxt@^2.15.3: + version "2.15.3" + resolved "https://registry.yarnpkg.com/nuxt/-/nuxt-2.15.3.tgz#6262707de8a824df0718fc88653c74a916aa5122" + integrity sha512-zeeOr7KxTYE0nbztUvH3YtcU+V5cZxuIhErBFt+ckFJ1R7uiptrfFrtVPouPm2uU4Kj+8MdARCQq+hzdfwUQig== + dependencies: + "@nuxt/babel-preset-app" "2.15.3" + "@nuxt/builder" "2.15.3" + "@nuxt/cli" "2.15.3" + "@nuxt/components" "^2.1.2" + "@nuxt/config" "2.15.3" + "@nuxt/core" "2.15.3" + "@nuxt/generator" "2.15.3" + "@nuxt/loading-screen" "^2.0.3" + "@nuxt/opencollective" "^0.3.2" + "@nuxt/server" "2.15.3" + "@nuxt/telemetry" "^1.3.3" + "@nuxt/utils" "2.15.3" + "@nuxt/vue-app" "2.15.3" + "@nuxt/vue-renderer" "2.15.3" + "@nuxt/webpack" "2.15.3" + +nwsapi@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" + integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== + +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-hash@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.1.1.tgz#9447d0279b4fcf80cff3259bf66a1dc73afabe09" + integrity sha512-VOJmgmS+7wvXf8CjbQmimtCnEx3IAoLxI3fp2fbWehxrWBcAQFbk+vcwb6vzR0VZv/eNCJ/27j151ZTwqW/JeQ== + +object-inspect@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.9.0.tgz#c90521d74e1127b67266ded3394ad6116986533a" + integrity sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw== + +object-keys@^1.0.12, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + dependencies: + isobject "^3.0.0" + +object.assign@^4.1.0, object.assign@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" + integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + has-symbols "^1.0.1" + object-keys "^1.1.1" + +object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz#1bd63aeacf0d5d2d2f31b5e393b03a7c601a23f7" + integrity sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.2" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + dependencies: + isobject "^3.0.1" + +object.values@^1.1.0, object.values@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.3.tgz#eaa8b1e17589f02f698db093f7c62ee1699742ee" + integrity sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.2" + has "^1.0.3" + +on-finished@^2.3.0, on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= + dependencies: + ee-first "1.1.1" + +on-headers@^1.0.2, on-headers@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" + integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +onetime@^5.1.0, onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +only@~0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/only/-/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4" + integrity sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q= + +open@^7.0.4: + version "7.4.2" + resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" + integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== + dependencies: + is-docker "^2.0.0" + is-wsl "^2.1.1" + +opener@1.5.2, opener@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" + integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== + +optimize-css-assets-webpack-plugin@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.4.tgz#85883c6528aaa02e30bbad9908c92926bb52dc90" + integrity sha512-wqd6FdI2a5/FdoiCNNkEvLeA//lHHfG24Ln2Xm2qqdIk4aOlsR18jwpyOihqQ8849W3qu2DX8fOYxpvTMj+93A== + dependencies: + cssnano "^4.1.10" + last-call-webpack-plugin "^3.0.0" + +optionator@^0.8.1: + version "0.8.3" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + +os-browserify@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" + integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= + +os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= + +p-each-series@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" + integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + dependencies: + p-try "^1.0.0" + +p-limit@^2.0.0, p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + dependencies: + p-limit "^1.1.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-queue@6.6.2: + version "6.6.2" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" + integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== + dependencies: + eventemitter3 "^4.0.4" + p-timeout "^3.2.0" + +p-timeout@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" + integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== + dependencies: + p-finally "^1.0.0" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +pako@~1.0.5: + version "1.0.11" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" + integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== + +parallel-transform@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" + integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== + dependencies: + cyclist "^1.0.1" + inherits "^2.0.3" + readable-stream "^2.1.5" + +param-case@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" + integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= + dependencies: + no-case "^2.2.0" + +param-case@^3.0.3, param-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parent-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-2.0.0.tgz#fa71f88ff1a50c27e15d8ff74e0e3a9523bf8708" + integrity sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg== + dependencies: + callsites "^3.1.0" + +parse-asn1@^5.0.0, parse-asn1@^5.1.5: + version "5.1.6" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" + integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== + dependencies: + asn1.js "^5.2.0" + browserify-aes "^1.0.0" + evp_bytestokey "^1.0.0" + pbkdf2 "^3.0.3" + safe-buffer "^5.1.1" + +parse-entities@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" + integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== + dependencies: + character-entities "^1.0.0" + character-entities-legacy "^1.0.0" + character-reference-invalid "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.0" + is-hexadecimal "^1.0.0" + +parse-git-config@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/parse-git-config/-/parse-git-config-3.0.0.tgz#4a2de08c7b74a2555efa5ae94d40cd44302a6132" + integrity sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA== + dependencies: + git-config-path "^2.0.0" + ini "^1.3.5" + +parse-glob@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" + integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= + dependencies: + glob-base "^0.3.0" + is-dotfile "^1.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.0" + +parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= + dependencies: + error-ex "^1.2.0" + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + +parse-path@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf" + integrity sha512-9Cepbp2asKnWTJ9x2kpw6Fe8y9JDbqwahGCTvklzd/cEq5C5JC59x2Xb0Kx+x0QZ8bvNquGO8/BWP0cwBHzSAA== + dependencies: + is-ssh "^1.3.0" + protocols "^1.4.0" + qs "^6.9.4" + query-string "^6.13.8" + +parse-url@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-5.0.2.tgz#856a3be1fcdf78dc93fc8b3791f169072d898b59" + integrity sha512-Czj+GIit4cdWtxo3ISZCvLiUjErSo0iI3wJ+q9Oi3QuMYTI6OZu+7cewMWZ+C1YAnKhYTk6/TLuhIgCypLthPA== + dependencies: + is-ssh "^1.3.0" + normalize-url "^3.3.0" + parse-path "^4.0.0" + protocols "^1.4.0" + +parse5@6.0.1, parse5@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + +parseurl@^1.3.2, parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +pascal-case@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + +path-browserify@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" + integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== + +path-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.4.tgz#9168645334eb942658375c56f80b4c0cb5f82c6f" + integrity sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@1.0.1, path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" + integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== + +path-to-regexp@^6.1.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.2.0.tgz#f7b3803336104c346889adece614669230645f38" + integrity sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg== + +path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= + dependencies: + pify "^2.0.0" + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +pbkdf2@^3.0.3: + version "3.1.1" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94" + integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg== + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + +picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" + integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== + +pify@^2.0.0, pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + +pify@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" + integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== + +pirates@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" + integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== + dependencies: + node-modules-regexp "^1.0.0" + +pkg-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= + dependencies: + find-up "^2.1.0" + +pkg-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== + dependencies: + find-up "^3.0.0" + +pkg-dir@^4.1.0, pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + +pluralize@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" + integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== + +pnp-webpack-plugin@^1.6.4: + version "1.6.4" + resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" + integrity sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg== + dependencies: + ts-pnp "^1.1.6" + +portfinder@^1.0.26: + version "1.0.28" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778" + integrity sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA== + dependencies: + async "^2.6.2" + debug "^3.1.1" + mkdirp "^0.5.5" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + +postcss-attribute-case-insensitive@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz#d93e46b504589e94ac7277b0463226c68041a880" + integrity sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA== + dependencies: + postcss "^7.0.2" + postcss-selector-parser "^6.0.2" + +postcss-calc@^7.0.1: + version "7.0.5" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e" + integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg== + dependencies: + postcss "^7.0.27" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.0.2" + +postcss-color-functional-notation@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" + integrity sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g== + dependencies: + postcss "^7.0.2" + postcss-values-parser "^2.0.0" + +postcss-color-gray@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz#532a31eb909f8da898ceffe296fdc1f864be8547" + integrity sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw== + dependencies: + "@csstools/convert-colors" "^1.4.0" + postcss "^7.0.5" + postcss-values-parser "^2.0.0" + +postcss-color-hex-alpha@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz#a8d9ca4c39d497c9661e374b9c51899ef0f87388" + integrity sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw== + dependencies: + postcss "^7.0.14" + postcss-values-parser "^2.0.1" + +postcss-color-mod-function@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" + integrity sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ== + dependencies: + "@csstools/convert-colors" "^1.4.0" + postcss "^7.0.2" + postcss-values-parser "^2.0.0" + +postcss-color-rebeccapurple@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" + integrity sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g== + dependencies: + postcss "^7.0.2" + postcss-values-parser "^2.0.0" + +postcss-colormin@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381" + integrity sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw== + dependencies: + browserslist "^4.0.0" + color "^3.0.0" + has "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-convert-values@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" + integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== + dependencies: + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-custom-media@^7.0.8: + version "7.0.8" + resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz#fffd13ffeffad73621be5f387076a28b00294e0c" + integrity sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg== + dependencies: + postcss "^7.0.14" + +postcss-custom-properties@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-11.0.0.tgz#f98cd192cd8dfcd8afa3baa1ad5b5d91d01292f3" + integrity sha512-Fhnx/QLt+CTt23A/KKVx1anZD9nmVpOxKCKv5owWacMoOsBXFhMAD6SZYbmPMH4nHdIeMUnWOvLZnlY4niS0sA== + dependencies: + postcss-values-parser "^4.0.0" + +postcss-custom-properties@^8.0.11: + version "8.0.11" + resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz#2d61772d6e92f22f5e0d52602df8fae46fa30d97" + integrity sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA== + dependencies: + postcss "^7.0.17" + postcss-values-parser "^2.0.1" + +postcss-custom-selectors@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" + integrity sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w== + dependencies: + postcss "^7.0.2" + postcss-selector-parser "^5.0.0-rc.3" + +postcss-dir-pseudo-class@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" + integrity sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw== + dependencies: + postcss "^7.0.2" + postcss-selector-parser "^5.0.0-rc.3" + +postcss-discard-comments@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033" + integrity sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg== + dependencies: + postcss "^7.0.0" + +postcss-discard-duplicates@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" + integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== + dependencies: + postcss "^7.0.0" + +postcss-discard-empty@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" + integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== + dependencies: + postcss "^7.0.0" + +postcss-discard-overridden@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" + integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== + dependencies: + postcss "^7.0.0" + +postcss-double-position-gradients@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz#fc927d52fddc896cb3a2812ebc5df147e110522e" + integrity sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA== + dependencies: + postcss "^7.0.5" + postcss-values-parser "^2.0.0" + +postcss-env-function@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" + integrity sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw== + dependencies: + postcss "^7.0.2" + postcss-values-parser "^2.0.0" + +postcss-focus-visible@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" + integrity sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g== + dependencies: + postcss "^7.0.2" + +postcss-focus-within@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" + integrity sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w== + dependencies: + postcss "^7.0.2" + +postcss-font-variant@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz#42d4c0ab30894f60f98b17561eb5c0321f502641" + integrity sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA== + dependencies: + postcss "^7.0.2" + +postcss-functions@^3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-functions/-/postcss-functions-3.0.0.tgz#0e94d01444700a481de20de4d55fb2640564250e" + integrity sha1-DpTQFERwCkgd4g3k1V+yZAVkJQ4= + dependencies: + glob "^7.1.2" + object-assign "^4.1.1" + postcss "^6.0.9" + postcss-value-parser "^3.3.0" + +postcss-gap-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" + integrity sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg== + dependencies: + postcss "^7.0.2" + +postcss-image-set-function@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" + integrity sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw== + dependencies: + postcss "^7.0.2" + postcss-values-parser "^2.0.0" + +postcss-import-resolver@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-import-resolver/-/postcss-import-resolver-2.0.0.tgz#95c61ac5489047bd93ff42a9cd405cfe9041e2c0" + integrity sha512-y001XYgGvVwgxyxw9J1a5kqM/vtmIQGzx34g0A0Oy44MFcy/ZboZw1hu/iN3VYFjSTRzbvd7zZJJz0Kh0AGkTw== + dependencies: + enhanced-resolve "^4.1.1" + +postcss-import@^12.0.1: + version "12.0.1" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-12.0.1.tgz#cf8c7ab0b5ccab5649024536e565f841928b7153" + integrity sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw== + dependencies: + postcss "^7.0.1" + postcss-value-parser "^3.2.3" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-import@^13.0.0: + version "13.0.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-13.0.0.tgz#d6960cd9e3de5464743b04dd8cd9d870662f8b8c" + integrity sha512-LPUbm3ytpYopwQQjqgUH4S3EM/Gb9QsaSPP/5vnoi+oKVy3/mIk2sc0Paqw7RL57GpScm9MdIMUypw2znWiBpg== + dependencies: + postcss-value-parser "^4.0.0" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-initial@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.2.tgz#f018563694b3c16ae8eaabe3c585ac6319637b2d" + integrity sha512-ugA2wKonC0xeNHgirR4D3VWHs2JcU08WAi1KFLVcnb7IN89phID6Qtg2RIctWbnvp1TM2BOmDtX8GGLCKdR8YA== + dependencies: + lodash.template "^4.5.0" + postcss "^7.0.2" + +postcss-js@^2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-2.0.3.tgz#a96f0f23ff3d08cec7dc5b11bf11c5f8077cdab9" + integrity sha512-zS59pAk3deu6dVHyrGqmC3oDXBdNdajk4k1RyxeVXCrcEDBUBHoIhE4QTsmhxgzXxsaqFDAkUZfmMa5f/N/79w== + dependencies: + camelcase-css "^2.0.1" + postcss "^7.0.18" + +postcss-js@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-3.0.3.tgz#2f0bd370a2e8599d45439f6970403b5873abda33" + integrity sha512-gWnoWQXKFw65Hk/mi2+WTQTHdPD5UJdDXZmX073EY/B3BWnYjO4F4t0VneTCnCGQ5E5GsCdMkzPaTXwl3r5dJw== + dependencies: + camelcase-css "^2.0.1" + postcss "^8.1.6" + +postcss-lab-function@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" + integrity sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg== + dependencies: + "@csstools/convert-colors" "^1.4.0" + postcss "^7.0.2" + postcss-values-parser "^2.0.0" + +postcss-load-config@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a" + integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw== + dependencies: + cosmiconfig "^5.0.0" + import-cwd "^2.0.0" + +postcss-loader@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" + integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== + dependencies: + loader-utils "^1.1.0" + postcss "^7.0.0" + postcss-load-config "^2.0.0" + schema-utils "^1.0.0" + +postcss-loader@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-4.2.0.tgz#f6993ea3e0f46600fb3ee49bbd010448123a7db4" + integrity sha512-mqgScxHqbiz1yxbnNcPdKYo/6aVt+XExURmEbQlviFVWogDbM4AJ0A/B+ZBpYsJrTRxKw7HyRazg9x0Q9SWwLA== + dependencies: + cosmiconfig "^7.0.0" + klona "^2.0.4" + loader-utils "^2.0.0" + schema-utils "^3.0.0" + semver "^7.3.4" + +postcss-logical@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" + integrity sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA== + dependencies: + postcss "^7.0.2" + +postcss-media-minmax@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" + integrity sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw== + dependencies: + postcss "^7.0.2" + +postcss-merge-longhand@^4.0.11: + version "4.0.11" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" + integrity sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw== + dependencies: + css-color-names "0.0.4" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + stylehacks "^4.0.0" + +postcss-merge-rules@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650" + integrity sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ== + dependencies: + browserslist "^4.0.0" + caniuse-api "^3.0.0" + cssnano-util-same-parent "^4.0.0" + postcss "^7.0.0" + postcss-selector-parser "^3.0.0" + vendors "^1.0.0" + +postcss-minify-font-values@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" + integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== + dependencies: + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-minify-gradients@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471" + integrity sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q== + dependencies: + cssnano-util-get-arguments "^4.0.0" + is-color-stop "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-minify-params@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874" + integrity sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg== + dependencies: + alphanum-sort "^1.0.0" + browserslist "^4.0.0" + cssnano-util-get-arguments "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + uniqs "^2.0.0" + +postcss-minify-selectors@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8" + integrity sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g== + dependencies: + alphanum-sort "^1.0.0" + has "^1.0.0" + postcss "^7.0.0" + postcss-selector-parser "^3.0.0" + +postcss-modules-extract-imports@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" + integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== + dependencies: + postcss "^7.0.5" + +postcss-modules-extract-imports@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" + integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== + +postcss-modules-local-by-default@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" + integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== + dependencies: + icss-utils "^4.1.1" + postcss "^7.0.32" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.1.0" + +postcss-modules-local-by-default@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c" + integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== + dependencies: + icss-utils "^5.0.0" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.1.0" + +postcss-modules-scope@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" + integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== + dependencies: + postcss "^7.0.6" + postcss-selector-parser "^6.0.0" + +postcss-modules-scope@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" + integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== + dependencies: + postcss-selector-parser "^6.0.4" + +postcss-modules-values@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" + integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== + dependencies: + icss-utils "^4.0.0" + postcss "^7.0.6" + +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== + dependencies: + icss-utils "^5.0.0" + +postcss-nested@^4: + version "4.2.3" + resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-4.2.3.tgz#c6f255b0a720549776d220d00c4b70cd244136f6" + integrity sha512-rOv0W1HquRCamWy2kFl3QazJMMe1ku6rCFoAAH+9AcxdbpDeBr6k968MLWuLjvjMcGEip01ak09hKOEgpK9hvw== + dependencies: + postcss "^7.0.32" + postcss-selector-parser "^6.0.2" + +postcss-nested@^5.0.5: + version "5.0.5" + resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-5.0.5.tgz#f0a107d33a9fab11d7637205f5321e27223e3603" + integrity sha512-GSRXYz5bccobpTzLQZXOnSOfKl6TwVr5CyAQJUPub4nuRJSOECK5AqurxVgmtxP48p0Kc/ndY/YyS1yqldX0Ew== + dependencies: + postcss-selector-parser "^6.0.4" + +postcss-nesting@^7.0.0, postcss-nesting@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.1.tgz#b50ad7b7f0173e5b5e3880c3501344703e04c052" + integrity sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg== + dependencies: + postcss "^7.0.2" + +postcss-normalize-charset@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" + integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== + dependencies: + postcss "^7.0.0" + +postcss-normalize-display-values@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a" + integrity sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ== + dependencies: + cssnano-util-get-match "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-positions@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f" + integrity sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA== + dependencies: + cssnano-util-get-arguments "^4.0.0" + has "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-repeat-style@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c" + integrity sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q== + dependencies: + cssnano-util-get-arguments "^4.0.0" + cssnano-util-get-match "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-string@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c" + integrity sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA== + dependencies: + has "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-timing-functions@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9" + integrity sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A== + dependencies: + cssnano-util-get-match "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-unicode@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" + integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== + dependencies: + browserslist "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-url@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" + integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== + dependencies: + is-absolute-url "^2.0.0" + normalize-url "^3.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-normalize-whitespace@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82" + integrity sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA== + dependencies: + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-ordered-values@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee" + integrity sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw== + dependencies: + cssnano-util-get-arguments "^4.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-overflow-shorthand@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" + integrity sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g== + dependencies: + postcss "^7.0.2" + +postcss-page-break@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" + integrity sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ== + dependencies: + postcss "^7.0.2" + +postcss-place@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" + integrity sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg== + dependencies: + postcss "^7.0.2" + postcss-values-parser "^2.0.0" + +postcss-preset-env@^6.7.0: + version "6.7.0" + resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz#c34ddacf8f902383b35ad1e030f178f4cdf118a5" + integrity sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg== + dependencies: + autoprefixer "^9.6.1" + browserslist "^4.6.4" + caniuse-lite "^1.0.30000981" + css-blank-pseudo "^0.1.4" + css-has-pseudo "^0.10.0" + css-prefers-color-scheme "^3.1.1" + cssdb "^4.4.0" + postcss "^7.0.17" + postcss-attribute-case-insensitive "^4.0.1" + postcss-color-functional-notation "^2.0.1" + postcss-color-gray "^5.0.0" + postcss-color-hex-alpha "^5.0.3" + postcss-color-mod-function "^3.0.3" + postcss-color-rebeccapurple "^4.0.1" + postcss-custom-media "^7.0.8" + postcss-custom-properties "^8.0.11" + postcss-custom-selectors "^5.1.2" + postcss-dir-pseudo-class "^5.0.0" + postcss-double-position-gradients "^1.0.0" + postcss-env-function "^2.0.2" + postcss-focus-visible "^4.0.0" + postcss-focus-within "^3.0.0" + postcss-font-variant "^4.0.0" + postcss-gap-properties "^2.0.0" + postcss-image-set-function "^3.0.1" + postcss-initial "^3.0.0" + postcss-lab-function "^2.0.1" + postcss-logical "^3.0.0" + postcss-media-minmax "^4.0.0" + postcss-nesting "^7.0.0" + postcss-overflow-shorthand "^2.0.0" + postcss-page-break "^2.0.0" + postcss-place "^4.0.1" + postcss-pseudo-class-any-link "^6.0.0" + postcss-replace-overflow-wrap "^3.0.0" + postcss-selector-matches "^4.0.0" + postcss-selector-not "^4.0.0" + +postcss-pseudo-class-any-link@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" + integrity sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew== + dependencies: + postcss "^7.0.2" + postcss-selector-parser "^5.0.0-rc.3" + +postcss-reduce-initial@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df" + integrity sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA== + dependencies: + browserslist "^4.0.0" + caniuse-api "^3.0.0" + has "^1.0.0" + postcss "^7.0.0" + +postcss-reduce-transforms@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29" + integrity sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg== + dependencies: + cssnano-util-get-match "^4.0.0" + has "^1.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + +postcss-replace-overflow-wrap@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" + integrity sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw== + dependencies: + postcss "^7.0.2" + +postcss-selector-matches@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" + integrity sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww== + dependencies: + balanced-match "^1.0.0" + postcss "^7.0.2" + +postcss-selector-not@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz#263016eef1cf219e0ade9a913780fc1f48204cbf" + integrity sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ== + dependencies: + balanced-match "^1.0.0" + postcss "^7.0.2" + +postcss-selector-parser@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz#b310f5c4c0fdaf76f94902bbaa30db6aa84f5270" + integrity sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA== + dependencies: + dot-prop "^5.2.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + +postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: + version "5.0.0" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" + integrity sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ== + dependencies: + cssesc "^2.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + +postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" + integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== + dependencies: + cssesc "^3.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + util-deprecate "^1.0.2" + +postcss-svgo@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258" + integrity sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw== + dependencies: + is-svg "^3.0.0" + postcss "^7.0.0" + postcss-value-parser "^3.0.0" + svgo "^1.0.0" + +postcss-unique-selectors@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" + integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== + dependencies: + alphanum-sort "^1.0.0" + postcss "^7.0.0" + uniqs "^2.0.0" + +postcss-url@^10.1.1: + version "10.1.3" + resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-10.1.3.tgz#54120cc910309e2475ec05c2cfa8f8a2deafdf1e" + integrity sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw== + dependencies: + make-dir "~3.1.0" + mime "~2.5.2" + minimatch "~3.0.4" + xxhashjs "~0.2.2" + +postcss-url@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-8.0.0.tgz#7b10059bd12929cdbb1971c60f61a0e5af86b4ca" + integrity sha512-E2cbOQ5aii2zNHh8F6fk1cxls7QVFZjLPSrqvmiza8OuXLzIpErij8BDS5Y3STPfJgpIMNCPEr8JlKQWEoozUw== + dependencies: + mime "^2.3.1" + minimatch "^3.0.4" + mkdirp "^0.5.0" + postcss "^7.0.2" + xxhashjs "^0.2.1" + +postcss-value-parser@^3.0.0, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" + integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== + +postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" + integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== + +postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" + integrity sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg== + dependencies: + flatten "^1.0.2" + indexes-of "^1.0.1" + uniq "^1.0.1" + +postcss-values-parser@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-4.0.0.tgz#3b4625e649279613f52842f1c81f2064321beec7" + integrity sha512-R9x2D87FcbhwXUmoCXJR85M1BLII5suXRuXibGYyBJ7lVDEpRIdKZh4+8q5S+/+A4m0IoG1U5tFw39asyhX/Hw== + dependencies: + color-name "^1.1.4" + is-url-superb "^4.0.0" + postcss "^7.0.5" + +postcss@7.x.x, postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.18, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: + version "7.0.35" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" + integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== + dependencies: + chalk "^2.4.2" + source-map "^0.6.1" + supports-color "^6.1.0" + +postcss@^6.0.9: + version "6.0.23" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" + integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== + dependencies: + chalk "^2.4.1" + source-map "^0.6.1" + supports-color "^5.4.0" + +postcss@^8.1.10, postcss@^8.1.6, postcss@^8.2.1, postcss@^8.2.8: + version "8.2.8" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.8.tgz#0b90f9382efda424c4f0f69a2ead6f6830d08ece" + integrity sha512-1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw== + dependencies: + colorette "^1.2.2" + nanoid "^3.1.20" + source-map "^0.6.1" + +postcss@^8.2.9: + version "8.2.10" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.10.tgz#ca7a042aa8aff494b334d0ff3e9e77079f6f702b" + integrity sha512-b/h7CPV7QEdrqIxtAf2j31U5ef05uBDuvoXv6L51Q4rcS1jdlXAVKJv+atCFdUXYl9dyTHGyoMzIepwowRJjFw== + dependencies: + colorette "^1.2.2" + nanoid "^3.1.22" + source-map "^0.6.1" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + +prepend-http@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= + +prettier-linter-helpers@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + dependencies: + fast-diff "^1.1.2" + +prettier@^1.18.2: + version "1.19.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" + integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== + +prettier@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" + integrity sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q== + +pretty-bytes@^5.6.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" + integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg== + +pretty-error@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6" + integrity sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw== + dependencies: + lodash "^4.17.20" + renderkid "^2.0.4" + +pretty-format@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" + integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== + dependencies: + "@jest/types" "^26.6.2" + ansi-regex "^5.0.0" + ansi-styles "^4.0.0" + react-is "^17.0.1" + +pretty-hrtime@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" + integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= + +pretty-time@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pretty-time/-/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e" + integrity sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA== + +pretty@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pretty/-/pretty-2.0.0.tgz#adbc7960b7bbfe289a557dc5f737619a220d06a5" + integrity sha1-rbx5YLe7/iiaVX3F9zdhmiINBqU= + dependencies: + condense-newlines "^0.2.1" + extend-shallow "^2.0.1" + js-beautify "^1.6.12" + +prismjs@^1.23.0: + version "1.23.0" + resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.23.0.tgz#d3b3967f7d72440690497652a9d40ff046067f33" + integrity sha512-c29LVsqOaLbBHuIbsTxaKENh1N2EQBOHaWv7gkHN4dgRbxSREqDnDbtFJYdpPauS4YCplMSNCABQ6Eeor69bAA== + optionalDependencies: + clipboard "^2.0.0" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +process@^0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= + +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= + +prompts@^2.0.1: + version "2.4.0" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.0.tgz#4aa5de0723a231d1ee9121c40fdf663df73f61d7" + integrity sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" + +proper-lockfile@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-4.1.2.tgz#c8b9de2af6b2f1601067f98e01ac66baa223141f" + integrity sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA== + dependencies: + graceful-fs "^4.2.4" + retry "^0.12.0" + signal-exit "^3.0.2" + +property-information@^5.0.0, property-information@^5.3.0, property-information@^5.6.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.6.0.tgz#61675545fb23002f245c6540ec46077d4da3ed69" + integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA== + dependencies: + xtend "^4.0.0" + +proto-list@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= + +protocols@^1.1.0, protocols@^1.4.0: + version "1.4.8" + resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" + integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== + +proxy-addr@^2.0.4: + version "2.0.6" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" + integrity sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw== + dependencies: + forwarded "~0.1.2" + ipaddr.js "1.9.1" + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + +psl@^1.1.28, psl@^1.1.33: + version "1.8.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" + integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== + +public-encrypt@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" + integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== + dependencies: + bn.js "^4.1.0" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + parse-asn1 "^5.0.0" + randombytes "^2.0.1" + safe-buffer "^5.1.2" + +pump@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pumpify@^1.3.3: + version "1.5.1" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== + dependencies: + duplexify "^3.6.0" + inherits "^2.0.3" + pump "^2.0.0" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= + +punycode@^1.2.4: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= + +punycode@^2.1.0, punycode@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +purgecss@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/purgecss/-/purgecss-3.1.3.tgz#26987ec09d12eeadc318e22f6e5a9eb0be094f41" + integrity sha512-hRSLN9mguJ2lzlIQtW4qmPS2kh6oMnA9RxdIYK8sz18QYqd6ePp4GNDl18oWHA1f2v2NEQIh51CO8s/E3YGckQ== + dependencies: + commander "^6.0.0" + glob "^7.0.0" + postcss "^8.2.1" + postcss-selector-parser "^6.0.2" + +q@^1.1.2: + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= + +qs@^6.5.2, qs@^6.9.4: + version "6.10.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.1.tgz#4931482fa8d647a5aab799c5271d2133b981fb6a" + integrity sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg== + dependencies: + side-channel "^1.0.4" + +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + +query-string@^4.1.0: + version "4.3.4" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" + integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= + dependencies: + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + +query-string@^6.13.8: + version "6.14.1" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" + integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== + dependencies: + decode-uri-component "^0.2.0" + filter-obj "^1.1.0" + split-on-first "^1.0.0" + strict-uri-encode "^2.0.0" + +querystring-es3@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= + +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= + +querystring@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd" + integrity sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg== + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +quick-lru@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" + integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== + +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +randomfill@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" + integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== + dependencies: + randombytes "^2.0.5" + safe-buffer "^5.1.0" + +range-parser@^1.2.1, range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +rc9@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/rc9/-/rc9-1.2.0.tgz#ef098181fdde714efc4c426383d6e46c14b1254a" + integrity sha512-/jknmhG0USFAx5uoKkAKhtG40sONds9RWhFHrP1UzJ3OvVfqFWOypSUpmsQD0fFwAV7YtzHhsn3QNasfAoxgcQ== + dependencies: + defu "^2.0.4" + destr "^1.0.0" + flat "^5.0.0" + +react-is@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + +read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + integrity sha1-5mTvMRYRZsl1HNvo28+GtftY93Q= + dependencies: + pify "^2.3.0" + +read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: + version "2.3.7" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + +readable-stream@^3.1.1, readable-stream@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readdirp@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" + integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== + dependencies: + graceful-fs "^4.1.11" + micromatch "^3.1.10" + readable-stream "^2.0.2" + +readdirp@~3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + +reduce-css-calc@^2.1.8: + version "2.1.8" + resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-2.1.8.tgz#7ef8761a28d614980dc0c982f772c93f7a99de03" + integrity sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg== + dependencies: + css-unit-converter "^1.1.1" + postcss-value-parser "^3.3.0" + +regenerate-unicode-properties@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" + integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== + dependencies: + regenerate "^1.4.0" + +regenerate@^1.4.0: + version "1.4.2" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" + integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== + +regenerator-runtime@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== + +regenerator-runtime@^0.13.4, regenerator-runtime@^0.13.7: + version "0.13.7" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz#cac2dacc8a1ea675feaabaeb8ae833898ae46f55" + integrity sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew== + +regenerator-transform@^0.14.2: + version "0.14.5" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" + integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== + dependencies: + "@babel/runtime" "^7.8.4" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regexp-tree@^0.1.22, regexp-tree@~0.1.1: + version "0.1.23" + resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.23.tgz#8a8ce1cc5e971acef62213a7ecdb1f6e18a1f1b2" + integrity sha512-+7HWfb4Bvu8Rs2eQTUIpX9I/PlQkYOuTNbRpKLJlQpSgwSkzFYh+pUj0gtvglnOZLKB6YgnIgRuJ2/IlpL48qw== + +regexpp@^3.0.0, regexpp@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" + integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== + +regexpu-core@^4.7.1: + version "4.7.1" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" + integrity sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ== + dependencies: + regenerate "^1.4.0" + regenerate-unicode-properties "^8.2.0" + regjsgen "^0.5.1" + regjsparser "^0.6.4" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.2.0" + +regjsgen@^0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" + integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== + +regjsparser@^0.6.4: + version "0.6.9" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.9.tgz#b489eef7c9a2ce43727627011429cf833a7183e6" + integrity sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ== + dependencies: + jsesc "~0.5.0" + +rehype-raw@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/rehype-raw/-/rehype-raw-5.1.0.tgz#66d5e8d7188ada2d31bc137bc19a1000cf2c6b7e" + integrity sha512-MDvHAb/5mUnif2R+0IPCYJU8WjHa9UzGtM/F4AVy5GixPlDZ1z3HacYy4xojDU+uBa+0X/3PIfyQI26/2ljJNA== + dependencies: + hast-util-raw "^6.1.0" + +rehype-sort-attribute-values@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rehype-sort-attribute-values/-/rehype-sort-attribute-values-3.0.2.tgz#7f4b41c2dc46a67c26d42bc9fd872ab76fece194" + integrity sha512-6QGua2vM3DytGRJcL11UTYLP5w5ItRgaQI2PhS3zLhvgKFkO/sb+JgcYsLCnkli9MCTkSvuEYArkiA1txtAtPA== + dependencies: + hast-util-is-element "^1.0.0" + unist-util-visit "^2.0.0" + x-is-array "^0.1.0" + +rehype-sort-attributes@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rehype-sort-attributes/-/rehype-sort-attributes-3.0.2.tgz#18c7e86b34de4b0222d0d54412e860333bd74b7e" + integrity sha512-roPtOHX6BfLXge161TnxOh+jr8JhZwUDVdqYI/qobYpfAkXgBfnftpWlwcShdsExa+nbUd5zU7z9A0nHBi35+A== + dependencies: + unist-util-visit "^2.0.0" + +relateurl@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= + +remark-autolink-headings@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/remark-autolink-headings/-/remark-autolink-headings-6.0.1.tgz#074470b8ec7714a0f06fa151e293152bf9723df9" + integrity sha512-LTV5G5NMjypHEr14tMNJ36yrP+xwT7mejJelZOPXKiF5WvRH9o36zXnr2QGqfms2yVASNpDaC9NBOwKlJJKuQw== + dependencies: + extend "^3.0.0" + unist-util-visit "^2.0.0" + +remark-external-links@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/remark-external-links/-/remark-external-links-8.0.0.tgz#308de69482958b5d1cd3692bc9b725ce0240f345" + integrity sha512-5vPSX0kHoSsqtdftSHhIYofVINC8qmp0nctkeU9YoJwV3YfiBRiI6cbFRJ0oI/1F9xS+bopXG0m2KS8VFscuKA== + dependencies: + extend "^3.0.0" + is-absolute-url "^3.0.0" + mdast-util-definitions "^4.0.0" + space-separated-tokens "^1.0.0" + unist-util-visit "^2.0.0" + +remark-footnotes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/remark-footnotes/-/remark-footnotes-3.0.0.tgz#5756b56f8464fa7ed80dbba0c966136305d8cb8d" + integrity sha512-ZssAvH9FjGYlJ/PBVKdSmfyPc3Cz4rTWgZLI4iE/SX8Nt5l3o3oEjv3wwG5VD7xOjktzdwp5coac+kJV9l4jgg== + dependencies: + mdast-util-footnote "^0.1.0" + micromark-extension-footnote "^0.3.0" + +remark-gfm@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/remark-gfm/-/remark-gfm-1.0.0.tgz#9213643001be3f277da6256464d56fd28c3b3c0d" + integrity sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA== + dependencies: + mdast-util-gfm "^0.1.0" + micromark-extension-gfm "^0.3.0" + +remark-parse@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-9.0.0.tgz#4d20a299665880e4f4af5d90b7c7b8a935853640" + integrity sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw== + dependencies: + mdast-util-from-markdown "^0.8.0" + +remark-rehype@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-8.0.0.tgz#5a8afc8262a59d205fba21dafb27a673fb3b92fa" + integrity sha512-gVvOH02TMFqXOWoL6iXU7NXMsDJguNkNuMrzfkQeA4V6WCyHQnOKptn+IQBVVPuIH2sMJBwo8hlrmtn1MLTh9w== + dependencies: + mdast-util-to-hast "^10.0.0" + +remark-slug@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/remark-slug/-/remark-slug-6.0.0.tgz#2b54a14a7b50407a5e462ac2f376022cce263e2c" + integrity sha512-ln67v5BrGKHpETnm6z6adlJPhESFJwfuZZ3jrmi+lKTzeZxh2tzFzUfDD4Pm2hRGOarHLuGToO86MNMZ/hA67Q== + dependencies: + github-slugger "^1.0.0" + mdast-util-to-string "^1.0.0" + unist-util-visit "^2.0.0" + +remark-squeeze-paragraphs@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz#76eb0e085295131c84748c8e43810159c5653ead" + integrity sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw== + dependencies: + mdast-squeeze-paragraphs "^4.0.0" + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + +renderkid@^2.0.4: + version "2.0.5" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.5.tgz#483b1ac59c6601ab30a7a596a5965cabccfdd0a5" + integrity sha512-ccqoLg+HLOHq1vdfYNm4TBeaCDIi1FLt3wGojTDSvdewUv65oTmI3cnT2E4hRjl1gzKZIPK+KZrXzlUYKnR+vQ== + dependencies: + css-select "^2.0.2" + dom-converter "^0.2" + htmlparser2 "^3.10.1" + lodash "^4.17.20" + strip-ansi "^3.0.0" + +repeat-element@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" + integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== + +repeat-string@^1.0.0, repeat-string@^1.5.4, repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + +replace-in-file@^6.1.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/replace-in-file/-/replace-in-file-6.2.0.tgz#9c0e381b0e02f27f83d5ba500bb4046f63d18566" + integrity sha512-Im2AF9G/qgkYneOc9QwWwUS/efyyonTUBvzXS2VXuxPawE5yQIjT/e6x4CTijO0Quq48lfAujuo+S89RR2TP2Q== + dependencies: + chalk "^4.1.0" + glob "^7.1.6" + yargs "^16.2.0" + +request-promise-core@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" + integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw== + dependencies: + lodash "^4.17.19" + +request-promise-native@^1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.9.tgz#e407120526a5efdc9a39b28a5679bf47b9d9dc28" + integrity sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g== + dependencies: + request-promise-core "1.1.4" + stealthy-require "^1.1.1" + tough-cookie "^2.3.3" + +request@^2.88.2: + version "2.88.2" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.8.0" + caseless "~0.12.0" + combined-stream "~1.0.6" + extend "~3.0.2" + forever-agent "~0.6.1" + form-data "~2.3.2" + har-validator "~5.1.3" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.5.0" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= + +reserved-words@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/reserved-words/-/reserved-words-0.1.2.tgz#00a0940f98cd501aeaaac316411d9adc52b31ab1" + integrity sha1-AKCUD5jNUBrqqsMWQR2a3FKzGrE= + +resolve-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== + dependencies: + resolve-from "^5.0.0" + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + integrity sha1-six699nWiBvItuZTM17rywoYh0g= + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve-path@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/resolve-path/-/resolve-path-1.4.0.tgz#c4bda9f5efb2fce65247873ab36bb4d834fe16f7" + integrity sha1-xL2p9e+y/OZSR4c6s2u02DT+Fvc= + dependencies: + http-errors "~1.6.2" + path-is-absolute "1.0.1" + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + +resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.2.0, resolve@^1.20.0: + version "1.20.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== + dependencies: + onetime "^5.1.0" + signal-exit "^3.0.2" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rgb-regex@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" + integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= + +rgba-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" + integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= + +rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + +rimraf@^3.0.0, rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" + integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +rsvp@^4.8.4: + version "4.8.5" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" + integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== + +run-async@^2.4.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= + dependencies: + aproba "^1.1.1" + +rxjs@^6.6.0: + version "6.6.6" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.6.tgz#14d8417aa5a07c5e633995b525e1e3c0dec03b70" + integrity sha512-/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg== + dependencies: + tslib "^1.9.0" + +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + dependencies: + ret "~0.1.10" + +safe-regex@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-2.1.1.tgz#f7128f00d056e2fe5c11e81a1324dd974aadced2" + integrity sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A== + dependencies: + regexp-tree "~0.1.1" + +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sane@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" + integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== + dependencies: + "@cnakazawa/watch" "^1.0.3" + anymatch "^2.0.0" + capture-exit "^2.0.0" + exec-sh "^0.3.2" + execa "^1.0.0" + fb-watchman "^2.0.0" + micromatch "^3.1.4" + minimist "^1.1.1" + walker "~1.0.5" + +sass-loader@^10.1.1: + version "10.1.1" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-10.1.1.tgz#4ddd5a3d7638e7949065dd6e9c7c04037f7e663d" + integrity sha512-W6gVDXAd5hR/WHsPicvZdjAWHBcEJ44UahgxcIE196fW2ong0ZHMPO1kZuI5q0VlvMQZh32gpv69PLWQm70qrw== + dependencies: + klona "^2.0.4" + loader-utils "^2.0.0" + neo-async "^2.6.2" + schema-utils "^3.0.0" + semver "^7.3.2" + +sax@>=0.6.0, sax@~1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + +saxes@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" + integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== + dependencies: + xmlchars "^2.2.0" + +schema-utils@2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" + integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== + dependencies: + "@types/json-schema" "^7.0.4" + ajv "^6.12.2" + ajv-keywords "^3.4.1" + +schema-utils@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" + integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== + dependencies: + ajv "^6.1.0" + ajv-errors "^1.0.0" + ajv-keywords "^3.1.0" + +schema-utils@^2.0.0, schema-utils@^2.6.5, schema-utils@^2.7.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" + integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== + dependencies: + "@types/json-schema" "^7.0.5" + ajv "^6.12.4" + ajv-keywords "^3.5.2" + +schema-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef" + integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA== + dependencies: + "@types/json-schema" "^7.0.6" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + +scule@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/scule/-/scule-0.1.1.tgz#6bf026f1815c646f061761f9bfd7a3e783f2d05c" + integrity sha512-1j2RlmUNADEprCkzDaeo8w2tdum/mvQWAKdRaS2raud7IOnPaDbLSFKhcY5xXPbAFYWk4ZQ0BUnfmg0ZUcI+Pg== + +section-matter@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/section-matter/-/section-matter-1.0.0.tgz#e9041953506780ec01d59f292a19c7b850b84167" + integrity sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA== + dependencies: + extend-shallow "^2.0.1" + kind-of "^6.0.0" + +select@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" + integrity sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0= + +"semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" + integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== + +semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: + version "7.3.5" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== + dependencies: + lru-cache "^6.0.0" + +semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +send@0.17.1: + version "0.17.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" + integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== + dependencies: + debug "2.6.9" + depd "~1.1.2" + destroy "~1.0.4" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.7.2" + mime "1.6.0" + ms "2.1.1" + on-finished "~2.3.0" + range-parser "~1.2.1" + statuses "~1.5.0" + +sentence-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.4.tgz#3645a7b8c117c787fde8702056225bb62a45131f" + integrity sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case-first "^2.0.2" + +serialize-javascript@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-3.1.0.tgz#8bf3a9170712664ef2561b44b691eafe399214ea" + integrity sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg== + dependencies: + randombytes "^2.1.0" + +serialize-javascript@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" + integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== + dependencies: + randombytes "^2.1.0" + +serialize-javascript@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== + dependencies: + randombytes "^2.1.0" + +serve-placeholder@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/serve-placeholder/-/serve-placeholder-1.2.3.tgz#d2e778c6fedfe6e6ca48aff0b4627bbe2c4aa2ca" + integrity sha512-DC7t66WeIrlVzVMzickfHIn1zHu7eMsVNiH0nkD/wCrijFQdvgyfH2zc5lkFf79EApUgRhZntkpKjfgLkn2i/Q== + dependencies: + defu "^3.2.2" + +serve-static@^1.14.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" + integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.17.1" + +server-destroy@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/server-destroy/-/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" + integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= + +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +setimmediate@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= + +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== + +setprototypeof@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" + integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== + +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +sha.js@^2.4.0, sha.js@^2.4.8: + version "2.4.11" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +shallow-clone@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== + dependencies: + kind-of "^6.0.2" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + dependencies: + shebang-regex "^1.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +shell-quote@^1.6.1: + version "1.7.2" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" + integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== + +shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== + +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + +sigmund@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" + integrity sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA= + +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + +simple-swizzle@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" + integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= + dependencies: + is-arrayish "^0.3.1" + +sirv@^1.0.7: + version "1.0.11" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-1.0.11.tgz#81c19a29202048507d6ec0d8ba8910fda52eb5a4" + integrity sha512-SR36i3/LSWja7AJNRBz4fF/Xjpn7lQFI30tZ434dIy+bitLYSP+ZEenHg36i23V2SGEz+kqjksg0uOGZ5LPiqg== + dependencies: + "@polka/url" "^1.0.0-next.9" + mime "^2.3.1" + totalist "^1.0.0" + +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +snake-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" + integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + +sort-keys@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" + integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= + dependencies: + is-plain-obj "^1.0.0" + +sort-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= + dependencies: + is-plain-obj "^1.0.0" + +source-list-map@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" + integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== + +source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-support@^0.5.6, source-map-support@~0.5.12, source-map-support@~0.5.19: + version "0.5.19" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" + integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + +source-map@0.5.6: + version "0.5.6" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" + integrity sha1-dc449SvwczxafwwRjYEzSiu19BI= + +source-map@^0.5.0, source-map@^0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +source-map@^0.7.3, source-map@~0.7.2: + version "0.7.3" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + +space-separated-tokens@^1.0.0: + version "1.1.5" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" + integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== + +spdx-correct@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.7" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65" + integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ== + +split-on-first@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" + integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw== + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +sshpk@^1.7.0: + version "1.16.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" + integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +ssri@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" + integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== + dependencies: + figgy-pudding "^3.5.1" + +ssri@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== + dependencies: + minipass "^3.1.1" + +stable@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== + +stack-trace@0.0.10: + version "0.0.10" + resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" + integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= + +stack-utils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.3.tgz#cd5f030126ff116b78ccb3c027fe302713b61277" + integrity sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw== + dependencies: + escape-string-regexp "^2.0.0" + +stackframe@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.2.0.tgz#52429492d63c62eb989804c11552e3d22e779303" + integrity sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA== + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + +std-env@^2.2.1, std-env@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-2.3.0.tgz#66d4a4a4d5224242ed8e43f5d65cfa9095216eee" + integrity sha512-4qT5B45+Kjef2Z6pE0BkskzsH0GO7GrND0wGlTM1ioUe3v0dGYx9ZJH0Aro/YyA8fqQ5EyIKDRjZojJYMFTflw== + dependencies: + ci-info "^3.0.0" + +stealthy-require@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" + integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= + +stream-browserify@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" + integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== + dependencies: + inherits "~2.0.1" + readable-stream "^2.0.2" + +stream-each@^1.1.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" + integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + +stream-http@^2.7.2: + version "2.8.3" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" + integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== + dependencies: + builtin-status-codes "^3.0.0" + inherits "^2.0.1" + readable-stream "^2.3.6" + to-arraybuffer "^1.0.0" + xtend "^4.0.0" + +stream-shift@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" + integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== + +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= + +strict-uri-encode@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" + integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY= + +string-length@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== + dependencies: + char-regex "^1.0.2" + strip-ansi "^6.0.0" + +string-width@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0: + version "4.2.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" + integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string.prototype.trimend@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string.prototype.trimstart@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" + integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string_decoder@^1.0.0, string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + +strip-bom-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" + integrity sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI= + +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + dependencies: + is-utf8 "^0.2.0" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + +strip-bom@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +strip-json-comments@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +style-resources-loader@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/style-resources-loader/-/style-resources-loader-1.4.1.tgz#87f520e6c8120a71e756726c1c53a78c544ca7db" + integrity sha512-UaAoQXq20relw6B633z4QZDxDyW7gevTt1e0y3MZtzdZfnvB90UL658czAgNc609Y7Kn5ErdthK9bSVhnykBUA== + dependencies: + glob "^7.1.6" + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +style-to-object@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.3.0.tgz#b1b790d205991cc783801967214979ee19a76e46" + integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA== + dependencies: + inline-style-parser "0.1.1" + +stylehacks@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" + integrity sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g== + dependencies: + browserslist "^4.0.0" + postcss "^7.0.0" + postcss-selector-parser "^3.0.0" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + +supports-color@^5.3.0, supports-color@^5.4.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.0.0, supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-hyperlinks@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" + integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== + dependencies: + has-flag "^4.0.0" + supports-color "^7.0.0" + +svg-tags@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764" + integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q= + +svgo@^1.0.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" + integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== + dependencies: + chalk "^2.4.1" + coa "^2.0.2" + css-select "^2.0.0" + css-select-base-adapter "^0.1.1" + css-tree "1.0.0-alpha.37" + csso "^4.0.2" + js-yaml "^3.13.1" + mkdirp "~0.5.1" + object.values "^1.1.0" + sax "~1.2.4" + stable "^0.1.8" + unquote "~1.1.1" + util.promisify "~1.0.0" + +symbol-tree@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== + +table@^6.0.4: + version "6.0.7" + resolved "https://registry.yarnpkg.com/table/-/table-6.0.7.tgz#e45897ffbcc1bcf9e8a87bf420f2c9e5a7a52a34" + integrity sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g== + dependencies: + ajv "^7.0.2" + lodash "^4.17.20" + slice-ansi "^4.0.0" + string-width "^4.2.0" + +tailwind-config-viewer@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/tailwind-config-viewer/-/tailwind-config-viewer-1.5.1.tgz#c8ba81593ae8bc64d3625be983ebcf25aea3cc30" + integrity sha512-vlrZjC+sJMgtj5Pz9GsJsJMVVWi1Pv/F3xU54OuOHM8fD+Pb8KSB3Ja2lFVD8KN//wsvkpuJST8OctbApb3mMw== + dependencies: + "@koa/router" "^9.0.1" + commander "^6.0.0" + fs-extra "^9.0.1" + koa "^2.12.0" + koa-static "^5.0.0" + open "^7.0.4" + portfinder "^1.0.26" + replace-in-file "^6.1.0" + +tailwindcss@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-2.0.4.tgz#cf13e62738c3a27065664e449d93b66ee2945506" + integrity sha512-WhgR0oiBxGOZ9jY0yVfaJCHnckR7U74Fs/BMsYxGdwGJQ5Hd/HlaKD26bEJFZOvYScJo0QcUj2ImldzedsG7Bw== + dependencies: + "@fullhuman/postcss-purgecss" "^3.1.3" + bytes "^3.0.0" + chalk "^4.1.0" + color "^3.1.3" + detective "^5.2.0" + didyoumean "^1.2.1" + fs-extra "^9.1.0" + html-tags "^3.1.0" + lodash "^4.17.21" + modern-normalize "^1.0.0" + node-emoji "^1.8.1" + object-hash "^2.1.1" + postcss-functions "^3" + postcss-js "^3.0.3" + postcss-nested "^5.0.5" + postcss-selector-parser "^6.0.4" + postcss-value-parser "^4.1.0" + pretty-hrtime "^1.0.3" + reduce-css-calc "^2.1.8" + resolve "^1.20.0" + +tapable@^1.0.0, tapable@^1.0.0-beta.5, tapable@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" + integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== + +tar@^6.0.2: + version "6.1.0" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.0.tgz#d1724e9bcc04b977b18d5c573b333a2207229a83" + integrity sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + +terminal-link@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== + dependencies: + ansi-escapes "^4.2.1" + supports-hyperlinks "^2.0.0" + +terser-webpack-plugin@^1.4.3: + version "1.4.5" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz#a217aefaea330e734ffacb6120ec1fa312d6040b" + integrity sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw== + dependencies: + cacache "^12.0.2" + find-cache-dir "^2.1.0" + is-wsl "^1.1.0" + schema-utils "^1.0.0" + serialize-javascript "^4.0.0" + source-map "^0.6.1" + terser "^4.1.2" + webpack-sources "^1.4.0" + worker-farm "^1.7.0" + +terser-webpack-plugin@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" + integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== + dependencies: + cacache "^15.0.5" + find-cache-dir "^3.3.1" + jest-worker "^26.5.0" + p-limit "^3.0.2" + schema-utils "^3.0.0" + serialize-javascript "^5.0.1" + source-map "^0.6.1" + terser "^5.3.4" + webpack-sources "^1.4.3" + +terser@^4.1.2, terser@^4.6.13, terser@^4.6.3: + version "4.8.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" + integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== + dependencies: + commander "^2.20.0" + source-map "~0.6.1" + source-map-support "~0.5.12" + +terser@^5.3.4: + version "5.6.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.6.1.tgz#a48eeac5300c0a09b36854bf90d9c26fb201973c" + integrity sha512-yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw== + dependencies: + commander "^2.20.0" + source-map "~0.7.2" + source-map-support "~0.5.19" + +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" + minimatch "^3.0.4" + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + +thread-loader@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/thread-loader/-/thread-loader-3.0.1.tgz#059752d5c3e223ec58fad5868fe6405e8375d480" + integrity sha512-c8Mr7jooXEAochk72XoQ1vPauwFToz9GVwqevqQShAypCUW0nRzYIbkzZo3KErNhhYf/+ga5cUQWxVXQteJj/g== + dependencies: + loader-runner "^4.1.0" + loader-utils "^2.0.0" + neo-async "^2.6.2" + +throat@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" + integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== + +through2@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +through@^2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + +time-fix-plugin@^2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/time-fix-plugin/-/time-fix-plugin-2.0.7.tgz#4ba70ae2e40cedf34dabe505eda7b71b1b244f50" + integrity sha512-uVFet1LQToeUX0rTcSiYVYVoGuBpc8gP/2jnlUzuHMHe+gux6XLsNzxLUweabMwiUj5ejhoIMsUI55nVSEa/Vw== + +timers-browserify@^2.0.4: + version "2.0.12" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" + integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== + dependencies: + setimmediate "^1.0.4" + +timsort@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" + integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= + +tiny-emitter@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" + integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== + +tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== + dependencies: + os-tmpdir "~1.0.2" + +tmpl@1.0.x: + version "1.0.4" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" + integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= + +to-arraybuffer@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= + +to-fast-properties@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" + integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +toidentifier@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" + integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== + +totalist@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" + integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== + +tough-cookie@^2.3.3, tough-cookie@~2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== + dependencies: + psl "^1.1.28" + punycode "^2.1.1" + +tough-cookie@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" + integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.1.2" + +tr46@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.0.2.tgz#03273586def1595ae08fedb38d7733cee91d2479" + integrity sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg== + dependencies: + punycode "^2.1.1" + +trough@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" + integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== + +ts-jest@^26.5.4: + version "26.5.4" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.4.tgz#207f4c114812a9c6d5746dd4d1cdf899eafc9686" + integrity sha512-I5Qsddo+VTm94SukBJ4cPimOoFZsYTeElR2xy6H2TOVs+NsvgYglW8KuQgKoApOKuaU/Ix/vrF9ebFZlb5D2Pg== + dependencies: + bs-logger "0.x" + buffer-from "1.x" + fast-json-stable-stringify "2.x" + jest-util "^26.1.0" + json5 "2.x" + lodash "4.x" + make-error "1.x" + mkdirp "1.x" + semver "7.x" + yargs-parser "20.x" + +ts-loader@^8.0.17: + version "8.0.18" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-8.0.18.tgz#b2385cbe81c34ad9f997915129cdde3ad92a61ea" + integrity sha512-hRZzkydPX30XkLaQwJTDcWDoxZHK6IrEMDQpNd7tgcakFruFkeUp/aY+9hBb7BUGb+ZWKI0jiOGMo0MckwzdDQ== + dependencies: + chalk "^4.1.0" + enhanced-resolve "^4.0.0" + loader-utils "^2.0.0" + micromatch "^4.0.0" + semver "^7.3.4" + +ts-pnp@^1.1.6: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" + integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== + +tsconfig-paths@^3.9.0: + version "3.9.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz#098547a6c4448807e8fcb8eae081064ee9a3c90b" + integrity sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.1" + minimist "^1.2.0" + strip-bom "^3.0.0" + +tsconfig@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-7.0.0.tgz#84538875a4dc216e5c4a5432b3a4dec3d54e91b7" + integrity sha512-vZXmzPrL+EmC4T/4rVlT2jNVMWCi/O4DIiSj3UHg1OE5kCKbk4mfrXc6dZksLgRM/TZlKnousKH9bbTazUWRRw== + dependencies: + "@types/strip-bom" "^3.0.0" + "@types/strip-json-comments" "0.0.30" + strip-bom "^3.0.0" + strip-json-comments "^2.0.0" + +tslib@^1.8.1, tslib@^1.9.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tslib@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" + integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== + +tsscmp@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" + integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA== + +tsutils@^3.17.1: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + +tty-browserify@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + dependencies: + prelude-ls "~1.1.2" + +type-detect@4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.0, type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +type-is@^1.6.16: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + +typescript@~4.2: + version "4.2.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.3.tgz#39062d8019912d43726298f09493d598048c1ce3" + integrity sha512-qOcYwxaByStAWrBf4x0fibwZvMRG+r4cQoTjbPtUlrWjBHbmCAww1i448U0GJ+3cNNEtebDteo/cHOR3xJ4wEw== + +ua-parser-js@^0.7.24: + version "0.7.25" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.25.tgz#67689fa263a87a52dabbc251ede89891f59156ce" + integrity sha512-8NFExdfI24Ny8R3Vc6+uUytP/I7dpqk3JERlvxPWlrtx5YboqCgxAXYKPAifbPLV2zKbgmmPL53ufW7mUC/VOQ== + +ufo@^0.6.10: + version "0.6.10" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-0.6.10.tgz#c7ace9b8f72cb08c35e3a8c8edc76f062fbaa7d0" + integrity sha512-sMbJnrBcKKsbVyr6++hb0n9lCmrMqkJrNnJIOJ3sckeqY6NMfAULcRGbBWcASSnN1HDV3YqiGCPzi9RVs511bw== + +ufo@^0.6.7: + version "0.6.11" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-0.6.11.tgz#69311ed4abc8ab671c83754b79ce0d396fea1075" + integrity sha512-Yu7TJThwlr23peOkX/+hm6LfkyBs+eDWV880468PTrjKBKjjsNWFFwIuOqDfmXngRo9TZ4+twFYueRH0OLl0Gw== + +uglify-js@^3.5.1: + version "3.13.2" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.13.2.tgz#fe10319861bccc8682bfe2e8151fbdd8aa921c44" + integrity sha512-SbMu4D2Vo95LMC/MetNaso1194M1htEA+JrqE9Hk+G2DhI+itfS9TRu9ZKeCahLDNa/J3n4MqUJ/fOHMzQpRWw== + +unbox-primitive@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.0.tgz#eeacbc4affa28e9b3d36b5eaeccc50b3251b1d3f" + integrity sha512-P/51NX+JXyxK/aigg1/ZgyccdAxm5K1+n8+tvqSntjOivPt19gvm1VC49RWYetsiub8WViUchdxl/KWHHB0kzA== + dependencies: + function-bind "^1.1.1" + has-bigints "^1.0.0" + has-symbols "^1.0.0" + which-boxed-primitive "^1.0.1" + +unfetch@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" + integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== + +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== + +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== + dependencies: + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" + +unicode-match-property-value-ecmascript@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" + integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== + +unicode-property-aliases-ecmascript@^1.0.4: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" + integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== + +unified@^9.2.1: + version "9.2.1" + resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.1.tgz#ae18d5674c114021bfdbdf73865ca60f410215a3" + integrity sha512-juWjuI8Z4xFg8pJbnEZ41b5xjGUWGHqXALmBZ3FC3WX0PIx1CZBIIJ6mXbYMcf6Yw4Fi0rFUTA1cdz/BglbOhA== + dependencies: + bail "^1.0.0" + extend "^3.0.0" + is-buffer "^2.0.0" + is-plain-obj "^2.0.0" + trough "^1.0.0" + vfile "^4.0.0" + +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + +uniq@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" + integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= + +uniqs@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" + integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= + +unique-filename@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== + dependencies: + imurmurhash "^0.1.4" + +unist-builder@^2.0.0, unist-builder@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-2.0.3.tgz#77648711b5d86af0942f334397a33c5e91516436" + integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw== + +unist-util-generated@^1.0.0: + version "1.1.6" + resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.6.tgz#5ab51f689e2992a472beb1b35f2ce7ff2f324d4b" + integrity sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg== + +unist-util-is@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz#976e5f462a7a5de73d94b706bac1b90671b57797" + integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg== + +unist-util-position@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.1.0.tgz#1c42ee6301f8d52f47d14f62bbdb796571fa2d47" + integrity sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA== + +unist-util-remove@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-2.0.1.tgz#fa13c424ff8e964f3aa20d1098b9a690c6bfaa39" + integrity sha512-YtuetK6o16CMfG+0u4nndsWpujgsHDHHLyE0yGpJLLn5xSjKeyGyzEBOI2XbmoUHCYabmNgX52uxlWoQhcvR7Q== + dependencies: + unist-util-is "^4.0.0" + +unist-util-stringify-position@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" + integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== + dependencies: + "@types/unist" "^2.0.2" + +unist-util-visit-parents@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz#65a6ce698f78a6b0f56aa0e88f13801886cdaef6" + integrity sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg== + dependencies: + "@types/unist" "^2.0.0" + unist-util-is "^4.0.0" + +unist-util-visit@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c" + integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== + dependencies: + "@types/unist" "^2.0.0" + unist-util-is "^4.0.0" + unist-util-visit-parents "^3.0.0" + +universalify@^0.1.0, universalify@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + +unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + +unquote@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" + integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +upath@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" + integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== + +upath@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" + integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== + +upper-case-first@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.2.tgz#992c3273f882abd19d1e02894cc147117f844324" + integrity sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg== + dependencies: + tslib "^2.0.3" + +upper-case@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" + integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= + +upper-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.2.tgz#d89810823faab1df1549b7d97a76f8662bae6f7a" + integrity sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg== + dependencies: + tslib "^2.0.3" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + +url-loader@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== + dependencies: + loader-utils "^2.0.0" + mime-types "^2.1.27" + schema-utils "^3.0.0" + +url@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + +util.promisify@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== + dependencies: + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" + +util.promisify@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" + integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.2" + has-symbols "^1.0.1" + object.getownpropertydescriptors "^2.1.0" + +util@0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= + dependencies: + inherits "2.0.1" + +util@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" + integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== + dependencies: + inherits "2.0.3" + +utila@~0.4: + version "0.4.0" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + +uuid@^8.3.0: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-compile-cache@^2.0.3: + version "2.3.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== + +v8-to-istanbul@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.0.tgz#5b95cef45c0f83217ec79f8fc7ee1c8b486aee07" + integrity sha512-uXUVqNUCLa0AH1vuVxzi+MI4RfxEOKt9pBgKwHbgH7st8Kv2P1m+jvWNnektzBh5QShF3ODgKmUFCf38LnVz1g== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + source-map "^0.7.3" + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +vary@^1.1.2, vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + +vee-validate@^3.4.5: + version "3.4.5" + resolved "https://registry.yarnpkg.com/vee-validate/-/vee-validate-3.4.5.tgz#96a456c309f7bdb2cce62c3b554f96d893e9f6ae" + integrity sha512-ZEcLqOAZzSkMhDvPcTx0xcwVOijFnMW9J+BA20j+rDmo24T8RCCqVQyRwwrDrcWJZV2dRYl/yYNa2GB6UCoBvg== + +vendors@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e" + integrity sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w== + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +vfile-location@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.2.0.tgz#d8e41fbcbd406063669ebf6c33d56ae8721d0f3c" + integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA== + +vfile-message@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" + integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== + dependencies: + "@types/unist" "^2.0.0" + unist-util-stringify-position "^2.0.0" + +vfile@^4.0.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz#03f1dce28fc625c625bc6514350fbdb00fa9e624" + integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== + dependencies: + "@types/unist" "^2.0.0" + is-buffer "^2.0.0" + unist-util-stringify-position "^2.0.0" + vfile-message "^2.0.0" + +vm-browserify@^1.0.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" + integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== + +vue-class-component@^7.2.6: + version "7.2.6" + resolved "https://registry.yarnpkg.com/vue-class-component/-/vue-class-component-7.2.6.tgz#8471e037b8e4762f5a464686e19e5afc708502e4" + integrity sha512-+eaQXVrAm/LldalI272PpDe3+i4mPis0ORiMYxF6Ae4hyuCh15W8Idet7wPUEs4N4YptgFHGys4UrgNQOMyO6w== + +vue-client-only@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/vue-client-only/-/vue-client-only-2.0.0.tgz#ddad8d675ee02c761a14229f0e440e219de1da1c" + integrity sha512-arhk1wtWAfLsJyxGMoEYhoBowM87/i6HLSG2LH/03Yog6i2d9JEN1peMP0Ceis+/n9DxdenGYZZTxbPPJyHciA== + +vue-eslint-parser@^7.1.1, vue-eslint-parser@^7.6.0: + version "7.6.0" + resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-7.6.0.tgz#01ea1a2932f581ff244336565d712801f8f72561" + integrity sha512-QXxqH8ZevBrtiZMZK0LpwaMfevQi9UL7lY6Kcp+ogWHC88AuwUPwwCIzkOUc1LR4XsYAt/F9yHXAB/QoD17QXA== + dependencies: + debug "^4.1.1" + eslint-scope "^5.0.0" + eslint-visitor-keys "^1.1.0" + espree "^6.2.1" + esquery "^1.4.0" + lodash "^4.17.15" + +vue-hot-reload-api@^2.3.0: + version "2.3.4" + resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2" + integrity sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog== + +vue-i18n@^8.23.0: + version "8.24.3" + resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.24.3.tgz#2233ae11ec59e8204df58a28fc41afe9754e3b41" + integrity sha512-uKAYzGbwGIJndY7JwhQwIGi1uyvErWkBfFwooOtjcNnIfMbAR49ad5dT/MiykrJ9pCcgvnocFjFsNLtTzyW+rg== + +vue-jest@^3.0.4: + version "3.0.7" + resolved "https://registry.yarnpkg.com/vue-jest/-/vue-jest-3.0.7.tgz#a6d29758a5cb4d750f5d1242212be39be4296a33" + integrity sha512-PIOxFM+wsBMry26ZpfBvUQ/DGH2hvp5khDQ1n51g3bN0TwFwTy4J85XVfxTRMukqHji/GnAoGUnlZ5Ao73K62w== + dependencies: + babel-plugin-transform-es2015-modules-commonjs "^6.26.0" + chalk "^2.1.0" + deasync "^0.1.15" + extract-from-css "^0.4.4" + find-babel-config "^1.1.0" + js-beautify "^1.6.14" + node-cache "^4.1.1" + object-assign "^4.1.1" + source-map "^0.5.6" + tsconfig "^7.0.0" + vue-template-es2015-compiler "^1.6.0" + +vue-loader@^15.9.6: + version "15.9.6" + resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.9.6.tgz#f4bb9ae20c3a8370af3ecf09b8126d38ffdb6b8b" + integrity sha512-j0cqiLzwbeImIC6nVIby2o/ABAWhlppyL/m5oJ67R5MloP0hj/DtFgb0Zmq3J9CG7AJ+AXIvHVnJAPBvrLyuDg== + dependencies: + "@vue/component-compiler-utils" "^3.1.0" + hash-sum "^1.0.2" + loader-utils "^1.1.0" + vue-hot-reload-api "^2.3.0" + vue-style-loader "^4.1.0" + +vue-meta@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/vue-meta/-/vue-meta-2.4.0.tgz#a419fb4b4135ce965dab32ec641d1989c2ee4845" + integrity sha512-XEeZUmlVeODclAjCNpWDnjgw+t3WA6gdzs6ENoIAgwO1J1d5p1tezDhtteLUFwcaQaTtayRrsx7GL6oXp/m2Jw== + dependencies: + deepmerge "^4.2.2" + +vue-no-ssr@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vue-no-ssr/-/vue-no-ssr-1.1.1.tgz#875f3be6fb0ae41568a837f3ac1a80eaa137b998" + integrity sha512-ZMjqRpWabMPqPc7gIrG0Nw6vRf1+itwf0Itft7LbMXs2g3Zs/NFmevjZGN1x7K3Q95GmIjWbQZTVerxiBxI+0g== + +vue-property-decorator@^9.0.0: + version "9.1.2" + resolved "https://registry.yarnpkg.com/vue-property-decorator/-/vue-property-decorator-9.1.2.tgz#266a2eac61ba6527e2e68a6933cfb98fddab5457" + integrity sha512-xYA8MkZynPBGd/w5QFJ2d/NM0z/YeegMqYTphy7NJQXbZcuU6FC6AOdUAcy4SXP+YnkerC6AfH+ldg7PDk9ESQ== + +vue-router@^3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.5.1.tgz#edf3cf4907952d1e0583e079237220c5ff6eb6c9" + integrity sha512-RRQNLT8Mzr8z7eL4p7BtKvRaTSGdCbTy2+Mm5HTJvLGYSSeG9gDzNasJPP/yOYKLy+/cLG/ftrqq5fvkFwBJEw== + +vue-server-renderer@^2.6.12: + version "2.6.12" + resolved "https://registry.yarnpkg.com/vue-server-renderer/-/vue-server-renderer-2.6.12.tgz#a8cb9c49439ef205293cb41c35d0d2b0541653a5" + integrity sha512-3LODaOsnQx7iMFTBLjki8xSyOxhCtbZ+nQie0wWY4iOVeEtTg1a3YQAjd82WvKxrWHHTshjvLb7OXMc2/dYuxw== + dependencies: + chalk "^1.1.3" + hash-sum "^1.0.2" + he "^1.1.0" + lodash.template "^4.5.0" + lodash.uniq "^4.5.0" + resolve "^1.2.0" + serialize-javascript "^3.1.0" + source-map "0.5.6" + +vue-style-loader@^4.1.0, vue-style-loader@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz#6d55863a51fa757ab24e89d9371465072aa7bc35" + integrity sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg== + dependencies: + hash-sum "^1.0.2" + loader-utils "^1.0.2" + +vue-template-compiler@^2.6.12: + version "2.6.12" + resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.6.12.tgz#947ed7196744c8a5285ebe1233fe960437fcc57e" + integrity sha512-OzzZ52zS41YUbkCBfdXShQTe69j1gQDZ9HIX8miuC9C3rBCk9wIRjLiZZLrmX9V+Ftq/YEyv1JaVr5Y/hNtByg== + dependencies: + de-indent "^1.0.2" + he "^1.1.0" + +vue-template-es2015-compiler@^1.6.0, vue-template-es2015-compiler@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" + integrity sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw== + +vue@^2.6.12: + version "2.6.12" + resolved "https://registry.yarnpkg.com/vue/-/vue-2.6.12.tgz#f5ebd4fa6bd2869403e29a896aed4904456c9123" + integrity sha512-uhmLFETqPPNyuLLbsKz6ioJ4q7AZHzD8ZVFNATNyICSZouqP2Sz0rotWQC8UNBF6VGSCs5abnKJoStA6JbCbfg== + +vuex-class@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/vuex-class/-/vuex-class-0.3.2.tgz#c7e96a076c1682137d4d23a8dcfdc63f220e17a8" + integrity sha512-m0w7/FMsNcwJgunJeM+wcNaHzK2KX1K1rw2WUQf7Q16ndXHo7pflRyOV/E8795JO/7fstyjH3EgqBI4h4n4qXQ== + +vuex-module-decorators@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vuex-module-decorators/-/vuex-module-decorators-1.0.1.tgz#d34dafb5428a3636f1c26d3d014c15fc9659ccd0" + integrity sha512-FLWZsXV5XAtl/bcKUyQFpnSBtpc3wK/7zSdy9oKbyp71mZd4ut5y2zSd219wWW9OG7WUOlVwac4rXFFDVnq7ug== + +vuex@^3.6.2: + version "3.6.2" + resolved "https://registry.yarnpkg.com/vuex/-/vuex-3.6.2.tgz#236bc086a870c3ae79946f107f16de59d5895e71" + integrity sha512-ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw== + +w3c-hr-time@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" + integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== + dependencies: + browser-process-hrtime "^1.0.0" + +w3c-xmlserializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== + dependencies: + xml-name-validator "^3.0.0" + +walker@^1.0.7, walker@~1.0.5: + version "1.0.7" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" + integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= + dependencies: + makeerror "1.0.x" + +watchpack-chokidar2@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" + integrity sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww== + dependencies: + chokidar "^2.1.8" + +watchpack@^1.7.4: + version "1.7.5" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453" + integrity sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ== + dependencies: + graceful-fs "^4.1.2" + neo-async "^2.5.0" + optionalDependencies: + chokidar "^3.4.1" + watchpack-chokidar2 "^2.0.1" + +web-namespaces@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec" + integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== + +webidl-conversions@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== + +webidl-conversions@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== + +webpack-bundle-analyzer@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.4.0.tgz#74013106e7e2b07cbd64f3a5ae847f7e814802c7" + integrity sha512-9DhNa+aXpqdHk8LkLPTBU/dMfl84Y+WE2+KnfI6rSpNRNVKa0VGLjPd2pjFubDeqnWmulFggxmWBxhfJXZnR0g== + dependencies: + acorn "^8.0.4" + acorn-walk "^8.0.0" + chalk "^4.1.0" + commander "^6.2.0" + gzip-size "^6.0.0" + lodash "^4.17.20" + opener "^1.5.2" + sirv "^1.0.7" + ws "^7.3.1" + +webpack-dev-middleware@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-4.1.0.tgz#f0c1f12ff4cd855b3b5eec89ee0f69bcc5336364" + integrity sha512-mpa/FY+DiBu5+r5JUIyTCYWRfkWgyA3/OOE9lwfzV9S70A4vJYLsVRKj5rMFEsezBroy2FmPyQ8oBRVW8QmK1A== + dependencies: + colorette "^1.2.1" + mem "^8.0.0" + memfs "^3.2.0" + mime-types "^2.1.28" + range-parser "^1.2.1" + schema-utils "^3.0.0" + +webpack-hot-middleware@^2.25.0: + version "2.25.0" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz#4528a0a63ec37f8f8ef565cf9e534d57d09fe706" + integrity sha512-xs5dPOrGPCzuRXNi8F6rwhawWvQQkeli5Ro48PRuQh8pYPCPmNnltP9itiUPT4xI8oW+y0m59lyyeQk54s5VgA== + dependencies: + ansi-html "0.0.7" + html-entities "^1.2.0" + querystring "^0.2.0" + strip-ansi "^3.0.0" + +webpack-node-externals@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/webpack-node-externals/-/webpack-node-externals-2.5.2.tgz#178e017a24fec6015bc9e672c77958a6afac861d" + integrity sha512-aHdl/y2N7PW2Sx7K+r3AxpJO+aDMcYzMQd60Qxefq3+EwhewSbTBqNumOsCE1JsCUNoyfGj5465N0sSf6hc/5w== + +webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" + integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== + dependencies: + source-list-map "^2.0.0" + source-map "~0.6.1" + +webpack@^4.46.0: + version "4.46.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.46.0.tgz#bf9b4404ea20a073605e0a011d188d77cb6ad542" + integrity sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/wasm-edit" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + acorn "^6.4.1" + ajv "^6.10.2" + ajv-keywords "^3.4.1" + chrome-trace-event "^1.0.2" + enhanced-resolve "^4.5.0" + eslint-scope "^4.0.3" + json-parse-better-errors "^1.0.2" + loader-runner "^2.4.0" + loader-utils "^1.2.3" + memory-fs "^0.4.1" + micromatch "^3.1.10" + mkdirp "^0.5.3" + neo-async "^2.6.1" + node-libs-browser "^2.2.1" + schema-utils "^1.0.0" + tapable "^1.1.3" + terser-webpack-plugin "^1.4.3" + watchpack "^1.7.4" + webpack-sources "^1.4.1" + +webpackbar@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-4.0.0.tgz#ee7a87f16077505b5720551af413c8ecd5b1f780" + integrity sha512-k1qRoSL/3BVuINzngj09nIwreD8wxV4grcuhHTD8VJgUbGcy8lQSPqv+bM00B7F+PffwIsQ8ISd4mIwRbr23eQ== + dependencies: + ansi-escapes "^4.2.1" + chalk "^2.4.2" + consola "^2.10.0" + figures "^3.0.0" + pretty-time "^1.1.0" + std-env "^2.2.1" + text-table "^0.2.0" + wrap-ansi "^6.0.0" + +whatwg-encoding@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== + dependencies: + iconv-lite "0.4.24" + +whatwg-mimetype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + +whatwg-url@^8.0.0: + version "8.4.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.4.0.tgz#50fb9615b05469591d2b2bd6dfaed2942ed72837" + integrity sha512-vwTUFf6V4zhcPkWp/4CQPr1TW9Ml6SF4lVyaIMBdJw5i6qUUJ1QWM4Z6YYVkfka0OUIzVo/0aNtGVGk256IKWw== + dependencies: + lodash.sortby "^4.7.0" + tr46 "^2.0.2" + webidl-conversions "^6.1.0" + +which-boxed-primitive@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== + dependencies: + is-bigint "^1.0.1" + is-boolean-object "^1.1.0" + is-number-object "^1.0.4" + is-string "^1.0.5" + is-symbol "^1.0.3" + +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= + +which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +which@^2.0.1, which@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +widest-line@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" + integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== + dependencies: + string-width "^4.0.0" + +word-wrap@^1.2.3, word-wrap@~1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +workbox-cdn@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/workbox-cdn/-/workbox-cdn-5.1.4.tgz#dbd8acee70b1978be70106207590bbb76af935cf" + integrity sha512-04gM3mi8QGutokkSaA9xunVfjURnLbo9TTWyi8+pSDCEW5cD8u5GbJiliLK1vB9CShk/9OY1UDfW+XcmD+d6KQ== + +worker-farm@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" + integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== + dependencies: + errno "~0.1.7" + +wrap-ansi@^6.0.0, wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +write-file-atomic@^2.0.0: + version "2.4.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" + integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + +write-file-atomic@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +write-json-file@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" + integrity sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8= + dependencies: + detect-indent "^5.0.0" + graceful-fs "^4.1.2" + make-dir "^1.0.0" + pify "^3.0.0" + sort-keys "^2.0.0" + write-file-atomic "^2.0.0" + +ws@^7.3.1, ws@^7.4.3, ws@^7.4.4: + version "7.4.4" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.4.tgz#383bc9742cb202292c9077ceab6f6047b17f2d59" + integrity sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw== + +x-is-array@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/x-is-array/-/x-is-array-0.1.0.tgz#de520171d47b3f416f5587d629b89d26b12dc29d" + integrity sha1-3lIBcdR7P0FvVYfWKbidJrEtwp0= + +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + +xml2js@^0.4.23: + version "0.4.23" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" + integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug== + dependencies: + sax ">=0.6.0" + xmlbuilder "~11.0.0" + +xmlbuilder@~11.0.0: + version "11.0.1" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" + integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== + +xmlchars@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== + +xtend@^4.0.0, xtend@^4.0.2, xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +xxhashjs@^0.2.1, xxhashjs@~0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/xxhashjs/-/xxhashjs-0.2.2.tgz#8a6251567621a1c46a5ae204da0249c7f8caa9d8" + integrity sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw== + dependencies: + cuint "^0.2.2" + +y18n@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.1.tgz#8db2b83c31c5d75099bb890b23f3094891e247d4" + integrity sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ== + +y18n@^5.0.5: + version "5.0.5" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" + integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== + +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@^1.10.0, yaml@^1.7.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yargs-parser@20.x, yargs-parser@^20.2.2: + version "20.2.7" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" + integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== + +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs@^15.4.1: + version "15.4.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +ylru@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f" + integrity sha512-faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ== + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + +zwitch@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" + integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== From 6facb4821647b3a38edcc6a71c3e4f45bb491f23 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sat, 14 Aug 2021 17:05:14 -0400 Subject: [PATCH 13/81] Git ignore service worker As suggested by the comment in static/sw.js: ```js // THIS FILE SHOULD NOT BE VERSION CONTROLLED // https://github.com/NekR/self-destroying-sw ``` --- .../frontend/.gitignore | 1 + .../frontend/static/sw.js | 17 ----------------- 2 files changed, 1 insertion(+), 17 deletions(-) delete mode 100644 {{cookiecutter.project_slug}}/frontend/static/sw.js diff --git a/{{cookiecutter.project_slug}}/frontend/.gitignore b/{{cookiecutter.project_slug}}/frontend/.gitignore index e1da6ae8ea..7ccef007e3 100644 --- a/{{cookiecutter.project_slug}}/frontend/.gitignore +++ b/{{cookiecutter.project_slug}}/frontend/.gitignore @@ -65,6 +65,7 @@ typings/ # nuxt.js build output .nuxt +sw.* # vuepress build output .vuepress/dist diff --git a/{{cookiecutter.project_slug}}/frontend/static/sw.js b/{{cookiecutter.project_slug}}/frontend/static/sw.js deleted file mode 100644 index 2d4d4602a0..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/static/sw.js +++ /dev/null @@ -1,17 +0,0 @@ -// THIS FILE SHOULD NOT BE VERSION CONTROLLED - -// https://github.com/NekR/self-destroying-sw - -self.addEventListener('install', function (e) { - self.skipWaiting() -}) - -self.addEventListener('activate', function (e) { - self.registration.unregister() - .then(function () { - return self.clients.matchAll() - }) - .then(function (clients) { - clients.forEach(client => client.navigate(client.url)) - }) -}) From 7903507f8b4fc742afa6679298244b01dd0bdd85 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sat, 14 Aug 2021 17:15:18 -0400 Subject: [PATCH 14/81] Add Dockerfile for whythawk/nuxt-for-fastapi code The Dockerfile will be divided into four stages: 1. `build`: - Copy files from the repo into the Docker container - Install dependencies from package.json with Yarn - Build a standalone server-side rendered (SSR) Nuxt.js app 2. `run-dev`: run dev server, which can hot-reload if code is mounted 3. `run-start`: run `nuxt start`, retaining all build dependencies 4. `run-minimal`: <1/6 the size of the others (262 MB vs. 1.72 GB) - Pull a Node.js image running on Alpine Linux - Copy the Nuxt.js app from `build` stage, without `node_modules` - Install `nuxt-start`, with minimal runtime for Nuxt.js - Run the `nuxt start` command using the `nuxt-start` module --- .../frontend/.dockerignore | 4 +++ .../frontend/Dockerfile | 28 +++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 {{cookiecutter.project_slug}}/frontend/.dockerignore create mode 100644 {{cookiecutter.project_slug}}/frontend/Dockerfile diff --git a/{{cookiecutter.project_slug}}/frontend/.dockerignore b/{{cookiecutter.project_slug}}/frontend/.dockerignore new file mode 100644 index 0000000000..90718e64d1 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/.dockerignore @@ -0,0 +1,4 @@ +.git +.gitignore +node_modules +npm-debug.log diff --git a/{{cookiecutter.project_slug}}/frontend/Dockerfile b/{{cookiecutter.project_slug}}/frontend/Dockerfile new file mode 100644 index 0000000000..120f0e0e1a --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/Dockerfile @@ -0,0 +1,28 @@ +FROM node:lts AS build +ENV NODE_ENV=development NUXT_HOST=${NUXT_HOST:-0.0.0.0} NUXT_PORT=${NUXT_PORT:-3000} NUXT_TELEMETRY_DISABLED=1 +COPY . /app +WORKDIR /app +RUN yarn install --frozen-lockfile --network-timeout 100000 --non-interactive +RUN yarn build --standalone +EXPOSE ${NUXT_PORT} + +FROM build AS run-dev +ENTRYPOINT ["yarn"] +CMD ["dev"] + +FROM build AS run-start +ENV NODE_ENV=production +ENTRYPOINT ["yarn"] +CMD ["start"] + +FROM node:lts-alpine AS run-minimal +ARG NUXT_VERSION=^2.15 +ENV NODE_ENV=production NUXT_HOST=${NUXT_HOST:-0.0.0.0} NUXT_PORT=${NUXT_PORT:-3000} NUXT_TELEMETRY_DISABLED=1 +WORKDIR /app +RUN yarn add @nuxtjs/axios @nuxt/content @nuxtjs/pwa nuxt-i18n nuxt-start@${NUXT_VERSION} +COPY --from=build /app/.nuxt ./.nuxt +COPY --from=build /app/content ./content +COPY --from=build /app/static ./static +COPY --from=build /app/nuxt.config* /app/api.ts /app/utils.ts ./ +ENTRYPOINT ["yarn"] +CMD ["nuxt-start"] From 2cf1aaf5548afe4ad1897a2f23ce20f1e96d629a Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 15 Aug 2021 14:31:55 -0400 Subject: [PATCH 15/81] Update Cookiecutter configs for NuxtJS --- cookiecutter.json | 5 +++-- {{cookiecutter.project_slug}}/cookiecutter-config-file.yml | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/cookiecutter.json b/cookiecutter.json index fc0e6fab00..b9ff90bb16 100644 --- a/cookiecutter.json +++ b/cookiecutter.json @@ -36,8 +36,9 @@ "docker_image_frontend": "{{cookiecutter.docker_image_prefix}}frontend", "_copy_without_render": [ - "frontend/src/**/*.html", - "frontend/src/**/*.vue", + "frontend/**/*.html", + "frontend/**/*.vue", + "frontend/.nuxt/*", "frontend/node_modules/*", "backend/app/app/email-templates/**" ] diff --git a/{{cookiecutter.project_slug}}/cookiecutter-config-file.yml b/{{cookiecutter.project_slug}}/cookiecutter-config-file.yml index b0e7dd2f77..3d30c871c8 100644 --- a/{{cookiecutter.project_slug}}/cookiecutter-config-file.yml +++ b/{{cookiecutter.project_slug}}/cookiecutter-config-file.yml @@ -26,5 +26,5 @@ default_context: docker_image_backend: '{{ cookiecutter.docker_image_backend }}' docker_image_celeryworker: '{{ cookiecutter.docker_image_celeryworker }}' docker_image_frontend: '{{ cookiecutter.docker_image_frontend }}' - _copy_without_render: [frontend/src/**/*.html, frontend/src/**/*.vue, frontend/node_modules/*, backend/app/app/email-templates/**] + _copy_without_render: [frontend/**/*.html, frontend/**/*.vue, frontend/.nuxt/*, frontend/node_modules/*, backend/app/app/email-templates/**] _template: ./ From 7fc9d8f1b0310671b891dac1725db453cf68ad85 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 15 Aug 2021 14:33:16 -0400 Subject: [PATCH 16/81] Update dev scripts for NuxtJS --- scripts/discard-dev-files.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/discard-dev-files.sh b/scripts/discard-dev-files.sh index 7a07a70bb3..a20a85f198 100644 --- a/scripts/discard-dev-files.sh +++ b/scripts/discard-dev-files.sh @@ -5,7 +5,7 @@ set -e rm -rf \{\{cookiecutter.project_slug\}\}/.git rm -rf \{\{cookiecutter.project_slug\}\}/backend/app/poetry.lock rm -rf \{\{cookiecutter.project_slug\}\}/frontend/node_modules -rm -rf \{\{cookiecutter.project_slug\}\}/frontend/dist +rm -rf \{\{cookiecutter.project_slug\}\}/frontend/.nuxt git checkout \{\{cookiecutter.project_slug\}\}/README.md git checkout \{\{cookiecutter.project_slug\}\}/.gitlab-ci.yml git checkout \{\{cookiecutter.project_slug\}\}/cookiecutter-config-file.yml From 6a46a59414db812d12e08ce4975fceb049459d46 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 15 Aug 2021 15:17:56 -0400 Subject: [PATCH 17/81] Set environment-specific `apiUrl` --- .../frontend/nuxt.config.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/frontend/nuxt.config.js b/{{cookiecutter.project_slug}}/frontend/nuxt.config.js index c29d22c7e5..0d71d39cb5 100644 --- a/{{cookiecutter.project_slug}}/frontend/nuxt.config.js +++ b/{{cookiecutter.project_slug}}/frontend/nuxt.config.js @@ -1,3 +1,16 @@ +// NuxtJS config: https://nuxtjs.org/docs/2.x/directory-structure/nuxt-config + +// Environment-specific domain configuration +let envName = process.env.VUE_APP_ENV +let envApiUrl = "" +if (envName === "production") { + envApiUrl = `https://${process.env.VUE_APP_DOMAIN_PROD}` +} else if (envName === "staging") { + envApiUrl = `https://${process.env.VUE_APP_DOMAIN_STAG}` +} else { + envApiUrl = `http://${process.env.VUE_APP_DOMAIN_DEV}` +} + export default { // Global page headers: https://go.nuxtjs.dev/config-head head: { @@ -14,7 +27,7 @@ export default { env: { baseUrl: process.env.BASE_URL || "http://localhost:3000", appName: process.env.VUE_APP_NAME, - apiUrl: `http://${process.env.VUE_APP_DOMAIN}`, + apiUrl: envApiUrl, }, // Global CSS: https://go.nuxtjs.dev/config-css From 5648ad1cda56aedd6adb3abaf19a98b863d51b09 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 15 Aug 2021 15:54:10 -0400 Subject: [PATCH 18/81] Update Docker Compose configuration for NuxtJS - Load .env files into containers - Add `NUXT_HOST` and `NUXT_PORT` environment variables, setting port to the previous value of 80 - Add `NUXT_VERSION` build arg for run-minimal build stage - Add run-dev target with mounted volume for local development --- {{cookiecutter.project_slug}}/docker-compose.override.yml | 5 +++-- {{cookiecutter.project_slug}}/docker-compose.yml | 8 +++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/{{cookiecutter.project_slug}}/docker-compose.override.yml b/{{cookiecutter.project_slug}}/docker-compose.override.yml index e4c1e8c0d2..21b65eac29 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.override.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.override.yml @@ -78,10 +78,11 @@ services: INSTALL_JUPYTER: ${INSTALL_JUPYTER-true} frontend: + volumes: + - ./frontend:/app build: context: ./frontend - args: - FRONTEND_ENV: dev + target: run-dev labels: - traefik.enable=true - traefik.constraint-label-stack=${TRAEFIK_TAG?Variable not set} diff --git a/{{cookiecutter.project_slug}}/docker-compose.yml b/{{cookiecutter.project_slug}}/docker-compose.yml index 153498960a..b3acd74ddf 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.yml @@ -224,10 +224,16 @@ services: frontend: image: "${DOCKER_IMAGE_FRONTEND?Variable not set}:${TAG-latest}" + env_file: + - .env + - ./frontend/.env + environment: + - NUXT_HOST=0.0.0.0 + - NUXT_PORT=80 build: context: ./frontend args: - FRONTEND_ENV: ${FRONTEND_ENV-production} + NUXT_VERSION: ${NUXT_VERSION:-^2.15} deploy: labels: - traefik.enable=true From ddd1fc44711b779f2b2082515ee1d8bb9400bd9d Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 15 Aug 2021 16:50:24 -0400 Subject: [PATCH 19/81] Update READMEs with NuxtJS info and screenshots --- README.md | 9 +---- img/dashboard.png | Bin 74826 -> 123652 bytes img/login.png | Bin 32648 -> 80994 bytes {{cookiecutter.project_slug}}/README.md | 34 +---------------- .../frontend/README.md | 36 ++++++++++++++++++ 5 files changed, 40 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index d85e943834..d2c5b49d41 100644 --- a/README.md +++ b/README.md @@ -44,20 +44,15 @@ Generate a backend and frontend stack using Python, including interactive API do * REST backend tests based on **Pytest**, integrated with Docker, so you can test the full API interaction, independent on the database. As it runs in Docker, it can build a new data store from scratch each time (so you can use ElasticSearch, MongoDB, CouchDB, or whatever you want, and just test that the API works). * Easy Python integration with **Jupyter Kernels** for remote or in-Docker development with extensions like Atom Hydrogen or Visual Studio Code Jupyter. * **Vue** frontend: - * Generated with Vue CLI. * **JWT Authentication** handling. * Login view. * After login, main dashboard view. * Main dashboard with user creation and edition. * Self user edition. - * **Vuex**. - * **Vue-router**. - * **Vuetify** for beautiful material design components. * **TypeScript**. - * Docker server based on **Nginx** (configured to play nicely with Vue-router). + * Docker server * Docker multi-stage building, so you don't need to save or commit compiled code. - * Frontend tests ran at build time (can be disabled too). - * Made as modular as possible, so it works out of the box, but you can re-generate with Vue CLI or create it as you need, and re-use what you want. + * Made as modular as possible, so it works out of the box, but you can re-generate as you need, and re-use what you want. * It's also easy to remove it if you have an API-only app, check the instructions in the generated `README.md`. * **PGAdmin** for PostgreSQL database, you can modify it to use PHPMyAdmin and MySQL easily. * **Flower** for Celery jobs monitoring. diff --git a/img/dashboard.png b/img/dashboard.png index ab3f86357ca982c3f10d22f4d5f88af13236c89f..7c4c90f7741fa93ae8cb7fa79b41a4a81fc7470e 100644 GIT binary patch literal 123652 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
    7GP5Vw_lt|S2{k_%YTMWj|^ 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 c1Ynr+D6R literal 74826 zcmd43WmH^E)Gmkw2mwL}1b26L4G=6i1PSg0cb6t;aCi3*+_ll*?oQ(!oW`Bok@vfI z{>)mlW`0bq?nU)EbxQW$wdJXO2vt&$LVJb(3I+xSO-A~I3JeSaG7QWM-j|5bD?ci= zWT1auIEl%8dI>GwFHOEdf4^~-&~#R{Gjnz`bToxg{o>;6Z0cz2KLLG^6h`KQ=qLB3 z!Ν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 diff --git a/img/login.png b/img/login.png index b731bd238f22c950df15b4fc9f628ec421707ca4..d695dfe160019be200ce7503c0549b606df44824 100644 GIT binary patch literal 80994 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 P4^ik#S{JjGZ$A7N&OIn0 diff --git a/{{cookiecutter.project_slug}}/README.md b/{{cookiecutter.project_slug}}/README.md index 1dd52672d8..69fdd0a13b 100644 --- a/{{cookiecutter.project_slug}}/README.md +++ b/{{cookiecutter.project_slug}}/README.md @@ -8,7 +8,7 @@ ## Frontend Requirements -* Node.js (with `npm`). +* Node.js (with `yarn`). ## Backend local development @@ -360,37 +360,7 @@ and check all the corresponding available URLs in the section at the end. ## Frontend development -* Enter the `frontend` directory, install the NPM packages and start the live server using the `npm` scripts: - -```bash -cd frontend -npm install -npm run serve -``` - -Then open your browser at http://localhost:8080 - -Notice that this live server is not running inside Docker, it is for local development, and that is the recommended workflow. Once you are happy with your frontend, you can build the frontend Docker image and start it, to test it in a production-like environment. But compiling the image at every change will not be as productive as running the local development server with live reload. - -Check the file `package.json` to see other available options. - -If you have Vue CLI installed, you can also run `vue ui` to control, configure, serve, and analyze your application using a nice local web user interface. - -If you are only developing the frontend (e.g. other team members are developing the backend) and there is a staging environment already deployed, you can make your local development code use that staging API instead of a full local Docker Compose stack. - -To do that, modify the file `./frontend/.env`, there's a section with: - -``` -VUE_APP_ENV=development -# VUE_APP_ENV=staging -``` - -* Switch the comment, to: - -``` -# VUE_APP_ENV=development -VUE_APP_ENV=staging -``` +See the [frontend README](./frontend/README.md) for instructions. ### Removing the frontend diff --git a/{{cookiecutter.project_slug}}/frontend/README.md b/{{cookiecutter.project_slug}}/frontend/README.md index 29e14df0f2..942aaa39fa 100644 --- a/{{cookiecutter.project_slug}}/frontend/README.md +++ b/{{cookiecutter.project_slug}}/frontend/README.md @@ -6,8 +6,12 @@ Accelerate your next FastAPI Base Project Generator frontend development by repl ## Build Setup +### Project + First deploy FastAPI's [Base Project Generator](https://github.com/tiangolo/full-stack-fastapi-postgresql), then replace the entire `frontend` folder with this one, updating the `.env` settings, and `nuxt.config.js`, and `package.json` 'frontend' project name with your own. +### Yarn + ```bash # install dependencies $ yarn install @@ -25,6 +29,38 @@ $ yarn generate Hot reload does not work in WSL2 (only WSL1, as of 1 April 2021). For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). +### Docker + +A [Docker](https://www.docker.com/) configuration is also provided. The _Dockerfile_ is divided into four [build stages](https://docs.docker.com/develop/develop-images/multistage-build/): + +1. `build`: + - Copy files from the repo into the Docker container + - Install dependencies from _package.json_ with Yarn + - Build the Nuxt.js app with [server-side rendering](https://nuxtjs.org/docs/2.x/concepts/server-side-rendering) (SSR) in [standalone mode](https://nuxtjs.org/docs/2.x/configuration-glossary/configuration-build#standalone) +2. `run-dev`: use the build stage to run the dev server, which can hot-reload within the Docker container if the source code is mounted +3. `run-start`: use the build stage to run [`nuxt start`](https://nuxtjs.org/docs/2.x/get-started/commands), with all dependencies from the build +4. `run-minimal`: this image is less than 1/6 the size of the others (262 MB vs. 1.72 GB) + - Pull a Node.js image running on Alpine Linux + - Copy the built Nuxt.js app from the `build` stage, without `node_modules` + - Install `nuxt-start`, with the minimal runtime for Nuxt.js (needed in addition to the inlined dependencies from standalone mode) + - Run the `nuxt start` command using the `nuxt-start` module to start the SSR application + +To work with the Docker configuration: + +```sh +cd /path/to/full-stack-fastapi-postgresql/{{cookiecutter.project_slug}}/frontend + +# build and run the development environment with hot-reloading +docker build . --rm --target run-dev -t localhost/whythawk/nuxt-for-fastapi:run-dev +docker run -it -p 3000:3000 -v $(pwd):/app --env-file $(pwd)/.env localhost/whythawk/nuxt-for-fastapi:run-dev + +# build and run the minimal production environment +docker build . --rm --target run-minimal -t localhost/whythawk/nuxt-for-fastapi:run-minimal +docker run --env-file $(pwd)/.env -it -p 3000:3000 localhost/whythawk/nuxt-for-fastapi:run-minimal +``` + +Then browse to http://localhost:3000 to see the homepage. + ## Nuxt.js and components - [Nuxt.js](https://nuxtjs.org/) From 1f8164361634b38e52ada57189b6cc36e27a6015 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Tue, 17 Aug 2021 11:58:13 -0400 Subject: [PATCH 20/81] Explain NuxtJS minimal production build trade-offs whythawk/full-stack-fastapi-postgresql#3 --- {{cookiecutter.project_slug}}/frontend/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/{{cookiecutter.project_slug}}/frontend/README.md b/{{cookiecutter.project_slug}}/frontend/README.md index 942aaa39fa..8e7dcd002e 100644 --- a/{{cookiecutter.project_slug}}/frontend/README.md +++ b/{{cookiecutter.project_slug}}/frontend/README.md @@ -45,6 +45,8 @@ A [Docker](https://www.docker.com/) configuration is also provided. The _Dockerf - Install `nuxt-start`, with the minimal runtime for Nuxt.js (needed in addition to the inlined dependencies from standalone mode) - Run the `nuxt start` command using the `nuxt-start` module to start the SSR application +**Important note:** The main trade-off for the minimal production build is that any NuxtJS modules declared in the [`modules:` section of the _nuxt.config.js_ file](https://github.com/whythawk/full-stack-fastapi-postgresql/blob/ee12a3ffe3288163c7ce1e20ceae7e694213116d/%7B%7Bcookiecutter.project_slug%7D%7D/frontend/nuxt.config.js#L51-L60) must also be specified in the _Dockerfile_ on the `yarn add` line as shown [here](https://github.com/whythawk/full-stack-fastapi-postgresql/blob/ee12a3ffe3288163c7ce1e20ceae7e694213116d/%7B%7Bcookiecutter.project_slug%7D%7D/frontend/Dockerfile#L22) (it's not installing from the _package.json_, which is one reason why it's smaller). To switch from the minimal production build to the full production build, either specify the [target build stage](https://docs.docker.com/compose/compose-file/compose-file-v3/#target) in the _docker-compose.yml_ (`target: run-start`, as is done for the local development configuration [here](https://github.com/whythawk/full-stack-fastapi-postgresql/blob/ee12a3ffe3288163c7ce1e20ceae7e694213116d/%7B%7Bcookiecutter.project_slug%7D%7D/docker-compose.override.yml#L83-L85)), or push Docker images from each stage to a registry, then specify the appropriate tag to be pulled (with the `TAG` environment variable, as shown [here](https://github.com/whythawk/full-stack-fastapi-postgresql/blob/ee12a3ffe3288163c7ce1e20ceae7e694213116d/%7B%7Bcookiecutter.project_slug%7D%7D/docker-compose.yml#L225-L229)). + To work with the Docker configuration: ```sh From cc89db57018033e5aced7563cd38f5d589074531 Mon Sep 17 00:00:00 2001 From: Gavin Chait Date: Tue, 24 Aug 2021 13:41:57 +0200 Subject: [PATCH 21/81] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d2c5b49d41..b0c94279a9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Full Stack FastAPI and PostgreSQL - Base Project Generator -[![Build Status](https://travis-ci.com/tiangolo/full-stack-fastapi-postgresql.svg?branch=master)](https://travis-ci.com/tiangolo/full-stack-fastapi-postgresql) +[![Build Status](https://app.travis-ci.com/whythawk/full-stack-fastapi-postgresql.svg?branch=master)](https://app.travis-ci.com/whythawk/full-stack-fastapi-postgresql) Generate a backend and frontend stack using Python, including interactive API documentation. From b0dcc4b67d2cb25f840ecbb74046d3c7e095d103 Mon Sep 17 00:00:00 2001 From: Brendon Smith Date: Sun, 29 Aug 2021 13:43:57 -0400 Subject: [PATCH 22/81] Pin `backend.dockerfile` to inboard 0.10.4 br3ndonland/inboard@242ff7a inboard is being updated to Uvicorn 0.15, which introduces some new configuration options. The inboard updates are still a work in progress, hence the alpha releases. In addition to the Uvicorn version check added to `inboard.start` in br3ndonland/inboard@242ff7a, this commit will pin the inboard version in the whythawk/full-stack-fastapi-postgresql `backend.dockerfile` to the latest stable release. Once the next version of inboard is stable, the Docker image version in `backend.dockerfile`, and the Python version in `pyproject.toml`, can be upgraded in tandem. --- {{cookiecutter.project_slug}}/backend/backend.dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/backend/backend.dockerfile b/{{cookiecutter.project_slug}}/backend/backend.dockerfile index e40372054b..b87c73287c 100644 --- a/{{cookiecutter.project_slug}}/backend/backend.dockerfile +++ b/{{cookiecutter.project_slug}}/backend/backend.dockerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/br3ndonland/inboard:fastapi-python3.9 +FROM ghcr.io/br3ndonland/inboard:fastapi-0.10.4-python3.9 # Copy poetry.lock* in case it doesn't exist in the repo COPY ./app/pyproject.toml ./app/poetry.lock* /app/ From a3747766667f87905507a68c262bc7d58d8069c8 Mon Sep 17 00:00:00 2001 From: Gavin Chait Date: Mon, 26 Dec 2022 13:54:27 +0100 Subject: [PATCH 23/81] Complete frontend rebuild Complete rebuild for Nuxt.js 3.0, including the following dependencies: - Pinia for state management - Vee-Validate for form validation - Tailwind for CSS --- img/dashboard.png | Bin 123652 -> 38653 bytes img/login.png | Bin 80994 -> 63132 bytes {{cookiecutter.project_slug}}/.dockerignore | 4 + {{cookiecutter.project_slug}}/.env | 9 + .../cookiecutter-config-file.yml | 5 + .../frontend/.babelrc | 16 - .../frontend/.editorconfig | 1 + {{cookiecutter.project_slug}}/frontend/.env | 4 + .../frontend/.eslintrc.js | 26 - .../frontend/.gitignore | 49 +- .../frontend/Dockerfile | 38 +- .../frontend/LICENSE | 21 - .../frontend/README.md | 81 +- {{cookiecutter.project_slug}}/frontend/api.ts | 74 - .../frontend/api/auth.ts | 133 + .../frontend/api/core.ts | 14 + .../frontend/api/index.ts | 4 + .../frontend/app.vue | 7 + .../frontend/app/router.scrollBehavior.ts | 4 - .../frontend/assets/css/main.css | 9 + .../frontend/assets/css/tailwind.css | 4 - .../frontend/components/HeadingBar.vue | 21 - .../frontend/components/Logo.vue | 35 - .../frontend/components/NavBar.vue | 301 - .../frontend/components/NotificationsBar.vue | 145 - .../frontend/components/alerts/Button.vue | 14 + .../components/authentication/Navigation.vue | 61 + .../components/layouts/Notification.vue | 49 + .../components/layouts/default/Footer.vue | 47 + .../components/layouts/default/Navigation.vue | 59 + .../components/layouts/home/Navigation.vue | 59 + .../components/moderation/CheckState.vue | 22 + .../components/moderation/CheckToggle.vue | 21 + .../components/moderation/CreateUser.vue | 78 + .../components/moderation/ToggleActive.vue | 38 + .../components/moderation/ToggleMod.vue | 38 + .../components/moderation/UserTable.vue | 58 + .../frontend/components/settings/Password.vue | 68 + .../frontend/components/settings/Profile.vue | 82 + .../settings/ValidateEmailButton.vue | 25 + .../frontend/content/about.md | 131 + .../frontend/content/article-content.md | 18 - .../blog/20160708-theranos-and-elitism.md | 51 + .../blog/20160721-lament-for-the-auther.md | 53 + .../content/blog/20170203-summer-of-99.md | 49 + .../frontend/content/get-started.md | 57 - .../frontend/interfaces/index.ts | 54 +- .../frontend/interfaces/profile.ts | 32 + .../frontend/interfaces/utilities.ts | 25 + .../frontend/jest.config.js | 18 - .../frontend/layouts/authentication.vue | 8 + .../frontend/layouts/content.vue | 26 +- .../frontend/layouts/default.vue | 22 +- .../frontend/layouts/home.vue | 12 + .../frontend/layouts/landing.vue | 205 - .../frontend/middleware/anonymous.ts | 13 +- .../frontend/middleware/authenticated.ts | 13 +- .../frontend/middleware/has-admin-access.ts | 8 - .../frontend/middleware/moderator.ts | 8 + .../frontend/middleware/refresh.ts | 8 + .../frontend/nuxt.config.js | 104 - .../frontend/nuxt.config.ts | 67 + .../frontend/package.json | 61 +- .../frontend/pages/[...slug].vue | 12 + .../frontend/pages/admin/create.vue | 221 - .../frontend/pages/admin/edit/_id.vue | 259 - .../frontend/pages/admin/index.vue | 133 - .../frontend/pages/article-content.vue | 22 - .../frontend/pages/blog/[...slug].vue | 12 + .../frontend/pages/blog/index.vue | 48 + .../frontend/pages/get-started.vue | 22 - .../frontend/pages/index.vue | 301 +- .../frontend/pages/join.vue | 84 + .../frontend/pages/login.vue | 179 +- .../frontend/pages/main/dashboard.vue | 52 - .../pages/main/profile/edit-password.vue | 117 - .../frontend/pages/main/profile/edit.vue | 124 - .../frontend/pages/main/profile/index.vue | 86 - .../frontend/pages/moderation.vue | 69 + .../frontend/pages/recover-password.vue | 139 +- .../frontend/pages/register.vue | 313 - .../frontend/pages/reset-password.vue | 262 +- .../frontend/pages/settings.vue | 71 + .../frontend/plugins/vee-validate.ts | 22 - .../plugins/veevalidate-components.ts | 7 + .../frontend/plugins/veevalidate-rules.ts | 38 + .../frontend/static/favicon.ico | Bin 1393 -> 0 bytes .../frontend/static/icon.png | Bin 12699 -> 0 bytes .../frontend/store/admin/actions.ts | 82 - .../frontend/store/admin/getters.ts | 9 - .../frontend/store/admin/mutations.ts | 14 - .../frontend/store/admin/state.ts | 11 - .../frontend/store/helpers/actions.ts | 0 .../frontend/store/helpers/getters.ts | 3 - .../frontend/store/helpers/mutations.ts | 5 - .../frontend/store/helpers/state.ts | 9 - .../frontend/store/main/actions.ts | 174 - .../frontend/store/main/getters.ts | 17 - .../frontend/store/main/mutations.ts | 31 - .../frontend/store/main/state.ts | 25 - .../frontend/stores/auth.ts | 192 + .../frontend/stores/index.ts | 7 + .../frontend/stores/toasts.ts | 36 + .../frontend/stores/tokens.ts | 67 + .../frontend/tailwind.config.js | 45 +- .../frontend/test/Logo.spec.js | 9 - .../frontend/tsconfig.json | 39 +- .../frontend/tslint.json | 19 - .../frontend/utilities/generic.ts | 52 + .../frontend/utilities/index.ts | 19 + .../frontend/utilities/textual.ts | 17 + .../frontend/utils.ts | 6 - .../frontend/yarn.lock | 16298 +++++----------- 113 files changed, 6911 insertions(+), 15635 deletions(-) create mode 100644 {{cookiecutter.project_slug}}/.dockerignore delete mode 100644 {{cookiecutter.project_slug}}/frontend/.babelrc delete mode 100644 {{cookiecutter.project_slug}}/frontend/.eslintrc.js delete mode 100644 {{cookiecutter.project_slug}}/frontend/LICENSE delete mode 100644 {{cookiecutter.project_slug}}/frontend/api.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/api/auth.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/api/core.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/api/index.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/app.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/app/router.scrollBehavior.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/assets/css/main.css delete mode 100644 {{cookiecutter.project_slug}}/frontend/assets/css/tailwind.css delete mode 100644 {{cookiecutter.project_slug}}/frontend/components/HeadingBar.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/components/Logo.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/components/NavBar.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/components/NotificationsBar.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/alerts/Button.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/authentication/Navigation.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/layouts/Notification.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/layouts/default/Footer.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/layouts/default/Navigation.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/layouts/home/Navigation.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/moderation/CheckState.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/moderation/CheckToggle.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/moderation/CreateUser.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/moderation/ToggleActive.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/moderation/ToggleMod.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/moderation/UserTable.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/settings/Password.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/settings/Profile.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/components/settings/ValidateEmailButton.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/content/about.md delete mode 100644 {{cookiecutter.project_slug}}/frontend/content/article-content.md create mode 100644 {{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md create mode 100644 {{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md create mode 100644 {{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md delete mode 100644 {{cookiecutter.project_slug}}/frontend/content/get-started.md create mode 100644 {{cookiecutter.project_slug}}/frontend/interfaces/profile.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/interfaces/utilities.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/jest.config.js create mode 100644 {{cookiecutter.project_slug}}/frontend/layouts/authentication.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/layouts/home.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/layouts/landing.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/middleware/has-admin-access.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/middleware/moderator.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/middleware/refresh.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/nuxt.config.js create mode 100644 {{cookiecutter.project_slug}}/frontend/nuxt.config.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/[...slug].vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/admin/create.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/admin/edit/_id.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/admin/index.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/article-content.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/blog/[...slug].vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/blog/index.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/get-started.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/join.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/main/dashboard.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/main/profile/edit-password.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/main/profile/edit.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/main/profile/index.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/moderation.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/pages/register.vue create mode 100644 {{cookiecutter.project_slug}}/frontend/pages/settings.vue delete mode 100644 {{cookiecutter.project_slug}}/frontend/plugins/vee-validate.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/plugins/veevalidate-components.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/plugins/veevalidate-rules.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/static/favicon.ico delete mode 100644 {{cookiecutter.project_slug}}/frontend/static/icon.png delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/admin/actions.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/admin/getters.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/admin/mutations.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/admin/state.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/helpers/actions.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/helpers/getters.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/helpers/mutations.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/helpers/state.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/main/actions.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/main/getters.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/main/mutations.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/store/main/state.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/stores/auth.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/stores/index.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/stores/toasts.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/stores/tokens.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/test/Logo.spec.js delete mode 100644 {{cookiecutter.project_slug}}/frontend/tslint.json create mode 100644 {{cookiecutter.project_slug}}/frontend/utilities/generic.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/utilities/index.ts create mode 100644 {{cookiecutter.project_slug}}/frontend/utilities/textual.ts delete mode 100644 {{cookiecutter.project_slug}}/frontend/utils.ts diff --git a/img/dashboard.png b/img/dashboard.png index 7c4c90f7741fa93ae8cb7fa79b41a4a81fc7470e..defd06d803f241c3317aef5c81f7be83a5a64316 100644 GIT binary patch literal 38653 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
    99?uk5Px6joq!^YE9R}V%zN;HvEqk)R>vK2qaV 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

    %l` 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

      7GP5Vw_lt|S2{k_%YTMWj|^ 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 c1Ynr+D6R diff --git a/img/login.png b/img/login.png index d695dfe160019be200ce7503c0549b606df44824..2448812c5d8597f49506b23035749141514bcaa3 100644 GIT binary patch literal 63132 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

      + + + +
      + +
      + + + + +
      + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/layouts/default.vue b/{{cookiecutter.project_slug}}/frontend/layouts/default.vue index 2b93748e35..270feaf757 100644 --- a/{{cookiecutter.project_slug}}/frontend/layouts/default.vue +++ b/{{cookiecutter.project_slug}}/frontend/layouts/default.vue @@ -1,12 +1,12 @@ +
      + + + + + + + + +
      + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/layouts/home.vue b/{{cookiecutter.project_slug}}/frontend/layouts/home.vue new file mode 100644 index 0000000000..f7d7de2ff2 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/layouts/home.vue @@ -0,0 +1,12 @@ + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/layouts/landing.vue b/{{cookiecutter.project_slug}}/frontend/layouts/landing.vue deleted file mode 100644 index c780c3eaa3..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/layouts/landing.vue +++ /dev/null @@ -1,205 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/middleware/anonymous.ts b/{{cookiecutter.project_slug}}/frontend/middleware/anonymous.ts index 02bc3fa332..09b03ef662 100644 --- a/{{cookiecutter.project_slug}}/frontend/middleware/anonymous.ts +++ b/{{cookiecutter.project_slug}}/frontend/middleware/anonymous.ts @@ -1,5 +1,10 @@ -export default function ({ store, redirect }) { - if (store.getters["main/isLoggedIn"]) { - return redirect("/") +import { useAuthStore } from "@/stores" + +export default defineNuxtRouteMiddleware((to, from) => { + const routes = ["/login", "/join", "/recover-password", "/reset-password"] + const auth = useAuthStore() + if (auth.loggedIn) { + if (routes.includes(from.path)) return navigateTo("/") + else return abortNavigation() } -} +}) \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/middleware/authenticated.ts b/{{cookiecutter.project_slug}}/frontend/middleware/authenticated.ts index 9707d09576..1678084e4a 100644 --- a/{{cookiecutter.project_slug}}/frontend/middleware/authenticated.ts +++ b/{{cookiecutter.project_slug}}/frontend/middleware/authenticated.ts @@ -1,5 +1,10 @@ -export default function ({ store, redirect }) { - if (!store.getters["main/isLoggedIn"]) { - return redirect("/login") +import { useAuthStore } from "@/stores" + +export default defineNuxtRouteMiddleware((to, from) => { + const auth = useAuthStore() + const routes = ["/login", "/join", "/recover-password", "/reset-password"] + if (!auth.loggedIn) { + if (routes.includes(from.path)) return navigateTo("/") + else return abortNavigation() } -} +}) \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/middleware/has-admin-access.ts b/{{cookiecutter.project_slug}}/frontend/middleware/has-admin-access.ts deleted file mode 100644 index 9fe6b8f63b..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/middleware/has-admin-access.ts +++ /dev/null @@ -1,8 +0,0 @@ -export default function ({ store, redirect }) { - if ( - !store.getters["main/hasAdminAccess"] && - !store.getters["main/isLoggedIn"] - ) { - return redirect("/") - } -} diff --git a/{{cookiecutter.project_slug}}/frontend/middleware/moderator.ts b/{{cookiecutter.project_slug}}/frontend/middleware/moderator.ts new file mode 100644 index 0000000000..9ffea0cf8f --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/middleware/moderator.ts @@ -0,0 +1,8 @@ +import { useAuthStore } from "@/stores" + +export default defineNuxtRouteMiddleware((to, from) => { + const auth = useAuthStore() + if (!auth.isAdmin) { + return abortNavigation() + } +}) \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/middleware/refresh.ts b/{{cookiecutter.project_slug}}/frontend/middleware/refresh.ts new file mode 100644 index 0000000000..2a36b3b5f8 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/middleware/refresh.ts @@ -0,0 +1,8 @@ +import { useAuthStore } from "@/stores" + +export default defineNuxtRouteMiddleware(async (to, from) => { + const auth = useAuthStore() + if (!auth.loggedIn) { + await auth.getUserProfile() + } +}) \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/nuxt.config.js b/{{cookiecutter.project_slug}}/frontend/nuxt.config.js deleted file mode 100644 index 0d71d39cb5..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/nuxt.config.js +++ /dev/null @@ -1,104 +0,0 @@ -// NuxtJS config: https://nuxtjs.org/docs/2.x/directory-structure/nuxt-config - -// Environment-specific domain configuration -let envName = process.env.VUE_APP_ENV -let envApiUrl = "" -if (envName === "production") { - envApiUrl = `https://${process.env.VUE_APP_DOMAIN_PROD}` -} else if (envName === "staging") { - envApiUrl = `https://${process.env.VUE_APP_DOMAIN_STAG}` -} else { - envApiUrl = `http://${process.env.VUE_APP_DOMAIN_DEV}` -} - -export default { - // Global page headers: https://go.nuxtjs.dev/config-head - head: { - title: "frontend", - meta: [ - { charset: "utf-8" }, - { name: "viewport", content: "width=device-width, initial-scale=1" }, - { hid: "description", name: "description", content: "" }, - ], - link: [{ rel: "icon", type: "image/x-icon", href: "/favicon.ico" }], - }, - - // Env: https://nuxtjs.org/docs/2.x/configuration-glossary/configuration-env/ - env: { - baseUrl: process.env.BASE_URL || "http://localhost:3000", - appName: process.env.VUE_APP_NAME, - apiUrl: envApiUrl, - }, - - // Global CSS: https://go.nuxtjs.dev/config-css - css: [], - - // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins - plugins: ["~/plugins/vee-validate"], - - // Auto import components: https://go.nuxtjs.dev/config-components - components: true, - - // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules - buildModules: [ - // https://go.nuxtjs.dev/typescript - "@nuxt/typescript-build", - // https://go.nuxtjs.dev/tailwindcss - "@nuxtjs/tailwindcss", - ], - - // Modules: https://go.nuxtjs.dev/config-modules - modules: [ - // https://go.nuxtjs.dev/axios - "@nuxtjs/axios", - // https://go.nuxtjs.dev/pwa - "@nuxtjs/pwa", - // https://go.nuxtjs.dev/content - "@nuxt/content", - // https://i18n.nuxtjs.org/ - "nuxt-i18n", - ], - - // Axios module configuration: https://go.nuxtjs.dev/config-axios - axios: {}, - - // nuxt/i18n module configuration: https://i18n.nuxtjs.org/basic-usage - i18n: { - locales: ["en", "fr", "es"], - defaultLocale: "en", - vueI18n: { - fallbackLocale: "en", - messages: { - en: { - welcome: "Welcome", - }, - fr: { - welcome: "Bienvenue", - }, - es: { - welcome: "Bienvenido", - }, - }, - }, - detectBrowserLanguage: { - useCookie: true, - cookieKey: "i18n_redirected", - onlyOnRoot: true, // recommended - }, - }, - - // PWA module configuration: https://go.nuxtjs.dev/pwa - pwa: { - manifest: { - lang: "en", - }, - }, - - // Content module configuration: https://go.nuxtjs.dev/config-content - content: {}, - - // Build Configuration: https://go.nuxtjs.dev/config-build - build: { - transpile: ["vee-validate/dist/rules"], - }, -} diff --git a/{{cookiecutter.project_slug}}/frontend/nuxt.config.ts b/{{cookiecutter.project_slug}}/frontend/nuxt.config.ts new file mode 100644 index 0000000000..b92b5417d5 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/nuxt.config.ts @@ -0,0 +1,67 @@ +// https://v3.nuxtjs.org/api/configuration/nuxt.config +export default defineNuxtConfig({ + app: { + head: { + meta: [ + { charset: "utf-8" }, + // + { name: "viewport", content: "width=device-width, initial-scale=1" } + ], + script: [ + // + // { src: "@/assets/css/main.css" } + ], + noscript: [ + // + { children: "Javascript is required" } + ] + }, + // pageTransition: { name: "page", mode: "out-in" } + }, + runtimeConfig: { + // https://nuxt.com/docs/api/composables/use-runtime-config#using-the-env-file + // Private keys are only available on the server + apiSecret: process.env.VUE_PRIVATE_TERM, + // Public keys that are exposed to the client + public: { + appName: process.env.VUE_APP_NAME, + appEnv: process.env.VUE_APP_ENV, + apiWS: process.env.VUE_APP_DOMAIN_WS, + apiUrl: process.env.VUE_APP_DOMAIN_API, + } + }, + modules: [ + [ + "@pinia/nuxt", + { + autoImports: [ + // automatically imports `defineStore` + "defineStore", // import { defineStore } from "pinia" + ], + }, + ], + "@pinia-plugin-persistedstate/nuxt", + "@nuxt/content", + "tailwindcss" + ], + piniaPersistedstate: { + cookieOptions: { + path: "/", + // maxAge: 60 * 60 * 24 * 30, + secure: true, + }, + }, + content: { + // https://content.nuxtjs.org/api/configuration + navigation: { + fields: ["title", "author", "publishedAt"] + } + }, + css: ["~/assets/css/main.css"], + postcss: { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, + } +}) diff --git a/{{cookiecutter.project_slug}}/frontend/package.json b/{{cookiecutter.project_slug}}/frontend/package.json index 98e6ad209f..7727475efb 100644 --- a/{{cookiecutter.project_slug}}/frontend/package.json +++ b/{{cookiecutter.project_slug}}/frontend/package.json @@ -1,50 +1,29 @@ { - "name": "frontend", - "version": "1.0.0", "private": true, "scripts": { - "dev": "nuxt", "build": "nuxt build", - "start": "nuxt start", + "dev": "nuxt dev", "generate": "nuxt generate", - "lint:js": "eslint --ext \".js,.vue\" --ignore-path .gitignore .", - "lint": "yarn lint:js", - "test": "jest" - }, - "dependencies": { - "@nuxt/content": "^1.14.0", - "@nuxtjs/axios": "^5.13.1", - "@nuxtjs/pwa": "^3.3.5", - "@tailwindcss/forms": "^0.3.2", - "@tailwindcss/typography": "^0.4.0", - "core-js": "^3.9.1", - "nuxt": "^2.15.3", - "nuxt-i18n": "^6.24.0", - "nuxt-property-decorator": "^2.9.1", - "vee-validate": "^3.4.5" + "preview": "nuxt preview" }, "devDependencies": { - "@nuxt/types": "^2.15.3", - "@nuxt/typescript-build": "^2.1.0", - "@nuxtjs/eslint-config-typescript": "^6.0.0", - "@nuxtjs/eslint-module": "^3.0.2", - "@nuxtjs/tailwindcss": "^4.0.3", - "@tailwindcss/postcss7-compat": "^2.1.0", - "@vue/test-utils": "^1.1.3", - "autoprefixer": "^9", - "babel-core": "7.0.0-bridge.0", - "babel-eslint": "^10.1.0", - "babel-jest": "^26.6.3", - "eslint": "^7.22.0", - "eslint-config-prettier": "^8.1.0", - "eslint-plugin-nuxt": "^2.0.0", - "eslint-plugin-prettier": "^3.3.1", - "eslint-plugin-vue": "^7.7.0", - "jest": "^26.6.3", - "postcss": "^7", - "prettier": "^2.2.1", - "tailwindcss": "npm:@tailwindcss/postcss7-compat", - "ts-jest": "^26.5.4", - "vue-jest": "^3.0.4" + "@nuxt/content": "^2.2.1", + "@pinia-plugin-persistedstate/nuxt": "^1.0.0", + "@tailwindcss/aspect-ratio": "^0.4.2", + "@tailwindcss/forms": "^0.5.3", + "@tailwindcss/line-clamp": "^0.4.2", + "@tailwindcss/typography": "^0.5.7", + "autoprefixer": "^10.4.13", + "nuxt": "^3.0.0", + "postcss": "^8.4.18", + "tailwindcss": "^3.2.1" + }, + "dependencies": { + "@headlessui/vue": "^1.7.3", + "@heroicons/vue": "^2.0.12", + "@pinia/nuxt": "^0.4.3", + "@vee-validate/i18n": "^4.7.3", + "@vee-validate/rules": "^4.7.3", + "vee-validate": "^4.7.3" } } diff --git a/{{cookiecutter.project_slug}}/frontend/pages/[...slug].vue b/{{cookiecutter.project_slug}}/frontend/pages/[...slug].vue new file mode 100644 index 0000000000..d24b6efc52 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/[...slug].vue @@ -0,0 +1,12 @@ + + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/admin/create.vue b/{{cookiecutter.project_slug}}/frontend/pages/admin/create.vue deleted file mode 100644 index fa1b94cdae..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/admin/create.vue +++ /dev/null @@ -1,221 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/admin/edit/_id.vue b/{{cookiecutter.project_slug}}/frontend/pages/admin/edit/_id.vue deleted file mode 100644 index 73a719e88b..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/admin/edit/_id.vue +++ /dev/null @@ -1,259 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/admin/index.vue b/{{cookiecutter.project_slug}}/frontend/pages/admin/index.vue deleted file mode 100644 index bf8b564514..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/admin/index.vue +++ /dev/null @@ -1,133 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/article-content.vue b/{{cookiecutter.project_slug}}/frontend/pages/article-content.vue deleted file mode 100644 index 8c0c891d64..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/article-content.vue +++ /dev/null @@ -1,22 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/blog/[...slug].vue b/{{cookiecutter.project_slug}}/frontend/pages/blog/[...slug].vue new file mode 100644 index 0000000000..d24b6efc52 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/blog/[...slug].vue @@ -0,0 +1,12 @@ + + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/blog/index.vue b/{{cookiecutter.project_slug}}/frontend/pages/blog/index.vue new file mode 100644 index 0000000000..58feb78e2d --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/blog/index.vue @@ -0,0 +1,48 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/get-started.vue b/{{cookiecutter.project_slug}}/frontend/pages/get-started.vue deleted file mode 100644 index c632b73221..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/get-started.vue +++ /dev/null @@ -1,22 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/index.vue b/{{cookiecutter.project_slug}}/frontend/pages/index.vue index 266204892e..d8f7075bde 100644 --- a/{{cookiecutter.project_slug}}/frontend/pages/index.vue +++ b/{{cookiecutter.project_slug}}/frontend/pages/index.vue @@ -1,212 +1,115 @@ - + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/join.vue b/{{cookiecutter.project_slug}}/frontend/pages/join.vue new file mode 100644 index 0000000000..725b86debc --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/join.vue @@ -0,0 +1,84 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/login.vue b/{{cookiecutter.project_slug}}/frontend/pages/login.vue index 4c526d6bc3..0e57574eb7 100644 --- a/{{cookiecutter.project_slug}}/frontend/pages/login.vue +++ b/{{cookiecutter.project_slug}}/frontend/pages/login.vue @@ -1,124 +1,81 @@ - + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/main/dashboard.vue b/{{cookiecutter.project_slug}}/frontend/pages/main/dashboard.vue deleted file mode 100644 index 479fb367c9..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/main/dashboard.vue +++ /dev/null @@ -1,52 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit-password.vue b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit-password.vue deleted file mode 100644 index 9f7832df33..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit-password.vue +++ /dev/null @@ -1,117 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit.vue b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit.vue deleted file mode 100644 index ee0c01a33e..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/edit.vue +++ /dev/null @@ -1,124 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/index.vue b/{{cookiecutter.project_slug}}/frontend/pages/main/profile/index.vue deleted file mode 100644 index 399c60d184..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/main/profile/index.vue +++ /dev/null @@ -1,86 +0,0 @@ - - - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/moderation.vue b/{{cookiecutter.project_slug}}/frontend/pages/moderation.vue new file mode 100644 index 0000000000..ddfc0d0b91 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/moderation.vue @@ -0,0 +1,69 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/recover-password.vue b/{{cookiecutter.project_slug}}/frontend/pages/recover-password.vue index 3467a3d2bf..4b1c3f541a 100644 --- a/{{cookiecutter.project_slug}}/frontend/pages/recover-password.vue +++ b/{{cookiecutter.project_slug}}/frontend/pages/recover-password.vue @@ -1,97 +1,66 @@ - + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/register.vue b/{{cookiecutter.project_slug}}/frontend/pages/register.vue deleted file mode 100644 index 6cc19689b5..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/pages/register.vue +++ /dev/null @@ -1,313 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/pages/reset-password.vue b/{{cookiecutter.project_slug}}/frontend/pages/reset-password.vue index 1933d1d3c9..19a4722d11 100644 --- a/{{cookiecutter.project_slug}}/frontend/pages/reset-password.vue +++ b/{{cookiecutter.project_slug}}/frontend/pages/reset-password.vue @@ -1,219 +1,75 @@ - +const auth = useAuthStore() +const route = useRoute() +const redirectRoute = "/login" - + +onMounted(async () => { + // Check if token exists + if (!route.query || !route.query.token) await navigateTo("/") +}) + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/pages/settings.vue b/{{cookiecutter.project_slug}}/frontend/pages/settings.vue new file mode 100644 index 0000000000..d45aac8cb7 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/pages/settings.vue @@ -0,0 +1,71 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/plugins/vee-validate.ts b/{{cookiecutter.project_slug}}/frontend/plugins/vee-validate.ts deleted file mode 100644 index ea3eb0e73a..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/plugins/vee-validate.ts +++ /dev/null @@ -1,22 +0,0 @@ -import Vue from "vue" -import { ValidationObserver, ValidationProvider, extend } from "vee-validate" -import { required, confirmed, email } from "vee-validate/dist/rules" - -extend("required", { - ...required, - message: "true", -}) - -extend("confirmed", { - ...confirmed, - message: "true", -}) - -extend("email", { - ...email, - message: "Please use a valid email address.", -}) - -// Register it globally -Vue.component("ValidationProvider", ValidationProvider) -Vue.component("ValidationObserver", ValidationObserver) diff --git a/{{cookiecutter.project_slug}}/frontend/plugins/veevalidate-components.ts b/{{cookiecutter.project_slug}}/frontend/plugins/veevalidate-components.ts new file mode 100644 index 0000000000..8e12160793 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/plugins/veevalidate-components.ts @@ -0,0 +1,7 @@ +import { Form, Field, ErrorMessage } from "vee-validate"; + +export default defineNuxtPlugin((nuxtApp) => { + nuxtApp.vueApp.component("Form", Form); + nuxtApp.vueApp.component("Field", Field); + nuxtApp.vueApp.component("ErrorMessage", ErrorMessage); + }); \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/plugins/veevalidate-rules.ts b/{{cookiecutter.project_slug}}/frontend/plugins/veevalidate-rules.ts new file mode 100644 index 0000000000..96e92a0b54 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/plugins/veevalidate-rules.ts @@ -0,0 +1,38 @@ +import { defineRule, configure } from "vee-validate"; +import { required, email, min, url } from "@vee-validate/rules"; +import { localize } from "@vee-validate/i18n"; + +export default defineNuxtPlugin((nuxtApp) => { + defineRule("required", required); + defineRule("email", email); + defineRule("min", min); + defineRule("url", url); + defineRule("confirmed", (value, [target], ctx) => { + // https://vee-validate.logaretm.com/v4/guide/global-validators#cross-field-validation + if (value === ctx.form[target]) { + return true; + } + return "Passwords must match."; + }); +}); + +configure({ + // Generates an English message locale generator + generateMessage: localize("en", { + messages: { + required: "This field is required.", + email: "This email address is invalid.", + min: "A minimum number of characters is required.", + url: "This url is invalid.", + }, + }), +}); + +/* + References: + + https://vee-validate.logaretm.com/v4/guide/overview/ + https://github.com/razorcx-courses/nuxt3-veevalidate + https://vee-validate.logaretm.com/v4/guide/global-validators/#available-rules + https://vee-validate.logaretm.com/v4/guide/i18n +*/ \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/static/favicon.ico b/{{cookiecutter.project_slug}}/frontend/static/favicon.ico deleted file mode 100644 index 3632d0c89129045dc4103e84e59e426c57b8f51a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1393 zcmV-%1&;cOP)Px)D@jB_R9Fe^ReNldMG&9eyIx;VxmMIdgjhwCKeVN$X=xNR5F_{iAD9pW6t#*F zgsb$5TDXc(+R_KbHns{HwTUSSMxqkbMAXm+Qmqd}qLq*w23kw2)Y7}&?)uyB`r&ui zgSLtP7@6d5XJ%(+e>;!;h%VEAG6Suz+(=E0vHu2kKIR~YDr+g=KThO5N?%t`9J7Cz z!`J{cS7sBbmBg4LMc2`Q*c=vb%;M+)D8)#rilGypCSqLx@dPzj-aO`0Ee@jx&{DMo z2WG&xg=Vd*Cq_lch7F)fE%7L^BtJ8$xL~eTcPV~!0CdAiRcr*Z+1D9sR%#uxa2%lS zMHc30U1D*;LsF_{LE;nVHg~>ZH^SfO0I1*c5a(Lr^e$ztX)$85I|Ia7@DN4Y6RSN5 zisVjYMleQy5y_2LmgG+w;e3P~i4NCXgH*d=HbBx*5MrLSb{`J>9A!vneqSRxGno<9 zE23>mQG7tr%OUm=gpmORdJXM@drwr%R(lc%Hl26;kf|LIe!i@Uup z*Llp$^8n6C$?f4TR{7EZgs8wRV8aUOrpM1&9Zf!U!LkK0XZn-1d__lJO8SGj2H%rk z@(%pkpq}e2T|eKn4__}1pt<5c)b=i<{s+pMyer&M%jvnfQA(ANZUt|F4GdoFEX4rC-M{KbO^D{(o%D)QCbo>s)CXAnlwG$1v zG;RKh+q6M%LCF^=-+R!_`1Hh)C$%n|A_Hh?Ux_qOl*A&ww!d(JcrU;Vzm zBG@?@XRm(q{u@8){e>ARy8+@`9F{%vo}5Rut}DOnXHL8pwpR&B8???!!vXa93sL(d z7}ev^F#=m1G@tfB&J5T*g`4%n#MuEhNFI+z66b5RB$+6gvwV4s=Hnc(FX2KxVAtV= zoT7Cmg#u`*xdEwPjlh3UtnETz)7V_4UsRy3cBH?kdC#u1re3e@AG~=G{(JEdP3`SM z|A4$M&soglW;|3e0KQf0ObP`+zET)O5%DcFb4{0NWL@>xLB1RP@zaEilp5=v$vc>R zJ#Os7gltH=e}(ZJCtn{ATlR}$Y6*J5Xi{ze4}hlX*{IVZpg%zqd9@kLx?0B$wa+`~ z@dT{8k1qE3ZMq>boI;T?y4pSnK!58AkB&jyP1Dx+f_&(| z@D4l!jWKpe^+%z*p;ELnVGFW!2Bo?%mfh~sy^PqGXwo~9O7a(Kk05}S%B4vCOgJ2( zS!?%%h6+l?*b!|q$1akMRcDMPsTZLO8B1irg)A#%p)|d&4pVxhE)Ffb6^8??E%{@J9`p7P#__uNTS#9TpzPzVuwC5DwQPdixgxK z$6~Dd^w&+2dJAv+m`Oz2ol=McA&%%hWCL`l@?rdE;fE27OwMDy=O^#?a$EmkbYzQ* zYh|omoW8~B2*hv;bbiiZi+cUyUYB?NFB$k7NQU1u0aJ3K00000NkvXXu0mjfj6#%2 diff --git a/{{cookiecutter.project_slug}}/frontend/static/icon.png b/{{cookiecutter.project_slug}}/frontend/static/icon.png deleted file mode 100644 index e076dd8cd57ce1bc7d62808744c1da1b70c37ee2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12699 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 => - setTimeout(() => resolve(), 500) - ), - ]) - )[0] - await commit("setUser", response.data) - await commit("main/removeNotification", loadingNotification, { - root: true, - }) - await commit( - "main/addNotification", - { - content: "User successfully updated", - color: "success", - }, - { root: true } - ) - } catch (error) { - await dispatch("main/checkApiError", error, { root: true }) - } - }, - async createUser( - { commit, dispatch, rootState }, - payload: IUserProfileCreate - ) { - try { - const loadingNotification = { content: "Saving...", showProgress: true } - await commit("main/addNotification", loadingNotification, { root: true }) - const response = ( - await Promise.all([ - api.createUser(rootState.main.token, payload), - await new Promise((resolve) => - setTimeout(() => resolve(), 500) - ), - ]) - )[0] - await commit("setUser", response.data) - await commit("main/removeNotification", loadingNotification, { - root: true, - }) - await commit( - "main/addNotification", - { - content: "User successfully created", - color: "success", - }, - { root: true } - ) - } catch (error) { - await dispatch("main/checkApiError", error, { root: true }) - } - }, -} diff --git a/{{cookiecutter.project_slug}}/frontend/store/admin/getters.ts b/{{cookiecutter.project_slug}}/frontend/store/admin/getters.ts deleted file mode 100644 index 6038d17078..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/admin/getters.ts +++ /dev/null @@ -1,9 +0,0 @@ -export default { - adminUsers: (state) => state.users, - adminOneUser: (state) => (userId: number) => { - const filteredUsers = state.users.filter((user) => user.id === userId) - if (filteredUsers.length > 0) { - return { ...filteredUsers[0] } - } - }, -} diff --git a/{{cookiecutter.project_slug}}/frontend/store/admin/mutations.ts b/{{cookiecutter.project_slug}}/frontend/store/admin/mutations.ts deleted file mode 100644 index 369aba7986..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/admin/mutations.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { IUserProfile } from "@/interfaces" - -export default { - setUsers(state, payload: IUserProfile[]) { - state.users = payload - }, - setUser(state, payload: IUserProfile) { - const users = state.users.filter( - (user: IUserProfile) => user.id !== payload.id - ) - users.push(payload) - state.users = users - }, -} diff --git a/{{cookiecutter.project_slug}}/frontend/store/admin/state.ts b/{{cookiecutter.project_slug}}/frontend/store/admin/state.ts deleted file mode 100644 index 731edf6398..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/admin/state.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { IUserProfile } from "@/interfaces" - -export interface AdminState { - users: IUserProfile[] -} - -const defaultState: AdminState = { - users: [], -} - -export default () => defaultState diff --git a/{{cookiecutter.project_slug}}/frontend/store/helpers/actions.ts b/{{cookiecutter.project_slug}}/frontend/store/helpers/actions.ts deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/{{cookiecutter.project_slug}}/frontend/store/helpers/getters.ts b/{{cookiecutter.project_slug}}/frontend/store/helpers/getters.ts deleted file mode 100644 index e0548952b7..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/helpers/getters.ts +++ /dev/null @@ -1,3 +0,0 @@ -export default { - headingTitle: (state) => state.headingTitle, -} diff --git a/{{cookiecutter.project_slug}}/frontend/store/helpers/mutations.ts b/{{cookiecutter.project_slug}}/frontend/store/helpers/mutations.ts deleted file mode 100644 index 651b6570a5..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/helpers/mutations.ts +++ /dev/null @@ -1,5 +0,0 @@ -export default { - setHeadingTitle(state, payload: string) { - state.headingTitle = payload - }, -} diff --git a/{{cookiecutter.project_slug}}/frontend/store/helpers/state.ts b/{{cookiecutter.project_slug}}/frontend/store/helpers/state.ts deleted file mode 100644 index 3053162b81..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/helpers/state.ts +++ /dev/null @@ -1,9 +0,0 @@ -export interface HelperState { - headingTitle: string | null -} - -const defaultState: HelperState = { - headingTitle: null, -} - -export default () => defaultState diff --git a/{{cookiecutter.project_slug}}/frontend/store/main/actions.ts b/{{cookiecutter.project_slug}}/frontend/store/main/actions.ts deleted file mode 100644 index 60feea1ed8..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/main/actions.ts +++ /dev/null @@ -1,174 +0,0 @@ -import { api } from "@/api" -import { getLocalToken, removeLocalToken, saveLocalToken } from "@/utils" -import { AxiosError } from "axios" -import { IUserOpenProfileCreate } from "@/interfaces" -import { AppNotification } from "./state" - -export default { - async logIn( - { commit, dispatch }, - payload: { username: string; password: string } - ) { - try { - const response = await api.logInGetToken( - payload.username, - payload.password - ) - const token = response.data.access_token - if (token) { - saveLocalToken(token) - await commit("setToken", token) - await commit("setLoggedIn", true) - await commit("setLogInError", false) - await dispatch("getUserProfile") - } else { - await dispatch("logOut") - } - } catch (error) { - commit("setLogInError", true) - await dispatch("logOut") - } - }, - async getUserProfile({ commit, dispatch, state }) { - try { - const response = await api.getMe(state.token) - if (response.data) { - await commit("setUserProfile", response.data) - } - } catch (error) { - await dispatch("checkApiError", error) - } - }, - async updateUserProfile({ commit, dispatch, state }, payload) { - try { - const loadingNotification = { content: "Saving...", showProgress: true } - await commit("addNotification", loadingNotification) - const response = ( - await Promise.all([ - api.updateMe(state.token, payload), - await new Promise((resolve) => - setTimeout(() => resolve(), 500) - ), - ]) - )[0] - await commit("setUserProfile", response.data) - await commit("removeNotification", loadingNotification) - await commit("addNotification", { - content: "Profile successfully updated", - color: "success", - }) - } catch (error) { - await dispatch("checkApiError", error) - } - }, - async createUserProfile( - { commit, dispatch }, - payload: IUserOpenProfileCreate - ) { - try { - const loadingNotification = { content: "Creating...", showProgress: true } - await commit("addNotification", loadingNotification) - await Promise.all([ - api.createMe(payload), - await new Promise((resolve) => setTimeout(() => resolve(), 500)), - ]) - await commit("removeNotification", loadingNotification) - await commit("addNotification", { - content: "Account successfully created", - color: "success", - }) - } catch (error) { - // console.log(error.response) - await dispatch("checkApiError", error) - } - }, - async checkLoggedIn({ commit, dispatch, state }) { - if (!state.isLoggedIn) { - let token = state.token - if (!token) { - const localToken = getLocalToken() - if (localToken) { - await commit("setToken", token) - token = localToken - } - } - if (token) { - try { - const response = await api.getMe(token) - await commit("setLoggedIn", true) - await commit("setUserProfile", response.data) - } catch (error) { - await dispatch("logOut") - } - } else { - await dispatch("logOut") - } - } - }, - async logOut({ commit }) { - removeLocalToken() - await commit("setToken", "") - await commit("setLoggedIn", false) - await commit("setUserProfile", null) - }, - async checkApiError({ dispatch }, payload: AxiosError) { - // console.log(payload.response) - if (payload.response!.status === 401) { - await dispatch("logOut") - } - }, - async removeNotification( - { commit }, - payload: { notification: AppNotification; timeout: number } - ) { - return await new Promise((resolve) => { - setTimeout(() => { - commit("removeNotification", payload.notification) - resolve(true) - }, payload.timeout) - }) - }, - async passwordRecovery({ commit, dispatch }, payload: { username: string }) { - try { - await Promise.all([ - api.passwordRecovery(payload.username), - await new Promise((resolve) => setTimeout(() => resolve(), 500)), - ]) - } catch (error) {} - // Refactored this ... shouldn't give user indication if their attempt was successful or not - await dispatch("logOut") - const loadingNotification = { - content: "Sending password recovery email", - showProgress: true, - } - await commit("addNotification", loadingNotification) - }, - async resetPassword( - { commit, dispatch }, - payload: { password: string; token: string } - ) { - const loadingNotification = { - content: "Resetting password", - showProgress: true, - } - try { - await commit("addNotification", loadingNotification) - await Promise.all([ - api.resetPassword(payload.password, payload.token), - await new Promise((resolve) => setTimeout(() => resolve(), 500)), - ]) - await commit("removeNotification", loadingNotification) - await commit("addNotification", { - content: "Password successfully reset", - color: "success", - }) - await dispatch("logOut") - } catch (error) { - await commit("removeNotification", loadingNotification) - await commit("addNotification", { - color: "error", - content: "Error resetting password", - }) - } - }, -} diff --git a/{{cookiecutter.project_slug}}/frontend/store/main/getters.ts b/{{cookiecutter.project_slug}}/frontend/store/main/getters.ts deleted file mode 100644 index 99839b92b1..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/main/getters.ts +++ /dev/null @@ -1,17 +0,0 @@ -export default { - hasAdminAccess: (state) => { - return ( - state.userProfile && - state.userProfile.is_superuser && - state.userProfile.is_active - ) - }, - loginError: (state) => state.logInError, - dashboardShowDrawer: (state) => state.dashboardShowDrawer, - dashboardMiniDrawer: (state) => state.dashboardMiniDrawer, - userProfile: (state) => state.userProfile, - token: (state) => state.token, - isLoggedIn: (state) => state.isLoggedIn, - firstNotification: (state) => - state.notifications.length > 0 && state.notifications[0], -} diff --git a/{{cookiecutter.project_slug}}/frontend/store/main/mutations.ts b/{{cookiecutter.project_slug}}/frontend/store/main/mutations.ts deleted file mode 100644 index c847ff92b8..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/main/mutations.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { IUserProfile } from "@/interfaces" -import { AppNotification } from "./state" - -export default { - setToken(state, payload: string) { - state.token = payload - }, - setLoggedIn(state, payload: boolean) { - state.isLoggedIn = payload - }, - setLogInError(state, payload: boolean) { - state.logInError = payload - }, - setUserProfile(state, payload: IUserProfile) { - state.userProfile = payload - }, - setDashboardMiniDrawer(state, payload: boolean) { - state.dashboardMiniDrawer = payload - }, - setDashboardShowDrawer(state, payload: boolean) { - state.dashboardShowDrawer = payload - }, - addNotification(state, payload: AppNotification) { - state.notifications.push(payload) - }, - removeNotification(state, payload: AppNotification) { - state.notifications = state.notifications.filter( - (notification) => notification !== payload - ) - }, -} diff --git a/{{cookiecutter.project_slug}}/frontend/store/main/state.ts b/{{cookiecutter.project_slug}}/frontend/store/main/state.ts deleted file mode 100644 index 939418ba06..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/store/main/state.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { IUserProfile } from "@/interfaces" - -export interface AppNotification { - content: string - color?: string - showProgress?: boolean -} - -export interface MainState { - token: string - isLoggedIn: boolean | null - logInError: boolean - userProfile: IUserProfile | null - notifications: AppNotification[] -} - -const defaultState: MainState = { - isLoggedIn: null, - token: "", - logInError: false, - userProfile: null, - notifications: [], -} - -export default () => defaultState diff --git a/{{cookiecutter.project_slug}}/frontend/stores/auth.ts b/{{cookiecutter.project_slug}}/frontend/stores/auth.ts new file mode 100644 index 0000000000..438902dd28 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/stores/auth.ts @@ -0,0 +1,192 @@ +import { + IUserProfile, + IUserProfileUpdate, + IUserOpenProfileCreate, +} from "@/interfaces" +import { apiAuth } from "@/api" +import { useTokenStore } from "./tokens" +import { useToastStore } from "./toasts" + +const toasts = useToastStore() + +export const useAuthStore = defineStore("authUser", { + state: (): IUserProfile => ({ + id: "", + email: "", + email_validated: false, + is_active: false, + is_superuser: false, + full_name: "" + }), + persist: true, + getters: { + isAdmin: (state) => { + return ( + state.id && + state.is_superuser && + state.is_active + ) + }, + profile: (state) => state, + loggedIn: (state) => state.id !== "", + authTokens: () => { + return ( useTokenStore() ) + } + }, + actions: { + async logIn(payload: { username: string; password: string }) { + try { + await this.authTokens.getTokens(payload) + await this.getUserProfile() + } catch (error) { + toasts.addNotice({ + title: "Login error", + content: "Please check your details, or internet connection, and try again.", + icon: "error" + }) + this.logOut() + } + }, + async createUserProfile(payload: IUserOpenProfileCreate) { + try { + const { data: response } = await apiAuth.createProfile(payload) + if (response.value) this.setUserProfile(response.value) + await this.authTokens.getTokens({ + username: this.email, + password: payload.password + }) + } catch (error) { + toasts.addNotice({ + title: "Login creation error", + content: "Please check your details, or internet connection, and try again.", + icon: "error" + }) + } + }, + async getUserProfile() { + if (!this.loggedIn) { + await this.authTokens.refreshTokens() + if (this.authTokens.token) { + try { + const { data: response } = await apiAuth.getProfile(this.authTokens.token) + if (response.value) this.setUserProfile(response.value) + } catch (error) { + this.logOut() + } + } + } + }, + async updateUserProfile(payload: IUserProfileUpdate) { + await this.authTokens.refreshTokens() + if (this.loggedIn && this.authTokens.token) { + try { + const { data: response } = await apiAuth.updateProfile(this.authTokens.token, payload) + if (response.value) this.setUserProfile(response.value) + } catch (error) { + toasts.addNotice({ + title: "Profile update error", + content: "Please check your submission, or internet connection, and try again.", + icon: "error" + }) + } + } + }, + // mutations are actions, instead of `state` as first argument use `this` + setUserProfile (payload: IUserProfile) { + this.id = payload.id + this.email = payload.email + this.email_validated = payload.email_validated + this.is_active = payload.is_active + this.is_superuser = payload.is_superuser + this.full_name = payload.full_name + }, + async sendEmailValidation() { + await this.authTokens.refreshTokens() + if (this.authTokens.token && !this.email_validated) { + try { + const { data: response } = await apiAuth.requestValidationEmail(this.authTokens.token) + if (response.value) { + toasts.addNotice({ + title: "Validation sent", + content: response.value.msg, + }) + } + } catch (error) { + toasts.addNotice({ + title: "Validation error", + content: "Please check your email and try again.", + icon: "error" + }) + } + } + }, + async validateEmail(validationToken: string) { + await this.authTokens.refreshTokens() + if (this.authTokens.token && !this.email_validated) { + try { + const { data: response } = await apiAuth.validateEmail( + this.authTokens.token, + validationToken + ) + if (response.value) { + this.email_validated = true + if (response.value) { + toasts.addNotice({ + title: "Success", + content: response.value.msg, + }) + } + } + } catch (error) { + toasts.addNotice({ + title: "Validation error", + content: "Invalid token. Check your email and resend validation.", + icon: "error" + }) + } + } + }, + async recoverPassword(email: string) { + if (!this.loggedIn) { + try { + const { data: response } = await apiAuth.recoverPassword(email) + toasts.addNotice({ + title: "Success", + content: response.value + ? response.value.msg + : "Password validation email sent. Check your email and respond.", + }) + } catch (error) { + toasts.addNotice({ + title: "Recovery error", + content: "Check your email and retry.", + icon: "error" + }) + } + } + }, + async resetPassword(password: string, token: string) { + if (!this.loggedIn) { + try { + const { data: response } = await apiAuth.resetPassword(password, token) + if (response.value) toasts.addNotice({ + title: "Success", + content: response.value.msg, + }) + else throw "Error" + } catch (error) { + toasts.addNotice({ + title: "Reset error", + content: "There was a problem. Please retry.", + icon: "error" + }) + } + } + }, + // reset state using `$reset` + logOut () { + this.authTokens.deleteTokens() + this.$reset() + } + } +}) \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/stores/index.ts b/{{cookiecutter.project_slug}}/frontend/stores/index.ts new file mode 100644 index 0000000000..62b7861c3e --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/stores/index.ts @@ -0,0 +1,7 @@ +import { useAuthStore } from "./auth" +import { useTokenStore } from "./tokens" +import { useToastStore } from "./toasts" + +export { + useAuthStore, useTokenStore, useToastStore +} \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/stores/toasts.ts b/{{cookiecutter.project_slug}}/frontend/stores/toasts.ts new file mode 100644 index 0000000000..71007804f0 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/stores/toasts.ts @@ -0,0 +1,36 @@ +import { INotification } from "@/interfaces" +import { generateUUID } from "@/utilities" + +export const useToastStore = defineStore("toasts", { + state: () => ({ + notifications: [] as INotification[] + }), + getters: { + first: (state) => state.notifications.length > 0 && state.notifications[0], + notices: (state) => state.notifications + }, + actions: { + addNotice (payload: INotification) { + payload.uid = generateUUID() + if (!payload.icon) payload.icon = "success" + this.notices.push(payload) + }, + removeNotice (payload: INotification) { + this.notifications = this.notices.filter( + (note) => note !== payload + ) + }, + async timeoutNotice (payload: INotification, timeout: number = 2000) { + await new Promise((resolve) => { + setTimeout(() => { + this.removeNotice(payload) + resolve(true) + }, timeout) + }) + }, + // reset state using `$reset` + deleteNotices() { + this.$reset() + } + } +}) \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/stores/tokens.ts b/{{cookiecutter.project_slug}}/frontend/stores/tokens.ts new file mode 100644 index 0000000000..26663a07d2 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/stores/tokens.ts @@ -0,0 +1,67 @@ +import { ITokenResponse } from "@/interfaces" +import { apiAuth } from "@/api" +import { tokenExpired } from "@/utilities" +import { useToastStore } from "./toasts" + +const toasts = useToastStore() + +export const useTokenStore = defineStore("tokens", { + state: (): ITokenResponse => ({ + access_token: "", + refresh_token: "", + token_type: "" + }), + persist: true, + getters: { + token: (state) => state.access_token, + refresh: (state) => state.refresh_token + }, + actions: { + async getTokens(payload: { username: string; password: string }) { + try { + const { data: response } = await apiAuth.logInGetToken( + payload.username, + payload.password + ) + if (response.value) this.setTokens(response.value as unknown as ITokenResponse) + else toasts.addNotice({ + title: "Login error", + content: "Please check your details, or internet connection, and try again.", + icon: "error" + }) + } catch (error) { + toasts.addNotice({ + title: "Login error", + content: "Please check your details, or internet connection, and try again.", + icon: "error" + }) + this.deleteTokens() + } + }, + setTokens (payload: ITokenResponse) { + this.access_token = payload.access_token + this.refresh_token = payload.refresh_token + this.token_type = payload.token_type + }, + async refreshTokens() { + let hasExpired = this.token ? tokenExpired(this.token) : true + if (hasExpired) { + hasExpired = this.refresh ? tokenExpired(this.refresh) : true + if (!hasExpired) { + try { + const { data: response } = await apiAuth.getRefreshedToken(this.refresh) + if (response.value) this.setTokens(response.value) + } catch (error) { + this.deleteTokens() + } + } else { + this.deleteTokens() + } + } + }, + // reset state using `$reset` + deleteTokens () { + this.$reset() + } + } +}) \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/tailwind.config.js b/{{cookiecutter.project_slug}}/frontend/tailwind.config.js index 9dfbd350c3..99966ede94 100644 --- a/{{cookiecutter.project_slug}}/frontend/tailwind.config.js +++ b/{{cookiecutter.project_slug}}/frontend/tailwind.config.js @@ -1,41 +1,30 @@ +/** @type {import("tailwindcss").Config} */ +const colors = require("tailwindcss/colors") + module.exports = { - purge: [ - "./components/**/*.{vue,js,ts}", + content: [ + "./components/**/*.{js,vue,ts}", "./layouts/**/*.vue", "./pages/**/*.vue", "./plugins/**/*.{js,ts}", "./nuxt.config.{js,ts}", ], - darkMode: false, // or 'media' or 'class' - // https://devdojo.com/tnylea/custom-animations-in-tailwindcss theme: { extend: { - keyframes: { - "fade-in": { - "0%": { - opacity: "0", - }, - "100%": { - opacity: "1", - }, - }, - "fade-out": { - from: { - opacity: "1", - }, - to: { - opacity: "0", - }, - }, - }, - animation: { - "fade-in": "fade-in 0.5s ease-out", - "fade-out": "fade-out 0.5s ease-out", + colors: { + teal: colors.teal, + cyan: colors.cyan, + rose: colors.rose, }, }, }, - variants: { - extend: {}, + corePlugins: { + aspectRatio: false, }, - plugins: [require("@tailwindcss/typography"), require("@tailwindcss/forms")], + plugins: [ + require("@tailwindcss/typography"), + require("@tailwindcss/forms"), + require("@tailwindcss/aspect-ratio"), + require("@tailwindcss/line-clamp"), + ], } diff --git a/{{cookiecutter.project_slug}}/frontend/test/Logo.spec.js b/{{cookiecutter.project_slug}}/frontend/test/Logo.spec.js deleted file mode 100644 index c5fbeeb73d..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/test/Logo.spec.js +++ /dev/null @@ -1,9 +0,0 @@ -import { mount } from '@vue/test-utils' -import Logo from '@/components/Logo.vue' - -describe('Logo', () => { - test('is a Vue instance', () => { - const wrapper = mount(Logo) - expect(wrapper.vm).toBeTruthy() - }) -}) diff --git a/{{cookiecutter.project_slug}}/frontend/tsconfig.json b/{{cookiecutter.project_slug}}/frontend/tsconfig.json index c859c1c2f8..a7bfa186c3 100644 --- a/{{cookiecutter.project_slug}}/frontend/tsconfig.json +++ b/{{cookiecutter.project_slug}}/frontend/tsconfig.json @@ -1,39 +1,4 @@ { - "compilerOptions": { - "noImplicitAny": false, - "target": "ES2018", - "module": "ESNext", - "moduleResolution": "Node", - "lib": [ - "ESNext", - "ESNext.AsyncIterable", - "DOM" - ], - "esModuleInterop": true, - "allowJs": true, - "sourceMap": true, - "strict": true, - "noEmit": true, - "experimentalDecorators": true, - "baseUrl": ".", - "paths": { - "~/*": [ - "./*" - ], - "@/*": [ - "./*" - ] - }, - "types": [ - "@nuxt/types", - "@nuxtjs/axios", - "@nuxt/content", - "@types/node" - ] - }, - "exclude": [ - "node_modules", - ".nuxt", - "dist" - ] + // https://v3.nuxtjs.org/concepts/typescript + "extends": "./.nuxt/tsconfig.json" } diff --git a/{{cookiecutter.project_slug}}/frontend/tslint.json b/{{cookiecutter.project_slug}}/frontend/tslint.json deleted file mode 100644 index 2b37e401c3..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/tslint.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "defaultSeverity": "warning", - "extends": [ - "tslint:recommended" - ], - "linterOptions": { - "exclude": [ - "node_modules/**" - ] - }, - "rules": { - "quotemark": [true, "single"], - "indent": [true, "spaces", 2], - "interface-name": false, - "ordered-imports": false, - "object-literal-sort-keys": false, - "no-consecutive-blank-lines": false - } -} diff --git a/{{cookiecutter.project_slug}}/frontend/utilities/generic.ts b/{{cookiecutter.project_slug}}/frontend/utilities/generic.ts new file mode 100644 index 0000000000..b6f671a9d4 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/utilities/generic.ts @@ -0,0 +1,52 @@ +import { Buffer } from "buffer" + +function generateUUID(): string { + // Reference: https://stackoverflow.com/a/2117523/709884 + // And: https://stackoverflow.com/a/61011303/295606 + return "10000000-1000-4000-8000-100000000000".replace(/[018]/g, (s) => { + const c = Number.parseInt(s, 10) + return ( + c ^ + (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4))) + ).toString(16) + }) + } + + function isValidHttpUrl(urlString: string) { + // https://stackoverflow.com/a/43467144 + let url + try { + url = new URL(urlString) + } catch (_) { + return false + } + return url.protocol === "http:" || url.protocol === "https:" + } + + function getKeyByValue(object: any, value: any) { + // https://stackoverflow.com/a/28191966/295606 + return Object.keys(object).find((key) => object[key] === value) + } + + function getTimeInSeconds(): number { + // https://stackoverflow.com/a/3830279/295606 + return Math.floor(new Date().getTime() / 1000) + } + + function tokenExpired(token: string) { + // https://stackoverflow.com/a/60758392/295606 + // https://stackoverflow.com/a/71953677/295606 + const expiry = JSON.parse( + Buffer.from(token.split(".")[1], "base64").toString() + ).exp + return getTimeInSeconds() >= expiry + } + + export { + generateUUID, + getTimeInSeconds, + tokenExpired, + getKeyByValue, + isValidHttpUrl, + } + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/utilities/index.ts b/{{cookiecutter.project_slug}}/frontend/utilities/index.ts new file mode 100644 index 0000000000..0101b6220b --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/utilities/index.ts @@ -0,0 +1,19 @@ +import { + generateUUID, + isValidHttpUrl, + getTimeInSeconds, + tokenExpired, + getKeyByValue, +} from "./generic" +import { + readableDate, +} from "./textual" + +export { + generateUUID, + isValidHttpUrl, + getTimeInSeconds, + tokenExpired, + getKeyByValue, + readableDate, +} \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/utilities/textual.ts b/{{cookiecutter.project_slug}}/frontend/utilities/textual.ts new file mode 100644 index 0000000000..dceec67da6 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/utilities/textual.ts @@ -0,0 +1,17 @@ +function readableDate(term: Date | string, showYear: boolean = true) { + // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString + // https://stackoverflow.com/a/66590756/295606 + // https://stackoverflow.com/a/67196206/295606 + const readable = term instanceof Date ? term : new Date(term) + const day = readable.toLocaleDateString("en-UK", { day: "numeric" }) + const month = readable.toLocaleDateString("en-UK", { month: "short" }) + if (showYear) { + const year = readable.toLocaleDateString("en-UK", { year: "numeric" }) + return `${day} ${month} ${year}` + } + return `${day} ${month}` +} + +export { + readableDate, +} \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/utils.ts b/{{cookiecutter.project_slug}}/frontend/utils.ts deleted file mode 100644 index 880dc0c67f..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/utils.ts +++ /dev/null @@ -1,6 +0,0 @@ -export const getLocalToken = () => localStorage.getItem("token") - -export const saveLocalToken = (token: string) => - localStorage.setItem("token", token) - -export const removeLocalToken = () => localStorage.removeItem("token") diff --git a/{{cookiecutter.project_slug}}/frontend/yarn.lock b/{{cookiecutter.project_slug}}/frontend/yarn.lock index a34e711f38..5c60cdd569 100644 --- a/{{cookiecutter.project_slug}}/frontend/yarn.lock +++ b/{{cookiecutter.project_slug}}/frontend/yarn.lock @@ -2,10408 +2,4287 @@ # yarn lockfile v1 -"@babel/code-frame@7.12.11": - version "7.12.11" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" - integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== - dependencies: - "@babel/highlight" "^7.10.4" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.8.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" - integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== - dependencies: - "@babel/highlight" "^7.12.13" - -"@babel/compat-data@^7.13.0", "@babel/compat-data@^7.13.12", "@babel/compat-data@^7.13.8": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.13.12.tgz#a8a5ccac19c200f9dd49624cac6e19d7be1236a1" - integrity sha512-3eJJ841uKxeV8dcN/2yGEUy+RfgQspPEgQat85umsE1rotuquQ2AbIub4S6j7c50a2d+4myc+zSlnXeIHrOnhQ== - -"@babel/core@^7.1.0", "@babel/core@^7.12.16", "@babel/core@^7.13.10", "@babel/core@^7.7.5": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.13.10.tgz#07de050bbd8193fcd8a3c27918c0890613a94559" - integrity sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw== - dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/generator" "^7.13.9" - "@babel/helper-compilation-targets" "^7.13.10" - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helpers" "^7.13.10" - "@babel/parser" "^7.13.10" - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.0" +"@ampproject/remapping@^2.1.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" + integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== + dependencies: + "@jridgewell/gen-mapping" "^0.1.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" + integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== + dependencies: + "@babel/highlight" "^7.18.6" + +"@babel/compat-data@^7.20.0": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.5.tgz#86f172690b093373a933223b4745deeb6049e733" + integrity sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g== + +"@babel/core@^7.19.6", "@babel/core@^7.20.2": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.5.tgz#45e2114dc6cd4ab167f81daf7820e8fa1250d113" + integrity sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ== + dependencies: + "@ampproject/remapping" "^2.1.0" + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.20.5" + "@babel/helper-compilation-targets" "^7.20.0" + "@babel/helper-module-transforms" "^7.20.2" + "@babel/helpers" "^7.20.5" + "@babel/parser" "^7.20.5" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.20.5" + "@babel/types" "^7.20.5" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" - json5 "^2.1.2" - lodash "^4.17.19" + json5 "^2.2.1" semver "^6.3.0" - source-map "^0.5.0" -"@babel/eslint-parser@^7.12.16": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.13.10.tgz#e272979914f36bb6cea144c14c32bb51632696dd" - integrity sha512-/I1HQ3jGPhIpeBFeI3wO9WwWOnBYpuR0pX0KlkdGcRQAVX9prB/FCS2HBpL7BiFbzhny1YCiBH8MTZD2jJa7Hg== +"@babel/generator@^7.20.5": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.5.tgz#cb25abee3178adf58d6814b68517c62bdbfdda95" + integrity sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA== dependencies: - eslint-scope "5.1.0" - eslint-visitor-keys "^1.3.0" - semver "^6.3.0" - -"@babel/generator@^7.13.0", "@babel/generator@^7.13.9": - version "7.13.9" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.13.9.tgz#3a7aa96f9efb8e2be42d38d80e2ceb4c64d8de39" - integrity sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw== - dependencies: - "@babel/types" "^7.13.0" + "@babel/types" "^7.20.5" + "@jridgewell/gen-mapping" "^0.3.2" jsesc "^2.5.1" - source-map "^0.5.0" - -"@babel/helper-annotate-as-pure@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz#0f58e86dfc4bb3b1fcd7db806570e177d439b6ab" - integrity sha512-7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw== - dependencies: - "@babel/types" "^7.12.13" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz#6bc20361c88b0a74d05137a65cac8d3cbf6f61fc" - integrity sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA== +"@babel/helper-annotate-as-pure@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" + integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA== dependencies: - "@babel/helper-explode-assignable-expression" "^7.12.13" - "@babel/types" "^7.12.13" + "@babel/types" "^7.18.6" -"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.13.10", "@babel/helper-compilation-targets@^7.13.8": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz#1310a1678cb8427c07a753750da4f8ce442bdd0c" - integrity sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA== +"@babel/helper-compilation-targets@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz#6bf5374d424e1b3922822f1d9bdaa43b1a139d0a" + integrity sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ== dependencies: - "@babel/compat-data" "^7.13.8" - "@babel/helper-validator-option" "^7.12.17" - browserslist "^4.14.5" + "@babel/compat-data" "^7.20.0" + "@babel/helper-validator-option" "^7.18.6" + browserslist "^4.21.3" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.13.0": - version "7.13.11" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.13.11.tgz#30d30a005bca2c953f5653fc25091a492177f4f6" - integrity sha512-ays0I7XYq9xbjCSvT+EvysLgfc3tOkwCULHjrnscGT3A9qD4sk3wXnJ3of0MAWsWGjdinFvajHU2smYuqXKMrw== - dependencies: - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-member-expression-to-functions" "^7.13.0" - "@babel/helper-optimise-call-expression" "^7.12.13" - "@babel/helper-replace-supers" "^7.13.0" - "@babel/helper-split-export-declaration" "^7.12.13" - -"@babel/helper-create-regexp-features-plugin@^7.12.13": - version "7.12.17" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.17.tgz#a2ac87e9e319269ac655b8d4415e94d38d663cb7" - integrity sha512-p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.12.13" - regexpu-core "^4.7.1" - -"@babel/helper-define-polyfill-provider@^0.1.5": - version "0.1.5" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.5.tgz#3c2f91b7971b9fc11fe779c945c014065dea340e" - integrity sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg== - dependencies: - "@babel/helper-compilation-targets" "^7.13.0" - "@babel/helper-module-imports" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/traverse" "^7.13.0" - debug "^4.1.1" - lodash.debounce "^4.0.8" - resolve "^1.14.2" - semver "^6.1.2" - -"@babel/helper-explode-assignable-expression@^7.12.13": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.13.0.tgz#17b5c59ff473d9f956f40ef570cf3a76ca12657f" - integrity sha512-qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA== - dependencies: - "@babel/types" "^7.13.0" - -"@babel/helper-function-name@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz#93ad656db3c3c2232559fd7b2c3dbdcbe0eb377a" - integrity sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA== - dependencies: - "@babel/helper-get-function-arity" "^7.12.13" - "@babel/template" "^7.12.13" - "@babel/types" "^7.12.13" - -"@babel/helper-get-function-arity@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz#bc63451d403a3b3082b97e1d8b3fe5bd4091e583" - integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg== - dependencies: - "@babel/types" "^7.12.13" - -"@babel/helper-hoist-variables@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.0.tgz#5d5882e855b5c5eda91e0cadc26c6e7a2c8593d8" - integrity sha512-0kBzvXiIKfsCA0y6cFEIJf4OdzfpRuNk4+YTeHZpGGc666SATFKTz6sRncwFnQk7/ugJ4dSrCj6iJuvW4Qwr2g== - dependencies: - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.0" - -"@babel/helper-member-expression-to-functions@^7.13.0", "@babel/helper-member-expression-to-functions@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz#dfe368f26d426a07299d8d6513821768216e6d72" - integrity sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw== - dependencies: - "@babel/types" "^7.13.12" - -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz#c6a369a6f3621cb25da014078684da9196b61977" - integrity sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA== - dependencies: - "@babel/types" "^7.13.12" - -"@babel/helper-module-transforms@^7.13.0": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz#600e58350490828d82282631a1422268e982ba96" - integrity sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ== - dependencies: - "@babel/helper-module-imports" "^7.13.12" - "@babel/helper-replace-supers" "^7.13.12" - "@babel/helper-simple-access" "^7.13.12" - "@babel/helper-split-export-declaration" "^7.12.13" - "@babel/helper-validator-identifier" "^7.12.11" - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.12" - -"@babel/helper-optimise-call-expression@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz#5c02d171b4c8615b1e7163f888c1c81c30a2aaea" - integrity sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA== - dependencies: - "@babel/types" "^7.12.13" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz#806526ce125aed03373bc416a828321e3a6a33af" - integrity sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ== - -"@babel/helper-remap-async-to-generator@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.13.0.tgz#376a760d9f7b4b2077a9dd05aa9c3927cadb2209" - integrity sha512-pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.12.13" - "@babel/helper-wrap-function" "^7.13.0" - "@babel/types" "^7.13.0" - -"@babel/helper-replace-supers@^7.12.13", "@babel/helper-replace-supers@^7.13.0", "@babel/helper-replace-supers@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz#6442f4c1ad912502481a564a7386de0c77ff3804" - integrity sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.13.12" - "@babel/helper-optimise-call-expression" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.12" - -"@babel/helper-simple-access@^7.12.13", "@babel/helper-simple-access@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz#dd6c538afb61819d205a012c31792a39c7a5eaf6" - integrity sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA== - dependencies: - "@babel/types" "^7.13.12" - -"@babel/helper-skip-transparent-expression-wrappers@^7.12.1": - version "7.12.1" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz#462dc63a7e435ade8468385c63d2b84cce4b3cbf" - integrity sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA== - dependencies: - "@babel/types" "^7.12.1" - -"@babel/helper-split-export-declaration@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz#e9430be00baf3e88b0e13e6f9d4eaf2136372b05" - integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg== - dependencies: - "@babel/types" "^7.12.13" - -"@babel/helper-validator-identifier@^7.12.11": - version "7.12.11" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed" - integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== - -"@babel/helper-validator-option@^7.12.17": - version "7.12.17" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831" - integrity sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw== - -"@babel/helper-wrap-function@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.13.0.tgz#bdb5c66fda8526ec235ab894ad53a1235c79fcc4" - integrity sha512-1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA== - dependencies: - "@babel/helper-function-name" "^7.12.13" - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.0" - -"@babel/helpers@^7.13.10": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.13.10.tgz#fd8e2ba7488533cdeac45cc158e9ebca5e3c7df8" - integrity sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ== - dependencies: - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.13.0" - "@babel/types" "^7.13.0" - -"@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.13.10.tgz#a8b2a66148f5b27d666b15d81774347a731d52d1" - integrity sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg== - dependencies: - "@babel/helper-validator-identifier" "^7.12.11" +"@babel/helper-create-class-features-plugin@^7.20.2": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.5.tgz#327154eedfb12e977baa4ecc72e5806720a85a06" + integrity sha512-3RCdA/EmEaikrhayahwToF0fpweU/8o2p8vhc1c/1kftHOdTKuC65kik/TLc+qfbS8JKw4qqJbne4ovICDhmww== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-member-expression-to-functions" "^7.18.9" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/helper-replace-supers" "^7.19.1" + "@babel/helper-split-export-declaration" "^7.18.6" + +"@babel/helper-environment-visitor@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" + integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== + +"@babel/helper-function-name@^7.19.0": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c" + integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== + dependencies: + "@babel/template" "^7.18.10" + "@babel/types" "^7.19.0" + +"@babel/helper-hoist-variables@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" + integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-member-expression-to-functions@^7.18.9": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815" + integrity sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg== + dependencies: + "@babel/types" "^7.18.9" + +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" + integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-module-transforms@^7.20.2": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz#ac53da669501edd37e658602a21ba14c08748712" + integrity sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA== + dependencies: + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-simple-access" "^7.20.2" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/helper-validator-identifier" "^7.19.1" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.20.1" + "@babel/types" "^7.20.2" + +"@babel/helper-optimise-call-expression@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe" + integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" + integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== + +"@babel/helper-replace-supers@^7.19.1": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz#e1592a9b4b368aa6bdb8784a711e0bcbf0612b78" + integrity sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw== + dependencies: + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-member-expression-to-functions" "^7.18.9" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/traverse" "^7.19.1" + "@babel/types" "^7.19.0" + +"@babel/helper-simple-access@^7.20.2": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" + integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== + dependencies: + "@babel/types" "^7.20.2" + +"@babel/helper-split-export-declaration@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" + integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== + dependencies: + "@babel/types" "^7.18.6" + +"@babel/helper-string-parser@^7.19.4": + version "7.19.4" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" + integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== + +"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": + version "7.19.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" + integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== + +"@babel/helper-validator-option@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" + integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== + +"@babel/helpers@^7.20.5": + version "7.20.6" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.6.tgz#e64778046b70e04779dfbdf924e7ebb45992c763" + integrity sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w== + dependencies: + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.20.5" + "@babel/types" "^7.20.5" + +"@babel/highlight@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" + integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== + dependencies: + "@babel/helper-validator-identifier" "^7.18.6" chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.13.0", "@babel/parser@^7.13.10", "@babel/parser@^7.7.0": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.13.12.tgz#ba320059420774394d3b0c0233ba40e4250b81d1" - integrity sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw== - -"@babel/parser@^7.13.15", "@babel/parser@^7.5.5", "@babel/parser@^7.9.6": - version "7.13.15" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.13.15.tgz#8e66775fb523599acb6a289e12929fa5ab0954d8" - integrity sha512-b9COtcAlVEQljy/9fbcMHpG+UIW9ReF+gpaxDHTlZd0c6/UU9ng8zdySAW9sRTzpvcdCHn6bUcbuYUgGzLAWVQ== - -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12.tgz#a3484d84d0b549f3fc916b99ee4783f26fabad2a" - integrity sha512-d0u3zWKcoZf379fOeJdr1a5WPDny4aOFZ6hlfKivgK0LY7ZxNfoaHL2fWwdGtHyVvra38FC+HVYkO+byfSA8AQ== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" - "@babel/plugin-proposal-optional-chaining" "^7.13.12" - -"@babel/plugin-proposal-async-generator-functions@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.13.8.tgz#87aacb574b3bc4b5603f6fe41458d72a5a2ec4b1" - integrity sha512-rPBnhj+WgoSmgq+4gQUtXx/vOcU+UYtjy1AA/aeD61Hwj410fwYyqfUcRP3lR8ucgliVJL/G7sXcNUecC75IXA== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-remap-async-to-generator" "^7.13.0" - "@babel/plugin-syntax-async-generators" "^7.8.4" - -"@babel/plugin-proposal-class-properties@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.13.0.tgz#146376000b94efd001e57a40a88a525afaab9f37" - integrity sha512-KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - -"@babel/plugin-proposal-decorators@^7.13.5": - version "7.13.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.13.5.tgz#d28071457a5ba8ee1394b23e38d5dcf32ea20ef7" - integrity sha512-i0GDfVNuoapwiheevUOuSW67mInqJ8qw7uWfpjNVeHMn143kXblEy/bmL9AdZ/0yf/4BMQeWXezK0tQIvNPqag== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-decorators" "^7.12.13" - -"@babel/plugin-proposal-dynamic-import@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.13.8.tgz#876a1f6966e1dec332e8c9451afda3bebcdf2e1d" - integrity sha512-ONWKj0H6+wIRCkZi9zSbZtE/r73uOhMVHh256ys0UzfM7I3d4n+spZNWjOnJv2gzopumP2Wxi186vI8N0Y2JyQ== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - -"@babel/plugin-proposal-export-namespace-from@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.13.tgz#393be47a4acd03fa2af6e3cde9b06e33de1b446d" - integrity sha512-INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - -"@babel/plugin-proposal-json-strings@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.13.8.tgz#bf1fb362547075afda3634ed31571c5901afef7b" - integrity sha512-w4zOPKUFPX1mgvTmL/fcEqy34hrQ1CRcGxdphBc6snDnnqJ47EZDIyop6IwXzAC8G916hsIuXB2ZMBCExC5k7Q== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-json-strings" "^7.8.3" - -"@babel/plugin-proposal-logical-assignment-operators@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.13.8.tgz#93fa78d63857c40ce3c8c3315220fd00bfbb4e1a" - integrity sha512-aul6znYB4N4HGweImqKn59Su9RS8lbUIqxtXTOcAGtNIDczoEFv+l1EhmX8rUBp3G1jMjKJm8m0jXVp63ZpS4A== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" +"@babel/parser@^7.16.4", "@babel/parser@^7.18.10", "@babel/parser@^7.20.5": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.5.tgz#7f3c7335fe417665d929f34ae5dceae4c04015e8" + integrity sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA== + +"@babel/plugin-syntax-jsx@^7.0.0": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" + integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-syntax-typescript@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz#4e9a0cfc769c85689b77a2e642d24e9f697fc8c7" + integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.19.0" + +"@babel/plugin-transform-typescript@^7.20.0": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.20.2.tgz#91515527b376fc122ba83b13d70b01af8fe98f3f" + integrity sha512-jvS+ngBfrnTUBfOQq8NfGnSbF9BrqlR6hjJ2yVxMkmO5nL/cdifNbI30EfjRlN4g5wYWNnMPyj5Sa6R1pbLeag== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.20.2" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-typescript" "^7.20.0" + +"@babel/standalone@^7.20.4": + version "7.20.6" + resolved "https://registry.yarnpkg.com/@babel/standalone/-/standalone-7.20.6.tgz#7deb7ad244176414c3cbde020aad0607afdbe2fe" + integrity sha512-u5at/CbBLETf7kx2LOY4XdhseD79Y099WZKAOMXeT8qvd9OSR515my2UNBBLY4qIht/Qi9KySeQHQwQwxJN4Sw== + +"@babel/template@^7.0.0", "@babel/template@^7.18.10": + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71" + integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA== + dependencies: + "@babel/code-frame" "^7.18.6" + "@babel/parser" "^7.18.10" + "@babel/types" "^7.18.10" + +"@babel/traverse@^7.0.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.20.1", "@babel/traverse@^7.20.5": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.5.tgz#78eb244bea8270fdda1ef9af22a5d5e5b7e57133" + integrity sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ== + dependencies: + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.20.5" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.19.0" + "@babel/helper-hoist-variables" "^7.18.6" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/parser" "^7.20.5" + "@babel/types" "^7.20.5" + debug "^4.1.0" + globals "^11.1.0" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.13.8.tgz#3730a31dafd3c10d8ccd10648ed80a2ac5472ef3" - integrity sha512-iePlDPBn//UhxExyS9KyeYU7RM9WScAG+D3Hhno0PLJebAEpDZMocbDe64eqynhNAnwz/vZoL/q/QB2T1OH39A== +"@babel/types@^7.0.0", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.5.tgz#e206ae370b5393d94dfd1d04cd687cace53efa84" + integrity sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg== dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-validator-identifier" "^7.19.1" + to-fast-properties "^2.0.0" -"@babel/plugin-proposal-numeric-separator@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.13.tgz#bd9da3188e787b5120b4f9d465a8261ce67ed1db" - integrity sha512-O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w== +"@cloudflare/kv-asset-handler@^0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.2.0.tgz#c9959bbd7a1c40bd7c674adae98aa8c8d0e5ca68" + integrity sha512-MVbXLbTcAotOPUj0pAMhVtJ+3/kFkwJqc5qNOleOZTv6QkZZABDMS21dSrSlVswEHwrpWC03e4fWytjqKvuE2A== dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" + mime "^3.0.0" -"@babel/plugin-proposal-object-rest-spread@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.13.8.tgz#5d210a4d727d6ce3b18f9de82cc99a3964eed60a" - integrity sha512-DhB2EuB1Ih7S3/IRX5AFVgZ16k3EzfRbq97CxAVI1KSYcW+lexV8VZb7G7L8zuPVSdQMRn0kiBpf/Yzu9ZKH0g== - dependencies: - "@babel/compat-data" "^7.13.8" - "@babel/helper-compilation-targets" "^7.13.8" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.13.0" +"@esbuild/android-arm@0.15.18": + version "0.15.18" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.15.18.tgz#266d40b8fdcf87962df8af05b76219bc786b4f80" + integrity sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw== -"@babel/plugin-proposal-optional-catch-binding@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.13.8.tgz#3ad6bd5901506ea996fc31bdcf3ccfa2bed71107" - integrity sha512-0wS/4DUF1CuTmGo+NiaHfHcVSeSLj5S3e6RivPTg/2k3wOv3jO35tZ6/ZWsQhQMvdgI7CwphjQa/ccarLymHVA== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" +"@esbuild/linux-loong64@0.15.18": + version "0.15.18" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.15.18.tgz#128b76ecb9be48b60cf5cfc1c63a4f00691a3239" + integrity sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ== -"@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.13.8": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.13.12.tgz#ba9feb601d422e0adea6760c2bd6bbb7bfec4866" - integrity sha512-fcEdKOkIB7Tf4IxrgEVeFC4zeJSTr78no9wTdBuZZbqF64kzllU0ybo2zrzm7gUQfxGhBgq4E39oRs8Zx/RMYQ== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" +"@headlessui/vue@^1.7.3": + version "1.7.5" + resolved "https://registry.yarnpkg.com/@headlessui/vue/-/vue-1.7.5.tgz#d089e9f126976ad9740c8c54b1fa5132614f5e7f" + integrity sha512-WjMvaOoxNUqbJO9UxdDJQmCtZZTsTUh4VbAekfhnbFsLqLrbvct27g1Q8gjEJjI4EWHiofIPCUs7mDsuKvwlHw== -"@babel/plugin-proposal-private-methods@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.13.0.tgz#04bd4c6d40f6e6bbfa2f57e2d8094bad900ef787" - integrity sha512-MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" +"@heroicons/vue@^2.0.12": + version "2.0.13" + resolved "https://registry.yarnpkg.com/@heroicons/vue/-/vue-2.0.13.tgz#974c52abf8dab70e7d2a3a93d7fdadff4a0e9ec2" + integrity sha512-vVCVF02+rNKXEmanVNnmktJlxCbOn0qVFP1gfZPn4bcBIwPX3h9AVHGCkwly+IWDEME8w5oooG0KRd2hhSe/HQ== -"@babel/plugin-proposal-unicode-property-regex@^7.12.13", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.13.tgz#bebde51339be829c17aaaaced18641deb62b39ba" - integrity sha512-XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" +"@ioredis/commands@^1.1.1": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@ioredis/commands/-/commands-1.2.0.tgz#6d61b3097470af1fdbbe622795b8921d42018e11" + integrity sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg== -"@babel/plugin-syntax-async-generators@^7.8.4": - version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" - integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== +"@jridgewell/gen-mapping@^0.1.0": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" + integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== dependencies: - "@babel/helper-plugin-utils" "^7.8.0" + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" -"@babel/plugin-syntax-bigint@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" - integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" + integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== dependencies: - "@babel/helper-plugin-utils" "^7.8.0" + "@jridgewell/set-array" "^1.0.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" -"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" - integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" +"@jridgewell/resolve-uri@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" + integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== -"@babel/plugin-syntax-decorators@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.12.13.tgz#fac829bf3c7ef4a1bc916257b403e58c6bdaf648" - integrity sha512-Rw6aIXGuqDLr6/LoBBYE57nKOzQpz/aDkKlMqEwH+Vp0MXbG6H/TfRjaY343LKxzAKAMXIHsQ8JzaZKuDZ9MwA== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" +"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== -"@babel/plugin-syntax-dynamic-import@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" - integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== +"@jridgewell/source-map@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" + integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== dependencies: - "@babel/helper-plugin-utils" "^7.8.0" + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" -"@babel/plugin-syntax-export-namespace-from@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" - integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" +"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": + version "1.4.14" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" + integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== -"@babel/plugin-syntax-import-meta@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" - integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== +"@jridgewell/trace-mapping@^0.3.9": + version "0.3.17" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" + integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== dependencies: - "@babel/helper-plugin-utils" "^7.10.4" + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" -"@babel/plugin-syntax-json-strings@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" - integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== +"@mapbox/node-pre-gyp@^1.0.5": + version "1.0.10" + resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.10.tgz#8e6735ccebbb1581e5a7e652244cadc8a844d03c" + integrity sha512-4ySo4CjzStuprMwk35H5pPbkymjv1SF3jGLj6rAHp/xT/RF7TL7bd9CTm1xDY49K2qF7jmR/g7k+SkLETP6opA== dependencies: - "@babel/helper-plugin-utils" "^7.8.0" + detect-libc "^2.0.0" + https-proxy-agent "^5.0.0" + make-dir "^3.1.0" + node-fetch "^2.6.7" + nopt "^5.0.0" + npmlog "^5.0.1" + rimraf "^3.0.2" + semver "^7.3.5" + tar "^6.1.11" -"@babel/plugin-syntax-jsx@^7.2.0": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.13.tgz#044fb81ebad6698fe62c478875575bcbb9b70f15" - integrity sha512-d4HM23Q1K7oq/SLNmG6mRt85l2csmQ0cHRaxRXjKW0YFdEXqlZ5kzFQKH5Uc3rDJECgu+yCRgPkG04Mm98R/1g== +"@netlify/functions@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@netlify/functions/-/functions-1.3.0.tgz#4305a3fb6b49caf56cd2be88d4b8534b1d5aff4f" + integrity sha512-hN/Fgpz8XIOBfsBPLYUMxVKBlCopgeqGB0popayicnmkFLnvKByTTMYgF01wcF9DBtBQdV0H2h1kPFpMl34I8w== dependencies: - "@babel/helper-plugin-utils" "^7.12.13" + is-promise "^4.0.0" -"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" - integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: - "@babel/helper-plugin-utils" "^7.10.4" + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" -"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" - integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" - integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: - "@babel/helper-plugin-utils" "^7.10.4" + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" -"@babel/plugin-syntax-object-rest-spread@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" - integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== +"@nuxt/content@^2.2.1": + version "2.2.2" + resolved "https://registry.yarnpkg.com/@nuxt/content/-/content-2.2.2.tgz#ce82174c7f423935a12d80426d50e83cb8867b01" + integrity sha512-qHkyeD0cVRjd+KJH82+V4Twn1QTJh43m9VGMjljLUvZVdFGxU/ZAe4gq0rdTbi8CtCZNvcR9vvNApYjOP1LNYA== dependencies: - "@babel/helper-plugin-utils" "^7.8.0" + "@nuxt/kit" "^3.0.0-rc.13" + consola "^2.15.3" + defu "^6.1.1" + destr "^1.2.1" + detab "^3.0.2" + html-tags "^3.2.0" + json5 "^2.2.1" + knitwork "^1.0.0" + listhen "^1.0.0" + mdast-util-to-hast "^12.2.4" + mdurl "^1.0.1" + ohash "^1.0.0" + pathe "^1.0.0" + property-information "^6.1.1" + rehype-external-links "^2.0.1" + rehype-raw "^6.1.1" + rehype-slug "^5.1.0" + rehype-sort-attribute-values "^4.0.0" + rehype-sort-attributes "^4.0.0" + remark-emoji "^3.0.2" + remark-gfm "^3.0.1" + remark-mdc "^1.1.1" + remark-parse "^10.0.1" + remark-rehype "^10.1.0" + remark-squeeze-paragraphs "^5.0.1" + scule "^1.0.0" + shiki-es "^0.1.2" + slugify "^1.6.5" + socket.io-client "^4.5.3" + ufo "^1.0.0" + unified "^10.1.2" + unist-builder "^3.0.0" + unist-util-position "^4.0.3" + unist-util-visit "^4.1.1" + unstorage "^1.0.0" + ws "^8.11.0" + +"@nuxt/devalue@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@nuxt/devalue/-/devalue-2.0.0.tgz#c7bd7e9a516514e612d5d2e511ffc399e0eac322" + integrity sha512-YBI/6o2EBz02tdEJRBK8xkt3zvOFOWlLBf7WKYGBsSYSRtjjgrqPe2skp6VLLmKx5WbHHDNcW+6oACaurxGzeA== -"@babel/plugin-syntax-optional-catch-binding@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" - integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== +"@nuxt/kit@3.0.0", "@nuxt/kit@^3.0.0", "@nuxt/kit@^3.0.0-rc.13", "@nuxt/kit@^3.0.0-rc.14": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@nuxt/kit/-/kit-3.0.0.tgz#ae49b4e27b15285556cb88f35a56309c5ca0dd79" + integrity sha512-7ZsOLt5s9a0ZleAIzmoD70JwkZf5ti6bDdxl6f8ew7Huxz+ni/oRfTPTX9TrORXsgW5CvDt6Q9M7IJNPkAN/Iw== dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-chaining@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" - integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + "@nuxt/schema" "3.0.0" + c12 "^1.0.1" + consola "^2.15.3" + defu "^6.1.1" + globby "^13.1.2" + hash-sum "^2.0.0" + ignore "^5.2.0" + jiti "^1.16.0" + knitwork "^1.0.0" + lodash.template "^4.5.0" + mlly "^1.0.0" + pathe "^1.0.0" + pkg-types "^1.0.1" + scule "^1.0.0" + semver "^7.3.8" + unctx "^2.1.0" + unimport "^1.0.1" + untyped "^1.0.0" + +"@nuxt/schema@3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@nuxt/schema/-/schema-3.0.0.tgz#d499fd7d8309f9bd3403411b32c19e726969cd71" + integrity sha512-5fwsidhs5NjFzR8sIzHMXO0WFGkI3tCH3ViANn2W4N5qCwoYZ0n1sZBkQ9Esn1VoEed6RsIlTpWrPZPVtqNkGQ== dependencies: - "@babel/helper-plugin-utils" "^7.8.0" + c12 "^1.0.1" + create-require "^1.1.1" + defu "^6.1.1" + jiti "^1.16.0" + pathe "^1.0.0" + pkg-types "^1.0.1" + postcss-import-resolver "^2.0.0" + scule "^1.0.0" + std-env "^3.3.1" + ufo "^1.0.0" + unimport "^1.0.1" + untyped "^1.0.0" -"@babel/plugin-syntax-top-level-await@^7.12.13", "@babel/plugin-syntax-top-level-await@^7.8.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz#c5f0fa6e249f5b739727f923540cf7a806130178" - integrity sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ== +"@nuxt/telemetry@^2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@nuxt/telemetry/-/telemetry-2.1.8.tgz#fb900ea2a61159ec8d81744bdfa8ed97debd9615" + integrity sha512-WCHRrcPKRosuHQi8CD5WfjiXGAyjOWVJpK77xS6wlg8zwziBPCqmVIQdr4QpFTGFO1Nrh4z26l1VnivKy22KFQ== dependencies: - "@babel/helper-plugin-utils" "^7.12.13" + "@nuxt/kit" "^3.0.0-rc.14" + chalk "^5.1.2" + ci-info "^3.6.1" + consola "^2.15.3" + create-require "^1.1.1" + defu "^6.1.1" + destr "^1.2.1" + dotenv "^16.0.3" + fs-extra "^10.1.0" + git-url-parse "^13.1.0" + inquirer "^9.1.4" + is-docker "^3.0.0" + jiti "^1.16.0" + mri "^1.2.0" + nanoid "^4.0.0" + node-fetch "^3.3.0" + ohmyfetch "^0.4.21" + parse-git-config "^3.0.0" + rc9 "^2.0.0" + std-env "^3.3.1" -"@babel/plugin-transform-arrow-functions@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.13.0.tgz#10a59bebad52d637a027afa692e8d5ceff5e3dae" - integrity sha512-96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" +"@nuxt/ui-templates@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@nuxt/ui-templates/-/ui-templates-1.0.0.tgz#8d0254645991b410285b2dff27225bb14c2329b1" + integrity sha512-jfpVHxi1AHfNO3D6iD1RJE6fx/7cAzekvG90poIzVawp/L+I4DNdy8pCgqBScJW4bfWOpHeLYbtQQlL/hPmkjw== -"@babel/plugin-transform-async-to-generator@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz#8e112bf6771b82bf1e974e5e26806c5c99aa516f" - integrity sha512-3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg== +"@nuxt/vite-builder@3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@nuxt/vite-builder/-/vite-builder-3.0.0.tgz#a12882587c815fbab1f51e70d654ab2bb3a1fa20" + integrity sha512-eMnpPpjHU8rGZcsJUksCuSX+6dpId03q8LOSStsm6rXzrNJtZIcwt0nBRTUaigckXIozX8ZNl5u2OPGUfUbMrw== + dependencies: + "@nuxt/kit" "3.0.0" + "@rollup/plugin-replace" "^5.0.1" + "@vitejs/plugin-vue" "^3.2.0" + "@vitejs/plugin-vue-jsx" "^2.1.1" + autoprefixer "^10.4.13" + chokidar "^3.5.3" + cssnano "^5.1.14" + defu "^6.1.1" + esbuild "^0.15.14" + escape-string-regexp "^5.0.0" + estree-walker "^3.0.1" + externality "^1.0.0" + fs-extra "^10.1.0" + get-port-please "^2.6.1" + h3 "^1.0.1" + knitwork "^1.0.0" + magic-string "^0.26.7" + mlly "^1.0.0" + ohash "^1.0.0" + pathe "^1.0.0" + perfect-debounce "^0.1.3" + pkg-types "^1.0.1" + postcss "^8.4.19" + postcss-import "^15.0.0" + postcss-url "^10.1.3" + rollup "^2.79.1" + rollup-plugin-visualizer "^5.8.3" + ufo "^1.0.0" + unplugin "^1.0.0" + vite "~3.2.4" + vite-node "^0.25.2" + vite-plugin-checker "^0.5.1" + vue-bundle-renderer "^1.0.0" + +"@pinia-plugin-persistedstate/nuxt@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@pinia-plugin-persistedstate/nuxt/-/nuxt-1.0.0.tgz#057fd3b0649e9c4ce90f60e3fc136eeef50c0777" + integrity sha512-oBLnkFXy0mcP9wCR0NQj1SguhgalEoubDF302gpRr1lh0V34vSL2Nlw8XDwRrULq5v3eHt4da632YSjNny1+BA== dependencies: - "@babel/helper-module-imports" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-remap-async-to-generator" "^7.13.0" + "@nuxt/kit" "^3.0.0" + pinia-plugin-persistedstate ">=3.0.0" -"@babel/plugin-transform-block-scoped-functions@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz#a9bf1836f2a39b4eb6cf09967739de29ea4bf4c4" - integrity sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg== +"@pinia/nuxt@^0.4.3": + version "0.4.6" + resolved "https://registry.yarnpkg.com/@pinia/nuxt/-/nuxt-0.4.6.tgz#ce83714f700594187d8a29e8f4bdaf31abe0bef1" + integrity sha512-HjrYEfLdFpmsjhicPJgL36jVhzHWukIQPFFHGTSF84Cplu+f2nY2XHKqe9ToHzE9rLee2RjLOwAzOnXa/I/u6A== dependencies: - "@babel/helper-plugin-utils" "^7.12.13" + "@nuxt/kit" "^3.0.0" + pinia ">=2.0.27" -"@babel/plugin-transform-block-scoping@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.13.tgz#f36e55076d06f41dfd78557ea039c1b581642e61" - integrity sha512-Pxwe0iqWJX4fOOM2kEZeUuAxHMWb9nK+9oh5d11bsLoB0xMg+mkDpt0eYuDZB7ETrY9bbcVlKUGTOGWy7BHsMQ== +"@rollup/plugin-alias@^4.0.2": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@rollup/plugin-alias/-/plugin-alias-4.0.2.tgz#fec6c6aff8dd6fce580ae6bc5345084cd702bb62" + integrity sha512-1hv7dBOZZwo3SEupxn4UA2N0EDThqSSS+wI1St1TNTBtOZvUchyIClyHcnDcjjrReTPZ47Faedrhblv4n+T5UQ== dependencies: - "@babel/helper-plugin-utils" "^7.12.13" + slash "^4.0.0" -"@babel/plugin-transform-classes@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.13.0.tgz#0265155075c42918bf4d3a4053134176ad9b533b" - integrity sha512-9BtHCPUARyVH1oXGcSJD3YpsqRLROJx5ZNP6tN5vnk17N0SVf9WCtf8Nuh1CFmgByKKAIMstitKduoCmsaDK5g== +"@rollup/plugin-commonjs@^23.0.2": + version "23.0.4" + resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-23.0.4.tgz#854e9b1a83f0a715ded70a2ae411bebc11141de2" + integrity sha512-bOPJeTZg56D2MCm+TT4psP8e8Jmf1Jsi7pFUMl8BN5kOADNzofNHe47+84WVCt7D095xPghC235/YKuNDEhczg== dependencies: - "@babel/helper-annotate-as-pure" "^7.12.13" - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-optimise-call-expression" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-replace-supers" "^7.13.0" - "@babel/helper-split-export-declaration" "^7.12.13" - globals "^11.1.0" + "@rollup/pluginutils" "^5.0.1" + commondir "^1.0.1" + estree-walker "^2.0.2" + glob "^8.0.3" + is-reference "1.2.1" + magic-string "^0.26.4" -"@babel/plugin-transform-computed-properties@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.13.0.tgz#845c6e8b9bb55376b1fa0b92ef0bdc8ea06644ed" - integrity sha512-RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg== +"@rollup/plugin-inject@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@rollup/plugin-inject/-/plugin-inject-5.0.2.tgz#b26c0e6e73f39c118ffc1cf07cfbfd93459b93a6" + integrity sha512-zRthPC/sZ2OaQwPh2LvFn0A+3SyMAZR1Vqsp89mWkIuGXKswT8ty1JWj1pf7xdZvft4gHZaCuhdopuiCwjclWg== dependencies: - "@babel/helper-plugin-utils" "^7.13.0" + "@rollup/pluginutils" "^5.0.1" + estree-walker "^2.0.2" + magic-string "^0.26.4" -"@babel/plugin-transform-destructuring@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.13.0.tgz#c5dce270014d4e1ebb1d806116694c12b7028963" - integrity sha512-zym5em7tePoNT9s964c0/KU3JPPnuq7VhIxPRefJ4/s82cD+q1mgKfuGRDMCPL0HTyKz4dISuQlCusfgCJ86HA== +"@rollup/plugin-json@^5.0.1": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@rollup/plugin-json/-/plugin-json-5.0.2.tgz#d7dbbac62ff74064876b3e5d0d863cb3ad1e7cdb" + integrity sha512-D1CoOT2wPvadWLhVcmpkDnesTzjhNIQRWLsc3fA49IFOP2Y84cFOOJ+nKGYedvXHKUsPeq07HR4hXpBBr+CHlA== dependencies: - "@babel/helper-plugin-utils" "^7.13.0" + "@rollup/pluginutils" "^5.0.1" -"@babel/plugin-transform-dotall-regex@^7.12.13", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz#3f1601cc29905bfcb67f53910f197aeafebb25ad" - integrity sha512-foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ== +"@rollup/plugin-node-resolve@^15.0.1": + version "15.0.1" + resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.0.1.tgz#72be449b8e06f6367168d5b3cd5e2802e0248971" + integrity sha512-ReY88T7JhJjeRVbfCyNj+NXAG3IIsVMsX9b5/9jC98dRP8/yxlZdz7mHZbHk5zHr24wZZICS5AcXsFZAXYUQEg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" + "@rollup/pluginutils" "^5.0.1" + "@types/resolve" "1.20.2" + deepmerge "^4.2.2" + is-builtin-module "^3.2.0" + is-module "^1.0.0" + resolve "^1.22.1" -"@babel/plugin-transform-duplicate-keys@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.13.tgz#6f06b87a8b803fd928e54b81c258f0a0033904de" - integrity sha512-NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ== +"@rollup/plugin-replace@^5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@rollup/plugin-replace/-/plugin-replace-5.0.1.tgz#49a57af3e6df111a9e75dea3f3572741f4c5c83e" + integrity sha512-Z3MfsJ4CK17BfGrZgvrcp/l6WXoKb0kokULO+zt/7bmcyayokDaQ2K3eDJcRLCTAlp5FPI4/gz9MHAsosz4Rag== dependencies: - "@babel/helper-plugin-utils" "^7.12.13" + "@rollup/pluginutils" "^5.0.1" + magic-string "^0.26.4" -"@babel/plugin-transform-exponentiation-operator@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz#4d52390b9a273e651e4aba6aee49ef40e80cd0a1" - integrity sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" +"@rollup/plugin-wasm@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@rollup/plugin-wasm/-/plugin-wasm-6.0.1.tgz#3dc69aac67b6e8e44c17d0a6d8d86d5699031c3a" + integrity sha512-a5yRknFQG/QGhb1xGkazWXgjpsv0hhWlx34irsf5adMEo55NdpzhZLg+jx49u+bzH6ekktuFg2WKA1RAF+WEDQ== -"@babel/plugin-transform-for-of@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.13.0.tgz#c799f881a8091ac26b54867a845c3e97d2696062" - integrity sha512-IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg== +"@rollup/pluginutils@^4.0.0": + version "4.2.1" + resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-4.2.1.tgz#e6c6c3aba0744edce3fb2074922d3776c0af2a6d" + integrity sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ== dependencies: - "@babel/helper-plugin-utils" "^7.13.0" + estree-walker "^2.0.1" + picomatch "^2.2.2" -"@babel/plugin-transform-function-name@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.13.tgz#bb024452f9aaed861d374c8e7a24252ce3a50051" - integrity sha512-6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ== +"@rollup/pluginutils@^5.0.1", "@rollup/pluginutils@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.0.2.tgz#012b8f53c71e4f6f9cb317e311df1404f56e7a33" + integrity sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA== dependencies: - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" + "@types/estree" "^1.0.0" + estree-walker "^2.0.2" + picomatch "^2.3.1" -"@babel/plugin-transform-literals@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz#2ca45bafe4a820197cf315794a4d26560fe4bdb9" - integrity sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" +"@socket.io/component-emitter@~3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz#96116f2a912e0c02817345b3c10751069920d553" + integrity sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg== -"@babel/plugin-transform-member-expression-literals@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.13.tgz#5ffa66cd59b9e191314c9f1f803b938e8c081e40" - integrity sha512-kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" +"@tailwindcss/aspect-ratio@^0.4.2": + version "0.4.2" + resolved "https://registry.yarnpkg.com/@tailwindcss/aspect-ratio/-/aspect-ratio-0.4.2.tgz#9ffd52fee8e3c8b20623ff0dcb29e5c21fb0a9ba" + integrity sha512-8QPrypskfBa7QIMuKHg2TA7BqES6vhBrDLOv8Unb6FcFyd3TjKbc6lcmb9UPQHxfl24sXoJ41ux/H7qQQvfaSQ== -"@babel/plugin-transform-modules-amd@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.13.0.tgz#19f511d60e3d8753cc5a6d4e775d3a5184866cc3" - integrity sha512-EKy/E2NHhY/6Vw5d1k3rgoobftcNUmp9fGjb9XZwQLtTctsRBOTRO7RHHxfIky1ogMN5BxN7p9uMA3SzPfotMQ== +"@tailwindcss/forms@^0.5.3": + version "0.5.3" + resolved "https://registry.yarnpkg.com/@tailwindcss/forms/-/forms-0.5.3.tgz#e4d7989686cbcaf416c53f1523df5225332a86e7" + integrity sha512-y5mb86JUoiUgBjY/o6FJSFZSEttfb3Q5gllE4xoKjAAD+vBrnIhE4dViwUuow3va8mpH4s9jyUbUbrRGoRdc2Q== dependencies: - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - babel-plugin-dynamic-import-node "^2.3.3" + mini-svg-data-uri "^1.2.3" -"@babel/plugin-transform-modules-commonjs@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.13.8.tgz#7b01ad7c2dcf2275b06fa1781e00d13d420b3e1b" - integrity sha512-9QiOx4MEGglfYZ4XOnU79OHr6vIWUakIj9b4mioN8eQIoEh+pf5p/zEB36JpDFWA12nNMiRf7bfoRvl9Rn79Bw== - dependencies: - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-simple-access" "^7.12.13" - babel-plugin-dynamic-import-node "^2.3.3" +"@tailwindcss/line-clamp@^0.4.2": + version "0.4.2" + resolved "https://registry.yarnpkg.com/@tailwindcss/line-clamp/-/line-clamp-0.4.2.tgz#f353c5a8ab2c939c6267ac5b907f012e5ee130f9" + integrity sha512-HFzAQuqYCjyy/SX9sLGB1lroPzmcnWv1FHkIpmypte10hptf4oPUfucryMKovZh2u0uiS9U5Ty3GghWfEJGwVw== -"@babel/plugin-transform-modules-systemjs@^7.13.8": - version "7.13.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.13.8.tgz#6d066ee2bff3c7b3d60bf28dec169ad993831ae3" - integrity sha512-hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A== +"@tailwindcss/typography@^0.5.7": + version "0.5.8" + resolved "https://registry.yarnpkg.com/@tailwindcss/typography/-/typography-0.5.8.tgz#8fb31db5ab0590be6dfa062b1535ac86ad9d12bf" + integrity sha512-xGQEp8KXN8Sd8m6R4xYmwxghmswrd0cPnNI2Lc6fmrC3OojysTBJJGSIVwPV56q4t6THFUK3HJ0EaWwpglSxWw== dependencies: - "@babel/helper-hoist-variables" "^7.13.0" - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-validator-identifier" "^7.12.11" - babel-plugin-dynamic-import-node "^2.3.3" + lodash.castarray "^4.4.0" + lodash.isplainobject "^4.0.6" + lodash.merge "^4.6.2" + postcss-selector-parser "6.0.10" -"@babel/plugin-transform-modules-umd@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.13.0.tgz#8a3d96a97d199705b9fd021580082af81c06e70b" - integrity sha512-D/ILzAh6uyvkWjKKyFE/W0FzWwasv6vPTSqPcjxFqn6QpX3u8DjRVliq4F2BamO2Wee/om06Vyy+vPkNrd4wxw== - dependencies: - "@babel/helper-module-transforms" "^7.13.0" - "@babel/helper-plugin-utils" "^7.13.0" +"@trysound/sax@0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" + integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== -"@babel/plugin-transform-named-capturing-groups-regex@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.13.tgz#2213725a5f5bbbe364b50c3ba5998c9599c5c9d9" - integrity sha512-Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA== +"@types/debug@^4.0.0": + version "4.1.7" + resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz#7cc0ea761509124709b8b2d1090d8f6c17aadb82" + integrity sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.12.13" + "@types/ms" "*" -"@babel/plugin-transform-new-target@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.13.tgz#e22d8c3af24b150dd528cbd6e685e799bf1c351c" - integrity sha512-/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" +"@types/estree@*", "@types/estree@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz#5fb2e536c1ae9bf35366eed879e827fa59ca41c2" + integrity sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ== -"@babel/plugin-transform-object-super@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz#b4416a2d63b8f7be314f3d349bd55a9c1b5171f7" - integrity sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ== +"@types/hast@^2.0.0": + version "2.3.4" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.4.tgz#8aa5ef92c117d20d974a82bdfb6a648b08c0bafc" + integrity sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g== dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - "@babel/helper-replace-supers" "^7.12.13" + "@types/unist" "*" -"@babel/plugin-transform-parameters@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.13.0.tgz#8fa7603e3097f9c0b7ca1a4821bc2fb52e9e5007" - integrity sha512-Jt8k/h/mIwE2JFEOb3lURoY5C85ETcYPnbuAJ96zRBzh1XHtQZfs62ChZ6EP22QlC8c7Xqr9q+e1SU5qttwwjw== +"@types/mdast@^3.0.0": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.10.tgz#4724244a82a4598884cbbe9bcfd73dff927ee8af" + integrity sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA== dependencies: - "@babel/helper-plugin-utils" "^7.13.0" + "@types/unist" "*" -"@babel/plugin-transform-property-literals@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz#4e6a9e37864d8f1b3bc0e2dce7bf8857db8b1a81" - integrity sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" +"@types/ms@*": + version "0.7.31" + resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.31.tgz#31b7ca6407128a3d2bbc27fe2d21b345397f6197" + integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA== -"@babel/plugin-transform-regenerator@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.13.tgz#b628bcc9c85260ac1aeb05b45bde25210194a2f5" - integrity sha512-lxb2ZAvSLyJ2PEe47hoGWPmW22v7CtSl9jW8mingV4H2sEX/JOcrAj2nPuGWi56ERUm2bUpjKzONAuT6HCn2EA== - dependencies: - regenerator-transform "^0.14.2" +"@types/node@*": + version "18.11.12" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.12.tgz#89e7f8aa8c88abf432f9bd594888144d7dba10aa" + integrity sha512-FgD3NtTAKvyMmD44T07zz2fEf+OKwutgBCEVM8GcvMGVGaDktiLNTDvPwC/LUe3PinMW+X6CuLOF2Ui1mAlSXg== -"@babel/plugin-transform-reserved-words@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.13.tgz#7d9988d4f06e0fe697ea1d9803188aa18b472695" - integrity sha512-xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" +"@types/parse5@^6.0.0": + version "6.0.3" + resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-6.0.3.tgz#705bb349e789efa06f43f128cef51240753424cb" + integrity sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g== -"@babel/plugin-transform-runtime@^7.13.10": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.13.10.tgz#a1e40d22e2bf570c591c9c7e5ab42d6bf1e419e1" - integrity sha512-Y5k8ipgfvz5d/76tx7JYbKQTcgFSU6VgJ3kKQv4zGTKr+a9T/KBvfRvGtSFgKDQGt/DBykQixV0vNWKIdzWErA== - dependencies: - "@babel/helper-module-imports" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - babel-plugin-polyfill-corejs2 "^0.1.4" - babel-plugin-polyfill-corejs3 "^0.1.3" - babel-plugin-polyfill-regenerator "^0.1.2" - semver "^6.3.0" +"@types/resolve@1.20.2": + version "1.20.2" + resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.20.2.tgz#97d26e00cd4a0423b4af620abecf3e6f442b7975" + integrity sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q== -"@babel/plugin-transform-shorthand-properties@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz#db755732b70c539d504c6390d9ce90fe64aff7ad" - integrity sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-spread@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.13.0.tgz#84887710e273c1815ace7ae459f6f42a5d31d5fd" - integrity sha512-V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" - -"@babel/plugin-transform-sticky-regex@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz#760ffd936face73f860ae646fb86ee82f3d06d1f" - integrity sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-template-literals@^7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.13.0.tgz#a36049127977ad94438dee7443598d1cefdf409d" - integrity sha512-d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw== - dependencies: - "@babel/helper-plugin-utils" "^7.13.0" - -"@babel/plugin-transform-typeof-symbol@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz#785dd67a1f2ea579d9c2be722de8c84cb85f5a7f" - integrity sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-unicode-escapes@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.13.tgz#840ced3b816d3b5127dd1d12dcedc5dead1a5e74" - integrity sha512-0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-transform-unicode-regex@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz#b52521685804e155b1202e83fc188d34bb70f5ac" - integrity sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.12.13" - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/preset-env@^7.13.10": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.13.12.tgz#6dff470478290582ac282fb77780eadf32480237" - integrity sha512-JzElc6jk3Ko6zuZgBtjOd01pf9yYDEIH8BcqVuYIuOkzOwDesoa/Nz4gIo4lBG6K861KTV9TvIgmFuT6ytOaAA== - dependencies: - "@babel/compat-data" "^7.13.12" - "@babel/helper-compilation-targets" "^7.13.10" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/helper-validator-option" "^7.12.17" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.13.12" - "@babel/plugin-proposal-async-generator-functions" "^7.13.8" - "@babel/plugin-proposal-class-properties" "^7.13.0" - "@babel/plugin-proposal-dynamic-import" "^7.13.8" - "@babel/plugin-proposal-export-namespace-from" "^7.12.13" - "@babel/plugin-proposal-json-strings" "^7.13.8" - "@babel/plugin-proposal-logical-assignment-operators" "^7.13.8" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8" - "@babel/plugin-proposal-numeric-separator" "^7.12.13" - "@babel/plugin-proposal-object-rest-spread" "^7.13.8" - "@babel/plugin-proposal-optional-catch-binding" "^7.13.8" - "@babel/plugin-proposal-optional-chaining" "^7.13.12" - "@babel/plugin-proposal-private-methods" "^7.13.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.12.13" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-class-properties" "^7.12.13" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-top-level-await" "^7.12.13" - "@babel/plugin-transform-arrow-functions" "^7.13.0" - "@babel/plugin-transform-async-to-generator" "^7.13.0" - "@babel/plugin-transform-block-scoped-functions" "^7.12.13" - "@babel/plugin-transform-block-scoping" "^7.12.13" - "@babel/plugin-transform-classes" "^7.13.0" - "@babel/plugin-transform-computed-properties" "^7.13.0" - "@babel/plugin-transform-destructuring" "^7.13.0" - "@babel/plugin-transform-dotall-regex" "^7.12.13" - "@babel/plugin-transform-duplicate-keys" "^7.12.13" - "@babel/plugin-transform-exponentiation-operator" "^7.12.13" - "@babel/plugin-transform-for-of" "^7.13.0" - "@babel/plugin-transform-function-name" "^7.12.13" - "@babel/plugin-transform-literals" "^7.12.13" - "@babel/plugin-transform-member-expression-literals" "^7.12.13" - "@babel/plugin-transform-modules-amd" "^7.13.0" - "@babel/plugin-transform-modules-commonjs" "^7.13.8" - "@babel/plugin-transform-modules-systemjs" "^7.13.8" - "@babel/plugin-transform-modules-umd" "^7.13.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.12.13" - "@babel/plugin-transform-new-target" "^7.12.13" - "@babel/plugin-transform-object-super" "^7.12.13" - "@babel/plugin-transform-parameters" "^7.13.0" - "@babel/plugin-transform-property-literals" "^7.12.13" - "@babel/plugin-transform-regenerator" "^7.12.13" - "@babel/plugin-transform-reserved-words" "^7.12.13" - "@babel/plugin-transform-shorthand-properties" "^7.12.13" - "@babel/plugin-transform-spread" "^7.13.0" - "@babel/plugin-transform-sticky-regex" "^7.12.13" - "@babel/plugin-transform-template-literals" "^7.13.0" - "@babel/plugin-transform-typeof-symbol" "^7.12.13" - "@babel/plugin-transform-unicode-escapes" "^7.12.13" - "@babel/plugin-transform-unicode-regex" "^7.12.13" - "@babel/preset-modules" "^0.1.4" - "@babel/types" "^7.13.12" - babel-plugin-polyfill-corejs2 "^0.1.4" - babel-plugin-polyfill-corejs3 "^0.1.3" - babel-plugin-polyfill-regenerator "^0.1.2" - core-js-compat "^3.9.0" - semver "^6.3.0" +"@types/unist@*", "@types/unist@^2.0.0": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.6.tgz#250a7b16c3b91f672a24552ec64678eeb1d3a08d" + integrity sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ== + +"@unhead/dom@1.0.13", "@unhead/dom@^1.0.9": + version "1.0.13" + resolved "https://registry.yarnpkg.com/@unhead/dom/-/dom-1.0.13.tgz#76aab52c913346e248916cbf9a8c64dfd11f0c5d" + integrity sha512-ErfhK3Nwk3kpxnPEOrkruKAdS3/TrNlKs0nYtKgFJ1ywJYg+uNwRFDe82v4JdUMhnfmbgL/qcO3PTx3Dv09IEQ== + dependencies: + "@unhead/schema" "1.0.13" + +"@unhead/schema@1.0.13", "@unhead/schema@^1.0.9": + version "1.0.13" + resolved "https://registry.yarnpkg.com/@unhead/schema/-/schema-1.0.13.tgz#f98ed4f7801091611be6d8b49a86b8a576621a82" + integrity sha512-K8SiAEkM8G7GaF1QvsKlthLmRqGB8R9SvZXMCucZqb2VQ6bU4IFSs/4q6dKxmV0fXb5AHdKUL9+rX/4rQ6FsZg== + dependencies: + "@zhead/schema" "^1.0.7" + hookable "^5.4.2" + +"@unhead/ssr@^1.0.0", "@unhead/ssr@^1.0.9": + version "1.0.13" + resolved "https://registry.yarnpkg.com/@unhead/ssr/-/ssr-1.0.13.tgz#d4b14bc3d227170d15dd0e3571313873df3bfc05" + integrity sha512-pach3THVx8LU54M6aQ4qZeQdcLjXVnPlpHe7pQjHGvD6iBJC5bZc8TL+CHdTRxeiq2DqMA5uyfoor7VJJTi5AQ== + dependencies: + "@unhead/schema" "1.0.13" + +"@unhead/vue@^1.0.9": + version "1.0.13" + resolved "https://registry.yarnpkg.com/@unhead/vue/-/vue-1.0.13.tgz#1d2df3867147794183086db3f1598c411a7637e3" + integrity sha512-sGl640UQqN8HUYTKXOh6gErk/vw8byPdx1+ECqX4ec7UZYktsWgfyIReYBu09Qm3O6pIYfX8HlZbDipX+wQAOQ== + dependencies: + "@unhead/schema" "1.0.13" + hookable "^5.4.2" + +"@vee-validate/i18n@^4.7.3": + version "4.7.3" + resolved "https://registry.yarnpkg.com/@vee-validate/i18n/-/i18n-4.7.3.tgz#7b3a187ed83712fc48ce0f7b61f6cf4e0f38aa9e" + integrity sha512-Zgddr5azPiLrLFISJBmEL9l4PJoFAzfootWii5wxoVbTt3NnwcA/DobK8fLtfOeUtvh6aNwQgAAt548fe4MpKg== + +"@vee-validate/rules@^4.7.3": + version "4.7.3" + resolved "https://registry.yarnpkg.com/@vee-validate/rules/-/rules-4.7.3.tgz#890ca1d3d7c30891914e20eac70c6c253dfec100" + integrity sha512-lC/nYA1U7XiE/ncikyzKOqsTAa1OJGza1757zahqoPD0s/66vIR3uBBDeBUNeCOrBoq9Ga20wOVEuiBIGvOZww== + +"@vercel/nft@^0.22.1": + version "0.22.5" + resolved "https://registry.yarnpkg.com/@vercel/nft/-/nft-0.22.5.tgz#951bd7589ceebdd3e280afcf3a13bdacf83f6b7e" + integrity sha512-mug57Wd1BL7GMj9gXMgMeKUjdqO0e4u+0QLPYMFE1rwdJ+55oPy6lp3nIBCS8gOvigT62UI4QKUL2sGqcoW4Hw== + dependencies: + "@mapbox/node-pre-gyp" "^1.0.5" + "@rollup/pluginutils" "^4.0.0" + acorn "^8.6.0" + async-sema "^3.1.1" + bindings "^1.4.0" + estree-walker "2.0.2" + glob "^7.1.3" + graceful-fs "^4.2.9" + micromatch "^4.0.2" + node-gyp-build "^4.2.2" + resolve-from "^5.0.0" -"@babel/preset-modules@^0.1.4": - version "0.1.4" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.4.tgz#362f2b68c662842970fdb5e254ffc8fc1c2e415e" - integrity sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg== +"@vitejs/plugin-vue-jsx@^2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-2.1.1.tgz#7c13aa4e54f5ee8c9f37937b3d8c706c14369478" + integrity sha512-JgDhxstQlwnHBvZ1BSnU5mbmyQ14/t5JhREc6YH5kWyu2QdAAOsLF6xgHoIWarj8tddaiwFrNzLbWJPudpXKYA== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" - "@babel/plugin-transform-dotall-regex" "^7.4.4" - "@babel/types" "^7.4.4" - esutils "^2.0.2" + "@babel/core" "^7.19.6" + "@babel/plugin-transform-typescript" "^7.20.0" + "@vue/babel-plugin-jsx" "^1.1.1" -"@babel/runtime@^7.13.10", "@babel/runtime@^7.8.4": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.13.10.tgz#47d42a57b6095f4468da440388fdbad8bebf0d7d" - integrity sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw== - dependencies: - regenerator-runtime "^0.13.4" +"@vitejs/plugin-vue@^3.2.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-3.2.0.tgz#a1484089dd85d6528f435743f84cdd0d215bbb54" + integrity sha512-E0tnaL4fr+qkdCNxJ+Xd0yM31UwMkQje76fsDVBBUCoGOUPexu2VDUYHL8P4CwV+zMvWw6nlRw19OnRKmYAJpw== -"@babel/template@^7.12.13", "@babel/template@^7.3.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz#530265be8a2589dbb37523844c5bcb55947fb327" - integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== - dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/parser" "^7.12.13" - "@babel/types" "^7.12.13" +"@vue/babel-helper-vue-transform-on@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.0.2.tgz#9b9c691cd06fc855221a2475c3cc831d774bc7dc" + integrity sha512-hz4R8tS5jMn8lDq6iD+yWL6XNB699pGIVLk7WSJnn1dbpjaazsjZQkieJoRX6gW5zpYSCFqQ7jUquPNY65tQYA== -"@babel/traverse@^7.1.0", "@babel/traverse@^7.13.0", "@babel/traverse@^7.7.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.13.0.tgz#6d95752475f86ee7ded06536de309a65fc8966cc" - integrity sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ== +"@vue/babel-plugin-jsx@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.1.1.tgz#0c5bac27880d23f89894cd036a37b55ef61ddfc1" + integrity sha512-j2uVfZjnB5+zkcbc/zsOc0fSNGCMMjaEXP52wdwdIfn0qjFfEYpYZBFKFg+HHnQeJCVrjOeO0YxgaL7DMrym9w== dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/generator" "^7.13.0" - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-split-export-declaration" "^7.12.13" - "@babel/parser" "^7.13.0" - "@babel/types" "^7.13.0" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.19" + "@babel/helper-module-imports" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.0.0" + "@babel/template" "^7.0.0" + "@babel/traverse" "^7.0.0" + "@babel/types" "^7.0.0" + "@vue/babel-helper-vue-transform-on" "^1.0.2" + camelcase "^6.0.0" + html-tags "^3.1.0" + svg-tags "^1.0.0" -"@babel/traverse@^7.5.5": - version "7.13.15" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.13.15.tgz#c38bf7679334ddd4028e8e1f7b3aa5019f0dada7" - integrity sha512-/mpZMNvj6bce59Qzl09fHEs8Bt8NnpEDQYleHUPZQ3wXUMvXi+HJPLars68oAbmp839fGoOkv2pSL2z9ajCIaQ== +"@vue/compiler-core@3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz#d9311207d96f6ebd5f4660be129fb99f01ddb41b" + integrity sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A== dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/generator" "^7.13.9" - "@babel/helper-function-name" "^7.12.13" - "@babel/helper-split-export-declaration" "^7.12.13" - "@babel/parser" "^7.13.15" - "@babel/types" "^7.13.14" - debug "^4.1.0" - globals "^11.1.0" + "@babel/parser" "^7.16.4" + "@vue/shared" "3.2.45" + estree-walker "^2.0.2" + source-map "^0.6.1" -"@babel/types@^7.0.0", "@babel/types@^7.12.1", "@babel/types@^7.12.13", "@babel/types@^7.13.0", "@babel/types@^7.13.12", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.7.0": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.13.12.tgz#edbf99208ef48852acdff1c8a681a1e4ade580cd" - integrity sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA== - dependencies: - "@babel/helper-validator-identifier" "^7.12.11" - lodash "^4.17.19" - to-fast-properties "^2.0.0" +"@vue/compiler-dom@3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz#c43cc15e50da62ecc16a42f2622d25dc5fd97dce" + integrity sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw== + dependencies: + "@vue/compiler-core" "3.2.45" + "@vue/shared" "3.2.45" + +"@vue/compiler-sfc@3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz#7f7989cc04ec9e7c55acd406827a2c4e96872c70" + integrity sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q== + dependencies: + "@babel/parser" "^7.16.4" + "@vue/compiler-core" "3.2.45" + "@vue/compiler-dom" "3.2.45" + "@vue/compiler-ssr" "3.2.45" + "@vue/reactivity-transform" "3.2.45" + "@vue/shared" "3.2.45" + estree-walker "^2.0.2" + magic-string "^0.25.7" + postcss "^8.1.10" + source-map "^0.6.1" -"@babel/types@^7.13.14": - version "7.13.14" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.13.14.tgz#c35a4abb15c7cd45a2746d78ab328e362cbace0d" - integrity sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ== - dependencies: - "@babel/helper-validator-identifier" "^7.12.11" - lodash "^4.17.19" - to-fast-properties "^2.0.0" +"@vue/compiler-ssr@3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz#bd20604b6e64ea15344d5b6278c4141191c983b2" + integrity sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ== + dependencies: + "@vue/compiler-dom" "3.2.45" + "@vue/shared" "3.2.45" + +"@vue/devtools-api@^6.1.4", "@vue/devtools-api@^6.4.5": + version "6.4.5" + resolved "https://registry.yarnpkg.com/@vue/devtools-api/-/devtools-api-6.4.5.tgz#d54e844c1adbb1e677c81c665ecef1a2b4bb8380" + integrity sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ== + +"@vue/reactivity-transform@3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz#07ac83b8138550c83dfb50db43cde1e0e5e8124d" + integrity sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ== + dependencies: + "@babel/parser" "^7.16.4" + "@vue/compiler-core" "3.2.45" + "@vue/shared" "3.2.45" + estree-walker "^2.0.2" + magic-string "^0.25.7" + +"@vue/reactivity@3.2.45", "@vue/reactivity@^3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.2.45.tgz#412a45b574de601be5a4a5d9a8cbd4dee4662ff0" + integrity sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A== + dependencies: + "@vue/shared" "3.2.45" + +"@vue/runtime-core@3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz#7ad7ef9b2519d41062a30c6fa001ec43ac549c7f" + integrity sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A== + dependencies: + "@vue/reactivity" "3.2.45" + "@vue/shared" "3.2.45" + +"@vue/runtime-dom@3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz#1a2ef6ee2ad876206fbbe2a884554bba2d0faf59" + integrity sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA== + dependencies: + "@vue/runtime-core" "3.2.45" + "@vue/shared" "3.2.45" + csstype "^2.6.8" + +"@vue/server-renderer@3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz#ca9306a0c12b0530a1a250e44f4a0abac6b81f3f" + integrity sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g== + dependencies: + "@vue/compiler-ssr" "3.2.45" + "@vue/shared" "3.2.45" + +"@vue/shared@3.2.45", "@vue/shared@^3.2.45": + version "3.2.45" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.2.45.tgz#a3fffa7489eafff38d984e23d0236e230c818bc2" + integrity sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg== + +"@vueuse/head@^1.0.15": + version "1.0.22" + resolved "https://registry.yarnpkg.com/@vueuse/head/-/head-1.0.22.tgz#66b591d6e4dc636c6578d1c04a96bd6c2e00f3b6" + integrity sha512-YmUdbzNdCnhmrAFxGnJS+Rixj+swE+TQC9OEaYDHIro6gE7W11jugcdwVP00HrA4WRQhg+TOQ4YcY2oL/PP1hw== + dependencies: + "@unhead/dom" "^1.0.9" + "@unhead/schema" "^1.0.9" + "@unhead/ssr" "^1.0.9" + "@unhead/vue" "^1.0.9" + +"@zhead/schema@^1.0.7": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@zhead/schema/-/schema-1.0.7.tgz#229d03af31025a02b2de02a7b065542d7121e0df" + integrity sha512-jN2ipkz39YrHd8uulgw/Y7x8iOxvR/cTkin/E9zRQVP5JBIrrJMiGyFFj6JBW4Q029xJ5dKtpwy/3RZWpz+dkQ== -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -"@cnakazawa/watch@^1.0.3": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" - integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== +acorn-node@^1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8" + integrity sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== dependencies: - exec-sh "^0.3.2" - minimist "^1.2.0" + acorn "^7.0.0" + acorn-walk "^7.0.0" + xtend "^4.0.2" -"@csstools/convert-colors@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" - integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== - -"@eslint/eslintrc@^0.4.0": - version "0.4.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.0.tgz#99cc0a0584d72f1df38b900fb062ba995f395547" - integrity sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog== - dependencies: - ajv "^6.12.4" - debug "^4.1.1" - espree "^7.3.0" - globals "^12.1.0" - ignore "^4.0.6" - import-fresh "^3.2.1" - js-yaml "^3.13.1" - minimatch "^3.0.4" - strip-json-comments "^3.1.1" +acorn-walk@^7.0.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -"@fullhuman/postcss-purgecss@^3.1.3": - version "3.1.3" - resolved "https://registry.yarnpkg.com/@fullhuman/postcss-purgecss/-/postcss-purgecss-3.1.3.tgz#47af7b87c9bfb3de4bc94a38f875b928fffdf339" - integrity sha512-kwOXw8fZ0Lt1QmeOOrd+o4Ibvp4UTEBFQbzvWldjlKv5n+G9sXfIPn1hh63IQIL8K8vbvv1oYMJiIUbuy9bGaA== - dependencies: - purgecss "^3.1.3" +acorn@^7.0.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -"@intlify/shared@^9.0.0": - version "9.1.4" - resolved "https://registry.yarnpkg.com/@intlify/shared/-/shared-9.1.4.tgz#0388515e5458fe1a2314c8f844db31bad26b8558" - integrity sha512-2rlkzmgj6fdSW8gsVtuw0vebMMGXGvRI3CwsshtAdShwea1bUuHtjJqze0ZhiVaRi87yAl4U5CaGC/t721TD5Q== +acorn@^8.5.0, acorn@^8.6.0, acorn@^8.8.1: + version "8.8.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" + integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== -"@intlify/vue-i18n-extensions@^1.0.1": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@intlify/vue-i18n-extensions/-/vue-i18n-extensions-1.0.2.tgz#ab7f8507f7d423c368e44fa21d6dece700261fca" - integrity sha512-rnfA0ScyBXyp9xsSD4EAMGeOh1yv/AE7fhqdAdSOr5X8N39azz257umfRtzNT9sHXAKSSzpCVhIbMAkp5c/gjQ== +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: - "@babel/parser" "^7.9.6" + debug "4" -"@intlify/vue-i18n-loader@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@intlify/vue-i18n-loader/-/vue-i18n-loader-1.1.0.tgz#eecc6460823676f533784b3641665c5a609eccf0" - integrity sha512-9LXiztMtYKTE8t/hRwwGUp+ofrwU0sxLQLzFEOZ38zvn0DonUIQmZUj1cfz5p1Lu8BllxKbCrn6HnsRJ+LYA6g== +ansi-escapes@^4.3.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: - "@intlify/shared" "^9.0.0" - js-yaml "^3.13.1" - json5 "^2.1.1" + type-fest "^0.21.3" -"@istanbuljs/load-nyc-config@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== +ansi-escapes@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-6.0.0.tgz#68c580e87a489f6df3d761028bb93093fde6bd8a" + integrity sha512-IG23inYII3dWlU2EyiAiGj6Bwal5GzsgPMwjYGvc1HPE2dgbj4ZB5ToWBKSquKw74nB3TIuOwaI6/jSULzfgrw== dependencies: - camelcase "^5.3.1" - find-up "^4.1.0" - get-package-type "^0.1.0" - js-yaml "^3.13.1" - resolve-from "^5.0.0" - -"@istanbuljs/schema@^0.1.2": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + type-fest "^3.0.0" -"@jest/console@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" - integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - jest-message-util "^26.6.2" - jest-util "^26.6.2" - slash "^3.0.0" - -"@jest/core@^26.6.3": - version "26.6.3" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" - integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== - dependencies: - "@jest/console" "^26.6.2" - "@jest/reporters" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-changed-files "^26.6.2" - jest-config "^26.6.3" - jest-haste-map "^26.6.2" - jest-message-util "^26.6.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-resolve-dependencies "^26.6.3" - jest-runner "^26.6.3" - jest-runtime "^26.6.3" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - jest-watcher "^26.6.2" - micromatch "^4.0.2" - p-each-series "^2.1.0" - rimraf "^3.0.0" - slash "^3.0.0" - strip-ansi "^6.0.0" +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== -"@jest/environment@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" - integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== - dependencies: - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== -"@jest/fake-timers@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" - integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: - "@jest/types" "^26.6.2" - "@sinonjs/fake-timers" "^6.0.1" - "@types/node" "*" - jest-message-util "^26.6.2" - jest-mock "^26.6.2" - jest-util "^26.6.2" + color-convert "^1.9.0" -"@jest/globals@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" - integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: - "@jest/environment" "^26.6.2" - "@jest/types" "^26.6.2" - expect "^26.6.2" + color-convert "^2.0.1" -"@jest/reporters@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" - integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.2.4" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.3" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.0.2" - jest-haste-map "^26.6.2" - jest-resolve "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" - slash "^3.0.0" - source-map "^0.6.0" - string-length "^4.0.1" - terminal-link "^2.0.0" - v8-to-istanbul "^7.0.0" - optionalDependencies: - node-notifier "^8.0.0" +ansi-styles@^6.1.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== -"@jest/source-map@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" - integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== +anymatch@^3.1.2, anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: - callsites "^3.0.0" - graceful-fs "^4.2.4" - source-map "^0.6.0" + normalize-path "^3.0.0" + picomatch "^2.0.4" -"@jest/test-result@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" - integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== - dependencies: - "@jest/console" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" +"aproba@^1.0.3 || ^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== -"@jest/test-sequencer@^26.6.3": - version "26.6.3" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" - integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== - dependencies: - "@jest/test-result" "^26.6.2" - graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-runner "^26.6.3" - jest-runtime "^26.6.3" +arch@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/arch/-/arch-2.2.0.tgz#1bc47818f305764f23ab3306b0bfc086c5a29d11" + integrity sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ== -"@jest/transform@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" - integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^26.6.2" - babel-plugin-istanbul "^6.0.0" - chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-regex-util "^26.0.0" - jest-util "^26.6.2" - micromatch "^4.0.2" - pirates "^4.0.1" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" +archiver-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.1.0.tgz#e8a460e94b693c3e3da182a098ca6285ba9249e2" + integrity sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw== + dependencies: + glob "^7.1.4" + graceful-fs "^4.2.0" + lazystream "^1.0.0" + lodash.defaults "^4.2.0" + lodash.difference "^4.5.0" + lodash.flatten "^4.4.0" + lodash.isplainobject "^4.0.6" + lodash.union "^4.6.0" + normalize-path "^3.0.0" + readable-stream "^2.0.0" -"@jest/types@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" - integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== +archiver@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/archiver/-/archiver-5.3.1.tgz#21e92811d6f09ecfce649fbefefe8c79e57cbbb6" + integrity sha512-8KyabkmbYrH+9ibcTScQ1xCJC/CGcugdVIwB+53f5sZziXgwUh3iXlAlANMxcZyDEfTHMe6+Z5FofV8nopXP7w== dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" + archiver-utils "^2.1.0" + async "^3.2.3" + buffer-crc32 "^0.2.1" + readable-stream "^3.6.0" + readdir-glob "^1.0.0" + tar-stream "^2.2.0" + zip-stream "^4.1.0" -"@koa/router@^9.0.1": - version "9.4.0" - resolved "https://registry.yarnpkg.com/@koa/router/-/router-9.4.0.tgz#734b64c0ae566eb5af752df71e4143edc4748e48" - integrity sha512-dOOXgzqaDoHu5qqMEPLKEgLz5CeIA7q8+1W62mCvFVCOqeC71UoTGJ4u1xUSOpIl2J1x2pqrNULkFteUeZW3/A== +are-we-there-yet@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz#372e0e7bd279d8e94c653aaa1f67200884bf3e1c" + integrity sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw== dependencies: - debug "^4.1.1" - http-errors "^1.7.3" - koa-compose "^4.1.0" - methods "^1.1.2" - path-to-regexp "^6.1.0" + delegates "^1.0.0" + readable-stream "^3.6.0" -"@lokidb/full-text-search@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@lokidb/full-text-search/-/full-text-search-2.1.0.tgz#5f0b36dc0d67ba365f84663a9c0438537c186a76" - integrity sha512-KZm8CV0tW/DE+ca4RF8/7kiZnMWqk4x6xrwOImOw1xgMQVzS3jtxHOhWIRk+valUlimDzNxhrstMjBWsdzgqFg== - optionalDependencies: - "@lokidb/loki" "2.1.0" +arg@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" + integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg== -"@lokidb/loki@2.1.0", "@lokidb/loki@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@lokidb/loki/-/loki-2.1.0.tgz#f707e184016ce57d6dd12013938c33f9c540960e" - integrity sha512-u2VH/4h4kZww23bak5I/oRai8VqIZCSuqiLbuSHpYXHB9Na5E9KNazh59prgUyvMzfooY7XKiHejbKVxFoAEOQ== +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -"@nodelib/fs.scandir@2.1.4": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz#d4b3549a5db5de2683e0c1071ab4f140904bbf69" - integrity sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA== - dependencies: - "@nodelib/fs.stat" "2.0.4" - run-parallel "^1.1.9" +async-sema@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/async-sema/-/async-sema-3.1.1.tgz#e527c08758a0f8f6f9f15f799a173ff3c40ea808" + integrity sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg== -"@nodelib/fs.stat@2.0.4", "@nodelib/fs.stat@^2.0.2": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz#a3f2dd61bab43b8db8fa108a121cfffe4c676655" - integrity sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q== +async@^3.2.3: + version "3.2.4" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" + integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== -"@nodelib/fs.walk@^1.2.3": - version "1.2.6" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz#cce9396b30aa5afe9e3756608f5831adcb53d063" - integrity sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow== +autoprefixer@^10.4.13: + version "10.4.13" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.13.tgz#b5136b59930209a321e9fa3dca2e7c4d223e83a8" + integrity sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg== dependencies: - "@nodelib/fs.scandir" "2.1.4" - fastq "^1.6.0" + browserslist "^4.21.4" + caniuse-lite "^1.0.30001426" + fraction.js "^4.2.0" + normalize-range "^0.1.2" + picocolors "^1.0.0" + postcss-value-parser "^4.2.0" -"@npmcli/move-file@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" - integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== - dependencies: - mkdirp "^1.0.4" - rimraf "^3.0.2" +bail@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d" + integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw== -"@nuxt/babel-preset-app@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/babel-preset-app/-/babel-preset-app-2.15.3.tgz#d97c2ae488cfdcbf0c7e0f412d10bb9554f38cb7" - integrity sha512-Z4Do1z2hSrdZKp6II/r9OG3o0tKPhWLeEjHHHKjl482PO65MadghyCspLJtQOV+TdJoZZYksph1O0F19nIgF6Q== - dependencies: - "@babel/compat-data" "^7.13.8" - "@babel/core" "^7.13.10" - "@babel/helper-compilation-targets" "^7.13.10" - "@babel/helper-module-imports" "^7.12.13" - "@babel/plugin-proposal-class-properties" "^7.13.0" - "@babel/plugin-proposal-decorators" "^7.13.5" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8" - "@babel/plugin-proposal-optional-chaining" "^7.13.8" - "@babel/plugin-transform-runtime" "^7.13.10" - "@babel/preset-env" "^7.13.10" - "@babel/runtime" "^7.13.10" - "@vue/babel-preset-jsx" "^1.2.4" - core-js "^2.6.5" - core-js-compat "^3.9.1" - regenerator-runtime "^0.13.7" - -"@nuxt/builder@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/builder/-/builder-2.15.3.tgz#8d0f19fb984b237c3048aafbb7dee5120945cda9" - integrity sha512-/Cb+pkB5dC31870PYLySGule+sNsnwtNugUTXPsE7cwMj0Cz+3y04TT+sMf4/bP6eGUoMaebPkXzMqEW/glY4w== - dependencies: - "@nuxt/devalue" "^1.2.5" - "@nuxt/utils" "2.15.3" - "@nuxt/vue-app" "2.15.3" - "@nuxt/webpack" "2.15.3" - chalk "^4.1.0" - chokidar "^3.5.1" - consola "^2.15.3" - fs-extra "^9.1.0" - glob "^7.1.6" - hash-sum "^2.0.0" - ignore "^5.1.8" - lodash "^4.17.21" - pify "^5.0.0" - serialize-javascript "^5.0.1" - upath "^2.0.1" +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -"@nuxt/cli@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/cli/-/cli-2.15.3.tgz#6c2b02fcf7bc48d7d3ceac81f99cd639cc4b8e3b" - integrity sha512-5XMqaHf8VvWwe1MHGnHZ9Kg1lPfr/cUtK/gEHy/vu1o98VEeHtCTpn1/VZ9hA8zqkXBPfaH3bUPnFWEt+ByW1A== - dependencies: - "@nuxt/config" "2.15.3" - "@nuxt/utils" "2.15.3" - boxen "^5.0.0" - chalk "^4.1.0" - compression "^1.7.4" - connect "^3.7.0" - consola "^2.15.3" - crc "^3.8.0" - defu "^3.2.2" - destr "^1.1.0" - execa "^5.0.0" - exit "^0.1.2" - fs-extra "^9.1.0" - globby "^11.0.2" - hable "^3.0.0" - lodash "^4.17.21" - minimist "^1.2.5" - opener "1.5.2" - pretty-bytes "^5.6.0" - semver "^7.3.4" - serve-static "^1.14.1" - std-env "^2.3.0" - upath "^2.0.1" - wrap-ansi "^7.0.0" +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -"@nuxt/components@^2.1.2": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@nuxt/components/-/components-2.1.4.tgz#6d3774704be9b3f692a9bb6d994b1261351799d8" - integrity sha512-V3AMoZz2ADhI0SbbUoX1U70eulL/xDwWpV5L/PLmoUHN7NuzsvBbOIl8JBXxf+Vp/d5TZwO0I2x7cHiukydfmA== - dependencies: - chalk "^4.1.0" - chokidar "^3.5.1" - glob "^7.1.6" - globby "^11.0.3" - scule "^0.1.1" - semver "^7.3.5" - upath "^2.0.1" - vue-template-compiler "^2.6.12" +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== -"@nuxt/config@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/config/-/config-2.15.3.tgz#05635654a88971c2f22b3eb4a631ec51f67d823a" - integrity sha512-5MmGJiOj91F4EIm+ikfegXt520QlJV4RF2hWsTLzliddwE+voSjcF/Se6c0pLrLLTmVQKlM2e5JcZQplbpYYtA== +bindings@^1.4.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== dependencies: - "@nuxt/utils" "2.15.3" - consola "^2.15.3" - defu "^3.2.2" - destr "^1.1.0" - dotenv "^8.2.0" - lodash "^4.17.21" - rc9 "^1.2.0" - std-env "^2.3.0" - ufo "^0.6.10" + file-uri-to-path "1.0.0" -"@nuxt/content@^1.14.0": - version "1.14.0" - resolved "https://registry.yarnpkg.com/@nuxt/content/-/content-1.14.0.tgz#5775b596d2db1ae65c41d461c0a6734fc276cb82" - integrity sha512-MYx+dTu2ZRUHWGp9EgVtFfXJHFeCKrzazaM4a9785OCipItp6zmm1hTlbfdCYenwa0HgaOXCxYAiN0h6tjyUZw== - dependencies: - "@lokidb/full-text-search" "^2.1.0" - "@lokidb/loki" "^2.1.0" - "@nuxt/types" "^2.15.2" - "@types/js-yaml" "^4.0.0" - "@types/xml2js" "^0.4.8" - change-case "^4.1.2" - chokidar "^3.5.1" - consola "^2.15.3" - csvtojson "^2.0.10" - defu "^3.2.2" - detab "^2.0.4" - escape-html "^1.0.3" - graceful-fs "^4.2.6" - gray-matter "^4.0.2" - hasha "^5.2.2" - hookable "^4.4.1" - html-tags "^3.1.0" - js-yaml "4.0.0" - mdast-util-to-hast "^10.2.0" - mkdirp "^1.0.4" - node-req "^2.1.2" - node-res "^5.0.1" - p-queue "6.6.2" - prismjs "^1.23.0" - property-information "^5.6.0" - rehype-raw "^5.0.0" - rehype-sort-attribute-values "^3.0.2" - rehype-sort-attributes "^3.0.2" - remark-autolink-headings "^6.0.1" - remark-external-links "^8.0.0" - remark-footnotes "^3.0.0" - remark-gfm "^1.0.0" - remark-parse "^9.0.0" - remark-rehype "^8.0.0" - remark-slug "^6.0.0" - remark-squeeze-paragraphs "^4.0.0" - unified "^9.2.1" - unist-builder "^2.0.3" - ws "^7.4.3" - xml2js "^0.4.23" - -"@nuxt/core@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/core/-/core-2.15.3.tgz#9caa8c0fb758e26a7328e5d06dfd3bcfdc570082" - integrity sha512-x2o8MqkdvsM+GMHG7fezdYHMHuI33FCDuOJiL66Qgi54gqfSrRv9QYZnixcxk8TsRX81Hlz+l4XqpSQa99N0MA== +bl@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" + integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== dependencies: - "@nuxt/config" "2.15.3" - "@nuxt/server" "2.15.3" - "@nuxt/utils" "2.15.3" - consola "^2.15.3" - fs-extra "^9.1.0" - hable "^3.0.0" - hash-sum "^2.0.0" - lodash "^4.17.21" + buffer "^5.5.0" + inherits "^2.0.4" + readable-stream "^3.4.0" -"@nuxt/devalue@^1.2.5": - version "1.2.5" - resolved "https://registry.yarnpkg.com/@nuxt/devalue/-/devalue-1.2.5.tgz#8d95e3e74b3332d3eb713342c5c4d18096047d66" - integrity sha512-Tg86C7tqzvZtZli2BQVqgzZN136mZDTgauvJXagglKkP2xt5Kw3NUIiJyjX0Ww/IZy2xVmD0LN+CEPpij4dB2g== +bl@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-5.1.0.tgz#183715f678c7188ecef9fe475d90209400624273" + integrity sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ== dependencies: - consola "^2.9.0" + buffer "^6.0.3" + inherits "^2.0.4" + readable-stream "^3.4.0" -"@nuxt/friendly-errors-webpack-plugin@^2.5.0": - version "2.5.0" - resolved "https://registry.yarnpkg.com/@nuxt/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-2.5.0.tgz#5374665bc72d34b7dbadcc361a4777e3f0f5d46b" - integrity sha512-pUgPFmRL56/xuTCGN5rqgTfxvs1N/AYJw7q7tUHiZaBm3UyPgbIVPkadS9njwbFbPD2XcebVy7npQMMVwQJWfA== - dependencies: - chalk "^2.3.2" - consola "^2.6.0" - error-stack-parser "^2.0.0" - string-width "^2.0.0" +boolbase@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== -"@nuxt/generator@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/generator/-/generator-2.15.3.tgz#c9f73085c47d557e610193b6454e2afdd6f13271" - integrity sha512-WetoXQQ5UaizPF96/WAVPucrCUkWub5S2e7VvRS4HKrV6s9bUfj0zlJJTqZhOMLt/TxxF10Y9FThaP1+uLW3iw== - dependencies: - "@nuxt/utils" "2.15.3" - chalk "^4.1.0" - consola "^2.15.3" - defu "^3.2.2" - devalue "^2.0.1" - fs-extra "^9.1.0" - html-minifier "^4.0.0" - node-html-parser "^2.2.1" - ufo "^0.6.10" - -"@nuxt/loading-screen@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@nuxt/loading-screen/-/loading-screen-2.0.3.tgz#1d6b1f976bb143c6592231af0bf7fa6245f6ebd2" - integrity sha512-ThvxxUpfTZezzz0gAgyG4vHCM7KDeA692EL7lKrZ/fU8JvXlG6LYngVLWAobexBsydtGkuZyKCwCVDnEGNL4jw== +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== dependencies: - connect "^3.7.0" - defu "^2.0.4" - get-port-please "^1.0.0" - node-res "^5.0.1" - serve-static "^1.14.1" + balanced-match "^1.0.0" + concat-map "0.0.1" -"@nuxt/opencollective@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@nuxt/opencollective/-/opencollective-0.3.2.tgz#83cb70cdb2bac5fad6f8c93529e7b11187d49c02" - integrity sha512-XG7rUdXG9fcafu9KTDIYjJSkRO38EwjlKYIb5TQ/0WDbiTUTtUtgncMscKOYzfsY86kGs05pAuMOR+3Fi0aN3A== +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== dependencies: - chalk "^4.1.0" - consola "^2.15.0" - node-fetch "^2.6.1" + balanced-match "^1.0.0" -"@nuxt/postcss8@^1.1.3": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nuxt/postcss8/-/postcss8-1.1.3.tgz#a7f8f6f2a664430bbdd3b175498eb693e0b1b351" - integrity sha512-CdHtErhvQwueNZPBOmlAAKrNCK7aIpZDYhtS7TzXlSgPHHox1g3cSlf+Ke9oB/8t4mNNjdB+prclme2ibuCOEA== +braces@^3.0.2, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: - autoprefixer "^10.2.5" - css-loader "^5.0.0" - defu "^3.2.2" - postcss "^8.1.10" - postcss-import "^13.0.0" - postcss-loader "^4.1.0" - postcss-url "^10.1.1" - semver "^7.3.4" + fill-range "^7.0.1" -"@nuxt/server@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/server/-/server-2.15.3.tgz#43e9c8beb9547a0dbaef9b6001a69ae251ed6a38" - integrity sha512-jEUddpu1RuXnzjfUdiMD5I+LAs8LQXfdoYJtdR2kAzaDZnGeNWE6kZ2WD9B8uqPAl5497j69bdWFvK87NSaRXA== - dependencies: - "@nuxt/utils" "2.15.3" - "@nuxt/vue-renderer" "2.15.3" - "@nuxtjs/youch" "^4.2.3" - compression "^1.7.4" - connect "^3.7.0" - consola "^2.15.3" - etag "^1.8.1" - fresh "^0.5.2" - fs-extra "^9.1.0" - ip "^1.1.5" - launch-editor-middleware "^2.2.1" - on-headers "^1.0.2" - pify "^5.0.0" - serve-placeholder "^1.2.3" - serve-static "^1.14.1" - server-destroy "^1.0.1" - ufo "^0.6.10" - -"@nuxt/telemetry@^1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@nuxt/telemetry/-/telemetry-1.3.3.tgz#beefa94c6032a1312c7dc9c8784c6b8cc3aa42ae" - integrity sha512-ElnoAJo1n/Ui0j9i3xqhXajoGJdEwmkEtsWftlZUpQNJxdfoz+623qnt9XHMYa0X5Nf1PXYdcUKa2u4AASXOjA== +browserslist@^4.0.0, browserslist@^4.16.6, browserslist@^4.21.3, browserslist@^4.21.4: + version "4.21.4" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987" + integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== dependencies: - arg "^5.0.0" - chalk "^4.1.0" - ci-info "^2.0.0" - consola "^2.15.0" - create-require "^1.1.1" - defu "^3.2.2" - destr "^1.1.0" - dotenv "^8.2.0" - fs-extra "^8.1.0" - git-url-parse "^11.4.3" - inquirer "^7.3.3" - is-docker "^2.1.1" - jiti "^1.3.0" - nanoid "^3.1.20" - node-fetch "^2.6.1" - parse-git-config "^3.0.0" - rc9 "^1.2.0" - std-env "^2.2.1" + caniuse-lite "^1.0.30001400" + electron-to-chromium "^1.4.251" + node-releases "^2.0.6" + update-browserslist-db "^1.0.9" -"@nuxt/types@^2.15.2", "@nuxt/types@^2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/types/-/types-2.15.3.tgz#2c93829554ff261f488f41d7332aa1cc2e343ada" - integrity sha512-dOO5uSDOjeMxDtowRd3b1ZMMeoUQjVHsf/3rMjAgIDojESbIkLE+yN0zSPBzDomjh8KF82ZNYDeDrN34cadW5g== - dependencies: - "@types/autoprefixer" "^9.7.2" - "@types/babel__core" "^7.1.12" - "@types/compression" "^1.7.0" - "@types/connect" "^3.4.34" - "@types/etag" "^1.8.0" - "@types/file-loader" "^4.2.0" - "@types/html-minifier" "^4.0.0" - "@types/less" "^3.0.2" - "@types/node" "^12.20.5" - "@types/optimize-css-assets-webpack-plugin" "^5.0.2" - "@types/pug" "^2.0.4" - "@types/sass" "^1.16.0" - "@types/serve-static" "^1.13.9" - "@types/terser-webpack-plugin" "^4.2.0" - "@types/webpack" "^4.41.26" - "@types/webpack-bundle-analyzer" "^3.9.1" - "@types/webpack-dev-middleware" "^4.1.0" - "@types/webpack-hot-middleware" "^2.25.3" - sass-loader "^10.1.1" - -"@nuxt/typescript-build@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@nuxt/typescript-build/-/typescript-build-2.1.0.tgz#191fe60e942ce84a01468ba6e255744e01c7c538" - integrity sha512-7TLMpfzgOckf3cBkzoPFns6Xl8FzY6MoFfm/5HUE47QeTWAdOG9ZFxMrVhHWieZHYUuV+k6byRtaRv4S/3R8zA== - dependencies: - consola "^2.15.3" - fork-ts-checker-webpack-plugin "^6.1.1" - ts-loader "^8.0.17" - typescript "~4.2" +buffer-crc32@^0.2.1, buffer-crc32@^0.2.13: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== -"@nuxt/utils@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/utils/-/utils-2.15.3.tgz#45a2e368829274fa03c4d647dea7e420cd50caaa" - integrity sha512-sJPBjTZ9XsPKrKM1mdyNmb6c59l/4RIhBACDwOhgLVMUZVMWQkV0dqhoykd2ZIVqyEaNEE49hsfo3934aQlPtw== +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +buffer@^5.5.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== dependencies: - consola "^2.15.3" - create-require "^1.1.1" - fs-extra "^9.1.0" - hash-sum "^2.0.0" - jiti "^1.6.3" - lodash "^4.17.21" - proper-lockfile "^4.1.2" - semver "^7.3.4" - serialize-javascript "^5.0.1" - signal-exit "^3.0.3" - ua-parser-js "^0.7.24" - ufo "^0.6.10" + base64-js "^1.3.1" + ieee754 "^1.1.13" -"@nuxt/vue-app@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/vue-app/-/vue-app-2.15.3.tgz#081d15d96e4675ee2f83b223a2a8697e91251f39" - integrity sha512-Dd4OdtZY7+PN2tMjgkdUP+w9WjLQjUbUq8HrACMeT9Vz8FbX2aoYyLzku7KFZy/2PBk1Yz5ZaJIjrcZPobEAfQ== - dependencies: - node-fetch "^2.6.1" - ufo "^0.6.10" - unfetch "^4.2.0" - vue "^2.6.12" - vue-client-only "^2.0.0" - vue-meta "^2.4.0" - vue-no-ssr "^1.1.1" - vue-router "^3.5.1" - vue-template-compiler "^2.6.12" - vuex "^3.6.2" - -"@nuxt/vue-renderer@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/vue-renderer/-/vue-renderer-2.15.3.tgz#7c920ae3ae05b6ef4b7bd0d70b2b7ee7818c02b6" - integrity sha512-ovZ2NWlTsX0hbeuJhuyRrCpEkZn5mdM3YWaOCAG4jctee+sK/C76TtbVNsK9Rbu1vxMe/6zlHOPpE2LV+TRJdw== +buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== dependencies: - "@nuxt/devalue" "^1.2.5" - "@nuxt/utils" "2.15.3" - consola "^2.15.3" - defu "^3.2.2" - fs-extra "^9.1.0" - lodash "^4.17.21" - lru-cache "^5.1.1" - ufo "^0.6.10" - vue "^2.6.12" - vue-meta "^2.4.0" - vue-server-renderer "^2.6.12" + base64-js "^1.3.1" + ieee754 "^1.2.1" -"@nuxt/webpack@2.15.3": - version "2.15.3" - resolved "https://registry.yarnpkg.com/@nuxt/webpack/-/webpack-2.15.3.tgz#df1e757512b7624a34539bed91e74b59d0ba415e" - integrity sha512-ca692q7MRbNutxjTEfF3wnMvRJ9BbXRDA7zeBnIDHFho6b8mlAskPy5716rxZ3CYhQ2rGVQc5it3+JyjCEw59Q== - dependencies: - "@babel/core" "^7.13.10" - "@nuxt/babel-preset-app" "2.15.3" - "@nuxt/friendly-errors-webpack-plugin" "^2.5.0" - "@nuxt/utils" "2.15.3" - babel-loader "^8.2.2" - cache-loader "^4.1.0" - caniuse-lite "^1.0.30001198" - consola "^2.15.3" - css-loader "^4.3.0" - cssnano "^4.1.10" - eventsource-polyfill "^0.9.6" - extract-css-chunks-webpack-plugin "^4.9.0" - file-loader "^6.2.0" - glob "^7.1.6" - hard-source-webpack-plugin "^0.13.1" - hash-sum "^2.0.0" - html-webpack-plugin "^4.5.1" - lodash "^4.17.21" - memory-fs "^0.5.0" - optimize-css-assets-webpack-plugin "^5.0.4" - pify "^5.0.0" - pnp-webpack-plugin "^1.6.4" - postcss "^7.0.32" - postcss-import "^12.0.1" - postcss-import-resolver "^2.0.0" - postcss-loader "^3.0.0" - postcss-preset-env "^6.7.0" - postcss-url "^8.0.0" - semver "^7.3.4" - std-env "^2.3.0" - style-resources-loader "^1.4.1" - terser-webpack-plugin "^4.2.3" - thread-loader "^3.0.1" - time-fix-plugin "^2.0.7" - ufo "^0.6.10" - url-loader "^4.1.1" - vue-loader "^15.9.6" - vue-style-loader "^4.1.3" - vue-template-compiler "^2.6.12" - webpack "^4.46.0" - webpack-bundle-analyzer "^4.4.0" - webpack-dev-middleware "^4.1.0" - webpack-hot-middleware "^2.25.0" - webpack-node-externals "^2.5.2" - webpackbar "^4.0.0" - -"@nuxtjs/axios@^5.13.1": - version "5.13.1" - resolved "https://registry.yarnpkg.com/@nuxtjs/axios/-/axios-5.13.1.tgz#70c7444e6be8989372c249637f9287c844340f42" - integrity sha512-vZpXV2AAkQ5Duejubt1k3ZgUnYowYnPvmcUt0hskd+OebmQ+jF6Wk6rOG0/9EeknOxm7mtTGgKSwdlE1jDo+xA== - dependencies: - "@nuxtjs/proxy" "^2.1.0" - axios "^0.21.1" - axios-retry "^3.1.9" - consola "^2.15.3" - defu "^3.2.2" +builtin-modules@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" + integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== -"@nuxtjs/eslint-config-typescript@^6.0.0": - version "6.0.0" - resolved "https://registry.yarnpkg.com/@nuxtjs/eslint-config-typescript/-/eslint-config-typescript-6.0.0.tgz#e3ea273edf2dfcb176a9f28ca1a95870a6c21cd8" - integrity sha512-oQm0ZmWdHNf8TKWbSUhwniarCX590oHnxuArvwApLDaaNaw0m4TL5+rpARMCVtlS33YhJ/Le+GaeyS5HeVt19A== +busboy@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" + integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== dependencies: - "@nuxtjs/eslint-config" "6.0.0" - "@typescript-eslint/eslint-plugin" "^4.16.1" - "@typescript-eslint/parser" "^4.16.1" + streamsearch "^1.1.0" -"@nuxtjs/eslint-config@6.0.0": - version "6.0.0" - resolved "https://registry.yarnpkg.com/@nuxtjs/eslint-config/-/eslint-config-6.0.0.tgz#bf8b7b1f72fc9080ba2a6c71f2447d4166d374e3" - integrity sha512-DQLyMS+A1lPeo3ajMEISz8rPzCU4DTIKQtv9HRy1A3w5583dXcbHMQzNg3qGHoTPJ/FzM1+WhV8Ak3+gQ+9uoQ== - dependencies: - eslint-config-standard "^16.0.2" - eslint-plugin-import "^2.22.1" - eslint-plugin-jest "^24.1.7" - eslint-plugin-node "^11.1.0" - eslint-plugin-promise "^4.3.1" - eslint-plugin-standard "^4.1.0" - eslint-plugin-unicorn "^28.0.2" - eslint-plugin-vue "^7.7.0" - -"@nuxtjs/eslint-module@^3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@nuxtjs/eslint-module/-/eslint-module-3.0.2.tgz#45208e6e1b486beb6d0854777faf124751971bc6" - integrity sha512-9q6/bMSvUU2L7Vhy5LUmghW3BQZMReQAvywBwZtX7s62W6dIL7IdD1T3u2zc8JW90grtJK84Ocx3dyYTj/Oavw== - dependencies: - consola "^2.15.0" - eslint-webpack-plugin "^2.4.1" +c12@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/c12/-/c12-1.1.0.tgz#2d73596c885f0b990dcd91244b15e3c0405ebbeb" + integrity sha512-9KRFWEng+TH8sGST4NNdiKzZGw1Z1CHnPGAmNqAyVP7suluROmBjD8hsiR34f94DdlrvtGvvmiGDsoFXlCBWIw== + dependencies: + defu "^6.1.1" + dotenv "^16.0.3" + giget "^1.0.0" + jiti "^1.16.0" + mlly "^1.0.0" + pathe "^1.0.0" + pkg-types "^1.0.1" + rc9 "^2.0.0" -"@nuxtjs/proxy@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@nuxtjs/proxy/-/proxy-2.1.0.tgz#fa7715a11d237fa1273503c4e9e137dd1bf5575b" - integrity sha512-/qtoeqXgZ4Mg6LRg/gDUZQrFpOlOdHrol/vQYMnKu3aN3bP90UfOUB3QSDghUUK7OISAJ0xp8Ld78aHyCTcKCQ== - dependencies: - http-proxy-middleware "^1.0.6" - -"@nuxtjs/pwa@^3.3.5": - version "3.3.5" - resolved "https://registry.yarnpkg.com/@nuxtjs/pwa/-/pwa-3.3.5.tgz#db7c905536ebe8a464a347b6ae3215810642c044" - integrity sha512-8tTmW8DBspWxlJwTimOHTkwfkwPpL9wIcGmy75Gcmin+c9YtX2Ehxmhgt/TLFOC9XsLAqojqynw3/Agr/9OE1w== - dependencies: - clone-deep "^4.0.1" - defu "^3.2.2" - execa "^5.0.0" - fs-extra "^9.1.0" - hasha "^5.2.2" - jimp-compact "^0.16.1" - lodash.template "^4.5.0" - serve-static "^1.14.1" - workbox-cdn "^5.1.4" +camelcase-css@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" + integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== -"@nuxtjs/tailwindcss@^4.0.3": - version "4.0.3" - resolved "https://registry.yarnpkg.com/@nuxtjs/tailwindcss/-/tailwindcss-4.0.3.tgz#c90d6facc6718dbc6f56f28c3d1daf82544276f7" - integrity sha512-dr+Bq4chALKllQaIoGrAV3JplP141wL50lfO8BwAD2R99ywwwM5DUMAUrpppuWHT4x/Lp/SzUwbCKsRJBhuQGA== - dependencies: - "@nuxt/postcss8" "^1.1.3" - "@tailwindcss/jit" "^0.1.18" - autoprefixer "^10.2.5" - chalk "^4.1.0" - clear-module "^4.1.1" - consola "^2.15.3" - defu "^3.2.2" - postcss "^8.2.9" - postcss-custom-properties "^11.0.0" - postcss-nesting "^7.0.1" - tailwind-config-viewer "^1.5.1" - tailwindcss "^2.0.4" - ufo "^0.6.10" - -"@nuxtjs/youch@^4.2.3": - version "4.2.3" - resolved "https://registry.yarnpkg.com/@nuxtjs/youch/-/youch-4.2.3.tgz#36f8b22df5a0efaa81373109851e1d857aca6bed" - integrity sha512-XiTWdadTwtmL/IGkNqbVe+dOlT+IMvcBu7TvKI7plWhVQeBCQ9iKhk3jgvVWFyiwL2yHJDlEwOM5v9oVES5Xmw== +camelcase@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +caniuse-api@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" + integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== dependencies: - cookie "^0.3.1" - mustache "^2.3.0" - stack-trace "0.0.10" + browserslist "^4.0.0" + caniuse-lite "^1.0.0" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" -"@polka/url@^1.0.0-next.9": - version "1.0.0-next.11" - resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.11.tgz#aeb16f50649a91af79dbe36574b66d0f9e4d9f71" - integrity sha512-3NsZsJIA/22P3QUyrEDNA2D133H4j224twJrdipXN38dpnIOzAbUDtOwkcJ5pXmn75w7LSQDjA4tO9dm1XlqlA== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001400, caniuse-lite@^1.0.30001426: + version "1.0.30001439" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz#ab7371faeb4adff4b74dad1718a6fd122e45d9cb" + integrity sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A== -"@sinonjs/commons@^1.7.0": - version "1.8.2" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.2.tgz#858f5c4b48d80778fde4b9d541f27edc0d56488b" - integrity sha512-sruwd86RJHdsVf/AtBoijDmUqJp3B6hF/DGC23C+JaegnDHaZyewCjoVGTdg3J0uz3Zs7NnIT05OBOmML72lQw== - dependencies: - type-detect "4.0.8" +ccount@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" + integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== -"@sinonjs/fake-timers@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" - integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== +chalk@^2.0.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: - "@sinonjs/commons" "^1.7.0" + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" -"@tailwindcss/forms@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@tailwindcss/forms/-/forms-0.3.2.tgz#e28c4514a53e69f725416a5a2a6d0f221683f069" - integrity sha512-aj2/rJsGb2whAZ/BQWHWWQRSbhH0r/l1ozOByiv+ZNjBD84GMvb5dhAyfpeasFky+EJrAwX5eaqft8NQMZFWvA== +chalk@^4.1.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: - mini-svg-data-uri "^1.2.3" + ansi-styles "^4.1.0" + supports-color "^7.1.0" -"@tailwindcss/jit@^0.1.18": - version "0.1.18" - resolved "https://registry.yarnpkg.com/@tailwindcss/jit/-/jit-0.1.18.tgz#f44ac25b347ad1b4056af4fbda69399070206825" - integrity sha512-WNSEiwbggtO9n6+ok2fFdYmhqY20oqLmB82H23nY8P5WzijZbIshojoY3s/OvPD7cmvzkweZ6LLKGWuDS1/vLA== - dependencies: - chokidar "^3.5.1" - dlv "^1.1.3" - fast-glob "^3.2.5" - lodash.topath "^4.5.2" - normalize-path "^3.0.0" - object-hash "^2.1.1" - parse-glob "^3.0.4" - postcss-selector-parser "^6.0.4" - quick-lru "^5.1.1" +chalk@^5.0.0, chalk@^5.1.2: + version "5.2.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.2.0.tgz#249623b7d66869c673699fb66d65723e54dfcfb3" + integrity sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA== -"@tailwindcss/postcss7-compat@^2.1.0", "tailwindcss@npm:@tailwindcss/postcss7-compat": +character-entities-html4@^2.0.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/@tailwindcss/postcss7-compat/-/postcss7-compat-2.1.0.tgz#1393b99d9e60783990baa1b3e2ae69afac12f660" - integrity sha512-1Z6nPrkOp0Aa+NH5q6DYNizKf3qc6x735We0kpnIj1k5Cn+RkP69z+MpFLvz5lGGPRV/i+uS9uItoafnjIoZoQ== - dependencies: - "@fullhuman/postcss-purgecss" "^3.1.3" - autoprefixer "^9" - bytes "^3.0.0" - chalk "^4.1.0" - chokidar "^3.5.1" - color "^3.1.3" - detective "^5.2.0" - didyoumean "^1.2.1" - dlv "^1.1.3" - fast-glob "^3.2.5" - fs-extra "^9.1.0" - html-tags "^3.1.0" - lodash "^4.17.21" - lodash.topath "^4.5.2" - modern-normalize "^1.0.0" - node-emoji "^1.8.1" - normalize-path "^3.0.0" - object-hash "^2.1.1" - parse-glob "^3.0.4" - postcss "^7" - postcss-functions "^3" - postcss-js "^2" - postcss-nested "^4" - postcss-selector-parser "^6.0.4" - postcss-value-parser "^4.1.0" - pretty-hrtime "^1.0.3" - quick-lru "^5.1.1" - reduce-css-calc "^2.1.8" - resolve "^1.20.0" - -"@tailwindcss/typography@^0.4.0": - version "0.4.0" - resolved "https://registry.yarnpkg.com/@tailwindcss/typography/-/typography-0.4.0.tgz#b80974ad6af93df7b06e1981cb4d79698b6ad5c7" - integrity sha512-3BfOYT5MYNEq81Ism3L2qu/HRP2Q5vWqZtZRQqQrthHuaTK9qpuPfbMT5WATjAM5J1OePKBaI5pLoX4S1JGNMQ== - dependencies: - lodash.castarray "^4.4.0" - lodash.isplainobject "^4.0.6" - lodash.merge "^4.6.2" - lodash.uniq "^4.5.0" + resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b" + integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA== -"@types/anymatch@*": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" - integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== +character-entities-legacy@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b" + integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ== -"@types/autoprefixer@^9.7.2": - version "9.7.2" - resolved "https://registry.yarnpkg.com/@types/autoprefixer/-/autoprefixer-9.7.2.tgz#64b3251c9675feef5a631b7dd34cfea50a8fdbcc" - integrity sha512-QX7U7YW3zX3ex6MECtWO9folTGsXeP4b8bSjTq3I1ODM+H+sFHwGKuof+T+qBcDClGlCGtDb3SVfiTVfmcxw4g== - dependencies: - "@types/browserslist" "*" - postcss "7.x.x" +character-entities@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-2.0.2.tgz#2d09c2e72cd9523076ccb21157dff66ad43fcc22" + integrity sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ== -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.12", "@types/babel__core@^7.1.7": - version "7.1.14" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz#faaeefc4185ec71c389f4501ee5ec84b170cc402" - integrity sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" +character-reference-invalid@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz#85c66b041e43b47210faf401278abf808ac45cb9" + integrity sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw== -"@types/babel__generator@*": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz#f3d71178e187858f7c45e30380f8f1b7415a12d8" - integrity sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ== - dependencies: - "@babel/types" "^7.0.0" +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -"@types/babel__template@*": - version "7.4.0" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.0.tgz#0c888dd70b3ee9eebb6e4f200e809da0076262be" - integrity sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A== +chokidar@^3.5.1, chokidar@^3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.11.1" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.11.1.tgz#654f6c4f67568e24c23b367e947098c6206fa639" - integrity sha512-Vs0hm0vPahPMYi9tDjtP66llufgO3ST16WXaSTtDGEl9cewAl3AibmxWw6TINOqHPT9z0uABKAYjT9jNSg4npw== - dependencies: - "@babel/types" "^7.3.0" +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== -"@types/body-parser@*": - version "1.19.0" - resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f" - integrity sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ== - dependencies: - "@types/connect" "*" - "@types/node" "*" +ci-info@^3.6.1: + version "3.7.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.7.0.tgz#6d01b3696c59915b6ce057e4aa4adfc2fa25f5ef" + integrity sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog== -"@types/browserslist@*": - version "4.15.0" - resolved "https://registry.yarnpkg.com/@types/browserslist/-/browserslist-4.15.0.tgz#ba0265b33003a2581df1fc5f483321a30205f2d2" - integrity sha512-h9LyKErRGZqMsHh9bd+FE8yCIal4S0DxKTOeui56VgVXqa66TKiuaIUxCAI7c1O0LjaUzOTcsMyOpO9GetozRA== +cli-cursor@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-4.0.0.tgz#3cecfe3734bf4fe02a8361cbdc0f6fe28c6a57ea" + integrity sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg== dependencies: - browserslist "*" + restore-cursor "^4.0.0" -"@types/clean-css@*": - version "4.2.3" - resolved "https://registry.yarnpkg.com/@types/clean-css/-/clean-css-4.2.3.tgz#12c13cc815f5e793014ee002c6324455907d851c" - integrity sha512-ET0ldU/vpXecy5vO8JRIhtJWSrk1vzXdJcp3Bjf8bARZynl6vfkhEKY/A7njfNIRlmyTGuVFuqnD6I3tOGdXpQ== - dependencies: - "@types/node" "*" - source-map "^0.6.0" +cli-spinners@^2.6.1: + version "2.7.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" + integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== -"@types/compression@^1.7.0": - version "1.7.0" - resolved "https://registry.yarnpkg.com/@types/compression/-/compression-1.7.0.tgz#8dc2a56604873cf0dd4e746d9ae4d31ae77b2390" - integrity sha512-3LzWUM+3k3XdWOUk/RO+uSjv7YWOatYq2QADJntK1pjkk4DfVP0KrIEPDnXRJxAAGKe0VpIPRmlINLDuCedZWw== - dependencies: - "@types/express" "*" +cli-width@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-4.0.0.tgz#a5622f6a3b0a9e3e711a25f099bf2399f608caf6" + integrity sha512-ZksGS2xpa/bYkNzN3BAw1wEjsLV/ZKOf/CCrJ/QOBsxx6fOARIkwTutxp1XIOIohi6HKmOFjMoK/XaqDVUpEEw== -"@types/connect@*", "@types/connect@^3.4.34": - version "3.4.34" - resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.34.tgz#170a40223a6d666006d93ca128af2beb1d9b1901" - integrity sha512-ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ== +clipboardy@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-3.0.0.tgz#f3876247404d334c9ed01b6f269c11d09a5e3092" + integrity sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg== dependencies: - "@types/node" "*" + arch "^2.2.0" + execa "^5.1.1" + is-wsl "^2.2.0" -"@types/eslint@^7.2.6": - version "7.2.7" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.2.7.tgz#f7ef1cf0dceab0ae6f9a976a0a9af14ab1baca26" - integrity sha512-EHXbc1z2GoQRqHaAT7+grxlTJ3WE2YNeD6jlpPoRc83cCoThRY+NUWjCUZaYmk51OICkPXn2hhphcWcWXgNW0Q== +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== dependencies: - "@types/estree" "*" - "@types/json-schema" "*" - -"@types/estree@*": - version "0.0.46" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.46.tgz#0fb6bfbbeabd7a30880504993369c4bf1deab1fe" - integrity sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg== + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" -"@types/etag@^1.8.0": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@types/etag/-/etag-1.8.0.tgz#37f0b1f3ea46da7ae319bbedb607e375b4c99f7e" - integrity sha512-EdSN0x+Y0/lBv7YAb8IU4Jgm6DWM+Bqtz7o5qozl96fzaqdqbdfHS5qjdpFeIv7xQ8jSLyjMMNShgYtMajEHyQ== - dependencies: - "@types/node" "*" +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== -"@types/express-serve-static-core@^4.17.18": - version "4.17.19" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.19.tgz#00acfc1632e729acac4f1530e9e16f6dd1508a1d" - integrity sha512-DJOSHzX7pCiSElWaGR8kCprwibCB/3yW6vcT8VG3P0SJjnv19gnWG/AZMfM60Xj/YJIp/YCaDHyvzsFVeniARA== - dependencies: - "@types/node" "*" - "@types/qs" "*" - "@types/range-parser" "*" +cluster-key-slot@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz#88ddaa46906e303b5de30d3153b7d9fe0a0c19ac" + integrity sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA== -"@types/express@*": - version "4.17.11" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.11.tgz#debe3caa6f8e5fcda96b47bd54e2f40c4ee59545" - integrity sha512-no+R6rW60JEc59977wIxreQVsIEOAYwgCqldrA/vkpCnbD7MqTefO97lmoBe4WE0F156bC4uLSP1XHDOySnChg== +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: - "@types/body-parser" "*" - "@types/express-serve-static-core" "^4.17.18" - "@types/qs" "*" - "@types/serve-static" "*" + color-name "1.1.3" -"@types/file-loader@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@types/file-loader/-/file-loader-4.2.0.tgz#ec8e793e275b7f90cdec3ff286518c6bf7bb8fc3" - integrity sha512-N3GMqKiKSNd41q4/lZlkdvNXKKWVdOXrA8Rniu64+25X0K2U1mWmTSu1CIqXKKsZUCwfaFcaioviLQtQ+EowLg== +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: - "@types/webpack" "*" + color-name "~1.1.4" -"@types/graceful-fs@^4.1.2": - version "4.1.5" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" - integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== - dependencies: - "@types/node" "*" +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== -"@types/hast@^2.0.0": - version "2.3.1" - resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.1.tgz#b16872f2a6144c7025f296fb9636a667ebb79cd9" - integrity sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q== - dependencies: - "@types/unist" "*" +color-name@^1.1.4, color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -"@types/html-minifier-terser@^5.0.0": - version "5.1.1" - resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#3c9ee980f1a10d6021ae6632ca3e79ca2ec4fb50" - integrity sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA== +color-support@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -"@types/html-minifier@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/html-minifier/-/html-minifier-4.0.0.tgz#2065cb9944f2d1b241146707c6935aa7b947d279" - integrity sha512-eFnGhrKmjWBlnSGNtunetE3UU2Tc/LUl92htFslSSTmpp9EKHQVcYQadCyYfnzUEFB5G/3wLWo/USQS/mEPKrA== - dependencies: - "@types/clean-css" "*" - "@types/relateurl" "*" - "@types/uglify-js" "*" +colord@^2.9.1: + version "2.9.3" + resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" + integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== -"@types/http-proxy@^1.17.4": - version "1.17.5" - resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.5.tgz#c203c5e6e9dc6820d27a40eb1e511c70a220423d" - integrity sha512-GNkDE7bTv6Sf8JbV2GksknKOsk7OznNYHSdrtvPJXO0qJ9odZig6IZKUi5RFGi6d1bf6dgIAe4uXi3DBc7069Q== - dependencies: - "@types/node" "*" +colorette@^2.0.19: + version "2.0.19" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" + integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": +comma-separated-tokens@^2.0.0: version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" - integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== - -"@types/istanbul-lib-report@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" - integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== - dependencies: - "@types/istanbul-lib-coverage" "*" - -"@types/istanbul-reports@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz#508b13aa344fa4976234e75dddcc34925737d821" - integrity sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA== - dependencies: - "@types/istanbul-lib-report" "*" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" + integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== -"@types/js-yaml@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.0.tgz#d1a11688112091f2c711674df3a65ea2f47b5dfb" - integrity sha512-4vlpCM5KPCL5CfGmTbpjwVKbISRYhduEJvvUWsH5EB7QInhEj94XPZ3ts/9FPiLZFqYO0xoW4ZL8z2AabTGgJA== +commander@^2.20.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -"@types/json-schema@*", "@types/json-schema@^7.0.3", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6": - version "7.0.7" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad" - integrity sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA== +commander@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== -"@types/json5@^0.0.29": - version "0.0.29" - resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" - integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= +commander@^8.0.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== -"@types/less@^3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/less/-/less-3.0.2.tgz#2761d477678c8374cb9897666871662eb1d1115e" - integrity sha512-62vfe65cMSzYaWmpmhqCMMNl0khen89w57mByPi1OseGfcV/LV03fO8YVrNj7rFQsRWNJo650WWyh6m7p8vZmA== +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== -"@types/mdast@^3.0.0": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb" - integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw== +compress-commons@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-4.1.1.tgz#df2a09a7ed17447642bad10a85cc9a19e5c42a7d" + integrity sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ== dependencies: - "@types/unist" "*" + buffer-crc32 "^0.2.13" + crc32-stream "^4.0.2" + normalize-path "^3.0.0" + readable-stream "^3.6.0" -"@types/mime@^1": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" - integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== - -"@types/node@*": - version "14.14.35" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.35.tgz#42c953a4e2b18ab931f72477e7012172f4ffa313" - integrity sha512-Lt+wj8NVPx0zUmUwumiVXapmaLUcAk3yPuHCFVXras9k5VT9TdhJqKqGVUQCD60OTMCl0qxJ57OiTL0Mic3Iag== - -"@types/node@^12.20.5": - version "12.20.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.6.tgz#7b73cce37352936e628c5ba40326193443cfba25" - integrity sha512-sRVq8d+ApGslmkE9e3i+D3gFGk7aZHAT+G4cIpIEdLJYPsWiSPwcAnJEjddLQQDqV3Ra2jOclX/Sv6YrvGYiWA== +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -"@types/normalize-package-data@^2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" - integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== +consola@^2.15.3: + version "2.15.3" + resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" + integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== -"@types/optimize-css-assets-webpack-plugin@^5.0.2": - version "5.0.2" - resolved "https://registry.yarnpkg.com/@types/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.2.tgz#37afc6ca5eecae865551e86d1fd3012aedc40798" - integrity sha512-kOeZHQyoeau/6Obelj5/iow7uo5rH2KpbdWPEGCqbC4bxkiteg794tU4LqKFlQKdM5QGCp5Hbapl+zDdQzBNkQ== - dependencies: - "@types/webpack" "*" +console-control-strings@^1.0.0, console-control-strings@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== -"@types/parse-json@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" - integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== +convert-source-map@^1.7.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== -"@types/parse5@^5.0.0": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109" - integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== +cookie-es@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/cookie-es/-/cookie-es-0.5.0.tgz#a6ad89923e68c542fc9e760b07aefa5ab020d719" + integrity sha512-RyZrFi6PNpBFbIaQjXDlFIhFVqV42QeKSZX1yQIl6ihImq6vcHNGMtqQ/QzY3RMPuYSkvsRwtnt5M9NeYxKt0g== -"@types/prettier@^2.0.0": - version "2.2.3" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.2.3.tgz#ef65165aea2924c9359205bf748865b8881753c0" - integrity sha512-PijRCG/K3s3w1We6ynUKdxEc5AcuuH3NBmMDP8uvKVp6X43UY7NQlTzczakXP3DJR0F4dfNQIGjU2cUeRYs2AA== +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== -"@types/pug@^2.0.4": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/pug/-/pug-2.0.4.tgz#8772fcd0418e3cd2cc171555d73007415051f4b2" - integrity sha1-h3L80EGOPNLMFxVV1zAHQVBR9LI= +crc-32@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" + integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== -"@types/q@^1.5.1": - version "1.5.4" - resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" - integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== +crc32-stream@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-4.0.2.tgz#c922ad22b38395abe9d3870f02fa8134ed709007" + integrity sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w== + dependencies: + crc-32 "^1.2.0" + readable-stream "^3.4.0" -"@types/qs@*": - version "6.9.6" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1" - integrity sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA== +create-require@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== -"@types/range-parser@*": - version "1.2.3" - resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" - integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== +cross-spawn@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" -"@types/relateurl@*": - version "0.2.28" - resolved "https://registry.yarnpkg.com/@types/relateurl/-/relateurl-0.2.28.tgz#6bda7db8653fa62643f5ee69e9f69c11a392e3a6" - integrity sha1-a9p9uGU/piZD9e5p6facEaOS46Y= +css-declaration-sorter@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz#be5e1d71b7a992433fb1c542c7a1b835e45682ec" + integrity sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w== -"@types/sass@^1.16.0": - version "1.16.0" - resolved "https://registry.yarnpkg.com/@types/sass/-/sass-1.16.0.tgz#b41ac1c17fa68ffb57d43e2360486ef526b3d57d" - integrity sha512-2XZovu4NwcqmtZtsBR5XYLw18T8cBCnU2USFHTnYLLHz9fkhnoEMoDsqShJIOFsFhn5aJHjweiUUdTrDGujegA== +css-select@^4.1.3: + version "4.3.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" + integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== dependencies: - "@types/node" "*" + boolbase "^1.0.0" + css-what "^6.0.1" + domhandler "^4.3.1" + domutils "^2.8.0" + nth-check "^2.0.1" -"@types/serve-static@*", "@types/serve-static@^1.13.9": - version "1.13.9" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.9.tgz#aacf28a85a05ee29a11fb7c3ead935ac56f33e4e" - integrity sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA== +css-tree@^1.1.2, css-tree@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" + integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== dependencies: - "@types/mime" "^1" - "@types/node" "*" - -"@types/source-list-map@*": - version "0.1.2" - resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" - integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== + mdn-data "2.0.14" + source-map "^0.6.1" -"@types/stack-utils@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.0.tgz#7036640b4e21cc2f259ae826ce843d277dad8cff" - integrity sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw== +css-what@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" + integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== -"@types/strip-bom@^3.0.0": +cssesc@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/strip-bom/-/strip-bom-3.0.0.tgz#14a8ec3956c2e81edb7520790aecf21c290aebd2" - integrity sha1-FKjsOVbC6B7bdSB5CuzyHCkK69I= + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -"@types/strip-json-comments@0.0.30": - version "0.0.30" - resolved "https://registry.yarnpkg.com/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz#9aa30c04db212a9a0649d6ae6fd50accc40748a1" - integrity sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ== +cssnano-preset-default@^5.2.13: + version "5.2.13" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.2.13.tgz#e7353b0c57975d1bdd97ac96e68e5c1b8c68e990" + integrity sha512-PX7sQ4Pb+UtOWuz8A1d+Rbi+WimBIxJTRyBdgGp1J75VU0r/HFQeLnMYgHiCAp6AR4rqrc7Y4R+1Rjk3KJz6DQ== + dependencies: + css-declaration-sorter "^6.3.1" + cssnano-utils "^3.1.0" + postcss-calc "^8.2.3" + postcss-colormin "^5.3.0" + postcss-convert-values "^5.1.3" + postcss-discard-comments "^5.1.2" + postcss-discard-duplicates "^5.1.0" + postcss-discard-empty "^5.1.1" + postcss-discard-overridden "^5.1.0" + postcss-merge-longhand "^5.1.7" + postcss-merge-rules "^5.1.3" + postcss-minify-font-values "^5.1.0" + postcss-minify-gradients "^5.1.1" + postcss-minify-params "^5.1.4" + postcss-minify-selectors "^5.2.1" + postcss-normalize-charset "^5.1.0" + postcss-normalize-display-values "^5.1.0" + postcss-normalize-positions "^5.1.1" + postcss-normalize-repeat-style "^5.1.1" + postcss-normalize-string "^5.1.0" + postcss-normalize-timing-functions "^5.1.0" + postcss-normalize-unicode "^5.1.1" + postcss-normalize-url "^5.1.0" + postcss-normalize-whitespace "^5.1.1" + postcss-ordered-values "^5.1.3" + postcss-reduce-initial "^5.1.1" + postcss-reduce-transforms "^5.1.0" + postcss-svgo "^5.1.0" + postcss-unique-selectors "^5.1.1" + +cssnano-utils@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861" + integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== -"@types/tapable@*", "@types/tapable@^1.0.5": - version "1.0.6" - resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74" - integrity sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA== +cssnano@^5.1.14: + version "5.1.14" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.1.14.tgz#07b0af6da73641276fe5a6d45757702ebae2eb05" + integrity sha512-Oou7ihiTocbKqi0J1bB+TRJIQX5RMR3JghA8hcWSw9mjBLQ5Y3RWqEDoYG3sRNlAbCIXpqMoZGbq5KDR3vdzgw== + dependencies: + cssnano-preset-default "^5.2.13" + lilconfig "^2.0.3" + yaml "^1.10.2" -"@types/terser-webpack-plugin@^4.2.0": +csso@^4.2.0: version "4.2.0" - resolved "https://registry.yarnpkg.com/@types/terser-webpack-plugin/-/terser-webpack-plugin-4.2.0.tgz#fe39917d334287c5cf25abcf370867a31ed59cd6" - integrity sha512-oGfGZzjwKY7s8gAYLZJuVuu9GXuc/ACo7bL/DQg7ROFkEMFQULB1W7qZjQrTXf2SkTfQx7/zcerfuLkUCVFGhg== + resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" + integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== dependencies: - "@types/webpack" "*" - terser "^4.6.13" + css-tree "^1.1.2" -"@types/uglify-js@*": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.13.0.tgz#1cad8df1fb0b143c5aba08de5712ea9d1ff71124" - integrity sha512-EGkrJD5Uy+Pg0NUR8uA4bJ5WMfljyad0G+784vLCNUkD+QwOJXUbBYExXfVGf7YtyzdQp3L/XMYcliB987kL5Q== - dependencies: - source-map "^0.6.1" +csstype@^2.6.8: + version "2.6.21" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.21.tgz#2efb85b7cc55c80017c66a5ad7cbd931fda3a90e" + integrity sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w== -"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" - integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== +cuint@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cuint/-/cuint-0.2.2.tgz#408086d409550c2631155619e9fa7bcadc3b991b" + integrity sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw== -"@types/webpack-bundle-analyzer@^3.9.1": - version "3.9.1" - resolved "https://registry.yarnpkg.com/@types/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.9.1.tgz#27a8923a4e71c13ac5f043f34f12136d8c99cf8e" - integrity sha512-AmRIHpxByb9Hm7AZE1Ya0v6/Ek9t6MKBl/7l7ay+WeFqE6dedOJFL/7OuUzFxjUA+iDUM71yRNrzrkkq4pmX2A== - dependencies: - "@types/webpack" "*" +data-uri-to-buffer@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz#b5db46aea50f6176428ac05b73be39a57701a64b" + integrity sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA== -"@types/webpack-dev-middleware@^4.1.0": - version "4.1.0" - resolved "https://registry.yarnpkg.com/@types/webpack-dev-middleware/-/webpack-dev-middleware-4.1.0.tgz#3bf432f2ff2313b6470af21b748dd5d73dba5ec6" - integrity sha512-cG/RhZcpAmVCQi7sGMc7bFyYGA2Yzu/+pWxTJezs7z2asjGZJ7j+0/+t39AuxQQbEuABWgYAwolg/DysGEcLyA== +debug@2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: - "@types/connect" "*" - "@types/webpack" "*" + ms "2.0.0" -"@types/webpack-hot-middleware@^2.25.3": - version "2.25.3" - resolved "https://registry.yarnpkg.com/@types/webpack-hot-middleware/-/webpack-hot-middleware-2.25.3.tgz#ba6265ada359cae4f437d8ac08ac5b8c616f7521" - integrity sha512-zGkTzrwQnhSadIXGYGZLu7tpXQwn4+6y9nGeql+5UeRtW/k54Jp4SnzB0Qw00ednw0ZFoZOvqTFfXSbFXohc5Q== +debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: - "@types/connect" "*" - "@types/webpack" "*" + ms "2.1.2" -"@types/webpack-sources@*": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-2.1.0.tgz#8882b0bd62d1e0ce62f183d0d01b72e6e82e8c10" - integrity sha512-LXn/oYIpBeucgP1EIJbKQ2/4ZmpvRl+dlrFdX7+94SKRUV3Evy3FsfMZY318vGhkWUS5MPhtOM3w1/hCOAOXcg== +decode-named-character-reference@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz#daabac9690874c394c81e4162a0304b35d824f0e" + integrity sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg== dependencies: - "@types/node" "*" - "@types/source-list-map" "*" - source-map "^0.7.3" + character-entities "^2.0.0" -"@types/webpack@*", "@types/webpack@^4.41.26", "@types/webpack@^4.41.8": - version "4.41.26" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.26.tgz#27a30d7d531e16489f9c7607c747be6bc1a459ef" - integrity sha512-7ZyTfxjCRwexh+EJFwRUM+CDB2XvgHl4vfuqf1ZKrgGvcS5BrNvPQqJh3tsZ0P6h6Aa1qClVHaJZszLPzpqHeA== - dependencies: - "@types/anymatch" "*" - "@types/node" "*" - "@types/tapable" "*" - "@types/uglify-js" "*" - "@types/webpack-sources" "*" - source-map "^0.6.0" +deepmerge@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" + integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== -"@types/xml2js@^0.4.8": - version "0.4.8" - resolved "https://registry.yarnpkg.com/@types/xml2js/-/xml2js-0.4.8.tgz#84c120c864a5976d0b5cf2f930a75d850fc2b03a" - integrity sha512-EyvT83ezOdec7BhDaEcsklWy7RSIdi6CNe95tmOAK0yx/Lm30C9K75snT3fYayK59ApC2oyW+rcHErdG05FHJA== +defaults@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" + integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A== dependencies: - "@types/node" "*" + clone "^1.0.2" -"@types/yargs-parser@*": - version "20.2.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.0.tgz#dd3e6699ba3237f0348cd085e4698780204842f9" - integrity sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA== - -"@types/yargs@^15.0.0": - version "15.0.13" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.13.tgz#34f7fec8b389d7f3c1fd08026a5763e072d3c6dc" - integrity sha512-kQ5JNTrbDv3Rp5X2n/iUu37IJBDU2gsZ5R/g1/KHOOEc5IKfUFjXT6DENPGduh08I/pamwtEq4oul7gUqKTQDQ== - dependencies: - "@types/yargs-parser" "*" - -"@typescript-eslint/eslint-plugin@^4.16.1": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.19.0.tgz#56f8da9ee118fe9763af34d6a526967234f6a7f0" - integrity sha512-CRQNQ0mC2Pa7VLwKFbrGVTArfdVDdefS+gTw0oC98vSI98IX5A8EVH4BzJ2FOB0YlCmm8Im36Elad/Jgtvveaw== - dependencies: - "@typescript-eslint/experimental-utils" "4.19.0" - "@typescript-eslint/scope-manager" "4.19.0" - debug "^4.1.1" - functional-red-black-tree "^1.0.1" - lodash "^4.17.15" - regexpp "^3.0.0" - semver "^7.3.2" - tsutils "^3.17.1" - -"@typescript-eslint/experimental-utils@4.19.0", "@typescript-eslint/experimental-utils@^4.0.1": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.19.0.tgz#9ca379919906dc72cb0fcd817d6cb5aa2d2054c6" - integrity sha512-9/23F1nnyzbHKuoTqFN1iXwN3bvOm/PRIXSBR3qFAYotK/0LveEOHr5JT1WZSzcD6BESl8kPOG3OoDRKO84bHA== - dependencies: - "@types/json-schema" "^7.0.3" - "@typescript-eslint/scope-manager" "4.19.0" - "@typescript-eslint/types" "4.19.0" - "@typescript-eslint/typescript-estree" "4.19.0" - eslint-scope "^5.0.0" - eslint-utils "^2.0.0" - -"@typescript-eslint/parser@^4.16.1": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.19.0.tgz#4ae77513b39f164f1751f21f348d2e6cb2d11128" - integrity sha512-/uabZjo2ZZhm66rdAu21HA8nQebl3lAIDcybUoOxoI7VbZBYavLIwtOOmykKCJy+Xq6Vw6ugkiwn8Js7D6wieA== - dependencies: - "@typescript-eslint/scope-manager" "4.19.0" - "@typescript-eslint/types" "4.19.0" - "@typescript-eslint/typescript-estree" "4.19.0" - debug "^4.1.1" - -"@typescript-eslint/scope-manager@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.19.0.tgz#5e0b49eca4df7684205d957c9856f4e720717a4f" - integrity sha512-GGy4Ba/hLXwJXygkXqMzduqOMc+Na6LrJTZXJWVhRrSuZeXmu8TAnniQVKgj8uTRKe4igO2ysYzH+Np879G75g== - dependencies: - "@typescript-eslint/types" "4.19.0" - "@typescript-eslint/visitor-keys" "4.19.0" - -"@typescript-eslint/types@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.19.0.tgz#5181d5d2afd02e5b8f149ebb37ffc8bd7b07a568" - integrity sha512-A4iAlexVvd4IBsSTNxdvdepW0D4uR/fwxDrKUa+iEY9UWvGREu2ZyB8ylTENM1SH8F7bVC9ac9+si3LWNxcBuA== - -"@typescript-eslint/typescript-estree@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.19.0.tgz#8a709ffa400284ab72df33376df085e2e2f61147" - integrity sha512-3xqArJ/A62smaQYRv2ZFyTA+XxGGWmlDYrsfZG68zJeNbeqRScnhf81rUVa6QG4UgzHnXw5VnMT5cg75dQGDkA== - dependencies: - "@typescript-eslint/types" "4.19.0" - "@typescript-eslint/visitor-keys" "4.19.0" - debug "^4.1.1" - globby "^11.0.1" - is-glob "^4.0.1" - semver "^7.3.2" - tsutils "^3.17.1" +define-lazy-prop@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" + integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -"@typescript-eslint/visitor-keys@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.19.0.tgz#cbea35109cbd9b26e597644556be4546465d8f7f" - integrity sha512-aGPS6kz//j7XLSlgpzU2SeTqHPsmRYxFztj2vPuMMFJXZudpRSehE3WCV+BaxwZFvfAqMoSd86TEuM0PQ59E/A== - dependencies: - "@typescript-eslint/types" "4.19.0" - eslint-visitor-keys "^2.0.0" +defined@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.1.tgz#c0b9db27bfaffd95d6f61399419b893df0f91ebf" + integrity sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q== -"@vue/babel-helper-vue-jsx-merge-props@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.2.1.tgz#31624a7a505fb14da1d58023725a4c5f270e6a81" - integrity sha512-QOi5OW45e2R20VygMSNhyQHvpdUwQZqGPc748JLGCYEy+yp8fNFNdbNIGAgZmi9e+2JHPd6i6idRuqivyicIkA== +defu@^6.0.0, defu@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/defu/-/defu-6.1.1.tgz#a12c712349197c545dc61d3cd3b607b4cc7ef0c1" + integrity sha512-aA964RUCsBt0FGoNIlA3uFgo2hO+WWC0fiC6DBps/0SFzkKcYoM/3CzVLIa5xSsrFjdioMdYgAIbwo80qp2MoA== -"@vue/babel-plugin-transform-vue-jsx@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@vue/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-1.2.1.tgz#646046c652c2f0242727f34519d917b064041ed7" - integrity sha512-HJuqwACYehQwh1fNT8f4kyzqlNMpBuUK4rSiSES5D4QsYncv5fxFsLyrxFPG2ksO7t5WP+Vgix6tt6yKClwPzA== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.2.0" - "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" - html-tags "^2.0.0" - lodash.kebabcase "^4.1.1" - svg-tags "^1.0.0" +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== -"@vue/babel-preset-jsx@^1.2.4": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@vue/babel-preset-jsx/-/babel-preset-jsx-1.2.4.tgz#92fea79db6f13b01e80d3a0099e2924bdcbe4e87" - integrity sha512-oRVnmN2a77bYDJzeGSt92AuHXbkIxbf/XXSE3klINnh9AXBmVS1DGa1f0d+dDYpLfsAKElMnqKTQfKn7obcL4w== - dependencies: - "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" - "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" - "@vue/babel-sugar-composition-api-inject-h" "^1.2.1" - "@vue/babel-sugar-composition-api-render-instance" "^1.2.4" - "@vue/babel-sugar-functional-vue" "^1.2.2" - "@vue/babel-sugar-inject-h" "^1.2.2" - "@vue/babel-sugar-v-model" "^1.2.3" - "@vue/babel-sugar-v-on" "^1.2.3" - -"@vue/babel-sugar-composition-api-inject-h@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@vue/babel-sugar-composition-api-inject-h/-/babel-sugar-composition-api-inject-h-1.2.1.tgz#05d6e0c432710e37582b2be9a6049b689b6f03eb" - integrity sha512-4B3L5Z2G+7s+9Bwbf+zPIifkFNcKth7fQwekVbnOA3cr3Pq71q71goWr97sk4/yyzH8phfe5ODVzEjX7HU7ItQ== - dependencies: - "@babel/plugin-syntax-jsx" "^7.2.0" +denque@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/denque/-/denque-2.1.0.tgz#e93e1a6569fb5e66f16a3c2a2964617d349d6ab1" + integrity sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw== -"@vue/babel-sugar-composition-api-render-instance@^1.2.4": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@vue/babel-sugar-composition-api-render-instance/-/babel-sugar-composition-api-render-instance-1.2.4.tgz#e4cbc6997c344fac271785ad7a29325c51d68d19" - integrity sha512-joha4PZznQMsxQYXtR3MnTgCASC9u3zt9KfBxIeuI5g2gscpTsSKRDzWQt4aqNIpx6cv8On7/m6zmmovlNsG7Q== - dependencies: - "@babel/plugin-syntax-jsx" "^7.2.0" +depd@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -"@vue/babel-sugar-functional-vue@^1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@vue/babel-sugar-functional-vue/-/babel-sugar-functional-vue-1.2.2.tgz#267a9ac8d787c96edbf03ce3f392c49da9bd2658" - integrity sha512-JvbgGn1bjCLByIAU1VOoepHQ1vFsroSA/QkzdiSs657V79q6OwEWLCQtQnEXD/rLTA8rRit4rMOhFpbjRFm82w== - dependencies: - "@babel/plugin-syntax-jsx" "^7.2.0" +dequal@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== -"@vue/babel-sugar-inject-h@^1.2.2": +destr@^1.2.0, destr@^1.2.1: version "1.2.2" - resolved "https://registry.yarnpkg.com/@vue/babel-sugar-inject-h/-/babel-sugar-inject-h-1.2.2.tgz#d738d3c893367ec8491dcbb669b000919293e3aa" - integrity sha512-y8vTo00oRkzQTgufeotjCLPAvlhnpSkcHFEp60+LJUwygGcd5Chrpn5480AQp/thrxVm8m2ifAk0LyFel9oCnw== - dependencies: - "@babel/plugin-syntax-jsx" "^7.2.0" - -"@vue/babel-sugar-v-model@^1.2.3": - version "1.2.3" - resolved "https://registry.yarnpkg.com/@vue/babel-sugar-v-model/-/babel-sugar-v-model-1.2.3.tgz#fa1f29ba51ebf0aa1a6c35fa66d539bc459a18f2" - integrity sha512-A2jxx87mySr/ulAsSSyYE8un6SIH0NWHiLaCWpodPCVOlQVODCaSpiR4+IMsmBr73haG+oeCuSvMOM+ttWUqRQ== - dependencies: - "@babel/plugin-syntax-jsx" "^7.2.0" - "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" - "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" - camelcase "^5.0.0" - html-tags "^2.0.0" - svg-tags "^1.0.0" + resolved "https://registry.yarnpkg.com/destr/-/destr-1.2.2.tgz#7ba9befcafb645a50e76b260449c63927b51e22f" + integrity sha512-lrbCJwD9saUQrqUfXvl6qoM+QN3W7tLV5pAOs+OqOmopCCz/JkE05MHedJR1xfk4IAnZuJXPVuN5+7jNA2ZCiA== -"@vue/babel-sugar-v-on@^1.2.3": - version "1.2.3" - resolved "https://registry.yarnpkg.com/@vue/babel-sugar-v-on/-/babel-sugar-v-on-1.2.3.tgz#342367178586a69f392f04bfba32021d02913ada" - integrity sha512-kt12VJdz/37D3N3eglBywV8GStKNUhNrsxChXIV+o0MwVXORYuhDTHJRKPgLJRb/EY3vM2aRFQdxJBp9CLikjw== - dependencies: - "@babel/plugin-syntax-jsx" "^7.2.0" - "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" - camelcase "^5.0.0" +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== -"@vue/component-compiler-utils@^3.1.0": - version "3.2.0" - resolved "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-3.2.0.tgz#8f85182ceed28e9b3c75313de669f83166d11e5d" - integrity sha512-lejBLa7xAMsfiZfNp7Kv51zOzifnb29FwdnMLa96z26kXErPFioSf9BMcePVIQ6/Gc6/mC0UrPpxAWIHyae0vw== - dependencies: - consolidate "^0.15.1" - hash-sum "^1.0.2" - lru-cache "^4.1.2" - merge-source-map "^1.1.0" - postcss "^7.0.14" - postcss-selector-parser "^6.0.2" - source-map "~0.6.1" - vue-template-es2015-compiler "^1.9.0" - optionalDependencies: - prettier "^1.18.2" +detab@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/detab/-/detab-3.0.2.tgz#b9909b52881badd598f653c5e4fcc7c94b158474" + integrity sha512-7Bp16Bk8sk0Y6gdXiCtnpGbghn8atnTJdd/82aWvS5ESnlcNvgUc10U2NYS0PAiDSGjWiI8qs/Cv1b2uSGdQ8w== -"@vue/test-utils@^1.1.3": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@vue/test-utils/-/test-utils-1.1.3.tgz#747f5683d8d4633c85a385fe2e02c1bb35bec153" - integrity sha512-BAY1Cwe9JpkJseimC295EW3YlAmgIJI9OPkg2FSP62+PHZooB0B+wceDi9TYyU57oqzL0yLbcP73JKFpKiLc9A== - dependencies: - dom-event-types "^1.0.0" - lodash "^4.17.15" - pretty "^2.0.0" +detect-libc@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" + integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== -"@webassemblyjs/ast@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" - integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== +detective@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/detective/-/detective-5.2.1.tgz#6af01eeda11015acb0e73f933242b70f24f91034" + integrity sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw== dependencies: - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/wast-parser" "1.9.0" - -"@webassemblyjs/floating-point-hex-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" - integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== + acorn-node "^1.8.2" + defined "^1.0.0" + minimist "^1.2.6" -"@webassemblyjs/helper-api-error@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" - integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== +didyoumean@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" + integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== -"@webassemblyjs/helper-buffer@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" - integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== +diff@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.1.0.tgz#bc52d298c5ea8df9194800224445ed43ffc87e40" + integrity sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw== -"@webassemblyjs/helper-code-frame@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" - integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: - "@webassemblyjs/wast-printer" "1.9.0" + path-type "^4.0.0" -"@webassemblyjs/helper-fsm@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" - integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== +dlv@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" + integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== -"@webassemblyjs/helper-module-context@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" - integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== +dom-serializer@^1.0.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" + integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== dependencies: - "@webassemblyjs/ast" "1.9.0" + domelementtype "^2.0.1" + domhandler "^4.2.0" + entities "^2.0.0" -"@webassemblyjs/helper-wasm-bytecode@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" - integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== +domelementtype@^2.0.1, domelementtype@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== -"@webassemblyjs/helper-wasm-section@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" - integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== +domhandler@^4.2.0, domhandler@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" + integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" + domelementtype "^2.2.0" -"@webassemblyjs/ieee754@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" - integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== +domutils@^2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== dependencies: - "@xtuc/ieee754" "^1.2.0" + dom-serializer "^1.0.1" + domelementtype "^2.2.0" + domhandler "^4.2.0" -"@webassemblyjs/leb128@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" - integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== +dot-prop@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-7.2.0.tgz#468172a3529779814d21a779c1ba2f6d76609809" + integrity sha512-Ol/IPXUARn9CSbkrdV4VJo7uCy1I3VuSiWCaFSg+8BdUOzF9n3jefIpcgAydvUZbTdEBZs2vEiTiS9m61ssiDA== dependencies: - "@xtuc/long" "4.2.2" + type-fest "^2.11.2" -"@webassemblyjs/utf8@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" - integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== - -"@webassemblyjs/wasm-edit@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" - integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/helper-wasm-section" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/wasm-opt" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - "@webassemblyjs/wast-printer" "1.9.0" - -"@webassemblyjs/wasm-gen@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" - integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/ieee754" "1.9.0" - "@webassemblyjs/leb128" "1.9.0" - "@webassemblyjs/utf8" "1.9.0" +dotenv@^16.0.3: + version "16.0.3" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.3.tgz#115aec42bac5053db3c456db30cc243a5a836a07" + integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ== -"@webassemblyjs/wasm-opt@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" - integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" +duplexer@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== -"@webassemblyjs/wasm-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" - integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-api-error" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/ieee754" "1.9.0" - "@webassemblyjs/leb128" "1.9.0" - "@webassemblyjs/utf8" "1.9.0" +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== -"@webassemblyjs/wast-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" - integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/floating-point-hex-parser" "1.9.0" - "@webassemblyjs/helper-api-error" "1.9.0" - "@webassemblyjs/helper-code-frame" "1.9.0" - "@webassemblyjs/helper-fsm" "1.9.0" - "@xtuc/long" "4.2.2" +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -"@webassemblyjs/wast-printer@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" - integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/wast-parser" "1.9.0" - "@xtuc/long" "4.2.2" +electron-to-chromium@^1.4.251: + version "1.4.284" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592" + integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA== -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== -"@xtuc/long@4.2.2": - version "4.2.2" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" - integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== -abab@^2.0.3, abab@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" - integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== +emoticon@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/emoticon/-/emoticon-4.0.1.tgz#2d2bbbf231ce3a5909e185bbb64a9da703a1e749" + integrity sha512-dqx7eA9YaqyvYtUhJwT4rC1HIp82j5ybS1/vQ42ur+jBe17dJMwZE4+gvL1XadSFfxaPFFGt3Xsw+Y8akThDlw== -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== -accepts@^1.3.5, accepts@~1.3.5: - version "1.3.7" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" - integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== +end-of-stream@^1.4.1: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: - mime-types "~2.1.24" - negotiator "0.6.2" + once "^1.4.0" -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== +engine.io-client@~6.2.3: + version "6.2.3" + resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-6.2.3.tgz#a8cbdab003162529db85e9de31575097f6d29458" + integrity sha512-aXPtgF1JS3RuuKcpSrBtimSjYvrbhKW9froICH4s0F3XQWLxsKNxqzG39nnvQZQnva4CMvUK63T7shevxRyYHw== dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" + "@socket.io/component-emitter" "~3.1.0" + debug "~4.3.1" + engine.io-parser "~5.0.3" + ws "~8.2.3" + xmlhttprequest-ssl "~2.0.0" -acorn-jsx@^5.2.0, acorn-jsx@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" - integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== +engine.io-parser@~5.0.3: + version "5.0.4" + resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-5.0.4.tgz#0b13f704fa9271b3ec4f33112410d8f3f41d0fc0" + integrity sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg== -acorn-node@^1.6.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8" - integrity sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== +enhanced-resolve@^4.1.1: + version "4.5.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" + integrity sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg== dependencies: - acorn "^7.0.0" - acorn-walk "^7.0.0" - xtend "^4.0.2" - -acorn-walk@^7.0.0, acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - -acorn-walk@^8.0.0: - version "8.0.2" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.0.2.tgz#d4632bfc63fd93d0f15fd05ea0e984ffd3f5a8c3" - integrity sha512-+bpA9MJsHdZ4bgfDcpk0ozQyhhVct7rzOmO0s1IIr0AGGgKBljss8n2zp11rRP2wid5VGeh04CgeKzgat5/25A== - -acorn@^6.4.1: - version "6.4.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" - integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== - -acorn@^7.0.0, acorn@^7.1.1, acorn@^7.4.0: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.0.4, acorn@^8.0.5: - version "8.1.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.1.0.tgz#52311fd7037ae119cbb134309e901aa46295b3fe" - integrity sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA== + graceful-fs "^4.1.2" + memory-fs "^0.5.0" + tapable "^1.0.0" -aggregate-error@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" - integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== +enhanced-resolve@^5.10.0: + version "5.12.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz#300e1c90228f5b570c4d35babf263f6da7155634" + integrity sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ== dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - -ajv-errors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" - integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== - -ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: - version "3.5.2" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" - integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== + graceful-fs "^4.2.4" + tapable "^2.2.0" -ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== -ajv@^7.0.2: - version "7.2.3" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-7.2.3.tgz#ca78d1cf458d7d36d1c3fa0794dd143406db5772" - integrity sha512-idv5WZvKVXDqKralOImQgPM9v6WOdLNa0IY3B3doOjw/YxRGT8I+allIJ6kd7Uaj+SF1xZUSU+nPM5aDNBVtnw== +errno@^0.1.3: + version "0.1.8" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" + integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" + prr "~1.0.1" -alphanum-sort@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= +esbuild-android-64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.15.18.tgz#20a7ae1416c8eaade917fb2453c1259302c637a5" + integrity sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA== + +esbuild-android-arm64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.15.18.tgz#9cc0ec60581d6ad267568f29cf4895ffdd9f2f04" + integrity sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ== + +esbuild-darwin-64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.15.18.tgz#428e1730ea819d500808f220fbc5207aea6d4410" + integrity sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg== + +esbuild-darwin-arm64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.18.tgz#b6dfc7799115a2917f35970bfbc93ae50256b337" + integrity sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA== + +esbuild-freebsd-64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.18.tgz#4e190d9c2d1e67164619ae30a438be87d5eedaf2" + integrity sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA== + +esbuild-freebsd-arm64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.18.tgz#18a4c0344ee23bd5a6d06d18c76e2fd6d3f91635" + integrity sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA== + +esbuild-linux-32@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.15.18.tgz#9a329731ee079b12262b793fb84eea762e82e0ce" + integrity sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg== + +esbuild-linux-64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.15.18.tgz#532738075397b994467b514e524aeb520c191b6c" + integrity sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw== + +esbuild-linux-arm64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.18.tgz#5372e7993ac2da8f06b2ba313710d722b7a86e5d" + integrity sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug== + +esbuild-linux-arm@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.15.18.tgz#e734aaf259a2e3d109d4886c9e81ec0f2fd9a9cc" + integrity sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA== + +esbuild-linux-mips64le@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.18.tgz#c0487c14a9371a84eb08fab0e1d7b045a77105eb" + integrity sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ== + +esbuild-linux-ppc64le@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.18.tgz#af048ad94eed0ce32f6d5a873f7abe9115012507" + integrity sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w== + +esbuild-linux-riscv64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.18.tgz#423ed4e5927bd77f842bd566972178f424d455e6" + integrity sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg== + +esbuild-linux-s390x@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.18.tgz#21d21eaa962a183bfb76312e5a01cc5ae48ce8eb" + integrity sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ== + +esbuild-netbsd-64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.18.tgz#ae75682f60d08560b1fe9482bfe0173e5110b998" + integrity sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg== + +esbuild-openbsd-64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.18.tgz#79591a90aa3b03e4863f93beec0d2bab2853d0a8" + integrity sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ== + +esbuild-sunos-64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.15.18.tgz#fd528aa5da5374b7e1e93d36ef9b07c3dfed2971" + integrity sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw== + +esbuild-windows-32@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.15.18.tgz#0e92b66ecdf5435a76813c4bc5ccda0696f4efc3" + integrity sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ== + +esbuild-windows-64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.15.18.tgz#0fc761d785414284fc408e7914226d33f82420d0" + integrity sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw== + +esbuild-windows-arm64@0.15.18: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.18.tgz#5b5bdc56d341d0922ee94965c89ee120a6a86eb7" + integrity sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ== + +esbuild@^0.15.14, esbuild@^0.15.9: + version "0.15.18" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.15.18.tgz#ea894adaf3fbc036d32320a00d4d6e4978a2f36d" + integrity sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q== + optionalDependencies: + "@esbuild/android-arm" "0.15.18" + "@esbuild/linux-loong64" "0.15.18" + esbuild-android-64 "0.15.18" + esbuild-android-arm64 "0.15.18" + esbuild-darwin-64 "0.15.18" + esbuild-darwin-arm64 "0.15.18" + esbuild-freebsd-64 "0.15.18" + esbuild-freebsd-arm64 "0.15.18" + esbuild-linux-32 "0.15.18" + esbuild-linux-64 "0.15.18" + esbuild-linux-arm "0.15.18" + esbuild-linux-arm64 "0.15.18" + esbuild-linux-mips64le "0.15.18" + esbuild-linux-ppc64le "0.15.18" + esbuild-linux-riscv64 "0.15.18" + esbuild-linux-s390x "0.15.18" + esbuild-netbsd-64 "0.15.18" + esbuild-openbsd-64 "0.15.18" + esbuild-sunos-64 "0.15.18" + esbuild-windows-32 "0.15.18" + esbuild-windows-64 "0.15.18" + esbuild-windows-arm64 "0.15.18" -ansi-align@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" - integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== - dependencies: - string-width "^3.0.0" +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== -ansi-escapes@^4.2.1: - version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" - integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== - dependencies: - type-fest "^0.21.3" +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= +escape-string-regexp@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" + integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= +estree-walker@2.0.2, estree-walker@^2.0.1, estree-walker@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" + integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= +estree-walker@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.1.tgz#c2a9fb4a30232f5039b7c030b37ead691932debd" + integrity sha512-woY0RUD87WzMBUiZLx8NsYr23N5BKsOMZHhu2hoNRVh6NXGfoiT1KOL8G3UHlJAnEDGmfa5ubNA/AacfG+Kb0g== -ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== +etag@^1.8.1, etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -any-promise@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" - integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -anymatch@^3.0.3, anymatch@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" - integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -arg@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.0.tgz#a20e2bb5710e82950a516b3f933fee5ed478be90" - integrity sha512-4P8Zm2H+BRS+c/xX1LrHw0qKpEhdlZjLCgWy+d78T9vqa2Z2SiD2wMrYuWIAFy5IZUD7nnNXroRttz+0RzlrzQ== +eventemitter3@^4.0.0: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== +execa@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== dependencies: - sprintf-js "~1.0.2" - -argparse@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" - integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== +extend@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -arr-union@^3.1.0: +external-editor@^3.0.3: version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - -array-includes@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.3.tgz#c7f619b382ad2afaf5326cddfdc0afc61af7690a" - integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.2" - get-intrinsic "^1.1.1" - is-string "^1.0.5" - -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - -array.prototype.flat@^1.2.3: - version "1.2.4" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz#6ef638b43312bd401b4c6199fdec7e2dc9e9a123" - integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== - dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.1" - -arrify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" - integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== - -asn1.js@^5.2.0: - version "5.4.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" - integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - safer-buffer "^2.1.0" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assert@^1.1.1: - version "1.5.0" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" - integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA== - dependencies: - object-assign "^4.1.1" - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - -astral-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" - integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== - -async-each@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" - integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== - -async@^2.6.2: - version "2.6.3" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" - integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: - lodash "^4.17.14" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + chardet "^0.7.0" + iconv-lite "^0.4.24" + tmp "^0.0.33" -at-least-node@^1.0.0: +externality@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -autoprefixer@^10.2.5: - version "10.2.5" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.2.5.tgz#096a0337dbc96c0873526d7fef5de4428d05382d" - integrity sha512-7H4AJZXvSsn62SqZyJCP+1AWwOuoYpUfK6ot9vm0e87XD6mT8lDywc9D9OTJPMULyGcvmIxzTAMeG2Cc+YX+fA== - dependencies: - browserslist "^4.16.3" - caniuse-lite "^1.0.30001196" - colorette "^1.2.2" - fraction.js "^4.0.13" - normalize-range "^0.1.2" - postcss-value-parser "^4.1.0" - -autoprefixer@^9, autoprefixer@^9.6.1: - version "9.8.6" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.6.tgz#3b73594ca1bf9266320c5acf1588d74dea74210f" - integrity sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg== - dependencies: - browserslist "^4.12.0" - caniuse-lite "^1.0.30001109" - colorette "^1.2.1" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.32" - postcss-value-parser "^4.1.0" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" - integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== - -axios-retry@^3.1.9: - version "3.1.9" - resolved "https://registry.yarnpkg.com/axios-retry/-/axios-retry-3.1.9.tgz#6c30fc9aeb4519aebaec758b90ef56fa03fe72e8" - integrity sha512-NFCoNIHq8lYkJa6ku4m+V1837TP6lCa7n79Iuf8/AqATAHYB0ISaAS1eyIenDOfHOLtym34W65Sjke2xjg2fsA== - dependencies: - is-retry-allowed "^1.1.0" - -axios@^0.21.1: - version "0.21.1" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8" - integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA== - dependencies: - follow-redirects "^1.10.0" - -babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@7.0.0-bridge.0: - version "7.0.0-bridge.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" - integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== - -babel-eslint@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232" - integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" - eslint-visitor-keys "^1.0.0" - resolve "^1.12.0" - -babel-jest@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" - integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== - dependencies: - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/babel__core" "^7.1.7" - babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.6.2" - chalk "^4.0.0" - graceful-fs "^4.2.4" - slash "^3.0.0" - -babel-loader@^8.2.2: - version "8.2.2" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.2.tgz#9363ce84c10c9a40e6c753748e1441b60c8a0b81" - integrity sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g== + resolved "https://registry.yarnpkg.com/externality/-/externality-1.0.0.tgz#8e116aab414a4e11ff5e9aaf31617dd5e56cb069" + integrity sha512-MAU9ci3XdpqOX1aoIoyL2DMzW97P8LYeJxIUkfXhOfsrkH4KLHFaYDwKN0B2l6tqedVJWiTIJtWmxmZfa05vOQ== dependencies: - find-cache-dir "^3.3.1" - loader-utils "^1.4.0" - make-dir "^3.1.0" - schema-utils "^2.6.5" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-dynamic-import-node@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" - integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== - dependencies: - object.assign "^4.1.0" - -babel-plugin-istanbul@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765" - integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@istanbuljs/load-nyc-config" "^1.0.0" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-instrument "^4.0.0" - test-exclude "^6.0.0" + enhanced-resolve "^5.10.0" + mlly "^1.0.0" + pathe "^1.0.0" + ufo "^1.0.0" -babel-plugin-jest-hoist@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" - integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.0.0" - "@types/babel__traverse" "^7.0.6" - -babel-plugin-polyfill-corejs2@^0.1.4: - version "0.1.10" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.1.10.tgz#a2c5c245f56c0cac3dbddbf0726a46b24f0f81d1" - integrity sha512-DO95wD4g0A8KRaHKi0D51NdGXzvpqVLnLu5BTvDlpqUEpTmeEtypgC1xqesORaWmiUOQI14UHKlzNd9iZ2G3ZA== - dependencies: - "@babel/compat-data" "^7.13.0" - "@babel/helper-define-polyfill-provider" "^0.1.5" - semver "^6.1.1" - -babel-plugin-polyfill-corejs3@^0.1.3: - version "0.1.7" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.7.tgz#80449d9d6f2274912e05d9e182b54816904befd0" - integrity sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw== +fast-glob@^3.2.11, fast-glob@^3.2.12, fast-glob@^3.2.7: + version "3.2.12" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" + integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== dependencies: - "@babel/helper-define-polyfill-provider" "^0.1.5" - core-js-compat "^3.8.1" + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" -babel-plugin-polyfill-regenerator@^0.1.2: - version "0.1.6" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.1.6.tgz#0fe06a026fe0faa628ccc8ba3302da0a6ce02f3f" - integrity sha512-OUrYG9iKPKz8NxswXbRAdSwF0GhRdIEMTloQATJi4bDuFqrXaXcCUT/VGNrr8pBcjMh1RxZ7Xt9cytVJTJfvMg== +fastq@^1.6.0: + version "1.14.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.14.0.tgz#107f69d7295b11e0fccc264e1fc6389f623731ce" + integrity sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg== dependencies: - "@babel/helper-define-polyfill-provider" "^0.1.5" + reusify "^1.0.4" -babel-plugin-transform-es2015-modules-commonjs@^6.26.0: - version "6.26.2" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3" - integrity sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q== +fetch-blob@^3.1.2, fetch-blob@^3.1.4: + version "3.2.0" + resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9" + integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ== dependencies: - babel-plugin-transform-strict-mode "^6.24.1" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-types "^6.26.0" + node-domexception "^1.0.0" + web-streams-polyfill "^3.0.3" -babel-plugin-transform-strict-mode@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - integrity sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= +figures@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-5.0.0.tgz#126cd055052dea699f8a54e8c9450e6ecfc44d5f" + integrity sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg== dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-preset-current-node-syntax@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" - integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== - dependencies: - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-bigint" "^7.8.3" - "@babel/plugin-syntax-class-properties" "^7.8.3" - "@babel/plugin-syntax-import-meta" "^7.8.3" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.8.3" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-top-level-await" "^7.8.3" - -babel-preset-jest@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" - integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== - dependencies: - babel-plugin-jest-hoist "^26.6.2" - babel-preset-current-node-syntax "^1.0.0" - -babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.24.1, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - -bail@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" - integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== + escape-string-regexp "^5.0.0" + is-unicode-supported "^1.2.0" -balanced-match@^1.0.0: +file-uri-to-path@1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -base64-js@^1.0.2, base64-js@^1.3.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" - integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: - tweetnacl "^0.14.3" - -big.js@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" - integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== + to-regex-range "^5.0.1" -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== -binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== +follow-redirects@^1.0.0: + version "1.15.2" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" + integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== +formdata-polyfill@^4.0.10: + version "4.0.10" + resolved "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz#24807c31c9d402e002ab3d8c720144ceb8848423" + integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g== dependencies: - file-uri-to-path "1.0.0" - -bluebird@^3.1.1, bluebird@^3.5.1, bluebird@^3.5.5: - version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== + fetch-blob "^3.1.2" -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: - version "4.12.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" - integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== +fraction.js@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.2.0.tgz#448e5109a313a3527f5a3ab2119ec4cf0e0e2950" + integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA== -bn.js@^5.0.0, bn.js@^5.1.1: - version "5.2.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" - integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== -boolbase@^1.0.0, boolbase@~1.0.0: +fs-constants@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -boxen@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.0.0.tgz#64fe9b16066af815f51057adcc800c3730120854" - integrity sha512-5bvsqw+hhgUi3oYGK0Vf4WpIkyemp60WBInn7+WNfoISzAqk/HX4L7WNROq38E6UR/y3YADpv6pEm4BfkeEAdA== - dependencies: - ansi-align "^3.0.0" - camelcase "^6.2.0" - chalk "^4.1.0" - cli-boxes "^2.2.1" - string-width "^4.2.0" - type-fest "^0.20.2" - widest-line "^3.1.0" - wrap-ansi "^7.0.0" + resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" + integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^2.3.1, braces@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -braces@^3.0.1, braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== +fs-extra@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== dependencies: - fill-range "^7.0.1" - -brorand@^1.0.1, brorand@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= - -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" -browserify-aes@^1.0.0, browserify-aes@^1.0.4: +fs-memo@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" - integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== - dependencies: - bn.js "^5.0.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" - integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== - dependencies: - bn.js "^5.1.1" - browserify-rsa "^4.0.1" - create-hash "^1.2.0" - create-hmac "^1.1.7" - elliptic "^6.5.3" - inherits "^2.0.4" - parse-asn1 "^5.1.5" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" + resolved "https://registry.yarnpkg.com/fs-memo/-/fs-memo-1.2.0.tgz#a2ec3be606b902077adbb37ec529c5ec5fb2e037" + integrity sha512-YEexkCpL4j03jn5SxaMHqcO6IuWuqm8JFUYhyCep7Ao89JIYmB8xoKhK7zXXJ9cCaNXpyNH5L3QtAmoxjoHW2w== -browserslist@*, browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.14.5, browserslist@^4.16.3, browserslist@^4.6.4: - version "4.16.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.3.tgz#340aa46940d7db878748567c5dea24a48ddf3717" - integrity sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw== +fs-minipass@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== dependencies: - caniuse-lite "^1.0.30001181" - colorette "^1.2.1" - electron-to-chromium "^1.3.649" - escalade "^3.1.1" - node-releases "^1.1.70" + minipass "^3.0.0" -bs-logger@0.x: - version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" - integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== - dependencies: - fast-json-stable-stringify "2.x" +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -bser@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" - integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== - dependencies: - node-int64 "^0.4.0" +fsevents@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== -buffer-from@1.x, buffer-from@^1.0.0: +function-bind@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-json@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/buffer-json/-/buffer-json-2.0.0.tgz#f73e13b1e42f196fe2fd67d001c7d7107edd7c23" - integrity sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw== - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= - -buffer@^4.3.0: - version "4.9.2" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" - integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -buffer@^5.1.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" - integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== - dependencies: - base64-js "^1.3.1" - ieee754 "^1.1.13" - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - -bytes@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" - integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== - -cacache@^12.0.2: - version "12.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" - integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== - dependencies: - bluebird "^3.5.5" - chownr "^1.1.1" - figgy-pudding "^3.5.1" - glob "^7.1.4" - graceful-fs "^4.1.15" - infer-owner "^1.0.3" - lru-cache "^5.1.1" - mississippi "^3.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.3" - ssri "^6.0.1" - unique-filename "^1.1.1" - y18n "^4.0.0" - -cacache@^15.0.5: - version "15.0.6" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.6.tgz#65a8c580fda15b59150fb76bf3f3a8e45d583099" - integrity sha512-g1WYDMct/jzW+JdWEyjaX2zoBkZ6ZT9VpOyp2I/VMtDsNLffNat3kqPFfi1eDRSK9/SuKGyORDHcQMcPF8sQ/w== - dependencies: - "@npmcli/move-file" "^1.0.1" - chownr "^2.0.0" - fs-minipass "^2.0.0" - glob "^7.1.4" - infer-owner "^1.0.4" - lru-cache "^6.0.0" - minipass "^3.1.1" - minipass-collect "^1.0.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.2" - mkdirp "^1.0.3" - p-map "^4.0.0" - promise-inflight "^1.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.0.2" - unique-filename "^1.1.1" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -cache-content-type@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-content-type/-/cache-content-type-1.0.1.tgz#035cde2b08ee2129f4a8315ea8f00a00dba1453c" - integrity sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA== - dependencies: - mime-types "^2.1.18" - ylru "^1.2.0" - -cache-loader@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-4.1.0.tgz#9948cae353aec0a1fcb1eafda2300816ec85387e" - integrity sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw== - dependencies: - buffer-json "^2.0.0" - find-cache-dir "^3.0.0" - loader-utils "^1.2.3" - mkdirp "^0.5.1" - neo-async "^2.6.1" - schema-utils "^2.0.0" - -call-bind@^1.0.0, call-bind@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" - integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== - dependencies: - function-bind "^1.1.1" - get-intrinsic "^1.0.2" - -caller-callsite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" - integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= - dependencies: - callsites "^2.0.0" - -caller-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" - integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= - dependencies: - caller-callsite "^2.0.0" - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= - -callsites@^3.0.0, callsites@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -camel-case@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= - dependencies: - no-case "^2.2.0" - upper-case "^1.1.1" - -camel-case@^4.1.1, camel-case@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" - integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== - dependencies: - pascal-case "^3.1.2" - tslib "^2.0.3" - -camelcase-css@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" - integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== - -camelcase@^5.0.0, camelcase@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - -camelcase@^6.0.0, camelcase@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" - integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== - -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001181, caniuse-lite@^1.0.30001196, caniuse-lite@^1.0.30001198: - version "1.0.30001204" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz#256c85709a348ec4d175e847a3b515c66e79f2aa" - integrity sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ== - -capital-case@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/capital-case/-/capital-case-1.0.4.tgz#9d130292353c9249f6b00fa5852bee38a717e669" - integrity sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - upper-case-first "^2.0.2" - -capture-exit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" - integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== - dependencies: - rsvp "^4.8.4" - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - -ccount@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" - integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== - -chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^4.0.0, chalk@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" - integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -change-case@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/change-case/-/change-case-4.1.2.tgz#fedfc5f136045e2398c0410ee441f95704641e12" - integrity sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A== - dependencies: - camel-case "^4.1.2" - capital-case "^1.0.4" - constant-case "^3.0.4" - dot-case "^3.0.4" - header-case "^2.0.4" - no-case "^3.0.4" - param-case "^3.0.4" - pascal-case "^3.1.2" - path-case "^3.0.4" - sentence-case "^3.0.4" - snake-case "^3.0.4" - tslib "^2.0.3" - -char-regex@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" - integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== - -character-entities-legacy@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" - integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== - -character-entities@^1.0.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" - integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== - -character-reference-invalid@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" - integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== - -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - -chokidar@^2.1.8: - version "2.1.8" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" - integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - -chokidar@^3.4.1, chokidar@^3.4.2, chokidar@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" - integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.5.0" - optionalDependencies: - fsevents "~2.3.1" - -chownr@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - -chownr@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" - integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== - -chrome-trace-event@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" - integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ== - dependencies: - tslib "^1.9.0" - -ci-info@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" - integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== - -ci-info@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.1.1.tgz#9a32fcefdf7bcdb6f0a7e1c0f8098ec57897b80a" - integrity sha512-kdRWLBIJwdsYJWYJFtAFFYxybguqeF91qpZaggjG5Nf8QKdizFG2hjqvaTXbxFIcYbSaD74KpAXv6BSm17DHEQ== - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -cjs-module-lexer@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" - integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -clean-css@^4.2.1, clean-css@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" - integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA== - dependencies: - source-map "~0.6.0" - -clean-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/clean-regexp/-/clean-regexp-1.0.0.tgz#8df7c7aae51fd36874e8f8d05b9180bc11a3fed7" - integrity sha1-jffHquUf02h06PjQW5GAvBGj/tc= - dependencies: - escape-string-regexp "^1.0.5" - -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - -clear-module@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/clear-module/-/clear-module-4.1.1.tgz#bf8ba3b62eb70ee1e0adec90589741425cf32db8" - integrity sha512-ng0E7LeODcT3QkazOckzZqbca+JByQy/Q2Z6qO24YsTp+pLxCfohGz2gJYJqZS0CWTX3LEUiHOqe5KlYeUbEMw== - dependencies: - parent-module "^2.0.0" - resolve-from "^5.0.0" - -cli-boxes@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" - integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== - -cli-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" - integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - dependencies: - restore-cursor "^3.1.0" - -cli-width@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" - integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== - -clipboard@^2.0.0: - version "2.0.8" - resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.8.tgz#ffc6c103dd2967a83005f3f61976aa4655a4cdba" - integrity sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ== - dependencies: - good-listener "^1.2.2" - select "^1.1.2" - tiny-emitter "^2.0.0" - -cliui@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" - integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^6.2.0" - -cliui@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^7.0.0" - -clone-deep@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" - integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== - dependencies: - is-plain-object "^2.0.4" - kind-of "^6.0.2" - shallow-clone "^3.0.0" - -clone@2.x: - version "2.1.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -coa@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" - integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== - dependencies: - "@types/q" "^1.5.1" - chalk "^2.4.1" - q "^1.1.2" - -collect-v8-coverage@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" - integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0, color-convert@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -color-string@^1.5.4: - version "1.5.5" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.5.tgz#65474a8f0e7439625f3d27a6a19d89fc45223014" - integrity sha512-jgIoum0OfQfq9Whcfc2z/VhCNcmQjWbey6qBX0vqt7YICflUmBCh9E9CiQD5GSJ+Uehixm3NUwHVhqUAWRivZg== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^3.0.0, color@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/color/-/color-3.1.3.tgz#ca67fb4e7b97d611dcde39eceed422067d91596e" - integrity sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ== - dependencies: - color-convert "^1.9.1" - color-string "^1.5.4" - -colorette@^1.2.1, colorette@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" - integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== - -combined-stream@^1.0.6, combined-stream@~1.0.6: - version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -comma-separated-tokens@^1.0.0: - version "1.0.8" - resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea" - integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== - -commander@^2.19.0, commander@^2.20.0: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -commander@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" - integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== - -commander@^6.0.0, commander@^6.2.0: - version "6.2.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" - integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - -component-emitter@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" - integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== - -compressible@~2.0.16: - version "2.0.18" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" - integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== - dependencies: - mime-db ">= 1.43.0 < 2" - -compression@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" - integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.16" - debug "2.6.9" - on-headers "~1.0.2" - safe-buffer "5.1.2" - vary "~1.1.2" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -concat-stream@^1.5.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -condense-newlines@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/condense-newlines/-/condense-newlines-0.2.1.tgz#3de985553139475d32502c83b02f60684d24c55f" - integrity sha1-PemFVTE5R10yUCyDsC9gaE0kxV8= - dependencies: - extend-shallow "^2.0.1" - is-whitespace "^0.3.0" - kind-of "^3.0.2" - -config-chain@^1.1.12: - version "1.1.12" - resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" - integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== - dependencies: - ini "^1.3.4" - proto-list "~1.2.1" - -connect@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/connect/-/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" - integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ== - dependencies: - debug "2.6.9" - finalhandler "1.1.2" - parseurl "~1.3.3" - utils-merge "1.0.1" - -consola@^2.10.0, consola@^2.15.0, consola@^2.15.3, consola@^2.6.0, consola@^2.9.0: - version "2.15.3" - resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" - integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== - -console-browserify@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" - integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== - -consolidate@^0.15.1: - version "0.15.1" - resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.15.1.tgz#21ab043235c71a07d45d9aad98593b0dba56bab7" - integrity sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw== - dependencies: - bluebird "^3.1.1" - -constant-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-3.0.4.tgz#3b84a9aeaf4cf31ec45e6bf5de91bdfb0589faf1" - integrity sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - upper-case "^2.0.2" - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= - -contains-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" - integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= - -content-disposition@~0.5.2: - version "0.5.3" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" - integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== - dependencies: - safe-buffer "5.1.2" - -content-type@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" - integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== - dependencies: - safe-buffer "~5.1.1" - -cookie@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= - -cookie@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" - integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== - -cookies@~0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/cookies/-/cookies-0.8.0.tgz#1293ce4b391740a8406e3c9870e828c4b54f3f90" - integrity sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow== - dependencies: - depd "~2.0.0" - keygrip "~1.1.0" - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -core-js-compat@^3.8.1, core-js-compat@^3.9.0, core-js-compat@^3.9.1: - version "3.9.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.9.1.tgz#4e572acfe90aff69d76d8c37759d21a5c59bb455" - integrity sha512-jXAirMQxrkbiiLsCx9bQPJFA6llDadKMpYrBJQJ3/c4/vsPP/fAf29h24tviRlvwUL6AmY5CHLu2GvjuYviQqA== - dependencies: - browserslist "^4.16.3" - semver "7.0.0" - -core-js@^2.4.0, core-js@^2.6.5: - version "2.6.12" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" - integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== - -core-js@^3.9.1: - version "3.9.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.9.1.tgz#cec8de593db8eb2a85ffb0dbdeb312cb6e5460ae" - integrity sha512-gSjRvzkxQc1zjM/5paAmL4idJBFzuJoo+jDjF1tStYFMV2ERfD02HhahhCGXUyHxQRG4yFKVSdO6g62eoRMcDg== - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - -cosmiconfig@^5.0.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" - integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== - dependencies: - import-fresh "^2.0.0" - is-directory "^0.3.1" - js-yaml "^3.13.1" - parse-json "^4.0.0" - -cosmiconfig@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" - integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== - dependencies: - "@types/parse-json" "^4.0.0" - import-fresh "^3.1.0" - parse-json "^5.0.0" - path-type "^4.0.0" - yaml "^1.7.2" - -cosmiconfig@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3" - integrity sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA== - dependencies: - "@types/parse-json" "^4.0.0" - import-fresh "^3.2.1" - parse-json "^5.0.0" - path-type "^4.0.0" - yaml "^1.10.0" - -crc@^3.8.0: - version "3.8.0" - resolved "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6" - integrity sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ== - dependencies: - buffer "^5.1.0" - -create-ecdh@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" - integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== - dependencies: - bn.js "^4.1.0" - elliptic "^6.5.3" - -create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -create-require@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" - integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== - -cross-spawn@^6.0.0: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -css-blank-pseudo@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz#dfdefd3254bf8a82027993674ccf35483bfcb3c5" - integrity sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w== - dependencies: - postcss "^7.0.5" - -css-color-names@0.0.4, css-color-names@^0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= - -css-declaration-sorter@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" - integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== - dependencies: - postcss "^7.0.1" - timsort "^0.3.0" - -css-has-pseudo@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz#3c642ab34ca242c59c41a125df9105841f6966ee" - integrity sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ== - dependencies: - postcss "^7.0.6" - postcss-selector-parser "^5.0.0-rc.4" - -css-loader@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.3.0.tgz#c888af64b2a5b2e85462c72c0f4a85c7e2e0821e" - integrity sha512-rdezjCjScIrsL8BSYszgT4s476IcNKt6yX69t0pHjJVnPUTDpn4WfIpDQTN3wCJvUvfsz/mFjuGOekf3PY3NUg== - dependencies: - camelcase "^6.0.0" - cssesc "^3.0.0" - icss-utils "^4.1.1" - loader-utils "^2.0.0" - postcss "^7.0.32" - postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^3.0.3" - postcss-modules-scope "^2.2.0" - postcss-modules-values "^3.0.0" - postcss-value-parser "^4.1.0" - schema-utils "^2.7.1" - semver "^7.3.2" - -css-loader@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.0.tgz#a9ecda190500863673ce4434033710404efbff00" - integrity sha512-MfRo2MjEeLXMlUkeUwN71Vx5oc6EJnx5UQ4Yi9iUtYQvrPtwLUucYptz0hc6n++kdNcyF5olYBS4vPjJDAcLkw== - dependencies: - camelcase "^6.2.0" - cssesc "^3.0.0" - icss-utils "^5.1.0" - loader-utils "^2.0.0" - postcss "^8.2.8" - postcss-modules-extract-imports "^3.0.0" - postcss-modules-local-by-default "^4.0.0" - postcss-modules-scope "^3.0.0" - postcss-modules-values "^4.0.0" - postcss-value-parser "^4.1.0" - schema-utils "^3.0.0" - semver "^7.3.4" - -css-prefers-color-scheme@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz#6f830a2714199d4f0d0d0bb8a27916ed65cff1f4" - integrity sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg== - dependencies: - postcss "^7.0.5" - -css-select-base-adapter@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== - -css-select@^2.0.0, css-select@^2.0.2: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" - integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== - dependencies: - boolbase "^1.0.0" - css-what "^3.2.1" - domutils "^1.7.0" - nth-check "^1.0.2" - -css-tree@1.0.0-alpha.37: - version "1.0.0-alpha.37" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" - integrity sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg== - dependencies: - mdn-data "2.0.4" - source-map "^0.6.1" - -css-tree@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.2.tgz#9ae393b5dafd7dae8a622475caec78d3d8fbd7b5" - integrity sha512-wCoWush5Aeo48GLhfHPbmvZs59Z+M7k5+B1xDnXbdWNcEF423DoFdqSWE0PM5aNk5nI5cp1q7ms36zGApY/sKQ== - dependencies: - mdn-data "2.0.14" - source-map "^0.6.1" - -css-unit-converter@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.2.tgz#4c77f5a1954e6dbff60695ecb214e3270436ab21" - integrity sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA== - -css-what@^3.2.1: - version "3.4.2" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4" - integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== - -css@^2.1.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929" - integrity sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw== - dependencies: - inherits "^2.0.3" - source-map "^0.6.1" - source-map-resolve "^0.5.2" - urix "^0.1.0" - -cssdb@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-4.4.0.tgz#3bf2f2a68c10f5c6a08abd92378331ee803cddb0" - integrity sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ== - -cssesc@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" - integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg== - -cssesc@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" - integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== - -cssnano-preset-default@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76" - integrity sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA== - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.1" - postcss-colormin "^4.0.3" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.2" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.11" - postcss-merge-rules "^4.0.3" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.2" - postcss-minify-params "^4.0.2" - postcss-minify-selectors "^4.0.2" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.2" - postcss-normalize-positions "^4.0.2" - postcss-normalize-repeat-style "^4.0.2" - postcss-normalize-string "^4.0.2" - postcss-normalize-timing-functions "^4.0.2" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.2" - postcss-ordered-values "^4.1.2" - postcss-reduce-initial "^4.0.3" - postcss-reduce-transforms "^4.0.2" - postcss-svgo "^4.0.2" - postcss-unique-selectors "^4.0.1" - -cssnano-util-get-arguments@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" - integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= - -cssnano-util-get-match@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" - integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= - -cssnano-util-raw-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" - integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== - dependencies: - postcss "^7.0.0" - -cssnano-util-same-parent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" - integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== - -cssnano@^4.1.10: - version "4.1.10" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" - integrity sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ== - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.7" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -csso@^4.0.2: - version "4.2.0" - resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" - integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== - dependencies: - css-tree "^1.1.2" - -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - -csvtojson@^2.0.10: - version "2.0.10" - resolved "https://registry.yarnpkg.com/csvtojson/-/csvtojson-2.0.10.tgz#11e7242cc630da54efce7958a45f443210357574" - integrity sha512-lUWFxGKyhraKCW8Qghz6Z0f2l/PqB1W3AO0HKJzGIQ5JRSlR651ekJDiGJbBT4sRNNv5ddnSGVEnsxP9XRCVpQ== - dependencies: - bluebird "^3.5.1" - lodash "^4.17.3" - strip-bom "^2.0.0" - -cuint@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cuint/-/cuint-0.2.2.tgz#408086d409550c2631155619e9fa7bcadc3b991b" - integrity sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs= - -cyclist@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" - integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - -de-indent@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" - integrity sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0= - -deasync@^0.1.15: - version "0.1.21" - resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.21.tgz#bb11eabd4466c0d8776f0d82deb8a6126460d30f" - integrity sha512-kUmM8Y+PZpMpQ+B4AuOW9k2Pfx/mSupJtxOsLzmnHY2WqZUYRFccFn2RhzPAqt3Xb+sorK/badW2D4zNzqZz5w== - dependencies: - bindings "^1.5.0" - node-addon-api "^1.7.1" - -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^3.1.0, debug@^3.1.1: - version "3.2.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - -debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" - integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== - dependencies: - ms "2.1.2" - -debug@~3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -decamelize@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decimal.js@^10.2.1: - version "10.2.1" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.1.tgz#238ae7b0f0c793d3e3cea410108b35a2c01426a3" - integrity sha512-KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw== - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= - -deep-equal@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= - -deep-is@^0.1.3, deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -deepmerge@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" - integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== - -define-properties@^1.1.2, define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -defined@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" - integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= - -defu@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/defu/-/defu-2.0.4.tgz#09659a6e87a8fd7178be13bd43e9357ebf6d1c46" - integrity sha512-G9pEH1UUMxShy6syWk01VQSRVs3CDWtlxtZu7A+NyqjxaCA4gSlWAKDBx6QiUEKezqS8+DUlXLI14Fp05Hmpwg== - -defu@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/defu/-/defu-3.2.2.tgz#be20f4cc49b9805d54ee6b610658d53894942e97" - integrity sha512-8UWj5lNv7HD+kB0e9w77Z7TdQlbUYDVWqITLHNqFIn6khrNHv5WQo38Dcm1f6HeNyZf0U7UbPf6WeZDSdCzGDQ== - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegate@^3.1.2: - version "3.2.0" - resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" - integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - -depd@^2.0.0, depd@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -des.js@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" - integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA== - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destr@^1.0.0, destr@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/destr/-/destr-1.1.0.tgz#2da6add6ba71e04fd0abfb1e642d4f6763235095" - integrity sha512-Ev/sqS5AzzDwlpor/5wFCDu0dYMQu/0x2D6XfAsQ0E7uQmamIgYJ6Dppo2T2EOFVkeVYWjc+PCLKaqZZ57qmLg== - -destroy@^1.0.4, destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -detab@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detab/-/detab-2.0.4.tgz#b927892069aff405fbb9a186fe97a44a92a94b43" - integrity sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g== - dependencies: - repeat-string "^1.5.4" - -detect-indent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" - integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= - -detect-newline@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" - integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== - -detective@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/detective/-/detective-5.2.0.tgz#feb2a77e85b904ecdea459ad897cc90a99bd2a7b" - integrity sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg== - dependencies: - acorn-node "^1.6.1" - defined "^1.0.0" - minimist "^1.1.1" - -devalue@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/devalue/-/devalue-2.0.1.tgz#5d368f9adc0928e47b77eea53ca60d2f346f9762" - integrity sha512-I2TiqT5iWBEyB8GRfTDP0hiLZ0YeDJZ+upDxjBfOC2lebO5LezQMv7QvIUTzdb64jQyAKLf1AHADtGN+jw6v8Q== - -didyoumean@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.1.tgz#e92edfdada6537d484d73c0172fd1eba0c4976ff" - integrity sha1-6S7f2tplN9SE1zwBcv0eugxJdv8= - -diff-sequences@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" - integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -dlv@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" - integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== - -doctrine@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= - dependencies: - esutils "^2.0.2" - isarray "^1.0.0" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -dom-converter@^0.2: - version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - -dom-event-types@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dom-event-types/-/dom-event-types-1.0.0.tgz#5830a0a29e1bf837fe50a70cd80a597232813cae" - integrity sha512-2G2Vwi2zXTHBGqXHsJ4+ak/iP0N8Ar+G8a7LiD2oup5o4sQWytwqqrZu/O6hIMV0KMID2PL69OhpshLO0n7UJQ== - -dom-serializer@0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" - integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== - dependencies: - domelementtype "^2.0.1" - entities "^2.0.0" - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - -domelementtype@1, domelementtype@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== - -domelementtype@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.1.0.tgz#a851c080a6d1c3d94344aed151d99f669edf585e" - integrity sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w== - -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== - dependencies: - domelementtype "1" - -domutils@^1.5.1, domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -dot-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" - integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - -dot-prop@^5.2.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" - integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== - dependencies: - is-obj "^2.0.0" - -dotenv@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" - integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== - -duplexer@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" - integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== - -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.7.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" - integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -editorconfig@^0.15.3: - version "0.15.3" - resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.15.3.tgz#bef84c4e75fb8dcb0ce5cee8efd51c15999befc5" - integrity sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g== - dependencies: - commander "^2.19.0" - lru-cache "^4.1.5" - semver "^5.6.0" - sigmund "^1.0.1" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -electron-to-chromium@^1.3.649: - version "1.3.698" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.698.tgz#5de813960f23581a268718a0058683dffa15d221" - integrity sha512-VEXDzYblnlT+g8Q3gedwzgKOso1evkeJzV8lih7lV8mL8eAnGVnKyC3KsFT6S+R5PQO4ffdr1PI16/ElibY/kQ== - -elliptic@^6.5.3: - version "6.5.4" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" - integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== - dependencies: - bn.js "^4.11.9" - brorand "^1.1.0" - hash.js "^1.0.0" - hmac-drbg "^1.0.1" - inherits "^2.0.4" - minimalistic-assert "^1.0.1" - minimalistic-crypto-utils "^1.0.1" - -emittery@^0.7.1: - version "0.7.2" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" - integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== - -"emoji-regex@>=6.0.0 <=6.1.1": - version "6.1.1" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.1.tgz#c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e" - integrity sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4= - -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -emojis-list@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" - integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== - -encodeurl@^1.0.2, encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.1, enhanced-resolve@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" - integrity sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.5.0" - tapable "^1.0.0" - -enquirer@^2.3.5: - version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" - integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== - dependencies: - ansi-colors "^4.1.1" - -entities@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -entities@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" - integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== - -errno@^0.1.3, errno@~0.1.7: - version "0.1.8" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" - integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== - dependencies: - prr "~1.0.1" - -error-ex@^1.2.0, error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -error-stack-parser@^2.0.0: - version "2.0.6" - resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.6.tgz#5a99a707bd7a4c58a797902d48d82803ede6aad8" - integrity sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ== - dependencies: - stackframe "^1.1.1" - -es-abstract@^1.17.2, es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2: - version "1.18.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0.tgz#ab80b359eecb7ede4c298000390bc5ac3ec7b5a4" - integrity sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw== - dependencies: - call-bind "^1.0.2" - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - get-intrinsic "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.2" - is-callable "^1.2.3" - is-negative-zero "^2.0.1" - is-regex "^1.1.2" - is-string "^1.0.5" - object-inspect "^1.9.0" - object-keys "^1.1.1" - object.assign "^4.1.2" - string.prototype.trimend "^1.0.4" - string.prototype.trimstart "^1.0.4" - unbox-primitive "^1.0.0" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-html@^1.0.3, escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -escodegen@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" - integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== - dependencies: - esprima "^4.0.1" - estraverse "^5.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - -eslint-config-prettier@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz#4ef1eaf97afe5176e6a75ddfb57c335121abc5a6" - integrity sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw== - -eslint-config-standard@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.2.tgz#71e91727ac7a203782d0a5ca4d1c462d14e234f6" - integrity sha512-fx3f1rJDsl9bY7qzyX8SAtP8GBSk6MfXFaTfaGgk12aAYW4gJSyRm7dM790L6cbXv63fvjY4XeSzXnb4WM+SKw== - -eslint-import-resolver-node@^0.3.4: - version "0.3.4" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz#85ffa81942c25012d8231096ddf679c03042c717" - integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA== - dependencies: - debug "^2.6.9" - resolve "^1.13.1" - -eslint-module-utils@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6" - integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA== - dependencies: - debug "^2.6.9" - pkg-dir "^2.0.0" - -eslint-plugin-es@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" - integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== - dependencies: - eslint-utils "^2.0.0" - regexpp "^3.0.0" - -eslint-plugin-import@^2.22.1: - version "2.22.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz#0896c7e6a0cf44109a2d97b95903c2bb689d7702" - integrity sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw== - dependencies: - array-includes "^3.1.1" - array.prototype.flat "^1.2.3" - contains-path "^0.1.0" - debug "^2.6.9" - doctrine "1.5.0" - eslint-import-resolver-node "^0.3.4" - eslint-module-utils "^2.6.0" - has "^1.0.3" - minimatch "^3.0.4" - object.values "^1.1.1" - read-pkg-up "^2.0.0" - resolve "^1.17.0" - tsconfig-paths "^3.9.0" - -eslint-plugin-jest@^24.1.7: - version "24.3.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-24.3.2.tgz#30a8b2dea6278d0da1d6fb9d6cd530aaf58050a1" - integrity sha512-cicWDr+RvTAOKS3Q/k03+Z3odt3VCiWamNUHWd6QWbVQWcYJyYgUTu8x0mx9GfeDEimawU5kQC+nQ3MFxIM6bw== - dependencies: - "@typescript-eslint/experimental-utils" "^4.0.1" - -eslint-plugin-node@^11.1.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" - integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== - dependencies: - eslint-plugin-es "^3.0.0" - eslint-utils "^2.0.0" - ignore "^5.1.1" - minimatch "^3.0.4" - resolve "^1.10.1" - semver "^6.1.0" - -eslint-plugin-nuxt@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-nuxt/-/eslint-plugin-nuxt-2.0.0.tgz#62dce8b2f6aa205a93a328d22ce04c39f7ee79d7" - integrity sha512-0VaG4SlKeGwMKSmOug/gNjliKoDNM/XfgiPhJ4v6FnjYrM3zSwTQVMH6vPjI8Gs722NjgwOZTucvmYbHzYEp5A== - dependencies: - eslint-plugin-vue "^7.1.0" - semver "^7.3.2" - vue-eslint-parser "^7.1.1" - -eslint-plugin-prettier@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.3.1.tgz#7079cfa2497078905011e6f82e8dd8453d1371b7" - integrity sha512-Rq3jkcFY8RYeQLgk2cCwuc0P7SEFwDravPhsJZOQ5N4YI4DSg50NyqJ/9gdZHzQlHf8MvafSesbNJCcP/FF6pQ== - dependencies: - prettier-linter-helpers "^1.0.0" - -eslint-plugin-promise@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.3.1.tgz#61485df2a359e03149fdafc0a68b0e030ad2ac45" - integrity sha512-bY2sGqyptzFBDLh/GMbAxfdJC+b0f23ME63FOE4+Jao0oZ3E1LEwFtWJX/1pGMJLiTtrSSern2CRM/g+dfc0eQ== - -eslint-plugin-standard@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.1.0.tgz#0c3bf3a67e853f8bbbc580fb4945fbf16f41b7c5" - integrity sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ== - -eslint-plugin-unicorn@^28.0.2: - version "28.0.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-28.0.2.tgz#ab9884ebae04590ecd9c1c294330d889a74b7c37" - integrity sha512-k4AoFP7n8/oq6lBXkdc9Flid6vw2B8j7aXFCxgzJCyKvmaKrCUFb1TFPhG9eSJQFZowqmymMPRtl8oo9NKLUbw== - dependencies: - ci-info "^2.0.0" - clean-regexp "^1.0.0" - eslint-template-visitor "^2.2.2" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - import-modules "^2.1.0" - lodash "^4.17.20" - pluralize "^8.0.0" - read-pkg-up "^7.0.1" - regexp-tree "^0.1.22" - reserved-words "^0.1.2" - safe-regex "^2.1.1" - semver "^7.3.4" - -eslint-plugin-vue@^7.1.0, eslint-plugin-vue@^7.7.0: - version "7.8.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-7.8.0.tgz#cb0e85d65b65fa8d15e783fbb03c049d2c4cfdae" - integrity sha512-OGrnPz+PuYL2HmVyBHxm4mRjxW2kfFCQE6Hw9G6qOHs/Pcu0srOlCCW0FMa8SLzIEqxl8WuKoBSPcMnrjUG2vw== - dependencies: - eslint-utils "^2.1.0" - natural-compare "^1.4.0" - semver "^7.3.2" - vue-eslint-parser "^7.6.0" - -eslint-scope@5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5" - integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-scope@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" - integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-scope@^5.0.0, eslint-scope@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-template-visitor@^2.2.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/eslint-template-visitor/-/eslint-template-visitor-2.3.2.tgz#b52f96ff311e773a345d79053ccc78275bbc463d" - integrity sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA== - dependencies: - "@babel/core" "^7.12.16" - "@babel/eslint-parser" "^7.12.16" - eslint-visitor-keys "^2.0.0" - esquery "^1.3.1" - multimap "^1.1.0" - -eslint-utils@^2.0.0, eslint-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint-visitor-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" - integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== - -eslint-webpack-plugin@^2.4.1: - version "2.5.3" - resolved "https://registry.yarnpkg.com/eslint-webpack-plugin/-/eslint-webpack-plugin-2.5.3.tgz#a125585a1d8bb9c939f2a920a9bc9be4a21cdb58" - integrity sha512-LewNevZf9ghDCxCGT6QltNWVi8KIYWc4LKcin8K9Azh1hypG7YAmobUDIU67fAPa+eMjRnU4rjEkLbYI1w5/UA== - dependencies: - "@types/eslint" "^7.2.6" - arrify "^2.0.1" - jest-worker "^26.6.2" - micromatch "^4.0.2" - schema-utils "^3.0.0" - -eslint@^7.22.0: - version "7.22.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.22.0.tgz#07ecc61052fec63661a2cab6bd507127c07adc6f" - integrity sha512-3VawOtjSJUQiiqac8MQc+w457iGLfuNGLFn8JmF051tTKbh5/x/0vlcEj8OgDCaw7Ysa2Jn8paGshV7x2abKXg== - dependencies: - "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.0" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.0.1" - doctrine "^3.0.0" - enquirer "^2.3.5" - eslint-scope "^5.1.1" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - espree "^7.3.1" - esquery "^1.4.0" - esutils "^2.0.2" - file-entry-cache "^6.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.0.0" - globals "^13.6.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash "^4.17.21" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" - strip-json-comments "^3.1.0" - table "^6.0.4" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -espree@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" - integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== - dependencies: - acorn "^7.1.1" - acorn-jsx "^5.2.0" - eslint-visitor-keys "^1.1.0" - -espree@^7.3.0, espree@^7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" - integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== - dependencies: - acorn "^7.4.0" - acorn-jsx "^5.3.1" - eslint-visitor-keys "^1.3.0" - -esprima@^4.0.0, esprima@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.3.1, esquery@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" - integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.1.0, esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0, estraverse@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" - integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -etag@^1.8.1, etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -eventemitter3@^4.0.0, eventemitter3@^4.0.4: - version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" - integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== - -events@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" - integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== - -eventsource-polyfill@^0.9.6: - version "0.9.6" - resolved "https://registry.yarnpkg.com/eventsource-polyfill/-/eventsource-polyfill-0.9.6.tgz#10e0d187f111b167f28fdab918843ce7d818f13c" - integrity sha1-EODRh/ERsWfyj9q5GIQ859gY8Tw= - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -exec-sh@^0.3.2: - version "0.3.6" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" - integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== - -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" - integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== - dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.0" - onetime "^5.1.0" - signal-exit "^3.0.2" - strip-final-newline "^2.0.0" - -execa@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" - integrity sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ== - dependencies: - cross-spawn "^7.0.3" - get-stream "^6.0.0" - human-signals "^2.1.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.1" - onetime "^5.1.2" - signal-exit "^3.0.3" - strip-final-newline "^2.0.0" - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expect@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" - integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== - dependencies: - "@jest/types" "^26.6.2" - ansi-styles "^4.0.0" - jest-get-type "^26.3.0" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-regex-util "^26.0.0" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@^3.0.0, extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -external-editor@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" - integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extract-css-chunks-webpack-plugin@^4.9.0: - version "4.9.0" - resolved "https://registry.yarnpkg.com/extract-css-chunks-webpack-plugin/-/extract-css-chunks-webpack-plugin-4.9.0.tgz#da5e6b1d8b39a398c817ffc98550f4ccb6d795e1" - integrity sha512-HNuNPCXRMqJDQ1OHAUehoY+0JVCnw9Y/H22FQzYVwo8Ulgew98AGDu0grnY5c7xwiXHjQa6yJ/1dxLCI/xqTyQ== - dependencies: - loader-utils "^2.0.0" - normalize-url "1.9.1" - schema-utils "^1.0.0" - webpack-sources "^1.1.0" - -extract-from-css@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/extract-from-css/-/extract-from-css-0.4.4.tgz#1ea7df2e7c7c6eb9922fa08e8adaea486f6f8f92" - integrity sha1-HqffLnx8brmSL6COitrqSG9vj5I= - dependencies: - css "^2.1.0" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - -fast-deep-equal@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-diff@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" - integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== - -fast-glob@^3.1.1, fast-glob@^3.2.5: - version "3.2.5" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.5.tgz#7939af2a656de79a4f1901903ee8adcaa7cb9661" - integrity sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.0" - merge2 "^1.3.0" - micromatch "^4.0.2" - picomatch "^2.2.1" - -fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -fastq@^1.6.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.11.0.tgz#bb9fb955a07130a918eb63c1f5161cc32a5d0858" - integrity sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g== - dependencies: - reusify "^1.0.4" - -fb-watchman@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" - integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== - dependencies: - bser "2.1.1" - -figgy-pudding@^3.5.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" - integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== - -figures@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - -file-loader@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" - integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== - dependencies: - loader-utils "^2.0.0" - schema-utils "^3.0.0" - -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -filter-obj@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" - integrity sha1-mzERErxsYSehbgFsbF1/GeCAXFs= - -finalhandler@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.3" - statuses "~1.5.0" - unpipe "~1.0.0" - -find-babel-config@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/find-babel-config/-/find-babel-config-1.2.0.tgz#a9b7b317eb5b9860cda9d54740a8c8337a2283a2" - integrity sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA== - dependencies: - json5 "^0.5.1" - path-exists "^3.0.0" - -find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" - integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== - dependencies: - commondir "^1.0.1" - make-dir "^2.0.0" - pkg-dir "^3.0.0" - -find-cache-dir@^3.0.0, find-cache-dir@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" - integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== - dependencies: - commondir "^1.0.1" - make-dir "^3.0.2" - pkg-dir "^4.1.0" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-up@^4.0.0, find-up@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -flat-cache@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" - integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== - dependencies: - flatted "^3.1.0" - rimraf "^3.0.2" - -flat@^5.0.0: - version "5.0.2" - resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" - integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== - -flatted@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" - integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== - -flatten@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" - integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg== - -flush-write-stream@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" - integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== - dependencies: - inherits "^2.0.3" - readable-stream "^2.3.6" - -follow-redirects@^1.0.0, follow-redirects@^1.10.0: - version "1.13.3" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.3.tgz#e5598ad50174c1bc4e872301e82ac2cd97f90267" - integrity sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA== - -for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -fork-ts-checker-webpack-plugin@^6.1.1: - version "6.2.0" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.2.0.tgz#d13af02e24d1b17f769af6bdf41c1e849e1615cc" - integrity sha512-DTNbOhq6lRdjYprukX54JMeYJgQ0zMow+R5BMLwWxEX2NAXthIkwnV8DBmsWjwNLSUItKZM4TCCJbtgrtKBu2Q== - dependencies: - "@babel/code-frame" "^7.8.3" - "@types/json-schema" "^7.0.5" - chalk "^4.1.0" - chokidar "^3.4.2" - cosmiconfig "^6.0.0" - deepmerge "^4.2.2" - fs-extra "^9.0.0" - memfs "^3.1.2" - minimatch "^3.0.4" - schema-utils "2.7.0" - semver "^7.3.2" - tapable "^1.0.0" - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= - -fraction.js@^4.0.13: - version "4.0.13" - resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.0.13.tgz#3c1c315fa16b35c85fffa95725a36fa729c69dfe" - integrity sha512-E1fz2Xs9ltlUp+qbiyx9wmt2n9dRzPsS11Jtdb8D2o+cC7wr9xkkKsVKJuBX0ST+LVS+LhLO+SbLJNtfWcJvXA== - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2, fresh@^0.5.2, fresh@~0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" - integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^9.0.0, fs-extra@^9.0.1, fs-extra@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - -fs-memo@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fs-memo/-/fs-memo-1.2.0.tgz#a2ec3be606b902077adbb37ec529c5ec5fb2e037" - integrity sha512-YEexkCpL4j03jn5SxaMHqcO6IuWuqm8JFUYhyCep7Ao89JIYmB8xoKhK7zXXJ9cCaNXpyNH5L3QtAmoxjoHW2w== - -fs-minipass@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== - dependencies: - minipass "^3.0.0" - -fs-monkey@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.1.tgz#4a82f36944365e619f4454d9fff106553067b781" - integrity sha512-fcSa+wyTqZa46iWweI7/ZiUfegOZl0SG8+dltIwFXo7+zYU9J9kpS3NB6pZcSlJdhvIwp81Adx2XhZorncxiaA== - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@^1.2.7: - version "1.2.13" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" - integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== - dependencies: - bindings "^1.5.0" - nan "^2.12.1" - -fsevents@^2.1.2, fsevents@~2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -gensync@^1.0.0-beta.2: - version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" - integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== - -get-caller-file@^2.0.1, get-caller-file@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" - integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - -get-package-type@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" - integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== - -get-port-please@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/get-port-please/-/get-port-please-1.1.0.tgz#7a60007578df6c4570c233803b48854c44db41f7" - integrity sha512-C9adQpQ9uyboxURlYAVcqvKdnrZ0uIad6lAZzIr51G5shhUFcZUwl8rxY0B0hB6OJytBNzPB1Uj/S1CpP9aFzQ== - dependencies: - fs-memo "^1.2.0" - -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-stream@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" - integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== - dependencies: - pump "^3.0.0" - -get-stream@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.0.tgz#3e0012cb6827319da2706e601a1583e8629a6718" - integrity sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg== - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -git-config-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/git-config-path/-/git-config-path-2.0.0.tgz#62633d61af63af4405a5024efd325762f58a181b" - integrity sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA== - -git-up@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.2.tgz#10c3d731051b366dc19d3df454bfca3f77913a7c" - integrity sha512-kbuvus1dWQB2sSW4cbfTeGpCMd8ge9jx9RKnhXhuJ7tnvT+NIrTVfYZxjtflZddQYcmdOTlkAcjmx7bor+15AQ== - dependencies: - is-ssh "^1.3.0" - parse-url "^5.0.0" - -git-url-parse@^11.4.3: - version "11.4.4" - resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.4.4.tgz#5d747debc2469c17bc385719f7d0427802d83d77" - integrity sha512-Y4o9o7vQngQDIU9IjyCmRJBin5iYjI5u9ZITnddRZpD7dcCFQj2sL2XuMNbLRE4b4B/4ENPsp2Q8P44fjAZ0Pw== - dependencies: - git-up "^4.0.0" - -github-slugger@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.3.0.tgz#9bd0a95c5efdfc46005e82a906ef8e2a059124c9" - integrity sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q== - dependencies: - emoji-regex ">=6.0.0 <=6.1.1" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= - dependencies: - is-glob "^2.0.0" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: - version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -globals@^12.1.0: - version "12.4.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" - integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== - dependencies: - type-fest "^0.8.1" - -globals@^13.6.0: - version "13.7.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.7.0.tgz#aed3bcefd80ad3ec0f0be2cf0c895110c0591795" - integrity sha512-Aipsz6ZKRxa/xQkZhNg0qIWXT6x6rD46f6x/PCnBomlttdIyAPak4YD9jTmKpZ72uROSMU87qJtcgpgHaVchiA== - dependencies: - type-fest "^0.20.2" - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - -globby@^11.0.1, globby@^11.0.2, globby@^11.0.3: - version "11.0.3" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.3.tgz#9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb" - integrity sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.1.1" - ignore "^5.1.4" - merge2 "^1.3.0" - slash "^3.0.0" - -good-listener@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" - integrity sha1-1TswzfkxPf+33JoNR3CWqm0UXFA= - dependencies: - delegate "^3.1.2" - -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6: - version "4.2.6" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz#ff040b2b0853b23c3d31027523706f1885d76bee" - integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== - -gray-matter@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-4.0.2.tgz#9aa379e3acaf421193fce7d2a28cebd4518ac454" - integrity sha512-7hB/+LxrOjq/dd8APlK0r24uL/67w7SkYnfwhNFwg/VDIGWGmduTDYf3WNstLW2fbbmRwrDGCVSJ2isuf2+4Hw== - dependencies: - js-yaml "^3.11.0" - kind-of "^6.0.2" - section-matter "^1.0.0" - strip-bom-string "^1.0.0" - -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= - -gzip-size@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" - integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== - dependencies: - duplexer "^0.1.2" - -hable@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/hable/-/hable-3.0.0.tgz#6de089b2df946635cf8134b9e4859f1b62de255f" - integrity sha512-7+G0/2/COR8pwteYFqHIVYfQpuEiO2HXwJrhCBJVgrNrl9O5eaUoJVDGXUJX+0RpGncNVTuestexjk1afj01wQ== - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.3: - version "5.1.5" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" - integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== - dependencies: - ajv "^6.12.3" - har-schema "^2.0.0" - -hard-source-webpack-plugin@^0.13.1: - version "0.13.1" - resolved "https://registry.yarnpkg.com/hard-source-webpack-plugin/-/hard-source-webpack-plugin-0.13.1.tgz#a99071e25b232f1438a5bc3c99f10a3869e4428e" - integrity sha512-r9zf5Wq7IqJHdVAQsZ4OP+dcUSvoHqDMxJlIzaE2J0TZWn3UjMMrHqwDHR8Jr/pzPfG7XxSe36E7Y8QGNdtuAw== - dependencies: - chalk "^2.4.1" - find-cache-dir "^2.0.0" - graceful-fs "^4.1.11" - lodash "^4.15.0" - mkdirp "^0.5.1" - node-object-hash "^1.2.0" - parse-json "^4.0.0" - pkg-dir "^3.0.0" - rimraf "^2.6.2" - semver "^5.6.0" - tapable "^1.0.0-beta.5" - webpack-sources "^1.0.1" - write-json-file "^2.3.0" - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-bigints@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" - integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-symbols@^1.0.0, has-symbols@^1.0.1, has-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" - integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.0, has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hash-base@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" - integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== - dependencies: - inherits "^2.0.4" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -hash-sum@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" - integrity sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ= - -hash-sum@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a" - integrity sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg== - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" - integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -hasha@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/hasha/-/hasha-5.2.2.tgz#a48477989b3b327aea3c04f53096d816d97522a1" - integrity sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ== - dependencies: - is-stream "^2.0.0" - type-fest "^0.8.0" - -hast-to-hyperscript@^9.0.0: - version "9.0.1" - resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz#9b67fd188e4c81e8ad66f803855334173920218d" - integrity sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA== - dependencies: - "@types/unist" "^2.0.3" - comma-separated-tokens "^1.0.0" - property-information "^5.3.0" - space-separated-tokens "^1.0.0" - style-to-object "^0.3.0" - unist-util-is "^4.0.0" - web-namespaces "^1.0.0" - -hast-util-from-parse5@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz#554e34abdeea25ac76f5bd950a1f0180e0b3bc2a" - integrity sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA== - dependencies: - "@types/parse5" "^5.0.0" - hastscript "^6.0.0" - property-information "^5.0.0" - vfile "^4.0.0" - vfile-location "^3.2.0" - web-namespaces "^1.0.0" - -hast-util-is-element@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz#3b3ed5159a2707c6137b48637fbfe068e175a425" - integrity sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ== - -hast-util-parse-selector@^2.0.0: - version "2.2.5" - resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz#d57c23f4da16ae3c63b3b6ca4616683313499c3a" - integrity sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ== - -hast-util-raw@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-6.1.0.tgz#e16a3c2642f65cc7c480c165400a40d604ab75d0" - integrity sha512-5FoZLDHBpka20OlZZ4I/+RBw5piVQ8iI1doEvffQhx5CbCyTtP8UCq8Tw6NmTAMtXgsQxmhW7Ly8OdFre5/YMQ== - dependencies: - "@types/hast" "^2.0.0" - hast-util-from-parse5 "^6.0.0" - hast-util-to-parse5 "^6.0.0" - html-void-elements "^1.0.0" - parse5 "^6.0.0" - unist-util-position "^3.0.0" - unist-util-visit "^2.0.0" - vfile "^4.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hast-util-to-parse5@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz#1ec44650b631d72952066cea9b1445df699f8479" - integrity sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ== - dependencies: - hast-to-hyperscript "^9.0.0" - property-information "^5.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hastscript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-6.0.0.tgz#e8768d7eac56c3fdeac8a92830d58e811e5bf640" - integrity sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w== - dependencies: - "@types/hast" "^2.0.0" - comma-separated-tokens "^1.0.0" - hast-util-parse-selector "^2.0.0" - property-information "^5.0.0" - space-separated-tokens "^1.0.0" - -he@1.2.0, he@^1.1.0, he@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -header-case@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/header-case/-/header-case-2.0.4.tgz#5a42e63b55177349cf405beb8d775acabb92c063" - integrity sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q== - dependencies: - capital-case "^1.0.4" - tslib "^2.0.3" - -hex-color-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" - integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== - -hmac-drbg@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hookable@^4.4.1: - version "4.4.1" - resolved "https://registry.yarnpkg.com/hookable/-/hookable-4.4.1.tgz#3d7154ac7e1f6f147e50fef583832f2645b9f04f" - integrity sha512-KWjZM8C7IVT2qne5HTXjM6R6VnRfjfRlf/oCnHd+yFxoHO1DzOl6B9LzV/VqGQK/IrFewq+EG+ePVrE9Tpc3fg== - -hosted-git-info@^2.1.4: - version "2.8.8" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" - integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== - -hsl-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" - integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= - -hsla-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" - integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= - -html-comment-regex@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" - integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== - -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - -html-entities@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.4.0.tgz#cfbd1b01d2afaf9adca1b10ae7dffab98c71d2dc" - integrity sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA== - -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - -html-minifier-terser@^5.0.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" - integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== - dependencies: - camel-case "^4.1.1" - clean-css "^4.2.3" - commander "^4.1.1" - he "^1.2.0" - param-case "^3.0.3" - relateurl "^0.2.7" - terser "^4.6.3" - -html-minifier@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-4.0.0.tgz#cca9aad8bce1175e02e17a8c33e46d8988889f56" - integrity sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig== - dependencies: - camel-case "^3.0.0" - clean-css "^4.2.1" - commander "^2.19.0" - he "^1.2.0" - param-case "^2.1.1" - relateurl "^0.2.7" - uglify-js "^3.5.1" - -html-tags@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b" - integrity sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos= - -html-tags@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" - integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== - -html-void-elements@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483" - integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w== - -html-webpack-plugin@^4.5.1: - version "4.5.2" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" - integrity sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A== - dependencies: - "@types/html-minifier-terser" "^5.0.0" - "@types/tapable" "^1.0.5" - "@types/webpack" "^4.41.8" - html-minifier-terser "^5.0.1" - loader-utils "^1.2.3" - lodash "^4.17.20" - pretty-error "^2.1.1" - tapable "^1.1.3" - util.promisify "1.0.0" - -htmlparser2@^3.10.1: - version "3.10.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" - integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== - dependencies: - domelementtype "^1.3.1" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.1.1" - -http-assert@^1.3.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.4.1.tgz#c5f725d677aa7e873ef736199b89686cceb37878" - integrity sha512-rdw7q6GTlibqVVbXr0CKelfV5iY8G2HqEUkhSk297BMbSpSL8crXC+9rjKoMcZZEsksX30le6f/4ul4E28gegw== - dependencies: - deep-equal "~1.0.1" - http-errors "~1.7.2" - -http-errors@^1.6.3, http-errors@^1.7.3: - version "1.8.0" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.0.tgz#75d1bbe497e1044f51e4ee9e704a62f28d336507" - integrity sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A== - dependencies: - depd "~1.1.2" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" - -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-errors@~1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" - integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== - dependencies: - depd "~1.1.2" - inherits "2.0.4" - setprototypeof "1.1.1" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" - -http-proxy-middleware@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-1.0.6.tgz#0618557722f450375d3796d701a8ac5407b3b94e" - integrity sha512-NyL6ZB6cVni7pl+/IT2W0ni5ME00xR0sN27AQZZrpKn1b+qRh+mLbBxIq9Cq1oGfmTc7BUq4HB77mxwCaxAYNg== - dependencies: - "@types/http-proxy" "^1.17.4" - http-proxy "^1.18.1" - is-glob "^4.0.1" - lodash "^4.17.20" - micromatch "^4.0.2" - -http-proxy@^1.18.1: - version "1.18.1" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= - -human-signals@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" - integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== - -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - -iconv-lite@0.4.24, iconv-lite@^0.4.24: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -icss-utils@^4.0.0, icss-utils@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" - integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== - dependencies: - postcss "^7.0.14" - -icss-utils@^5.0.0, icss-utils@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" - integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== - -ieee754@^1.1.13, ieee754@^1.1.4: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" - integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -ignore@^5.1.1, ignore@^5.1.4, ignore@^5.1.8: - version "5.1.8" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" - integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== - -import-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" - integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= - dependencies: - import-from "^2.1.0" - -import-fresh@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" - integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= - dependencies: - caller-path "^2.0.0" - resolve-from "^3.0.0" - -import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -import-from@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" - integrity sha1-M1238qev/VOqpHHUuAId7ja387E= - dependencies: - resolve-from "^3.0.0" - -import-local@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" - integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== - dependencies: - pkg-dir "^4.2.0" - resolve-cwd "^3.0.0" - -import-modules@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-modules/-/import-modules-2.1.0.tgz#abe7df297cb6c1f19b57246eb8b8bd9664b6d8c2" - integrity sha512-8HEWcnkbGpovH9yInoisxaSoIg9Brbul+Ju3Kqe2UsYDUBJD/iQjSgEj0zPcTDPKfPp2fs5xlv1i+JSye/m1/A== - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -indent-string@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= - -infer-owner@^1.0.3, infer-owner@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" - integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= - -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -ini@^1.3.4, ini@^1.3.5: - version "1.3.8" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" - integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== - -inline-style-parser@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" - integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== - -inquirer@^7.3.3: - version "7.3.3" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" - integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== - dependencies: - ansi-escapes "^4.2.1" - chalk "^4.1.0" - cli-cursor "^3.1.0" - cli-width "^3.0.0" - external-editor "^3.0.3" - figures "^3.0.0" - lodash "^4.17.19" - mute-stream "0.0.8" - run-async "^2.4.0" - rxjs "^6.6.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - through "^2.3.6" - -invariant@^2.2.2: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= - -ipaddr.js@1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" - integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== - -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= - -is-absolute-url@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" - integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-alphabetical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" - integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== - -is-alphanumerical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" - integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== - dependencies: - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - -is-bigint@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.1.tgz#6923051dfcbc764278540b9ce0e6b3213aa5ebc2" - integrity sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg== - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= - dependencies: - binary-extensions "^1.0.0" - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-boolean-object@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.0.tgz#e2aaad3a3a8fca34c28f6eee135b156ed2587ff0" - integrity sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA== - dependencies: - call-bind "^1.0.0" - -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-buffer@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" - integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== - -is-callable@^1.1.4, is-callable@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.3.tgz#8b1e0500b73a1d76c70487636f368e519de8db8e" - integrity sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ== - -is-ci@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" - integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== - dependencies: - ci-info "^2.0.0" - -is-color-stop@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" - integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= - dependencies: - css-color-names "^0.0.4" - hex-color-regex "^1.1.0" - hsl-regex "^1.0.0" - hsla-regex "^1.0.0" - rgb-regex "^1.0.1" - rgba-regex "^1.0.0" - -is-core-module@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a" - integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== - dependencies: - has "^1.0.3" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" - integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== - -is-decimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" - integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= - -is-docker@^2.0.0, is-docker@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.1.1.tgz#4125a88e44e450d384e09047ede71adc2d144156" - integrity sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw== - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-generator-fn@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" - integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== - -is-generator-function@^1.0.7: - version "1.0.8" - resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.8.tgz#dfb5c2b120e02b0a8d9d2c6806cd5621aa922f7b" - integrity sha512-2Omr/twNtufVZFr1GhxjOMFPAj2sjc/dKaIqBhvo4qciXfJmITGH6ZGd8eZYNHza8t1y0e01AuqRhJwfWp26WQ== - -is-glob@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= - dependencies: - is-extglob "^1.0.0" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-hexadecimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" - integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== - -is-negative-zero@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" - integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== - -is-number-object@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.4.tgz#36ac95e741cf18b283fc1ddf5e83da798e3ec197" - integrity sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw== - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" - integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== - -is-plain-obj@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= - -is-plain-obj@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" - integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== - -is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-potential-custom-element-name@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz#0c52e54bcca391bb2c494b21e8626d7336c6e397" - integrity sha1-DFLlS8yjkbssSUsh6GJtczbG45c= - -is-regex@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.2.tgz#81c8ebde4db142f2cf1c53fc86d6a45788266251" - integrity sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg== - dependencies: - call-bind "^1.0.2" - has-symbols "^1.0.1" - -is-resolvable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - -is-retry-allowed@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" - integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== - -is-ssh@^1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.3.2.tgz#a4b82ab63d73976fd8263cceee27f99a88bdae2b" - integrity sha512-elEw0/0c2UscLrNG+OAorbP539E3rhliKPg+hDMWN9VwrDXfYK+4PBEykDPfxlYYtQvl84TascnQyobfQLHEhQ== - dependencies: - protocols "^1.1.0" - -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - -is-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" - integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== - -is-string@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" - integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== - -is-svg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" - integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== - dependencies: - html-comment-regex "^1.1.0" - -is-symbol@^1.0.2, is-symbol@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" - integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== - dependencies: - has-symbols "^1.0.1" - -is-typedarray@^1.0.0, is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - -is-url-superb@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-url-superb/-/is-url-superb-4.0.0.tgz#b54d1d2499bb16792748ac967aa3ecb41a33a8c2" - integrity sha512-GI+WjezhPPcbM+tqE9LnmsY5qqjwHzTvjJ36wxYX5ujNXefSUJ/T17r5bqDV8yLhcgB59KTPNOc9O9cmHTPWsA== - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= - -is-whitespace@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/is-whitespace/-/is-whitespace-0.3.0.tgz#1639ecb1be036aec69a54cbb401cfbed7114ab7f" - integrity sha1-Fjnssb4DauxppUy7QBz77XEUq38= - -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -is-wsl@^2.1.1, is-wsl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -istanbul-lib-coverage@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" - integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== - -istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" - integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== - dependencies: - "@babel/core" "^7.7.5" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" - semver "^6.3.0" - -istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" - supports-color "^7.1.0" - -istanbul-lib-source-maps@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" - integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^3.0.0" - source-map "^0.6.1" - -istanbul-reports@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" - integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -jest-changed-files@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" - integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== - dependencies: - "@jest/types" "^26.6.2" - execa "^4.0.0" - throat "^5.0.0" - -jest-cli@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" - integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== - dependencies: - "@jest/core" "^26.6.3" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - import-local "^3.0.2" - is-ci "^2.0.0" - jest-config "^26.6.3" - jest-util "^26.6.2" - jest-validate "^26.6.2" - prompts "^2.0.1" - yargs "^15.4.1" - -jest-config@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" - integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== - dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.6.3" - "@jest/types" "^26.6.2" - babel-jest "^26.6.3" - chalk "^4.0.0" - deepmerge "^4.2.2" - glob "^7.1.1" - graceful-fs "^4.2.4" - jest-environment-jsdom "^26.6.2" - jest-environment-node "^26.6.2" - jest-get-type "^26.3.0" - jest-jasmine2 "^26.6.3" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - micromatch "^4.0.2" - pretty-format "^26.6.2" - -jest-diff@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" - integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== - dependencies: - chalk "^4.0.0" - diff-sequences "^26.6.2" - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - -jest-docblock@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" - integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== - dependencies: - detect-newline "^3.0.0" - -jest-each@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" - integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== - dependencies: - "@jest/types" "^26.6.2" - chalk "^4.0.0" - jest-get-type "^26.3.0" - jest-util "^26.6.2" - pretty-format "^26.6.2" - -jest-environment-jsdom@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" - integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== - dependencies: - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - jest-util "^26.6.2" - jsdom "^16.4.0" - -jest-environment-node@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" - integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== - dependencies: - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - jest-util "^26.6.2" - -jest-get-type@^26.3.0: - version "26.3.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" - integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== - -jest-haste-map@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" - integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== - dependencies: - "@jest/types" "^26.6.2" - "@types/graceful-fs" "^4.1.2" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.4" - jest-regex-util "^26.0.0" - jest-serializer "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" - micromatch "^4.0.2" - sane "^4.0.3" - walker "^1.0.7" - optionalDependencies: - fsevents "^2.1.2" - -jest-jasmine2@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" - integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== - dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.6.2" - "@jest/source-map" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - expect "^26.6.2" - is-generator-fn "^2.0.0" - jest-each "^26.6.2" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-runtime "^26.6.3" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - pretty-format "^26.6.2" - throat "^5.0.0" - -jest-leak-detector@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" - integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== - dependencies: - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - -jest-matcher-utils@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" - integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== - dependencies: - chalk "^4.0.0" - jest-diff "^26.6.2" - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - -jest-message-util@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" - integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== - dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.6.2" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.4" - micromatch "^4.0.2" - pretty-format "^26.6.2" - slash "^3.0.0" - stack-utils "^2.0.2" - -jest-mock@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" - integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - -jest-pnp-resolver@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" - integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== - -jest-regex-util@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" - integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== - -jest-resolve-dependencies@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" - integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== - dependencies: - "@jest/types" "^26.6.2" - jest-regex-util "^26.0.0" - jest-snapshot "^26.6.2" - -jest-resolve@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" - integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== - dependencies: - "@jest/types" "^26.6.2" - chalk "^4.0.0" - graceful-fs "^4.2.4" - jest-pnp-resolver "^1.2.2" - jest-util "^26.6.2" - read-pkg-up "^7.0.1" - resolve "^1.18.1" - slash "^3.0.0" - -jest-runner@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" - integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== - dependencies: - "@jest/console" "^26.6.2" - "@jest/environment" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - emittery "^0.7.1" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-config "^26.6.3" - jest-docblock "^26.0.0" - jest-haste-map "^26.6.2" - jest-leak-detector "^26.6.2" - jest-message-util "^26.6.2" - jest-resolve "^26.6.2" - jest-runtime "^26.6.3" - jest-util "^26.6.2" - jest-worker "^26.6.2" - source-map-support "^0.5.6" - throat "^5.0.0" - -jest-runtime@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" - integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== - dependencies: - "@jest/console" "^26.6.2" - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/globals" "^26.6.2" - "@jest/source-map" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - cjs-module-lexer "^0.6.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.2.4" - jest-config "^26.6.3" - jest-haste-map "^26.6.2" - jest-message-util "^26.6.2" - jest-mock "^26.6.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - slash "^3.0.0" - strip-bom "^4.0.0" - yargs "^15.4.1" - -jest-serializer@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" - integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== - dependencies: - "@types/node" "*" - graceful-fs "^4.2.4" - -jest-snapshot@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" - integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== - dependencies: - "@babel/types" "^7.0.0" - "@jest/types" "^26.6.2" - "@types/babel__traverse" "^7.0.4" - "@types/prettier" "^2.0.0" - chalk "^4.0.0" - expect "^26.6.2" - graceful-fs "^4.2.4" - jest-diff "^26.6.2" - jest-get-type "^26.3.0" - jest-haste-map "^26.6.2" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-resolve "^26.6.2" - natural-compare "^1.4.0" - pretty-format "^26.6.2" - semver "^7.3.2" - -jest-util@^26.1.0, jest-util@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" - integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^2.0.0" - micromatch "^4.0.2" - -jest-validate@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" - integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== - dependencies: - "@jest/types" "^26.6.2" - camelcase "^6.0.0" - chalk "^4.0.0" - jest-get-type "^26.3.0" - leven "^3.1.0" - pretty-format "^26.6.2" - -jest-watcher@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" - integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== - dependencies: - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - jest-util "^26.6.2" - string-length "^4.0.1" - -jest-worker@^26.5.0, jest-worker@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" - integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^7.0.0" - -jest@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" - integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== - dependencies: - "@jest/core" "^26.6.3" - import-local "^3.0.2" - jest-cli "^26.6.3" - -jimp-compact@^0.16.1: - version "0.16.1" - resolved "https://registry.yarnpkg.com/jimp-compact/-/jimp-compact-0.16.1.tgz#9582aea06548a2c1e04dd148d7c3ab92075aefa3" - integrity sha512-dZ6Ra7u1G8c4Letq/B5EzAxj4tLFHL+cGtdpR+PVm4yzPDj+lCk+AbivWt1eOM+ikzkowtyV7qSqX6qr3t71Ww== - -jiti@^1.3.0, jiti@^1.6.3: - version "1.6.4" - resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.6.4.tgz#63453b602d0234f8bd7ce638f03f0e74ef99be12" - integrity sha512-ICUtP0/rAyT/GaaDG0vj6fmWzx5yjFc7v+L1MAEARGl1+lrdJ8wtJNChr+ZGEdPoOhFwdhtcDO5VM2TNNgPpjQ== - -js-beautify@^1.6.12, js-beautify@^1.6.14: - version "1.13.5" - resolved "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.13.5.tgz#a08a97890cae55daf1d758d3f6577bd4a64d7014" - integrity sha512-MsXlH6Z/BiRYSkSRW3clNDqDjSpiSNOiG8xYVUBXt4k0LnGvDhlTGOlHX1VFtAdoLmtwjxMG5qiWKy/g+Ipv5w== - dependencies: - config-chain "^1.1.12" - editorconfig "^0.15.3" - glob "^7.1.3" - mkdirp "^1.0.4" - nopt "^5.0.0" - -js-cookie@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-2.2.1.tgz#69e106dc5d5806894562902aa5baec3744e9b2b8" - integrity sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ== - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz#f426bc0ff4b4051926cd588c71113183409a121f" - integrity sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q== - dependencies: - argparse "^2.0.1" - -js-yaml@^3.11.0, js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsdom@^16.4.0: - version "16.5.1" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.5.1.tgz#4ced6bbd7b77d67fb980e64d9e3e6fb900f97dd6" - integrity sha512-pF73EOsJgwZekbDHEY5VO/yKXUkab/DuvrQB/ANVizbr6UAHJsDdHXuotZYwkJSGQl1JM+ivXaqY+XBDDL4TiA== - dependencies: - abab "^2.0.5" - acorn "^8.0.5" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.3.0" - data-urls "^2.0.0" - decimal.js "^10.2.1" - domexception "^2.0.1" - escodegen "^2.0.0" - html-encoding-sniffer "^2.0.1" - is-potential-custom-element-name "^1.0.0" - nwsapi "^2.2.0" - parse5 "6.0.1" - request "^2.88.2" - request-promise-native "^1.0.9" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.1.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - ws "^7.4.4" - xml-name-validator "^3.0.0" - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-parse-even-better-errors@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" - integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema-traverse@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json5@2.x, json5@^2.1.1, json5@^2.1.2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" - integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== - dependencies: - minimist "^1.2.5" - -json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= - -json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== - dependencies: - minimist "^1.2.0" - -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= - optionalDependencies: - graceful-fs "^4.1.6" - -jsonfile@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== - dependencies: - universalify "^2.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -keygrip@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/keygrip/-/keygrip-1.1.0.tgz#871b1681d5e159c62a445b0c74b615e0917e7226" - integrity sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ== - dependencies: - tsscmp "1.0.6" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -kleur@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" - integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== - -klona@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.4.tgz#7bb1e3affb0cb8624547ef7e8f6708ea2e39dfc0" - integrity sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA== - -koa-compose@^3.0.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/koa-compose/-/koa-compose-3.2.1.tgz#a85ccb40b7d986d8e5a345b3a1ace8eabcf54de7" - integrity sha1-qFzLQLfZhtjlo0Wzoazo6rz1Tec= - dependencies: - any-promise "^1.1.0" - -koa-compose@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/koa-compose/-/koa-compose-4.1.0.tgz#507306b9371901db41121c812e923d0d67d3e877" - integrity sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw== - -koa-convert@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/koa-convert/-/koa-convert-1.2.0.tgz#da40875df49de0539098d1700b50820cebcd21d0" - integrity sha1-2kCHXfSd4FOQmNFwC1CCDOvNIdA= - dependencies: - co "^4.6.0" - koa-compose "^3.0.0" - -koa-send@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/koa-send/-/koa-send-5.0.1.tgz#39dceebfafb395d0d60beaffba3a70b4f543fe79" - integrity sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ== - dependencies: - debug "^4.1.1" - http-errors "^1.7.3" - resolve-path "^1.4.0" - -koa-static@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/koa-static/-/koa-static-5.0.0.tgz#5e92fc96b537ad5219f425319c95b64772776943" - integrity sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ== - dependencies: - debug "^3.1.0" - koa-send "^5.0.0" - -koa@^2.12.0: - version "2.13.1" - resolved "https://registry.yarnpkg.com/koa/-/koa-2.13.1.tgz#6275172875b27bcfe1d454356a5b6b9f5a9b1051" - integrity sha512-Lb2Dloc72auj5vK4X4qqL7B5jyDPQaZucc9sR/71byg7ryoD1NCaCm63CShk9ID9quQvDEi1bGR/iGjCG7As3w== - dependencies: - accepts "^1.3.5" - cache-content-type "^1.0.0" - content-disposition "~0.5.2" - content-type "^1.0.4" - cookies "~0.8.0" - debug "~3.1.0" - delegates "^1.0.0" - depd "^2.0.0" - destroy "^1.0.4" - encodeurl "^1.0.2" - escape-html "^1.0.3" - fresh "~0.5.2" - http-assert "^1.3.0" - http-errors "^1.6.3" - is-generator-function "^1.0.7" - koa-compose "^4.1.0" - koa-convert "^1.2.0" - on-finished "^2.3.0" - only "~0.0.2" - parseurl "^1.3.2" - statuses "^1.5.0" - type-is "^1.6.16" - vary "^1.1.2" - -last-call-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" - integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== - dependencies: - lodash "^4.17.5" - webpack-sources "^1.1.0" - -launch-editor-middleware@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/launch-editor-middleware/-/launch-editor-middleware-2.2.1.tgz#e14b07e6c7154b0a4b86a0fd345784e45804c157" - integrity sha512-s0UO2/gEGiCgei3/2UN3SMuUj1phjQN8lcpnvgLSz26fAzNWPQ6Nf/kF5IFClnfU2ehp6LrmKdMU/beveO+2jg== - dependencies: - launch-editor "^2.2.1" - -launch-editor@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.2.1.tgz#871b5a3ee39d6680fcc26d37930b6eeda89db0ca" - integrity sha512-On+V7K2uZK6wK7x691ycSUbLD/FyKKelArkbaAMSSJU8JmqmhwN2+mnJDNINuJWSrh2L0kDk+ZQtbC/gOWUwLw== - dependencies: - chalk "^2.3.0" - shell-quote "^1.6.1" - -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - -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" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= - -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - -loader-runner@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" - integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== - -loader-runner@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" - integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== - -loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" - integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^1.0.1" - -loader-utils@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" - integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^2.1.2" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= - -lodash.castarray@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.castarray/-/lodash.castarray-4.4.0.tgz#c02513515e309daddd4c24c60cfddcf5976d9115" - integrity sha1-wCUTUV4wna3dTCTGDP3c9ZdtkRU= - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= - -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= - -lodash.kebabcase@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" - integrity sha1-hImxyw0p/4gZXM7KRI/21swpXDY= - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - -lodash.template@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - dependencies: - lodash._reinterpolate "^3.0.0" - -lodash.toarray@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" - integrity sha1-JMS/zWsvuji/0FlNsRedjptlZWE= - -lodash.topath@^4.5.2: - version "4.5.2" - resolved "https://registry.yarnpkg.com/lodash.topath/-/lodash.topath-4.5.2.tgz#3616351f3bba61994a0931989660bd03254fd009" - integrity sha1-NhY1Hzu6YZlKCTGYlmC9AyVP0Ak= - -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - -lodash@4.x, lodash@^4.15.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== - -longest-streak@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz#b8599957da5b5dab64dee3fe316fa774597d90e4" - integrity sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg== - -loose-envify@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lower-case@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= - -lower-case@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" - integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== - dependencies: - tslib "^2.0.3" - -lru-cache@^4.1.2, lru-cache@^4.1.5: - version "4.1.5" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" - integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - -make-dir@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== - dependencies: - pify "^3.0.0" - -make-dir@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" - integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== - dependencies: - pify "^4.0.1" - semver "^5.6.0" - -make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0, make-dir@~3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +gauge@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" + integrity sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q== dependencies: - semver "^6.0.0" + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.2" + console-control-strings "^1.0.0" + has-unicode "^2.0.1" + object-assign "^4.1.1" + signal-exit "^3.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.2" -make-error@1.x: - version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" - integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= - dependencies: - tmpl "1.0.x" +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -map-age-cleaner@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" - integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== +get-port-please@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/get-port-please/-/get-port-please-2.6.1.tgz#80143de24fcaab39b01df977f66ad967e06b17d1" + integrity sha512-4PDSrL6+cuMM1xs6w36ZIkaKzzE0xzfVBCfebHIJ3FE8iB9oic/ECwPw3iNiD4h1AoJ5XLLBhEviFAVrZsDC5A== dependencies: - p-defer "^1.0.0" + fs-memo "^1.2.0" -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== -map-visit@^1.0.0: +giget@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + resolved "https://registry.yarnpkg.com/giget/-/giget-1.0.0.tgz#fdd7e61a84996b19e00d2d4a6a65c60cc1f61c3d" + integrity sha512-KWELZn3Nxq5+0So485poHrFriK9Bn3V/x9y+wgqrHkbmnGbjfLmZ685/SVA/ovW+ewoqW0gVI47pI4yW/VNobQ== dependencies: - object-visit "^1.0.0" + colorette "^2.0.19" + defu "^6.1.1" + https-proxy-agent "^5.0.1" + mri "^1.2.0" + node-fetch-native "^1.0.1" + pathe "^1.0.0" + tar "^6.1.12" -markdown-table@^2.0.0: +git-config-path@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-2.0.0.tgz#194a90ced26d31fe753d8b9434430214c011865b" - integrity sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A== - dependencies: - repeat-string "^1.0.0" + resolved "https://registry.yarnpkg.com/git-config-path/-/git-config-path-2.0.0.tgz#62633d61af63af4405a5024efd325762f58a181b" + integrity sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA== -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== +git-up@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/git-up/-/git-up-7.0.0.tgz#bace30786e36f56ea341b6f69adfd83286337467" + integrity sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ== dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" + is-ssh "^1.4.0" + parse-url "^8.1.0" -mdast-squeeze-paragraphs@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz#7c4c114679c3bee27ef10b58e2e015be79f1ef97" - integrity sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ== +git-url-parse@^13.1.0: + version "13.1.0" + resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-13.1.0.tgz#07e136b5baa08d59fabdf0e33170de425adf07b4" + integrity sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA== dependencies: - unist-util-remove "^2.0.0" + git-up "^7.0.0" -mdast-util-definitions@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz#c5c1a84db799173b4dcf7643cda999e440c24db2" - integrity sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ== - dependencies: - unist-util-visit "^2.0.0" +github-slugger@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-2.0.0.tgz#52cf2f9279a21eb6c59dd385b410f0c0adda8f1a" + integrity sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw== -mdast-util-find-and-replace@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz#b7db1e873f96f66588c321f1363069abf607d1b5" - integrity sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA== +glob-parent@^5.1.2, glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: - escape-string-regexp "^4.0.0" - unist-util-is "^4.0.0" - unist-util-visit-parents "^3.0.0" + is-glob "^4.0.1" -mdast-util-footnote@^0.1.0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/mdast-util-footnote/-/mdast-util-footnote-0.1.7.tgz#4b226caeab4613a3362c144c94af0fdd6f7e0ef0" - integrity sha512-QxNdO8qSxqbO2e3m09KwDKfWiLgqyCurdWTQ198NpbZ2hxntdc+VKS4fDJCmNWbAroUdYnSthu+XbZ8ovh8C3w== +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== dependencies: - mdast-util-to-markdown "^0.6.0" - micromark "~2.11.0" + is-glob "^4.0.3" -mdast-util-from-markdown@^0.8.0: - version "0.8.5" - resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz#d1ef2ca42bc377ecb0463a987910dae89bd9a28c" - integrity sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ== +glob@^7.1.3, glob@^7.1.4: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: - "@types/mdast" "^3.0.0" - mdast-util-to-string "^2.0.0" - micromark "~2.11.0" - parse-entities "^2.0.0" - unist-util-stringify-position "^2.0.0" + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" -mdast-util-gfm-autolink-literal@^0.1.0: - version "0.1.3" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz#9c4ff399c5ddd2ece40bd3b13e5447d84e385fb7" - integrity sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A== +glob@^8.0.3: + version "8.0.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" + integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ== dependencies: - ccount "^1.0.0" - mdast-util-find-and-replace "^1.1.0" - micromark "^2.11.3" + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -mdast-util-gfm-strikethrough@^0.2.0: - version "0.2.3" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz#45eea337b7fff0755a291844fbea79996c322890" - integrity sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA== +globby@^13.1.2: + version "13.1.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-13.1.2.tgz#29047105582427ab6eca4f905200667b056da515" + integrity sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ== dependencies: - mdast-util-to-markdown "^0.6.0" + dir-glob "^3.0.1" + fast-glob "^3.2.11" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^4.0.0" -mdast-util-gfm-table@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz#af05aeadc8e5ee004eeddfb324b2ad8c029b6ecf" - integrity sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ== +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.9: + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== + +gzip-size@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-7.0.0.tgz#9f9644251f15bc78460fccef4055ae5a5562ac60" + integrity sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA== dependencies: - markdown-table "^2.0.0" - mdast-util-to-markdown "~0.6.0" + duplexer "^0.1.2" -mdast-util-gfm-task-list-item@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz#70c885e6b9f543ddd7e6b41f9703ee55b084af10" - integrity sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A== +h3@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/h3/-/h3-1.0.1.tgz#1fc56ecfaba97a437db4a48e9f3b4a4b0b151e24" + integrity sha512-gDCGpRvjchZW2JBlTqbJ9IOs+mdkXXuwSQkSye+jubHAv/UhdamKqoQvd4RFgyBNjHSId8Y+b10UdTcPlP/V+w== dependencies: - mdast-util-to-markdown "~0.6.0" + cookie-es "^0.5.0" + destr "^1.2.1" + radix3 "^1.0.0" + ufo "^1.0.0" -mdast-util-gfm@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz#8ecddafe57d266540f6881f5c57ff19725bd351c" - integrity sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ== +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-unicode@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: - mdast-util-gfm-autolink-literal "^0.1.0" - mdast-util-gfm-strikethrough "^0.2.0" - mdast-util-gfm-table "^0.1.0" - mdast-util-gfm-task-list-item "^0.1.0" - mdast-util-to-markdown "^0.6.1" + function-bind "^1.1.1" -mdast-util-to-hast@^10.0.0, mdast-util-to-hast@^10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-10.2.0.tgz#61875526a017d8857b71abc9333942700b2d3604" - integrity sha512-JoPBfJ3gBnHZ18icCwHR50orC9kNH81tiR1gs01D8Q5YpV6adHNO9nKNuFBCJQ941/32PT1a63UF/DitmS3amQ== +hash-sum@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a" + integrity sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg== + +hast-to-hyperscript@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-10.0.1.tgz#3decd7cb4654bca8883f6fcbd4fb3695628c4296" + integrity sha512-dhIVGoKCQVewFi+vz3Vt567E4ejMppS1haBRL6TEmeLeJVB1i/FJIIg/e6s1Bwn0g5qtYojHEKvyGA+OZuyifw== dependencies: - "@types/mdast" "^3.0.0" "@types/unist" "^2.0.0" - mdast-util-definitions "^4.0.0" - mdurl "^1.0.0" - unist-builder "^2.0.0" - unist-util-generated "^1.0.0" - unist-util-position "^3.0.0" - unist-util-visit "^2.0.0" - -mdast-util-to-markdown@^0.6.0, mdast-util-to-markdown@^0.6.1, mdast-util-to-markdown@~0.6.0: - version "0.6.5" - resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz#b33f67ca820d69e6cc527a93d4039249b504bebe" - integrity sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ== + comma-separated-tokens "^2.0.0" + property-information "^6.0.0" + space-separated-tokens "^2.0.0" + style-to-object "^0.3.0" + unist-util-is "^5.0.0" + web-namespaces "^2.0.0" + +hast-util-from-parse5@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-7.1.0.tgz#c129dd3a24dd8a867ab8a029ca47e27aa54864b7" + integrity sha512-m8yhANIAccpU4K6+121KpPP55sSl9/samzQSQGpb0mTExcNh2WlvjtMwSWFhg6uqD4Rr6Nfa8N6TMypQM51rzQ== dependencies: + "@types/hast" "^2.0.0" + "@types/parse5" "^6.0.0" "@types/unist" "^2.0.0" - longest-streak "^2.0.0" - mdast-util-to-string "^2.0.0" - parse-entities "^2.0.0" - repeat-string "^1.0.0" - zwitch "^1.0.0" - -mdast-util-to-string@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz#27055500103f51637bd07d01da01eb1967a43527" - integrity sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A== + hastscript "^7.0.0" + property-information "^6.0.0" + vfile "^5.0.0" + vfile-location "^4.0.0" + web-namespaces "^2.0.0" -mdast-util-to-string@^2.0.0: +hast-util-has-property@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz#b8cfe6a713e1091cb5b728fc48885a4767f8b97b" - integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w== - -mdn-data@2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" - integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== - -mdn-data@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" - integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== - -mdurl@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" - integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + resolved "https://registry.yarnpkg.com/hast-util-has-property/-/hast-util-has-property-2.0.0.tgz#c15cd6180f3e535540739fcc9787bcffb5708cae" + integrity sha512-4Qf++8o5v14us4Muv3HRj+Er6wTNGA/N9uCaZMty4JWvyFKLdhULrv4KE1b65AthsSO9TXSZnjuxS8ecIyhb0w== -mem@^8.0.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-8.1.0.tgz#445e47827fb757a4e5f35b0a6a62743cbfdc0a0d" - integrity sha512-FIkgXo0kTi3XpvaznV5Muk6Y6w8SkdmRXcY7ZLonQesuYezp59UooLxAVBcGuN6PH2tXN84mR3vyzSc6oSMUfA== +hast-util-heading-rank@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/hast-util-heading-rank/-/hast-util-heading-rank-2.1.0.tgz#c39f34fa8330ebfec03a08b5d5019ed56122029c" + integrity sha512-w+Rw20Q/iWp2Bcnr6uTrYU6/ftZLbHKhvc8nM26VIWpDqDMlku2iXUVTeOlsdoih/UKQhY7PHQ+vZ0Aqq8bxtQ== dependencies: - map-age-cleaner "^0.1.3" - mimic-fn "^3.1.0" + "@types/hast" "^2.0.0" -memfs@^3.1.2, memfs@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.2.0.tgz#f9438e622b5acd1daa8a4ae160c496fdd1325b26" - integrity sha512-f/xxz2TpdKv6uDn6GtHee8ivFyxwxmPuXatBb1FBwxYNuVpbM3k/Y1Z+vC0mH/dIXXrukYfe3qe5J32Dfjg93A== +hast-util-is-element@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-2.1.2.tgz#fc0b0dc7cef3895e839b8d66979d57b0338c68f3" + integrity sha512-thjnlGAnwP8ef/GSO1Q8BfVk2gundnc2peGQqEg2kUt/IqesiGg/5mSwN2fE7nLzy61pg88NG6xV+UrGOrx9EA== dependencies: - fs-monkey "1.0.1" + "@types/hast" "^2.0.0" + "@types/unist" "^2.0.0" -memory-fs@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= +hast-util-parse-selector@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-3.1.0.tgz#a519e27e8b61bd5a98fad494ed06131ce68d9c3f" + integrity sha512-AyjlI2pTAZEOeu7GeBPZhROx0RHBnydkQIXlhnFzDi0qfXTmGUWoCYZtomHbrdrheV4VFUlPcfJ6LMF5T6sQzg== dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" + "@types/hast" "^2.0.0" -memory-fs@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" - integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== +hast-util-raw@^7.2.0: + version "7.2.3" + resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-7.2.3.tgz#dcb5b22a22073436dbdc4aa09660a644f4991d99" + integrity sha512-RujVQfVsOrxzPOPSzZFiwofMArbQke6DJjnFfceiEbFh7S05CbPt0cYN+A5YeD3pso0JQk6O1aHBnx9+Pm2uqg== dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" + "@types/hast" "^2.0.0" + "@types/parse5" "^6.0.0" + hast-util-from-parse5 "^7.0.0" + hast-util-to-parse5 "^7.0.0" + html-void-elements "^2.0.0" + parse5 "^6.0.0" + unist-util-position "^4.0.0" + unist-util-visit "^4.0.0" + vfile "^5.0.0" + web-namespaces "^2.0.0" + zwitch "^2.0.0" -merge-source-map@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" - integrity sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw== +hast-util-to-parse5@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-7.0.0.tgz#a39808e69005d10afeed1866029a1fb137df3f7c" + integrity sha512-YHiS6aTaZ3N0Q3nxaY/Tj98D6kM8QX5Q8xqgg8G45zR7PvWnPGPP0vcKCgb/moIydEJ/QWczVrX0JODCVeoV7A== dependencies: - source-map "^0.6.1" + "@types/hast" "^2.0.0" + "@types/parse5" "^6.0.0" + hast-to-hyperscript "^10.0.0" + property-information "^6.0.0" + web-namespaces "^2.0.0" + zwitch "^2.0.0" -merge-stream@^2.0.0: +hast-util-to-string@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.3.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - -methods@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -micromark-extension-footnote@^0.3.0: - version "0.3.2" - resolved "https://registry.yarnpkg.com/micromark-extension-footnote/-/micromark-extension-footnote-0.3.2.tgz#129b74ef4920ce96719b2c06102ee7abb2b88a20" - integrity sha512-gr/BeIxbIWQoUm02cIfK7mdMZ/fbroRpLsck4kvFtjbzP4yi+OPVbnukTc/zy0i7spC2xYE/dbX1Sur8BEDJsQ== + resolved "https://registry.yarnpkg.com/hast-util-to-string/-/hast-util-to-string-2.0.0.tgz#b008b0a4ea472bf34dd390b7eea1018726ae152a" + integrity sha512-02AQ3vLhuH3FisaMM+i/9sm4OXGSq1UhOOCpTLLQtHdL3tZt7qil69r8M8iDkZYyC0HCFylcYoP+8IO7ddta1A== dependencies: - micromark "~2.11.0" + "@types/hast" "^2.0.0" -micromark-extension-gfm-autolink-literal@~0.5.0: - version "0.5.6" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.6.tgz#406a58914d7a9cc6fb4cfafccc61a8ca36d7a12a" - integrity sha512-nHbR1NUOVhmlZNsnhE5B7WJzL7Xd8lc888z4AF27IpHMtO3NstclZmbrMI+AcdTPpO1wuGVwlK1Cnq+n8Sxlrw== +hastscript@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-7.1.0.tgz#e402ed48f46161cf2f093badbff30583a5c3c315" + integrity sha512-uBjaTTLN0MkCZxY/R2fWUOcu7FRtUVzKRO5P/RAfgsu3yFiMB1JWCO4AjeVkgHxAira1f2UecHK5WfS9QurlWA== dependencies: - micromark "~2.11.3" + "@types/hast" "^2.0.0" + comma-separated-tokens "^2.0.0" + hast-util-parse-selector "^3.0.0" + property-information "^6.0.0" + space-separated-tokens "^2.0.0" -micromark-extension-gfm-strikethrough@~0.6.5: - version "0.6.5" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz#96cb83356ff87bf31670eefb7ad7bba73e6514d1" - integrity sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw== - dependencies: - micromark "~2.11.0" +hookable@^5.4.2: + version "5.4.2" + resolved "https://registry.yarnpkg.com/hookable/-/hookable-5.4.2.tgz#6a1d3c4b3cb5b4262f99b3070ce0ee92c9c78049" + integrity sha512-6rOvaUiNKy9lET1X0ECnyZ5O5kSV0PJbtA5yZUgdEF7fGJEVwSLSislltyt7nFwVVALYHQJtfGeAR2Y0A0uJkg== -micromark-extension-gfm-table@~0.4.0: - version "0.4.3" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz#4d49f1ce0ca84996c853880b9446698947f1802b" - integrity sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA== - dependencies: - micromark "~2.11.0" +html-tags@^3.1.0, html-tags@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.2.0.tgz#dbb3518d20b726524e4dd43de397eb0a95726961" + integrity sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg== -micromark-extension-gfm-tagfilter@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz#d9f26a65adee984c9ccdd7e182220493562841ad" - integrity sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q== +html-void-elements@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-2.0.1.tgz#29459b8b05c200b6c5ee98743c41b979d577549f" + integrity sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A== -micromark-extension-gfm-task-list-item@~0.3.0: - version "0.3.3" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz#d90c755f2533ed55a718129cee11257f136283b8" - integrity sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ== +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== dependencies: - micromark "~2.11.0" + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" -micromark-extension-gfm@^0.3.0: - version "0.3.3" - resolved "https://registry.yarnpkg.com/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz#36d1a4c089ca8bdfd978c9bd2bf1a0cb24e2acfe" - integrity sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A== +http-proxy@^1.18.1: + version "1.18.1" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" + integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== dependencies: - micromark "~2.11.0" - micromark-extension-gfm-autolink-literal "~0.5.0" - micromark-extension-gfm-strikethrough "~0.6.5" - micromark-extension-gfm-table "~0.4.0" - micromark-extension-gfm-tagfilter "~0.3.0" - micromark-extension-gfm-task-list-item "~0.3.0" + eventemitter3 "^4.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" -micromark@^2.11.3, micromark@~2.11.0, micromark@~2.11.3: - version "2.11.4" - resolved "https://registry.yarnpkg.com/micromark/-/micromark-2.11.4.tgz#d13436138eea826383e822449c9a5c50ee44665a" - integrity sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA== - dependencies: - debug "^4.0.0" - parse-entities "^2.0.0" - -micromatch@^3.1.10, micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -micromatch@^4.0.0, micromatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" - integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== - dependencies: - braces "^3.0.1" - picomatch "^2.0.5" +http-shutdown@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/http-shutdown/-/http-shutdown-1.2.2.tgz#41bc78fc767637c4c95179bc492f312c0ae64c5f" + integrity sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw== -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== +https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" + agent-base "6" + debug "4" -mime-db@1.46.0, "mime-db@>= 1.43.0 < 2": - version "1.46.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.46.0.tgz#6267748a7f799594de3cbc8cde91def349661cee" - integrity sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ== +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -mime-types@^2.1.12, mime-types@^2.1.18, mime-types@^2.1.19, mime-types@^2.1.27, mime-types@^2.1.28, mime-types@~2.1.19, mime-types@~2.1.24: - version "2.1.29" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.29.tgz#1d4ab77da64b91f5f72489df29236563754bb1b2" - integrity sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ== +iconv-lite@^0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: - mime-db "1.46.0" - -mime@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + safer-buffer ">= 2.1.2 < 3" -mime@^2.3.1, mime@~2.5.2: - version "2.5.2" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz#6e3dc6cc2b9510643830e5f19d5cb753da5eeabe" - integrity sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg== +ieee754@^1.1.13, ieee754@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== +ignore@^5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.1.tgz#c2b1f76cb999ede1502f3a226a9310fdfe88d46c" + integrity sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA== -mimic-fn@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-3.1.0.tgz#65755145bbf3e36954b949c16450427451d5ca74" - integrity sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ== +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" -mini-svg-data-uri@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/mini-svg-data-uri/-/mini-svg-data-uri-1.2.3.tgz#e16baa92ad55ddaa1c2c135759129f41910bc39f" - integrity sha512-zd6KCAyXgmq6FV1mR10oKXYtvmA9vRoB6xPSTUJTbFApCtkefDnYueVR1gkof3KcdLZo1Y8mjF2DFmQMIxsHNQ== +inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== +ini@^1.3.5: + version "1.3.8" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= +inline-style-parser@0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" + integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== -minimatch@^3.0.4, minimatch@~3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== +inquirer@^9.1.4: + version "9.1.4" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-9.1.4.tgz#482da8803670a64bd942bc5166a9547a19d41474" + integrity sha512-9hiJxE5gkK/cM2d1mTEnuurGTAoHebbkX0BYl3h7iEg7FYfuNIom+nDfBCSWtvSnoSrWCeBxqqBZu26xdlJlXA== dependencies: - brace-expansion "^1.1.7" + ansi-escapes "^6.0.0" + chalk "^5.1.2" + cli-cursor "^4.0.0" + cli-width "^4.0.0" + external-editor "^3.0.3" + figures "^5.0.0" + lodash "^4.17.21" + mute-stream "0.0.8" + ora "^6.1.2" + run-async "^2.4.0" + rxjs "^7.5.7" + string-width "^5.1.2" + strip-ansi "^7.0.1" + through "^2.3.6" + wrap-ansi "^8.0.1" + +ioredis@^5.2.4: + version "5.2.4" + resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-5.2.4.tgz#9e262a668bc29bae98f2054c1e0d7efd86996b96" + integrity sha512-qIpuAEt32lZJQ0XyrloCRdlEdUUNGG9i0UOk6zgzK6igyudNWqEBxfH6OlbnOOoBBvr1WB02mm8fR55CnikRng== + dependencies: + "@ioredis/commands" "^1.1.1" + cluster-key-slot "^1.1.0" + debug "^4.3.4" + denque "^2.0.1" + lodash.defaults "^4.2.0" + lodash.isarguments "^3.1.0" + redis-errors "^1.2.0" + redis-parser "^3.0.0" + standard-as-callback "^2.1.0" + +ip-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-5.0.0.tgz#cd313b2ae9c80c07bd3851e12bf4fa4dc5480632" + integrity sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw== -minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== +is-absolute-url@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-4.0.1.tgz#16e4d487d4fded05cfe0685e53ec86804a5e94dc" + integrity sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A== -minipass-collect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" - integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== - dependencies: - minipass "^3.0.0" +is-alphabetical@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-2.0.1.tgz#01072053ea7c1036df3c7d19a6daaec7f19e789b" + integrity sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ== -minipass-flush@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" - integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== +is-alphanumerical@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz#7c03fbe96e3e931113e57f964b0a368cc2dfd875" + integrity sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw== dependencies: - minipass "^3.0.0" + is-alphabetical "^2.0.0" + is-decimal "^2.0.0" -minipass-pipeline@^1.2.2: - version "1.2.4" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" - integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: - minipass "^3.0.0" + binary-extensions "^2.0.0" -minipass@^3.0.0, minipass@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" - integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== +is-buffer@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + +is-builtin-module@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.0.tgz#bb0310dfe881f144ca83f30100ceb10cf58835e0" + integrity sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw== dependencies: - yallist "^4.0.0" + builtin-modules "^3.3.0" -minizlib@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" - integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== +is-core-module@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== dependencies: - minipass "^3.0.0" - yallist "^4.0.0" + has "^1.0.3" + +is-decimal@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-2.0.1.tgz#9469d2dc190d0214fd87d78b78caecc0cc14eef7" + integrity sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A== + +is-docker@^2.0.0, is-docker@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== -mississippi@^3.0.0: +is-docker@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mkdirp@1.x, mkdirp@^1.0.3, mkdirp@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" + integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== -mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.1: - 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" +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== -modern-normalize@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/modern-normalize/-/modern-normalize-1.0.0.tgz#539d84a1e141338b01b346f3e27396d0ed17601e" - integrity sha512-1lM+BMLGuDfsdwf3rsgBSrxJwAZHFIrQ8YR61xIqdHo0uNKI9M52wNpHSrliZATJp51On6JD0AfRxd4YGSU0lw== +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= +is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" + is-extglob "^2.1.1" -ms@2.0.0: +is-hexadecimal@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz#86b5bf668fca307498d319dfc03289d781a90027" + integrity sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg== + +is-interactive@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-2.0.0.tgz#40c57614593826da1100ade6059778d597f16e90" + integrity sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ== -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== +is-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" + integrity sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g== -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -ms@^2.1.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +is-plain-obj@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" + integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg== -multimap@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multimap/-/multimap-1.1.0.tgz#5263febc085a1791c33b59bb3afc6a76a2a10ca8" - integrity sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw== +is-primitive@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-3.0.1.tgz#98c4db1abff185485a657fc2905052b940524d05" + integrity sha512-GljRxhWvlCNRfZyORiH77FwdFwGcMO620o37EOYC0ORWdq+WYNVqW0w2Juzew4M+L81l6/QS3t5gkkihyRqv9w== -mustache@^2.3.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/mustache/-/mustache-2.3.2.tgz#a6d4d9c3f91d13359ab889a812954f9230a3d0c5" - integrity sha512-KpMNwdQsYz3O/SBS1qJ/o3sqUJ5wSb8gb0pul8CO0S56b9Y2ALm8zCfsjPXsqGFfoNBkDwZuZIAjhsZI03gYVQ== +is-promise@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-4.0.0.tgz#42ff9f84206c1991d26debf520dd5c01042dd2f3" + integrity sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ== -mute-stream@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" - integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== +is-reference@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" + integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ== + dependencies: + "@types/estree" "*" -nan@^2.12.1: - version "2.14.2" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" - integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== - -nanoid@^3.1.20, nanoid@^3.1.22: - version "3.1.22" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.22.tgz#b35f8fb7d151990a8aebd5aa5015c03cf726f844" - integrity sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -natural-compare@^1.4.0: +is-ssh@^1.4.0: version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -negotiator@0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" - integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.4.0.tgz#4f8220601d2839d8fa624b3106f8e8884f01b8b2" + integrity sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ== + dependencies: + protocols "^2.0.1" -neo-async@^2.5.0, neo-async@^2.6.1, neo-async@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" - integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== +is-unicode-supported@^1.1.0, is-unicode-supported@^1.2.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz#d824984b616c292a2e198207d4a609983842f714" + integrity sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ== -no-case@^2.2.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" - integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== dependencies: - lower-case "^1.1.1" + is-docker "^2.0.0" -no-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" - integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== - dependencies: - lower-case "^2.0.2" - tslib "^2.0.3" +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== -node-addon-api@^1.7.1: - version "1.7.2" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d" - integrity sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg== +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -node-cache@^4.1.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/node-cache/-/node-cache-4.2.1.tgz#efd8474dee4edec4138cdded580f5516500f7334" - integrity sha512-BOb67bWg2dTyax5kdef5WfU3X8xu4wPg+zHzkvls0Q/QpYycIFRLEEIdAx9Wma43DxG6Qzn4illdZoYseKWa4A== +jest-worker@^26.2.1: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== dependencies: - clone "2.x" - lodash "^4.17.15" + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" -node-emoji@^1.8.1: - version "1.10.0" - resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.10.0.tgz#8886abd25d9c7bb61802a658523d1f8d2a89b2da" - integrity sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw== - dependencies: - lodash.toarray "^4.4.0" +jiti@^1.16.0: + version "1.16.0" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.16.0.tgz#f72065954446ad1866fa8d6bcc3bed3cc1cebdaa" + integrity sha512-L3BJStEf5NAqNuzrpfbN71dp43mYIcBUlCRea/vdyv5dW/AYa1d4bpelko4SHdY3I6eN9Wzyasxirj1/vv5kmg== -node-fetch@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" - integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -node-html-parser@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/node-html-parser/-/node-html-parser-2.2.1.tgz#6507a8658810d1612890a8ddd534e01b2f97e07e" - integrity sha512-Vccqb62t6t7DkMVwqPQgb0NWO+gUMMDm+1X3LzqbtXLqjilCTtUYTlniKk08yuA1zIhEFVzu/dozpqs5KZbRFQ== +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: - he "1.2.0" + argparse "^2.0.1" -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -node-libs-browser@^2.2.1: +json5@^2.2.1: version "2.2.1" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" - integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^3.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.1" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.11.0" - vm-browserify "^1.0.1" - -node-modules-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" - integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" + integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== -node-notifier@^8.0.0: - version "8.0.2" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" - integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== - dependencies: - growly "^1.3.0" - is-wsl "^2.2.0" - semver "^7.3.2" - shellwords "^0.1.1" - uuid "^8.3.0" - which "^2.0.2" - -node-object-hash@^1.2.0: - version "1.4.2" - resolved "https://registry.yarnpkg.com/node-object-hash/-/node-object-hash-1.4.2.tgz#385833d85b229902b75826224f6077be969a9e94" - integrity sha512-UdS4swXs85fCGWWf6t6DMGgpN/vnlKeSGEQ7hJcrs7PBFoxoKLmibc3QRb7fwiYsjdL7PX8iI/TMSlZ90dgHhQ== - -node-releases@^1.1.70: - version "1.1.71" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.71.tgz#cb1334b179896b1c89ecfdd4b725fb7bbdfc7dbb" - integrity sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg== - -node-req@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/node-req/-/node-req-2.1.2.tgz#32db660855db03b456de370ee0d53ecd6220287e" - integrity sha512-zJqZ03vs0oHN8u+wn7kUT/vj63jQdQvNYWjbRMGNVu7ijV3mVz8UwX7pJl7LUugOT2x8vBKasKqbUqnh6GDKMQ== - dependencies: - accepts "^1.3.5" - fresh "^0.5.2" - parseurl "^1.3.2" - proxy-addr "^2.0.4" - qs "^6.5.2" - type-is "^1.6.16" +jsonc-parser@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" + integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== -node-res@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/node-res/-/node-res-5.0.1.tgz#ffaa462e206509d66d0ba28a4daf1f032daa6460" - integrity sha512-YOleO9c7MAqoHC+Ccu2vzvV1fL6Ku49gShq3PIMKWHRgrMSih3XcwL05NbLBi6oU2J471gTBfdpVVxwT6Pfhxg== +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== dependencies: - destroy "^1.0.4" - etag "^1.8.1" - mime-types "^2.1.19" - on-finished "^2.3.0" - vary "^1.1.2" + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" -nopt@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" - integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== - dependencies: - abbrev "1" +kleur@^4.0.3: + version "4.1.5" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" + integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== -normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" +klona@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" + integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= +knitwork@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/knitwork/-/knitwork-1.0.0.tgz#38d124dead875bee5feea1733632295af58a49d2" + integrity sha512-dWl0Dbjm6Xm+kDxhPQJsCBTxrJzuGl0aP9rhr+TG8D3l+GL90N8O8lYUi7dTSAN2uuDqCtNgb6aEuQH5wsiV8Q== + +lazystream@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.1.tgz#494c831062f1f9408251ec44db1cba29242a2638" + integrity sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw== dependencies: - remove-trailing-separator "^1.0.1" + readable-stream "^2.0.5" -normalize-path@^3.0.0, normalize-path@~3.0.0: +lilconfig@^2.0.3, lilconfig@^2.0.5, lilconfig@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.6.tgz#32a384558bd58af3d4c6e077dd1ad1d397bc69d4" + integrity sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg== + +listhen@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/listhen/-/listhen-1.0.1.tgz#31054d08d850ad21473768085a50a8b34a635070" + integrity sha512-RBzBGHMCc5wP8J5Vf8WgF4CAJH8dWHi9LaKB7vfzZt54CiH/0dp01rudy2hFD9wCrTM+UfxFVnn5wTIiY+Qhiw== + dependencies: + clipboardy "^3.0.0" + colorette "^2.0.19" + defu "^6.1.1" + get-port-please "^2.6.1" + http-shutdown "^1.2.2" + ip-regex "^5.0.0" + node-forge "^1.3.1" + ufo "^1.0.0" + +local-pkg@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.4.2.tgz#13107310b77e74a0e513147a131a2ba288176c2f" + integrity sha512-mlERgSPrbxU3BP4qBqAvvwlgW4MTg78iwJdGGnv7kibKjWcJksrG3t6LB5lXI93wXRDvG4NpUgJFmTG4T6rdrg== + +lodash._reinterpolate@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= +lodash.castarray@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.castarray/-/lodash.castarray-4.4.0.tgz#c02513515e309daddd4c24c60cfddcf5976d9115" + integrity sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q== -normalize-url@1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= - dependencies: - object-assign "^4.0.1" - prepend-http "^1.0.0" - query-string "^4.1.0" - sort-keys "^1.0.0" +lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== -normalize-url@^3.0.0, normalize-url@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" - integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== +lodash.defaults@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" + integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" +lodash.difference@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c" + integrity sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA== -npm-run-path@^4.0.0, npm-run-path@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" +lodash.flatten@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" + integrity sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g== -nth-check@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" +lodash.isarguments@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + integrity sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg== -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - -nuxt-i18n@^6.24.0: - version "6.24.0" - resolved "https://registry.yarnpkg.com/nuxt-i18n/-/nuxt-i18n-6.24.0.tgz#adc7cc64c95ef8325cadd1c29726ce4662619068" - integrity sha512-GrJzeSg31cDqmgT3TPt00mJ/flJ4qyL5AMf/fL6hvkMjRvlRyKcQRbGOvRYi9D0yef4RPM6sWBILskI/PZbPyQ== - dependencies: - "@babel/parser" "^7.5.5" - "@babel/traverse" "^7.5.5" - "@intlify/vue-i18n-extensions" "^1.0.1" - "@intlify/vue-i18n-loader" "^1.0.0" - cookie "^0.4.0" - devalue "^2.0.1" - js-cookie "^2.2.1" - klona "^2.0.4" - lodash.merge "^4.6.2" - ufo "^0.6.7" - vue-i18n "^8.23.0" +lodash.isplainobject@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== -nuxt-property-decorator@^2.9.1: - version "2.9.1" - resolved "https://registry.yarnpkg.com/nuxt-property-decorator/-/nuxt-property-decorator-2.9.1.tgz#60fd87b64d85519b091374c7ea4c0ce1979f6afa" - integrity sha512-dE2GrrGKZMhv0dHAr+Lmj+JOQfjIouINgF58QNRDFNOZXMJrXxKO5zGqvCRwmx3hxqqwht7TXHdz9w1AnvL2IA== - dependencies: - vue-class-component "^7.2.6" - vue-property-decorator "^9.0.0" - vuex-class "^0.3.2" - vuex-module-decorators "^1.0.1" +lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== -nuxt@^2.15.3: - version "2.15.3" - resolved "https://registry.yarnpkg.com/nuxt/-/nuxt-2.15.3.tgz#6262707de8a824df0718fc88653c74a916aa5122" - integrity sha512-zeeOr7KxTYE0nbztUvH3YtcU+V5cZxuIhErBFt+ckFJ1R7uiptrfFrtVPouPm2uU4Kj+8MdARCQq+hzdfwUQig== - dependencies: - "@nuxt/babel-preset-app" "2.15.3" - "@nuxt/builder" "2.15.3" - "@nuxt/cli" "2.15.3" - "@nuxt/components" "^2.1.2" - "@nuxt/config" "2.15.3" - "@nuxt/core" "2.15.3" - "@nuxt/generator" "2.15.3" - "@nuxt/loading-screen" "^2.0.3" - "@nuxt/opencollective" "^0.3.2" - "@nuxt/server" "2.15.3" - "@nuxt/telemetry" "^1.3.3" - "@nuxt/utils" "2.15.3" - "@nuxt/vue-app" "2.15.3" - "@nuxt/vue-renderer" "2.15.3" - "@nuxt/webpack" "2.15.3" - -nwsapi@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" - integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== +lodash.pick@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" + integrity sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q== -object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= +lodash.template@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" + integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.templatesettings "^4.0.0" -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= +lodash.templatesettings@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" + integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" + lodash._reinterpolate "^3.0.0" -object-hash@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.1.1.tgz#9447d0279b4fcf80cff3259bf66a1dc73afabe09" - integrity sha512-VOJmgmS+7wvXf8CjbQmimtCnEx3IAoLxI3fp2fbWehxrWBcAQFbk+vcwb6vzR0VZv/eNCJ/27j151ZTwqW/JeQ== +lodash.union@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" + integrity sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw== -object-inspect@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.9.0.tgz#c90521d74e1127b67266ded3394ad6116986533a" - integrity sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw== +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== -object-keys@^1.0.12, object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== +lodash@^4.17.21: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= +log-symbols@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-5.1.0.tgz#a20e3b9a5f53fac6aeb8e2bb22c07cf2c8f16d93" + integrity sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA== dependencies: - isobject "^3.0.0" + chalk "^5.0.0" + is-unicode-supported "^1.1.0" -object.assign@^4.1.0, object.assign@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" - integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== - dependencies: - call-bind "^1.0.0" - define-properties "^1.1.3" - has-symbols "^1.0.1" - object-keys "^1.1.1" +longest-streak@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4" + integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g== -object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz#1bd63aeacf0d5d2d2f31b5e393b03a7c601a23f7" - integrity sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ== +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.2" + yallist "^4.0.0" -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= +magic-string@^0.25.7: + version "0.25.9" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" + integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== dependencies: - isobject "^3.0.1" + sourcemap-codec "^1.4.8" -object.values@^1.1.0, object.values@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.3.tgz#eaa8b1e17589f02f698db093f7c62ee1699742ee" - integrity sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw== +magic-string@^0.26.4, magic-string@^0.26.7: + version "0.26.7" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.26.7.tgz#caf7daf61b34e9982f8228c4527474dac8981d6f" + integrity sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow== dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.18.0-next.2" - has "^1.0.3" + sourcemap-codec "^1.4.8" -on-finished@^2.3.0, on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= +make-dir@^3.1.0, make-dir@~3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: - ee-first "1.1.1" + semver "^6.0.0" -on-headers@^1.0.2, on-headers@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" - integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== +markdown-table@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-3.0.3.tgz#e6331d30e493127e031dd385488b5bd326e4a6bd" + integrity sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw== -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= +mdast-squeeze-paragraphs@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-5.2.0.tgz#23440cea3586a1cb70771f98971d4f8bf1dbb36b" + integrity sha512-uqPZ2smyXe0gNjweQaDkm7eK/KgvcS0u9X9yu28Yj/UOmK6CN6JRs/puzAGQw72vZcxWxs05LxkUTwZIsQZvrw== dependencies: - wrappy "1" + "@types/mdast" "^3.0.0" + unist-util-remove "^3.0.0" -onetime@^5.1.0, onetime@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" - integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== +mdast-util-definitions@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-5.1.1.tgz#2c1d684b28e53f84938bb06317944bee8efa79db" + integrity sha512-rQ+Gv7mHttxHOBx2dkF4HWTg+EE+UR78ptQWDylzPKaQuVGdG4HIoY3SrS/pCp80nZ04greFvXbVFHT+uf0JVQ== dependencies: - mimic-fn "^2.1.0" - -only@~0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/only/-/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4" - integrity sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q= + "@types/mdast" "^3.0.0" + "@types/unist" "^2.0.0" + unist-util-visit "^4.0.0" -open@^7.0.4: - version "7.4.2" - resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" - integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== +mdast-util-find-and-replace@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.1.tgz#249901ef43c5f41d6e8a8d446b3b63b17e592d7c" + integrity sha512-SobxkQXFAdd4b5WmEakmkVoh18icjQRxGy5OWTCzgsLRm1Fu/KCtwD1HIQSsmq5ZRjVH0Ehwg6/Fn3xIUk+nKw== dependencies: - is-docker "^2.0.0" - is-wsl "^2.1.1" - -opener@1.5.2, opener@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" - integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== - -optimize-css-assets-webpack-plugin@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.4.tgz#85883c6528aaa02e30bbad9908c92926bb52dc90" - integrity sha512-wqd6FdI2a5/FdoiCNNkEvLeA//lHHfG24Ln2Xm2qqdIk4aOlsR18jwpyOihqQ8849W3qu2DX8fOYxpvTMj+93A== - dependencies: - cssnano "^4.1.10" - last-call-webpack-plugin "^3.0.0" - -optionator@^0.8.1: - version "0.8.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" - integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.6" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - word-wrap "~1.2.3" - -optionator@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" - integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== - dependencies: - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - word-wrap "^1.2.3" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= + escape-string-regexp "^5.0.0" + unist-util-is "^5.0.0" + unist-util-visit-parents "^5.0.0" -os-tmpdir@~1.0.2: +mdast-util-from-markdown@^1.0.0, mdast-util-from-markdown@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-1.2.0.tgz#84df2924ccc6c995dec1e2368b2b208ad0a76268" + integrity sha512-iZJyyvKD1+K7QX1b5jXdE7Sc5dtoTry1vzV28UZZe8Z1xVnB/czKntJ7ZAkG0tANqRnBF6p3p7GpU1y19DTf2Q== + dependencies: + "@types/mdast" "^3.0.0" + "@types/unist" "^2.0.0" + decode-named-character-reference "^1.0.0" + mdast-util-to-string "^3.1.0" + micromark "^3.0.0" + micromark-util-decode-numeric-character-reference "^1.0.0" + micromark-util-decode-string "^1.0.0" + micromark-util-normalize-identifier "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + unist-util-stringify-position "^3.0.0" + uvu "^0.5.0" + +mdast-util-gfm-autolink-literal@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= - -p-each-series@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" - integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.2.tgz#4032dcbaddaef7d4f2f3768ed830475bb22d3970" + integrity sha512-FzopkOd4xTTBeGXhXSBU0OCDDh5lUj2rd+HQqG92Ld+jL4lpUfgX2AT2OHAVP9aEeDKp7G92fuooSZcYJA3cRg== dependencies: - p-try "^1.0.0" + "@types/mdast" "^3.0.0" + ccount "^2.0.0" + mdast-util-find-and-replace "^2.0.0" + micromark-util-character "^1.0.0" -p-limit@^2.0.0, p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== +mdast-util-gfm-footnote@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.1.tgz#11d2d40a1a673a399c459e467fa85e00223191fe" + integrity sha512-p+PrYlkw9DeCRkTVw1duWqPRHX6Ywh2BNKJQcZbCwAuP/59B0Lk9kakuAd7KbQprVO4GzdW8eS5++A9PUSqIyw== dependencies: - p-try "^2.0.0" + "@types/mdast" "^3.0.0" + mdast-util-to-markdown "^1.3.0" + micromark-util-normalize-identifier "^1.0.0" -p-limit@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" - integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== +mdast-util-gfm-strikethrough@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.2.tgz#6b4fa4ae37d449ccb988192ac0afbb2710ffcefd" + integrity sha512-T/4DVHXcujH6jx1yqpcAYYwd+z5lAYMw4Ls6yhTfbMMtCt0PHY4gEfhW9+lKsLBtyhUGKRIzcUA2FATVqnvPDA== dependencies: - yocto-queue "^0.1.0" + "@types/mdast" "^3.0.0" + mdast-util-to-markdown "^1.3.0" -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= +mdast-util-gfm-table@^1.0.0: + version "1.0.6" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.6.tgz#184e900979fe790745fc3dabf77a4114595fcd7f" + integrity sha512-uHR+fqFq3IvB3Rd4+kzXW8dmpxUhvgCQZep6KdjsLK4O6meK5dYZEayLtIxNus1XO3gfjfcIFe8a7L0HZRGgag== dependencies: - p-limit "^1.1.0" + "@types/mdast" "^3.0.0" + markdown-table "^3.0.0" + mdast-util-from-markdown "^1.0.0" + mdast-util-to-markdown "^1.3.0" -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== +mdast-util-gfm-task-list-item@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.1.tgz#6f35f09c6e2bcbe88af62fdea02ac199cc802c5c" + integrity sha512-KZ4KLmPdABXOsfnM6JHUIjxEvcx2ulk656Z/4Balw071/5qgnhz+H1uGtf2zIGnrnvDC8xR4Fj9uKbjAFGNIeA== dependencies: - p-limit "^2.0.0" + "@types/mdast" "^3.0.0" + mdast-util-to-markdown "^1.3.0" -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== +mdast-util-gfm@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-2.0.1.tgz#16fcf70110ae689a06d77e8f4e346223b64a0ea6" + integrity sha512-42yHBbfWIFisaAfV1eixlabbsa6q7vHeSPY+cg+BBjX51M8xhgMacqH9g6TftB/9+YkcI0ooV4ncfrJslzm/RQ== + dependencies: + mdast-util-from-markdown "^1.0.0" + mdast-util-gfm-autolink-literal "^1.0.0" + mdast-util-gfm-footnote "^1.0.0" + mdast-util-gfm-strikethrough "^1.0.0" + mdast-util-gfm-table "^1.0.0" + mdast-util-gfm-task-list-item "^1.0.0" + mdast-util-to-markdown "^1.0.0" + +mdast-util-to-hast@^12.1.0, mdast-util-to-hast@^12.2.4: + version "12.2.4" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-12.2.4.tgz#34c1ef2b6cf01c27b3e3504e2c977c76f722e7e1" + integrity sha512-a21xoxSef1l8VhHxS1Dnyioz6grrJkoaCUgGzMD/7dWHvboYX3VW53esRUfB5tgTyz4Yos1n25SPcj35dJqmAg== dependencies: - p-limit "^2.2.0" - -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + "@types/hast" "^2.0.0" + "@types/mdast" "^3.0.0" + mdast-util-definitions "^5.0.0" + micromark-util-sanitize-uri "^1.1.0" + trim-lines "^3.0.0" + unist-builder "^3.0.0" + unist-util-generated "^2.0.0" + unist-util-position "^4.0.0" + unist-util-visit "^4.0.0" + +mdast-util-to-markdown@^1.0.0, mdast-util-to-markdown@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-1.3.0.tgz#38b6cdc8dc417de642a469c4fc2abdf8c931bd1e" + integrity sha512-6tUSs4r+KK4JGTTiQ7FfHmVOaDrLQJPmpjD6wPMlHGUVXoG9Vjc3jIeP+uyBWRf8clwB2blM+W7+KrlMYQnftA== dependencies: - aggregate-error "^3.0.0" + "@types/mdast" "^3.0.0" + "@types/unist" "^2.0.0" + longest-streak "^3.0.0" + mdast-util-to-string "^3.0.0" + micromark-util-decode-string "^1.0.0" + unist-util-visit "^4.0.0" + zwitch "^2.0.0" + +mdast-util-to-string@^3.0.0, mdast-util-to-string@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-3.1.0.tgz#56c506d065fbf769515235e577b5a261552d56e9" + integrity sha512-n4Vypz/DZgwo0iMHLQL49dJzlp7YtAJP+N07MZHpjPf/5XJuHUWstviF4Mn2jEiR/GNmtnRRqnwsXExk3igfFA== + +mdn-data@2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" + integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== -p-queue@6.6.2: - version "6.6.2" - resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" - integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== - dependencies: - eventemitter3 "^4.0.4" - p-timeout "^3.2.0" +mdurl@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" + integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== -p-timeout@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" - integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== +memory-fs@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" + integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== dependencies: - p-finally "^1.0.0" - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + errno "^0.1.3" + readable-stream "^2.0.1" -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -pako@~1.0.5: - version "1.0.11" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" - integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -parallel-transform@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" - integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== +micromark-core-commonmark@^1.0.0, micromark-core-commonmark@^1.0.1, micromark-core-commonmark@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz#edff4c72e5993d93724a3c206970f5a15b0585ad" + integrity sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA== + dependencies: + decode-named-character-reference "^1.0.0" + micromark-factory-destination "^1.0.0" + micromark-factory-label "^1.0.0" + micromark-factory-space "^1.0.0" + micromark-factory-title "^1.0.0" + micromark-factory-whitespace "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-chunked "^1.0.0" + micromark-util-classify-character "^1.0.0" + micromark-util-html-tag-name "^1.0.0" + micromark-util-normalize-identifier "^1.0.0" + micromark-util-resolve-all "^1.0.0" + micromark-util-subtokenize "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.1" + uvu "^0.5.0" + +micromark-extension-gfm-autolink-literal@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.3.tgz#dc589f9c37eaff31a175bab49f12290edcf96058" + integrity sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg== dependencies: - cyclist "^1.0.1" - inherits "^2.0.3" - readable-stream "^2.1.5" + micromark-util-character "^1.0.0" + micromark-util-sanitize-uri "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + uvu "^0.5.0" -param-case@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= +micromark-extension-gfm-footnote@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.0.4.tgz#cbfd8873b983e820c494498c6dac0105920818d5" + integrity sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg== + dependencies: + micromark-core-commonmark "^1.0.0" + micromark-factory-space "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-normalize-identifier "^1.0.0" + micromark-util-sanitize-uri "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + uvu "^0.5.0" + +micromark-extension-gfm-strikethrough@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.4.tgz#162232c284ffbedd8c74e59c1525bda217295e18" + integrity sha512-/vjHU/lalmjZCT5xt7CcHVJGq8sYRm80z24qAKXzaHzem/xsDYb2yLL+NNVbYvmpLx3O7SYPuGL5pzusL9CLIQ== dependencies: - no-case "^2.2.0" + micromark-util-chunked "^1.0.0" + micromark-util-classify-character "^1.0.0" + micromark-util-resolve-all "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + uvu "^0.5.0" -param-case@^3.0.3, param-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" - integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== +micromark-extension-gfm-table@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.5.tgz#7b708b728f8dc4d95d486b9e7a2262f9cddbcbb4" + integrity sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg== dependencies: - dot-case "^3.0.4" - tslib "^2.0.3" + micromark-factory-space "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + uvu "^0.5.0" -parent-module@^1.0.0: +micromark-extension-gfm-tagfilter@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.1.tgz#fb2e303f7daf616db428bb6a26e18fda14a90a4d" + integrity sha512-Ty6psLAcAjboRa/UKUbbUcwjVAv5plxmpUTy2XC/3nJFL37eHej8jrHrRzkqcpipJliuBH30DTs7+3wqNcQUVA== dependencies: - callsites "^3.0.0" + micromark-util-types "^1.0.0" -parent-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-2.0.0.tgz#fa71f88ff1a50c27e15d8ff74e0e3a9523bf8708" - integrity sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg== - dependencies: - callsites "^3.1.0" - -parse-asn1@^5.0.0, parse-asn1@^5.1.5: - version "5.1.6" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" - integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== +micromark-extension-gfm-task-list-item@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.3.tgz#7683641df5d4a09795f353574d7f7f66e47b7fc4" + integrity sha512-PpysK2S1Q/5VXi72IIapbi/jliaiOFzv7THH4amwXeYXLq3l1uo8/2Be0Ac1rEwK20MQEsGH2ltAZLNY2KI/0Q== dependencies: - asn1.js "^5.2.0" - browserify-aes "^1.0.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - safe-buffer "^5.1.1" + micromark-factory-space "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + uvu "^0.5.0" -parse-entities@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" - integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== +micromark-extension-gfm@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/micromark-extension-gfm/-/micromark-extension-gfm-2.0.1.tgz#40f3209216127a96297c54c67f5edc7ef2d1a2a2" + integrity sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA== + dependencies: + micromark-extension-gfm-autolink-literal "^1.0.0" + micromark-extension-gfm-footnote "^1.0.0" + micromark-extension-gfm-strikethrough "^1.0.0" + micromark-extension-gfm-table "^1.0.0" + micromark-extension-gfm-tagfilter "^1.0.0" + micromark-extension-gfm-task-list-item "^1.0.0" + micromark-util-combine-extensions "^1.0.0" + micromark-util-types "^1.0.0" + +micromark-factory-destination@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz#fef1cb59ad4997c496f887b6977aa3034a5a277e" + integrity sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw== dependencies: - character-entities "^1.0.0" - character-entities-legacy "^1.0.0" - character-reference-invalid "^1.0.0" - is-alphanumerical "^1.0.0" - is-decimal "^1.0.0" - is-hexadecimal "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" -parse-git-config@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/parse-git-config/-/parse-git-config-3.0.0.tgz#4a2de08c7b74a2555efa5ae94d40cd44302a6132" - integrity sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA== +micromark-factory-label@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz#6be2551fa8d13542fcbbac478258fb7a20047137" + integrity sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg== dependencies: - git-config-path "^2.0.0" - ini "^1.3.5" + micromark-util-character "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + uvu "^0.5.0" -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= +micromark-factory-space@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz#cebff49968f2b9616c0fcb239e96685cb9497633" + integrity sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew== dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" + micromark-util-character "^1.0.0" + micromark-util-types "^1.0.0" -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= +micromark-factory-title@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz#7e09287c3748ff1693930f176e1c4a328382494f" + integrity sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A== dependencies: - error-ex "^1.2.0" + micromark-factory-space "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + uvu "^0.5.0" -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= +micromark-factory-whitespace@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz#e991e043ad376c1ba52f4e49858ce0794678621c" + integrity sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A== dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" + micromark-factory-space "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" -parse-json@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" - integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== +micromark-util-character@^1.0.0, micromark-util-character@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-1.1.0.tgz#d97c54d5742a0d9611a68ca0cd4124331f264d86" + integrity sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg== dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-even-better-errors "^2.3.0" - lines-and-columns "^1.1.6" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" -parse-path@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf" - integrity sha512-9Cepbp2asKnWTJ9x2kpw6Fe8y9JDbqwahGCTvklzd/cEq5C5JC59x2Xb0Kx+x0QZ8bvNquGO8/BWP0cwBHzSAA== +micromark-util-chunked@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz#5b40d83f3d53b84c4c6bce30ed4257e9a4c79d06" + integrity sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g== dependencies: - is-ssh "^1.3.0" - protocols "^1.4.0" - qs "^6.9.4" - query-string "^6.13.8" + micromark-util-symbol "^1.0.0" -parse-url@^5.0.0: - version "5.0.2" - resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-5.0.2.tgz#856a3be1fcdf78dc93fc8b3791f169072d898b59" - integrity sha512-Czj+GIit4cdWtxo3ISZCvLiUjErSo0iI3wJ+q9Oi3QuMYTI6OZu+7cewMWZ+C1YAnKhYTk6/TLuhIgCypLthPA== +micromark-util-classify-character@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz#cbd7b447cb79ee6997dd274a46fc4eb806460a20" + integrity sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA== dependencies: - is-ssh "^1.3.0" - normalize-url "^3.3.0" - parse-path "^4.0.0" - protocols "^1.4.0" - -parse5@6.0.1, parse5@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - -parseurl@^1.3.2, parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + micromark-util-character "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" -pascal-case@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" - integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== +micromark-util-combine-extensions@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz#91418e1e74fb893e3628b8d496085639124ff3d5" + integrity sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA== dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - -path-browserify@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" - integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== + micromark-util-chunked "^1.0.0" + micromark-util-types "^1.0.0" -path-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.4.tgz#9168645334eb942658375c56f80b4c0cb5f82c6f" - integrity sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg== +micromark-util-decode-numeric-character-reference@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz#dcc85f13b5bd93ff8d2868c3dba28039d490b946" + integrity sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w== dependencies: - dot-case "^3.0.4" - tslib "^2.0.3" + micromark-util-symbol "^1.0.0" -path-dirname@^1.0.0: +micromark-util-decode-string@^1.0.0: version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + resolved "https://registry.yarnpkg.com/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz#942252ab7a76dec2dbf089cc32505ee2bc3acf02" + integrity sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q== + dependencies: + decode-named-character-reference "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-decode-numeric-character-reference "^1.0.0" + micromark-util-symbol "^1.0.0" -path-is-absolute@1.0.1, path-is-absolute@^1.0.0: +micromark-util-encode@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== + resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz#2c1c22d3800870ad770ece5686ebca5920353383" + integrity sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA== -path-to-regexp@^6.1.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.2.0.tgz#f7b3803336104c346889adece614669230645f38" - integrity sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg== +micromark-util-html-tag-name@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz#eb227118befd51f48858e879b7a419fc0df20497" + integrity sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA== -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= +micromark-util-normalize-identifier@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz#4a3539cb8db954bbec5203952bfe8cedadae7828" + integrity sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg== dependencies: - pify "^2.0.0" - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + micromark-util-symbol "^1.0.0" -pbkdf2@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94" - integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg== +micromark-util-resolve-all@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz#a7c363f49a0162e931960c44f3127ab58f031d88" + integrity sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw== dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + micromark-util-types "^1.0.0" -picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" - integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== - -pify@^2.0.0, pify@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pify@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" - integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== - -pify@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" - integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== - -pirates@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" - integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== +micromark-util-sanitize-uri@^1.0.0, micromark-util-sanitize-uri@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz#f12e07a85106b902645e0364feb07cf253a85aee" + integrity sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg== dependencies: - node-modules-regexp "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-encode "^1.0.0" + micromark-util-symbol "^1.0.0" -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= +micromark-util-subtokenize@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz#ff6f1af6ac836f8bfdbf9b02f40431760ad89105" + integrity sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA== dependencies: - find-up "^2.1.0" + micromark-util-chunked "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.0" + uvu "^0.5.0" -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" +micromark-util-symbol@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz#b90344db62042ce454f351cf0bebcc0a6da4920e" + integrity sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ== -pkg-dir@^4.1.0, pkg-dir@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== +micromark-util-types@^1.0.0, micromark-util-types@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-1.0.2.tgz#f4220fdb319205812f99c40f8c87a9be83eded20" + integrity sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w== + +micromark@^3.0.0, micromark@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/micromark/-/micromark-3.1.0.tgz#eeba0fe0ac1c9aaef675157b52c166f125e89f62" + integrity sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA== dependencies: - find-up "^4.0.0" + "@types/debug" "^4.0.0" + debug "^4.0.0" + decode-named-character-reference "^1.0.0" + micromark-core-commonmark "^1.0.1" + micromark-factory-space "^1.0.0" + micromark-util-character "^1.0.0" + micromark-util-chunked "^1.0.0" + micromark-util-combine-extensions "^1.0.0" + micromark-util-decode-numeric-character-reference "^1.0.0" + micromark-util-encode "^1.0.0" + micromark-util-normalize-identifier "^1.0.0" + micromark-util-resolve-all "^1.0.0" + micromark-util-sanitize-uri "^1.0.0" + micromark-util-subtokenize "^1.0.0" + micromark-util-symbol "^1.0.0" + micromark-util-types "^1.0.1" + uvu "^0.5.0" + +micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + dependencies: + braces "^3.0.2" + picomatch "^2.3.1" -pluralize@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" - integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -pnp-webpack-plugin@^1.6.4: - version "1.6.4" - resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" - integrity sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg== - dependencies: - ts-pnp "^1.1.6" +mime@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7" + integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A== -portfinder@^1.0.26: - version "1.0.28" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778" - integrity sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA== - dependencies: - async "^2.6.2" - debug "^3.1.1" - mkdirp "^0.5.5" +mime@~2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz#6e3dc6cc2b9510643830e5f19d5cb753da5eeabe" + integrity sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg== -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -postcss-attribute-case-insensitive@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz#d93e46b504589e94ac7277b0463226c68041a880" - integrity sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^6.0.2" +mini-svg-data-uri@^1.2.3: + version "1.4.4" + resolved "https://registry.yarnpkg.com/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz#8ab0aabcdf8c29ad5693ca595af19dd2ead09939" + integrity sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg== -postcss-calc@^7.0.1: - version "7.0.5" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.5.tgz#f8a6e99f12e619c2ebc23cf6c486fdc15860933e" - integrity sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg== +minimatch@^3.0.4, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: - postcss "^7.0.27" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.2" + brace-expansion "^1.1.7" -postcss-color-functional-notation@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" - integrity sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g== +minimatch@^5.0.1, minimatch@^5.1.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.1.tgz#6c9dffcf9927ff2a31e74b5af11adf8b9604b022" + integrity sha512-362NP+zlprccbEt/SkxKfRMHnNY85V74mVnpUpNyr3F35covl09Kec7/sEFLt3RA4oXmewtoaanoIf67SE5Y5g== dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + brace-expansion "^2.0.1" -postcss-color-gray@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz#532a31eb909f8da898ceffe296fdc1f864be8547" - integrity sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw== +minimatch@~3.0.4: + version "3.0.8" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.8.tgz#5e6a59bd11e2ab0de1cfb843eb2d82e546c321c1" + integrity sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q== dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.5" - postcss-values-parser "^2.0.0" + brace-expansion "^1.1.7" -postcss-color-hex-alpha@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz#a8d9ca4c39d497c9661e374b9c51899ef0f87388" - integrity sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw== - dependencies: - postcss "^7.0.14" - postcss-values-parser "^2.0.1" +minimist@^1.2.6: + version "1.2.7" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" + integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== -postcss-color-mod-function@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" - integrity sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ== +minipass@^3.0.0: + version "3.3.6" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" + integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + yallist "^4.0.0" -postcss-color-rebeccapurple@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" - integrity sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g== +minipass@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.0.0.tgz#7cebb0f9fa7d56f0c5b17853cbe28838a8dbbd3b" + integrity sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw== dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + yallist "^4.0.0" -postcss-colormin@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381" - integrity sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw== +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== dependencies: - browserslist "^4.0.0" - color "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + minipass "^3.0.0" + yallist "^4.0.0" -postcss-convert-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" - integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +mkdir@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/mkdir/-/mkdir-0.0.2.tgz#3b9da7a4e5b13004ebc636581b160e1e04776851" + integrity sha512-98OnjcWaNEIRUJJe9rFoWlbkQ5n9z8F86wIPCrI961YEViiVybTuJln919WuuSHSnlrqXy0ELKCntoPy8C7lqg== -postcss-custom-media@^7.0.8: - version "7.0.8" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz#fffd13ffeffad73621be5f387076a28b00294e0c" - integrity sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg== - dependencies: - postcss "^7.0.14" +mkdirp@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -postcss-custom-properties@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-11.0.0.tgz#f98cd192cd8dfcd8afa3baa1ad5b5d91d01292f3" - integrity sha512-Fhnx/QLt+CTt23A/KKVx1anZD9nmVpOxKCKv5owWacMoOsBXFhMAD6SZYbmPMH4nHdIeMUnWOvLZnlY4niS0sA== +mlly@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.0.0.tgz#d38ca6e33ab89b60654f71ef08931d51e83d3569" + integrity sha512-QL108Hwt+u9bXdWgOI0dhzZfACovn5Aen4Xvc8Jasd9ouRH4NjnrXEiyP3nVvJo91zPlYjVRckta0Nt2zfoR6g== dependencies: - postcss-values-parser "^4.0.0" + acorn "^8.8.1" + pathe "^1.0.0" + pkg-types "^1.0.0" + ufo "^1.0.0" -postcss-custom-properties@^8.0.11: - version "8.0.11" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz#2d61772d6e92f22f5e0d52602df8fae46fa30d97" - integrity sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA== - dependencies: - postcss "^7.0.17" - postcss-values-parser "^2.0.1" +mri@^1.1.0, mri@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" + integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== -postcss-custom-selectors@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" - integrity sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== -postcss-dir-pseudo-class@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" - integrity sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -postcss-discard-comments@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033" - integrity sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg== - dependencies: - postcss "^7.0.0" +ms@2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -postcss-discard-duplicates@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" - integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== - dependencies: - postcss "^7.0.0" +mute-stream@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -postcss-discard-empty@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" - integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== - dependencies: - postcss "^7.0.0" +nanoid@^3.3.4: + version "3.3.4" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" + integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== -postcss-discard-overridden@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" - integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== - dependencies: - postcss "^7.0.0" +nanoid@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-4.0.0.tgz#6e144dee117609232c3f415c34b0e550e64999a5" + integrity sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg== -postcss-double-position-gradients@^1.0.0: +nitropack@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz#fc927d52fddc896cb3a2812ebc5df147e110522e" - integrity sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA== - dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-env-function@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" - integrity sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + resolved "https://registry.yarnpkg.com/nitropack/-/nitropack-1.0.0.tgz#78356cd875a331116863bc6d7091c0a4539e7342" + integrity sha512-788lHgNgC+NKqecwFgMkAQTuTXwuh2hEgOk2sLwV3qPVUogxrl6P3m5eKdt6Mtzx+mlXIw0G/P90B5TNWEqDSQ== + dependencies: + "@cloudflare/kv-asset-handler" "^0.2.0" + "@netlify/functions" "^1.3.0" + "@rollup/plugin-alias" "^4.0.2" + "@rollup/plugin-commonjs" "^23.0.2" + "@rollup/plugin-inject" "^5.0.2" + "@rollup/plugin-json" "^5.0.1" + "@rollup/plugin-node-resolve" "^15.0.1" + "@rollup/plugin-replace" "^5.0.1" + "@rollup/plugin-wasm" "^6.0.1" + "@rollup/pluginutils" "^5.0.2" + "@vercel/nft" "^0.22.1" + archiver "^5.3.1" + c12 "^1.0.1" + chalk "^5.1.2" + chokidar "^3.5.3" + consola "^2.15.3" + cookie-es "^0.5.0" + defu "^6.1.1" + destr "^1.2.1" + dot-prop "^7.2.0" + esbuild "^0.15.14" + escape-string-regexp "^5.0.0" + etag "^1.8.1" + fs-extra "^10.1.0" + globby "^13.1.2" + gzip-size "^7.0.0" + h3 "^1.0.1" + hookable "^5.4.2" + http-proxy "^1.18.1" + is-primitive "^3.0.1" + jiti "^1.16.0" + klona "^2.0.5" + knitwork "^1.0.0" + listhen "^1.0.0" + mime "^3.0.0" + mlly "^1.0.0" + mri "^1.2.0" + node-fetch-native "^1.0.1" + ofetch "^1.0.0" + ohash "^1.0.0" + pathe "^1.0.0" + perfect-debounce "^0.1.3" + pkg-types "^1.0.1" + pretty-bytes "^6.0.0" + radix3 "^1.0.0" + rollup "^2.79.1" + rollup-plugin-terser "^7.0.2" + rollup-plugin-visualizer "^5.8.3" + scule "^1.0.0" + semver "^7.3.8" + serve-placeholder "^2.0.1" + serve-static "^1.15.0" + source-map-support "^0.5.21" + std-env "^3.3.1" + ufo "^1.0.0" + unenv "^1.0.0" + unimport "^1.0.0" + unstorage "^1.0.1" + +node-domexception@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" + integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== -postcss-focus-visible@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" - integrity sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g== +node-emoji@^1.11.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.11.0.tgz#69a0150e6946e2f115e9d7ea4df7971e2628301c" + integrity sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A== dependencies: - postcss "^7.0.2" + lodash "^4.17.21" -postcss-focus-within@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" - integrity sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w== - dependencies: - postcss "^7.0.2" +node-fetch-native@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-0.1.8.tgz#19e2eaf6d86ac14e711ebd2612f40517c3468f2a" + integrity sha512-ZNaury9r0NxaT2oL65GvdGDy+5PlSaHTovT6JV5tOW07k1TQmgC0olZETa4C9KZg0+6zBr99ctTYa3Utqj9P/Q== -postcss-font-variant@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz#42d4c0ab30894f60f98b17561eb5c0321f502641" - integrity sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA== - dependencies: - postcss "^7.0.2" +node-fetch-native@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.0.1.tgz#1dfe78f57545d07e07016b7df4c0cb9d2ff416c7" + integrity sha512-VzW+TAk2wE4X9maiKMlT+GsPU4OMmR1U9CrHSmd3DFLn2IcZ9VJ6M6BBugGfYUnPCLSYxXdZy17M0BEJyhUTwg== -postcss-functions@^3: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-functions/-/postcss-functions-3.0.0.tgz#0e94d01444700a481de20de4d55fb2640564250e" - integrity sha1-DpTQFERwCkgd4g3k1V+yZAVkJQ4= +node-fetch@^2.6.7: + version "2.6.7" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: - glob "^7.1.2" - object-assign "^4.1.1" - postcss "^6.0.9" - postcss-value-parser "^3.3.0" + whatwg-url "^5.0.0" -postcss-gap-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" - integrity sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg== +node-fetch@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.3.0.tgz#37e71db4ecc257057af828d523a7243d651d91e4" + integrity sha512-BKwRP/O0UvoMKp7GNdwPlObhYGB5DQqwhEDQlNKuoqwVYSxkSZCSbHjnFFmUEtwSKRPU4kNK8PbDYYitwaE3QA== dependencies: - postcss "^7.0.2" + data-uri-to-buffer "^4.0.0" + fetch-blob "^3.1.4" + formdata-polyfill "^4.0.10" -postcss-image-set-function@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" - integrity sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" +node-forge@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" + integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== -postcss-import-resolver@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-import-resolver/-/postcss-import-resolver-2.0.0.tgz#95c61ac5489047bd93ff42a9cd405cfe9041e2c0" - integrity sha512-y001XYgGvVwgxyxw9J1a5kqM/vtmIQGzx34g0A0Oy44MFcy/ZboZw1hu/iN3VYFjSTRzbvd7zZJJz0Kh0AGkTw== - dependencies: - enhanced-resolve "^4.1.1" +node-gyp-build@^4.2.2: + version "4.5.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40" + integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg== -postcss-import@^12.0.1: - version "12.0.1" - resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-12.0.1.tgz#cf8c7ab0b5ccab5649024536e565f841928b7153" - integrity sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw== - dependencies: - postcss "^7.0.1" - postcss-value-parser "^3.2.3" - read-cache "^1.0.0" - resolve "^1.1.7" +node-releases@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503" + integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg== -postcss-import@^13.0.0: - version "13.0.0" - resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-13.0.0.tgz#d6960cd9e3de5464743b04dd8cd9d870662f8b8c" - integrity sha512-LPUbm3ytpYopwQQjqgUH4S3EM/Gb9QsaSPP/5vnoi+oKVy3/mIk2sc0Paqw7RL57GpScm9MdIMUypw2znWiBpg== +nopt@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== dependencies: - postcss-value-parser "^4.0.0" - read-cache "^1.0.0" - resolve "^1.1.7" + abbrev "1" -postcss-initial@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.2.tgz#f018563694b3c16ae8eaabe3c585ac6319637b2d" - integrity sha512-ugA2wKonC0xeNHgirR4D3VWHs2JcU08WAi1KFLVcnb7IN89phID6Qtg2RIctWbnvp1TM2BOmDtX8GGLCKdR8YA== - dependencies: - lodash.template "^4.5.0" - postcss "^7.0.2" +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -postcss-js@^2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-2.0.3.tgz#a96f0f23ff3d08cec7dc5b11bf11c5f8077cdab9" - integrity sha512-zS59pAk3deu6dVHyrGqmC3oDXBdNdajk4k1RyxeVXCrcEDBUBHoIhE4QTsmhxgzXxsaqFDAkUZfmMa5f/N/79w== - dependencies: - camelcase-css "^2.0.1" - postcss "^7.0.18" +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== -postcss-js@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-3.0.3.tgz#2f0bd370a2e8599d45439f6970403b5873abda33" - integrity sha512-gWnoWQXKFw65Hk/mi2+WTQTHdPD5UJdDXZmX073EY/B3BWnYjO4F4t0VneTCnCGQ5E5GsCdMkzPaTXwl3r5dJw== - dependencies: - camelcase-css "^2.0.1" - postcss "^8.1.6" +normalize-url@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" + integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== -postcss-lab-function@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" - integrity sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg== +npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + path-key "^3.0.0" -postcss-load-config@^2.0.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a" - integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw== +npmlog@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-5.0.1.tgz#f06678e80e29419ad67ab964e0fa69959c1eb8b0" + integrity sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw== dependencies: - cosmiconfig "^5.0.0" - import-cwd "^2.0.0" + are-we-there-yet "^2.0.0" + console-control-strings "^1.1.0" + gauge "^3.0.0" + set-blocking "^2.0.0" -postcss-loader@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" - integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== +nth-check@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== dependencies: - loader-utils "^1.1.0" - postcss "^7.0.0" - postcss-load-config "^2.0.0" - schema-utils "^1.0.0" + boolbase "^1.0.0" -postcss-loader@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-4.2.0.tgz#f6993ea3e0f46600fb3ee49bbd010448123a7db4" - integrity sha512-mqgScxHqbiz1yxbnNcPdKYo/6aVt+XExURmEbQlviFVWogDbM4AJ0A/B+ZBpYsJrTRxKw7HyRazg9x0Q9SWwLA== - dependencies: - cosmiconfig "^7.0.0" - klona "^2.0.4" - loader-utils "^2.0.0" - schema-utils "^3.0.0" - semver "^7.3.4" +nuxi@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/nuxi/-/nuxi-3.0.0.tgz#09e5951f2ecc561df4fb410d9e21952c2f161f34" + integrity sha512-VWh1kKFffxD2yadZWcQSd6eTf9okXRr7d3HsjLiI4B3Q1/8iKdIUiodGo7X71OZ+gPVnX6Oh/XFzcb7mr+8TbQ== + optionalDependencies: + fsevents "~2.3.2" -postcss-logical@^3.0.0: +nuxt@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" - integrity sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA== - dependencies: - postcss "^7.0.2" + resolved "https://registry.yarnpkg.com/nuxt/-/nuxt-3.0.0.tgz#0909e6566d79805f3a4ed6229573817cbde12e89" + integrity sha512-RNlD78uv04ZiXWmlx9f1tnJfrqsYAWHU+4gbgOTQpIBmQzHWPWiox+fm/1m93iKfEd5sJi9TJUoXX5yBObVZYw== + dependencies: + "@nuxt/devalue" "^2.0.0" + "@nuxt/kit" "3.0.0" + "@nuxt/schema" "3.0.0" + "@nuxt/telemetry" "^2.1.8" + "@nuxt/ui-templates" "^1.0.0" + "@nuxt/vite-builder" "3.0.0" + "@unhead/ssr" "^1.0.0" + "@vue/reactivity" "^3.2.45" + "@vue/shared" "^3.2.45" + "@vueuse/head" "^1.0.15" + chokidar "^3.5.3" + cookie-es "^0.5.0" + defu "^6.1.1" + destr "^1.2.1" + escape-string-regexp "^5.0.0" + estree-walker "^3.0.1" + fs-extra "^10.1.0" + globby "^13.1.2" + h3 "^1.0.1" + hash-sum "^2.0.0" + hookable "^5.4.2" + knitwork "^1.0.0" + magic-string "^0.26.7" + mlly "^1.0.0" + nitropack "^1.0.0" + nuxi "3.0.0" + ofetch "^1.0.0" + ohash "^1.0.0" + pathe "^1.0.0" + perfect-debounce "^0.1.3" + scule "^1.0.0" + strip-literal "^1.0.0" + ufo "^1.0.0" + ultrahtml "^1.0.0" + unctx "^2.1.0" + unenv "^1.0.0" + unhead "^1.0.0" + unimport "^1.0.1" + unplugin "^1.0.0" + untyped "^1.0.0" + vue "^3.2.45" + vue-bundle-renderer "^1.0.0" + vue-devtools-stub "^0.1.0" + vue-router "^4.1.6" + +object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== -postcss-media-minmax@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" - integrity sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw== - dependencies: - postcss "^7.0.2" +object-hash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" + integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== -postcss-merge-longhand@^4.0.11: - version "4.0.11" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" - integrity sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw== +ofetch@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ofetch/-/ofetch-1.0.0.tgz#5a2604cdcb33349900e4f73ffe44de449a61101a" + integrity sha512-d40aof8czZFSQKJa4+F7Ch3UC5D631cK1TTUoK+iNEut9NoiCL+u0vykl/puYVUS2df4tIQl5upQcolIcEzQjQ== dependencies: - css-color-names "0.0.4" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - stylehacks "^4.0.0" + destr "^1.2.1" + node-fetch-native "^1.0.1" + ufo "^1.0.0" -postcss-merge-rules@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650" - integrity sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - cssnano-util-same-parent "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - vendors "^1.0.0" +ohash@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ohash/-/ohash-1.0.0.tgz#e6ab04851ef9a479beb6e8a2457ff0d3ccf77371" + integrity sha512-kxSyzq6tt+6EE/xCnD1XaFhCCjUNUaz3X30rJp6mnjGLXAAvuPFqohMdv0aScWzajR45C29HyBaXZ8jXBwnh9A== -postcss-minify-font-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" - integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== +ohmyfetch@^0.4.21: + version "0.4.21" + resolved "https://registry.yarnpkg.com/ohmyfetch/-/ohmyfetch-0.4.21.tgz#6850db751fc7bbf08153aa8b11ff1ef45fcfd963" + integrity sha512-VG7f/JRvqvBOYvL0tHyEIEG7XHWm7OqIfAs6/HqwWwDfjiJ1g0huIpe5sFEmyb+7hpFa1EGNH2aERWR72tlClw== dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + destr "^1.2.0" + node-fetch-native "^0.1.8" + ufo "^0.8.6" + undici "^5.12.0" -postcss-minify-gradients@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471" - integrity sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q== +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: - cssnano-util-get-arguments "^4.0.0" - is-color-stop "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + ee-first "1.1.1" -postcss-minify-params@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874" - integrity sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg== +once@^1.3.0, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: - alphanum-sort "^1.0.0" - browserslist "^4.0.0" - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - uniqs "^2.0.0" + wrappy "1" -postcss-minify-selectors@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8" - integrity sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g== +onetime@^5.1.0, onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: - alphanum-sort "^1.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" + mimic-fn "^2.1.0" -postcss-modules-extract-imports@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" - integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== +open@^8.4.0: + version "8.4.0" + resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" + integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== dependencies: - postcss "^7.0.5" + define-lazy-prop "^2.0.0" + is-docker "^2.1.1" + is-wsl "^2.2.0" -postcss-modules-extract-imports@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" - integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== +ora@^6.1.2: + version "6.1.2" + resolved "https://registry.yarnpkg.com/ora/-/ora-6.1.2.tgz#7b3c1356b42fd90fb1dad043d5dbe649388a0bf5" + integrity sha512-EJQ3NiP5Xo94wJXIzAyOtSb0QEIAUu7m8t6UZ9krbz0vAJqr92JpcK/lEXg91q6B9pEGqrykkd2EQplnifDSBw== + dependencies: + bl "^5.0.0" + chalk "^5.0.0" + cli-cursor "^4.0.0" + cli-spinners "^2.6.1" + is-interactive "^2.0.0" + is-unicode-supported "^1.1.0" + log-symbols "^5.1.0" + strip-ansi "^7.0.1" + wcwidth "^1.0.1" -postcss-modules-local-by-default@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" - integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== - dependencies: - icss-utils "^4.1.1" - postcss "^7.0.32" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.1.0" +os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== -postcss-modules-local-by-default@^4.0.0: +parse-entities@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c" - integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== - dependencies: - icss-utils "^5.0.0" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.1.0" - -postcss-modules-scope@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" - integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-4.0.0.tgz#f67c856d4e3fe19b1a445c3fabe78dcdc1053eeb" + integrity sha512-5nk9Fn03x3rEhGaX1FU6IDwG/k+GxLXlFAkgrbM1asuAFl3BhdQWvASaIsmwWypRNcZKHPYnIuOSfIWEyEQnPQ== dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" + "@types/unist" "^2.0.0" + character-entities "^2.0.0" + character-entities-legacy "^3.0.0" + character-reference-invalid "^2.0.0" + decode-named-character-reference "^1.0.0" + is-alphanumerical "^2.0.0" + is-decimal "^2.0.0" + is-hexadecimal "^2.0.0" -postcss-modules-scope@^3.0.0: +parse-git-config@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" - integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== + resolved "https://registry.yarnpkg.com/parse-git-config/-/parse-git-config-3.0.0.tgz#4a2de08c7b74a2555efa5ae94d40cd44302a6132" + integrity sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA== dependencies: - postcss-selector-parser "^6.0.4" + git-config-path "^2.0.0" + ini "^1.3.5" -postcss-modules-values@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" - integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== +parse-path@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-7.0.0.tgz#605a2d58d0a749c8594405d8cc3a2bf76d16099b" + integrity sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog== dependencies: - icss-utils "^4.0.0" - postcss "^7.0.6" + protocols "^2.0.0" -postcss-modules-values@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" - integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== +parse-url@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-8.1.0.tgz#972e0827ed4b57fc85f0ea6b0d839f0d8a57a57d" + integrity sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w== dependencies: - icss-utils "^5.0.0" + parse-path "^7.0.0" -postcss-nested@^4: - version "4.2.3" - resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-4.2.3.tgz#c6f255b0a720549776d220d00c4b70cd244136f6" - integrity sha512-rOv0W1HquRCamWy2kFl3QazJMMe1ku6rCFoAAH+9AcxdbpDeBr6k968MLWuLjvjMcGEip01ak09hKOEgpK9hvw== - dependencies: - postcss "^7.0.32" - postcss-selector-parser "^6.0.2" +parse5@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== -postcss-nested@^5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-5.0.5.tgz#f0a107d33a9fab11d7637205f5321e27223e3603" - integrity sha512-GSRXYz5bccobpTzLQZXOnSOfKl6TwVr5CyAQJUPub4nuRJSOECK5AqurxVgmtxP48p0Kc/ndY/YyS1yqldX0Ew== - dependencies: - postcss-selector-parser "^6.0.4" +parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== -postcss-nesting@^7.0.0, postcss-nesting@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.1.tgz#b50ad7b7f0173e5b5e3880c3501344703e04c052" - integrity sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg== - dependencies: - postcss "^7.0.2" +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== -postcss-normalize-charset@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" - integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== - dependencies: - postcss "^7.0.0" +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -postcss-normalize-display-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a" - integrity sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -postcss-normalize-positions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f" - integrity sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -postcss-normalize-repeat-style@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c" - integrity sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +pathe@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-0.2.0.tgz#30fd7bbe0a0d91f0e60bae621f5d19e9e225c339" + integrity sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw== -postcss-normalize-string@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c" - integrity sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA== - dependencies: - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +pathe@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.0.0.tgz#135fc11464fc57c84ef93d5c5ed21247e24571df" + integrity sha512-nPdMG0Pd09HuSsr7QOKUXO2Jr9eqaDiZvDwdyIhNG5SHYujkQHYKDfGQkulBxvbDHz8oHLsTgKN86LSwYzSHAg== -postcss-normalize-timing-functions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9" - integrity sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +perfect-debounce@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/perfect-debounce/-/perfect-debounce-0.1.3.tgz#ff6798ea543a3ba1f0efeeaf97c0340f5c8871ce" + integrity sha512-NOT9AcKiDGpnV/HBhI22Str++XWcErO/bALvHCuhv33owZW/CjH8KAFLZDCmu3727sihe0wTxpDhyGc6M8qacQ== -postcss-normalize-unicode@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" - integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -postcss-normalize-url@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" - integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -postcss-normalize-whitespace@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82" - integrity sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== -postcss-ordered-values@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee" - integrity sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw== - dependencies: - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +pinia-plugin-persistedstate@>=3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-3.0.1.tgz#4bd64f35617ea536f1e4ec0ff140576bd92e39a9" + integrity sha512-WRNWtR4v8StJqBQH+Qiz88SGnlr4wvEyh7wtA+fYEVLoIOnpZ0v4FICvUcC8eUkAIvQL3n6/Ew2yryw7okazvA== -postcss-overflow-shorthand@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" - integrity sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g== +pinia@>=2.0.27: + version "2.0.28" + resolved "https://registry.yarnpkg.com/pinia/-/pinia-2.0.28.tgz#887c982d854972042d9bdfd5bc4fad3b9d6ab02a" + integrity sha512-YClq9DkqCblq9rlyUual7ezMu/iICWdBtfJrDt4oWU9Zxpijyz7xB2xTwx57DaBQ96UGvvTMORzALr+iO5PVMw== dependencies: - postcss "^7.0.2" + "@vue/devtools-api" "^6.4.5" + vue-demi "*" -postcss-page-break@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" - integrity sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ== +pkg-types@^1.0.0, pkg-types@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.0.1.tgz#25234407f9dc63409af45ced9407625ff446a761" + integrity sha512-jHv9HB+Ho7dj6ItwppRDDl0iZRYBD0jsakHXtFgoLr+cHSF6xC+QL54sJmWxyGxOLYSHm0afhXhXcQDQqH9z8g== dependencies: - postcss "^7.0.2" + jsonc-parser "^3.2.0" + mlly "^1.0.0" + pathe "^1.0.0" -postcss-place@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" - integrity sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-preset-env@^6.7.0: - version "6.7.0" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz#c34ddacf8f902383b35ad1e030f178f4cdf118a5" - integrity sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg== - dependencies: - autoprefixer "^9.6.1" - browserslist "^4.6.4" - caniuse-lite "^1.0.30000981" - css-blank-pseudo "^0.1.4" - css-has-pseudo "^0.10.0" - css-prefers-color-scheme "^3.1.1" - cssdb "^4.4.0" - postcss "^7.0.17" - postcss-attribute-case-insensitive "^4.0.1" - postcss-color-functional-notation "^2.0.1" - postcss-color-gray "^5.0.0" - postcss-color-hex-alpha "^5.0.3" - postcss-color-mod-function "^3.0.3" - postcss-color-rebeccapurple "^4.0.1" - postcss-custom-media "^7.0.8" - postcss-custom-properties "^8.0.11" - postcss-custom-selectors "^5.1.2" - postcss-dir-pseudo-class "^5.0.0" - postcss-double-position-gradients "^1.0.0" - postcss-env-function "^2.0.2" - postcss-focus-visible "^4.0.0" - postcss-focus-within "^3.0.0" - postcss-font-variant "^4.0.0" - postcss-gap-properties "^2.0.0" - postcss-image-set-function "^3.0.1" - postcss-initial "^3.0.0" - postcss-lab-function "^2.0.1" - postcss-logical "^3.0.0" - postcss-media-minmax "^4.0.0" - postcss-nesting "^7.0.0" - postcss-overflow-shorthand "^2.0.0" - postcss-page-break "^2.0.0" - postcss-place "^4.0.1" - postcss-pseudo-class-any-link "^6.0.0" - postcss-replace-overflow-wrap "^3.0.0" - postcss-selector-matches "^4.0.0" - postcss-selector-not "^4.0.0" - -postcss-pseudo-class-any-link@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" - integrity sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew== +postcss-calc@^8.2.3: + version "8.2.4" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" + integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" + postcss-selector-parser "^6.0.9" + postcss-value-parser "^4.2.0" -postcss-reduce-initial@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df" - integrity sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA== +postcss-colormin@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.3.0.tgz#3cee9e5ca62b2c27e84fce63affc0cfb5901956a" + integrity sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg== dependencies: - browserslist "^4.0.0" + browserslist "^4.16.6" caniuse-api "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" + colord "^2.9.1" + postcss-value-parser "^4.2.0" -postcss-reduce-transforms@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29" - integrity sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg== - dependencies: - cssnano-util-get-match "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-replace-overflow-wrap@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" - integrity sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw== +postcss-convert-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz#04998bb9ba6b65aa31035d669a6af342c5f9d393" + integrity sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA== dependencies: - postcss "^7.0.2" + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" -postcss-selector-matches@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" - integrity sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" +postcss-discard-comments@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz#8df5e81d2925af2780075840c1526f0660e53696" + integrity sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ== -postcss-selector-not@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz#263016eef1cf219e0ade9a913780fc1f48204cbf" - integrity sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" +postcss-discard-duplicates@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848" + integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== -postcss-selector-parser@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz#b310f5c4c0fdaf76f94902bbaa30db6aa84f5270" - integrity sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA== - dependencies: - dot-prop "^5.2.0" - indexes-of "^1.0.1" - uniq "^1.0.1" +postcss-discard-empty@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c" + integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" - integrity sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ== - dependencies: - cssesc "^2.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" +postcss-discard-overridden@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e" + integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== -postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: - version "6.0.4" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" - integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== +postcss-import-resolver@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-import-resolver/-/postcss-import-resolver-2.0.0.tgz#95c61ac5489047bd93ff42a9cd405cfe9041e2c0" + integrity sha512-y001XYgGvVwgxyxw9J1a5kqM/vtmIQGzx34g0A0Oy44MFcy/ZboZw1hu/iN3VYFjSTRzbvd7zZJJz0Kh0AGkTw== dependencies: - cssesc "^3.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - util-deprecate "^1.0.2" + enhanced-resolve "^4.1.1" -postcss-svgo@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258" - integrity sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw== +postcss-import@^14.1.0: + version "14.1.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-14.1.0.tgz#a7333ffe32f0b8795303ee9e40215dac922781f0" + integrity sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw== dependencies: - is-svg "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" + postcss-value-parser "^4.0.0" + read-cache "^1.0.0" + resolve "^1.1.7" -postcss-unique-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" - integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== +postcss-import@^15.0.0: + version "15.1.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70" + integrity sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew== dependencies: - alphanum-sort "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" + postcss-value-parser "^4.0.0" + read-cache "^1.0.0" + resolve "^1.1.7" -postcss-url@^10.1.1: - version "10.1.3" - resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-10.1.3.tgz#54120cc910309e2475ec05c2cfa8f8a2deafdf1e" - integrity sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw== +postcss-js@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.0.tgz#31db79889531b80dc7bc9b0ad283e418dce0ac00" + integrity sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ== dependencies: - make-dir "~3.1.0" - mime "~2.5.2" - minimatch "~3.0.4" - xxhashjs "~0.2.2" + camelcase-css "^2.0.1" -postcss-url@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-8.0.0.tgz#7b10059bd12929cdbb1971c60f61a0e5af86b4ca" - integrity sha512-E2cbOQ5aii2zNHh8F6fk1cxls7QVFZjLPSrqvmiza8OuXLzIpErij8BDS5Y3STPfJgpIMNCPEr8JlKQWEoozUw== +postcss-load-config@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz#1ab2571faf84bb078877e1d07905eabe9ebda855" + integrity sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg== dependencies: - mime "^2.3.1" - minimatch "^3.0.4" - mkdirp "^0.5.0" - postcss "^7.0.2" - xxhashjs "^0.2.1" - -postcss-value-parser@^3.0.0, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== - -postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" - integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== + lilconfig "^2.0.5" + yaml "^1.10.2" -postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" - integrity sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg== +postcss-merge-longhand@^5.1.7: + version "5.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz#24a1bdf402d9ef0e70f568f39bdc0344d568fb16" + integrity sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ== dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" + postcss-value-parser "^4.2.0" + stylehacks "^5.1.1" -postcss-values-parser@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-4.0.0.tgz#3b4625e649279613f52842f1c81f2064321beec7" - integrity sha512-R9x2D87FcbhwXUmoCXJR85M1BLII5suXRuXibGYyBJ7lVDEpRIdKZh4+8q5S+/+A4m0IoG1U5tFw39asyhX/Hw== +postcss-merge-rules@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.1.3.tgz#8f97679e67cc8d08677a6519afca41edf2220894" + integrity sha512-LbLd7uFC00vpOuMvyZop8+vvhnfRGpp2S+IMQKeuOZZapPRY4SMq5ErjQeHbHsjCUgJkRNrlU+LmxsKIqPKQlA== dependencies: - color-name "^1.1.4" - is-url-superb "^4.0.0" - postcss "^7.0.5" + browserslist "^4.21.4" + caniuse-api "^3.0.0" + cssnano-utils "^3.1.0" + postcss-selector-parser "^6.0.5" -postcss@7.x.x, postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.18, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.35" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" - integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== +postcss-minify-font-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz#f1df0014a726083d260d3bd85d7385fb89d1f01b" + integrity sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== dependencies: - chalk "^2.4.2" - source-map "^0.6.1" - supports-color "^6.1.0" + postcss-value-parser "^4.2.0" -postcss@^6.0.9: - version "6.0.23" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" - integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== +postcss-minify-gradients@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz#f1fe1b4f498134a5068240c2f25d46fcd236ba2c" + integrity sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw== dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.4.0" + colord "^2.9.1" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss@^8.1.10, postcss@^8.1.6, postcss@^8.2.1, postcss@^8.2.8: - version "8.2.8" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.8.tgz#0b90f9382efda424c4f0f69a2ead6f6830d08ece" - integrity sha512-1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw== +postcss-minify-params@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz#c06a6c787128b3208b38c9364cfc40c8aa5d7352" + integrity sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw== dependencies: - colorette "^1.2.2" - nanoid "^3.1.20" - source-map "^0.6.1" + browserslist "^4.21.4" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss@^8.2.9: - version "8.2.10" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.10.tgz#ca7a042aa8aff494b334d0ff3e9e77079f6f702b" - integrity sha512-b/h7CPV7QEdrqIxtAf2j31U5ef05uBDuvoXv6L51Q4rcS1jdlXAVKJv+atCFdUXYl9dyTHGyoMzIepwowRJjFw== +postcss-minify-selectors@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz#d4e7e6b46147b8117ea9325a915a801d5fe656c6" + integrity sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg== dependencies: - colorette "^1.2.2" - nanoid "^3.1.22" - source-map "^0.6.1" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + postcss-selector-parser "^6.0.5" -prepend-http@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= - -prettier-linter-helpers@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" - integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== +postcss-nested@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-6.0.0.tgz#1572f1984736578f360cffc7eb7dca69e30d1735" + integrity sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w== dependencies: - fast-diff "^1.1.2" - -prettier@^1.18.2: - version "1.19.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" - integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== - -prettier@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" - integrity sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q== - -pretty-bytes@^5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" - integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg== + postcss-selector-parser "^6.0.10" -pretty-error@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6" - integrity sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw== - dependencies: - lodash "^4.17.20" - renderkid "^2.0.4" +postcss-normalize-charset@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed" + integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== -pretty-format@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" - integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== +postcss-normalize-display-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz#72abbae58081960e9edd7200fcf21ab8325c3da8" + integrity sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== dependencies: - "@jest/types" "^26.6.2" - ansi-regex "^5.0.0" - ansi-styles "^4.0.0" - react-is "^17.0.1" - -pretty-hrtime@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" - integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= + postcss-value-parser "^4.2.0" -pretty-time@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pretty-time/-/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e" - integrity sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA== - -pretty@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pretty/-/pretty-2.0.0.tgz#adbc7960b7bbfe289a557dc5f737619a220d06a5" - integrity sha1-rbx5YLe7/iiaVX3F9zdhmiINBqU= +postcss-normalize-positions@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz#ef97279d894087b59325b45c47f1e863daefbb92" + integrity sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg== dependencies: - condense-newlines "^0.2.1" - extend-shallow "^2.0.1" - js-beautify "^1.6.12" - -prismjs@^1.23.0: - version "1.23.0" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.23.0.tgz#d3b3967f7d72440690497652a9d40ff046067f33" - integrity sha512-c29LVsqOaLbBHuIbsTxaKENh1N2EQBOHaWv7gkHN4dgRbxSREqDnDbtFJYdpPauS4YCplMSNCABQ6Eeor69bAA== - optionalDependencies: - clipboard "^2.0.0" - -process-nextick-args@~2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" - integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= - -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= + postcss-value-parser "^4.2.0" -prompts@^2.0.1: - version "2.4.0" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.0.tgz#4aa5de0723a231d1ee9121c40fdf663df73f61d7" - integrity sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ== +postcss-normalize-repeat-style@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz#e9eb96805204f4766df66fd09ed2e13545420fb2" + integrity sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g== dependencies: - kleur "^3.0.3" - sisteransi "^1.0.5" + postcss-value-parser "^4.2.0" -proper-lockfile@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-4.1.2.tgz#c8b9de2af6b2f1601067f98e01ac66baa223141f" - integrity sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA== +postcss-normalize-string@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz#411961169e07308c82c1f8c55f3e8a337757e228" + integrity sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== dependencies: - graceful-fs "^4.2.4" - retry "^0.12.0" - signal-exit "^3.0.2" + postcss-value-parser "^4.2.0" -property-information@^5.0.0, property-information@^5.3.0, property-information@^5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.6.0.tgz#61675545fb23002f245c6540ec46077d4da3ed69" - integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA== +postcss-normalize-timing-functions@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz#d5614410f8f0b2388e9f240aa6011ba6f52dafbb" + integrity sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== dependencies: - xtend "^4.0.0" - -proto-list@~1.2.1: - version "1.2.4" - resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" - integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= - -protocols@^1.1.0, protocols@^1.4.0: - version "1.4.8" - resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" - integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== + postcss-value-parser "^4.2.0" -proxy-addr@^2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" - integrity sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw== +postcss-normalize-unicode@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz#f67297fca3fea7f17e0d2caa40769afc487aa030" + integrity sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA== dependencies: - forwarded "~0.1.2" - ipaddr.js "1.9.1" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= - -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= - -psl@^1.1.28, psl@^1.1.33: - version "1.8.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== +postcss-normalize-url@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz#ed9d88ca82e21abef99f743457d3729a042adcdc" + integrity sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" + normalize-url "^6.0.1" + postcss-value-parser "^4.2.0" -pump@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== +postcss-normalize-whitespace@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz#08a1a0d1ffa17a7cc6efe1e6c9da969cc4493cfa" + integrity sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" + postcss-value-parser "^4.2.0" -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== +postcss-ordered-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz#b6fd2bd10f937b23d86bc829c69e7732ce76ea38" + integrity sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ== dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== +postcss-reduce-initial@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.1.tgz#c18b7dfb88aee24b1f8e4936541c29adbd35224e" + integrity sha512-//jeDqWcHPuXGZLoolFrUXBDyuEGbr9S2rMo19bkTIjBQ4PqkaO+oI8wua5BOUxpfi97i3PCoInsiFIEBfkm9w== dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@^1.2.4: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= + browserslist "^4.21.4" + caniuse-api "^3.0.0" -punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== +postcss-reduce-transforms@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz#333b70e7758b802f3dd0ddfe98bb1ccfef96b6e9" + integrity sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== + dependencies: + postcss-value-parser "^4.2.0" -purgecss@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/purgecss/-/purgecss-3.1.3.tgz#26987ec09d12eeadc318e22f6e5a9eb0be094f41" - integrity sha512-hRSLN9mguJ2lzlIQtW4qmPS2kh6oMnA9RxdIYK8sz18QYqd6ePp4GNDl18oWHA1f2v2NEQIh51CO8s/E3YGckQ== +postcss-selector-parser@6.0.10: + version "6.0.10" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d" + integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w== dependencies: - commander "^6.0.0" - glob "^7.0.0" - postcss "^8.2.1" - postcss-selector-parser "^6.0.2" + cssesc "^3.0.0" + util-deprecate "^1.0.2" -q@^1.1.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= +postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9: + version "6.0.11" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz#2e41dc39b7ad74046e1615185185cd0b17d0c8dc" + integrity sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" -qs@^6.5.2, qs@^6.9.4: - version "6.10.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.1.tgz#4931482fa8d647a5aab799c5271d2133b981fb6a" - integrity sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg== +postcss-svgo@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" + integrity sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== dependencies: - side-channel "^1.0.4" + postcss-value-parser "^4.2.0" + svgo "^2.7.0" -qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +postcss-unique-selectors@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz#a9f273d1eacd09e9aa6088f4b0507b18b1b541b6" + integrity sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== + dependencies: + postcss-selector-parser "^6.0.5" -query-string@^4.1.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= +postcss-url@^10.1.3: + version "10.1.3" + resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-10.1.3.tgz#54120cc910309e2475ec05c2cfa8f8a2deafdf1e" + integrity sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw== dependencies: - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" + make-dir "~3.1.0" + mime "~2.5.2" + minimatch "~3.0.4" + xxhashjs "~0.2.2" + +postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -query-string@^6.13.8: - version "6.14.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" - integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== +postcss@^8.1.10, postcss@^8.4.18, postcss@^8.4.19: + version "8.4.19" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.19.tgz#61178e2add236b17351897c8bcc0b4c8ecab56fc" + integrity sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA== dependencies: - decode-uri-component "^0.2.0" - filter-obj "^1.1.0" - split-on-first "^1.0.0" - strict-uri-encode "^2.0.0" + nanoid "^3.3.4" + picocolors "^1.0.0" + source-map-js "^1.0.2" -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= +pretty-bytes@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-6.0.0.tgz#928be2ad1f51a2e336add8ba764739f9776a8140" + integrity sha512-6UqkYefdogmzqAZWzJ7laYeJnaXDy2/J+ZqiiMtS7t7OfpXWTlaeGMwX8U6EFvPV/YWWEKRkS8hKS4k60WHTOg== -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +property-information@^6.0.0, property-information@^6.1.1: + version "6.2.0" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.2.0.tgz#b74f522c31c097b5149e3c3cb8d7f3defd986a1d" + integrity sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg== + +protocols@^2.0.0, protocols@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" + integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q== -querystring@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd" - integrity sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg== +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== queue-microtask@^1.2.2: version "1.2.3" @@ -10415,84 +4294,40 @@ quick-lru@^5.1.1: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: +radix3@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/radix3/-/radix3-1.0.0.tgz#d1c760b850206a6bd5dfd26820c25903cb20eccc" + integrity sha512-6n3AEXth91ASapMVKiEh2wrbFJmI+NBilrWE0AbiGgfm0xet0QXC8+a3K19r1UVYjUjctUgB053c3V/J6V0kCQ== + +randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.2.1, range-parser@~1.2.1: +range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -rc9@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/rc9/-/rc9-1.2.0.tgz#ef098181fdde714efc4c426383d6e46c14b1254a" - integrity sha512-/jknmhG0USFAx5uoKkAKhtG40sONds9RWhFHrP1UzJ3OvVfqFWOypSUpmsQD0fFwAV7YtzHhsn3QNasfAoxgcQ== +rc9@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/rc9/-/rc9-2.0.0.tgz#932d6f398f901529b4cc6c2037af3e4ba220d82b" + integrity sha512-yVeYJHOpJLOhs3V6RKwz7RPPwPurrx3JjwK264sPgvo/lFdhuUrLien7iSvAO6STVkN0gSMk/MehQNHQhflqZw== dependencies: - defu "^2.0.4" - destr "^1.0.0" - flat "^5.0.0" - -react-is@^17.0.1: - version "17.0.2" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" - integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + defu "^6.1.1" + destr "^1.2.1" + flat "^5.0.2" read-cache@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" - integrity sha1-5mTvMRYRZsl1HNvo28+GtftY93Q= + integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA== dependencies: pify "^2.3.0" -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - -read-pkg-up@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" - integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== - dependencies: - find-up "^4.1.0" - read-pkg "^5.2.0" - type-fest "^0.8.1" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -read-pkg@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" - integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^2.5.0" - parse-json "^5.0.0" - type-fest "^0.6.0" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: +readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.5: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -10505,7 +4340,7 @@ read-pkg@^5.2.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.1.1, readable-stream@^3.6.0: +readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -10514,398 +4349,221 @@ readable-stream@^3.1.1, readable-stream@^3.6.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== +readdir-glob@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/readdir-glob/-/readdir-glob-1.1.2.tgz#b185789b8e6a43491635b6953295c5c5e3fd224c" + integrity sha512-6RLVvwJtVwEDfPdn6X6Ille4/lxGl0ATOY4FN/B9nxQcgOazvvI0nodiD19ScKq0PvA/29VpaOQML36o5IzZWA== dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" + minimatch "^5.1.0" -readdirp@~3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" - integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" -reduce-css-calc@^2.1.8: - version "2.1.8" - resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-2.1.8.tgz#7ef8761a28d614980dc0c982f772c93f7a99de03" - integrity sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg== - dependencies: - css-unit-converter "^1.1.1" - postcss-value-parser "^3.3.0" - -regenerate-unicode-properties@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" - integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== - dependencies: - regenerate "^1.4.0" - -regenerate@^1.4.0: - version "1.4.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" - integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - -regenerator-runtime@^0.13.4, regenerator-runtime@^0.13.7: - version "0.13.7" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz#cac2dacc8a1ea675feaabaeb8ae833898ae46f55" - integrity sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew== - -regenerator-transform@^0.14.2: - version "0.14.5" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" - integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== - dependencies: - "@babel/runtime" "^7.8.4" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexp-tree@^0.1.22, regexp-tree@~0.1.1: - version "0.1.23" - resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.23.tgz#8a8ce1cc5e971acef62213a7ecdb1f6e18a1f1b2" - integrity sha512-+7HWfb4Bvu8Rs2eQTUIpX9I/PlQkYOuTNbRpKLJlQpSgwSkzFYh+pUj0gtvglnOZLKB6YgnIgRuJ2/IlpL48qw== - -regexpp@^3.0.0, regexpp@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" - integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== - -regexpu-core@^4.7.1: - version "4.7.1" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" - integrity sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ== - dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^8.2.0" - regjsgen "^0.5.1" - regjsparser "^0.6.4" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.2.0" - -regjsgen@^0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" - integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== - -regjsparser@^0.6.4: - version "0.6.9" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.9.tgz#b489eef7c9a2ce43727627011429cf833a7183e6" - integrity sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ== - dependencies: - jsesc "~0.5.0" - -rehype-raw@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/rehype-raw/-/rehype-raw-5.1.0.tgz#66d5e8d7188ada2d31bc137bc19a1000cf2c6b7e" - integrity sha512-MDvHAb/5mUnif2R+0IPCYJU8WjHa9UzGtM/F4AVy5GixPlDZ1z3HacYy4xojDU+uBa+0X/3PIfyQI26/2ljJNA== - dependencies: - hast-util-raw "^6.1.0" - -rehype-sort-attribute-values@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rehype-sort-attribute-values/-/rehype-sort-attribute-values-3.0.2.tgz#7f4b41c2dc46a67c26d42bc9fd872ab76fece194" - integrity sha512-6QGua2vM3DytGRJcL11UTYLP5w5ItRgaQI2PhS3zLhvgKFkO/sb+JgcYsLCnkli9MCTkSvuEYArkiA1txtAtPA== - dependencies: - hast-util-is-element "^1.0.0" - unist-util-visit "^2.0.0" - x-is-array "^0.1.0" +redis-errors@^1.0.0, redis-errors@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/redis-errors/-/redis-errors-1.2.0.tgz#eb62d2adb15e4eaf4610c04afe1529384250abad" + integrity sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w== -rehype-sort-attributes@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rehype-sort-attributes/-/rehype-sort-attributes-3.0.2.tgz#18c7e86b34de4b0222d0d54412e860333bd74b7e" - integrity sha512-roPtOHX6BfLXge161TnxOh+jr8JhZwUDVdqYI/qobYpfAkXgBfnftpWlwcShdsExa+nbUd5zU7z9A0nHBi35+A== +redis-parser@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/redis-parser/-/redis-parser-3.0.0.tgz#b66d828cdcafe6b4b8a428a7def4c6bcac31c8b4" + integrity sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A== dependencies: - unist-util-visit "^2.0.0" - -relateurl@^0.2.7: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= + redis-errors "^1.0.0" -remark-autolink-headings@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/remark-autolink-headings/-/remark-autolink-headings-6.0.1.tgz#074470b8ec7714a0f06fa151e293152bf9723df9" - integrity sha512-LTV5G5NMjypHEr14tMNJ36yrP+xwT7mejJelZOPXKiF5WvRH9o36zXnr2QGqfms2yVASNpDaC9NBOwKlJJKuQw== +rehype-external-links@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/rehype-external-links/-/rehype-external-links-2.0.1.tgz#fe54f9f227a1a2f8f6afe442ac4c9ee748f08756" + integrity sha512-u2dNypma+ps12SJWlS23zvbqwNx0Hl24t0YHXSM/6FCZj/pqWETCO3WyyrvALv4JYvRtuPjhiv2Lpen15ESqbA== dependencies: + "@types/hast" "^2.0.0" extend "^3.0.0" - unist-util-visit "^2.0.0" + is-absolute-url "^4.0.0" + space-separated-tokens "^2.0.0" + unified "^10.0.0" + unist-util-visit "^4.0.0" -remark-external-links@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/remark-external-links/-/remark-external-links-8.0.0.tgz#308de69482958b5d1cd3692bc9b725ce0240f345" - integrity sha512-5vPSX0kHoSsqtdftSHhIYofVINC8qmp0nctkeU9YoJwV3YfiBRiI6cbFRJ0oI/1F9xS+bopXG0m2KS8VFscuKA== +rehype-raw@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/rehype-raw/-/rehype-raw-6.1.1.tgz#81bbef3793bd7abacc6bf8335879d1b6c868c9d4" + integrity sha512-d6AKtisSRtDRX4aSPsJGTfnzrX2ZkHQLE5kiUuGOeEoLpbEulFF4hj0mLPbsa+7vmguDKOVVEQdHKDSwoaIDsQ== dependencies: - extend "^3.0.0" - is-absolute-url "^3.0.0" - mdast-util-definitions "^4.0.0" - space-separated-tokens "^1.0.0" - unist-util-visit "^2.0.0" + "@types/hast" "^2.0.0" + hast-util-raw "^7.2.0" + unified "^10.0.0" -remark-footnotes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/remark-footnotes/-/remark-footnotes-3.0.0.tgz#5756b56f8464fa7ed80dbba0c966136305d8cb8d" - integrity sha512-ZssAvH9FjGYlJ/PBVKdSmfyPc3Cz4rTWgZLI4iE/SX8Nt5l3o3oEjv3wwG5VD7xOjktzdwp5coac+kJV9l4jgg== +rehype-slug@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/rehype-slug/-/rehype-slug-5.1.0.tgz#1f7e69be7ea1a2067bcc4cfe58e74c881d5c047e" + integrity sha512-Gf91dJoXneiorNEnn+Phx97CO7oRMrpi+6r155tTxzGuLtm+QrI4cTwCa9e1rtePdL4i9tSO58PeSS6HWfgsiw== dependencies: - mdast-util-footnote "^0.1.0" - micromark-extension-footnote "^0.3.0" - -remark-gfm@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/remark-gfm/-/remark-gfm-1.0.0.tgz#9213643001be3f277da6256464d56fd28c3b3c0d" - integrity sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA== + "@types/hast" "^2.0.0" + github-slugger "^2.0.0" + hast-util-has-property "^2.0.0" + hast-util-heading-rank "^2.0.0" + hast-util-to-string "^2.0.0" + unified "^10.0.0" + unist-util-visit "^4.0.0" + +rehype-sort-attribute-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/rehype-sort-attribute-values/-/rehype-sort-attribute-values-4.0.0.tgz#6a1baaced2f984ebed9aa201145c85cbc1c76880" + integrity sha512-+Y3OWTbbxSIutbXMVY7+aWFmcRyEvdz6HkghXAyVPjee1Y8HUi+/vryBL1UdEI9VknVBiGvphXAf5n6MDNOXOA== dependencies: - mdast-util-gfm "^0.1.0" - micromark-extension-gfm "^0.3.0" + "@types/hast" "^2.0.0" + hast-util-is-element "^2.0.0" + unified "^10.0.0" + unist-util-visit "^4.0.0" -remark-parse@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-9.0.0.tgz#4d20a299665880e4f4af5d90b7c7b8a935853640" - integrity sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw== +rehype-sort-attributes@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/rehype-sort-attributes/-/rehype-sort-attributes-4.0.0.tgz#b7766c864a370a07dd8ffa93b02c98322c20fe67" + integrity sha512-sCT58e12F+fJL8ZmvpEP2vAK7cpYffUAf0cMQjNfLIewWjMHMGo0Io+H8eztJoI1S9dvEm2XZT5zzchqe8gYJw== dependencies: - mdast-util-from-markdown "^0.8.0" + "@types/hast" "^2.0.0" + unified "^10.0.0" + unist-util-visit "^4.0.0" -remark-rehype@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-8.0.0.tgz#5a8afc8262a59d205fba21dafb27a673fb3b92fa" - integrity sha512-gVvOH02TMFqXOWoL6iXU7NXMsDJguNkNuMrzfkQeA4V6WCyHQnOKptn+IQBVVPuIH2sMJBwo8hlrmtn1MLTh9w== +remark-emoji@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/remark-emoji/-/remark-emoji-3.0.2.tgz#786e88af1ecae682d74d7e1219989f34708205da" + integrity sha512-hEgxEv2sBtvhT3tNG/tQeeFY3EbslftaOoG14dDZndLo25fWJ6Fbg4ukFbIotOWWrfXyASjXjyHT+6n366k3mg== dependencies: - mdast-util-to-hast "^10.0.0" + emoticon "^4.0.0" + node-emoji "^1.11.0" + unist-util-visit "^4.1.0" -remark-slug@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/remark-slug/-/remark-slug-6.0.0.tgz#2b54a14a7b50407a5e462ac2f376022cce263e2c" - integrity sha512-ln67v5BrGKHpETnm6z6adlJPhESFJwfuZZ3jrmi+lKTzeZxh2tzFzUfDD4Pm2hRGOarHLuGToO86MNMZ/hA67Q== +remark-gfm@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/remark-gfm/-/remark-gfm-3.0.1.tgz#0b180f095e3036545e9dddac0e8df3fa5cfee54f" + integrity sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig== dependencies: - github-slugger "^1.0.0" - mdast-util-to-string "^1.0.0" - unist-util-visit "^2.0.0" + "@types/mdast" "^3.0.0" + mdast-util-gfm "^2.0.0" + micromark-extension-gfm "^2.0.0" + unified "^10.0.0" -remark-squeeze-paragraphs@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz#76eb0e085295131c84748c8e43810159c5653ead" - integrity sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw== +remark-mdc@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/remark-mdc/-/remark-mdc-1.1.3.tgz#590d9b47b69d0a54b278f2c1c5618e4dfb84afc7" + integrity sha512-ilYSkkQJhu5cUCEE2CJEncoMDoarP32ugfJpFWghXbnv3sWI3j2HtJuArc9tZzxN4ID6fngio3d8N87QfQAnRQ== + dependencies: + flat "^5.0.2" + js-yaml "^4.1.0" + mdast-util-from-markdown "^1.2.0" + mdast-util-to-markdown "^1.3.0" + micromark "^3.1.0" + micromark-core-commonmark "^1.0.6" + micromark-factory-space "^1.0.0" + micromark-factory-whitespace "^1.0.0" + micromark-util-character "^1.1.0" + parse-entities "^4.0.0" + scule "^1.0.0" + stringify-entities "^4.0.3" + unist-util-visit "^4.1.1" + unist-util-visit-parents "^5.1.1" + +remark-parse@^10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-10.0.1.tgz#6f60ae53edbf0cf38ea223fe643db64d112e0775" + integrity sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw== dependencies: - mdast-squeeze-paragraphs "^4.0.0" - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + "@types/mdast" "^3.0.0" + mdast-util-from-markdown "^1.0.0" + unified "^10.0.0" -renderkid@^2.0.4: - version "2.0.5" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.5.tgz#483b1ac59c6601ab30a7a596a5965cabccfdd0a5" - integrity sha512-ccqoLg+HLOHq1vdfYNm4TBeaCDIi1FLt3wGojTDSvdewUv65oTmI3cnT2E4hRjl1gzKZIPK+KZrXzlUYKnR+vQ== +remark-rehype@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-10.1.0.tgz#32dc99d2034c27ecaf2e0150d22a6dcccd9a6279" + integrity sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw== dependencies: - css-select "^2.0.2" - dom-converter "^0.2" - htmlparser2 "^3.10.1" - lodash "^4.17.20" - strip-ansi "^3.0.0" - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.0.0, repeat-string@^1.5.4, repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + "@types/hast" "^2.0.0" + "@types/mdast" "^3.0.0" + mdast-util-to-hast "^12.1.0" + unified "^10.0.0" -replace-in-file@^6.1.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/replace-in-file/-/replace-in-file-6.2.0.tgz#9c0e381b0e02f27f83d5ba500bb4046f63d18566" - integrity sha512-Im2AF9G/qgkYneOc9QwWwUS/efyyonTUBvzXS2VXuxPawE5yQIjT/e6x4CTijO0Quq48lfAujuo+S89RR2TP2Q== +remark-squeeze-paragraphs@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-5.0.1.tgz#c15aae559c43cc6e1fe85e24d6ec3cca7ecc4fa9" + integrity sha512-VWPAoa1bAAtU/aQfSLRZ7vOrwH9I02RhZTSo+e0LT3fVO9RKNCq/bwobIEBhxvNCt00JoQ7GwR3sYGhmD2/y6Q== dependencies: - chalk "^4.1.0" - glob "^7.1.6" - yargs "^16.2.0" - -request-promise-core@1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" - integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw== - dependencies: - lodash "^4.17.19" - -request-promise-native@^1.0.9: - version "1.0.9" - resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.9.tgz#e407120526a5efdc9a39b28a5679bf47b9d9dc28" - integrity sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g== - dependencies: - request-promise-core "1.1.4" - stealthy-require "^1.1.1" - tough-cookie "^2.3.3" - -request@^2.88.2: - version "2.88.2" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" + "@types/mdast" "^3.0.0" + mdast-squeeze-paragraphs "^5.0.0" + unified "^10.0.0" require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-from-string@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== requires-port@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - -reserved-words@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/reserved-words/-/reserved-words-0.1.2.tgz#00a0940f98cd501aeaaac316411d9adc52b31ab1" - integrity sha1-AKCUD5jNUBrqqsMWQR2a3FKzGrE= - -resolve-cwd@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" - integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== - dependencies: - resolve-from "^5.0.0" - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== resolve-from@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== -resolve-path@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/resolve-path/-/resolve-path-1.4.0.tgz#c4bda9f5efb2fce65247873ab36bb4d834fe16f7" - integrity sha1-xL2p9e+y/OZSR4c6s2u02DT+Fvc= - dependencies: - http-errors "~1.6.2" - path-is-absolute "1.0.1" - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.2.0, resolve@^1.20.0: - version "1.20.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" - integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== +resolve@^1.1.7, resolve@^1.22.1: + version "1.22.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" + is-core-module "^2.9.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" -restore-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" - integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== +restore-cursor@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-4.0.0.tgz#519560a4318975096def6e609d44100edaa4ccb9" + integrity sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg== dependencies: onetime "^5.1.0" signal-exit "^3.0.2" -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= - reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rgb-regex@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" - integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= - -rgba-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" - integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= - -rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - -rimraf@^3.0.0, rimraf@^3.0.2: +rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== dependencies: glob "^7.1.3" -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== +rollup-plugin-terser@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d" + integrity sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ== + dependencies: + "@babel/code-frame" "^7.10.4" + jest-worker "^26.2.1" + serialize-javascript "^4.0.0" + terser "^5.0.0" + +rollup-plugin-visualizer@^5.8.3: + version "5.8.3" + resolved "https://registry.yarnpkg.com/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.8.3.tgz#2f002d6e1e38f4d4fb8638fd8d23ec799c3a2060" + integrity sha512-QGJk4Bqe4AOat5AjipOh8esZH1nck5X2KFpf4VytUdSUuuuSwvIQZjMGgjcxe/zXexltqaXp5Vx1V3LmnQH15Q== dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" + open "^8.4.0" + source-map "^0.7.4" + yargs "^17.5.1" -rsvp@^4.8.4: - version "4.8.5" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" - integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== +rollup@^2.79.1: + version "2.79.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.79.1.tgz#bedee8faef7c9f93a2647ac0108748f497f081c7" + integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw== + optionalDependencies: + fsevents "~2.3.2" run-async@^2.4.0: version "2.4.1" @@ -10919,197 +4577,70 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= +rxjs@^7.5.7: + version "7.6.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.6.0.tgz#361da5362b6ddaa691a2de0b4f2d32028f1eb5a2" + integrity sha512-DDa7d8TFNUalGC9VqXvQ1euWNN7sc63TrUCuM9J998+ViviahMIjKSOU7rfcgFOF+FCD71BhDRv4hrFz+ImDLQ== dependencies: - aproba "^1.1.1" + tslib "^2.1.0" -rxjs@^6.6.0: - version "6.6.6" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.6.tgz#14d8417aa5a07c5e633995b525e1e3c0dec03b70" - integrity sha512-/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg== +sade@^1.7.3: + version "1.8.1" + resolved "https://registry.yarnpkg.com/sade/-/sade-1.8.1.tgz#0a78e81d658d394887be57d2a409bf703a3b2701" + integrity sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A== dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + mri "^1.1.0" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: +safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -safe-regex@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-2.1.1.tgz#f7128f00d056e2fe5c11e81a1324dd974aadced2" - integrity sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A== - dependencies: - regexp-tree "~0.1.1" +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sane@^4.0.3: - version "4.1.0" - resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" - integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== - dependencies: - "@cnakazawa/watch" "^1.0.3" - anymatch "^2.0.0" - capture-exit "^2.0.0" - exec-sh "^0.3.2" - execa "^1.0.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - -sass-loader@^10.1.1: - version "10.1.1" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-10.1.1.tgz#4ddd5a3d7638e7949065dd6e9c7c04037f7e663d" - integrity sha512-W6gVDXAd5hR/WHsPicvZdjAWHBcEJ44UahgxcIE196fW2ong0ZHMPO1kZuI5q0VlvMQZh32gpv69PLWQm70qrw== - dependencies: - klona "^2.0.4" - loader-utils "^2.0.0" - neo-async "^2.6.2" - schema-utils "^3.0.0" - semver "^7.3.2" - -sax@>=0.6.0, sax@~1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - -schema-utils@2.7.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" - integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== - dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -schema-utils@^2.0.0, schema-utils@^2.6.5, schema-utils@^2.7.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" - integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== - dependencies: - "@types/json-schema" "^7.0.5" - ajv "^6.12.4" - ajv-keywords "^3.5.2" - -schema-utils@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef" - integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA== - dependencies: - "@types/json-schema" "^7.0.6" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - -scule@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/scule/-/scule-0.1.1.tgz#6bf026f1815c646f061761f9bfd7a3e783f2d05c" - integrity sha512-1j2RlmUNADEprCkzDaeo8w2tdum/mvQWAKdRaS2raud7IOnPaDbLSFKhcY5xXPbAFYWk4ZQ0BUnfmg0ZUcI+Pg== - -section-matter@^1.0.0: +scule@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/section-matter/-/section-matter-1.0.0.tgz#e9041953506780ec01d59f292a19c7b850b84167" - integrity sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA== - dependencies: - extend-shallow "^2.0.1" - kind-of "^6.0.0" - -select@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" - integrity sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0= - -"semver@2 || 3 || 4 || 5", semver@^5.5.0, semver@^5.6.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - -semver@7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" - integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== - -semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: - version "7.3.5" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== - dependencies: - lru-cache "^6.0.0" + resolved "https://registry.yarnpkg.com/scule/-/scule-1.0.0.tgz#895e6f4ba887e78d8b9b4111e23ae84fef82376d" + integrity sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ== -semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: +semver@^6.0.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -send@0.17.1: - version "0.17.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" - integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== +semver@^7.3.4, semver@^7.3.5, semver@^7.3.8: + version "7.3.8" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" + integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== + dependencies: + lru-cache "^6.0.0" + +send@0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== dependencies: debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" + depd "2.0.0" + destroy "1.2.0" encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" fresh "0.5.2" - http-errors "~1.7.2" + http-errors "2.0.0" mime "1.6.0" - ms "2.1.1" - on-finished "~2.3.0" + ms "2.1.3" + on-finished "2.4.1" range-parser "~1.2.1" - statuses "~1.5.0" - -sentence-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.4.tgz#3645a7b8c117c787fde8702056225bb62a45131f" - integrity sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - upper-case-first "^2.0.2" - -serialize-javascript@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-3.1.0.tgz#8bf3a9170712664ef2561b44b691eafe399214ea" - integrity sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg== - dependencies: - randombytes "^2.1.0" + statuses "2.0.1" serialize-javascript@^4.0.0: version "4.0.0" @@ -11118,491 +4649,160 @@ serialize-javascript@^4.0.0: dependencies: randombytes "^2.1.0" -serialize-javascript@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" - integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== - dependencies: - randombytes "^2.1.0" - -serve-placeholder@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/serve-placeholder/-/serve-placeholder-1.2.3.tgz#d2e778c6fedfe6e6ca48aff0b4627bbe2c4aa2ca" - integrity sha512-DC7t66WeIrlVzVMzickfHIn1zHu7eMsVNiH0nkD/wCrijFQdvgyfH2zc5lkFf79EApUgRhZntkpKjfgLkn2i/Q== +serve-placeholder@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/serve-placeholder/-/serve-placeholder-2.0.1.tgz#dfa741812f49dfea472a68c4f292dbc40d28389a" + integrity sha512-rUzLlXk4uPFnbEaIz3SW8VISTxMuONas88nYWjAWaM2W9VDbt9tyFOr3lq8RhVOFrT3XISoBw8vni5una8qMnQ== dependencies: - defu "^3.2.2" + defu "^6.0.0" -serve-static@^1.14.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" - integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== +serve-static@^1.15.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== dependencies: encodeurl "~1.0.2" escape-html "~1.0.3" parseurl "~1.3.3" - send "0.17.1" - -server-destroy@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/server-destroy/-/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" - integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= + send "0.18.0" set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -setprototypeof@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" - integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== setprototypeof@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shallow-clone@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" - integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== - dependencies: - kind-of "^6.0.2" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -shell-quote@^1.6.1: - version "1.7.2" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" - integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== - -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - -side-channel@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" - integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== - dependencies: - call-bind "^1.0.0" - get-intrinsic "^1.0.2" - object-inspect "^1.9.0" - -sigmund@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" - integrity sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA= - -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== - -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= - dependencies: - is-arrayish "^0.3.1" + shebang-regex "^3.0.0" -sirv@^1.0.7: - version "1.0.11" - resolved "https://registry.yarnpkg.com/sirv/-/sirv-1.0.11.tgz#81c19a29202048507d6ec0d8ba8910fda52eb5a4" - integrity sha512-SR36i3/LSWja7AJNRBz4fF/Xjpn7lQFI30tZ434dIy+bitLYSP+ZEenHg36i23V2SGEz+kqjksg0uOGZ5LPiqg== - dependencies: - "@polka/url" "^1.0.0-next.9" - mime "^2.3.1" - totalist "^1.0.0" +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -sisteransi@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" - integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== +shiki-es@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/shiki-es/-/shiki-es-0.1.2.tgz#37176c6ff8d734f95e27560b62e1230c9a90c0cb" + integrity sha512-eqtfk8idlYlSLAn0gp0Ly2+FbKc2d78IddigHSS4iHAnpXoY2kdRzyFGZOdi6TvemYMnRhZBi1HsSqZc5eNKqg== -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -slice-ansi@^4.0.0: +slash@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" - integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -snake-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" - integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== - dependencies: - dot-case "^3.0.4" - tslib "^2.0.3" + resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" + integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" +slugify@^1.6.5: + version "1.6.5" + resolved "https://registry.yarnpkg.com/slugify/-/slugify-1.6.5.tgz#c8f5c072bf2135b80703589b39a3d41451fbe8c8" + integrity sha512-8mo9bslnBO3tr5PEVFzMPIWwWnipGS0xVbYf65zxDqfNwmzYn1LpiKNrR6DlClusuvo+hDHd1zKpmfAe83NQSQ== -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sort-keys@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= +socket.io-client@^4.5.3: + version "4.5.4" + resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-4.5.4.tgz#d3cde8a06a6250041ba7390f08d2468ccebc5ac9" + integrity sha512-ZpKteoA06RzkD32IbqILZ+Cnst4xewU7ZYK12aS1mzHftFFjpoMz69IuhP/nL25pJfao/amoPI527KnuhFm01g== dependencies: - is-plain-obj "^1.0.0" + "@socket.io/component-emitter" "~3.1.0" + debug "~4.3.2" + engine.io-client "~6.2.3" + socket.io-parser "~4.2.1" -sort-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= +socket.io-parser@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.2.1.tgz#01c96efa11ded938dcb21cbe590c26af5eff65e5" + integrity sha512-V4GrkLy+HeF1F/en3SpUaM+7XxYXpuMUWLGde1kSSh5nQMN4hLrbPIkD+otwh6q9R6NOQBN4AMaOZ2zVjui82g== dependencies: - is-plain-obj "^1.0.0" - -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== + "@socket.io/component-emitter" "~3.1.0" + debug "~4.3.1" -source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" +source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== -source-map-support@^0.5.6, source-map-support@~0.5.12, source-map-support@~0.5.19: - version "0.5.19" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" - integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== +source-map-support@^0.5.21, source-map-support@~0.5.20: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-url@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" - integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== - -source-map@0.5.6: - version "0.5.6" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" - integrity sha1-dc449SvwczxafwwRjYEzSiu19BI= - -source-map@^0.5.0, source-map@^0.5.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: +source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.3, source-map@~0.7.2: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - -space-separated-tokens@^1.0.0: - version "1.1.5" - resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" - integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== - -spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.7" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65" - integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ== - -split-on-first@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" - integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw== - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" +source-map@^0.7.4: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -ssri@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" - integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== - dependencies: - figgy-pudding "^3.5.1" +sourcemap-codec@^1.4.8: + version "1.4.8" + resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" + integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== -ssri@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" - integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== - dependencies: - minipass "^3.1.1" +space-separated-tokens@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f" + integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q== stable@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== -stack-trace@0.0.10: - version "0.0.10" - resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" - integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= - -stack-utils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.3.tgz#cd5f030126ff116b78ccb3c027fe302713b61277" - integrity sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw== - dependencies: - escape-string-regexp "^2.0.0" - -stackframe@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.2.0.tgz#52429492d63c62eb989804c11552e3d22e779303" - integrity sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA== - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -std-env@^2.2.1, std-env@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-2.3.0.tgz#66d4a4a4d5224242ed8e43f5d65cfa9095216eee" - integrity sha512-4qT5B45+Kjef2Z6pE0BkskzsH0GO7GrND0wGlTM1ioUe3v0dGYx9ZJH0Aro/YyA8fqQ5EyIKDRjZojJYMFTflw== - dependencies: - ci-info "^3.0.0" - -stealthy-require@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" - integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= - -stream-browserify@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" - integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" +standard-as-callback@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/standard-as-callback/-/standard-as-callback-2.1.0.tgz#8953fc05359868a77b5b9739a665c5977bb7df45" + integrity sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A== -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -stream-shift@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" - integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== +std-env@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.3.1.tgz#93a81835815e618c8aa75e7c8a4dc04f7c314e29" + integrity sha512-3H20QlwQsSm2OvAxWIYhs+j01MzzqwMwGiiO1NQaJYZgJZFPuAbf95/DiKRBSTYIJ2FeGUc+B/6mPGcWP9dO3Q== -strict-uri-encode@^1.0.0: +streamsearch@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= - -strict-uri-encode@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" - integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY= - -string-length@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" - integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== - dependencies: - char-regex "^1.0.2" - strip-ansi "^6.0.0" - -string-width@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string-width@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" + resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" + integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== -string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0: - version "4.2.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" - integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" + strip-ansi "^6.0.1" -string.prototype.trimend@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" - integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -string.prototype.trimstart@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" - integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" -string_decoder@^1.0.0, string_decoder@^1.1.1: +string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== @@ -11616,84 +4816,39 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-ansi@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== +stringify-entities@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.3.tgz#cfabd7039d22ad30f3cc435b0ca2c1574fc88ef8" + integrity sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g== dependencies: - ansi-regex "^4.1.0" + character-entities-html4 "^2.0.0" + character-entities-legacy "^3.0.0" -strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: - ansi-regex "^5.0.0" - -strip-bom-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" - integrity sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI= + ansi-regex "^5.0.1" -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= +strip-ansi@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" + integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== dependencies: - is-utf8 "^0.2.0" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - -strip-bom@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" - integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + ansi-regex "^6.0.1" strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== -strip-json-comments@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -style-resources-loader@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/style-resources-loader/-/style-resources-loader-1.4.1.tgz#87f520e6c8120a71e756726c1c53a78c544ca7db" - integrity sha512-UaAoQXq20relw6B633z4QZDxDyW7gevTt1e0y3MZtzdZfnvB90UL658czAgNc609Y7Kn5ErdthK9bSVhnykBUA== +strip-literal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-literal/-/strip-literal-1.0.0.tgz#0a484ed5a978cd9d2becf3cf8f4f2cb5ab0e1e74" + integrity sha512-5o4LsH1lzBzO9UFH63AJ2ad2/S2AVx6NtjOcaz+VTT2h1RiRvbipW72z8M/lxEhcPHDBQwpDrnTF7sXy/7OwCQ== dependencies: - glob "^7.1.6" - loader-utils "^2.0.0" - schema-utils "^3.0.0" + acorn "^8.8.1" style-to-object@^0.3.0: version "0.3.0" @@ -11702,34 +4857,21 @@ style-to-object@^0.3.0: dependencies: inline-style-parser "0.1.1" -stylehacks@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" - integrity sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g== +stylehacks@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" + integrity sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw== dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + browserslist "^4.21.4" + postcss-selector-parser "^6.0.4" -supports-color@^5.3.0, supports-color@^5.4.0: +supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" -supports-color@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" - integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== - dependencies: - has-flag "^3.0.0" - supports-color@^7.0.0, supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" @@ -11737,1226 +4879,583 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-hyperlinks@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" - integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== - dependencies: - has-flag "^4.0.0" - supports-color "^7.0.0" +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== svg-tags@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764" - integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q= - -svgo@^1.0.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" - integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== - dependencies: - chalk "^2.4.1" - coa "^2.0.2" - css-select "^2.0.0" - css-select-base-adapter "^0.1.1" - css-tree "1.0.0-alpha.37" - csso "^4.0.2" - js-yaml "^3.13.1" - mkdirp "~0.5.1" - object.values "^1.1.0" - sax "~1.2.4" + integrity sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA== + +svgo@^2.7.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" + integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== + dependencies: + "@trysound/sax" "0.2.0" + commander "^7.2.0" + css-select "^4.1.3" + css-tree "^1.1.3" + csso "^4.2.0" + picocolors "^1.0.0" stable "^0.1.8" - unquote "~1.1.1" - util.promisify "~1.0.0" -symbol-tree@^3.2.4: +tailwindcss@^3.2.1: version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - -table@^6.0.4: - version "6.0.7" - resolved "https://registry.yarnpkg.com/table/-/table-6.0.7.tgz#e45897ffbcc1bcf9e8a87bf420f2c9e5a7a52a34" - integrity sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g== + resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.2.4.tgz#afe3477e7a19f3ceafb48e4b083e292ce0dc0250" + integrity sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ== dependencies: - ajv "^7.0.2" - lodash "^4.17.20" - slice-ansi "^4.0.0" - string-width "^4.2.0" - -tailwind-config-viewer@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/tailwind-config-viewer/-/tailwind-config-viewer-1.5.1.tgz#c8ba81593ae8bc64d3625be983ebcf25aea3cc30" - integrity sha512-vlrZjC+sJMgtj5Pz9GsJsJMVVWi1Pv/F3xU54OuOHM8fD+Pb8KSB3Ja2lFVD8KN//wsvkpuJST8OctbApb3mMw== - dependencies: - "@koa/router" "^9.0.1" - commander "^6.0.0" - fs-extra "^9.0.1" - koa "^2.12.0" - koa-static "^5.0.0" - open "^7.0.4" - portfinder "^1.0.26" - replace-in-file "^6.1.0" - -tailwindcss@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-2.0.4.tgz#cf13e62738c3a27065664e449d93b66ee2945506" - integrity sha512-WhgR0oiBxGOZ9jY0yVfaJCHnckR7U74Fs/BMsYxGdwGJQ5Hd/HlaKD26bEJFZOvYScJo0QcUj2ImldzedsG7Bw== - dependencies: - "@fullhuman/postcss-purgecss" "^3.1.3" - bytes "^3.0.0" - chalk "^4.1.0" - color "^3.1.3" - detective "^5.2.0" - didyoumean "^1.2.1" - fs-extra "^9.1.0" - html-tags "^3.1.0" - lodash "^4.17.21" - modern-normalize "^1.0.0" - node-emoji "^1.8.1" - object-hash "^2.1.1" - postcss-functions "^3" - postcss-js "^3.0.3" - postcss-nested "^5.0.5" - postcss-selector-parser "^6.0.4" - postcss-value-parser "^4.1.0" - pretty-hrtime "^1.0.3" - reduce-css-calc "^2.1.8" - resolve "^1.20.0" + arg "^5.0.2" + chokidar "^3.5.3" + color-name "^1.1.4" + detective "^5.2.1" + didyoumean "^1.2.2" + dlv "^1.1.3" + fast-glob "^3.2.12" + glob-parent "^6.0.2" + is-glob "^4.0.3" + lilconfig "^2.0.6" + micromatch "^4.0.5" + normalize-path "^3.0.0" + object-hash "^3.0.0" + picocolors "^1.0.0" + postcss "^8.4.18" + postcss-import "^14.1.0" + postcss-js "^4.0.0" + postcss-load-config "^3.1.4" + postcss-nested "6.0.0" + postcss-selector-parser "^6.0.10" + postcss-value-parser "^4.2.0" + quick-lru "^5.1.1" + resolve "^1.22.1" -tapable@^1.0.0, tapable@^1.0.0-beta.5, tapable@^1.1.3: +tapable@^1.0.0: version "1.1.3" resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== -tar@^6.0.2: - version "6.1.0" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.0.tgz#d1724e9bcc04b977b18d5c573b333a2207229a83" - integrity sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA== +tapable@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== + +tar-stream@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" + integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== + dependencies: + bl "^4.0.3" + end-of-stream "^1.4.1" + fs-constants "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.1.1" + +tar@^6.1.11, tar@^6.1.12: + version "6.1.13" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.13.tgz#46e22529000f612180601a6fe0680e7da508847b" + integrity sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw== dependencies: chownr "^2.0.0" fs-minipass "^2.0.0" - minipass "^3.0.0" + minipass "^4.0.0" minizlib "^2.1.1" mkdirp "^1.0.3" yallist "^4.0.0" -terminal-link@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" - integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== - dependencies: - ansi-escapes "^4.2.1" - supports-hyperlinks "^2.0.0" - -terser-webpack-plugin@^1.4.3: - version "1.4.5" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz#a217aefaea330e734ffacb6120ec1fa312d6040b" - integrity sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw== - dependencies: - cacache "^12.0.2" - find-cache-dir "^2.1.0" - is-wsl "^1.1.0" - schema-utils "^1.0.0" - serialize-javascript "^4.0.0" - source-map "^0.6.1" - terser "^4.1.2" - webpack-sources "^1.4.0" - worker-farm "^1.7.0" - -terser-webpack-plugin@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" - integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== - dependencies: - cacache "^15.0.5" - find-cache-dir "^3.3.1" - jest-worker "^26.5.0" - p-limit "^3.0.2" - schema-utils "^3.0.0" - serialize-javascript "^5.0.1" - source-map "^0.6.1" - terser "^5.3.4" - webpack-sources "^1.4.3" - -terser@^4.1.2, terser@^4.6.13, terser@^4.6.3: - version "4.8.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" - integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== - dependencies: - commander "^2.20.0" - source-map "~0.6.1" - source-map-support "~0.5.12" - -terser@^5.3.4: - version "5.6.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.6.1.tgz#a48eeac5300c0a09b36854bf90d9c26fb201973c" - integrity sha512-yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw== +terser@^5.0.0: + version "5.16.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.1.tgz#5af3bc3d0f24241c7fb2024199d5c461a1075880" + integrity sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw== dependencies: + "@jridgewell/source-map" "^0.3.2" + acorn "^8.5.0" commander "^2.20.0" - source-map "~0.7.2" - source-map-support "~0.5.19" - -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -thread-loader@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/thread-loader/-/thread-loader-3.0.1.tgz#059752d5c3e223ec58fad5868fe6405e8375d480" - integrity sha512-c8Mr7jooXEAochk72XoQ1vPauwFToz9GVwqevqQShAypCUW0nRzYIbkzZo3KErNhhYf/+ga5cUQWxVXQteJj/g== - dependencies: - loader-runner "^4.1.0" - loader-utils "^2.0.0" - neo-async "^2.6.2" - -throat@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" - integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== - -through2@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" + source-map-support "~0.5.20" through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - -time-fix-plugin@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/time-fix-plugin/-/time-fix-plugin-2.0.7.tgz#4ba70ae2e40cedf34dabe505eda7b71b1b244f50" - integrity sha512-uVFet1LQToeUX0rTcSiYVYVoGuBpc8gP/2jnlUzuHMHe+gux6XLsNzxLUweabMwiUj5ejhoIMsUI55nVSEa/Vw== - -timers-browserify@^2.0.4: - version "2.0.12" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" - integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== - dependencies: - setimmediate "^1.0.4" - -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - -tiny-emitter@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" - integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== - -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -tmpl@1.0.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" - integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= - -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -toidentifier@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" - integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== - -totalist@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" - integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== - -tough-cookie@^2.3.3, tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tough-cookie@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" - integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.1.2" - -tr46@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.0.2.tgz#03273586def1595ae08fedb38d7733cee91d2479" - integrity sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg== - dependencies: - punycode "^2.1.1" - -trough@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" - integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== - -ts-jest@^26.5.4: - version "26.5.4" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.4.tgz#207f4c114812a9c6d5746dd4d1cdf899eafc9686" - integrity sha512-I5Qsddo+VTm94SukBJ4cPimOoFZsYTeElR2xy6H2TOVs+NsvgYglW8KuQgKoApOKuaU/Ix/vrF9ebFZlb5D2Pg== - dependencies: - bs-logger "0.x" - buffer-from "1.x" - fast-json-stable-stringify "2.x" - jest-util "^26.1.0" - json5 "2.x" - lodash "4.x" - make-error "1.x" - mkdirp "1.x" - semver "7.x" - yargs-parser "20.x" - -ts-loader@^8.0.17: - version "8.0.18" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-8.0.18.tgz#b2385cbe81c34ad9f997915129cdde3ad92a61ea" - integrity sha512-hRZzkydPX30XkLaQwJTDcWDoxZHK6IrEMDQpNd7tgcakFruFkeUp/aY+9hBb7BUGb+ZWKI0jiOGMo0MckwzdDQ== - dependencies: - chalk "^4.1.0" - enhanced-resolve "^4.0.0" - loader-utils "^2.0.0" - micromatch "^4.0.0" - semver "^7.3.4" - -ts-pnp@^1.1.6: - version "1.2.0" - resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" - integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== - -tsconfig-paths@^3.9.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz#098547a6c4448807e8fcb8eae081064ee9a3c90b" - integrity sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw== - dependencies: - "@types/json5" "^0.0.29" - json5 "^1.0.1" - minimist "^1.2.0" - strip-bom "^3.0.0" - -tsconfig@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-7.0.0.tgz#84538875a4dc216e5c4a5432b3a4dec3d54e91b7" - integrity sha512-vZXmzPrL+EmC4T/4rVlT2jNVMWCi/O4DIiSj3UHg1OE5kCKbk4mfrXc6dZksLgRM/TZlKnousKH9bbTazUWRRw== - dependencies: - "@types/strip-bom" "^3.0.0" - "@types/strip-json-comments" "0.0.30" - strip-bom "^3.0.0" - strip-json-comments "^2.0.0" - -tslib@^1.8.1, tslib@^1.9.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - -tslib@^2.0.3: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" - integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== + integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== -tsscmp@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" - integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA== +tiny-invariant@^1.1.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.1.tgz#8560808c916ef02ecfd55e66090df23a4b7aa642" + integrity sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw== -tsutils@^3.17.1: - version "3.21.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" - integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== +tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: - tslib "^1.8.1" + os-tmpdir "~1.0.2" -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: - safe-buffer "^5.0.1" + is-number "^7.0.0" -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" +trim-lines@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" + integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg== -type-detect@4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== +trough@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/trough/-/trough-2.1.0.tgz#0f7b511a4fde65a46f18477ab38849b22c554876" + integrity sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g== -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== +tslib@^2.1.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.1.tgz#0d0bfbaac2880b91e22df0768e55be9753a5b17e" + integrity sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA== type-fest@^0.21.3: version "0.21.3" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -type-fest@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" - integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== +type-fest@^2.11.2: + version "2.19.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" + integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== -type-fest@^0.8.0, type-fest@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" - integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== +type-fest@^3.0.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-3.3.0.tgz#3378c9664eecfd1eb4f0522b13cb0630bc1ec044" + integrity sha512-gezeeOIZyQLGW5uuCeEnXF1aXmtt2afKspXz3YqoOcZ3l/YMJq1pujvgT+cz/Nw1O/7q/kSav5fihJHsC/AOUg== -type-is@^1.6.16: - version "1.6.18" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" +ufo@^0.8.6: + version "0.8.6" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-0.8.6.tgz#c0ec89bc0e0c9fa59a683680feb0f28b55ec323b" + integrity sha512-fk6CmUgwKCfX79EzcDQQpSCMxrHstvbLswFChHS0Vump+kFkw7nJBfTZoC1j0bOGoY9I7R3n2DGek5ajbcYnOw== -typedarray-to-buffer@^3.1.5: - version "3.1.5" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" - integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== - dependencies: - is-typedarray "^1.0.0" +ufo@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.0.1.tgz#64ed43b530706bda2e4892f911f568cf4cf67d29" + integrity sha512-boAm74ubXHY7KJQZLlXrtMz52qFvpsbOxDcZOnw/Wf+LS4Mmyu7JxmzD4tDLtUQtmZECypJ0FrCz4QIe6dvKRA== -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= +ultrahtml@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/ultrahtml/-/ultrahtml-1.0.4.tgz#06b5d27cdf03de6d114cb9b7ccb0d9abbb0eb493" + integrity sha512-sso5lk1F1/Q1crKx0+9/9/rHCykRJFSifYLaShnhgzfJhbEDZdpntClBs7ojhx0lRmQlUtDIxrC/8hBJj5bVPw== -typescript@~4.2: - version "4.2.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.3.tgz#39062d8019912d43726298f09493d598048c1ce3" - integrity sha512-qOcYwxaByStAWrBf4x0fibwZvMRG+r4cQoTjbPtUlrWjBHbmCAww1i448U0GJ+3cNNEtebDteo/cHOR3xJ4wEw== - -ua-parser-js@^0.7.24: - version "0.7.25" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.25.tgz#67689fa263a87a52dabbc251ede89891f59156ce" - integrity sha512-8NFExdfI24Ny8R3Vc6+uUytP/I7dpqk3JERlvxPWlrtx5YboqCgxAXYKPAifbPLV2zKbgmmPL53ufW7mUC/VOQ== - -ufo@^0.6.10: - version "0.6.10" - resolved "https://registry.yarnpkg.com/ufo/-/ufo-0.6.10.tgz#c7ace9b8f72cb08c35e3a8c8edc76f062fbaa7d0" - integrity sha512-sMbJnrBcKKsbVyr6++hb0n9lCmrMqkJrNnJIOJ3sckeqY6NMfAULcRGbBWcASSnN1HDV3YqiGCPzi9RVs511bw== - -ufo@^0.6.7: - version "0.6.11" - resolved "https://registry.yarnpkg.com/ufo/-/ufo-0.6.11.tgz#69311ed4abc8ab671c83754b79ce0d396fea1075" - integrity sha512-Yu7TJThwlr23peOkX/+hm6LfkyBs+eDWV880468PTrjKBKjjsNWFFwIuOqDfmXngRo9TZ4+twFYueRH0OLl0Gw== - -uglify-js@^3.5.1: - version "3.13.2" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.13.2.tgz#fe10319861bccc8682bfe2e8151fbdd8aa921c44" - integrity sha512-SbMu4D2Vo95LMC/MetNaso1194M1htEA+JrqE9Hk+G2DhI+itfS9TRu9ZKeCahLDNa/J3n4MqUJ/fOHMzQpRWw== - -unbox-primitive@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.0.tgz#eeacbc4affa28e9b3d36b5eaeccc50b3251b1d3f" - integrity sha512-P/51NX+JXyxK/aigg1/ZgyccdAxm5K1+n8+tvqSntjOivPt19gvm1VC49RWYetsiub8WViUchdxl/KWHHB0kzA== +unctx@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/unctx/-/unctx-2.1.1.tgz#415b07cf6ce42fad59ae1e4fa42ace2e71f4372d" + integrity sha512-RffJlpvLOtolWsn0fxXsuSDfwiWcR6cyuykw2e0+zAggvGW1SesXt9WxIWlWpJhwVCZD/WlxxLqKLS50Q0CkWA== dependencies: - function-bind "^1.1.1" - has-bigints "^1.0.0" - has-symbols "^1.0.0" - which-boxed-primitive "^1.0.1" + acorn "^8.8.1" + estree-walker "^3.0.1" + magic-string "^0.26.7" + unplugin "^1.0.0" -unfetch@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" - integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== - -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== - -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== +undici@^5.12.0: + version "5.14.0" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.14.0.tgz#1169d0cdee06a4ffdd30810f6228d57998884d00" + integrity sha512-yJlHYw6yXPPsuOH0x2Ib1Km61vu4hLiRRQoafs+WUgX1vO64vgnxiCEN9dpIrhZyHFsai3F0AEj4P9zy19enEQ== dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" + busboy "^1.6.0" -unicode-match-property-value-ecmascript@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" - integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== +unenv@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unenv/-/unenv-1.0.0.tgz#135cccd36f3d819cc46baabfa3bc2bdf425def0a" + integrity sha512-vlyi2Rzj4CNlA1JsEXufX+ItkGr3Z5DfLzKniYEneMlBVtuxS+57f1LwTPj2eiBPSPaGHMUVzEnjSCGE7l8JQg== + dependencies: + defu "^6.1.1" + mime "^3.0.0" + node-fetch-native "^1.0.1" + pathe "^1.0.0" -unicode-property-aliases-ecmascript@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" - integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== +unhead@^1.0.0: + version "1.0.13" + resolved "https://registry.yarnpkg.com/unhead/-/unhead-1.0.13.tgz#7a350afef016413f6c996a0271818740133966e2" + integrity sha512-stWC9VawHWq27WiAsgNPLFXI61LaNy1E3Zs/0cSgPTvz4ti8fYuqLOz930pzVRIKrWnxQVGndw8UZLSEcK7ikA== + dependencies: + "@unhead/dom" "1.0.13" + "@unhead/schema" "1.0.13" + hookable "^5.4.2" -unified@^9.2.1: - version "9.2.1" - resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.1.tgz#ae18d5674c114021bfdbdf73865ca60f410215a3" - integrity sha512-juWjuI8Z4xFg8pJbnEZ41b5xjGUWGHqXALmBZ3FC3WX0PIx1CZBIIJ6mXbYMcf6Yw4Fi0rFUTA1cdz/BglbOhA== +unified@^10.0.0, unified@^10.1.2: + version "10.1.2" + resolved "https://registry.yarnpkg.com/unified/-/unified-10.1.2.tgz#b1d64e55dafe1f0b98bb6c719881103ecf6c86df" + integrity sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q== dependencies: - bail "^1.0.0" + "@types/unist" "^2.0.0" + bail "^2.0.0" extend "^3.0.0" is-buffer "^2.0.0" - is-plain-obj "^2.0.0" - trough "^1.0.0" - vfile "^4.0.0" + is-plain-obj "^4.0.0" + trough "^2.0.0" + vfile "^5.0.0" -union-value@^1.0.0: +unimport@^1.0.0, unimport@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + resolved "https://registry.yarnpkg.com/unimport/-/unimport-1.0.1.tgz#7d3f865f0d4577e9b93adcd1292f67a676e80359" + integrity sha512-SEPKl3uyqUvi6c0MnyCmUF9H07CuC9j9p2p33F03LmegU0sxjpnjL0fLKAhh7BTfcKaJKj+1iOiAFtg7P3m5mQ== + dependencies: + "@rollup/pluginutils" "^5.0.2" + escape-string-regexp "^5.0.0" + fast-glob "^3.2.12" + local-pkg "^0.4.2" + magic-string "^0.26.7" + mlly "^1.0.0" + pathe "^1.0.0" + pkg-types "^1.0.1" + scule "^1.0.0" + strip-literal "^1.0.0" + unplugin "^1.0.0" + +unist-builder@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-3.0.0.tgz#728baca4767c0e784e1e64bb44b5a5a753021a04" + integrity sha512-GFxmfEAa0vi9i5sd0R2kcrI9ks0r82NasRq5QHh2ysGngrc6GiqD5CDf1FjPenY4vApmFASBIIlk/jj5J5YbmQ== dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= + "@types/unist" "^2.0.0" -uniqs@^2.0.0: +unist-util-generated@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= + resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-2.0.0.tgz#86fafb77eb6ce9bfa6b663c3f5ad4f8e56a60113" + integrity sha512-TiWE6DVtVe7Ye2QxOVW9kqybs6cZexNwTwSMVgkfjEReqy/xwGpAXb99OxktoWwmL+Z+Epb0Dn8/GNDYP1wnUw== -unique-filename@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" +unist-util-is@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-5.1.1.tgz#e8aece0b102fa9bc097b0fef8f870c496d4a6236" + integrity sha512-F5CZ68eYzuSvJjGhCLPL3cYx45IxkqXSetCcRgUXtbcm50X2L9oOWQlfUfDdAf+6Pd27YDblBfdtmsThXmwpbQ== -unique-slug@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" - integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== +unist-util-position@^4.0.0, unist-util-position@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-4.0.3.tgz#5290547b014f6222dff95c48d5c3c13a88fadd07" + integrity sha512-p/5EMGIa1qwbXjA+QgcBXaPWjSnZfQ2Sc3yBEEfgPwsEmJd8Qh+DSk3LGnmOM4S1bY2C0AjmMnB8RuEYxpPwXQ== dependencies: - imurmurhash "^0.1.4" - -unist-builder@^2.0.0, unist-builder@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-2.0.3.tgz#77648711b5d86af0942f334397a33c5e91516436" - integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw== - -unist-util-generated@^1.0.0: - version "1.1.6" - resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.6.tgz#5ab51f689e2992a472beb1b35f2ce7ff2f324d4b" - integrity sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg== - -unist-util-is@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz#976e5f462a7a5de73d94b706bac1b90671b57797" - integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg== + "@types/unist" "^2.0.0" -unist-util-position@^3.0.0: +unist-util-remove@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.1.0.tgz#1c42ee6301f8d52f47d14f62bbdb796571fa2d47" - integrity sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA== - -unist-util-remove@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-2.0.1.tgz#fa13c424ff8e964f3aa20d1098b9a690c6bfaa39" - integrity sha512-YtuetK6o16CMfG+0u4nndsWpujgsHDHHLyE0yGpJLLn5xSjKeyGyzEBOI2XbmoUHCYabmNgX52uxlWoQhcvR7Q== + resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-3.1.0.tgz#8042577e151dac989b7517976bfe4bac58f76ccd" + integrity sha512-rO/sIghl13eN8irs5OBN2a4RC10MsJdiePCfwrvnzGtgIbHcDXr2REr0qi9F2r/CIb1r9FyyFmcMRIGs+EyUFw== dependencies: - unist-util-is "^4.0.0" + "@types/unist" "^2.0.0" + unist-util-is "^5.0.0" + unist-util-visit-parents "^5.0.0" -unist-util-stringify-position@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" - integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== +unist-util-stringify-position@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-3.0.2.tgz#5c6aa07c90b1deffd9153be170dce628a869a447" + integrity sha512-7A6eiDCs9UtjcwZOcCpM4aPII3bAAGv13E96IkawkOAW0OhH+yRxtY0lzo8KiHpzEMfH7Q+FizUmwp8Iqy5EWg== dependencies: - "@types/unist" "^2.0.2" + "@types/unist" "^2.0.0" -unist-util-visit-parents@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz#65a6ce698f78a6b0f56aa0e88f13801886cdaef6" - integrity sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg== +unist-util-visit-parents@^5.0.0, unist-util-visit-parents@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-5.1.1.tgz#868f353e6fce6bf8fa875b251b0f4fec3be709bb" + integrity sha512-gks4baapT/kNRaWxuGkl5BIhoanZo7sC/cUT/JToSRNL1dYoXRFl75d++NkjYk4TAu2uv2Px+l8guMajogeuiw== dependencies: "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" + unist-util-is "^5.0.0" -unist-util-visit@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c" - integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== +unist-util-visit@^4.0.0, unist-util-visit@^4.1.0, unist-util-visit@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-4.1.1.tgz#1c4842d70bd3df6cc545276f5164f933390a9aad" + integrity sha512-n9KN3WV9k4h1DxYR1LoajgN93wpEi/7ZplVe02IoB4gH5ctI1AaF2670BLHQYbwj+pY83gFtyeySFiyMHJklrg== dependencies: "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" - unist-util-visit-parents "^3.0.0" - -universalify@^0.1.0, universalify@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + unist-util-is "^5.0.0" + unist-util-visit-parents "^5.1.1" universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== -unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= - -unset-value@^1.0.0: +unplugin@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== - -upath@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" - integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== - -upper-case-first@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.2.tgz#992c3273f882abd19d1e02894cc147117f844324" - integrity sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg== - dependencies: - tslib "^2.0.3" - -upper-case@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= - -upper-case@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.2.tgz#d89810823faab1df1549b7d97a76f8662bae6f7a" - integrity sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg== - dependencies: - tslib "^2.0.3" - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + resolved "https://registry.yarnpkg.com/unplugin/-/unplugin-1.0.0.tgz#8d12e0d116bf56313d42755094fc370e9c18da86" + integrity sha512-H5UnBUxfhTXBXGo2AwKsl0UaLSHzSNDZNehPQSgdhVfO/t+XAS1Yoj3vmLrrlBrS9ZwtH5tejbX/TCp5DcyCKg== dependencies: - punycode "^2.1.0" + acorn "^8.8.1" + chokidar "^3.5.3" + webpack-sources "^3.2.3" + webpack-virtual-modules "^0.4.6" -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -url-loader@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" - integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== +unstorage@^1.0.0, unstorage@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/unstorage/-/unstorage-1.0.1.tgz#8cac09e435e727f68ac8ffdac10caa1a5b35883d" + integrity sha512-J1c4b8K2KeihHrQtdgl/ybIapArUbPaPb+TyJy/nGSauDwDYqciZsEKdkee568P3c8SSH4TIgnGRHDWMPGw+Lg== + dependencies: + anymatch "^3.1.2" + chokidar "^3.5.3" + destr "^1.2.1" + h3 "^1.0.1" + ioredis "^5.2.4" + listhen "^1.0.0" + mkdir "^0.0.2" + mri "^1.2.0" + ofetch "^1.0.0" + ufo "^1.0.0" + ws "^8.11.0" + +untyped@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/untyped/-/untyped-1.0.0.tgz#bf892e66a68bd1c5ec08b802d175cf99c994a56f" + integrity sha512-aBeR3Z51038d7zVzsNShYEdO7u/VCp5R17fxpPXlD2QvG9g6uVJ+JM+zMJ7KFPIt1BNf3I6bU6PhAlsAFkIfdA== dependencies: - loader-utils "^2.0.0" - mime-types "^2.1.27" - schema-utils "^3.0.0" + "@babel/core" "^7.20.2" + "@babel/standalone" "^7.20.4" + "@babel/types" "^7.20.2" + scule "^1.0.0" -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= +update-browserslist-db@^1.0.9: + version "1.0.10" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" + integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== dependencies: - punycode "1.3.2" - querystring "0.2.0" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + escalade "^3.1.1" + picocolors "^1.0.0" util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util.promisify@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util.promisify@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" - integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.2" - has-symbols "^1.0.1" - object.getownpropertydescriptors "^2.1.0" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= - dependencies: - inherits "2.0.1" - -util@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" - integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== - dependencies: - inherits "2.0.3" - -utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -uuid@^3.3.2: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== - -uuid@^8.3.0: - version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -v8-compile-cache@^2.0.3: - version "2.3.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" - integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== - -v8-to-istanbul@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.0.tgz#5b95cef45c0f83217ec79f8fc7ee1c8b486aee07" - integrity sha512-uXUVqNUCLa0AH1vuVxzi+MI4RfxEOKt9pBgKwHbgH7st8Kv2P1m+jvWNnektzBh5QShF3ODgKmUFCf38LnVz1g== +uvu@^0.5.0: + version "0.5.6" + resolved "https://registry.yarnpkg.com/uvu/-/uvu-0.5.6.tgz#2754ca20bcb0bb59b64e9985e84d2e81058502df" + integrity sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA== dependencies: - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" + dequal "^2.0.0" + diff "^5.0.0" + kleur "^4.0.3" + sade "^1.7.3" -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== +vee-validate@^4.7.3: + version "4.7.3" + resolved "https://registry.yarnpkg.com/vee-validate/-/vee-validate-4.7.3.tgz#0200c2f1151d28d9fb6fdb6c59c01170146094be" + integrity sha512-1MwHLOzCrabSeChySZVVMamWStcucM1hHxapoebY9mJ7KWOvncMG19a7AlPl38zpE9pcD+G3CHKLvviGmTl5BQ== dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -vary@^1.1.2, vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -vee-validate@^3.4.5: - version "3.4.5" - resolved "https://registry.yarnpkg.com/vee-validate/-/vee-validate-3.4.5.tgz#96a456c309f7bdb2cce62c3b554f96d893e9f6ae" - integrity sha512-ZEcLqOAZzSkMhDvPcTx0xcwVOijFnMW9J+BA20j+rDmo24T8RCCqVQyRwwrDrcWJZV2dRYl/yYNa2GB6UCoBvg== - -vendors@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e" - integrity sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w== + "@vue/devtools-api" "^6.1.4" -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= +vfile-location@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-4.0.1.tgz#06f2b9244a3565bef91f099359486a08b10d3a95" + integrity sha512-JDxPlTbZrZCQXogGheBHjbRWjESSPEak770XwWPfw5mTc1v1nWGLB/apzZxsx8a0SJVfF8HK8ql8RD308vXRUw== dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vfile-location@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.2.0.tgz#d8e41fbcbd406063669ebf6c33d56ae8721d0f3c" - integrity sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA== + "@types/unist" "^2.0.0" + vfile "^5.0.0" -vfile-message@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" - integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== +vfile-message@^3.0.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-3.1.3.tgz#1360c27a99234bebf7bddbbbca67807115e6b0dd" + integrity sha512-0yaU+rj2gKAyEk12ffdSbBfjnnj+b1zqTBv3OQCTn8yEB02bsPizwdBPrLJjHnK+cU9EMMcUnNv938XcZIkmdA== dependencies: "@types/unist" "^2.0.0" - unist-util-stringify-position "^2.0.0" + unist-util-stringify-position "^3.0.0" -vfile@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz#03f1dce28fc625c625bc6514350fbdb00fa9e624" - integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== +vfile@^5.0.0: + version "5.3.6" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-5.3.6.tgz#61b2e70690cc835a5d0d0fd135beae74e5a39546" + integrity sha512-ADBsmerdGBs2WYckrLBEmuETSPyTD4TuLxTrw0DvjirxW1ra4ZwkbzG8ndsv3Q57smvHxo677MHaQrY9yxH8cA== dependencies: "@types/unist" "^2.0.0" is-buffer "^2.0.0" - unist-util-stringify-position "^2.0.0" - vfile-message "^2.0.0" + unist-util-stringify-position "^3.0.0" + vfile-message "^3.0.0" -vm-browserify@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" - integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== - -vue-class-component@^7.2.6: - version "7.2.6" - resolved "https://registry.yarnpkg.com/vue-class-component/-/vue-class-component-7.2.6.tgz#8471e037b8e4762f5a464686e19e5afc708502e4" - integrity sha512-+eaQXVrAm/LldalI272PpDe3+i4mPis0ORiMYxF6Ae4hyuCh15W8Idet7wPUEs4N4YptgFHGys4UrgNQOMyO6w== - -vue-client-only@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/vue-client-only/-/vue-client-only-2.0.0.tgz#ddad8d675ee02c761a14229f0e440e219de1da1c" - integrity sha512-arhk1wtWAfLsJyxGMoEYhoBowM87/i6HLSG2LH/03Yog6i2d9JEN1peMP0Ceis+/n9DxdenGYZZTxbPPJyHciA== - -vue-eslint-parser@^7.1.1, vue-eslint-parser@^7.6.0: - version "7.6.0" - resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-7.6.0.tgz#01ea1a2932f581ff244336565d712801f8f72561" - integrity sha512-QXxqH8ZevBrtiZMZK0LpwaMfevQi9UL7lY6Kcp+ogWHC88AuwUPwwCIzkOUc1LR4XsYAt/F9yHXAB/QoD17QXA== +vite-node@^0.25.2: + version "0.25.6" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-0.25.6.tgz#60e337f8df0e95f1e5fbfa35bd81ad9b5ef6da04" + integrity sha512-xwmZ4lVpqfKTCKZRt4vJflGIA4kEsClfGSWZijNqyORnAl1EvL/8USLGEHADe/NSjkwiEJoVQvZu0JQXpo+rQA== dependencies: - debug "^4.1.1" - eslint-scope "^5.0.0" - eslint-visitor-keys "^1.1.0" - espree "^6.2.1" - esquery "^1.4.0" - lodash "^4.17.15" - -vue-hot-reload-api@^2.3.0: - version "2.3.4" - resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2" - integrity sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog== + debug "^4.3.4" + mlly "^1.0.0" + pathe "^0.2.0" + source-map "^0.6.1" + source-map-support "^0.5.21" + vite "^3.0.0" -vue-i18n@^8.23.0: - version "8.24.3" - resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.24.3.tgz#2233ae11ec59e8204df58a28fc41afe9754e3b41" - integrity sha512-uKAYzGbwGIJndY7JwhQwIGi1uyvErWkBfFwooOtjcNnIfMbAR49ad5dT/MiykrJ9pCcgvnocFjFsNLtTzyW+rg== +vite-plugin-checker@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/vite-plugin-checker/-/vite-plugin-checker-0.5.1.tgz#b8e085f456d37be7f89020cf081102daff52812e" + integrity sha512-NFiO1PyK9yGuaeSnJ7Whw9fnxLc1AlELnZoyFURnauBYhbIkx9n+PmIXxSFUuC9iFyACtbJQUAEuQi6yHs2Adg== + dependencies: + "@babel/code-frame" "^7.12.13" + ansi-escapes "^4.3.0" + chalk "^4.1.1" + chokidar "^3.5.1" + commander "^8.0.0" + fast-glob "^3.2.7" + lodash.debounce "^4.0.8" + lodash.pick "^4.4.0" + npm-run-path "^4.0.1" + strip-ansi "^6.0.0" + tiny-invariant "^1.1.0" + vscode-languageclient "^7.0.0" + vscode-languageserver "^7.0.0" + vscode-languageserver-textdocument "^1.0.1" + vscode-uri "^3.0.2" -vue-jest@^3.0.4: - version "3.0.7" - resolved "https://registry.yarnpkg.com/vue-jest/-/vue-jest-3.0.7.tgz#a6d29758a5cb4d750f5d1242212be39be4296a33" - integrity sha512-PIOxFM+wsBMry26ZpfBvUQ/DGH2hvp5khDQ1n51g3bN0TwFwTy4J85XVfxTRMukqHji/GnAoGUnlZ5Ao73K62w== - dependencies: - babel-plugin-transform-es2015-modules-commonjs "^6.26.0" - chalk "^2.1.0" - deasync "^0.1.15" - extract-from-css "^0.4.4" - find-babel-config "^1.1.0" - js-beautify "^1.6.14" - node-cache "^4.1.1" - object-assign "^4.1.1" - source-map "^0.5.6" - tsconfig "^7.0.0" - vue-template-es2015-compiler "^1.6.0" - -vue-loader@^15.9.6: - version "15.9.6" - resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.9.6.tgz#f4bb9ae20c3a8370af3ecf09b8126d38ffdb6b8b" - integrity sha512-j0cqiLzwbeImIC6nVIby2o/ABAWhlppyL/m5oJ67R5MloP0hj/DtFgb0Zmq3J9CG7AJ+AXIvHVnJAPBvrLyuDg== - dependencies: - "@vue/component-compiler-utils" "^3.1.0" - hash-sum "^1.0.2" - loader-utils "^1.1.0" - vue-hot-reload-api "^2.3.0" - vue-style-loader "^4.1.0" - -vue-meta@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/vue-meta/-/vue-meta-2.4.0.tgz#a419fb4b4135ce965dab32ec641d1989c2ee4845" - integrity sha512-XEeZUmlVeODclAjCNpWDnjgw+t3WA6gdzs6ENoIAgwO1J1d5p1tezDhtteLUFwcaQaTtayRrsx7GL6oXp/m2Jw== +vite@^3.0.0, vite@~3.2.4: + version "3.2.5" + resolved "https://registry.yarnpkg.com/vite/-/vite-3.2.5.tgz#dee5678172a8a0ab3e547ad4148c3d547f90e86a" + integrity sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ== dependencies: - deepmerge "^4.2.2" + esbuild "^0.15.9" + postcss "^8.4.18" + resolve "^1.22.1" + rollup "^2.79.1" + optionalDependencies: + fsevents "~2.3.2" -vue-no-ssr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/vue-no-ssr/-/vue-no-ssr-1.1.1.tgz#875f3be6fb0ae41568a837f3ac1a80eaa137b998" - integrity sha512-ZMjqRpWabMPqPc7gIrG0Nw6vRf1+itwf0Itft7LbMXs2g3Zs/NFmevjZGN1x7K3Q95GmIjWbQZTVerxiBxI+0g== - -vue-property-decorator@^9.0.0: - version "9.1.2" - resolved "https://registry.yarnpkg.com/vue-property-decorator/-/vue-property-decorator-9.1.2.tgz#266a2eac61ba6527e2e68a6933cfb98fddab5457" - integrity sha512-xYA8MkZynPBGd/w5QFJ2d/NM0z/YeegMqYTphy7NJQXbZcuU6FC6AOdUAcy4SXP+YnkerC6AfH+ldg7PDk9ESQ== - -vue-router@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.5.1.tgz#edf3cf4907952d1e0583e079237220c5ff6eb6c9" - integrity sha512-RRQNLT8Mzr8z7eL4p7BtKvRaTSGdCbTy2+Mm5HTJvLGYSSeG9gDzNasJPP/yOYKLy+/cLG/ftrqq5fvkFwBJEw== - -vue-server-renderer@^2.6.12: - version "2.6.12" - resolved "https://registry.yarnpkg.com/vue-server-renderer/-/vue-server-renderer-2.6.12.tgz#a8cb9c49439ef205293cb41c35d0d2b0541653a5" - integrity sha512-3LODaOsnQx7iMFTBLjki8xSyOxhCtbZ+nQie0wWY4iOVeEtTg1a3YQAjd82WvKxrWHHTshjvLb7OXMc2/dYuxw== - dependencies: - chalk "^1.1.3" - hash-sum "^1.0.2" - he "^1.1.0" - lodash.template "^4.5.0" - lodash.uniq "^4.5.0" - resolve "^1.2.0" - serialize-javascript "^3.1.0" - source-map "0.5.6" +vscode-jsonrpc@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0.tgz#108bdb09b4400705176b957ceca9e0880e9b6d4e" + integrity sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg== -vue-style-loader@^4.1.0, vue-style-loader@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz#6d55863a51fa757ab24e89d9371465072aa7bc35" - integrity sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg== +vscode-languageclient@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/vscode-languageclient/-/vscode-languageclient-7.0.0.tgz#b505c22c21ffcf96e167799757fca07a6bad0fb2" + integrity sha512-P9AXdAPlsCgslpP9pRxYPqkNYV7Xq8300/aZDpO35j1fJm/ncize8iGswzYlcvFw5DQUx4eVk+KvfXdL0rehNg== dependencies: - hash-sum "^1.0.2" - loader-utils "^1.0.2" + minimatch "^3.0.4" + semver "^7.3.4" + vscode-languageserver-protocol "3.16.0" -vue-template-compiler@^2.6.12: - version "2.6.12" - resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.6.12.tgz#947ed7196744c8a5285ebe1233fe960437fcc57e" - integrity sha512-OzzZ52zS41YUbkCBfdXShQTe69j1gQDZ9HIX8miuC9C3rBCk9wIRjLiZZLrmX9V+Ftq/YEyv1JaVr5Y/hNtByg== +vscode-languageserver-protocol@3.16.0: + version "3.16.0" + resolved "https://registry.yarnpkg.com/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.16.0.tgz#34135b61a9091db972188a07d337406a3cdbe821" + integrity sha512-sdeUoAawceQdgIfTI+sdcwkiK2KU+2cbEYA0agzM2uqaUy2UpnnGHtWTHVEtS0ES4zHU0eMFRGN+oQgDxlD66A== dependencies: - de-indent "^1.0.2" - he "^1.1.0" + vscode-jsonrpc "6.0.0" + vscode-languageserver-types "3.16.0" -vue-template-es2015-compiler@^1.6.0, vue-template-es2015-compiler@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" - integrity sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw== - -vue@^2.6.12: - version "2.6.12" - resolved "https://registry.yarnpkg.com/vue/-/vue-2.6.12.tgz#f5ebd4fa6bd2869403e29a896aed4904456c9123" - integrity sha512-uhmLFETqPPNyuLLbsKz6ioJ4q7AZHzD8ZVFNATNyICSZouqP2Sz0rotWQC8UNBF6VGSCs5abnKJoStA6JbCbfg== +vscode-languageserver-textdocument@^1.0.1: + version "1.0.8" + resolved "https://registry.yarnpkg.com/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.8.tgz#9eae94509cbd945ea44bca8dcfe4bb0c15bb3ac0" + integrity sha512-1bonkGqQs5/fxGT5UchTgjGVnfysL0O8v1AYMBjqTbWQTFn721zaPGDYFkOKtfDgFiSgXM3KwaG3FMGfW4Ed9Q== -vuex-class@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/vuex-class/-/vuex-class-0.3.2.tgz#c7e96a076c1682137d4d23a8dcfdc63f220e17a8" - integrity sha512-m0w7/FMsNcwJgunJeM+wcNaHzK2KX1K1rw2WUQf7Q16ndXHo7pflRyOV/E8795JO/7fstyjH3EgqBI4h4n4qXQ== +vscode-languageserver-types@3.16.0: + version "3.16.0" + resolved "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz#ecf393fc121ec6974b2da3efb3155644c514e247" + integrity sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA== -vuex-module-decorators@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/vuex-module-decorators/-/vuex-module-decorators-1.0.1.tgz#d34dafb5428a3636f1c26d3d014c15fc9659ccd0" - integrity sha512-FLWZsXV5XAtl/bcKUyQFpnSBtpc3wK/7zSdy9oKbyp71mZd4ut5y2zSd219wWW9OG7WUOlVwac4rXFFDVnq7ug== +vscode-languageserver@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/vscode-languageserver/-/vscode-languageserver-7.0.0.tgz#49b068c87cfcca93a356969d20f5d9bdd501c6b0" + integrity sha512-60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw== + dependencies: + vscode-languageserver-protocol "3.16.0" -vuex@^3.6.2: - version "3.6.2" - resolved "https://registry.yarnpkg.com/vuex/-/vuex-3.6.2.tgz#236bc086a870c3ae79946f107f16de59d5895e71" - integrity sha512-ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw== +vscode-uri@^3.0.2: + version "3.0.6" + resolved "https://registry.yarnpkg.com/vscode-uri/-/vscode-uri-3.0.6.tgz#5e6e2e1a4170543af30151b561a41f71db1d6f91" + integrity sha512-fmL7V1eiDBFRRnu+gfRWTzyPpNIHJTc4mWnFkwBUmO9U3KPgJAmTx7oxi2bl/Rh6HLdU7+4C9wlj0k2E4AdKFQ== -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== +vue-bundle-renderer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/vue-bundle-renderer/-/vue-bundle-renderer-1.0.0.tgz#cb39ec8ab30f2e186ea17491a9dba545c123250f" + integrity sha512-43vCqTgaMXfHhtR8/VcxxWD1DgtzyvNc4wNyG5NKCIH19O1z5G9ZCRXTGEA2wifVec5PU82CkRLD2sTK9NkTdA== dependencies: - browser-process-hrtime "^1.0.0" + ufo "^1.0.0" -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" +vue-demi@*: + version "0.13.11" + resolved "https://registry.yarnpkg.com/vue-demi/-/vue-demi-0.13.11.tgz#7d90369bdae8974d87b1973564ad390182410d99" + integrity sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A== -walker@^1.0.7, walker@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= - dependencies: - makeerror "1.0.x" +vue-devtools-stub@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/vue-devtools-stub/-/vue-devtools-stub-0.1.0.tgz#a65b9485edecd4273cedcb8102c739b83add2c81" + integrity sha512-RutnB7X8c5hjq39NceArgXg28WZtZpGc3+J16ljMiYnFhKvd8hITxSWQSQ5bvldxMDU6gG5mkxl1MTQLXckVSQ== -watchpack-chokidar2@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" - integrity sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww== +vue-router@^4.1.6: + version "4.1.6" + resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-4.1.6.tgz#b70303737e12b4814578d21d68d21618469375a1" + integrity sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ== dependencies: - chokidar "^2.1.8" + "@vue/devtools-api" "^6.4.5" -watchpack@^1.7.4: - version "1.7.5" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453" - integrity sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ== +vue@^3.2.45: + version "3.2.45" + resolved "https://registry.yarnpkg.com/vue/-/vue-3.2.45.tgz#94a116784447eb7dbd892167784619fef379b3c8" + integrity sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA== dependencies: - graceful-fs "^4.1.2" - neo-async "^2.5.0" - optionalDependencies: - chokidar "^3.4.1" - watchpack-chokidar2 "^2.0.1" - -web-namespaces@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec" - integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== - -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== + "@vue/compiler-dom" "3.2.45" + "@vue/compiler-sfc" "3.2.45" + "@vue/runtime-dom" "3.2.45" + "@vue/server-renderer" "3.2.45" + "@vue/shared" "3.2.45" -webpack-bundle-analyzer@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.4.0.tgz#74013106e7e2b07cbd64f3a5ae847f7e814802c7" - integrity sha512-9DhNa+aXpqdHk8LkLPTBU/dMfl84Y+WE2+KnfI6rSpNRNVKa0VGLjPd2pjFubDeqnWmulFggxmWBxhfJXZnR0g== - dependencies: - acorn "^8.0.4" - acorn-walk "^8.0.0" - chalk "^4.1.0" - commander "^6.2.0" - gzip-size "^6.0.0" - lodash "^4.17.20" - opener "^1.5.2" - sirv "^1.0.7" - ws "^7.3.1" - -webpack-dev-middleware@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-4.1.0.tgz#f0c1f12ff4cd855b3b5eec89ee0f69bcc5336364" - integrity sha512-mpa/FY+DiBu5+r5JUIyTCYWRfkWgyA3/OOE9lwfzV9S70A4vJYLsVRKj5rMFEsezBroy2FmPyQ8oBRVW8QmK1A== - dependencies: - colorette "^1.2.1" - mem "^8.0.0" - memfs "^3.2.0" - mime-types "^2.1.28" - range-parser "^1.2.1" - schema-utils "^3.0.0" - -webpack-hot-middleware@^2.25.0: - version "2.25.0" - resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz#4528a0a63ec37f8f8ef565cf9e534d57d09fe706" - integrity sha512-xs5dPOrGPCzuRXNi8F6rwhawWvQQkeli5Ro48PRuQh8pYPCPmNnltP9itiUPT4xI8oW+y0m59lyyeQk54s5VgA== - dependencies: - ansi-html "0.0.7" - html-entities "^1.2.0" - querystring "^0.2.0" - strip-ansi "^3.0.0" - -webpack-node-externals@^2.5.2: - version "2.5.2" - resolved "https://registry.yarnpkg.com/webpack-node-externals/-/webpack-node-externals-2.5.2.tgz#178e017a24fec6015bc9e672c77958a6afac861d" - integrity sha512-aHdl/y2N7PW2Sx7K+r3AxpJO+aDMcYzMQd60Qxefq3+EwhewSbTBqNumOsCE1JsCUNoyfGj5465N0sSf6hc/5w== - -webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" - integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@^4.46.0: - version "4.46.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.46.0.tgz#bf9b4404ea20a073605e0a011d188d77cb6ad542" - integrity sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/wasm-edit" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - acorn "^6.4.1" - ajv "^6.10.2" - ajv-keywords "^3.4.1" - chrome-trace-event "^1.0.2" - enhanced-resolve "^4.5.0" - eslint-scope "^4.0.3" - json-parse-better-errors "^1.0.2" - loader-runner "^2.4.0" - loader-utils "^1.2.3" - memory-fs "^0.4.1" - micromatch "^3.1.10" - mkdirp "^0.5.3" - neo-async "^2.6.1" - node-libs-browser "^2.2.1" - schema-utils "^1.0.0" - tapable "^1.1.3" - terser-webpack-plugin "^1.4.3" - watchpack "^1.7.4" - webpack-sources "^1.4.1" - -webpackbar@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-4.0.0.tgz#ee7a87f16077505b5720551af413c8ecd5b1f780" - integrity sha512-k1qRoSL/3BVuINzngj09nIwreD8wxV4grcuhHTD8VJgUbGcy8lQSPqv+bM00B7F+PffwIsQ8ISd4mIwRbr23eQ== - dependencies: - ansi-escapes "^4.2.1" - chalk "^2.4.2" - consola "^2.10.0" - figures "^3.0.0" - pretty-time "^1.1.0" - std-env "^2.2.1" - text-table "^0.2.0" - wrap-ansi "^6.0.0" - -whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== +wcwidth@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg== dependencies: - iconv-lite "0.4.24" + defaults "^1.0.3" -whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== +web-namespaces@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692" + integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ== -whatwg-url@^8.0.0: - version "8.4.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.4.0.tgz#50fb9615b05469591d2b2bd6dfaed2942ed72837" - integrity sha512-vwTUFf6V4zhcPkWp/4CQPr1TW9Ml6SF4lVyaIMBdJw5i6qUUJ1QWM4Z6YYVkfka0OUIzVo/0aNtGVGk256IKWw== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^2.0.2" - webidl-conversions "^6.1.0" +web-streams-polyfill@^3.0.3: + version "3.2.1" + resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6" + integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q== -which-boxed-primitive@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" - integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== - dependencies: - is-bigint "^1.0.1" - is-boolean-object "^1.1.0" - is-number-object "^1.0.4" - is-string "^1.0.5" - is-symbol "^1.0.3" +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= +webpack-sources@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" + integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== -which@^1.2.9: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== +webpack-virtual-modules@^0.4.6: + version "0.4.6" + resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.4.6.tgz#3e4008230731f1db078d9cb6f68baf8571182b45" + integrity sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA== + +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: - isexe "^2.0.0" + tr46 "~0.0.3" + webidl-conversions "^3.0.0" -which@^2.0.1, which@^2.0.2: +which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" -widest-line@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" - integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== - dependencies: - string-width "^4.0.0" - -word-wrap@^1.2.3, word-wrap@~1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== - -workbox-cdn@^5.1.4: - version "5.1.4" - resolved "https://registry.yarnpkg.com/workbox-cdn/-/workbox-cdn-5.1.4.tgz#dbd8acee70b1978be70106207590bbb76af935cf" - integrity sha512-04gM3mi8QGutokkSaA9xunVfjURnLbo9TTWyi8+pSDCEW5cD8u5GbJiliLK1vB9CShk/9OY1UDfW+XcmD+d6KQ== - -worker-farm@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" - integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== - dependencies: - errno "~0.1.7" - -wrap-ansi@^6.0.0, wrap-ansi@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" - integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== +wide-align@^1.1.2: + version "1.1.5" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" + string-width "^1.0.2 || 2 || 3 || 4" wrap-ansi@^7.0.0: version "7.0.0" @@ -12967,171 +5466,90 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.0.1.tgz#2101e861777fec527d0ea90c57c6b03aac56a5b3" + integrity sha512-QFF+ufAqhoYHvoHdajT/Po7KoXVBPXS2bgjIam5isfWJPfIOnQZ50JtUiVvCv/sjgacf3yRrt2ZKUZ/V4itN4g== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -write-file-atomic@^2.0.0: - version "2.4.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" - integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - -write-file-atomic@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" - integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== - dependencies: - imurmurhash "^0.1.4" - is-typedarray "^1.0.0" - signal-exit "^3.0.2" - typedarray-to-buffer "^3.1.5" - -write-json-file@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" - integrity sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8= - dependencies: - detect-indent "^5.0.0" - graceful-fs "^4.1.2" - make-dir "^1.0.0" - pify "^3.0.0" - sort-keys "^2.0.0" - write-file-atomic "^2.0.0" - -ws@^7.3.1, ws@^7.4.3, ws@^7.4.4: - version "7.4.4" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.4.tgz#383bc9742cb202292c9077ceab6f6047b17f2d59" - integrity sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw== - -x-is-array@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/x-is-array/-/x-is-array-0.1.0.tgz#de520171d47b3f416f5587d629b89d26b12dc29d" - integrity sha1-3lIBcdR7P0FvVYfWKbidJrEtwp0= - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -xml2js@^0.4.23: - version "0.4.23" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" - integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug== - dependencies: - sax ">=0.6.0" - xmlbuilder "~11.0.0" +ws@^8.11.0: + version "8.11.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz#6a0d36b8edfd9f96d8b25683db2f8d7de6e8e143" + integrity sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg== -xmlbuilder@~11.0.0: - version "11.0.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" - integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== +ws@~8.2.3: + version "8.2.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz#63a56456db1b04367d0b721a0b80cae6d8becbba" + integrity sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA== -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== +xmlhttprequest-ssl@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz#91360c86b914e67f44dce769180027c0da618c67" + integrity sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A== -xtend@^4.0.0, xtend@^4.0.2, xtend@~4.0.1: +xtend@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -xxhashjs@^0.2.1, xxhashjs@~0.2.2: +xxhashjs@~0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/xxhashjs/-/xxhashjs-0.2.2.tgz#8a6251567621a1c46a5ae204da0249c7f8caa9d8" integrity sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw== dependencies: cuint "^0.2.2" -y18n@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.1.tgz#8db2b83c31c5d75099bb890b23f3094891e247d4" - integrity sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ== - y18n@^5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" - integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== - -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^1.10.0, yaml@^1.7.2: +yaml@^1.10.2: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@20.x, yargs-parser@^20.2.2: - version "20.2.7" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" - integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== -yargs-parser@^18.1.2: - version "18.1.3" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" - integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== +yargs@^17.5.1: + version "17.6.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.6.2.tgz#2e23f2944e976339a1ee00f18c77fedee8332541" + integrity sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw== dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs@^15.4.1: - version "15.4.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" - integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== - dependencies: - cliui "^6.0.0" - decamelize "^1.2.0" - find-up "^4.1.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^4.2.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^18.1.2" - -yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - dependencies: - cliui "^7.0.2" + cliui "^8.0.1" escalade "^3.1.1" get-caller-file "^2.0.5" require-directory "^2.1.1" - string-width "^4.2.0" + string-width "^4.2.3" y18n "^5.0.5" - yargs-parser "^20.2.2" + yargs-parser "^21.1.1" -ylru@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f" - integrity sha512-faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ== - -yocto-queue@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" - integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== +zip-stream@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-4.1.0.tgz#51dd326571544e36aa3f756430b313576dc8fc79" + integrity sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A== + dependencies: + archiver-utils "^2.1.0" + compress-commons "^4.1.0" + readable-stream "^3.6.0" -zwitch@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" - integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== +zwitch@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" + integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A== From 1f7027bd1867836aa761692d3edbb5082bca5979 Mon Sep 17 00:00:00 2001 From: Gavin Chait Date: Mon, 26 Dec 2022 13:56:41 +0100 Subject: [PATCH 24/81] Docker compose updates Including: - Postgresql 12 -> 14 - Neo4j pinned to 5.2.0 Added volumes for sharing data between environments. --- {{cookiecutter.project_slug}}/.gitignore | 4 ++ .../docker-compose.yml | 53 ++++++++++++++++--- 2 files changed, 49 insertions(+), 8 deletions(-) diff --git a/{{cookiecutter.project_slug}}/.gitignore b/{{cookiecutter.project_slug}}/.gitignore index 1230031ec4..108cdb9bfd 100755 --- a/{{cookiecutter.project_slug}}/.gitignore +++ b/{{cookiecutter.project_slug}}/.gitignore @@ -1,3 +1,7 @@ .vscode .mypy_cache docker-stack.yml +*.txt +.env +*.code-workspace +.s3cfg \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/docker-compose.yml b/{{cookiecutter.project_slug}}/docker-compose.yml index b3acd74ddf..a336e0da9e 100644 --- a/{{cookiecutter.project_slug}}/docker-compose.yml +++ b/{{cookiecutter.project_slug}}/docker-compose.yml @@ -68,7 +68,7 @@ services: - traefik.http.routers.${STACK_NAME?Variable not set}-proxy-http.middlewares=${STACK_NAME?Variable not set}-www-redirect,${STACK_NAME?Variable not set}-https-redirect db: - image: postgres:12 + image: postgres:14 volumes: - app-db-data:/var/lib/postgresql/data/pgdata env_file: @@ -104,7 +104,7 @@ services: - traefik.http.services.${STACK_NAME?Variable not set}-pgadmin.loadbalancer.server.port=5050 neo4j: - image: neo4j + image: neo4j:5.2.0 networks: - ${TRAEFIK_PUBLIC_NETWORK?Variable not set} - default @@ -113,15 +113,33 @@ services: - "7474:7474" - "7687:7687" volumes: + #- ./conf/neo4j.conf:/var/lib/neo4j/conf - app-neo4j-data:/data - app-neo4j-plugins:/plugins + - app-neo4j-import:/var/lib/neo4j/import env_file: - .env environment: - NEO4J_ACCEPT_LICENSE_AGREEMENT=yes - - NEO4J_AUTH=neo4j/neo4j - - NEO4J_dbms_default__advertised__address=0.0.0.0 + - NEO4J_AUTH=${NEO4J_USERNAME?Variable not set}/${NEO4J_PASSWORD?Variable not set} + - NEO4J_server_config_strict__validation_enabled=false + #- NEO4J_dbms_default__advertised__address=0.0.0.0 + - NEO4J_dbms_default__listen__address=0.0.0.0 + #- NEO4J_dbms_connector_bolt_advertised__address=0.0.0.0:7687 + - NEO4J_dbms_connector_bolt_listen__address=0.0.0.0:7687 + - NEO4J_dbms_connector_http_listen__address=:7474 + - NEO4J_dbms_connector_http_advertised__address=:7474 + - NEO4J_dbms_connector_https_listen__address=:6477 + - NEO4J_dbms_connector_https_advertised__address=:6477 + - NEO4J_dbms_connector_bolt_listen__address=:7687 - NEO4J_dbms_mode=SINGLE + - NEO4J_PLUGINS=["graph-data-science", "apoc"] + - NEO4J_dbms_security_procedures_allowlist=gds.*, apoc.* + - NEO4J_dbms_security_procedures_unrestricted=gds.*, apoc.* + - NEO4J_dbms_memory_heap_initial__size=512m + - NEO4J_dbms_memory_heap_max__size=512m + - NEO4J_dbms_memory_pagecache_size=512m + - NEO4J_dbms_jvm_additional="-XX:+ExitOnOutOfMemoryError" deploy: labels: - traefik.enable=true @@ -138,11 +156,11 @@ services: replicas: 1 resources: limits: - memory: 1024M + memory: 2048M reservations: - memory: 500M - restart_policy: - condition: on-failure + memory: 512M + # restart_policy: + # condition: on-failure queue: image: rabbitmq:3 @@ -150,6 +168,8 @@ services: # image: rabbitmq:3-management # # You also have to change the flower command + volumes: + - ./conf/rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf flower: image: mher/flower:0.9.7 @@ -181,6 +201,14 @@ services: image: "${DOCKER_IMAGE_BACKEND?Variable not set}:${TAG-latest}" depends_on: - db + - neo4j + volumes: + - app-neo4j-import:/app/imports + logging: + driver: "json-file" + options: + max-size: "200k" + max-file: "3" env_file: - .env environment: @@ -208,7 +236,15 @@ services: image: "${DOCKER_IMAGE_CELERYWORKER?Variable not set}:${TAG-latest}" depends_on: - db + - neo4j - queue + volumes: + - app-neo4j-import:/app/imports + logging: + driver: "json-file" + options: + max-size: "200k" + max-file: "3" env_file: - .env environment: @@ -245,6 +281,7 @@ volumes: app-db-data: app-neo4j-data: app-neo4j-plugins: + app-neo4j-import: networks: traefik-public: From 57b633cdfe91e9095479ded0e587c66b62a83062 Mon Sep 17 00:00:00 2001 From: Gavin Chait Date: Mon, 26 Dec 2022 14:22:21 +0100 Subject: [PATCH 25/81] Complete backend rebuild Main components: - Inboard 0.10.4 -> 0.37.0, including FastAPI 0.88 - SQLAlchemy 1.3 -> 1.4 - Authentication refresh token stored for long-term issuing of a new access token. NOTE: Tests have not been updated and will fail ... --- .../backend/.dockerignore | 3 + .../backend/app/.flake8 | 4 +- .../backend/app/.gitignore | 20 + .../backend/app/.python-version | 1 + .../versions/c4f38069dc24_first_revision.py | 53 + .../versions/d4867f3a4c0a_first_revision.py | 59 - .../backend/app/app/api/api_v1/api.py | 9 +- .../app/app/api/api_v1/endpoints/items.py | 99 - .../app/app/api/api_v1/endpoints/login.py | 66 +- .../app/app/api/api_v1/endpoints/proxy.py | 55 + .../app/app/api/api_v1/endpoints/users.py | 172 +- .../app/app/api/api_v1/endpoints/utils.py | 35 - .../backend/app/app/api/deps.py | 75 +- .../backend/app/app/core/celery_app.py | 2 +- .../backend/app/app/core/config.py | 22 +- .../backend/app/app/core/security.py | 19 +- .../backend/app/app/crud/__init__.py | 3 +- .../backend/app/app/crud/crud_item.py | 34 - .../backend/app/app/crud/crud_token.py | 47 + .../backend/app/app/crud/crud_user.py | 24 +- .../backend/app/app/crud/neo_base.py | 103 + .../backend/app/app/db/base.py | 2 +- .../email-templates/build/confirm_email.html | 24 + .../email-templates/build/new_account.html | 22 +- .../email-templates/build/reset_password.html | 23 +- .../build/web_contact_email.html | 24 + .../email-templates/src/confirm_email.mjml | 52 + .../app/email-templates/src/new_account.mjml | 46 +- .../email-templates/src/reset_password.mjml | 62 +- .../src/web_contact_email.mjml | 20 + .../backend/app/app/gdb/__init__.py | 3 + .../backend/app/app/gdb/base_edge_class.py | 12 + .../backend/app/app/gdb/base_node_class.py | 100 + .../backend/app/app/gdb/init_gdb.py | 61 + .../backend/app/app/gdb/neomodel_config.py | 18 + .../backend/app/app/models/__init__.py | 2 +- .../backend/app/app/models/item.py | 17 - .../backend/app/app/models/token.py | 16 + .../backend/app/app/models/user.py | 11 +- .../backend/app/app/schema_types/__init__.py | 1 + .../backend/app/app/schema_types/base_type.py | 25 + .../backend/app/app/schemas/__init__.py | 7 +- .../backend/app/app/schemas/base_schema.py | 71 + .../backend/app/app/schemas/emails.py | 15 + .../backend/app/app/schemas/item.py | 39 - .../backend/app/app/schemas/token.py | 24 +- .../backend/app/app/schemas/user.py | 11 +- .../backend/app/app/utilities/__init__.py | 11 + .../app/app/{utils.py => utilities/email.py} | 37 +- .../backend/app/app/worker/__init__.py | 3 + .../app/app/{worker.py => worker/tests.py} | 4 +- .../backend/app/poetry.lock | 2336 ++++++++++------- .../backend/app/pyproject.toml | 51 +- .../backend/app/worker-start.sh | 2 +- .../backend/backend.dockerfile | 11 +- .../backend/celeryworker.dockerfile | 14 +- 56 files changed, 2665 insertions(+), 1417 deletions(-) create mode 100644 {{cookiecutter.project_slug}}/backend/.dockerignore create mode 100644 {{cookiecutter.project_slug}}/backend/app/.python-version create mode 100644 {{cookiecutter.project_slug}}/backend/app/alembic/versions/c4f38069dc24_first_revision.py delete mode 100644 {{cookiecutter.project_slug}}/backend/app/alembic/versions/d4867f3a4c0a_first_revision.py delete mode 100644 {{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/items.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/proxy.py delete mode 100644 {{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/utils.py delete mode 100644 {{cookiecutter.project_slug}}/backend/app/app/crud/crud_item.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/crud/crud_token.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/crud/neo_base.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/email-templates/build/confirm_email.html create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/email-templates/build/web_contact_email.html create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/email-templates/src/confirm_email.mjml create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/email-templates/src/web_contact_email.mjml create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/gdb/__init__.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/gdb/base_edge_class.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/gdb/base_node_class.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/gdb/init_gdb.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/gdb/neomodel_config.py delete mode 100755 {{cookiecutter.project_slug}}/backend/app/app/models/item.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/models/token.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/schema_types/__init__.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/schema_types/base_type.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/schemas/base_schema.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/schemas/emails.py delete mode 100644 {{cookiecutter.project_slug}}/backend/app/app/schemas/item.py create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/utilities/__init__.py rename {{cookiecutter.project_slug}}/backend/app/app/{utils.py => utilities/email.py} (72%) create mode 100644 {{cookiecutter.project_slug}}/backend/app/app/worker/__init__.py rename {{cookiecutter.project_slug}}/backend/app/app/{worker.py => worker/tests.py} (72%) diff --git a/{{cookiecutter.project_slug}}/backend/.dockerignore b/{{cookiecutter.project_slug}}/backend/.dockerignore new file mode 100644 index 0000000000..32a61c1207 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/.dockerignore @@ -0,0 +1,3 @@ +# Get rid of .venv when copying +*/.venv +*/*/.venv \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/backend/app/.flake8 b/{{cookiecutter.project_slug}}/backend/app/.flake8 index 710dc9c030..01ecba739b 100644 --- a/{{cookiecutter.project_slug}}/backend/app/.flake8 +++ b/{{cookiecutter.project_slug}}/backend/app/.flake8 @@ -1,3 +1,5 @@ [flake8] -max-line-length = 88 +ignore = E302, E305, E203, E501, W503 +select = C,E,F,W,B,B950 +max-line-length = 120 exclude = .git,__pycache__,__init__.py,.mypy_cache,.pytest_cache diff --git a/{{cookiecutter.project_slug}}/backend/app/.gitignore b/{{cookiecutter.project_slug}}/backend/app/.gitignore index f511683016..3663d8296a 100644 --- a/{{cookiecutter.project_slug}}/backend/app/.gitignore +++ b/{{cookiecutter.project_slug}}/backend/app/.gitignore @@ -1,3 +1,23 @@ .mypy_cache .coverage htmlcov +.venv +.vscode +*.py[co] +*.egg +*.egg-info +*.ipynb +*.code-workspace +dist +eggs +parts +bin +var +sdist +develop-eggs +.installed.cfg +pip-log.txt +.coverage +.tox +*.mo +.s3cfg \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/backend/app/.python-version b/{{cookiecutter.project_slug}}/backend/app/.python-version new file mode 100644 index 0000000000..e0d61b5b06 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/.python-version @@ -0,0 +1 @@ +3.9.4 diff --git a/{{cookiecutter.project_slug}}/backend/app/alembic/versions/c4f38069dc24_first_revision.py b/{{cookiecutter.project_slug}}/backend/app/alembic/versions/c4f38069dc24_first_revision.py new file mode 100644 index 0000000000..73f711e579 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/alembic/versions/c4f38069dc24_first_revision.py @@ -0,0 +1,53 @@ +"""First revision + +Revision ID: c4f38069dc24 +Revises: +Create Date: 2022-12-16 08:09:54.834747 + +""" +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects import postgresql + +# revision identifiers, used by Alembic. +revision = 'c4f38069dc24' +down_revision = None +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('user', + sa.Column('id', postgresql.UUID(as_uuid=True), nullable=False), + sa.Column('full_name', sa.String(), nullable=True), + sa.Column('email', sa.String(), nullable=False), + sa.Column('hashed_password', sa.String(), nullable=False), + sa.Column('email_validated', sa.Boolean(), nullable=True), + sa.Column('is_active', sa.Boolean(), nullable=True), + sa.Column('is_superuser', sa.Boolean(), nullable=True), + sa.PrimaryKeyConstraint('id') + ) + op.create_index(op.f('ix_user_email'), 'user', ['email'], unique=True) + op.create_index(op.f('ix_user_full_name'), 'user', ['full_name'], unique=False) + op.create_index(op.f('ix_user_id'), 'user', ['id'], unique=False) + op.create_table('token', + sa.Column('token', sa.String(), nullable=False), + sa.Column('is_valid', sa.Boolean(), nullable=True), + sa.Column('authenticates_id', postgresql.UUID(as_uuid=True), nullable=True), + sa.ForeignKeyConstraint(['authenticates_id'], ['user.id'], ), + sa.PrimaryKeyConstraint('token') + ) + op.create_index(op.f('ix_token_token'), 'token', ['token'], unique=False) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_index(op.f('ix_token_token'), table_name='token') + op.drop_table('token') + op.drop_index(op.f('ix_user_id'), table_name='user') + op.drop_index(op.f('ix_user_full_name'), table_name='user') + op.drop_index(op.f('ix_user_email'), table_name='user') + op.drop_table('user') + # ### end Alembic commands ### diff --git a/{{cookiecutter.project_slug}}/backend/app/alembic/versions/d4867f3a4c0a_first_revision.py b/{{cookiecutter.project_slug}}/backend/app/alembic/versions/d4867f3a4c0a_first_revision.py deleted file mode 100644 index a43bf9d2fd..0000000000 --- a/{{cookiecutter.project_slug}}/backend/app/alembic/versions/d4867f3a4c0a_first_revision.py +++ /dev/null @@ -1,59 +0,0 @@ -"""First revision - -Revision ID: d4867f3a4c0a -Revises: -Create Date: 2019-04-17 13:53:32.978401 - -""" -from alembic import op -import sqlalchemy as sa - - -# revision identifiers, used by Alembic. -revision = "d4867f3a4c0a" -down_revision = None -branch_labels = None -depends_on = None - - -def upgrade(): - # ### commands auto generated by Alembic - please adjust! ### - op.create_table( - "user", - sa.Column("id", sa.Integer(), nullable=False), - sa.Column("full_name", sa.String(), nullable=True), - sa.Column("email", sa.String(), nullable=True), - sa.Column("hashed_password", sa.String(), nullable=True), - sa.Column("is_active", sa.Boolean(), nullable=True), - sa.Column("is_superuser", sa.Boolean(), nullable=True), - sa.PrimaryKeyConstraint("id"), - ) - op.create_index(op.f("ix_user_email"), "user", ["email"], unique=True) - op.create_index(op.f("ix_user_full_name"), "user", ["full_name"], unique=False) - op.create_index(op.f("ix_user_id"), "user", ["id"], unique=False) - op.create_table( - "item", - sa.Column("id", sa.Integer(), nullable=False), - sa.Column("title", sa.String(), nullable=True), - sa.Column("description", sa.String(), nullable=True), - sa.Column("owner_id", sa.Integer(), nullable=True), - sa.ForeignKeyConstraint(["owner_id"], ["user.id"],), - sa.PrimaryKeyConstraint("id"), - ) - op.create_index(op.f("ix_item_description"), "item", ["description"], unique=False) - op.create_index(op.f("ix_item_id"), "item", ["id"], unique=False) - op.create_index(op.f("ix_item_title"), "item", ["title"], unique=False) - # ### end Alembic commands ### - - -def downgrade(): - # ### commands auto generated by Alembic - please adjust! ### - op.drop_index(op.f("ix_item_title"), table_name="item") - op.drop_index(op.f("ix_item_id"), table_name="item") - op.drop_index(op.f("ix_item_description"), table_name="item") - op.drop_table("item") - op.drop_index(op.f("ix_user_id"), table_name="user") - op.drop_index(op.f("ix_user_full_name"), table_name="user") - op.drop_index(op.f("ix_user_email"), table_name="user") - op.drop_table("user") - # ### end Alembic commands ### diff --git a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/api.py b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/api.py index 2163017268..cb050c7232 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/api.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/api.py @@ -1,9 +1,12 @@ from fastapi import APIRouter -from app.api.api_v1.endpoints import items, login, users, utils +from app.api.api_v1.endpoints import ( + login, + users, + proxy, +) api_router = APIRouter() api_router.include_router(login.router, tags=["login"]) api_router.include_router(users.router, prefix="/users", tags=["users"]) -api_router.include_router(utils.router, prefix="/utils", tags=["utils"]) -api_router.include_router(items.router, prefix="/items", tags=["items"]) +api_router.include_router(proxy.router, prefix="/proxy", tags=["proxy"]) diff --git a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/items.py b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/items.py deleted file mode 100644 index e88885cd80..0000000000 --- a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/items.py +++ /dev/null @@ -1,99 +0,0 @@ -from typing import Any, List - -from fastapi import APIRouter, Depends, HTTPException -from sqlalchemy.orm import Session - -from app import crud, models, schemas -from app.api import deps - -router = APIRouter() - - -@router.get("/", response_model=List[schemas.Item]) -def read_items( - db: Session = Depends(deps.get_db), - skip: int = 0, - limit: int = 100, - current_user: models.User = Depends(deps.get_current_active_user), -) -> Any: - """ - Retrieve items. - """ - if crud.user.is_superuser(current_user): - items = crud.item.get_multi(db, skip=skip, limit=limit) - else: - items = crud.item.get_multi_by_owner( - db=db, owner_id=current_user.id, skip=skip, limit=limit - ) - return items - - -@router.post("/", response_model=schemas.Item) -def create_item( - *, - db: Session = Depends(deps.get_db), - item_in: schemas.ItemCreate, - current_user: models.User = Depends(deps.get_current_active_user), -) -> Any: - """ - Create new item. - """ - item = crud.item.create_with_owner(db=db, obj_in=item_in, owner_id=current_user.id) - return item - - -@router.put("/{id}", response_model=schemas.Item) -def update_item( - *, - db: Session = Depends(deps.get_db), - id: int, - item_in: schemas.ItemUpdate, - current_user: models.User = Depends(deps.get_current_active_user), -) -> Any: - """ - Update an item. - """ - item = crud.item.get(db=db, id=id) - if not item: - raise HTTPException(status_code=404, detail="Item not found") - if not crud.user.is_superuser(current_user) and (item.owner_id != current_user.id): - raise HTTPException(status_code=400, detail="Not enough permissions") - item = crud.item.update(db=db, db_obj=item, obj_in=item_in) - return item - - -@router.get("/{id}", response_model=schemas.Item) -def read_item( - *, - db: Session = Depends(deps.get_db), - id: int, - current_user: models.User = Depends(deps.get_current_active_user), -) -> Any: - """ - Get item by ID. - """ - item = crud.item.get(db=db, id=id) - if not item: - raise HTTPException(status_code=404, detail="Item not found") - if not crud.user.is_superuser(current_user) and (item.owner_id != current_user.id): - raise HTTPException(status_code=400, detail="Not enough permissions") - return item - - -@router.delete("/{id}", response_model=schemas.Item) -def delete_item( - *, - db: Session = Depends(deps.get_db), - id: int, - current_user: models.User = Depends(deps.get_current_active_user), -) -> Any: - """ - Delete an item. - """ - item = crud.item.get(db=db, id=id) - if not item: - raise HTTPException(status_code=404, detail="Item not found") - if not crud.user.is_superuser(current_user) and (item.owner_id != current_user.id): - raise HTTPException(status_code=400, detail="Not enough permissions") - item = crud.item.remove(db=db, id=id) - return item diff --git a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/login.py b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/login.py index 4dc3a9b248..91c9d66494 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/login.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/login.py @@ -10,7 +10,7 @@ from app.core import security from app.core.config import settings from app.core.security import get_password_hash -from app.utils import ( +from app.utilities import ( generate_password_reset_token, send_reset_password_email, verify_password_reset_token, @@ -20,34 +20,55 @@ @router.post("/login/access-token", response_model=schemas.Token) -def login_access_token( - db: Session = Depends(deps.get_db), form_data: OAuth2PasswordRequestForm = Depends() -) -> Any: +def login_access_token(db: Session = Depends(deps.get_db), form_data: OAuth2PasswordRequestForm = Depends()) -> Any: """ OAuth2 compatible token login, get an access token for future requests """ - user = crud.user.authenticate( - db, email=form_data.username, password=form_data.password - ) + user = crud.user.authenticate(db, email=form_data.username, password=form_data.password) if not user: raise HTTPException(status_code=400, detail="Incorrect email or password") elif not crud.user.is_active(user): raise HTTPException(status_code=400, detail="Inactive user") - access_token_expires = timedelta(minutes=settings.ACCESS_TOKEN_EXPIRE_MINUTES) + access_token_expires = timedelta(seconds=settings.ACCESS_TOKEN_EXPIRE_SECONDS) + refresh_token_expires = timedelta(seconds=settings.REFRESH_TOKEN_EXPIRE_SECONDS) + refresh_token = security.create_refresh_token(user.id, expires_delta=refresh_token_expires) + crud.token.create(db=db, obj_in=refresh_token, user_obj=user) return { - "access_token": security.create_access_token( - user.id, expires_delta=access_token_expires - ), + "access_token": security.create_access_token(user.id, expires_delta=access_token_expires), + "refresh_token": refresh_token, "token_type": "bearer", } -@router.post("/login/test-token", response_model=schemas.User) -def test_token(current_user: models.User = Depends(deps.get_current_user)) -> Any: +@router.post("/login/refresh-token", response_model=schemas.Token) +def refresh_token( + db: Session = Depends(deps.get_db), + current_user: models.User = Depends(deps.get_refresh_user), +) -> Any: """ - Test access token + Refresh tokens for future requests """ - return current_user + access_token_expires = timedelta(seconds=settings.ACCESS_TOKEN_EXPIRE_SECONDS) + refresh_token_expires = timedelta(seconds=settings.REFRESH_TOKEN_EXPIRE_SECONDS) + refresh_token = security.create_refresh_token(current_user.id, expires_delta=refresh_token_expires) + crud.token.create(db=db, obj_in=refresh_token, user_obj=current_user) + access_token = security.create_access_token(current_user.id, expires_delta=access_token_expires) + return { + "access_token": access_token, + "refresh_token": refresh_token, + "token_type": "bearer", + } + + +@router.post("/login/revoke-token", response_model=schemas.Msg) +def revoke_token( + db: Session = Depends(deps.get_db), + current_user: models.User = Depends(deps.get_refresh_user), +) -> Any: + """ + Revoke a refresh token + """ + return {"msg": "Token revoked"} @router.post("/password-recovery/{email}", response_model=schemas.Msg) @@ -56,20 +77,17 @@ def recover_password(email: str, db: Session = Depends(deps.get_db)) -> Any: Password Recovery """ user = crud.user.get_by_email(db, email=email) - if not user: raise HTTPException( status_code=404, - detail="The user with this username does not exist in the system.", + detail="This user does not exist in the system.", ) password_reset_token = generate_password_reset_token(email=email) - send_reset_password_email( - email_to=user.email, email=email, token=password_reset_token - ) - return {"msg": "Password recovery email sent"} + send_reset_password_email(email_to=user.email, email=email, token=password_reset_token) + return {"msg": "Password recovery email sent."} -@router.post("/reset-password/", response_model=schemas.Msg) +@router.post("/reset-password", response_model=schemas.Msg) def reset_password( token: str = Body(...), new_password: str = Body(...), @@ -85,7 +103,7 @@ def reset_password( if not user: raise HTTPException( status_code=404, - detail="The user with this username does not exist in the system.", + detail="This user does not exist in the system.", ) elif not crud.user.is_active(user): raise HTTPException(status_code=400, detail="Inactive user") @@ -93,4 +111,4 @@ def reset_password( user.hashed_password = hashed_password db.add(user) db.commit() - return {"msg": "Password updated successfully"} + return {"msg": "Password updated successfully."} diff --git a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/proxy.py b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/proxy.py new file mode 100644 index 0000000000..8f9f59682b --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/proxy.py @@ -0,0 +1,55 @@ +from typing import Any +from pydantic import AnyHttpUrl +from fastapi import APIRouter, Depends, HTTPException, Request, Response +import httpx + +from app import models +from app.api import deps + + +router = APIRouter() + +""" +A proxy for the frontend client when hitting cors issues with axios requests. Adjust as required. This version has +a user-login dependency to reduce the risk of leaking the server as a random proxy. +""" + + +@router.post("/{path:path}") +async def proxy_post_request( + *, path: AnyHttpUrl, request: Request, current_user: models.User = Depends(deps.get_current_active_user), +) -> Any: + # https://www.starlette.io/requests/ + # https://www.python-httpx.org/quickstart/ + # https://github.com/tiangolo/fastapi/issues/1788#issuecomment-698698884 + # https://fastapi.tiangolo.com/tutorial/path-params/#__code_13 + try: + data = await request.json() + headers = { + "Content-Type": request.headers.get("Content-Type"), + "Authorization": request.headers.get("Authorization"), + } + async with httpx.AsyncClient() as client: + proxy = await client.post(f"{path}", headers=headers, data=data) + response = Response(content=proxy.content, status_code=proxy.status_code) + return response + except Exception as e: + raise HTTPException(status_code=403, detail=str(e)) + + +@router.get("/{path:path}") +async def proxy_get_request( + *, path: AnyHttpUrl, request: Request, current_user: models.User = Depends(deps.get_current_active_user), +) -> Any: + try: + headers = { + "Content-Type": request.headers.get("Content-Type", "application/x-www-form-urlencoded"), + "Authorization": request.headers.get("Authorization"), + } + async with httpx.AsyncClient() as client: + proxy = await client.get(f"{path}", headers=headers) + response = Response(content=proxy.content, status_code=proxy.status_code) + return response + except Exception as e: + raise HTTPException(status_code=403, detail=str(e)) + diff --git a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/users.py b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/users.py index c8f89b63d8..bf0968f87f 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/users.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/users.py @@ -8,51 +8,41 @@ from app import crud, models, schemas from app.api import deps from app.core.config import settings -from app.utils import send_new_account_email +from app.utilities import ( + generate_password_reset_token, + send_email_validation_email, + verify_password_reset_token, + send_new_account_email, +) router = APIRouter() -@router.get("/", response_model=List[schemas.User]) -def read_users( - db: Session = Depends(deps.get_db), - skip: int = 0, - limit: int = 100, - current_user: models.User = Depends(deps.get_current_active_superuser), -) -> Any: - """ - Retrieve users. - """ - users = crud.user.get_multi(db, skip=skip, limit=limit) - return users - - @router.post("/", response_model=schemas.User) -def create_user( +def create_user_profile( *, db: Session = Depends(deps.get_db), - user_in: schemas.UserCreate, - current_user: models.User = Depends(deps.get_current_active_superuser), + password: str = Body(...), + email: EmailStr = Body(...), + full_name: str = Body(None), ) -> Any: """ - Create new user. + Create new user without the need to be logged in. """ - user = crud.user.get_by_email(db, email=user_in.email) + user = crud.user.get_by_email(db, email=email) if user: raise HTTPException( status_code=400, - detail="The user with this username already exists in the system.", + detail="This username already exists in the system", ) + # Create user auth + user_in = schemas.UserCreate(password=password, email=email, full_name=full_name) user = crud.user.create(db, obj_in=user_in) - if settings.EMAILS_ENABLED and user_in.email: - send_new_account_email( - email_to=user_in.email, username=user_in.email, password=user_in.password - ) return user -@router.put("/me", response_model=schemas.User) -def update_user_me( +@router.put("/", response_model=schemas.User) +def update_user( *, db: Session = Depends(deps.get_db), password: str = Body(None), @@ -61,7 +51,7 @@ def update_user_me( current_user: models.User = Depends(deps.get_current_active_user), ) -> Any: """ - Update own user. + Update user. """ current_user_data = jsonable_encoder(current_user) user_in = schemas.UserUpdate(**current_user_data) @@ -70,14 +60,20 @@ def update_user_me( if full_name is not None: user_in.full_name = full_name if email is not None: + check_user = crud.user.get_by_email(db, email=email) + if check_user and check_user.email != current_user.email: + raise HTTPException( + status_code=400, + detail="This username already exists in the system", + ) user_in.email = email user = crud.user.update(db, db_obj=current_user, obj_in=user_in) return user -@router.get("/me", response_model=schemas.User) -def read_user_me( - db: Session = Depends(deps.get_db), +@router.get("/", response_model=schemas.User) +def read_user( + *, current_user: models.User = Depends(deps.get_current_active_user), ) -> Any: """ @@ -86,68 +82,106 @@ def read_user_me( return current_user -@router.post("/open", response_model=schemas.User) -def create_user_open( +@router.get("/all", response_model=List[schemas.User]) +def read_all_users( *, db: Session = Depends(deps.get_db), - password: str = Body(...), - email: EmailStr = Body(...), - full_name: str = Body(None), + skip: int = 0, + limit: int = 100, + current_user: models.User = Depends(deps.get_current_active_superuser), ) -> Any: """ - Create new user without the need to be logged in. + Retrieve all current users. """ - if not settings.USERS_OPEN_REGISTRATION: - raise HTTPException( - status_code=403, - detail="Open user registration is forbidden on this server", - ) - user = crud.user.get_by_email(db, email=email) - if user: + return crud.user.get_multi(db=db, skip=skip, limit=limit) + + +@router.post("/send-validation-email", response_model=schemas.Msg, status_code=201) +def send_validation_email( + *, + current_user: models.User = Depends(deps.get_current_active_user), +) -> Any: + """ + Send validation email. + """ + password_validation_token = generate_password_reset_token(email=current_user.email) + data = schemas.EmailValidation( + **{ + "email": current_user.email, + "subject": "Validate your email address", + "token": password_validation_token, + } + ) + # EmailValidation + send_email_validation_email(data=data) + return {"msg": "Password validation email sent. Check your email and respond."} + + +@router.post("/validate-email", response_model=schemas.Msg) +def validate_email( + *, + db: Session = Depends(deps.get_db), + payload: dict = Body(...), + current_user: models.User = Depends(deps.get_current_active_user), +) -> Any: + """ + Reset password + """ + # https://stackoverflow.com/a/65114346/295606 + email = verify_password_reset_token(payload["validation"]) + if not email or current_user.email != email: raise HTTPException( status_code=400, - detail="The user with this username already exists in the system", + detail="Invalid token", ) - user_in = schemas.UserCreate(password=password, email=email, full_name=full_name) - user = crud.user.create(db, obj_in=user_in) - return user + crud.user.validate_email(db=db, db_obj=current_user) + return {"msg": "Email address validated successfully."} -@router.get("/{user_id}", response_model=schemas.User) -def read_user_by_id( - user_id: int, - current_user: models.User = Depends(deps.get_current_active_user), +@router.post("/toggle-state", response_model=schemas.Msg) +def toggle_state( + *, db: Session = Depends(deps.get_db), + user_in: schemas.UserUpdate, + current_user: models.User = Depends(deps.get_current_active_superuser), ) -> Any: """ - Get a specific user by id. + Toggle user state (moderator function) """ - user = crud.user.get(db, id=user_id) - if user == current_user: - return user - if not crud.user.is_superuser(current_user): + response = crud.user.toggle_user_state(db=db, obj_in=user_in) + if not response: raise HTTPException( - status_code=400, detail="The user doesn't have enough privileges" + status_code=400, + detail="Invalid request.", ) - return user + return {"msg": "User state toggled successfully."} -@router.put("/{user_id}", response_model=schemas.User) -def update_user( +@router.post("/create", response_model=schemas.User) +def create_user( *, db: Session = Depends(deps.get_db), - user_id: int, - user_in: schemas.UserUpdate, + user_in: schemas.UserCreate, current_user: models.User = Depends(deps.get_current_active_superuser), ) -> Any: """ - Update a user. + Create new user (moderator function). """ - user = crud.user.get(db, id=user_id) - if not user: + user = crud.user.get_by_email(db, email=user_in.email) + if user: raise HTTPException( - status_code=404, - detail="The user with this username does not exist in the system", + status_code=400, + detail="The user with this username already exists in the system.", ) - user = crud.user.update(db, db_obj=user, obj_in=user_in) + user = crud.user.create(db, obj_in=user_in) + if settings.EMAILS_ENABLED and user_in.email: + send_new_account_email(email_to=user_in.email, username=user_in.email, password=user_in.password) return user + + +@router.get("/tester", response_model=schemas.Msg) +def test_endpoint() -> Any: + """ + Test current endpoint. + """ + return {"msg": "Message returned ok."} diff --git a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/utils.py b/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/utils.py deleted file mode 100644 index 71fe68d0ce..0000000000 --- a/{{cookiecutter.project_slug}}/backend/app/app/api/api_v1/endpoints/utils.py +++ /dev/null @@ -1,35 +0,0 @@ -from typing import Any - -from fastapi import APIRouter, Depends -from pydantic.networks import EmailStr - -from app import models, schemas -from app.api import deps -from app.core.celery_app import celery_app -from app.utils import send_test_email - -router = APIRouter() - - -@router.post("/test-celery/", response_model=schemas.Msg, status_code=201) -def test_celery( - msg: schemas.Msg, - current_user: models.User = Depends(deps.get_current_active_superuser), -) -> Any: - """ - Test Celery worker. - """ - celery_app.send_task("app.worker.test_celery", args=[msg.msg]) - return {"msg": "Word received"} - - -@router.post("/test-email/", response_model=schemas.Msg, status_code=201) -def test_email( - email_to: EmailStr, - current_user: models.User = Depends(deps.get_current_active_superuser), -) -> Any: - """ - Test emails. - """ - send_test_email(email_to=email_to) - return {"msg": "Test email sent"} diff --git a/{{cookiecutter.project_slug}}/backend/app/app/api/deps.py b/{{cookiecutter.project_slug}}/backend/app/app/api/deps.py index a0109afe84..89c40bf1a8 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/api/deps.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/api/deps.py @@ -11,9 +11,7 @@ from app.core.config import settings from app.db.session import SessionLocal -reusable_oauth2 = OAuth2PasswordBearer( - tokenUrl=f"{settings.API_V1_STR}/login/access-token" -) +reusable_oauth2 = OAuth2PasswordBearer(tokenUrl=f"{settings.API_V1_STR}/login/access-token") def get_db() -> Generator: @@ -24,38 +22,77 @@ def get_db() -> Generator: db.close() -def get_current_user( - db: Session = Depends(get_db), token: str = Depends(reusable_oauth2) -) -> models.User: +def get_current_user(db: Session = Depends(get_db), token: str = Depends(reusable_oauth2)) -> models.User: try: - payload = jwt.decode( - token, settings.SECRET_KEY, algorithms=[security.ALGORITHM] + payload = jwt.decode(token, settings.SECRET_KEY, algorithms=[security.ALGORITHM]) + token_data = schemas.TokenPayload(**payload) + except (jwt.JWTError, ValidationError): + raise HTTPException( + status_code=status.HTTP_403_FORBIDDEN, detail="Could not validate credentials", ) + if token_data.refresh: + # Refresh token is not a valid access token + raise HTTPException( + status_code=status.HTTP_403_FORBIDDEN, detail="Could not validate credentials", + ) + user = crud.user.get(db, id=token_data.sub) + if not user: + raise HTTPException(status_code=404, detail="User not found") + return user + + +def get_refresh_user(db: Session = Depends(get_db), token: str = Depends(reusable_oauth2)) -> models.User: + try: + payload = jwt.decode(token, settings.SECRET_KEY, algorithms=[security.ALGORITHM]) token_data = schemas.TokenPayload(**payload) except (jwt.JWTError, ValidationError): raise HTTPException( - status_code=status.HTTP_403_FORBIDDEN, - detail="Could not validate credentials", + status_code=status.HTTP_403_FORBIDDEN, detail="Could not validate credentials", + ) + if not token_data.refresh: + # Access token is not a valid refresh token + raise HTTPException( + status_code=status.HTTP_403_FORBIDDEN, detail="Could not validate credentials", ) user = crud.user.get(db, id=token_data.sub) if not user: raise HTTPException(status_code=404, detail="User not found") + if not crud.user.is_active(user): + raise HTTPException(status_code=400, detail="Inactive user") + # Check and revoke this refresh token + token_obj = crud.token.get(token=token, user=user) + if not token_obj or not token_obj.is_valid: + raise HTTPException( + status_code=status.HTTP_403_FORBIDDEN, detail="Could not validate credentials", + ) + crud.token.cancel_refresh_token(db, db_obj=token_obj) return user -def get_current_active_user( - current_user: models.User = Depends(get_current_user), -) -> models.User: +def get_current_active_user(current_user: models.User = Depends(get_current_user),) -> models.User: if not crud.user.is_active(current_user): raise HTTPException(status_code=400, detail="Inactive user") return current_user -def get_current_active_superuser( - current_user: models.User = Depends(get_current_user), -) -> models.User: +def get_current_active_superuser(current_user: models.User = Depends(get_current_user),) -> models.User: if not crud.user.is_superuser(current_user): - raise HTTPException( - status_code=400, detail="The user doesn't have enough privileges" - ) + raise HTTPException(status_code=400, detail="The user doesn't have enough privileges") return current_user + + +def get_active_websocket_user(*, db: Session, token: str) -> models.User: + try: + payload = jwt.decode(token, settings.SECRET_KEY, algorithms=[security.ALGORITHM]) + token_data = schemas.TokenPayload(**payload) + except (jwt.JWTError, ValidationError): + raise ValidationError("Could not validate credentials") + if token_data.refresh: + # Refresh token is not a valid access token + raise ValidationError("Could not validate credentials") + user = crud.user.get(db, id=token_data.sub) + if not user: + raise ValidationError("User not found") + if not crud.user.is_active(user): + raise ValidationError("Inactive user") + return user diff --git a/{{cookiecutter.project_slug}}/backend/app/app/core/celery_app.py b/{{cookiecutter.project_slug}}/backend/app/app/core/celery_app.py index 0477d14589..31fdb0f2a0 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/core/celery_app.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/core/celery_app.py @@ -2,4 +2,4 @@ celery_app = Celery("worker", broker="amqp://guest@queue//") -celery_app.conf.task_routes = {"app.worker.test_celery": "main-queue"} +celery_app.conf.task_routes = {"app.worker.*": "main-queue"} diff --git a/{{cookiecutter.project_slug}}/backend/app/app/core/config.py b/{{cookiecutter.project_slug}}/backend/app/app/core/config.py index 8b07276dac..5401965461 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/core/config.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/core/config.py @@ -9,8 +9,10 @@ class Settings(BaseSettings): SECRET_KEY: str = secrets.token_urlsafe(32) # 60 minutes * 24 hours * 8 days = 8 days ACCESS_TOKEN_EXPIRE_MINUTES: int = 60 * 24 * 8 + REFRESH_TOKEN_EXPIRE_SECONDS: int = 60 * 60 * 24 * 30 SERVER_NAME: str SERVER_HOST: AnyHttpUrl + SERVER_BOT: str = "Symona" # BACKEND_CORS_ORIGINS is a JSON-formatted list of origins # e.g: '["http://localhost", "http://localhost:4200", "http://localhost:3000", \ # "http://localhost:8080", "http://local.dockertoolbox.tiangolo.com"]' @@ -58,6 +60,7 @@ def assemble_db_connection(cls, v: Optional[str], values: Dict[str, Any]) -> Any SMTP_PASSWORD: Optional[str] = None EMAILS_FROM_EMAIL: Optional[EmailStr] = None EMAILS_FROM_NAME: Optional[str] = None + EMAILS_TO_EMAIL: Optional[EmailStr] = None @validator("EMAILS_FROM_NAME") def get_project_name(cls, v: Optional[str], values: Dict[str, Any]) -> str: @@ -80,7 +83,24 @@ def get_emails_enabled(cls, v: bool, values: Dict[str, Any]) -> bool: EMAIL_TEST_USER: EmailStr = "test@example.com" # type: ignore FIRST_SUPERUSER: EmailStr FIRST_SUPERUSER_PASSWORD: str - USERS_OPEN_REGISTRATION: bool = False + USERS_OPEN_REGISTRATION: bool = True + + # NEO4J + NEO4J_FORCE_TIMEZONE: Optional[bool] = True + NEO4J_AUTO_INSTALL_LABELS: Optional[bool] = True + NEO4J_MAX_CONNECTION_POOL_SIZE: Optional[int] = 50 + NEO4J_SERVER: Optional[str] = "localhost" + NEO4J_USERNAME: str + NEO4J_PASSWORD: str + NEO4J_AUTH: str + NEO4J_BOLT: str + NEO4J_BOLT_URL: Optional[str] = None + NEO4J_SUGGESTION_LIMIT: int = 8 + NEO4J_RESULTS_LIMIT: int = 100 + + @validator("NEO4J_BOLT_URL", pre=True) + def get_neo4j_bolt_url(cls, v: str, values: Dict[str, Any]) -> str: + return f"{values.get('NEO4J_BOLT')}://{values.get('NEO4J_USERNAME')}:{values.get('NEO4J_PASSWORD')}@{values.get('NEO4J_SERVER')}:7687" class Config: case_sensitive = True diff --git a/{{cookiecutter.project_slug}}/backend/app/app/core/security.py b/{{cookiecutter.project_slug}}/backend/app/app/core/security.py index 6c6ee8bc30..905227257a 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/core/security.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/core/security.py @@ -12,23 +12,30 @@ ALGORITHM = "HS256" -def create_access_token( - subject: Union[str, Any], expires_delta: timedelta = None -) -> str: +def create_access_token(subject: Union[str, Any], expires_delta: timedelta = None) -> str: if expires_delta: expire = datetime.utcnow() + expires_delta else: - expire = datetime.utcnow() + timedelta( - minutes=settings.ACCESS_TOKEN_EXPIRE_MINUTES - ) + expire = datetime.utcnow() + timedelta(seconds=settings.ACCESS_TOKEN_EXPIRE_SECONDS) to_encode = {"exp": expire, "sub": str(subject)} encoded_jwt = jwt.encode(to_encode, settings.SECRET_KEY, algorithm=ALGORITHM) return encoded_jwt +def create_refresh_token(subject: Union[str, Any], expires_delta: timedelta = None) -> str: + if expires_delta: + expire = datetime.utcnow() + expires_delta + else: + expire = datetime.utcnow() + timedelta(seconds=settings.REFRESH_TOKEN_EXPIRE_SECONDS) + to_encode = {"exp": expire, "sub": str(subject), "refresh": True} + encoded_jwt = jwt.encode(to_encode, settings.SECRET_KEY, algorithm=ALGORITHM) + return encoded_jwt + + def verify_password(plain_password: str, hashed_password: str) -> bool: return pwd_context.verify(plain_password, hashed_password) def get_password_hash(password: str) -> str: return pwd_context.hash(password) + diff --git a/{{cookiecutter.project_slug}}/backend/app/app/crud/__init__.py b/{{cookiecutter.project_slug}}/backend/app/app/crud/__init__.py index 40e2c673b4..edcbf92c06 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/crud/__init__.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/crud/__init__.py @@ -1,5 +1,6 @@ -from .crud_item import item from .crud_user import user +from .crud_token import token + # For a new basic set of CRUD operations you could just do diff --git a/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_item.py b/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_item.py deleted file mode 100644 index dcb87cdc5c..0000000000 --- a/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_item.py +++ /dev/null @@ -1,34 +0,0 @@ -from typing import List - -from fastapi.encoders import jsonable_encoder -from sqlalchemy.orm import Session - -from app.crud.base import CRUDBase -from app.models.item import Item -from app.schemas.item import ItemCreate, ItemUpdate - - -class CRUDItem(CRUDBase[Item, ItemCreate, ItemUpdate]): - def create_with_owner( - self, db: Session, *, obj_in: ItemCreate, owner_id: int - ) -> Item: - obj_in_data = jsonable_encoder(obj_in) - db_obj = self.model(**obj_in_data, owner_id=owner_id) - db.add(db_obj) - db.commit() - db.refresh(db_obj) - return db_obj - - def get_multi_by_owner( - self, db: Session, *, owner_id: int, skip: int = 0, limit: int = 100 - ) -> List[Item]: - return ( - db.query(self.model) - .filter(Item.owner_id == owner_id) - .offset(skip) - .limit(limit) - .all() - ) - - -item = CRUDItem(Item) diff --git a/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_token.py b/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_token.py new file mode 100644 index 0000000000..03a8ac39ae --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_token.py @@ -0,0 +1,47 @@ +from __future__ import annotations +from sqlalchemy.orm import Session +from typing import List +from sqlalchemy import and_ + +from app.crud.base import CRUDBase +from app.models import User, Token +from app.schemas import RefreshTokenCreate, RefreshTokenUpdate + + +class CRUDToken(CRUDBase[Token, RefreshTokenCreate, RefreshTokenUpdate]): + # Everything is user-dependent + def create(self, db: Session, *, obj_in: str, user_obj: User) -> User: + db_obj = db.query(self.model).filter(self.model.token == obj_in).first() + if db_obj and db_obj.authenticates == user_obj: + # In case the token was invalidated, then recreated with the same token key + setattr(db_obj, "is_valid", True) + db.add(db_obj) + db.commit() + db.refresh(db_obj) + return db_obj + if db_obj and db_obj.authenticates != user_obj: + raise ValueError(f"Token mismatch between key and user.") + db_obj = Token(token=obj_in) + db.add(db_obj) + db.commit() + db.refresh(db_obj) + user_obj.refresh_tokens.append(db_obj) + db.commit() + db.refresh(db_obj) + return db_obj + + def cancel_refresh_token(self, db: Session, *, db_obj: Token) -> Token: + setattr(db_obj, "is_valid", False) + db.add(db_obj) + db.commit() + db.refresh(db_obj) + return db_obj + + def get(self, *, user: User, token: str) -> Token: + return user.refresh_tokens.filter(and_(self.model.token == token, self.model.is_valid == True)).first() + + def get_multi(self, *, user: User, skip: int = 0, limit: int = 100) -> List[Token]: + return user.refresh_tokens.filter(self.model.is_valid == True).offset(skip).limit(limit).all() + + +token = CRUDToken(Token) diff --git a/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_user.py b/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_user.py index 14525d326f..2bd27f8996 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_user.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/crud/crud_user.py @@ -5,7 +5,7 @@ from app.core.security import get_password_hash, verify_password from app.crud.base import CRUDBase from app.models.user import User -from app.schemas.user import UserCreate, UserUpdate +from app.schemas.user import UserCreate, UserInDB, UserUpdate class CRUDUser(CRUDBase[User, UserCreate, UserUpdate]): @@ -24,17 +24,17 @@ def create(self, db: Session, *, obj_in: UserCreate) -> User: db.refresh(db_obj) return db_obj - def update( - self, db: Session, *, db_obj: User, obj_in: Union[UserUpdate, Dict[str, Any]] - ) -> User: + def update(self, db: Session, *, db_obj: User, obj_in: Union[UserUpdate, Dict[str, Any]]) -> User: if isinstance(obj_in, dict): update_data = obj_in else: update_data = obj_in.dict(exclude_unset=True) - if update_data["password"]: + if update_data.get("password"): hashed_password = get_password_hash(update_data["password"]) del update_data["password"] update_data["hashed_password"] = hashed_password + if update_data.get("email") and db_obj.email != update_data["email"]: + update_data["email_validated"] = False return super().update(db, db_obj=db_obj, obj_in=update_data) def authenticate(self, db: Session, *, email: str, password: str) -> Optional[User]: @@ -45,11 +45,25 @@ def authenticate(self, db: Session, *, email: str, password: str) -> Optional[Us return None return user + def validate_email(self, db: Session, *, db_obj: User) -> User: + obj_in = UserUpdate(**UserInDB.from_orm(db_obj).dict()) + obj_in.email_validated = True + return self.update(db=db, db_obj=db_obj, obj_in=obj_in) + + def toggle_user_state(self, db: Session, *, obj_in: Union[UserUpdate, Dict[str, Any]]) -> User: + db_obj = self.get_by_email(db, email=obj_in.email) + if not db_obj: + return None + return self.update(db=db, db_obj=db_obj, obj_in=obj_in) + def is_active(self, user: User) -> bool: return user.is_active def is_superuser(self, user: User) -> bool: return user.is_superuser + def is_email_validated(self, user: User) -> bool: + return user.email_validated + user = CRUDUser(User) diff --git a/{{cookiecutter.project_slug}}/backend/app/app/crud/neo_base.py b/{{cookiecutter.project_slug}}/backend/app/app/crud/neo_base.py new file mode 100644 index 0000000000..b6733392c5 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/crud/neo_base.py @@ -0,0 +1,103 @@ +from typing import Generic, List, Optional, Type, TypeVar, Union +from pydantic import BaseModel +from neomodel import db, Q, One, CardinalityViolation +from uuid import UUID +import inspect +from neomodel.relationship_manager import RelationshipDefinition, ZeroOrMore + +from app.gdb import NeomodelConfig, NodeBase + +ModelType = TypeVar("ModelType", bound=NodeBase) +CreateSchemaType = TypeVar("CreateSchemaType", bound=BaseModel) +UpdateSchemaType = TypeVar("UpdateSchemaType", bound=BaseModel) + +NeomodelConfig().ready() + + +class NeoCRUDBase(Generic[ModelType, CreateSchemaType, UpdateSchemaType]): + def __init__(self, model: Type[ModelType]): + """ + Neomodel CRUD object with default methods to Create, Read, Update, Delete (CRUD). + + **Parameters** + + * `model`: A Neo4j Neomodel model class + * `schema`: A Pydantic model (schema) class + """ + self.model = model + + def _hexify(self, id: Union[UUID, str]) -> str: + if isinstance(id, str): + id = UUID(id) + return id.hex + + def get_relationships(self, db_objs: Union[ModelType, List[ModelType]]) -> Union[ModelType, List[ModelType]]: + if not db_objs: + return db_objs + is_list = isinstance(db_objs, list) + if not is_list: + db_objs = [db_objs] + for db_obj in db_objs: + # Get members of the object by getting its class type + for key, relation in inspect.getmembers(db_obj.__class__): + # an object can be accessed as a dict to subscript its attributes + relation = db_obj.__dict__.get(key) + if isinstance(relation, ZeroOrMore): + if db_obj.__dict__[key].all(): + db_obj.__dict__[key] = db_obj.__dict__[key].all() + else: + db_obj.__dict__[key] = [] + elif isinstance(relation, One): + try: + db_obj.__dict__[key] = UUID(db_obj.__dict__[key].single().identifier) + except CardinalityViolation: + db_obj.__dict__[key] = None + if not is_list: + return db_obj + return db_objs + + def _response( + self, *, db_objs: Union[ModelType, List[ModelType]], get_raw: bool = False, get_first: bool = True + ) -> Union[ModelType, List[ModelType]]: + # create_or_update is used to create multiples, so returns a list (of 1) + if get_first and isinstance(db_objs, list): + db_objs = db_objs[0] + if get_raw: + return db_objs + return self.get_relationships(db_objs) + + @db.read_transaction + def get(self, *, id: UUID, get_raw: bool = False) -> Optional[ModelType]: + id = self._hexify(id) + db_obj = self.model.nodes.get_or_none(identifier=id) + return self._response(db_objs=db_obj, get_raw=get_raw) + + @db.read_transaction + def get_multi(self, *, skip: int = 0, limit: int = 100) -> List[ModelType]: + db_objs = self.model.nodes.all()[skip : limit + skip] + return self.get_relationships(db_objs) + + @db.read_transaction + def get_multi_by_identifiers(self, *, skip: int = 0, limit: int = 100, ids_in=List[UUID]) -> List[ModelType]: + ids_in = [self._hexify(id) for id in ids_in] + db_objs = self.model.nodes.filter(Q(identifier__in=ids_in))[skip : limit + skip] + return self.get_relationships(db_objs) + + @db.write_transaction + def create(self, *, obj_in: CreateSchemaType, get_raw: bool = False, get_first: bool = True) -> ModelType: + obj_in_data = obj_in.as_neo_dict + db_obj = self.model.create_or_update(obj_in_data) # type: ignore + return self._response(db_objs=db_obj, get_raw=get_raw, get_first=get_first) + + @db.write_transaction + def update(self, *, obj_in: UpdateSchemaType, get_raw: bool = False, get_first: bool = True) -> ModelType: + obj_in_data = obj_in.as_neo_dict + db_obj = self.model.create_or_update(obj_in_data) # type: ignore + return self._response(db_objs=db_obj, get_raw=get_raw, get_first=get_first) + + @db.write_transaction + def remove(self, *, id: UUID) -> bool: + id = self._hexify(id) + obj = self.model.nodes.get(identifier=id) + obj = obj.delete() + return obj diff --git a/{{cookiecutter.project_slug}}/backend/app/app/db/base.py b/{{cookiecutter.project_slug}}/backend/app/app/db/base.py index b7ec44fec1..cd5045031e 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/db/base.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/db/base.py @@ -1,5 +1,5 @@ # Import all the models, so that Base has them before being # imported by Alembic from app.db.base_class import Base # noqa -from app.models.item import Item # noqa from app.models.user import User # noqa +from app.models.token import Token # noqa diff --git a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/confirm_email.html b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/confirm_email.html new file mode 100644 index 0000000000..46306169fc --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/confirm_email.html @@ -0,0 +1,24 @@ +

      Confirm your email address
      Hi,
      You'll need to validate this email address before you can offer your work. All you need to do is click this button.
      Confirm your email
      Or open the following link:
      If you have no idea what this is about, then don't worry. You can safely ignore and delete this email.
      For any concerns or queries, just email me.
      {{ server_bot }} @ {{ server_name }}
      \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/new_account.html b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/new_account.html index 395c7bd156..a8eee9f24a 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/new_account.html +++ b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/new_account.html @@ -1,26 +1,24 @@ -

      {{ project_name }} - New Account
      You have a new account:
      Username: {{ username }}
      Password: {{ password }}
      Go to Dashboard

      \ No newline at end of file +}

      {{ project_name }} - New Account
      Hi,
      You have a new account:
      Username: {{ username }}
      Password: {{ password }}
      Go to Dashboard
      If you have no idea what this is about, then don't worry. You can safely ignore and delete this email.
      For any concerns or queries, just email me.
      {{ server_bot }} @ {{ server_name }}
      \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/reset_password.html b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/reset_password.html index 7fbf368b9f..22d9cfa1c6 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/reset_password.html +++ b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/reset_password.html @@ -1,26 +1,25 @@ -

      {{ project_name }} - Password Recovery
      We received a request to recover the password for user {{ username }} with email {{ email }}
      Reset your password by clicking the button below:
      Reset Password
      Or open the following link:

      The reset password link / button will expire in {{ valid_hours }} hours.
      If you didn't request a password recovery you can disregard this email.
      \ No newline at end of file +}

      {{ project_name }} - Password Recovery
      We received a request to recover the password for user {{ username }} with email {{ email }}
      Reset your password by clicking the button below:
      Reset Password
      Or open the following link:

      The reset password link / button will expire in {{ valid_hours }} hours.
      If you didn't request a password recovery you can disregard this email.
      For any concerns or queries, just email me.
      {{ server_bot }} @ {{ server_name }}
      \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/web_contact_email.html b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/web_contact_email.html new file mode 100644 index 0000000000..5b6a70568f --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/build/web_contact_email.html @@ -0,0 +1,24 @@ +

      Email from: {{ email }}
      {{ content }}
      \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/confirm_email.mjml b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/confirm_email.mjml new file mode 100644 index 0000000000..15660b463b --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/confirm_email.mjml @@ -0,0 +1,52 @@ + + + + + + + Confirm your email address + Hi, + You'll need to validate this email address before you can offer your + work. All you need to do is click this button. + + Confirm your email + + Or open the following link: + {{ link }} + If you have no idea what this is about, then don't worry. You can + safely ignore and delete this email. + For any concerns or queries, just email me. + {{ server_bot }} @ {{ server_name }} + + + + diff --git a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/new_account.mjml b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/new_account.mjml index 16c033b078..3b9751dfe3 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/new_account.mjml +++ b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/new_account.mjml @@ -1,15 +1,43 @@ - + - - {{ project_name }} - New Account - You have a new account: - Username: {{ username }} - Password: {{ password }} - Go to Dashboard - + + + {{ project_name }} - New Account + Hi, + You have a new account: + Username: {{ username }} + Password: {{ password }} + + Go to Dashboard + + If you have no idea what this is about, then don't worry. You can + safely ignore and delete this email. + For any concerns or queries, just email me. + {{ server_bot }} @ {{ server_name }} - + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/reset_password.mjml b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/reset_password.mjml index 4f45ea285b..9cc4ab835d 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/reset_password.mjml +++ b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/reset_password.mjml @@ -1,18 +1,56 @@ - + - - {{ project_name }} - Password Recovery - We received a request to recover the password for user {{ username }} - with email {{ email }} - Reset your password by clicking the button below: - Reset Password - Or open the following link: - {{ link }} - - The reset password link / button will expire in {{ valid_hours }} hours. - If you didn't request a password recovery you can disregard this email. + + + {{ project_name }} - Password Recovery + We received a request to recover the password for user {{ username }} + with email {{ email }} + Reset your password by clicking the button below: + + Reset Password + + Or open the following link: + {{ link }} + + The reset password link / button will expire in {{ valid_hours }} + hours. + If you didn't request a password recovery you can disregard this + email. + For any concerns or queries, just email me. + {{ server_bot }} @ {{ server_name }} diff --git a/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/web_contact_email.mjml b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/web_contact_email.mjml new file mode 100644 index 0000000000..f335f9505b --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/email-templates/src/web_contact_email.mjml @@ -0,0 +1,20 @@ + + + + + + + Email from: {{ email }} + {{ content }} + + + + diff --git a/{{cookiecutter.project_slug}}/backend/app/app/gdb/__init__.py b/{{cookiecutter.project_slug}}/backend/app/app/gdb/__init__.py new file mode 100644 index 0000000000..e1b8adfa32 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/gdb/__init__.py @@ -0,0 +1,3 @@ +from .base_node_class import NodeBase, MetadataBase +from .neomodel_config import NeomodelConfig +from .init_gdb import init_gdb diff --git a/{{cookiecutter.project_slug}}/backend/app/app/gdb/base_edge_class.py b/{{cookiecutter.project_slug}}/backend/app/app/gdb/base_edge_class.py new file mode 100644 index 0000000000..eaacfbfac8 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/gdb/base_edge_class.py @@ -0,0 +1,12 @@ +from neomodel import ( + StructuredRel, + BooleanProperty, + DateTimeProperty, +) +from datetime import datetime +import pytz + + +class ResourceRelationship(StructuredRel): + created = DateTimeProperty(default=lambda: datetime.now(pytz.utc)) + isActive = BooleanProperty(default=True) diff --git a/{{cookiecutter.project_slug}}/backend/app/app/gdb/base_node_class.py b/{{cookiecutter.project_slug}}/backend/app/app/gdb/base_node_class.py new file mode 100644 index 0000000000..e5b13cb3de --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/gdb/base_node_class.py @@ -0,0 +1,100 @@ +from neomodel import ( + StructuredNode, + StringProperty, + BooleanProperty, + UniqueIdProperty, + DateTimeProperty, +) +from neomodel.util import classproperty +from datetime import datetime +import pytz + + +class NodeBase(StructuredNode): + @property + def as_dict(self): + return { + k: v + for k, v in self.__dict__.items() + if v is not None and k in [name for name, _ in self.__all_properties__] + } + + @classproperty + def __unique_indexed_properties__(cls): + return tuple( + name + for name, property in cls.defined_properties(aliases=False, rels=False).items() + if property.unique_index + ) + + @classmethod + def _build_merge_query(cls, merge_params, update_existing=False, lazy=False, relationship=None): + """ + Get a tuple of a CYPHER query and a params dict for the specified MERGE query. + :param merge_params: The target node match parameters, each node must have a "create" key and optional "update". + :type merge_params: list of dict + :param update_existing: True to update properties of existing nodes, default False to keep existing values. + :type update_existing: bool + :rtype: tuple + """ + # Modified as per https://github.com/neo4j-contrib/neomodel/issues/575 + query_params = dict(merge_params=merge_params) + required_properties = cls.__required_properties__ + if update_existing: + required_properties = cls.__unique_indexed_properties__ + n_merge = "n:{0} {{{1}}}".format( + ":".join(cls.inherited_labels()), + ", ".join("{0}: params.create.{0}".format(getattr(cls, p).db_property or p) for p in required_properties), + ) + if relationship is None: + # create "simple" unwind query + query = "UNWIND $merge_params as params\n MERGE ({0})\n ".format(n_merge) + else: + # validate relationship + if not isinstance(relationship.source, StructuredNode): + raise ValueError("relationship source [{0}] is not a StructuredNode".format(repr(relationship.source))) + relation_type = relationship.definition.get("relation_type") + if not relation_type: + raise ValueError("No relation_type is specified on provided relationship") + + from neomodel.match import _rel_helper + + query_params["source_id"] = relationship.source.id + query = "MATCH (source:{0}) WHERE ID(source) = $source_id\n ".format(relationship.source.__label__) + query += "WITH source\n UNWIND $merge_params as params \n " + query += "MERGE " + query += _rel_helper( + lhs="source", + rhs=n_merge, + ident=None, + relation_type=relation_type, + direction=relationship.definition["direction"], + ) + + query += "ON CREATE SET n = params.create\n " + # if update_existing, write properties on match as well + if update_existing is True: + query += "ON MATCH SET n += params.update\n" + + # close query + if lazy: + query += "RETURN id(n)" + else: + query += "RETURN n" + + return query, query_params + + +class MetadataBase(NodeBase): + # Receive via API + # https://www.dublincore.org/specifications/dublin-core/dcmi-terms/#section-3 + identifier = UniqueIdProperty() + title = StringProperty(help_text="A human-readable title given to the resource.") + description = StringProperty(help_text="A short description of the resource.",) + # Node-specific labels + created = DateTimeProperty(default=lambda: datetime.now(pytz.utc)) + isActive = BooleanProperty(default=True, help_text="Is the resource currently updated or maintained.",) + isPrivate = BooleanProperty( + default=True, help_text="Is the resource private to team members with appropriate authorisation.", + ) + diff --git a/{{cookiecutter.project_slug}}/backend/app/app/gdb/init_gdb.py b/{{cookiecutter.project_slug}}/backend/app/app/gdb/init_gdb.py new file mode 100644 index 0000000000..036ded60b1 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/gdb/init_gdb.py @@ -0,0 +1,61 @@ +import inspect +from neomodel import StructuredNode, ClientError, install_labels, db + +# from neomodel import config +# from app.core.config import settings + +import app.models + +# from app.gdb import NeomodelConfig + +# NeomodelConfig().ready() + +# config.DATABASE_URL = "bolt://neo4j:neo4j@127.0.0.1:7687" +# config.FORCE_TIMEZONE = settings.NEO4J_FORCE_TIMEZONE +# config.MAX_CONNECTION_POOL_SIZE = settings.NEO4J_MAX_CONNECTION_POOL_SIZE + + +def createNodeIndices(): + """Create indexes for: + Node: field_name1, field_name2 + With analyzer: StandardAnalyzer ('standard') + Update as required. + """ + indices = [ + # ("indexname1", "Node", "field_name1", "simple"), + # ("indexname2", "Node", "field_name2" , "standard"), + ] + for (index, node, key, analyzer) in indices: + try: + q = f"CALL db.index.fulltext.createNodeIndex('{index}',['{node}'],['{key}'], {{analyzer: '{analyzer}'}})" + db.cypher_query(q) + except ClientError: + pass + + +def dropNodeIndices(): + indices = ["indexname1", "indexname2"] + for index in indices: + try: + q = f"CALL db.index.fulltext.drop('{index}')" + db.cypher_query(q) + except ClientError: + pass + + +def init_gdb() -> None: + # Neo4j / neomodel requires nodes to be created, but labels on the nodes + # can be created at run-time without a specific migration step + # https://stackoverflow.com/questions/1796180/how-can-i-get-a-list-of-all-classes-within-current-module-in-python + for node in [ + node + for _, node in inspect.getmembers(app.models) + if inspect.isclass(node) and issubclass(node, (StructuredNode)) + ]: + try: + install_labels(node) + except ClientError as e: + if not str(e.message).lower().startswith("an equivalent constraint already exists"): + raise e + # createNodeIndices() + diff --git a/{{cookiecutter.project_slug}}/backend/app/app/gdb/neomodel_config.py b/{{cookiecutter.project_slug}}/backend/app/app/gdb/neomodel_config.py new file mode 100644 index 0000000000..c16662a43e --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/gdb/neomodel_config.py @@ -0,0 +1,18 @@ +from neomodel import config + +from app.core.config import settings + + +class NeomodelConfig: + def read_settings(self) -> None: + # https://stackoverflow.com/a/64309171/295606 + # https://stackoverflow.com/a/66408057/295606 + # https://community.neo4j.com/t/troubleshooting-connection-issues-to-neo4j/129/10 + # Docker very non-obvious ... reach neo4j container by calling the container name + config.DATABASE_URL = settings.NEO4J_BOLT_URL + config.FORCE_TIMEZONE = settings.NEO4J_FORCE_TIMEZONE + config.AUTO_INSTALL_LABELS = settings.NEO4J_AUTO_INSTALL_LABELS + config.MAX_CONNECTION_POOL_SIZE = settings.NEO4J_MAX_CONNECTION_POOL_SIZE + + def ready(self) -> None: + self.read_settings() diff --git a/{{cookiecutter.project_slug}}/backend/app/app/models/__init__.py b/{{cookiecutter.project_slug}}/backend/app/app/models/__init__.py index a9c6bdb1ef..c81b276470 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/models/__init__.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/models/__init__.py @@ -1,2 +1,2 @@ -from .item import Item from .user import User +from .token import Token diff --git a/{{cookiecutter.project_slug}}/backend/app/app/models/item.py b/{{cookiecutter.project_slug}}/backend/app/app/models/item.py deleted file mode 100755 index 205535e4b4..0000000000 --- a/{{cookiecutter.project_slug}}/backend/app/app/models/item.py +++ /dev/null @@ -1,17 +0,0 @@ -from typing import TYPE_CHECKING - -from sqlalchemy import Column, ForeignKey, Integer, String -from sqlalchemy.orm import relationship - -from app.db.base_class import Base - -if TYPE_CHECKING: - from .user import User # noqa: F401 - - -class Item(Base): - id = Column(Integer, primary_key=True, index=True) - title = Column(String, index=True) - description = Column(String, index=True) - owner_id = Column(Integer, ForeignKey("user.id")) - owner = relationship("User", back_populates="items") diff --git a/{{cookiecutter.project_slug}}/backend/app/app/models/token.py b/{{cookiecutter.project_slug}}/backend/app/app/models/token.py new file mode 100644 index 0000000000..b38e33f67e --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/models/token.py @@ -0,0 +1,16 @@ +from typing import TYPE_CHECKING +from sqlalchemy import Column, ForeignKey, String, Boolean +from sqlalchemy.dialects.postgresql import UUID +from sqlalchemy.orm import relationship + +from app.db.base_class import Base + +if TYPE_CHECKING: + from .user import User # noqa: F401 + + +class Token(Base): + token = Column(String, primary_key=True, index=True) + is_valid = Column(Boolean(), default=True) + authenticates_id = Column(UUID(as_uuid=True), ForeignKey("user.id")) + authenticates = relationship("User", back_populates="refresh_tokens") diff --git a/{{cookiecutter.project_slug}}/backend/app/app/models/user.py b/{{cookiecutter.project_slug}}/backend/app/app/models/user.py index 1e8e1a011b..b62b6fb08d 100755 --- a/{{cookiecutter.project_slug}}/backend/app/app/models/user.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/models/user.py @@ -1,19 +1,22 @@ from typing import TYPE_CHECKING -from sqlalchemy import Boolean, Column, Integer, String +from sqlalchemy import Boolean, Column, String from sqlalchemy.orm import relationship +from sqlalchemy.dialects.postgresql import UUID +from uuid import uuid4 from app.db.base_class import Base if TYPE_CHECKING: - from .item import Item # noqa: F401 + from . import Token # noqa: F401 class User(Base): - id = Column(Integer, primary_key=True, index=True) + id = Column(UUID(as_uuid=True), primary_key=True, index=True, default=uuid4) full_name = Column(String, index=True) email = Column(String, unique=True, index=True, nullable=False) hashed_password = Column(String, nullable=False) + email_validated = Column(Boolean(), default=False) is_active = Column(Boolean(), default=True) is_superuser = Column(Boolean(), default=False) - items = relationship("Item", back_populates="owner") + refresh_tokens = relationship("Token", back_populates="authenticates", lazy="dynamic") diff --git a/{{cookiecutter.project_slug}}/backend/app/app/schema_types/__init__.py b/{{cookiecutter.project_slug}}/backend/app/app/schema_types/__init__.py new file mode 100644 index 0000000000..54d989e4b5 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/schema_types/__init__.py @@ -0,0 +1 @@ +from .base_type import BaseEnum diff --git a/{{cookiecutter.project_slug}}/backend/app/app/schema_types/base_type.py b/{{cookiecutter.project_slug}}/backend/app/app/schema_types/base_type.py new file mode 100644 index 0000000000..39b43c8188 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/schema_types/base_type.py @@ -0,0 +1,25 @@ +from enum import Enum + + +class BaseEnum(str, Enum): + # noinspection PyMethodParameters + # cf https://gitter.im/tiangolo/fastapi?at=5d775f4050508949d30b6eec + def _generate_next_value_(name, start, count, last_values) -> str: # type: ignore + """ + Uses the name as the automatic value, rather than an integer + + See https://docs.python.org/3/library/enum.html#using-automatic-values for reference + """ + return name + + @classmethod + def as_dict(cls): + member_dict = {role: member.value for role, member in cls.__members__.items()} + return member_dict + + @classmethod + def _missing_(cls, value): + # https://stackoverflow.com/a/68311691/295606 + for member in cls: + if member.value.upper() == value.upper(): + return member diff --git a/{{cookiecutter.project_slug}}/backend/app/app/schemas/__init__.py b/{{cookiecutter.project_slug}}/backend/app/app/schemas/__init__.py index 6b41593dbb..bf48e56d84 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/schemas/__init__.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/schemas/__init__.py @@ -1,4 +1,5 @@ -from .item import Item, ItemCreate, ItemInDB, ItemUpdate +from .base_schema import BaseSchema, MetadataBaseSchema, MetadataBaseCreate, MetadataBaseUpdate, MetadataBaseInDBBase from .msg import Msg -from .token import Token, TokenPayload -from .user import User, UserCreate, UserInDB, UserUpdate +from .token import RefreshTokenCreate, RefreshTokenUpdate, RefreshToken, Token, TokenPayload +from .user import User, UserCreate, UserInDB, UserUpdate, UserLogin, UserRefresh +from .emails import EmailContent, EmailValidation diff --git a/{{cookiecutter.project_slug}}/backend/app/app/schemas/base_schema.py b/{{cookiecutter.project_slug}}/backend/app/app/schemas/base_schema.py new file mode 100644 index 0000000000..2e6460d8f4 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/schemas/base_schema.py @@ -0,0 +1,71 @@ +from __future__ import annotations +from pydantic import BaseModel, Field, validator, constr +from typing import Optional, List +from uuid import UUID +from datetime import date, datetime +import json + +from app.schema_types import BaseEnum + + +class BaseSchema(BaseModel): + @property + def as_db_dict(self): + to_db = self.dict(exclude_defaults=True, exclude_none=True, exclude={"identifier, id"}) + for key in ["id", "identifier"]: + if key in self.dict().keys(): + to_db[key] = self.dict()[key].hex + return to_db + + @property + def as_neo_dict(self): + to_db = self.json(exclude_defaults=True, exclude_none=True, exclude={"identifier, id"}) + to_db = json.loads(to_db) + self_dict = self.dict() + for key in self_dict.keys(): + if isinstance(self_dict[key], BaseEnum): + # Uppercase the Enum values + to_db[key] = to_db[key].upper() + if isinstance(self_dict[key], datetime): + to_db[key] = datetime.fromisoformat(to_db[key]) + if isinstance(self_dict[key], date): + to_db[key] = date.fromisoformat(to_db[key]) + if key in ["id", "identifier"]: + to_db[key] = self_dict[key].hex + return to_db + + +class MetadataBaseSchema(BaseSchema): + # Receive via API + # https://www.dublincore.org/specifications/dublin-core/dcmi-terms/#section-3 + title: Optional[str] = Field(None, description="A human-readable title given to the resource.") + description: Optional[str] = Field( + None, description="A short description of the resource.", + ) + isActive: Optional[bool] = Field(default=True, description="Whether the resource is still actively maintained.") + isPrivate: Optional[bool] = Field( + default=True, description="Whether the resource is private to team members with appropriate authorisation." + ) + + +class MetadataBaseCreate(MetadataBaseSchema): + pass + + +class MetadataBaseUpdate(MetadataBaseSchema): + identifier: UUID = Field(..., description="Automatically generated unique identity for the resource.") + + +class MetadataBaseInDBBase(MetadataBaseSchema): + # Identifier managed programmatically + identifier: UUID = Field(..., description="Automatically generated unique identity for the resource.") + created: date = Field(..., description="Automatically generated date resource was created.") + isActive: bool = Field(..., description="Whether the resource is still actively maintained.") + isPrivate: bool = Field( + ..., description="Whether the resource is private to team members with appropriate authorisation." + ) + + class Config: + # https://github.com/samuelcolvin/pydantic/issues/1334#issuecomment-745434257 + # Call PydanticModel.from_orm(dbQuery) + orm_mode = True diff --git a/{{cookiecutter.project_slug}}/backend/app/app/schemas/emails.py b/{{cookiecutter.project_slug}}/backend/app/app/schemas/emails.py new file mode 100644 index 0000000000..7e0712714a --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/schemas/emails.py @@ -0,0 +1,15 @@ +from pydantic import BaseModel, EmailStr +from typing import List + + +class EmailContent(BaseModel): + email: EmailStr + subject: str + content: str + + +class EmailValidation(BaseModel): + email: EmailStr + subject: str + token: str + diff --git a/{{cookiecutter.project_slug}}/backend/app/app/schemas/item.py b/{{cookiecutter.project_slug}}/backend/app/app/schemas/item.py deleted file mode 100644 index ac992cf2b1..0000000000 --- a/{{cookiecutter.project_slug}}/backend/app/app/schemas/item.py +++ /dev/null @@ -1,39 +0,0 @@ -from typing import Optional - -from pydantic import BaseModel - - -# Shared properties -class ItemBase(BaseModel): - title: Optional[str] = None - description: Optional[str] = None - - -# Properties to receive on item creation -class ItemCreate(ItemBase): - title: str - - -# Properties to receive on item update -class ItemUpdate(ItemBase): - pass - - -# Properties shared by models stored in DB -class ItemInDBBase(ItemBase): - id: int - title: str - owner_id: int - - class Config: - orm_mode = True - - -# Properties to return to client -class Item(ItemInDBBase): - pass - - -# Properties properties stored in DB -class ItemInDB(ItemInDBBase): - pass diff --git a/{{cookiecutter.project_slug}}/backend/app/app/schemas/token.py b/{{cookiecutter.project_slug}}/backend/app/app/schemas/token.py index ea85b460da..11c3431bfe 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/schemas/token.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/schemas/token.py @@ -1,12 +1,32 @@ from typing import Optional +from pydantic import BaseModel, Field +from uuid import UUID -from pydantic import BaseModel + +class RefreshTokenBase(BaseModel): + token: str + is_valid: bool = True + + +class RefreshTokenCreate(RefreshTokenBase): + pass + + +class RefreshTokenUpdate(RefreshTokenBase): + is_valid: bool = Field(..., description="Deliberately disable a refresh token.") + + +class RefreshToken(RefreshTokenUpdate): + class Config: + orm_mode = True class Token(BaseModel): access_token: str + refresh_token: str token_type: str class TokenPayload(BaseModel): - sub: Optional[int] = None + sub: Optional[UUID] = None + refresh: Optional[bool] = False diff --git a/{{cookiecutter.project_slug}}/backend/app/app/schemas/user.py b/{{cookiecutter.project_slug}}/backend/app/app/schemas/user.py index 7f5c85ac68..734f48faaf 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/schemas/user.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/schemas/user.py @@ -1,11 +1,18 @@ from typing import Optional - +from uuid import UUID from pydantic import BaseModel, EmailStr +class UserLogin(BaseModel): + username: str + password: str + +class UserRefresh(BaseModel): + refresh_token: str # Shared properties class UserBase(BaseModel): email: Optional[EmailStr] = None + email_validated: Optional[bool] = False is_active: Optional[bool] = True is_superuser: bool = False full_name: Optional[str] = None @@ -23,7 +30,7 @@ class UserUpdate(UserBase): class UserInDBBase(UserBase): - id: Optional[int] = None + id: Optional[UUID] = None class Config: orm_mode = True diff --git a/{{cookiecutter.project_slug}}/backend/app/app/utilities/__init__.py b/{{cookiecutter.project_slug}}/backend/app/app/utilities/__init__.py new file mode 100644 index 0000000000..413efa0ad6 --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/utilities/__init__.py @@ -0,0 +1,11 @@ +from .email import ( + send_email, + send_test_email, + send_web_contact_email, + send_reset_password_email, + send_new_account_email, + send_email_validation_email, + generate_password_reset_token, + verify_password_reset_token, +) + diff --git a/{{cookiecutter.project_slug}}/backend/app/app/utils.py b/{{cookiecutter.project_slug}}/backend/app/app/utilities/email.py similarity index 72% rename from {{cookiecutter.project_slug}}/backend/app/app/utils.py rename to {{cookiecutter.project_slug}}/backend/app/app/utilities/email.py index b1aba6bc00..2ca7c9e46c 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/utils.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/utilities/email.py @@ -8,6 +8,7 @@ from jose import jwt from app.core.config import settings +from app.schemas import EmailContent, EmailValidation def send_email( @@ -29,10 +30,40 @@ def send_email( smtp_options["user"] = settings.SMTP_USER if settings.SMTP_PASSWORD: smtp_options["password"] = settings.SMTP_PASSWORD + # Add common template environment elements + environment["server_host"] = settings.SERVER_HOST + environment["server_name"] = settings.SERVER_NAME + environment["server_bot"] = settings.SERVER_BOT response = message.send(to=email_to, render=environment, smtp=smtp_options) logging.info(f"send email result: {response}") +def send_email_validation_email(data: EmailValidation) -> None: + subject = f"{settings.PROJECT_NAME} - {data.subject}" + server_host = settings.SERVER_HOST + link = f"{server_host}?token={data.token}" + with open(Path(settings.EMAIL_TEMPLATES_DIR) / "confirm_email.html") as f: + template_str = f.read() + send_email( + email_to=data.email, + subject_template=subject, + html_template=template_str, + environment={"link": link}, + ) + + +def send_web_contact_email(data: EmailContent) -> None: + subject = f"{settings.PROJECT_NAME} - {data.subject}" + with open(Path(settings.EMAIL_TEMPLATES_DIR) / "web_contact_email.html") as f: + template_str = f.read() + send_email( + email_to=settings.EMAILS_TO_EMAIL, + subject_template=subject, + html_template=template_str, + environment={"content": data.content, "email": data.email}, + ) + + def send_test_email(email_to: str) -> None: project_name = settings.PROJECT_NAME subject = f"{project_name} - Test email" @@ -93,7 +124,9 @@ def generate_password_reset_token(email: str) -> str: expires = now + delta exp = expires.timestamp() encoded_jwt = jwt.encode( - {"exp": exp, "nbf": now, "sub": email}, settings.SECRET_KEY, algorithm="HS256", + {"exp": exp, "nbf": now, "validate": email}, + settings.SECRET_KEY, + algorithm="HS256", ) return encoded_jwt @@ -101,6 +134,6 @@ def generate_password_reset_token(email: str) -> str: def verify_password_reset_token(token: str) -> Optional[str]: try: decoded_token = jwt.decode(token, settings.SECRET_KEY, algorithms=["HS256"]) - return decoded_token["email"] + return decoded_token["validate"] except jwt.JWTError: return None diff --git a/{{cookiecutter.project_slug}}/backend/app/app/worker/__init__.py b/{{cookiecutter.project_slug}}/backend/app/app/worker/__init__.py new file mode 100644 index 0000000000..34da984e3a --- /dev/null +++ b/{{cookiecutter.project_slug}}/backend/app/app/worker/__init__.py @@ -0,0 +1,3 @@ +from app.core.celery_app import celery_app + +from .tests import test_celery diff --git a/{{cookiecutter.project_slug}}/backend/app/app/worker.py b/{{cookiecutter.project_slug}}/backend/app/app/worker/tests.py similarity index 72% rename from {{cookiecutter.project_slug}}/backend/app/app/worker.py rename to {{cookiecutter.project_slug}}/backend/app/app/worker/tests.py index 5fea53c961..4b26e81593 100644 --- a/{{cookiecutter.project_slug}}/backend/app/app/worker.py +++ b/{{cookiecutter.project_slug}}/backend/app/app/worker/tests.py @@ -1,4 +1,5 @@ from raven import Client +import asyncio from app.core.celery_app import celery_app from app.core.config import settings @@ -7,5 +8,6 @@ @celery_app.task(acks_late=True) -def test_celery(word: str) -> str: +async def test_celery(word: str) -> str: + await asyncio.sleep(5) return f"test task return {word}" diff --git a/{{cookiecutter.project_slug}}/backend/app/poetry.lock b/{{cookiecutter.project_slug}}/backend/app/poetry.lock index 2182b59d19..c3b47c4796 100644 --- a/{{cookiecutter.project_slug}}/backend/app/poetry.lock +++ b/{{cookiecutter.project_slug}}/backend/app/poetry.lock @@ -1,92 +1,91 @@ [[package]] name = "alembic" -version = "1.6.5" +version = "1.8.1" description = "A database migration tool for SQLAlchemy." category = "main" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +python-versions = ">=3.7" [package.dependencies] Mako = "*" -python-dateutil = "*" -python-editor = ">=0.3" SQLAlchemy = ">=1.3.0" +[package.extras] +tz = ["python-dateutil"] + [[package]] name = "amqp" -version = "2.6.1" +version = "5.1.1" description = "Low-level AMQP client for Python (fork of amqplib)." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.6" [package.dependencies] -vine = ">=1.1.3,<5.0.0a1" +vine = ">=5.0.0" [[package]] -name = "appdirs" -version = "1.4.4" -description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -category = "dev" +name = "anyio" +version = "3.6.2" +description = "High level compatibility layer for multiple asynchronous event loop implementations" +category = "main" optional = false -python-versions = "*" +python-versions = ">=3.6.2" + +[package.dependencies] +idna = ">=2.8" +sniffio = ">=1.1" + +[package.extras] +doc = ["packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] +test = ["contextlib2", "coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "mock (>=4)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (<0.15)", "uvloop (>=0.15)"] +trio = ["trio (>=0.16,<0.22)"] [[package]] name = "asgiref" -version = "3.4.1" +version = "3.5.2" description = "ASGI specs, helper code, and adapters" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.extras] -tests = ["pytest", "pytest-asyncio", "mypy (>=0.800)"] - -[[package]] -name = "atomicwrites" -version = "1.4.0" -description = "Atomic file writes." -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +tests = ["mypy (>=0.800)", "pytest", "pytest-asyncio"] [[package]] name = "attrs" -version = "21.2.0" +version = "22.1.0" description = "Classes Without Boilerplate" -category = "main" +category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.5" [package.extras] -dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit"] -docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"] -tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface"] -tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins"] +dev = ["cloudpickle", "coverage[toml] (>=5.0.2)", "furo", "hypothesis", "mypy (>=0.900,!=0.940)", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "sphinx", "sphinx-notfound-page", "zope.interface"] +docs = ["furo", "sphinx", "sphinx-notfound-page", "zope.interface"] +tests = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy (>=0.900,!=0.940)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "zope.interface"] +tests-no-zope = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy (>=0.900,!=0.940)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins"] [[package]] name = "autoflake" -version = "1.4" +version = "2.0.0" description = "Removes unused imports and unused variables" category = "dev" optional = false -python-versions = "*" +python-versions = ">=3.7" [package.dependencies] -pyflakes = ">=1.1.0" +pyflakes = ">=3.0.0" +tomli = {version = ">=2.0.1", markers = "python_version < \"3.11\""} [[package]] name = "bcrypt" -version = "3.2.0" +version = "4.0.1" description = "Modern password hashing for your software and your servers" category = "main" optional = false python-versions = ">=3.6" -[package.dependencies] -cffi = ">=1.1" -six = ">=1.4.1" - [package.extras] tests = ["pytest (>=3.2.1,!=3.3.0)"] typecheck = ["mypy"] @@ -101,75 +100,80 @@ python-versions = "*" [[package]] name = "black" -version = "19.10b0" +version = "22.12.0" description = "The uncompromising code formatter." category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] -appdirs = "*" -attrs = ">=18.1.0" -click = ">=6.5" -pathspec = ">=0.6,<1" -regex = "*" -toml = ">=0.9.4" -typed-ast = ">=1.4.0" +click = ">=8.0.0" +mypy-extensions = ">=0.4.3" +pathspec = ">=0.9.0" +platformdirs = ">=2" +tomli = {version = ">=1.1.0", markers = "python_full_version < \"3.11.0a7\""} +typing-extensions = {version = ">=3.10.0.0", markers = "python_version < \"3.10\""} [package.extras] -d = ["aiohttp (>=3.3.2)", "aiohttp-cors"] +colorama = ["colorama (>=0.4.3)"] +d = ["aiohttp (>=3.7.4)"] +jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"] +uvloop = ["uvloop (>=0.15.2)"] [[package]] name = "cachetools" -version = "4.2.2" +version = "5.2.0" description = "Extensible memoizing collections and decorators" category = "main" optional = false -python-versions = "~=3.5" +python-versions = "~=3.7" [[package]] name = "celery" -version = "4.4.7" +version = "5.2.7" description = "Distributed Task Queue." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.7" [package.dependencies] -billiard = ">=3.6.3.0,<4.0" -kombu = ">=4.6.10,<4.7" -pytz = ">0.0-dev" -vine = "1.3.0" +billiard = ">=3.6.4.0,<4.0" +click = ">=8.0.3,<9.0" +click-didyoumean = ">=0.0.3" +click-plugins = ">=1.1.1" +click-repl = ">=0.2.0" +kombu = ">=5.2.3,<6.0" +pytz = ">=2021.3" +vine = ">=5.0.0,<6.0" [package.extras] arangodb = ["pyArango (>=1.3.2)"] auth = ["cryptography"] -azureblockblob = ["azure-storage (==0.36.0)", "azure-common (==1.1.5)", "azure-storage-common (==1.1.0)"] +azureblockblob = ["azure-storage-blob (==12.9.0)"] brotli = ["brotli (>=1.0.0)", "brotlipy (>=0.7.0)"] cassandra = ["cassandra-driver (<3.21.0)"] -consul = ["python-consul"] +consul = ["python-consul2"] cosmosdbsql = ["pydocumentdb (==2.3.2)"] -couchbase = ["couchbase-cffi (<3.0.0)", "couchbase (<3.0.0)"] +couchbase = ["couchbase (>=3.0.0)"] couchdb = ["pycouchdb"] django = ["Django (>=1.11)"] dynamodb = ["boto3 (>=1.9.178)"] elasticsearch = ["elasticsearch"] -eventlet = ["eventlet (>=0.24.1)"] -gevent = ["gevent"] +eventlet = ["eventlet (>=0.32.0)"] +gevent = ["gevent (>=1.5.0)"] librabbitmq = ["librabbitmq (>=1.5.0)"] -lzma = ["backports.lzma"] memcache = ["pylibmc"] -mongodb = ["pymongo[srv] (>=3.3.0)"] +mongodb = ["pymongo[srv] (>=3.11.1)"] msgpack = ["msgpack"] pymemcache = ["python-memcached"] pyro = ["pyro4"] -redis = ["redis (>=3.2.0)"] -riak = ["riak (>=2.0)"] +pytest = ["pytest-celery"] +redis = ["redis (>=3.4.1,!=4.0.0,!=4.0.1)"] s3 = ["boto3 (>=1.9.125)"] slmq = ["softlayer-messaging (>=1.0.3)"] solar = ["ephem"] sqlalchemy = ["sqlalchemy"] -sqs = ["boto3 (>=1.9.125)", "pycurl (==7.43.0.5)"] +sqs = ["kombu[sqs]"] tblib = ["tblib (>=1.3.0)", "tblib (>=1.5.0)"] yaml = ["PyYAML (>=3.10)"] zookeeper = ["kazoo (>=1.3.1)"] @@ -177,15 +181,15 @@ zstd = ["zstandard"] [[package]] name = "certifi" -version = "2021.5.30" +version = "2022.12.7" description = "Python package for providing Mozilla's CA Bundle." category = "main" optional = false -python-versions = "*" +python-versions = ">=3.6" [[package]] name = "cffi" -version = "1.14.6" +version = "1.15.1" description = "Foreign Function Interface for Python calling C code." category = "main" optional = false @@ -196,56 +200,97 @@ pycparser = "*" [[package]] name = "chardet" -version = "4.0.0" -description = "Universal encoding detector for Python 2 and 3" +version = "5.1.0" +description = "Universal encoding detector for Python 3" category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.7" [[package]] name = "charset-normalizer" -version = "2.0.3" +version = "2.1.1" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." category = "main" optional = false -python-versions = ">=3.5.0" +python-versions = ">=3.6.0" [package.extras] -unicode_backport = ["unicodedata2"] +unicode-backport = ["unicodedata2"] [[package]] name = "click" -version = "8.0.1" +version = "8.1.3" description = "Composable command line interface toolkit" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} +[[package]] +name = "click-didyoumean" +version = "0.3.0" +description = "Enables git-like *did-you-mean* feature in click" +category = "main" +optional = false +python-versions = ">=3.6.2,<4.0.0" + +[package.dependencies] +click = ">=7" + +[[package]] +name = "click-plugins" +version = "1.1.1" +description = "An extension module for click to enable registering CLI commands via setuptools entry-points." +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +click = ">=4.0" + +[package.extras] +dev = ["coveralls", "pytest (>=3.6)", "pytest-cov", "wheel"] + +[[package]] +name = "click-repl" +version = "0.2.0" +description = "REPL plugin for Click" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +click = "*" +prompt-toolkit = "*" +six = "*" + [[package]] name = "colorama" -version = "0.4.4" +version = "0.4.6" description = "Cross-platform colored terminal text." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" [[package]] name = "coverage" -version = "5.5" +version = "6.5.0" description = "Code coverage measurement for Python" category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" +python-versions = ">=3.7" + +[package.dependencies] +tomli = {version = "*", optional = true, markers = "python_full_version <= \"3.11.0a6\" and extra == \"toml\""} [package.extras] -toml = ["toml"] +toml = ["tomli"] [[package]] name = "cryptography" -version = "3.4.7" +version = "38.0.4" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." category = "main" optional = false @@ -256,50 +301,51 @@ cffi = ">=1.12" [package.extras] docs = ["sphinx (>=1.6.5,!=1.8.0,!=3.1.0,!=3.1.1)", "sphinx-rtd-theme"] -docstest = ["doc8", "pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"] +docstest = ["pyenchant (>=1.6.11)", "sphinxcontrib-spelling (>=4.0.1)", "twine (>=1.12.0)"] pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"] sdist = ["setuptools-rust (>=0.11.4)"] ssh = ["bcrypt (>=3.1.5)"] -test = ["pytest (>=6.0)", "pytest-cov", "pytest-subtests", "pytest-xdist", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"] +test = ["hypothesis (>=1.11.4,!=3.79.2)", "iso8601", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-subtests", "pytest-xdist", "pytz"] [[package]] name = "cssselect" -version = "1.1.0" +version = "1.2.0" description = "cssselect parses CSS3 Selectors and translates them to XPath 1.0" category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.7" [[package]] name = "cssutils" -version = "2.3.0" +version = "2.6.0" description = "A CSS Cascading Style Sheets library for Python" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.extras] -docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"] -testing = ["pytest (>=4.6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "mock", "lxml", "cssselect", "pytest-black (>=0.3.7)", "pytest-mypy", "importlib-resources"] +docs = ["jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx"] +testing = ["cssselect", "flake8 (<5)", "importlib-resources", "jaraco.test (>=5.1)", "lxml", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] [[package]] name = "dnspython" -version = "2.1.0" +version = "2.2.1" description = "DNS toolkit" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.6,<4.0" [package.extras] -dnssec = ["cryptography (>=2.6)"] -doh = ["requests", "requests-toolbelt"] -idna = ["idna (>=2.1)"] -curio = ["curio (>=1.2)", "sniffio (>=1.1)"] -trio = ["trio (>=0.14.0)", "sniffio (>=1.1)"] +curio = ["curio (>=1.2,<2.0)", "sniffio (>=1.1,<2.0)"] +dnssec = ["cryptography (>=2.6,<37.0)"] +doh = ["h2 (>=4.1.0)", "httpx (>=0.21.1)", "requests (>=2.23.0,<3.0.0)", "requests-toolbelt (>=0.9.1,<0.10.0)"] +idna = ["idna (>=2.1,<4.0)"] +trio = ["trio (>=0.14,<0.20)"] +wmi = ["wmi (>=1.5.1,<2.0.0)"] [[package]] name = "ecdsa" -version = "0.17.0" +version = "0.18.0" description = "ECDSA cryptographic signature library (pure python)" category = "main" optional = false @@ -314,8 +360,8 @@ gmpy2 = ["gmpy2"] [[package]] name = "email-validator" -version = "1.1.3" -description = "A robust email syntax and deliverability validation library for Python 2.x/3.x." +version = "1.3.0" +description = "A robust email address syntax and deliverability validation library." category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" @@ -326,7 +372,7 @@ idna = ">=2.0.0" [[package]] name = "emails" -version = "0.5.15" +version = "0.6" description = "Modern python library for emails." category = "main" optional = false @@ -340,36 +386,59 @@ premailer = "*" python-dateutil = "*" requests = "*" +[[package]] +name = "exceptiongroup" +version = "1.0.4" +description = "Backport of PEP 654 (exception groups)" +category = "dev" +optional = false +python-versions = ">=3.7" + +[package.extras] +test = ["pytest (>=6)"] + [[package]] name = "fastapi" -version = "0.66.0" +version = "0.88.0" description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] pydantic = ">=1.6.2,<1.7 || >1.7,<1.7.1 || >1.7.1,<1.7.2 || >1.7.2,<1.7.3 || >1.7.3,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0" -starlette = "0.14.2" +starlette = "0.22.0" [package.extras] -all = ["requests (>=2.24.0,<3.0.0)", "aiofiles (>=0.5.0,<0.6.0)", "jinja2 (>=2.11.2,<3.0.0)", "python-multipart (>=0.0.5,<0.0.6)", "itsdangerous (>=1.1.0,<2.0.0)", "pyyaml (>=5.3.1,<6.0.0)", "graphene (>=2.1.8,<3.0.0)", "ujson (>=4.0.1,<5.0.0)", "orjson (>=3.2.1,<4.0.0)", "email_validator (>=1.1.1,<2.0.0)", "uvicorn[standard] (>=0.12.0,<0.14.0)", "async_exit_stack (>=1.0.1,<2.0.0)", "async_generator (>=1.10,<2.0.0)"] -dev = ["python-jose[cryptography] (>=3.1.0,<4.0.0)", "passlib[bcrypt] (>=1.7.2,<2.0.0)", "autoflake (>=1.3.1,<2.0.0)", "flake8 (>=3.8.3,<4.0.0)", "uvicorn[standard] (>=0.12.0,<0.14.0)", "graphene (>=2.1.8,<3.0.0)"] -doc = ["mkdocs (>=1.1.2,<2.0.0)", "mkdocs-material (>=7.1.9,<8.0.0)", "markdown-include (>=0.6.0,<0.7.0)", "mkdocs-markdownextradata-plugin (>=0.1.7,<0.2.0)", "typer-cli (>=0.0.12,<0.0.13)", "pyyaml (>=5.3.1,<6.0.0)"] -test = ["pytest (==5.4.3)", "pytest-cov (==2.10.0)", "pytest-asyncio (>=0.14.0,<0.15.0)", "mypy (==0.812)", "flake8 (>=3.8.3,<4.0.0)", "black (==20.8b1)", "isort (>=5.0.6,<6.0.0)", "requests (>=2.24.0,<3.0.0)", "httpx (>=0.14.0,<0.15.0)", "email_validator (>=1.1.1,<2.0.0)", "sqlalchemy (>=1.3.18,<1.4.0)", "peewee (>=3.13.3,<4.0.0)", "databases[sqlite] (>=0.3.2,<0.4.0)", "orjson (>=3.2.1,<4.0.0)", "ujson (>=4.0.1,<5.0.0)", "async_exit_stack (>=1.0.1,<2.0.0)", "async_generator (>=1.10,<2.0.0)", "python-multipart (>=0.0.5,<0.0.6)", "aiofiles (>=0.5.0,<0.6.0)", "flask (>=1.1.2,<2.0.0)"] +all = ["email-validator (>=1.1.1)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "python-multipart (>=0.0.5)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] +dev = ["pre-commit (>=2.17.0,<3.0.0)", "ruff (==0.0.138)", "uvicorn[standard] (>=0.12.0,<0.19.0)"] +doc = ["mdx-include (>=1.4.1,<2.0.0)", "mkdocs (>=1.1.2,<2.0.0)", "mkdocs-markdownextradata-plugin (>=0.1.7,<0.3.0)", "mkdocs-material (>=8.1.4,<9.0.0)", "pyyaml (>=5.3.1,<7.0.0)", "typer[all] (>=0.6.1,<0.7.0)"] +test = ["anyio[trio] (>=3.2.1,<4.0.0)", "black (==22.10.0)", "coverage[toml] (>=6.5.0,<7.0)", "databases[sqlite] (>=0.3.2,<0.7.0)", "email-validator (>=1.1.1,<2.0.0)", "flask (>=1.1.2,<3.0.0)", "httpx (>=0.23.0,<0.24.0)", "isort (>=5.0.6,<6.0.0)", "mypy (==0.982)", "orjson (>=3.2.1,<4.0.0)", "passlib[bcrypt] (>=1.7.2,<2.0.0)", "peewee (>=3.13.3,<4.0.0)", "pytest (>=7.1.3,<8.0.0)", "python-jose[cryptography] (>=3.3.0,<4.0.0)", "python-multipart (>=0.0.5,<0.0.6)", "pyyaml (>=5.3.1,<7.0.0)", "ruff (==0.0.138)", "sqlalchemy (>=1.3.18,<=1.4.41)", "types-orjson (==3.6.2)", "types-ujson (==5.5.0)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0,<6.0.0)"] [[package]] name = "flake8" -version = "3.9.2" +version = "6.0.0" description = "the modular source code checker: pep8 pyflakes and co" category = "dev" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +python-versions = ">=3.8.1" [package.dependencies] -mccabe = ">=0.6.0,<0.7.0" -pycodestyle = ">=2.7.0,<2.8.0" -pyflakes = ">=2.3.0,<2.4.0" +mccabe = ">=0.7.0,<0.8.0" +pycodestyle = ">=2.10.0,<2.11.0" +pyflakes = ">=3.0.0,<3.1.0" + +[[package]] +name = "greenlet" +version = "2.0.1" +description = "Lightweight in-process concurrent programming" +category = "main" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" + +[package.extras] +docs = ["Sphinx", "docutils (<0.18)"] +test = ["faulthandler", "objgraph", "psutil"] [[package]] name = "gunicorn" @@ -379,6 +448,9 @@ category = "main" optional = false python-versions = ">=3.5" +[package.dependencies] +setuptools = ">=3.0" + [package.extras] eventlet = ["eventlet (>=0.24.1)"] gevent = ["gevent (>=1.4.0)"] @@ -387,26 +459,64 @@ tornado = ["tornado (>=0.2)"] [[package]] name = "h11" -version = "0.12.0" +version = "0.14.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" + +[[package]] +name = "httpcore" +version = "0.16.2" +description = "A minimal low-level HTTP client." +category = "main" +optional = false +python-versions = ">=3.7" + +[package.dependencies] +anyio = ">=3.0,<5.0" +certifi = "*" +h11 = ">=0.13,<0.15" +sniffio = ">=1.0.0,<2.0.0" + +[package.extras] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (>=1.0.0,<2.0.0)"] [[package]] name = "httptools" -version = "0.2.0" +version = "0.5.0" description = "A collection of framework independent HTTP protocol utils." category = "main" optional = false -python-versions = "*" +python-versions = ">=3.5.0" + +[package.extras] +test = ["Cython (>=0.29.24,<0.30.0)"] + +[[package]] +name = "httpx" +version = "0.23.1" +description = "The next generation HTTP client." +category = "main" +optional = false +python-versions = ">=3.7" + +[package.dependencies] +certifi = "*" +httpcore = ">=0.15.0,<0.17.0" +rfc3986 = {version = ">=1.3,<2", extras = ["idna2008"]} +sniffio = "*" [package.extras] -test = ["Cython (==0.29.22)"] +brotli = ["brotli", "brotlicffi"] +cli = ["click (>=8.0.0,<9.0.0)", "pygments (>=2.0.0,<3.0.0)", "rich (>=10,<13)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (>=1.0.0,<2.0.0)"] [[package]] name = "idna" -version = "3.2" +version = "3.4" description = "Internationalized Domain Names in Applications (IDNA)" category = "main" optional = false @@ -414,81 +524,89 @@ python-versions = ">=3.5" [[package]] name = "inboard" -version = "0.10.2" +version = "0.37.0" description = "Docker images and utilities to power your Python APIs and help you ship faster." category = "main" optional = false -python-versions = ">=3.8,<4.0" +python-versions = ">=3.8.1,<4.0.0" [package.dependencies] -fastapi = {version = ">=0.66,<0.67", optional = true, markers = "extra == \"all\" or extra == \"fastapi\""} +fastapi = {version = ">=0.88,<0.89", optional = true, markers = "extra == \"all\" or extra == \"fastapi\""} gunicorn = ">=20,<21" -toml = {version = ">=0.10", optional = true, markers = "extra == \"all\" or extra == \"fastapi\""} -uvicorn = {version = ">=0.14,<0.15", extras = ["standard"]} +uvicorn = {version = ">=0.17,<0.18", extras = ["standard"]} [package.extras] -all = ["fastapi (>=0.66,<0.67)", "toml (>=0.10)"] -fastapi = ["fastapi (>=0.66,<0.67)", "toml (>=0.10)"] -starlette = ["starlette (>=0.14,<0.15)"] +all = ["fastapi (>=0.88,<0.89)"] +fastapi = ["fastapi (>=0.88,<0.89)"] +starlette = ["starlette (>=0.22,<0.23)"] + +[[package]] +name = "iniconfig" +version = "1.1.1" +description = "iniconfig: brain-dead simple config-ini parsing" +category = "dev" +optional = false +python-versions = "*" [[package]] name = "isort" -version = "4.3.21" +version = "5.11.2" description = "A Python utility / library to sort Python imports." category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.7.0" [package.extras] -pipfile = ["pipreqs", "requirementslib"] -pyproject = ["toml"] -requirements = ["pipreqs", "pip-api"] -xdg_home = ["appdirs (>=1.4.0)"] +colors = ["colorama (>=0.4.3,<0.5.0)"] +pipfile-deprecated-finder = ["pipreqs", "requirementslib"] +plugins = ["setuptools"] +requirements-deprecated-finder = ["pip-api", "pipreqs"] [[package]] name = "jinja2" -version = "2.11.3" +version = "3.1.2" description = "A very fast and expressive template engine." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.7" [package.dependencies] -MarkupSafe = ">=0.23" +MarkupSafe = ">=2.0" [package.extras] -i18n = ["Babel (>=0.8)"] +i18n = ["Babel (>=2.7)"] [[package]] name = "kombu" -version = "4.6.11" +version = "5.2.4" description = "Messaging library for Python." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.7" [package.dependencies] -amqp = ">=2.6.0,<2.7" +amqp = ">=5.0.9,<6.0.0" +vine = "*" [package.extras] -azureservicebus = ["azure-servicebus (>=0.21.1)"] +azureservicebus = ["azure-servicebus (>=7.0.0)"] azurestoragequeues = ["azure-storage-queue"] consul = ["python-consul (>=0.6.0)"] -librabbitmq = ["librabbitmq (>=1.5.2)"] -mongodb = ["pymongo (>=3.3.0)"] +librabbitmq = ["librabbitmq (>=2.0.0)"] +mongodb = ["pymongo (>=3.3.0,<3.12.1)"] msgpack = ["msgpack"] pyro = ["pyro4"] qpid = ["qpid-python (>=0.26)", "qpid-tools (>=0.26)"] -redis = ["redis (>=3.3.11)"] +redis = ["redis (>=3.4.1,!=4.0.0,!=4.0.1)"] slmq = ["softlayer-messaging (>=1.0.3)"] sqlalchemy = ["sqlalchemy"] -sqs = ["boto3 (>=1.4.4)", "pycurl (==7.43.0.2)"] +sqs = ["boto3 (>=1.9.12)", "pycurl (>=7.44.1,<7.45.0)", "urllib3 (>=1.26.7)"] yaml = ["PyYAML (>=3.10)"] zookeeper = ["kazoo (>=1.3.1)"] [[package]] name = "lxml" -version = "4.6.3" +version = "4.9.2" description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." category = "main" optional = false @@ -497,63 +615,59 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, != 3.4.*" [package.extras] cssselect = ["cssselect (>=0.7)"] html5 = ["html5lib"] -htmlsoup = ["beautifulsoup4"] +htmlsoup = ["BeautifulSoup4"] source = ["Cython (>=0.29.7)"] [[package]] name = "mako" -version = "1.1.4" -description = "A super-fast templating language that borrows the best ideas from the existing templating languages." +version = "1.2.4" +description = "A super-fast templating language that borrows the best ideas from the existing templating languages." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.7" [package.dependencies] MarkupSafe = ">=0.9.2" [package.extras] -babel = ["babel"] +babel = ["Babel"] lingua = ["lingua"] +testing = ["pytest"] [[package]] name = "markupsafe" -version = "2.0.1" +version = "2.1.1" description = "Safely add untrusted strings to HTML/XML markup." category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "mccabe" -version = "0.6.1" +version = "0.7.0" description = "McCabe checker, plugin for flake8" category = "dev" optional = false -python-versions = "*" - -[[package]] -name = "more-itertools" -version = "8.8.0" -description = "More routines for operating on iterables, beyond itertools" -category = "main" -optional = false -python-versions = ">=3.5" +python-versions = ">=3.6" [[package]] name = "mypy" -version = "0.770" +version = "0.991" description = "Optional static typing for Python" category = "dev" optional = false -python-versions = ">=3.5" +python-versions = ">=3.7" [package.dependencies] -mypy-extensions = ">=0.4.3,<0.5.0" -typed-ast = ">=1.4.0,<1.5.0" -typing-extensions = ">=3.7.4" +mypy-extensions = ">=0.4.3" +tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} +typing-extensions = ">=3.10" [package.extras] dmypy = ["psutil (>=4.0)"] +install-types = ["pip"] +python2 = ["typed-ast (>=1.4.0,<2)"] +reports = ["lxml"] [[package]] name = "mypy-extensions" @@ -564,15 +678,60 @@ optional = false python-versions = "*" [[package]] -name = "packaging" -version = "21.0" -description = "Core utilities for Python packages" +name = "neo4j" +version = "5.3.0" +description = "Neo4j Bolt driver for Python" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] -pyparsing = ">=2.0.2" +pytz = "*" + +[package.extras] +pandas = ["pandas (>=1.0.0)"] + +[[package]] +name = "neo4j-driver" +version = "4.3.6" +description = "Neo4j Bolt driver for Python" +category = "main" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +pytz = "*" + +[[package]] +name = "neobolt" +version = "1.7.17" +description = "Neo4j Bolt connector for Python" +category = "main" +optional = false +python-versions = "*" + +[[package]] +name = "neomodel" +version = "4.0.8" +description = "An object mapper for the neo4j graph database." +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +neo4j-driver = "4.3.6" +neobolt = "1.7.17" +pytz = ">=2021.1" +Shapely = "1.7.1" +six = "1.16.0" + +[[package]] +name = "packaging" +version = "22.0" +description = "Core utilities for Python packages" +category = "dev" +optional = false +python-versions = ">=3.7" [[package]] name = "passlib" @@ -588,31 +747,44 @@ bcrypt = {version = ">=3.1.0", optional = true, markers = "extra == \"bcrypt\""} [package.extras] argon2 = ["argon2-cffi (>=18.2.0)"] bcrypt = ["bcrypt (>=3.1.0)"] -build_docs = ["sphinx (>=1.6)", "sphinxcontrib-fulltoc (>=1.2.0)", "cloud-sptheme (>=1.10.1)"] +build-docs = ["cloud-sptheme (>=1.10.1)", "sphinx (>=1.6)", "sphinxcontrib-fulltoc (>=1.2.0)"] totp = ["cryptography"] [[package]] name = "pathspec" -version = "0.9.0" +version = "0.10.3" description = "Utility library for gitignore style pattern matching of file paths." category = "dev" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +python-versions = ">=3.7" + +[[package]] +name = "platformdirs" +version = "2.6.0" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +category = "dev" +optional = false +python-versions = ">=3.7" + +[package.extras] +docs = ["furo (>=2022.9.29)", "proselint (>=0.13)", "sphinx (>=5.3)", "sphinx-autodoc-typehints (>=1.19.4)"] +test = ["appdirs (==1.4.4)", "pytest (>=7.2)", "pytest-cov (>=4)", "pytest-mock (>=3.10)"] [[package]] name = "pluggy" -version = "0.13.1" +version = "1.0.0" description = "plugin and hook calling mechanisms for python" -category = "main" +category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.6" [package.extras] dev = ["pre-commit", "tox"] +testing = ["pytest", "pytest-benchmark"] [[package]] name = "premailer" -version = "3.9.0" +version = "3.10.0" description = "Turns CSS blocks into style attributes" category = "main" optional = false @@ -626,24 +798,27 @@ lxml = "*" requests = "*" [package.extras] -dev = ["tox", "twine", "therapist", "black", "flake8", "wheel"] -test = ["nose", "mock"] +dev = ["black", "flake8", "therapist", "tox", "twine", "wheel"] +test = ["mock", "nose"] [[package]] -name = "psycopg2-binary" -version = "2.9.1" -description = "psycopg2 - Python-PostgreSQL Database Adapter" +name = "prompt-toolkit" +version = "3.0.36" +description = "Library for building powerful interactive command lines in Python" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.6.2" + +[package.dependencies] +wcwidth = "*" [[package]] -name = "py" -version = "1.10.0" -description = "library with cross-python path, ini-parsing, io, code, log facilities" +name = "psycopg2-binary" +version = "2.9.5" +description = "psycopg2 - Python-PostgreSQL Database Adapter" category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.6" [[package]] name = "pyasn1" @@ -655,15 +830,15 @@ python-versions = "*" [[package]] name = "pycodestyle" -version = "2.7.0" +version = "2.10.0" description = "Python style guide checker" category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.6" [[package]] name = "pycparser" -version = "2.20" +version = "2.21" description = "C parser in Python" category = "main" optional = false @@ -671,14 +846,14 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "pydantic" -version = "1.8.2" -description = "Data validation and settings management using python 3.6 type hinting" +version = "1.10.2" +description = "Data validation and settings management using python type hints" category = "main" optional = false -python-versions = ">=3.6.1" +python-versions = ">=3.7" [package.dependencies] -typing-extensions = ">=3.7.4.3" +typing-extensions = ">=4.1.0" [package.extras] dotenv = ["python-dotenv (>=0.10.4)"] @@ -686,57 +861,46 @@ email = ["email-validator (>=1.0.3)"] [[package]] name = "pyflakes" -version = "2.3.1" +version = "3.0.1" description = "passive checker of Python programs" category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" - -[[package]] -name = "pyparsing" -version = "2.4.7" -description = "Python parsing module" -category = "main" -optional = false -python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" +python-versions = ">=3.6" [[package]] name = "pytest" -version = "5.4.3" +version = "7.2.0" description = "pytest: simple powerful testing with Python" -category = "main" +category = "dev" optional = false -python-versions = ">=3.5" +python-versions = ">=3.7" [package.dependencies] -atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""} -attrs = ">=17.4.0" +attrs = ">=19.2.0" colorama = {version = "*", markers = "sys_platform == \"win32\""} -more-itertools = ">=4.0.0" +exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} +iniconfig = "*" packaging = "*" -pluggy = ">=0.12,<1.0" -py = ">=1.5.0" -wcwidth = "*" +pluggy = ">=0.12,<2.0" +tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} [package.extras] -checkqa-mypy = ["mypy (==v0.761)"] -testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"] +testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"] [[package]] name = "pytest-cov" -version = "2.12.1" +version = "4.0.0" description = "Pytest plugin for measuring coverage." category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.6" [package.dependencies] -coverage = ">=5.2.1" +coverage = {version = ">=5.2.1", extras = ["toml"]} pytest = ">=4.6" -toml = "*" [package.extras] -testing = ["fields", "hunter", "process-tests", "six", "pytest-xdist", "virtualenv"] +testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtualenv"] [[package]] name = "python-dateutil" @@ -751,23 +915,15 @@ six = ">=1.5" [[package]] name = "python-dotenv" -version = "0.18.0" +version = "0.21.0" description = "Read key-value pairs from a .env file and set them as environment variables" category = "main" optional = false -python-versions = "*" +python-versions = ">=3.7" [package.extras] cli = ["click (>=5.0)"] -[[package]] -name = "python-editor" -version = "1.0.4" -description = "Programmatically open an editor, capture the result." -category = "main" -optional = false -python-versions = "*" - [[package]] name = "python-jose" version = "3.3.0" @@ -784,8 +940,8 @@ rsa = "*" [package.extras] cryptography = ["cryptography (>=3.4.0)"] -pycrypto = ["pycrypto (>=2.6.0,<2.7.0)", "pyasn1"] -pycryptodome = ["pycryptodome (>=3.3.1,<4.0.0)", "pyasn1"] +pycrypto = ["pyasn1", "pycrypto (>=2.6.0,<2.7.0)"] +pycryptodome = ["pyasn1", "pycryptodome (>=3.3.1,<4.0.0)"] [[package]] name = "python-multipart" @@ -800,7 +956,7 @@ six = ">=1.4.0" [[package]] name = "pytz" -version = "2021.1" +version = "2022.6" description = "World timezone definitions, modern and historical" category = "main" optional = false @@ -808,11 +964,11 @@ python-versions = "*" [[package]] name = "pyyaml" -version = "5.4.1" +version = "6.0" description = "YAML parser and emitter for Python" category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.6" [[package]] name = "raven" @@ -824,45 +980,77 @@ python-versions = "*" [package.extras] flask = ["Flask (>=0.8)", "blinker (>=1.1)"] -tests = ["bottle", "celery (>=2.5)", "coverage (<4)", "exam (>=0.5.2)", "flake8 (==3.5.0)", "logbook", "mock", "nose", "pytz", "pytest (>=3.2.0,<3.3.0)", "pytest-timeout (==1.2.1)", "pytest-xdist (==1.18.2)", "pytest-pythonpath (==0.7.2)", "pytest-cov (==2.5.1)", "pytest-flake8 (==1.0.0)", "requests", "tornado (>=4.1,<5.0)", "tox", "webob", "webtest", "wheel", "anyjson", "zconfig", "Flask (>=0.8)", "blinker (>=1.1)", "Flask-Login (>=0.2.0)", "blinker (>=1.1)", "sanic (>=0.7.0)", "aiohttp"] - -[[package]] -name = "regex" -version = "2021.7.6" -description = "Alternative regular expression module, to replace re." -category = "dev" -optional = false -python-versions = "*" +tests = ["Flask (>=0.8)", "Flask-Login (>=0.2.0)", "ZConfig", "aiohttp", "anyjson", "blinker (>=1.1)", "blinker (>=1.1)", "bottle", "celery (>=2.5)", "coverage (<4)", "exam (>=0.5.2)", "flake8 (==3.5.0)", "logbook", "mock", "nose", "pytest (>=3.2.0,<3.3.0)", "pytest-cov (==2.5.1)", "pytest-flake8 (==1.0.0)", "pytest-pythonpath (==0.7.2)", "pytest-timeout (==1.2.1)", "pytest-xdist (==1.18.2)", "pytz", "requests", "sanic (>=0.7.0)", "tornado (>=4.1,<5.0)", "tox", "webob", "webtest", "wheel"] [[package]] name = "requests" -version = "2.26.0" +version = "2.28.1" description = "Python HTTP for Humans." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.7, <4" [package.dependencies] certifi = ">=2017.4.17" -charset-normalizer = {version = ">=2.0.0,<2.1.0", markers = "python_version >= \"3\""} -idna = {version = ">=2.5,<4", markers = "python_version >= \"3\""} +charset-normalizer = ">=2,<3" +idna = ">=2.5,<4" urllib3 = ">=1.21.1,<1.27" [package.extras] -socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] -use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + +[[package]] +name = "rfc3986" +version = "1.5.0" +description = "Validating URI References per RFC 3986" +category = "main" +optional = false +python-versions = "*" + +[package.dependencies] +idna = {version = "*", optional = true, markers = "extra == \"idna2008\""} + +[package.extras] +idna2008 = ["idna"] [[package]] name = "rsa" -version = "4.7.2" +version = "4.9" description = "Pure-Python RSA implementation" category = "main" optional = false -python-versions = ">=3.5, <4" +python-versions = ">=3.6,<4" [package.dependencies] pyasn1 = ">=0.1.3" +[[package]] +name = "setuptools" +version = "65.6.3" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +category = "main" +optional = false +python-versions = ">=3.7" + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-notfound-page (==0.8.3)", "sphinx-reredirects", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8 (<5)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pip-run (>=8.8)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] +testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] + +[[package]] +name = "shapely" +version = "1.7.1" +description = "Geometric objects, predicates, and operations" +category = "main" +optional = false +python-versions = "*" + +[package.extras] +all = ["numpy", "pytest", "pytest-cov"] +test = ["pytest", "pytest-cov"] +vectorized = ["numpy"] + [[package]] name = "six" version = "1.16.0" @@ -871,154 +1059,167 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +[[package]] +name = "sniffio" +version = "1.3.0" +description = "Sniff out which async library your code is running under" +category = "main" +optional = false +python-versions = ">=3.7" + [[package]] name = "sqlalchemy" -version = "1.3.24" +version = "1.4.45" description = "Database Abstraction Library" category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" [package.dependencies] +greenlet = {version = "!=0.4.17", markers = "python_version >= \"3\" and (platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\")"} psycopg2-binary = {version = "*", optional = true, markers = "extra == \"postgresql_psycopg2binary\""} [package.extras] +aiomysql = ["aiomysql", "greenlet (!=0.4.17)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing_extensions (!=3.10.0.1)"] +asyncio = ["greenlet (!=0.4.17)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4)", "greenlet (!=0.4.17)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2)"] mssql = ["pyodbc"] -mssql_pymssql = ["pymssql"] -mssql_pyodbc = ["pyodbc"] -mysql = ["mysqlclient"] -oracle = ["cx-oracle"] -postgresql = ["psycopg2"] -postgresql_pg8000 = ["pg8000 (<1.16.6)"] -postgresql_psycopg2binary = ["psycopg2-binary"] -postgresql_psycopg2cffi = ["psycopg2cffi"] -pymysql = ["pymysql (<1)", "pymysql"] - -[[package]] -name = "sqlalchemy-stubs" -version = "0.3" -description = "SQLAlchemy stubs and mypy plugin" +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)", "sqlalchemy2-stubs"] +mysql = ["mysqlclient (>=1.4.0)", "mysqlclient (>=1.4.0,<2)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx_oracle (>=7)", "cx_oracle (>=7,<8)"] +postgresql = ["psycopg2 (>=2.7)"] +postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] +postgresql-pg8000 = ["pg8000 (>=1.16.6,!=1.29.0)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +pymysql = ["pymysql", "pymysql (<1)"] +sqlcipher = ["sqlcipher3_binary"] + +[[package]] +name = "sqlalchemy2-stubs" +version = "0.0.2a29" +description = "Typing Stubs for SQLAlchemy 1.4" category = "dev" optional = false -python-versions = "*" +python-versions = ">=3.6" [package.dependencies] -mypy = ">=0.720" typing-extensions = ">=3.7.4" [[package]] name = "starlette" -version = "0.14.2" +version = "0.22.0" description = "The little ASGI library that shines." category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" + +[package.dependencies] +anyio = ">=3.4.0,<5" +typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""} [package.extras] -full = ["aiofiles", "graphene", "itsdangerous", "jinja2", "python-multipart", "pyyaml", "requests"] +full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart", "pyyaml"] [[package]] name = "tenacity" -version = "6.3.1" +version = "8.1.0" description = "Retry code until it succeeds" category = "main" optional = false -python-versions = "*" - -[package.dependencies] -six = ">=1.9.0" +python-versions = ">=3.6" [package.extras] doc = ["reno", "sphinx", "tornado (>=4.5)"] [[package]] -name = "toml" -version = "0.10.2" -description = "Python Library for Tom's Obvious, Minimal Language" -category = "main" -optional = false -python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" - -[[package]] -name = "typed-ast" -version = "1.4.3" -description = "a fork of Python 2 and 3 ast modules with type comment support" +name = "tomli" +version = "2.0.1" +description = "A lil' TOML parser" category = "dev" optional = false -python-versions = "*" +python-versions = ">=3.7" [[package]] name = "typing-extensions" -version = "3.10.0.0" -description = "Backported and Experimental Type Hints for Python 3.5+" +version = "4.4.0" +description = "Backported and Experimental Type Hints for Python 3.7+" category = "main" optional = false -python-versions = "*" +python-versions = ">=3.7" [[package]] name = "urllib3" -version = "1.26.6" +version = "1.26.13" description = "HTTP library with thread-safe connection pooling, file post, and more." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" [package.extras] -brotli = ["brotlipy (>=0.6.0)"] -secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] +secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] [[package]] name = "uvicorn" -version = "0.14.0" +version = "0.17.6" description = "The lightning-fast ASGI server." category = "main" optional = false -python-versions = "*" +python-versions = ">=3.7" [package.dependencies] -asgiref = ">=3.3.4" -click = ">=7" +asgiref = ">=3.4.0" +click = ">=7.0" colorama = {version = ">=0.4", optional = true, markers = "sys_platform == \"win32\" and extra == \"standard\""} h11 = ">=0.8" -httptools = {version = ">=0.2.0,<0.3.0", optional = true, markers = "extra == \"standard\""} +httptools = {version = ">=0.4.0", optional = true, markers = "extra == \"standard\""} python-dotenv = {version = ">=0.13", optional = true, markers = "extra == \"standard\""} PyYAML = {version = ">=5.1", optional = true, markers = "extra == \"standard\""} uvloop = {version = ">=0.14.0,<0.15.0 || >0.15.0,<0.15.1 || >0.15.1", optional = true, markers = "sys_platform != \"win32\" and sys_platform != \"cygwin\" and platform_python_implementation != \"PyPy\" and extra == \"standard\""} watchgod = {version = ">=0.6", optional = true, markers = "extra == \"standard\""} -websockets = {version = ">=9.1", optional = true, markers = "extra == \"standard\""} +websockets = {version = ">=10.0", optional = true, markers = "extra == \"standard\""} [package.extras] -standard = ["websockets (>=9.1)", "httptools (>=0.2.0,<0.3.0)", "watchgod (>=0.6)", "python-dotenv (>=0.13)", "PyYAML (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "colorama (>=0.4)"] +standard = ["PyYAML (>=5.1)", "colorama (>=0.4)", "httptools (>=0.4.0)", "python-dotenv (>=0.13)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchgod (>=0.6)", "websockets (>=10.0)"] [[package]] name = "uvloop" -version = "0.15.3" +version = "0.17.0" description = "Fast implementation of asyncio event loop on top of libuv" category = "main" optional = false python-versions = ">=3.7" [package.extras] -dev = ["Cython (>=0.29.20,<0.30.0)", "pytest (>=3.6.0)", "Sphinx (>=1.7.3,<1.8.0)", "sphinxcontrib-asyncio (>=0.2.0,<0.3.0)", "sphinx-rtd-theme (>=0.2.4,<0.3.0)", "aiohttp", "flake8 (>=3.8.4,<3.9.0)", "psutil", "pycodestyle (>=2.6.0,<2.7.0)", "pyOpenSSL (>=19.0.0,<19.1.0)", "mypy (>=0.800)"] -docs = ["Sphinx (>=1.7.3,<1.8.0)", "sphinxcontrib-asyncio (>=0.2.0,<0.3.0)", "sphinx-rtd-theme (>=0.2.4,<0.3.0)"] -test = ["aiohttp", "flake8 (>=3.8.4,<3.9.0)", "psutil", "pycodestyle (>=2.6.0,<2.7.0)", "pyOpenSSL (>=19.0.0,<19.1.0)", "mypy (>=0.800)"] +dev = ["Cython (>=0.29.32,<0.30.0)", "Sphinx (>=4.1.2,<4.2.0)", "aiohttp", "flake8 (>=3.9.2,<3.10.0)", "mypy (>=0.800)", "psutil", "pyOpenSSL (>=22.0.0,<22.1.0)", "pycodestyle (>=2.7.0,<2.8.0)", "pytest (>=3.6.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)"] +docs = ["Sphinx (>=4.1.2,<4.2.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)"] +test = ["Cython (>=0.29.32,<0.30.0)", "aiohttp", "flake8 (>=3.9.2,<3.10.0)", "mypy (>=0.800)", "psutil", "pyOpenSSL (>=22.0.0,<22.1.0)", "pycodestyle (>=2.7.0,<2.8.0)"] [[package]] name = "vine" -version = "1.3.0" +version = "5.0.0" description = "Promises, promises, promises." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.6" [[package]] name = "watchgod" -version = "0.7" +version = "0.8.2" description = "Simple, modern file watching and code reload in python." category = "main" optional = false -python-versions = ">=3.5" +python-versions = ">=3.7" + +[package.dependencies] +anyio = ">=3.0.0,<4" [[package]] name = "wcwidth" @@ -1030,529 +1231,797 @@ python-versions = "*" [[package]] name = "websockets" -version = "9.1" +version = "10.4" description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" category = "main" optional = false -python-versions = ">=3.6.1" +python-versions = ">=3.7" [metadata] lock-version = "1.1" -python-versions = "^3.9" -content-hash = "b2f733693484cc918fc4d664d313cf5c48fcee6a415df41ce684aa13e405ffb6" +python-versions = "^3.9.4" +content-hash = "acfd3a7b11fc28d7476021002becd855a5a0ce7484d20b93491cf8eac92f0c6e" [metadata.files] alembic = [ - {file = "alembic-1.6.5-py2.py3-none-any.whl", hash = "sha256:e78be5b919f5bb184e3e0e2dd1ca986f2362e29a2bc933c446fe89f39dbe4e9c"}, - {file = "alembic-1.6.5.tar.gz", hash = "sha256:a21fedebb3fb8f6bbbba51a11114f08c78709377051384c9c5ead5705ee93a51"}, + {file = "alembic-1.8.1-py3-none-any.whl", hash = "sha256:0a024d7f2de88d738d7395ff866997314c837be6104e90c5724350313dee4da4"}, + {file = "alembic-1.8.1.tar.gz", hash = "sha256:cd0b5e45b14b706426b833f06369b9a6d5ee03f826ec3238723ce8caaf6e5ffa"}, ] amqp = [ - {file = "amqp-2.6.1-py2.py3-none-any.whl", hash = "sha256:aa7f313fb887c91f15474c1229907a04dac0b8135822d6603437803424c0aa59"}, - {file = "amqp-2.6.1.tar.gz", hash = "sha256:70cdb10628468ff14e57ec2f751c7aa9e48e7e3651cfd62d431213c0c4e58f21"}, + {file = "amqp-5.1.1-py3-none-any.whl", hash = "sha256:6f0956d2c23d8fa6e7691934d8c3930eadb44972cbbd1a7ae3a520f735d43359"}, + {file = "amqp-5.1.1.tar.gz", hash = "sha256:2c1b13fecc0893e946c65cbd5f36427861cffa4ea2201d8f6fca22e2a373b5e2"}, ] -appdirs = [ - {file = "appdirs-1.4.4-py2.py3-none-any.whl", hash = "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"}, - {file = "appdirs-1.4.4.tar.gz", hash = "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41"}, +anyio = [ + {file = "anyio-3.6.2-py3-none-any.whl", hash = "sha256:fbbe32bd270d2a2ef3ed1c5d45041250284e31fc0a4df4a5a6071842051a51e3"}, + {file = "anyio-3.6.2.tar.gz", hash = "sha256:25ea0d673ae30af41a0c442f81cf3b38c7e79fdc7b60335a4c14e05eb0947421"}, ] asgiref = [ - {file = "asgiref-3.4.1-py3-none-any.whl", hash = "sha256:ffc141aa908e6f175673e7b1b3b7af4fdb0ecb738fc5c8b88f69f055c2415214"}, - {file = "asgiref-3.4.1.tar.gz", hash = "sha256:4ef1ab46b484e3c706329cedeff284a5d40824200638503f5768edb6de7d58e9"}, -] -atomicwrites = [ - {file = "atomicwrites-1.4.0-py2.py3-none-any.whl", hash = "sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197"}, - {file = "atomicwrites-1.4.0.tar.gz", hash = "sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"}, + {file = "asgiref-3.5.2-py3-none-any.whl", hash = "sha256:1d2880b792ae8757289136f1db2b7b99100ce959b2aa57fd69dab783d05afac4"}, + {file = "asgiref-3.5.2.tar.gz", hash = "sha256:4a29362a6acebe09bf1d6640db38c1dc3d9217c68e6f9f6204d72667fc19a424"}, ] attrs = [ - {file = "attrs-21.2.0-py2.py3-none-any.whl", hash = "sha256:149e90d6d8ac20db7a955ad60cf0e6881a3f20d37096140088356da6c716b0b1"}, - {file = "attrs-21.2.0.tar.gz", hash = "sha256:ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb"}, + {file = "attrs-22.1.0-py2.py3-none-any.whl", hash = "sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c"}, + {file = "attrs-22.1.0.tar.gz", hash = "sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6"}, ] autoflake = [ - {file = "autoflake-1.4.tar.gz", hash = "sha256:61a353012cff6ab94ca062823d1fb2f692c4acda51c76ff83a8d77915fba51ea"}, + {file = "autoflake-2.0.0-py3-none-any.whl", hash = "sha256:d58ed4187c6b4f623a942b9a90c43ff84bf6a266f3682f407b42ca52073c9678"}, + {file = "autoflake-2.0.0.tar.gz", hash = "sha256:7185b596e70d8970c6d4106c112ef41921e472bd26abf3613db99eca88cc8c2a"}, ] bcrypt = [ - {file = "bcrypt-3.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c95d4cbebffafcdd28bd28bb4e25b31c50f6da605c81ffd9ad8a3d1b2ab7b1b6"}, - {file = "bcrypt-3.2.0-cp36-abi3-manylinux1_x86_64.whl", hash = "sha256:63d4e3ff96188e5898779b6057878fecf3f11cfe6ec3b313ea09955d587ec7a7"}, - {file = "bcrypt-3.2.0-cp36-abi3-manylinux2010_x86_64.whl", hash = "sha256:cd1ea2ff3038509ea95f687256c46b79f5fc382ad0aa3664d200047546d511d1"}, - {file = "bcrypt-3.2.0-cp36-abi3-manylinux2014_aarch64.whl", hash = "sha256:cdcdcb3972027f83fe24a48b1e90ea4b584d35f1cc279d76de6fc4b13376239d"}, - {file = "bcrypt-3.2.0-cp36-abi3-win32.whl", hash = "sha256:a67fb841b35c28a59cebed05fbd3e80eea26e6d75851f0574a9273c80f3e9b55"}, - {file = "bcrypt-3.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:81fec756feff5b6818ea7ab031205e1d323d8943d237303baca2c5f9c7846f34"}, - {file = "bcrypt-3.2.0.tar.gz", hash = "sha256:5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29"}, + {file = "bcrypt-4.0.1-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:b1023030aec778185a6c16cf70f359cbb6e0c289fd564a7cfa29e727a1c38f8f"}, + {file = "bcrypt-4.0.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:08d2947c490093a11416df18043c27abe3921558d2c03e2076ccb28a116cb6d0"}, + {file = "bcrypt-4.0.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0eaa47d4661c326bfc9d08d16debbc4edf78778e6aaba29c1bc7ce67214d4410"}, + {file = "bcrypt-4.0.1-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ae88eca3024bb34bb3430f964beab71226e761f51b912de5133470b649d82344"}, + {file = "bcrypt-4.0.1-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:a522427293d77e1c29e303fc282e2d71864579527a04ddcfda6d4f8396c6c36a"}, + {file = "bcrypt-4.0.1-cp36-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:fbdaec13c5105f0c4e5c52614d04f0bca5f5af007910daa8b6b12095edaa67b3"}, + {file = "bcrypt-4.0.1-cp36-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:ca3204d00d3cb2dfed07f2d74a25f12fc12f73e606fcaa6975d1f7ae69cacbb2"}, + {file = "bcrypt-4.0.1-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:089098effa1bc35dc055366740a067a2fc76987e8ec75349eb9484061c54f535"}, + {file = "bcrypt-4.0.1-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:e9a51bbfe7e9802b5f3508687758b564069ba937748ad7b9e890086290d2f79e"}, + {file = "bcrypt-4.0.1-cp36-abi3-win32.whl", hash = "sha256:2caffdae059e06ac23fce178d31b4a702f2a3264c20bfb5ff541b338194d8fab"}, + {file = "bcrypt-4.0.1-cp36-abi3-win_amd64.whl", hash = "sha256:8a68f4341daf7522fe8d73874de8906f3a339048ba406be6ddc1b3ccb16fc0d9"}, + {file = "bcrypt-4.0.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf4fa8b2ca74381bb5442c089350f09a3f17797829d958fad058d6e44d9eb83c"}, + {file = "bcrypt-4.0.1-pp37-pypy37_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:67a97e1c405b24f19d08890e7ae0c4f7ce1e56a712a016746c8b2d7732d65d4b"}, + {file = "bcrypt-4.0.1-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b3b85202d95dd568efcb35b53936c5e3b3600c7cdcc6115ba461df3a8e89f38d"}, + {file = "bcrypt-4.0.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cbb03eec97496166b704ed663a53680ab57c5084b2fc98ef23291987b525cb7d"}, + {file = "bcrypt-4.0.1-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:5ad4d32a28b80c5fa6671ccfb43676e8c1cc232887759d1cd7b6f56ea4355215"}, + {file = "bcrypt-4.0.1-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b57adba8a1444faf784394de3436233728a1ecaeb6e07e8c22c8848f179b893c"}, + {file = "bcrypt-4.0.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:705b2cea8a9ed3d55b4491887ceadb0106acf7c6387699fca771af56b1cdeeda"}, + {file = "bcrypt-4.0.1-pp39-pypy39_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:2b3ac11cf45161628f1f3733263e63194f22664bf4d0c0f3ab34099c02134665"}, + {file = "bcrypt-4.0.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3100851841186c25f127731b9fa11909ab7b1df6fc4b9f8353f4f1fd952fbf71"}, + {file = "bcrypt-4.0.1.tar.gz", hash = "sha256:27d375903ac8261cfe4047f6709d16f7d18d39b1ec92aaf72af989552a650ebd"}, ] billiard = [ {file = "billiard-3.6.4.0-py3-none-any.whl", hash = "sha256:87103ea78fa6ab4d5c751c4909bcff74617d985de7fa8b672cf8618afd5a875b"}, {file = "billiard-3.6.4.0.tar.gz", hash = "sha256:299de5a8da28a783d51b197d496bef4f1595dd023a93a4f59dde1886ae905547"}, ] black = [ - {file = "black-19.10b0-py36-none-any.whl", hash = "sha256:1b30e59be925fafc1ee4565e5e08abef6b03fe455102883820fe5ee2e4734e0b"}, - {file = "black-19.10b0.tar.gz", hash = "sha256:c2edb73a08e9e0e6f65a0e6af18b059b8b1cdd5bef997d7a0b181df93dc81539"}, + {file = "black-22.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eedd20838bd5d75b80c9f5487dbcb06836a43833a37846cf1d8c1cc01cef59d"}, + {file = "black-22.12.0-cp310-cp310-win_amd64.whl", hash = "sha256:159a46a4947f73387b4d83e87ea006dbb2337eab6c879620a3ba52699b1f4351"}, + {file = "black-22.12.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d30b212bffeb1e252b31dd269dfae69dd17e06d92b87ad26e23890f3efea366f"}, + {file = "black-22.12.0-cp311-cp311-win_amd64.whl", hash = "sha256:7412e75863aa5c5411886804678b7d083c7c28421210180d67dfd8cf1221e1f4"}, + {file = "black-22.12.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c116eed0efb9ff870ded8b62fe9f28dd61ef6e9ddd28d83d7d264a38417dcee2"}, + {file = "black-22.12.0-cp37-cp37m-win_amd64.whl", hash = "sha256:1f58cbe16dfe8c12b7434e50ff889fa479072096d79f0a7f25e4ab8e94cd8350"}, + {file = "black-22.12.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:77d86c9f3db9b1bf6761244bc0b3572a546f5fe37917a044e02f3166d5aafa7d"}, + {file = "black-22.12.0-cp38-cp38-win_amd64.whl", hash = "sha256:82d9fe8fee3401e02e79767016b4907820a7dc28d70d137eb397b92ef3cc5bfc"}, + {file = "black-22.12.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:101c69b23df9b44247bd88e1d7e90154336ac4992502d4197bdac35dd7ee3320"}, + {file = "black-22.12.0-cp39-cp39-win_amd64.whl", hash = "sha256:559c7a1ba9a006226f09e4916060982fd27334ae1998e7a38b3f33a37f7a2148"}, + {file = "black-22.12.0-py3-none-any.whl", hash = "sha256:436cc9167dd28040ad90d3b404aec22cedf24a6e4d7de221bec2730ec0c97bcf"}, + {file = "black-22.12.0.tar.gz", hash = "sha256:229351e5a18ca30f447bf724d007f890f97e13af070bb6ad4c0a441cd7596a2f"}, ] cachetools = [ - {file = "cachetools-4.2.2-py3-none-any.whl", hash = "sha256:2cc0b89715337ab6dbba85b5b50effe2b0c74e035d83ee8ed637cf52f12ae001"}, - {file = "cachetools-4.2.2.tar.gz", hash = "sha256:61b5ed1e22a0924aed1d23b478f37e8d52549ff8a961de2909c69bf950020cff"}, + {file = "cachetools-5.2.0-py3-none-any.whl", hash = "sha256:f9f17d2aec496a9aa6b76f53e3b614c965223c061982d434d160f930c698a9db"}, + {file = "cachetools-5.2.0.tar.gz", hash = "sha256:6a94c6402995a99c3970cc7e4884bb60b4a8639938157eeed436098bf9831757"}, ] celery = [ - {file = "celery-4.4.7-py2.py3-none-any.whl", hash = "sha256:a92e1d56e650781fb747032a3997d16236d037c8199eacd5217d1a72893bca45"}, - {file = "celery-4.4.7.tar.gz", hash = "sha256:d220b13a8ed57c78149acf82c006785356071844afe0b27012a4991d44026f9f"}, + {file = "celery-5.2.7-py3-none-any.whl", hash = "sha256:138420c020cd58d6707e6257b6beda91fd39af7afde5d36c6334d175302c0e14"}, + {file = "celery-5.2.7.tar.gz", hash = "sha256:fafbd82934d30f8a004f81e8f7a062e31413a23d444be8ee3326553915958c6d"}, ] certifi = [ - {file = "certifi-2021.5.30-py2.py3-none-any.whl", hash = "sha256:50b1e4f8446b06f41be7dd6338db18e0990601dce795c2b1686458aa7e8fa7d8"}, - {file = "certifi-2021.5.30.tar.gz", hash = "sha256:2bbf76fd432960138b3ef6dda3dde0544f27cbf8546c458e60baf371917ba9ee"}, + {file = "certifi-2022.12.7-py3-none-any.whl", hash = "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18"}, + {file = "certifi-2022.12.7.tar.gz", hash = "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3"}, ] cffi = [ - {file = "cffi-1.14.6-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:22b9c3c320171c108e903d61a3723b51e37aaa8c81255b5e7ce102775bd01e2c"}, - {file = "cffi-1.14.6-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:f0c5d1acbfca6ebdd6b1e3eded8d261affb6ddcf2186205518f1428b8569bb99"}, - {file = "cffi-1.14.6-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:99f27fefe34c37ba9875f224a8f36e31d744d8083e00f520f133cab79ad5e819"}, - {file = "cffi-1.14.6-cp27-cp27m-win32.whl", hash = "sha256:55af55e32ae468e9946f741a5d51f9896da6b9bf0bbdd326843fec05c730eb20"}, - {file = "cffi-1.14.6-cp27-cp27m-win_amd64.whl", hash = "sha256:7bcac9a2b4fdbed2c16fa5681356d7121ecabf041f18d97ed5b8e0dd38a80224"}, - {file = "cffi-1.14.6-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:ed38b924ce794e505647f7c331b22a693bee1538fdf46b0222c4717b42f744e7"}, - {file = "cffi-1.14.6-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:e22dcb48709fc51a7b58a927391b23ab37eb3737a98ac4338e2448bef8559b33"}, - {file = "cffi-1.14.6-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:aedb15f0a5a5949ecb129a82b72b19df97bbbca024081ed2ef88bd5c0a610534"}, - {file = "cffi-1.14.6-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:48916e459c54c4a70e52745639f1db524542140433599e13911b2f329834276a"}, - {file = "cffi-1.14.6-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:f627688813d0a4140153ff532537fbe4afea5a3dffce1f9deb7f91f848a832b5"}, - {file = "cffi-1.14.6-cp35-cp35m-win32.whl", hash = "sha256:f0010c6f9d1a4011e429109fda55a225921e3206e7f62a0c22a35344bfd13cca"}, - {file = "cffi-1.14.6-cp35-cp35m-win_amd64.whl", hash = "sha256:57e555a9feb4a8460415f1aac331a2dc833b1115284f7ded7278b54afc5bd218"}, - {file = "cffi-1.14.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e8c6a99be100371dbb046880e7a282152aa5d6127ae01783e37662ef73850d8f"}, - {file = "cffi-1.14.6-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:19ca0dbdeda3b2615421d54bef8985f72af6e0c47082a8d26122adac81a95872"}, - {file = "cffi-1.14.6-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:d950695ae4381ecd856bcaf2b1e866720e4ab9a1498cba61c602e56630ca7195"}, - {file = "cffi-1.14.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e9dc245e3ac69c92ee4c167fbdd7428ec1956d4e754223124991ef29eb57a09d"}, - {file = "cffi-1.14.6-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a8661b2ce9694ca01c529bfa204dbb144b275a31685a075ce123f12331be790b"}, - {file = "cffi-1.14.6-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b315d709717a99f4b27b59b021e6207c64620790ca3e0bde636a6c7f14618abb"}, - {file = "cffi-1.14.6-cp36-cp36m-win32.whl", hash = "sha256:80b06212075346b5546b0417b9f2bf467fea3bfe7352f781ffc05a8ab24ba14a"}, - {file = "cffi-1.14.6-cp36-cp36m-win_amd64.whl", hash = "sha256:a9da7010cec5a12193d1af9872a00888f396aba3dc79186604a09ea3ee7c029e"}, - {file = "cffi-1.14.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4373612d59c404baeb7cbd788a18b2b2a8331abcc84c3ba40051fcd18b17a4d5"}, - {file = "cffi-1.14.6-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:f10afb1004f102c7868ebfe91c28f4a712227fe4cb24974350ace1f90e1febbf"}, - {file = "cffi-1.14.6-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:fd4305f86f53dfd8cd3522269ed7fc34856a8ee3709a5e28b2836b2db9d4cd69"}, - {file = "cffi-1.14.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d6169cb3c6c2ad50db5b868db6491a790300ade1ed5d1da29289d73bbe40b56"}, - {file = "cffi-1.14.6-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5d4b68e216fc65e9fe4f524c177b54964af043dde734807586cf5435af84045c"}, - {file = "cffi-1.14.6-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33791e8a2dc2953f28b8d8d300dde42dd929ac28f974c4b4c6272cb2955cb762"}, - {file = "cffi-1.14.6-cp37-cp37m-win32.whl", hash = "sha256:0c0591bee64e438883b0c92a7bed78f6290d40bf02e54c5bf0978eaf36061771"}, - {file = "cffi-1.14.6-cp37-cp37m-win_amd64.whl", hash = "sha256:8eb687582ed7cd8c4bdbff3df6c0da443eb89c3c72e6e5dcdd9c81729712791a"}, - {file = "cffi-1.14.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ba6f2b3f452e150945d58f4badd92310449876c4c954836cfb1803bdd7b422f0"}, - {file = "cffi-1.14.6-cp38-cp38-manylinux1_i686.whl", hash = "sha256:64fda793737bc4037521d4899be780534b9aea552eb673b9833b01f945904c2e"}, - {file = "cffi-1.14.6-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:9f3e33c28cd39d1b655ed1ba7247133b6f7fc16fa16887b120c0c670e35ce346"}, - {file = "cffi-1.14.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:26bb2549b72708c833f5abe62b756176022a7b9a7f689b571e74c8478ead51dc"}, - {file = "cffi-1.14.6-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb687a11f0a7a1839719edd80f41e459cc5366857ecbed383ff376c4e3cc6afd"}, - {file = "cffi-1.14.6-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d2ad4d668a5c0645d281dcd17aff2be3212bc109b33814bbb15c4939f44181cc"}, - {file = "cffi-1.14.6-cp38-cp38-win32.whl", hash = "sha256:487d63e1454627c8e47dd230025780e91869cfba4c753a74fda196a1f6ad6548"}, - {file = "cffi-1.14.6-cp38-cp38-win_amd64.whl", hash = "sha256:c33d18eb6e6bc36f09d793c0dc58b0211fccc6ae5149b808da4a62660678b156"}, - {file = "cffi-1.14.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:06c54a68935738d206570b20da5ef2b6b6d92b38ef3ec45c5422c0ebaf338d4d"}, - {file = "cffi-1.14.6-cp39-cp39-manylinux1_i686.whl", hash = "sha256:f174135f5609428cc6e1b9090f9268f5c8935fddb1b25ccb8255a2d50de6789e"}, - {file = "cffi-1.14.6-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f3ebe6e73c319340830a9b2825d32eb6d8475c1dac020b4f0aa774ee3b898d1c"}, - {file = "cffi-1.14.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c8d896becff2fa653dc4438b54a5a25a971d1f4110b32bd3068db3722c80202"}, - {file = "cffi-1.14.6-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4922cd707b25e623b902c86188aca466d3620892db76c0bdd7b99a3d5e61d35f"}, - {file = "cffi-1.14.6-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c9e005e9bd57bc987764c32a1bee4364c44fdc11a3cc20a40b93b444984f2b87"}, - {file = "cffi-1.14.6-cp39-cp39-win32.whl", hash = "sha256:eb9e2a346c5238a30a746893f23a9535e700f8192a68c07c0258e7ece6ff3728"}, - {file = "cffi-1.14.6-cp39-cp39-win_amd64.whl", hash = "sha256:818014c754cd3dba7229c0f5884396264d51ffb87ec86e927ef0be140bfdb0d2"}, - {file = "cffi-1.14.6.tar.gz", hash = "sha256:c9a875ce9d7fe32887784274dd533c57909b7b1dcadcc128a2ac21331a9765dd"}, + {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"}, + {file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"}, + {file = "cffi-1.15.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914"}, + {file = "cffi-1.15.1-cp27-cp27m-win32.whl", hash = "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3"}, + {file = "cffi-1.15.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e"}, + {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162"}, + {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b"}, + {file = "cffi-1.15.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21"}, + {file = "cffi-1.15.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4"}, + {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01"}, + {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e"}, + {file = "cffi-1.15.1-cp310-cp310-win32.whl", hash = "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2"}, + {file = "cffi-1.15.1-cp310-cp310-win_amd64.whl", hash = "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d"}, + {file = "cffi-1.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac"}, + {file = "cffi-1.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c"}, + {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef"}, + {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8"}, + {file = "cffi-1.15.1-cp311-cp311-win32.whl", hash = "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d"}, + {file = "cffi-1.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104"}, + {file = "cffi-1.15.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e"}, + {file = "cffi-1.15.1-cp36-cp36m-win32.whl", hash = "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf"}, + {file = "cffi-1.15.1-cp36-cp36m-win_amd64.whl", hash = "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497"}, + {file = "cffi-1.15.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426"}, + {file = "cffi-1.15.1-cp37-cp37m-win32.whl", hash = "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9"}, + {file = "cffi-1.15.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045"}, + {file = "cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192"}, + {file = "cffi-1.15.1-cp38-cp38-win32.whl", hash = "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314"}, + {file = "cffi-1.15.1-cp38-cp38-win_amd64.whl", hash = "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5"}, + {file = "cffi-1.15.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585"}, + {file = "cffi-1.15.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27"}, + {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76"}, + {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3"}, + {file = "cffi-1.15.1-cp39-cp39-win32.whl", hash = "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee"}, + {file = "cffi-1.15.1-cp39-cp39-win_amd64.whl", hash = "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c"}, + {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"}, ] chardet = [ - {file = "chardet-4.0.0-py2.py3-none-any.whl", hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"}, - {file = "chardet-4.0.0.tar.gz", hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa"}, + {file = "chardet-5.1.0-py3-none-any.whl", hash = "sha256:362777fb014af596ad31334fde1e8c327dfdb076e1960d1694662d46a6917ab9"}, + {file = "chardet-5.1.0.tar.gz", hash = "sha256:0d62712b956bc154f85fb0a266e2a3c5913c2967e00348701b32411d6def31e5"}, ] charset-normalizer = [ - {file = "charset-normalizer-2.0.3.tar.gz", hash = "sha256:c46c3ace2d744cfbdebceaa3c19ae691f53ae621b39fd7570f59d14fb7f2fd12"}, - {file = "charset_normalizer-2.0.3-py3-none-any.whl", hash = "sha256:88fce3fa5b1a84fdcb3f603d889f723d1dd89b26059d0123ca435570e848d5e1"}, + {file = "charset-normalizer-2.1.1.tar.gz", hash = "sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845"}, + {file = "charset_normalizer-2.1.1-py3-none-any.whl", hash = "sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f"}, ] click = [ - {file = "click-8.0.1-py3-none-any.whl", hash = "sha256:fba402a4a47334742d782209a7c79bc448911afe1149d07bdabdf480b3e2f4b6"}, - {file = "click-8.0.1.tar.gz", hash = "sha256:8c04c11192119b1ef78ea049e0a6f0463e4c48ef00a30160c704337586f3ad7a"}, + {file = "click-8.1.3-py3-none-any.whl", hash = "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48"}, + {file = "click-8.1.3.tar.gz", hash = "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"}, +] +click-didyoumean = [ + {file = "click-didyoumean-0.3.0.tar.gz", hash = "sha256:f184f0d851d96b6d29297354ed981b7dd71df7ff500d82fa6d11f0856bee8035"}, + {file = "click_didyoumean-0.3.0-py3-none-any.whl", hash = "sha256:a0713dc7a1de3f06bc0df5a9567ad19ead2d3d5689b434768a6145bff77c0667"}, +] +click-plugins = [ + {file = "click-plugins-1.1.1.tar.gz", hash = "sha256:46ab999744a9d831159c3411bb0c79346d94a444df9a3a3742e9ed63645f264b"}, + {file = "click_plugins-1.1.1-py2.py3-none-any.whl", hash = "sha256:5d262006d3222f5057fd81e1623d4443e41dcda5dc815c06b442aa3c02889fc8"}, +] +click-repl = [ + {file = "click-repl-0.2.0.tar.gz", hash = "sha256:cd12f68d745bf6151210790540b4cb064c7b13e571bc64b6957d98d120dacfd8"}, + {file = "click_repl-0.2.0-py3-none-any.whl", hash = "sha256:94b3fbbc9406a236f176e0506524b2937e4b23b6f4c0c0b2a0a83f8a64e9194b"}, ] colorama = [ - {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, - {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, ] coverage = [ - {file = "coverage-5.5-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:b6d534e4b2ab35c9f93f46229363e17f63c53ad01330df9f2d6bd1187e5eaacf"}, - {file = "coverage-5.5-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:b7895207b4c843c76a25ab8c1e866261bcfe27bfaa20c192de5190121770672b"}, - {file = "coverage-5.5-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:c2723d347ab06e7ddad1a58b2a821218239249a9e4365eaff6649d31180c1669"}, - {file = "coverage-5.5-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:900fbf7759501bc7807fd6638c947d7a831fc9fdf742dc10f02956ff7220fa90"}, - {file = "coverage-5.5-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:004d1880bed2d97151facef49f08e255a20ceb6f9432df75f4eef018fdd5a78c"}, - {file = "coverage-5.5-cp27-cp27m-win32.whl", hash = "sha256:06191eb60f8d8a5bc046f3799f8a07a2d7aefb9504b0209aff0b47298333302a"}, - {file = "coverage-5.5-cp27-cp27m-win_amd64.whl", hash = "sha256:7501140f755b725495941b43347ba8a2777407fc7f250d4f5a7d2a1050ba8e82"}, - {file = "coverage-5.5-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:372da284cfd642d8e08ef606917846fa2ee350f64994bebfbd3afb0040436905"}, - {file = "coverage-5.5-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:8963a499849a1fc54b35b1c9f162f4108017b2e6db2c46c1bed93a72262ed083"}, - {file = "coverage-5.5-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:869a64f53488f40fa5b5b9dcb9e9b2962a66a87dab37790f3fcfb5144b996ef5"}, - {file = "coverage-5.5-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:4a7697d8cb0f27399b0e393c0b90f0f1e40c82023ea4d45d22bce7032a5d7b81"}, - {file = "coverage-5.5-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:8d0a0725ad7c1a0bcd8d1b437e191107d457e2ec1084b9f190630a4fb1af78e6"}, - {file = "coverage-5.5-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:51cb9476a3987c8967ebab3f0fe144819781fca264f57f89760037a2ea191cb0"}, - {file = "coverage-5.5-cp310-cp310-win_amd64.whl", hash = "sha256:c0891a6a97b09c1f3e073a890514d5012eb256845c451bd48f7968ef939bf4ae"}, - {file = "coverage-5.5-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:3487286bc29a5aa4b93a072e9592f22254291ce96a9fbc5251f566b6b7343cdb"}, - {file = "coverage-5.5-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:deee1077aae10d8fa88cb02c845cfba9b62c55e1183f52f6ae6a2df6a2187160"}, - {file = "coverage-5.5-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:f11642dddbb0253cc8853254301b51390ba0081750a8ac03f20ea8103f0c56b6"}, - {file = "coverage-5.5-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:6c90e11318f0d3c436a42409f2749ee1a115cd8b067d7f14c148f1ce5574d701"}, - {file = "coverage-5.5-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:30c77c1dc9f253283e34c27935fded5015f7d1abe83bc7821680ac444eaf7793"}, - {file = "coverage-5.5-cp35-cp35m-win32.whl", hash = "sha256:9a1ef3b66e38ef8618ce5fdc7bea3d9f45f3624e2a66295eea5e57966c85909e"}, - {file = "coverage-5.5-cp35-cp35m-win_amd64.whl", hash = "sha256:972c85d205b51e30e59525694670de6a8a89691186012535f9d7dbaa230e42c3"}, - {file = "coverage-5.5-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:af0e781009aaf59e25c5a678122391cb0f345ac0ec272c7961dc5455e1c40066"}, - {file = "coverage-5.5-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:74d881fc777ebb11c63736622b60cb9e4aee5cace591ce274fb69e582a12a61a"}, - {file = "coverage-5.5-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:92b017ce34b68a7d67bd6d117e6d443a9bf63a2ecf8567bb3d8c6c7bc5014465"}, - {file = "coverage-5.5-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:d636598c8305e1f90b439dbf4f66437de4a5e3c31fdf47ad29542478c8508bbb"}, - {file = "coverage-5.5-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:41179b8a845742d1eb60449bdb2992196e211341818565abded11cfa90efb821"}, - {file = "coverage-5.5-cp36-cp36m-win32.whl", hash = "sha256:040af6c32813fa3eae5305d53f18875bedd079960822ef8ec067a66dd8afcd45"}, - {file = "coverage-5.5-cp36-cp36m-win_amd64.whl", hash = "sha256:5fec2d43a2cc6965edc0bb9e83e1e4b557f76f843a77a2496cbe719583ce8184"}, - {file = "coverage-5.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:18ba8bbede96a2c3dde7b868de9dcbd55670690af0988713f0603f037848418a"}, - {file = "coverage-5.5-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:2910f4d36a6a9b4214bb7038d537f015346f413a975d57ca6b43bf23d6563b53"}, - {file = "coverage-5.5-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:f0b278ce10936db1a37e6954e15a3730bea96a0997c26d7fee88e6c396c2086d"}, - {file = "coverage-5.5-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:796c9c3c79747146ebd278dbe1e5c5c05dd6b10cc3bcb8389dfdf844f3ead638"}, - {file = "coverage-5.5-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:53194af30d5bad77fcba80e23a1441c71abfb3e01192034f8246e0d8f99528f3"}, - {file = "coverage-5.5-cp37-cp37m-win32.whl", hash = "sha256:184a47bbe0aa6400ed2d41d8e9ed868b8205046518c52464fde713ea06e3a74a"}, - {file = "coverage-5.5-cp37-cp37m-win_amd64.whl", hash = "sha256:2949cad1c5208b8298d5686d5a85b66aae46d73eec2c3e08c817dd3513e5848a"}, - {file = "coverage-5.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:217658ec7187497e3f3ebd901afdca1af062b42cfe3e0dafea4cced3983739f6"}, - {file = "coverage-5.5-cp38-cp38-manylinux1_i686.whl", hash = "sha256:1aa846f56c3d49205c952d8318e76ccc2ae23303351d9270ab220004c580cfe2"}, - {file = "coverage-5.5-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:24d4a7de75446be83244eabbff746d66b9240ae020ced65d060815fac3423759"}, - {file = "coverage-5.5-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:d1f8bf7b90ba55699b3a5e44930e93ff0189aa27186e96071fac7dd0d06a1873"}, - {file = "coverage-5.5-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:970284a88b99673ccb2e4e334cfb38a10aab7cd44f7457564d11898a74b62d0a"}, - {file = "coverage-5.5-cp38-cp38-win32.whl", hash = "sha256:01d84219b5cdbfc8122223b39a954820929497a1cb1422824bb86b07b74594b6"}, - {file = "coverage-5.5-cp38-cp38-win_amd64.whl", hash = "sha256:2e0d881ad471768bf6e6c2bf905d183543f10098e3b3640fc029509530091502"}, - {file = "coverage-5.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d1f9ce122f83b2305592c11d64f181b87153fc2c2bbd3bb4a3dde8303cfb1a6b"}, - {file = "coverage-5.5-cp39-cp39-manylinux1_i686.whl", hash = "sha256:13c4ee887eca0f4c5a247b75398d4114c37882658300e153113dafb1d76de529"}, - {file = "coverage-5.5-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:52596d3d0e8bdf3af43db3e9ba8dcdaac724ba7b5ca3f6358529d56f7a166f8b"}, - {file = "coverage-5.5-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:2cafbbb3af0733db200c9b5f798d18953b1a304d3f86a938367de1567f4b5bff"}, - {file = "coverage-5.5-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:44d654437b8ddd9eee7d1eaee28b7219bec228520ff809af170488fd2fed3e2b"}, - {file = "coverage-5.5-cp39-cp39-win32.whl", hash = "sha256:d314ed732c25d29775e84a960c3c60808b682c08d86602ec2c3008e1202e3bb6"}, - {file = "coverage-5.5-cp39-cp39-win_amd64.whl", hash = "sha256:13034c4409db851670bc9acd836243aeee299949bd5673e11844befcb0149f03"}, - {file = "coverage-5.5-pp36-none-any.whl", hash = "sha256:f030f8873312a16414c0d8e1a1ddff2d3235655a2174e3648b4fa66b3f2f1079"}, - {file = "coverage-5.5-pp37-none-any.whl", hash = "sha256:2a3859cb82dcbda1cfd3e6f71c27081d18aa251d20a17d87d26d4cd216fb0af4"}, - {file = "coverage-5.5.tar.gz", hash = "sha256:ebe78fe9a0e874362175b02371bdfbee64d8edc42a044253ddf4ee7d3c15212c"}, + {file = "coverage-6.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ef8674b0ee8cc11e2d574e3e2998aea5df5ab242e012286824ea3c6970580e53"}, + {file = "coverage-6.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:784f53ebc9f3fd0e2a3f6a78b2be1bd1f5575d7863e10c6e12504f240fd06660"}, + {file = "coverage-6.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b4a5be1748d538a710f87542f22c2cad22f80545a847ad91ce45e77417293eb4"}, + {file = "coverage-6.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:83516205e254a0cb77d2d7bb3632ee019d93d9f4005de31dca0a8c3667d5bc04"}, + {file = "coverage-6.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af4fffaffc4067232253715065e30c5a7ec6faac36f8fc8d6f64263b15f74db0"}, + {file = "coverage-6.5.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:97117225cdd992a9c2a5515db1f66b59db634f59d0679ca1fa3fe8da32749cae"}, + {file = "coverage-6.5.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a1170fa54185845505fbfa672f1c1ab175446c887cce8212c44149581cf2d466"}, + {file = "coverage-6.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:11b990d520ea75e7ee8dcab5bc908072aaada194a794db9f6d7d5cfd19661e5a"}, + {file = "coverage-6.5.0-cp310-cp310-win32.whl", hash = "sha256:5dbec3b9095749390c09ab7c89d314727f18800060d8d24e87f01fb9cfb40b32"}, + {file = "coverage-6.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:59f53f1dc5b656cafb1badd0feb428c1e7bc19b867479ff72f7a9dd9b479f10e"}, + {file = "coverage-6.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4a5375e28c5191ac38cca59b38edd33ef4cc914732c916f2929029b4bfb50795"}, + {file = "coverage-6.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c4ed2820d919351f4167e52425e096af41bfabacb1857186c1ea32ff9983ed75"}, + {file = "coverage-6.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:33a7da4376d5977fbf0a8ed91c4dffaaa8dbf0ddbf4c8eea500a2486d8bc4d7b"}, + {file = "coverage-6.5.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8fb6cf131ac4070c9c5a3e21de0f7dc5a0fbe8bc77c9456ced896c12fcdad91"}, + {file = "coverage-6.5.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a6b7d95969b8845250586f269e81e5dfdd8ff828ddeb8567a4a2eaa7313460c4"}, + {file = "coverage-6.5.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:1ef221513e6f68b69ee9e159506d583d31aa3567e0ae84eaad9d6ec1107dddaa"}, + {file = "coverage-6.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cca4435eebea7962a52bdb216dec27215d0df64cf27fc1dd538415f5d2b9da6b"}, + {file = "coverage-6.5.0-cp311-cp311-win32.whl", hash = "sha256:98e8a10b7a314f454d9eff4216a9a94d143a7ee65018dd12442e898ee2310578"}, + {file = "coverage-6.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:bc8ef5e043a2af066fa8cbfc6e708d58017024dc4345a1f9757b329a249f041b"}, + {file = "coverage-6.5.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4433b90fae13f86fafff0b326453dd42fc9a639a0d9e4eec4d366436d1a41b6d"}, + {file = "coverage-6.5.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f4f05d88d9a80ad3cac6244d36dd89a3c00abc16371769f1340101d3cb899fc3"}, + {file = "coverage-6.5.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:94e2565443291bd778421856bc975d351738963071e9b8839ca1fc08b42d4bef"}, + {file = "coverage-6.5.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:027018943386e7b942fa832372ebc120155fd970837489896099f5cfa2890f79"}, + {file = "coverage-6.5.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:255758a1e3b61db372ec2736c8e2a1fdfaf563977eedbdf131de003ca5779b7d"}, + {file = "coverage-6.5.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:851cf4ff24062c6aec510a454b2584f6e998cada52d4cb58c5e233d07172e50c"}, + {file = "coverage-6.5.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:12adf310e4aafddc58afdb04d686795f33f4d7a6fa67a7a9d4ce7d6ae24d949f"}, + {file = "coverage-6.5.0-cp37-cp37m-win32.whl", hash = "sha256:b5604380f3415ba69de87a289a2b56687faa4fe04dbee0754bfcae433489316b"}, + {file = "coverage-6.5.0-cp37-cp37m-win_amd64.whl", hash = "sha256:4a8dbc1f0fbb2ae3de73eb0bdbb914180c7abfbf258e90b311dcd4f585d44bd2"}, + {file = "coverage-6.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d900bb429fdfd7f511f868cedd03a6bbb142f3f9118c09b99ef8dc9bf9643c3c"}, + {file = "coverage-6.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2198ea6fc548de52adc826f62cb18554caedfb1d26548c1b7c88d8f7faa8f6ba"}, + {file = "coverage-6.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c4459b3de97b75e3bd6b7d4b7f0db13f17f504f3d13e2a7c623786289dd670e"}, + {file = "coverage-6.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:20c8ac5386253717e5ccc827caad43ed66fea0efe255727b1053a8154d952398"}, + {file = "coverage-6.5.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b07130585d54fe8dff3d97b93b0e20290de974dc8177c320aeaf23459219c0b"}, + {file = "coverage-6.5.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:dbdb91cd8c048c2b09eb17713b0c12a54fbd587d79adcebad543bc0cd9a3410b"}, + {file = "coverage-6.5.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:de3001a203182842a4630e7b8d1a2c7c07ec1b45d3084a83d5d227a3806f530f"}, + {file = "coverage-6.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:e07f4a4a9b41583d6eabec04f8b68076ab3cd44c20bd29332c6572dda36f372e"}, + {file = "coverage-6.5.0-cp38-cp38-win32.whl", hash = "sha256:6d4817234349a80dbf03640cec6109cd90cba068330703fa65ddf56b60223a6d"}, + {file = "coverage-6.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:7ccf362abd726b0410bf8911c31fbf97f09f8f1061f8c1cf03dfc4b6372848f6"}, + {file = "coverage-6.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:633713d70ad6bfc49b34ead4060531658dc6dfc9b3eb7d8a716d5873377ab745"}, + {file = "coverage-6.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:95203854f974e07af96358c0b261f1048d8e1083f2de9b1c565e1be4a3a48cfc"}, + {file = "coverage-6.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9023e237f4c02ff739581ef35969c3739445fb059b060ca51771e69101efffe"}, + {file = "coverage-6.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:265de0fa6778d07de30bcf4d9dc471c3dc4314a23a3c6603d356a3c9abc2dfcf"}, + {file = "coverage-6.5.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f830ed581b45b82451a40faabb89c84e1a998124ee4212d440e9c6cf70083e5"}, + {file = "coverage-6.5.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7b6be138d61e458e18d8e6ddcddd36dd96215edfe5f1168de0b1b32635839b62"}, + {file = "coverage-6.5.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:42eafe6778551cf006a7c43153af1211c3aaab658d4d66fa5fcc021613d02518"}, + {file = "coverage-6.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:723e8130d4ecc8f56e9a611e73b31219595baa3bb252d539206f7bbbab6ffc1f"}, + {file = "coverage-6.5.0-cp39-cp39-win32.whl", hash = "sha256:d9ecf0829c6a62b9b573c7bb6d4dcd6ba8b6f80be9ba4fc7ed50bf4ac9aecd72"}, + {file = "coverage-6.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:fc2af30ed0d5ae0b1abdb4ebdce598eafd5b35397d4d75deb341a614d333d987"}, + {file = "coverage-6.5.0-pp36.pp37.pp38-none-any.whl", hash = "sha256:1431986dac3923c5945271f169f59c45b8802a114c8f548d611f2015133df77a"}, + {file = "coverage-6.5.0.tar.gz", hash = "sha256:f642e90754ee3e06b0e7e51bce3379590e76b7f76b708e1a71ff043f87025c84"}, ] cryptography = [ - {file = "cryptography-3.4.7-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:3d8427734c781ea5f1b41d6589c293089704d4759e34597dce91014ac125aad1"}, - {file = "cryptography-3.4.7-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:8e56e16617872b0957d1c9742a3f94b43533447fd78321514abbe7db216aa250"}, - {file = "cryptography-3.4.7-cp36-abi3-manylinux2010_x86_64.whl", hash = "sha256:37340614f8a5d2fb9aeea67fd159bfe4f5f4ed535b1090ce8ec428b2f15a11f2"}, - {file = "cryptography-3.4.7-cp36-abi3-manylinux2014_aarch64.whl", hash = "sha256:240f5c21aef0b73f40bb9f78d2caff73186700bf1bc6b94285699aff98cc16c6"}, - {file = "cryptography-3.4.7-cp36-abi3-manylinux2014_x86_64.whl", hash = "sha256:1e056c28420c072c5e3cb36e2b23ee55e260cb04eee08f702e0edfec3fb51959"}, - {file = "cryptography-3.4.7-cp36-abi3-win32.whl", hash = "sha256:0f1212a66329c80d68aeeb39b8a16d54ef57071bf22ff4e521657b27372e327d"}, - {file = "cryptography-3.4.7-cp36-abi3-win_amd64.whl", hash = "sha256:de4e5f7f68220d92b7637fc99847475b59154b7a1b3868fb7385337af54ac9ca"}, - {file = "cryptography-3.4.7-pp36-pypy36_pp73-manylinux2010_x86_64.whl", hash = "sha256:26965837447f9c82f1855e0bc8bc4fb910240b6e0d16a664bb722df3b5b06873"}, - {file = "cryptography-3.4.7-pp36-pypy36_pp73-manylinux2014_x86_64.whl", hash = "sha256:eb8cc2afe8b05acbd84a43905832ec78e7b3873fb124ca190f574dca7389a87d"}, - {file = "cryptography-3.4.7-pp37-pypy37_pp73-manylinux2010_x86_64.whl", hash = "sha256:7ec5d3b029f5fa2b179325908b9cd93db28ab7b85bb6c1db56b10e0b54235177"}, - {file = "cryptography-3.4.7-pp37-pypy37_pp73-manylinux2014_x86_64.whl", hash = "sha256:ee77aa129f481be46f8d92a1a7db57269a2f23052d5f2433b4621bb457081cc9"}, - {file = "cryptography-3.4.7.tar.gz", hash = "sha256:3d10de8116d25649631977cb37da6cbdd2d6fa0e0281d014a5b7d337255ca713"}, + {file = "cryptography-38.0.4-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:2fa36a7b2cc0998a3a4d5af26ccb6273f3df133d61da2ba13b3286261e7efb70"}, + {file = "cryptography-38.0.4-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:1f13ddda26a04c06eb57119caf27a524ccae20533729f4b1e4a69b54e07035eb"}, + {file = "cryptography-38.0.4-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:2ec2a8714dd005949d4019195d72abed84198d877112abb5a27740e217e0ea8d"}, + {file = "cryptography-38.0.4-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50a1494ed0c3f5b4d07650a68cd6ca62efe8b596ce743a5c94403e6f11bf06c1"}, + {file = "cryptography-38.0.4-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a10498349d4c8eab7357a8f9aa3463791292845b79597ad1b98a543686fb1ec8"}, + {file = "cryptography-38.0.4-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:10652dd7282de17990b88679cb82f832752c4e8237f0c714be518044269415db"}, + {file = "cryptography-38.0.4-cp36-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:bfe6472507986613dc6cc00b3d492b2f7564b02b3b3682d25ca7f40fa3fd321b"}, + {file = "cryptography-38.0.4-cp36-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:ce127dd0a6a0811c251a6cddd014d292728484e530d80e872ad9806cfb1c5b3c"}, + {file = "cryptography-38.0.4-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:53049f3379ef05182864d13bb9686657659407148f901f3f1eee57a733fb4b00"}, + {file = "cryptography-38.0.4-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:8a4b2bdb68a447fadebfd7d24855758fe2d6fecc7fed0b78d190b1af39a8e3b0"}, + {file = "cryptography-38.0.4-cp36-abi3-win32.whl", hash = "sha256:1d7e632804a248103b60b16fb145e8df0bc60eed790ece0d12efe8cd3f3e7744"}, + {file = "cryptography-38.0.4-cp36-abi3-win_amd64.whl", hash = "sha256:8e45653fb97eb2f20b8c96f9cd2b3a0654d742b47d638cf2897afbd97f80fa6d"}, + {file = "cryptography-38.0.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca57eb3ddaccd1112c18fc80abe41db443cc2e9dcb1917078e02dfa010a4f353"}, + {file = "cryptography-38.0.4-pp37-pypy37_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:c9e0d79ee4c56d841bd4ac6e7697c8ff3c8d6da67379057f29e66acffcd1e9a7"}, + {file = "cryptography-38.0.4-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:0e70da4bdff7601b0ef48e6348339e490ebfb0cbe638e083c9c41fb49f00c8bd"}, + {file = "cryptography-38.0.4-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:998cd19189d8a747b226d24c0207fdaa1e6658a1d3f2494541cb9dfbf7dcb6d2"}, + {file = "cryptography-38.0.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:67461b5ebca2e4c2ab991733f8ab637a7265bb582f07c7c88914b5afb88cb95b"}, + {file = "cryptography-38.0.4-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:4eb85075437f0b1fd8cd66c688469a0c4119e0ba855e3fef86691971b887caf6"}, + {file = "cryptography-38.0.4-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3178d46f363d4549b9a76264f41c6948752183b3f587666aff0555ac50fd7876"}, + {file = "cryptography-38.0.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:6391e59ebe7c62d9902c24a4d8bcbc79a68e7c4ab65863536127c8a9cd94043b"}, + {file = "cryptography-38.0.4-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:78e47e28ddc4ace41dd38c42e6feecfdadf9c3be2af389abbfeef1ff06822285"}, + {file = "cryptography-38.0.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2fb481682873035600b5502f0015b664abc26466153fab5c6bc92c1ea69d478b"}, + {file = "cryptography-38.0.4-pp39-pypy39_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:4367da5705922cf7070462e964f66e4ac24162e22ab0a2e9d31f1b270dd78083"}, + {file = "cryptography-38.0.4-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b4cad0cea995af760f82820ab4ca54e5471fc782f70a007f31531957f43e9dee"}, + {file = "cryptography-38.0.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:80ca53981ceeb3241998443c4964a387771588c4e4a5d92735a493af868294f9"}, + {file = "cryptography-38.0.4.tar.gz", hash = "sha256:175c1a818b87c9ac80bb7377f5520b7f31b3ef2a0004e2420319beadedb67290"}, ] cssselect = [ - {file = "cssselect-1.1.0-py2.py3-none-any.whl", hash = "sha256:f612ee47b749c877ebae5bb77035d8f4202c6ad0f0fc1271b3c18ad6c4468ecf"}, - {file = "cssselect-1.1.0.tar.gz", hash = "sha256:f95f8dedd925fd8f54edb3d2dfb44c190d9d18512377d3c1e2388d16126879bc"}, + {file = "cssselect-1.2.0-py2.py3-none-any.whl", hash = "sha256:da1885f0c10b60c03ed5eccbb6b68d6eff248d91976fcde348f395d54c9fd35e"}, + {file = "cssselect-1.2.0.tar.gz", hash = "sha256:666b19839cfaddb9ce9d36bfe4c969132c647b92fc9088c4e23f786b30f1b3dc"}, ] cssutils = [ - {file = "cssutils-2.3.0-py3-none-any.whl", hash = "sha256:0cf1f6086b020dee18048ff3999339499f725934017ef9ae2cd5bb77f9ab5f46"}, - {file = "cssutils-2.3.0.tar.gz", hash = "sha256:b2d3b16047caae82e5c590036935bafa1b621cf45c2f38885af4be4838f0fd00"}, + {file = "cssutils-2.6.0-py3-none-any.whl", hash = "sha256:30c72f3a5c5951a11151640600aae7b3bf10e4c0d5c87f5bc505c2cd4a26e0c2"}, + {file = "cssutils-2.6.0.tar.gz", hash = "sha256:f7dcd23c1cec909fdf3630de346e1413b7b2555936dec14ba2ebb9913bf0818e"}, ] dnspython = [ - {file = "dnspython-2.1.0-py3-none-any.whl", hash = "sha256:95d12f6ef0317118d2a1a6fc49aac65ffec7eb8087474158f42f26a639135216"}, - {file = "dnspython-2.1.0.zip", hash = "sha256:e4a87f0b573201a0f3727fa18a516b055fd1107e0e5477cded4a2de497df1dd4"}, + {file = "dnspython-2.2.1-py3-none-any.whl", hash = "sha256:a851e51367fb93e9e1361732c1d60dab63eff98712e503ea7d92e6eccb109b4f"}, + {file = "dnspython-2.2.1.tar.gz", hash = "sha256:0f7569a4a6ff151958b64304071d370daa3243d15941a7beedf0c9fe5105603e"}, ] ecdsa = [ - {file = "ecdsa-0.17.0-py2.py3-none-any.whl", hash = "sha256:5cf31d5b33743abe0dfc28999036c849a69d548f994b535e527ee3cb7f3ef676"}, - {file = "ecdsa-0.17.0.tar.gz", hash = "sha256:b9f500bb439e4153d0330610f5d26baaf18d17b8ced1bc54410d189385ea68aa"}, + {file = "ecdsa-0.18.0-py2.py3-none-any.whl", hash = "sha256:80600258e7ed2f16b9aa1d7c295bd70194109ad5a30fdee0eaeefef1d4c559dd"}, + {file = "ecdsa-0.18.0.tar.gz", hash = "sha256:190348041559e21b22a1d65cee485282ca11a6f81d503fddb84d5017e9ed1e49"}, ] email-validator = [ - {file = "email_validator-1.1.3-py2.py3-none-any.whl", hash = "sha256:5675c8ceb7106a37e40e2698a57c056756bf3f272cfa8682a4f87ebd95d8440b"}, - {file = "email_validator-1.1.3.tar.gz", hash = "sha256:aa237a65f6f4da067119b7df3f13e89c25c051327b2b5b66dc075f33d62480d7"}, + {file = "email_validator-1.3.0-py2.py3-none-any.whl", hash = "sha256:816073f2a7cffef786b29928f58ec16cdac42710a53bb18aa94317e3e145ec5c"}, + {file = "email_validator-1.3.0.tar.gz", hash = "sha256:553a66f8be2ec2dea641ae1d3f29017ab89e9d603d4a25cdaac39eefa283d769"}, ] emails = [ - {file = "emails-0.5.15-py2.py3-none-any.whl", hash = "sha256:2d93bb09539d65a16cf1f68db4ffd0f7f45067633e950866e8a4ef89a7c290ec"}, - {file = "emails-0.5.15.tar.gz", hash = "sha256:fcc02567a528eae6b66d2a5c20ce7a0326e4f6b201bc8ae302f89413164db06a"}, + {file = "emails-0.6-py2.py3-none-any.whl", hash = "sha256:72c1e3198075709cc35f67e1b49e2da1a2bc087e9b444073db61a379adfb7f3c"}, + {file = "emails-0.6.tar.gz", hash = "sha256:a4c2d67ea8b8831967a750d8edc6e77040d7693143fe280e6d2a367d9c36ff88"}, +] +exceptiongroup = [ + {file = "exceptiongroup-1.0.4-py3-none-any.whl", hash = "sha256:542adf9dea4055530d6e1279602fa5cb11dab2395fa650b8674eaec35fc4a828"}, + {file = "exceptiongroup-1.0.4.tar.gz", hash = "sha256:bd14967b79cd9bdb54d97323216f8fdf533e278df937aa2a90089e7d6e06e5ec"}, ] fastapi = [ - {file = "fastapi-0.66.0-py3-none-any.whl", hash = "sha256:85d8aee8c3c46171f4cb7bb3651425a42c07cb9183345d100ef55d88ca2ce15f"}, - {file = "fastapi-0.66.0.tar.gz", hash = "sha256:6ea4225448786f3d6fae737713789f87631a7455f65580de0a4a2e50471060d9"}, + {file = "fastapi-0.88.0-py3-none-any.whl", hash = "sha256:263b718bb384422fe3d042ffc9a0c8dece5e034ab6586ff034f6b4b1667c3eee"}, + {file = "fastapi-0.88.0.tar.gz", hash = "sha256:915bf304180a0e7c5605ec81097b7d4cd8826ff87a02bb198e336fb9f3b5ff02"}, ] flake8 = [ - {file = "flake8-3.9.2-py2.py3-none-any.whl", hash = "sha256:bf8fd333346d844f616e8d47905ef3a3384edae6b4e9beb0c5101e25e3110907"}, - {file = "flake8-3.9.2.tar.gz", hash = "sha256:07528381786f2a6237b061f6e96610a4167b226cb926e2aa2b6b1d78057c576b"}, + {file = "flake8-6.0.0-py2.py3-none-any.whl", hash = "sha256:3833794e27ff64ea4e9cf5d410082a8b97ff1a06c16aa3d2027339cd0f1195c7"}, + {file = "flake8-6.0.0.tar.gz", hash = "sha256:c61007e76655af75e6785a931f452915b371dc48f56efd765247c8fe68f2b181"}, +] +greenlet = [ + {file = "greenlet-2.0.1-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:9ed358312e63bf683b9ef22c8e442ef6c5c02973f0c2a939ec1d7b50c974015c"}, + {file = "greenlet-2.0.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4f09b0010e55bec3239278f642a8a506b91034f03a4fb28289a7d448a67f1515"}, + {file = "greenlet-2.0.1-cp27-cp27m-win32.whl", hash = "sha256:1407fe45246632d0ffb7a3f4a520ba4e6051fc2cbd61ba1f806900c27f47706a"}, + {file = "greenlet-2.0.1-cp27-cp27m-win_amd64.whl", hash = "sha256:3001d00eba6bbf084ae60ec7f4bb8ed375748f53aeaefaf2a37d9f0370558524"}, + {file = "greenlet-2.0.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:d566b82e92ff2e09dd6342df7e0eb4ff6275a3f08db284888dcd98134dbd4243"}, + {file = "greenlet-2.0.1-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:0722c9be0797f544a3ed212569ca3fe3d9d1a1b13942d10dd6f0e8601e484d26"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d37990425b4687ade27810e3b1a1c37825d242ebc275066cfee8cb6b8829ccd"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be35822f35f99dcc48152c9839d0171a06186f2d71ef76dc57fa556cc9bf6b45"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c140e7eb5ce47249668056edf3b7e9900c6a2e22fb0eaf0513f18a1b2c14e1da"}, + {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d21681f09e297a5adaa73060737e3aa1279a13ecdcfcc6ef66c292cb25125b2d"}, + {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fb412b7db83fe56847df9c47b6fe3f13911b06339c2aa02dcc09dce8bbf582cd"}, + {file = "greenlet-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:c6a08799e9e88052221adca55741bf106ec7ea0710bca635c208b751f0d5b617"}, + {file = "greenlet-2.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9e112e03d37987d7b90c1e98ba5e1b59e1645226d78d73282f45b326f7bddcb9"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56961cfca7da2fdd178f95ca407fa330c64f33289e1804b592a77d5593d9bd94"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:13ba6e8e326e2116c954074c994da14954982ba2795aebb881c07ac5d093a58a"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bf633a50cc93ed17e494015897361010fc08700d92676c87931d3ea464123ce"}, + {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9f2c221eecb7ead00b8e3ddb913c67f75cba078fd1d326053225a3f59d850d72"}, + {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:13ebf93c343dd8bd010cd98e617cb4c1c1f352a0cf2524c82d3814154116aa82"}, + {file = "greenlet-2.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:6f61d71bbc9b4a3de768371b210d906726535d6ca43506737682caa754b956cd"}, + {file = "greenlet-2.0.1-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:2d0bac0385d2b43a7bd1d651621a4e0f1380abc63d6fb1012213a401cbd5bf8f"}, + {file = "greenlet-2.0.1-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:f6327b6907b4cb72f650a5b7b1be23a2aab395017aa6f1adb13069d66360eb3f"}, + {file = "greenlet-2.0.1-cp35-cp35m-win32.whl", hash = "sha256:81b0ea3715bf6a848d6f7149d25bf018fd24554a4be01fcbbe3fdc78e890b955"}, + {file = "greenlet-2.0.1-cp35-cp35m-win_amd64.whl", hash = "sha256:38255a3f1e8942573b067510f9611fc9e38196077b0c8eb7a8c795e105f9ce77"}, + {file = "greenlet-2.0.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:04957dc96669be041e0c260964cfef4c77287f07c40452e61abe19d647505581"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:4aeaebcd91d9fee9aa768c1b39cb12214b30bf36d2b7370505a9f2165fedd8d9"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:974a39bdb8c90a85982cdb78a103a32e0b1be986d411303064b28a80611f6e51"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8dca09dedf1bd8684767bc736cc20c97c29bc0c04c413e3276e0962cd7aeb148"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a4c0757db9bd08470ff8277791795e70d0bf035a011a528ee9a5ce9454b6cba2"}, + {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:5067920de254f1a2dee8d3d9d7e4e03718e8fd2d2d9db962c8c9fa781ae82a39"}, + {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:5a8e05057fab2a365c81abc696cb753da7549d20266e8511eb6c9d9f72fe3e92"}, + {file = "greenlet-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:3d75b8d013086b08e801fbbb896f7d5c9e6ccd44f13a9241d2bf7c0df9eda928"}, + {file = "greenlet-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:097e3dae69321e9100202fc62977f687454cd0ea147d0fd5a766e57450c569fd"}, + {file = "greenlet-2.0.1-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:cb242fc2cda5a307a7698c93173d3627a2a90d00507bccf5bc228851e8304963"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:72b00a8e7c25dcea5946692a2485b1a0c0661ed93ecfedfa9b6687bd89a24ef5"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5b0ff9878333823226d270417f24f4d06f235cb3e54d1103b71ea537a6a86ce"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be9e0fb2ada7e5124f5282d6381903183ecc73ea019568d6d63d33f25b2a9000"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b493db84d124805865adc587532ebad30efa68f79ad68f11b336e0a51ec86c2"}, + {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0459d94f73265744fee4c2d5ec44c6f34aa8a31017e6e9de770f7bcf29710be9"}, + {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a20d33124935d27b80e6fdacbd34205732660e0a1d35d8b10b3328179a2b51a1"}, + {file = "greenlet-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:ea688d11707d30e212e0110a1aac7f7f3f542a259235d396f88be68b649e47d1"}, + {file = "greenlet-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:afe07421c969e259e9403c3bb658968702bc3b78ec0b6fde3ae1e73440529c23"}, + {file = "greenlet-2.0.1-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:cd4ccc364cf75d1422e66e247e52a93da6a9b73cefa8cad696f3cbbb75af179d"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:4c8b1c43e75c42a6cafcc71defa9e01ead39ae80bd733a2608b297412beede68"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:659f167f419a4609bc0516fb18ea69ed39dbb25594934bd2dd4d0401660e8a1e"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:356e4519d4dfa766d50ecc498544b44c0249b6de66426041d7f8b751de4d6b48"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:811e1d37d60b47cb8126e0a929b58c046251f28117cb16fcd371eed61f66b764"}, + {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d38ffd0e81ba8ef347d2be0772e899c289b59ff150ebbbbe05dc61b1246eb4e0"}, + {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:0109af1138afbfb8ae647e31a2b1ab030f58b21dd8528c27beaeb0093b7938a9"}, + {file = "greenlet-2.0.1-cp38-cp38-win32.whl", hash = "sha256:88c8d517e78acdf7df8a2134a3c4b964415b575d2840a2746ddb1cc6175f8608"}, + {file = "greenlet-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:d6ee1aa7ab36475035eb48c01efae87d37936a8173fc4d7b10bb02c2d75dd8f6"}, + {file = "greenlet-2.0.1-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:b1992ba9d4780d9af9726bbcef6a1db12d9ab1ccc35e5773685a24b7fb2758eb"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:b5e83e4de81dcc9425598d9469a624826a0b1211380ac444c7c791d4a2137c19"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:505138d4fa69462447a562a7c2ef723c6025ba12ac04478bc1ce2fcc279a2db5"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cce1e90dd302f45716a7715517c6aa0468af0bf38e814ad4eab58e88fc09f7f7"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e9744c657d896c7b580455e739899e492a4a452e2dd4d2b3e459f6b244a638d"}, + {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:662e8f7cad915ba75d8017b3e601afc01ef20deeeabf281bd00369de196d7726"}, + {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:41b825d65f31e394b523c84db84f9383a2f7eefc13d987f308f4663794d2687e"}, + {file = "greenlet-2.0.1-cp39-cp39-win32.whl", hash = "sha256:db38f80540083ea33bdab614a9d28bcec4b54daa5aff1668d7827a9fc769ae0a"}, + {file = "greenlet-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:b23d2a46d53210b498e5b701a1913697671988f4bf8e10f935433f6e7c332fb6"}, + {file = "greenlet-2.0.1.tar.gz", hash = "sha256:42e602564460da0e8ee67cb6d7236363ee5e131aa15943b6670e44e5c2ed0f67"}, ] gunicorn = [ + {file = "gunicorn-20.1.0-py3-none-any.whl", hash = "sha256:9dcc4547dbb1cb284accfb15ab5667a0e5d1881cc443e0677b4882a4067a807e"}, {file = "gunicorn-20.1.0.tar.gz", hash = "sha256:e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8"}, ] h11 = [ - {file = "h11-0.12.0-py3-none-any.whl", hash = "sha256:36a3cb8c0a032f56e2da7084577878a035d3b61d104230d4bd49c0c6b555a9c6"}, - {file = "h11-0.12.0.tar.gz", hash = "sha256:47222cb6067e4a307d535814917cd98fd0a57b6788ce715755fa2b6c28b56042"}, + {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, + {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, +] +httpcore = [ + {file = "httpcore-0.16.2-py3-none-any.whl", hash = "sha256:52c79095197178856724541e845f2db86d5f1527640d9254b5b8f6f6cebfdee6"}, + {file = "httpcore-0.16.2.tar.gz", hash = "sha256:c35c5176dc82db732acfd90b581a3062c999a72305df30c0fc8fafd8e4aca068"}, ] httptools = [ - {file = "httptools-0.2.0-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:79dbc21f3612a78b28384e989b21872e2e3cf3968532601544696e4ed0007ce5"}, - {file = "httptools-0.2.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:78d03dd39b09c99ec917d50189e6743adbfd18c15d5944392d2eabda688bf149"}, - {file = "httptools-0.2.0-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:a23166e5ae2775709cf4f7ad4c2048755ebfb272767d244e1a96d55ac775cca7"}, - {file = "httptools-0.2.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:3ab1f390d8867f74b3b5ee2a7ecc9b8d7f53750bd45714bf1cb72a953d7dfa77"}, - {file = "httptools-0.2.0-cp36-cp36m-win_amd64.whl", hash = "sha256:a7594f9a010cdf1e16a58b3bf26c9da39bbf663e3b8d46d39176999d71816658"}, - {file = "httptools-0.2.0-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:01b392a166adcc8bc2f526a939a8aabf89fe079243e1543fd0e7dc1b58d737cb"}, - {file = "httptools-0.2.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:80ffa04fe8c8dfacf6e4cef8277347d35b0442c581f5814f3b0cf41b65c43c6e"}, - {file = "httptools-0.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d5682eeb10cca0606c4a8286a3391d4c3c5a36f0c448e71b8bd05be4e1694bfb"}, - {file = "httptools-0.2.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:a289c27ccae399a70eacf32df9a44059ca2ba4ac444604b00a19a6c1f0809943"}, - {file = "httptools-0.2.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:813871f961edea6cb2fe312f2d9b27d12a51ba92545380126f80d0de1917ea15"}, - {file = "httptools-0.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:cc9be041e428c10f8b6ab358c6b393648f9457094e1dcc11b4906026d43cd380"}, - {file = "httptools-0.2.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:b08d00d889a118f68f37f3c43e359aab24ee29eb2e3fe96d64c6a2ba8b9d6557"}, - {file = "httptools-0.2.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:fd3b8905e21431ad306eeaf56644a68fdd621bf8f3097eff54d0f6bdf7262065"}, - {file = "httptools-0.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:200fc1cdf733a9ff554c0bb97a4047785cfaad9875307d6087001db3eb2b417f"}, - {file = "httptools-0.2.0.tar.gz", hash = "sha256:94505026be56652d7a530ab03d89474dc6021019d6b8682281977163b3471ea0"}, + {file = "httptools-0.5.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8f470c79061599a126d74385623ff4744c4e0f4a0997a353a44923c0b561ee51"}, + {file = "httptools-0.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e90491a4d77d0cb82e0e7a9cb35d86284c677402e4ce7ba6b448ccc7325c5421"}, + {file = "httptools-0.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c1d2357f791b12d86faced7b5736dea9ef4f5ecdc6c3f253e445ee82da579449"}, + {file = "httptools-0.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f90cd6fd97c9a1b7fe9215e60c3bd97336742a0857f00a4cb31547bc22560c2"}, + {file = "httptools-0.5.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:5230a99e724a1bdbbf236a1b58d6e8504b912b0552721c7c6b8570925ee0ccde"}, + {file = "httptools-0.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3a47a34f6015dd52c9eb629c0f5a8a5193e47bf2a12d9a3194d231eaf1bc451a"}, + {file = "httptools-0.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:24bb4bb8ac3882f90aa95403a1cb48465de877e2d5298ad6ddcfdebec060787d"}, + {file = "httptools-0.5.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e67d4f8734f8054d2c4858570cc4b233bf753f56e85217de4dfb2495904cf02e"}, + {file = "httptools-0.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7e5eefc58d20e4c2da82c78d91b2906f1a947ef42bd668db05f4ab4201a99f49"}, + {file = "httptools-0.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0297822cea9f90a38df29f48e40b42ac3d48a28637368f3ec6d15eebefd182f9"}, + {file = "httptools-0.5.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:557be7fbf2bfa4a2ec65192c254e151684545ebab45eca5d50477d562c40f986"}, + {file = "httptools-0.5.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:54465401dbbec9a6a42cf737627fb0f014d50dc7365a6b6cd57753f151a86ff0"}, + {file = "httptools-0.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4d9ebac23d2de960726ce45f49d70eb5466725c0087a078866043dad115f850f"}, + {file = "httptools-0.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:e8a34e4c0ab7b1ca17b8763613783e2458e77938092c18ac919420ab8655c8c1"}, + {file = "httptools-0.5.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f659d7a48401158c59933904040085c200b4be631cb5f23a7d561fbae593ec1f"}, + {file = "httptools-0.5.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ef1616b3ba965cd68e6f759eeb5d34fbf596a79e84215eeceebf34ba3f61fdc7"}, + {file = "httptools-0.5.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3625a55886257755cb15194efbf209584754e31d336e09e2ffe0685a76cb4b60"}, + {file = "httptools-0.5.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:72ad589ba5e4a87e1d404cc1cb1b5780bfcb16e2aec957b88ce15fe879cc08ca"}, + {file = "httptools-0.5.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:850fec36c48df5a790aa735417dca8ce7d4b48d59b3ebd6f83e88a8125cde324"}, + {file = "httptools-0.5.0-cp36-cp36m-win_amd64.whl", hash = "sha256:f222e1e9d3f13b68ff8a835574eda02e67277d51631d69d7cf7f8e07df678c86"}, + {file = "httptools-0.5.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3cb8acf8f951363b617a8420768a9f249099b92e703c052f9a51b66342eea89b"}, + {file = "httptools-0.5.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:550059885dc9c19a072ca6d6735739d879be3b5959ec218ba3e013fd2255a11b"}, + {file = "httptools-0.5.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a04fe458a4597aa559b79c7f48fe3dceabef0f69f562daf5c5e926b153817281"}, + {file = "httptools-0.5.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7d0c1044bce274ec6711f0770fd2d5544fe392591d204c68328e60a46f88843b"}, + {file = "httptools-0.5.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c6eeefd4435055a8ebb6c5cc36111b8591c192c56a95b45fe2af22d9881eee25"}, + {file = "httptools-0.5.0-cp37-cp37m-win_amd64.whl", hash = "sha256:5b65be160adcd9de7a7e6413a4966665756e263f0d5ddeffde277ffeee0576a5"}, + {file = "httptools-0.5.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:fe9c766a0c35b7e3d6b6939393c8dfdd5da3ac5dec7f971ec9134f284c6c36d6"}, + {file = "httptools-0.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:85b392aba273566c3d5596a0a490978c085b79700814fb22bfd537d381dd230c"}, + {file = "httptools-0.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5e3088f4ed33947e16fd865b8200f9cfae1144f41b64a8cf19b599508e096bc"}, + {file = "httptools-0.5.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c2a56b6aad7cc8f5551d8e04ff5a319d203f9d870398b94702300de50190f63"}, + {file = "httptools-0.5.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9b571b281a19762adb3f48a7731f6842f920fa71108aff9be49888320ac3e24d"}, + {file = "httptools-0.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:aa47ffcf70ba6f7848349b8a6f9b481ee0f7637931d91a9860a1838bfc586901"}, + {file = "httptools-0.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:bede7ee075e54b9a5bde695b4fc8f569f30185891796b2e4e09e2226801d09bd"}, + {file = "httptools-0.5.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:64eba6f168803a7469866a9c9b5263a7463fa8b7a25b35e547492aa7322036b6"}, + {file = "httptools-0.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4b098e4bb1174096a93f48f6193e7d9aa7071506a5877da09a783509ca5fff42"}, + {file = "httptools-0.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9423a2de923820c7e82e18980b937893f4aa8251c43684fa1772e341f6e06887"}, + {file = "httptools-0.5.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca1b7becf7d9d3ccdbb2f038f665c0f4857e08e1d8481cbcc1a86a0afcfb62b2"}, + {file = "httptools-0.5.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:50d4613025f15f4b11f1c54bbed4761c0020f7f921b95143ad6d58c151198142"}, + {file = "httptools-0.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8ffce9d81c825ac1deaa13bc9694c0562e2840a48ba21cfc9f3b4c922c16f372"}, + {file = "httptools-0.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:1af91b3650ce518d226466f30bbba5b6376dbd3ddb1b2be8b0658c6799dd450b"}, + {file = "httptools-0.5.0.tar.gz", hash = "sha256:295874861c173f9101960bba332429bb77ed4dcd8cdf5cee9922eb00e4f6bc09"}, +] +httpx = [ + {file = "httpx-0.23.1-py3-none-any.whl", hash = "sha256:0b9b1f0ee18b9978d637b0776bfd7f54e2ca278e063e3586d8f01cda89e042a8"}, + {file = "httpx-0.23.1.tar.gz", hash = "sha256:202ae15319be24efe9a8bd4ed4360e68fde7b38bcc2ce87088d416f026667d19"}, ] idna = [ - {file = "idna-3.2-py3-none-any.whl", hash = "sha256:14475042e284991034cb48e06f6851428fb14c4dc953acd9be9a5e95c7b6dd7a"}, - {file = "idna-3.2.tar.gz", hash = "sha256:467fbad99067910785144ce333826c71fb0e63a425657295239737f7ecd125f3"}, + {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, + {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, ] inboard = [ - {file = "inboard-0.10.2-py3-none-any.whl", hash = "sha256:0f0ef56d2df297fee85998fb6aff55b3fd89531b0d1406cddb0167c6259cdef8"}, - {file = "inboard-0.10.2.tar.gz", hash = "sha256:9ca0d412a6232034af24307fa6f450998576bfa2b2b2f348d9619362c74784b5"}, + {file = "inboard-0.37.0-py3-none-any.whl", hash = "sha256:e53e22f875025df02c5b7320bfc07d9d0e571f5801459d716350fea3cea61a4a"}, + {file = "inboard-0.37.0.tar.gz", hash = "sha256:d0196574049687ea8b68779b1ee2cc517964de689df521331ca107dfa1b50bf7"}, +] +iniconfig = [ + {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, + {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, ] isort = [ - {file = "isort-4.3.21-py2.py3-none-any.whl", hash = "sha256:6e811fcb295968434526407adb8796944f1988c5b65e8139058f2014cbe100fd"}, - {file = "isort-4.3.21.tar.gz", hash = "sha256:54da7e92468955c4fceacd0c86bd0ec997b0e1ee80d97f67c35a78b719dccab1"}, + {file = "isort-5.11.2-py3-none-any.whl", hash = "sha256:e486966fba83f25b8045f8dd7455b0a0d1e4de481e1d7ce4669902d9fb85e622"}, + {file = "isort-5.11.2.tar.gz", hash = "sha256:dd8bbc5c0990f2a095d754e50360915f73b4c26fc82733eb5bfc6b48396af4d2"}, ] jinja2 = [ - {file = "Jinja2-2.11.3-py2.py3-none-any.whl", hash = "sha256:03e47ad063331dd6a3f04a43eddca8a966a26ba0c5b7207a9a9e4e08f1b29419"}, - {file = "Jinja2-2.11.3.tar.gz", hash = "sha256:a6d58433de0ae800347cab1fa3043cebbabe8baa9d29e668f1c768cb87a333c6"}, + {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, + {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, ] kombu = [ - {file = "kombu-4.6.11-py2.py3-none-any.whl", hash = "sha256:be48cdffb54a2194d93ad6533d73f69408486483d189fe9f5990ee24255b0e0a"}, - {file = "kombu-4.6.11.tar.gz", hash = "sha256:ca1b45faac8c0b18493d02a8571792f3c40291cf2bcf1f55afed3d8f3aa7ba74"}, + {file = "kombu-5.2.4-py3-none-any.whl", hash = "sha256:8b213b24293d3417bcf0d2f5537b7f756079e3ea232a8386dcc89a59fd2361a4"}, + {file = "kombu-5.2.4.tar.gz", hash = "sha256:37cee3ee725f94ea8bb173eaab7c1760203ea53bbebae226328600f9d2799610"}, ] lxml = [ - {file = "lxml-4.6.3-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:df7c53783a46febb0e70f6b05df2ba104610f2fb0d27023409734a3ecbb78fb2"}, - {file = "lxml-4.6.3-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:1b7584d421d254ab86d4f0b13ec662a9014397678a7c4265a02a6d7c2b18a75f"}, - {file = "lxml-4.6.3-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:079f3ae844f38982d156efce585bc540c16a926d4436712cf4baee0cce487a3d"}, - {file = "lxml-4.6.3-cp27-cp27m-win32.whl", hash = "sha256:bc4313cbeb0e7a416a488d72f9680fffffc645f8a838bd2193809881c67dd106"}, - {file = "lxml-4.6.3-cp27-cp27m-win_amd64.whl", hash = "sha256:8157dadbb09a34a6bd95a50690595e1fa0af1a99445e2744110e3dca7831c4ee"}, - {file = "lxml-4.6.3-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:7728e05c35412ba36d3e9795ae8995e3c86958179c9770e65558ec3fdfd3724f"}, - {file = "lxml-4.6.3-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:4bff24dfeea62f2e56f5bab929b4428ae6caba2d1eea0c2d6eb618e30a71e6d4"}, - {file = "lxml-4.6.3-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:74f7d8d439b18fa4c385f3f5dfd11144bb87c1da034a466c5b5577d23a1d9b51"}, - {file = "lxml-4.6.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:f90ba11136bfdd25cae3951af8da2e95121c9b9b93727b1b896e3fa105b2f586"}, - {file = "lxml-4.6.3-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:4c61b3a0db43a1607d6264166b230438f85bfed02e8cff20c22e564d0faff354"}, - {file = "lxml-4.6.3-cp35-cp35m-manylinux2014_x86_64.whl", hash = "sha256:5c8c163396cc0df3fd151b927e74f6e4acd67160d6c33304e805b84293351d16"}, - {file = "lxml-4.6.3-cp35-cp35m-win32.whl", hash = "sha256:f2380a6376dfa090227b663f9678150ef27543483055cc327555fb592c5967e2"}, - {file = "lxml-4.6.3-cp35-cp35m-win_amd64.whl", hash = "sha256:c4f05c5a7c49d2fb70223d0d5bcfbe474cf928310ac9fa6a7c6dddc831d0b1d4"}, - {file = "lxml-4.6.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d2e35d7bf1c1ac8c538f88d26b396e73dd81440d59c1ef8522e1ea77b345ede4"}, - {file = "lxml-4.6.3-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:289e9ca1a9287f08daaf796d96e06cb2bc2958891d7911ac7cae1c5f9e1e0ee3"}, - {file = "lxml-4.6.3-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:bccbfc27563652de7dc9bdc595cb25e90b59c5f8e23e806ed0fd623755b6565d"}, - {file = "lxml-4.6.3-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:d916d31fd85b2f78c76400d625076d9124de3e4bda8b016d25a050cc7d603f24"}, - {file = "lxml-4.6.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:820628b7b3135403540202e60551e741f9b6d3304371712521be939470b454ec"}, - {file = "lxml-4.6.3-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:c47ff7e0a36d4efac9fd692cfa33fbd0636674c102e9e8d9b26e1b93a94e7617"}, - {file = "lxml-4.6.3-cp36-cp36m-win32.whl", hash = "sha256:5a0a14e264069c03e46f926be0d8919f4105c1623d620e7ec0e612a2e9bf1c04"}, - {file = "lxml-4.6.3-cp36-cp36m-win_amd64.whl", hash = "sha256:92e821e43ad382332eade6812e298dc9701c75fe289f2a2d39c7960b43d1e92a"}, - {file = "lxml-4.6.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:efd7a09678fd8b53117f6bae4fa3825e0a22b03ef0a932e070c0bdbb3a35e654"}, - {file = "lxml-4.6.3-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:efac139c3f0bf4f0939f9375af4b02c5ad83a622de52d6dfa8e438e8e01d0eb0"}, - {file = "lxml-4.6.3-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:0fbcf5565ac01dff87cbfc0ff323515c823081c5777a9fc7703ff58388c258c3"}, - {file = "lxml-4.6.3-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:36108c73739985979bf302006527cf8a20515ce444ba916281d1c43938b8bb96"}, - {file = "lxml-4.6.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:122fba10466c7bd4178b07dba427aa516286b846b2cbd6f6169141917283aae2"}, - {file = "lxml-4.6.3-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:cdaf11d2bd275bf391b5308f86731e5194a21af45fbaaaf1d9e8147b9160ea92"}, - {file = "lxml-4.6.3-cp37-cp37m-win32.whl", hash = "sha256:3439c71103ef0e904ea0a1901611863e51f50b5cd5e8654a151740fde5e1cade"}, - {file = "lxml-4.6.3-cp37-cp37m-win_amd64.whl", hash = "sha256:4289728b5e2000a4ad4ab8da6e1db2e093c63c08bdc0414799ee776a3f78da4b"}, - {file = "lxml-4.6.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b007cbb845b28db4fb8b6a5cdcbf65bacb16a8bd328b53cbc0698688a68e1caa"}, - {file = "lxml-4.6.3-cp38-cp38-manylinux1_i686.whl", hash = "sha256:76fa7b1362d19f8fbd3e75fe2fb7c79359b0af8747e6f7141c338f0bee2f871a"}, - {file = "lxml-4.6.3-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:26e761ab5b07adf5f555ee82fb4bfc35bf93750499c6c7614bd64d12aaa67927"}, - {file = "lxml-4.6.3-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:e1cbd3f19a61e27e011e02f9600837b921ac661f0c40560eefb366e4e4fb275e"}, - {file = "lxml-4.6.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:66e575c62792c3f9ca47cb8b6fab9e35bab91360c783d1606f758761810c9791"}, - {file = "lxml-4.6.3-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:1b38116b6e628118dea5b2186ee6820ab138dbb1e24a13e478490c7db2f326ae"}, - {file = "lxml-4.6.3-cp38-cp38-win32.whl", hash = "sha256:89b8b22a5ff72d89d48d0e62abb14340d9e99fd637d046c27b8b257a01ffbe28"}, - {file = "lxml-4.6.3-cp38-cp38-win_amd64.whl", hash = "sha256:2a9d50e69aac3ebee695424f7dbd7b8c6d6eb7de2a2eb6b0f6c7db6aa41e02b7"}, - {file = "lxml-4.6.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ce256aaa50f6cc9a649c51be3cd4ff142d67295bfc4f490c9134d0f9f6d58ef0"}, - {file = "lxml-4.6.3-cp39-cp39-manylinux1_i686.whl", hash = "sha256:7610b8c31688f0b1be0ef882889817939490a36d0ee880ea562a4e1399c447a1"}, - {file = "lxml-4.6.3-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f8380c03e45cf09f8557bdaa41e1fa7c81f3ae22828e1db470ab2a6c96d8bc23"}, - {file = "lxml-4.6.3-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:3082c518be8e97324390614dacd041bb1358c882d77108ca1957ba47738d9d59"}, - {file = "lxml-4.6.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:884ab9b29feaca361f7f88d811b1eea9bfca36cf3da27768d28ad45c3ee6f969"}, - {file = "lxml-4.6.3-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:6f12e1427285008fd32a6025e38e977d44d6382cf28e7201ed10d6c1698d2a9a"}, - {file = "lxml-4.6.3-cp39-cp39-win32.whl", hash = "sha256:33bb934a044cf32157c12bfcfbb6649807da20aa92c062ef51903415c704704f"}, - {file = "lxml-4.6.3-cp39-cp39-win_amd64.whl", hash = "sha256:542d454665a3e277f76954418124d67516c5f88e51a900365ed54a9806122b83"}, - {file = "lxml-4.6.3.tar.gz", hash = "sha256:39b78571b3b30645ac77b95f7c69d1bffc4cf8c3b157c435a34da72e78c82468"}, + {file = "lxml-4.9.2-cp27-cp27m-macosx_10_15_x86_64.whl", hash = "sha256:76cf573e5a365e790396a5cc2b909812633409306c6531a6877c59061e42c4f2"}, + {file = "lxml-4.9.2-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b1f42b6921d0e81b1bcb5e395bc091a70f41c4d4e55ba99c6da2b31626c44892"}, + {file = "lxml-4.9.2-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:9f102706d0ca011de571de32c3247c6476b55bb6bc65a20f682f000b07a4852a"}, + {file = "lxml-4.9.2-cp27-cp27m-win32.whl", hash = "sha256:8d0b4612b66ff5d62d03bcaa043bb018f74dfea51184e53f067e6fdcba4bd8de"}, + {file = "lxml-4.9.2-cp27-cp27m-win_amd64.whl", hash = "sha256:4c8f293f14abc8fd3e8e01c5bd86e6ed0b6ef71936ded5bf10fe7a5efefbaca3"}, + {file = "lxml-4.9.2-cp27-cp27mu-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2899456259589aa38bfb018c364d6ae7b53c5c22d8e27d0ec7609c2a1ff78b50"}, + {file = "lxml-4.9.2-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6749649eecd6a9871cae297bffa4ee76f90b4504a2a2ab528d9ebe912b101975"}, + {file = "lxml-4.9.2-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:a08cff61517ee26cb56f1e949cca38caabe9ea9fbb4b1e10a805dc39844b7d5c"}, + {file = "lxml-4.9.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:85cabf64adec449132e55616e7ca3e1000ab449d1d0f9d7f83146ed5bdcb6d8a"}, + {file = "lxml-4.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:8340225bd5e7a701c0fa98284c849c9b9fc9238abf53a0ebd90900f25d39a4e4"}, + {file = "lxml-4.9.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:1ab8f1f932e8f82355e75dda5413a57612c6ea448069d4fb2e217e9a4bed13d4"}, + {file = "lxml-4.9.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:699a9af7dffaf67deeae27b2112aa06b41c370d5e7633e0ee0aea2e0b6c211f7"}, + {file = "lxml-4.9.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b9cc34af337a97d470040f99ba4282f6e6bac88407d021688a5d585e44a23184"}, + {file = "lxml-4.9.2-cp310-cp310-win32.whl", hash = "sha256:d02a5399126a53492415d4906ab0ad0375a5456cc05c3fc0fc4ca11771745cda"}, + {file = "lxml-4.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:a38486985ca49cfa574a507e7a2215c0c780fd1778bb6290c21193b7211702ab"}, + {file = "lxml-4.9.2-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:6943826a0374fb135bb11843594eda9ae150fba9d1d027d2464c713da7c09afe"}, + {file = "lxml-4.9.2-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:c83203addf554215463b59f6399835201999b5e48019dc17f182ed5ad87205c9"}, + {file = "lxml-4.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:2a87fa548561d2f4643c99cd13131acb607ddabb70682dcf1dff5f71f781a4bf"}, + {file = "lxml-4.9.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:d6b430a9938a5a5d85fc107d852262ddcd48602c120e3dbb02137c83d212b380"}, + {file = "lxml-4.9.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:3efea981d956a6f7173b4659849f55081867cf897e719f57383698af6f618a92"}, + {file = "lxml-4.9.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:df0623dcf9668ad0445e0558a21211d4e9a149ea8f5666917c8eeec515f0a6d1"}, + {file = "lxml-4.9.2-cp311-cp311-win32.whl", hash = "sha256:da248f93f0418a9e9d94b0080d7ebc407a9a5e6d0b57bb30db9b5cc28de1ad33"}, + {file = "lxml-4.9.2-cp311-cp311-win_amd64.whl", hash = "sha256:3818b8e2c4b5148567e1b09ce739006acfaa44ce3156f8cbbc11062994b8e8dd"}, + {file = "lxml-4.9.2-cp35-cp35m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ca989b91cf3a3ba28930a9fc1e9aeafc2a395448641df1f387a2d394638943b0"}, + {file = "lxml-4.9.2-cp35-cp35m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:822068f85e12a6e292803e112ab876bc03ed1f03dddb80154c395f891ca6b31e"}, + {file = "lxml-4.9.2-cp35-cp35m-win32.whl", hash = "sha256:be7292c55101e22f2a3d4d8913944cbea71eea90792bf914add27454a13905df"}, + {file = "lxml-4.9.2-cp36-cp36m-macosx_10_15_x86_64.whl", hash = "sha256:b26a29f0b7fc6f0897f043ca366142d2b609dc60756ee6e4e90b5f762c6adc53"}, + {file = "lxml-4.9.2-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:ab323679b8b3030000f2be63e22cdeea5b47ee0abd2d6a1dc0c8103ddaa56cd7"}, + {file = "lxml-4.9.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:689bb688a1db722485e4610a503e3e9210dcc20c520b45ac8f7533c837be76fe"}, + {file = "lxml-4.9.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:f49e52d174375a7def9915c9f06ec4e569d235ad428f70751765f48d5926678c"}, + {file = "lxml-4.9.2-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:36c3c175d34652a35475a73762b545f4527aec044910a651d2bf50de9c3352b1"}, + {file = "lxml-4.9.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:a35f8b7fa99f90dd2f5dc5a9fa12332642f087a7641289ca6c40d6e1a2637d8e"}, + {file = "lxml-4.9.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:58bfa3aa19ca4c0f28c5dde0ff56c520fbac6f0daf4fac66ed4c8d2fb7f22e74"}, + {file = "lxml-4.9.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:bc718cd47b765e790eecb74d044cc8d37d58562f6c314ee9484df26276d36a38"}, + {file = "lxml-4.9.2-cp36-cp36m-win32.whl", hash = "sha256:d5bf6545cd27aaa8a13033ce56354ed9e25ab0e4ac3b5392b763d8d04b08e0c5"}, + {file = "lxml-4.9.2-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:05ca3f6abf5cf78fe053da9b1166e062ade3fa5d4f92b4ed688127ea7d7b1d03"}, + {file = "lxml-4.9.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:a5da296eb617d18e497bcf0a5c528f5d3b18dadb3619fbdadf4ed2356ef8d941"}, + {file = "lxml-4.9.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:04876580c050a8c5341d706dd464ff04fd597095cc8c023252566a8826505726"}, + {file = "lxml-4.9.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:c9ec3eaf616d67db0764b3bb983962b4f385a1f08304fd30c7283954e6a7869b"}, + {file = "lxml-4.9.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2a29ba94d065945944016b6b74e538bdb1751a1db6ffb80c9d3c2e40d6fa9894"}, + {file = "lxml-4.9.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:a82d05da00a58b8e4c0008edbc8a4b6ec5a4bc1e2ee0fb6ed157cf634ed7fa45"}, + {file = "lxml-4.9.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:223f4232855ade399bd409331e6ca70fb5578efef22cf4069a6090acc0f53c0e"}, + {file = "lxml-4.9.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d17bc7c2ccf49c478c5bdd447594e82692c74222698cfc9b5daae7ae7e90743b"}, + {file = "lxml-4.9.2-cp37-cp37m-win32.whl", hash = "sha256:b64d891da92e232c36976c80ed7ebb383e3f148489796d8d31a5b6a677825efe"}, + {file = "lxml-4.9.2-cp37-cp37m-win_amd64.whl", hash = "sha256:a0a336d6d3e8b234a3aae3c674873d8f0e720b76bc1d9416866c41cd9500ffb9"}, + {file = "lxml-4.9.2-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:da4dd7c9c50c059aba52b3524f84d7de956f7fef88f0bafcf4ad7dde94a064e8"}, + {file = "lxml-4.9.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:821b7f59b99551c69c85a6039c65b75f5683bdc63270fec660f75da67469ca24"}, + {file = "lxml-4.9.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:e5168986b90a8d1f2f9dc1b841467c74221bd752537b99761a93d2d981e04889"}, + {file = "lxml-4.9.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:8e20cb5a47247e383cf4ff523205060991021233ebd6f924bca927fcf25cf86f"}, + {file = "lxml-4.9.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:13598ecfbd2e86ea7ae45ec28a2a54fb87ee9b9fdb0f6d343297d8e548392c03"}, + {file = "lxml-4.9.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:880bbbcbe2fca64e2f4d8e04db47bcdf504936fa2b33933efd945e1b429bea8c"}, + {file = "lxml-4.9.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7d2278d59425777cfcb19735018d897ca8303abe67cc735f9f97177ceff8027f"}, + {file = "lxml-4.9.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5344a43228767f53a9df6e5b253f8cdca7dfc7b7aeae52551958192f56d98457"}, + {file = "lxml-4.9.2-cp38-cp38-win32.whl", hash = "sha256:925073b2fe14ab9b87e73f9a5fde6ce6392da430f3004d8b72cc86f746f5163b"}, + {file = "lxml-4.9.2-cp38-cp38-win_amd64.whl", hash = "sha256:9b22c5c66f67ae00c0199f6055705bc3eb3fcb08d03d2ec4059a2b1b25ed48d7"}, + {file = "lxml-4.9.2-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:5f50a1c177e2fa3ee0667a5ab79fdc6b23086bc8b589d90b93b4bd17eb0e64d1"}, + {file = "lxml-4.9.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:090c6543d3696cbe15b4ac6e175e576bcc3f1ccfbba970061b7300b0c15a2140"}, + {file = "lxml-4.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:63da2ccc0857c311d764e7d3d90f429c252e83b52d1f8f1d1fe55be26827d1f4"}, + {file = "lxml-4.9.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:5b4545b8a40478183ac06c073e81a5ce4cf01bf1734962577cf2bb569a5b3bbf"}, + {file = "lxml-4.9.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2e430cd2824f05f2d4f687701144556646bae8f249fd60aa1e4c768ba7018947"}, + {file = "lxml-4.9.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6804daeb7ef69e7b36f76caddb85cccd63d0c56dedb47555d2fc969e2af6a1a5"}, + {file = "lxml-4.9.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a6e441a86553c310258aca15d1c05903aaf4965b23f3bc2d55f200804e005ee5"}, + {file = "lxml-4.9.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ca34efc80a29351897e18888c71c6aca4a359247c87e0b1c7ada14f0ab0c0fb2"}, + {file = "lxml-4.9.2-cp39-cp39-win32.whl", hash = "sha256:6b418afe5df18233fc6b6093deb82a32895b6bb0b1155c2cdb05203f583053f1"}, + {file = "lxml-4.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:f1496ea22ca2c830cbcbd473de8f114a320da308438ae65abad6bab7867fe38f"}, + {file = "lxml-4.9.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:b264171e3143d842ded311b7dccd46ff9ef34247129ff5bf5066123c55c2431c"}, + {file = "lxml-4.9.2-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:0dc313ef231edf866912e9d8f5a042ddab56c752619e92dfd3a2c277e6a7299a"}, + {file = "lxml-4.9.2-pp38-pypy38_pp73-macosx_10_15_x86_64.whl", hash = "sha256:16efd54337136e8cd72fb9485c368d91d77a47ee2d42b057564aae201257d419"}, + {file = "lxml-4.9.2-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:0f2b1e0d79180f344ff9f321327b005ca043a50ece8713de61d1cb383fb8ac05"}, + {file = "lxml-4.9.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:7b770ed79542ed52c519119473898198761d78beb24b107acf3ad65deae61f1f"}, + {file = "lxml-4.9.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:efa29c2fe6b4fdd32e8ef81c1528506895eca86e1d8c4657fda04c9b3786ddf9"}, + {file = "lxml-4.9.2-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:7e91ee82f4199af8c43d8158024cbdff3d931df350252288f0d4ce656df7f3b5"}, + {file = "lxml-4.9.2-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:b23e19989c355ca854276178a0463951a653309fb8e57ce674497f2d9f208746"}, + {file = "lxml-4.9.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:01d36c05f4afb8f7c20fd9ed5badca32a2029b93b1750f571ccc0b142531caf7"}, + {file = "lxml-4.9.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7b515674acfdcadb0eb5d00d8a709868173acece5cb0be3dd165950cbfdf5409"}, + {file = "lxml-4.9.2.tar.gz", hash = "sha256:2455cfaeb7ac70338b3257f41e21f0724f4b5b0c0e7702da67ee6c3640835b67"}, ] mako = [ - {file = "Mako-1.1.4-py2.py3-none-any.whl", hash = "sha256:aea166356da44b9b830c8023cd9b557fa856bd8b4035d6de771ca027dfc5cc6e"}, - {file = "Mako-1.1.4.tar.gz", hash = "sha256:17831f0b7087c313c0ffae2bcbbd3c1d5ba9eeac9c38f2eb7b50e8c99fe9d5ab"}, + {file = "Mako-1.2.4-py3-none-any.whl", hash = "sha256:c97c79c018b9165ac9922ae4f32da095ffd3c4e6872b45eded42926deea46818"}, + {file = "Mako-1.2.4.tar.gz", hash = "sha256:d60a3903dc3bb01a18ad6a89cdbe2e4eadc69c0bc8ef1e3773ba53d44c3f7a34"}, ] markupsafe = [ - {file = "MarkupSafe-2.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:0446679737af14f45767963a1a9ef7620189912317d095f2d9ffa183a4d25d2b"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:f826e31d18b516f653fe296d967d700fddad5901ae07c622bb3705955e1faa94"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:fa130dd50c57d53368c9d59395cb5526eda596d3ffe36666cd81a44d56e48872"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:905fec760bd2fa1388bb5b489ee8ee5f7291d692638ea5f67982d968366bef9f"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:6c4ca60fa24e85fe25b912b01e62cb969d69a23a5d5867682dd3e80b5b02581d"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b2f4bf27480f5e5e8ce285a8c8fd176c0b03e93dcc6646477d4630e83440c6a9"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0717a7390a68be14b8c793ba258e075c6f4ca819f15edfc2a3a027c823718567"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:6557b31b5e2c9ddf0de32a691f2312a32f77cd7681d8af66c2692efdbef84c18"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:49e3ceeabbfb9d66c3aef5af3a60cc43b85c33df25ce03d0031a608b0a8b2e3f"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:d7f9850398e85aba693bb640262d3611788b1f29a79f0c93c565694658f4071f"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:6a7fae0dd14cf60ad5ff42baa2e95727c3d81ded453457771d02b7d2b3f9c0c2"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:b7f2d075102dc8c794cbde1947378051c4e5180d52d276987b8d28a3bd58c17d"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:a30e67a65b53ea0a5e62fe23682cfe22712e01f453b95233b25502f7c61cb415"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:611d1ad9a4288cf3e3c16014564df047fe08410e628f89805e475368bd304914"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:be98f628055368795d818ebf93da628541e10b75b41c559fdf36d104c5787066"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:1d609f577dc6e1aa17d746f8bd3c31aa4d258f4070d61b2aa5c4166c1539de35"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7d91275b0245b1da4d4cfa07e0faedd5b0812efc15b702576d103293e252af1b"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:01a9b8ea66f1658938f65b93a85ebe8bc016e6769611be228d797c9d998dd298"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:47ab1e7b91c098ab893b828deafa1203de86d0bc6ab587b160f78fe6c4011f75"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:97383d78eb34da7e1fa37dd273c20ad4320929af65d156e35a5e2d89566d9dfb"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-win32.whl", hash = "sha256:023cb26ec21ece8dc3907c0e8320058b2e0cb3c55cf9564da612bc325bed5e64"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:984d76483eb32f1bcb536dc27e4ad56bba4baa70be32fa87152832cdd9db0833"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2ef54abee730b502252bcdf31b10dacb0a416229b72c18b19e24a4509f273d26"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3c112550557578c26af18a1ccc9e090bfe03832ae994343cfdacd287db6a6ae7"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:53edb4da6925ad13c07b6d26c2a852bd81e364f95301c66e930ab2aef5b5ddd8"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f5653a225f31e113b152e56f154ccbe59eeb1c7487b39b9d9f9cdb58e6c79dc5"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:4efca8f86c54b22348a5467704e3fec767b2db12fc39c6d963168ab1d3fc9135"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:ab3ef638ace319fa26553db0624c4699e31a28bb2a835c5faca8f8acf6a5a902"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:f8ba0e8349a38d3001fae7eadded3f6606f0da5d748ee53cc1dab1d6527b9509"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-win32.whl", hash = "sha256:10f82115e21dc0dfec9ab5c0223652f7197feb168c940f3ef61563fc2d6beb74"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:693ce3f9e70a6cf7d2fb9e6c9d8b204b6b39897a2c4a1aa65728d5ac97dcc1d8"}, - {file = "MarkupSafe-2.0.1.tar.gz", hash = "sha256:594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, + {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, ] mccabe = [ - {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, - {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, -] -more-itertools = [ - {file = "more-itertools-8.8.0.tar.gz", hash = "sha256:83f0308e05477c68f56ea3a888172c78ed5d5b3c282addb67508e7ba6c8f813a"}, - {file = "more_itertools-8.8.0-py3-none-any.whl", hash = "sha256:2cf89ec599962f2ddc4d568a05defc40e0a587fbc10d5989713638864c36be4d"}, + {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, + {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, ] mypy = [ - {file = "mypy-0.770-cp35-cp35m-macosx_10_6_x86_64.whl", hash = "sha256:a34b577cdf6313bf24755f7a0e3f3c326d5c1f4fe7422d1d06498eb25ad0c600"}, - {file = "mypy-0.770-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:86c857510a9b7c3104cf4cde1568f4921762c8f9842e987bc03ed4f160925754"}, - {file = "mypy-0.770-cp35-cp35m-win_amd64.whl", hash = "sha256:a8ffcd53cb5dfc131850851cc09f1c44689c2812d0beb954d8138d4f5fc17f65"}, - {file = "mypy-0.770-cp36-cp36m-macosx_10_6_x86_64.whl", hash = "sha256:7687f6455ec3ed7649d1ae574136835a4272b65b3ddcf01ab8704ac65616c5ce"}, - {file = "mypy-0.770-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:3beff56b453b6ef94ecb2996bea101a08f1f8a9771d3cbf4988a61e4d9973761"}, - {file = "mypy-0.770-cp36-cp36m-win_amd64.whl", hash = "sha256:15b948e1302682e3682f11f50208b726a246ab4e6c1b39f9264a8796bb416aa2"}, - {file = "mypy-0.770-cp37-cp37m-macosx_10_6_x86_64.whl", hash = "sha256:b90928f2d9eb2f33162405f32dde9f6dcead63a0971ca8a1b50eb4ca3e35ceb8"}, - {file = "mypy-0.770-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:c56ffe22faa2e51054c5f7a3bc70a370939c2ed4de308c690e7949230c995913"}, - {file = "mypy-0.770-cp37-cp37m-win_amd64.whl", hash = "sha256:8dfb69fbf9f3aeed18afffb15e319ca7f8da9642336348ddd6cab2713ddcf8f9"}, - {file = "mypy-0.770-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:219a3116ecd015f8dca7b5d2c366c973509dfb9a8fc97ef044a36e3da66144a1"}, - {file = "mypy-0.770-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7ec45a70d40ede1ec7ad7f95b3c94c9cf4c186a32f6bacb1795b60abd2f9ef27"}, - {file = "mypy-0.770-cp38-cp38-win_amd64.whl", hash = "sha256:f91c7ae919bbc3f96cd5e5b2e786b2b108343d1d7972ea130f7de27fdd547cf3"}, - {file = "mypy-0.770-py3-none-any.whl", hash = "sha256:3b1fc683fb204c6b4403a1ef23f0b1fac8e4477091585e0c8c54cbdf7d7bb164"}, - {file = "mypy-0.770.tar.gz", hash = "sha256:8a627507ef9b307b46a1fea9513d5c98680ba09591253082b4c48697ba05a4ae"}, + {file = "mypy-0.991-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7d17e0a9707d0772f4a7b878f04b4fd11f6f5bcb9b3813975a9b13c9332153ab"}, + {file = "mypy-0.991-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0714258640194d75677e86c786e80ccf294972cc76885d3ebbb560f11db0003d"}, + {file = "mypy-0.991-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0c8f3be99e8a8bd403caa8c03be619544bc2c77a7093685dcf308c6b109426c6"}, + {file = "mypy-0.991-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc9ec663ed6c8f15f4ae9d3c04c989b744436c16d26580eaa760ae9dd5d662eb"}, + {file = "mypy-0.991-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4307270436fd7694b41f913eb09210faff27ea4979ecbcd849e57d2da2f65305"}, + {file = "mypy-0.991-cp310-cp310-win_amd64.whl", hash = "sha256:901c2c269c616e6cb0998b33d4adbb4a6af0ac4ce5cd078afd7bc95830e62c1c"}, + {file = "mypy-0.991-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:d13674f3fb73805ba0c45eb6c0c3053d218aa1f7abead6e446d474529aafc372"}, + {file = "mypy-0.991-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1c8cd4fb70e8584ca1ed5805cbc7c017a3d1a29fb450621089ffed3e99d1857f"}, + {file = "mypy-0.991-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:209ee89fbb0deed518605edddd234af80506aec932ad28d73c08f1400ef80a33"}, + {file = "mypy-0.991-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37bd02ebf9d10e05b00d71302d2c2e6ca333e6c2a8584a98c00e038db8121f05"}, + {file = "mypy-0.991-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:26efb2fcc6b67e4d5a55561f39176821d2adf88f2745ddc72751b7890f3194ad"}, + {file = "mypy-0.991-cp311-cp311-win_amd64.whl", hash = "sha256:3a700330b567114b673cf8ee7388e949f843b356a73b5ab22dd7cff4742a5297"}, + {file = "mypy-0.991-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:1f7d1a520373e2272b10796c3ff721ea1a0712288cafaa95931e66aa15798813"}, + {file = "mypy-0.991-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:641411733b127c3e0dab94c45af15fea99e4468f99ac88b39efb1ad677da5711"}, + {file = "mypy-0.991-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3d80e36b7d7a9259b740be6d8d906221789b0d836201af4234093cae89ced0cd"}, + {file = "mypy-0.991-cp37-cp37m-win_amd64.whl", hash = "sha256:e62ebaad93be3ad1a828a11e90f0e76f15449371ffeecca4a0a0b9adc99abcef"}, + {file = "mypy-0.991-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b86ce2c1866a748c0f6faca5232059f881cda6dda2a893b9a8373353cfe3715a"}, + {file = "mypy-0.991-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ac6e503823143464538efda0e8e356d871557ef60ccd38f8824a4257acc18d93"}, + {file = "mypy-0.991-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:0cca5adf694af539aeaa6ac633a7afe9bbd760df9d31be55ab780b77ab5ae8bf"}, + {file = "mypy-0.991-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a12c56bf73cdab116df96e4ff39610b92a348cc99a1307e1da3c3768bbb5b135"}, + {file = "mypy-0.991-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:652b651d42f155033a1967739788c436491b577b6a44e4c39fb340d0ee7f0d70"}, + {file = "mypy-0.991-cp38-cp38-win_amd64.whl", hash = "sha256:4175593dc25d9da12f7de8de873a33f9b2b8bdb4e827a7cae952e5b1a342e243"}, + {file = "mypy-0.991-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:98e781cd35c0acf33eb0295e8b9c55cdbef64fcb35f6d3aa2186f289bed6e80d"}, + {file = "mypy-0.991-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6d7464bac72a85cb3491c7e92b5b62f3dcccb8af26826257760a552a5e244aa5"}, + {file = "mypy-0.991-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c9166b3f81a10cdf9b49f2d594b21b31adadb3d5e9db9b834866c3258b695be3"}, + {file = "mypy-0.991-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8472f736a5bfb159a5e36740847808f6f5b659960115ff29c7cecec1741c648"}, + {file = "mypy-0.991-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5e80e758243b97b618cdf22004beb09e8a2de1af481382e4d84bc52152d1c476"}, + {file = "mypy-0.991-cp39-cp39-win_amd64.whl", hash = "sha256:74e259b5c19f70d35fcc1ad3d56499065c601dfe94ff67ae48b85596b9ec1461"}, + {file = "mypy-0.991-py3-none-any.whl", hash = "sha256:de32edc9b0a7e67c2775e574cb061a537660e51210fbf6006b0b36ea695ae9bb"}, + {file = "mypy-0.991.tar.gz", hash = "sha256:3c0165ba8f354a6d9881809ef29f1a9318a236a6d81c690094c5df32107bde06"}, ] mypy-extensions = [ {file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"}, {file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"}, ] +neo4j = [ + {file = "neo4j-5.3.0.tar.gz", hash = "sha256:0c1c7d8812eed60da0a442d1e0f35edbda248255703e506a081cb70e083b3b5c"}, +] +neo4j-driver = [ + {file = "neo4j-driver-4.3.6.tar.gz", hash = "sha256:59e16752c1bdd72b43f26786183a7b47c17e16c2ec6afd819390623988dff4ff"}, +] +neobolt = [ + {file = "neobolt-1.7.17.tar.gz", hash = "sha256:1d0d5efce7221fc4f0ffc4a315bc5272708be5aa2aef5434269e800372d8db89"}, +] +neomodel = [ + {file = "neomodel-4.0.8-py3-none-any.whl", hash = "sha256:c065e5f8e62388d54486e3c6d08834d3dd574893d5c81b56638f917def681dde"}, + {file = "neomodel-4.0.8.tar.gz", hash = "sha256:9049fa006149de741abc0c2b78725f07b90a6a630f3fb43df64efeb9a3a0071b"}, +] packaging = [ - {file = "packaging-21.0-py3-none-any.whl", hash = "sha256:c86254f9220d55e31cc94d69bade760f0847da8000def4dfe1c6b872fd14ff14"}, - {file = "packaging-21.0.tar.gz", hash = "sha256:7dc96269f53a4ccec5c0670940a4281106dd0bb343f47b7471f779df49c2fbe7"}, + {file = "packaging-22.0-py3-none-any.whl", hash = "sha256:957e2148ba0e1a3b282772e791ef1d8083648bc131c8ab0c1feba110ce1146c3"}, + {file = "packaging-22.0.tar.gz", hash = "sha256:2198ec20bd4c017b8f9717e00f0c8714076fc2fd93816750ab48e2c41de2cfd3"}, ] passlib = [ {file = "passlib-1.7.4-py2.py3-none-any.whl", hash = "sha256:aa6bca462b8d8bda89c70b382f0c298a20b5560af6cbfa2dce410c0a2fb669f1"}, {file = "passlib-1.7.4.tar.gz", hash = "sha256:defd50f72b65c5402ab2c573830a6978e5f202ad0d984793c8dde2c4152ebe04"}, ] pathspec = [ - {file = "pathspec-0.9.0-py2.py3-none-any.whl", hash = "sha256:7d15c4ddb0b5c802d161efc417ec1a2558ea2653c2e8ad9c19098201dc1c993a"}, - {file = "pathspec-0.9.0.tar.gz", hash = "sha256:e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1"}, + {file = "pathspec-0.10.3-py3-none-any.whl", hash = "sha256:3c95343af8b756205e2aba76e843ba9520a24dd84f68c22b9f93251507509dd6"}, + {file = "pathspec-0.10.3.tar.gz", hash = "sha256:56200de4077d9d0791465aa9095a01d421861e405b5096955051deefd697d6f6"}, +] +platformdirs = [ + {file = "platformdirs-2.6.0-py3-none-any.whl", hash = "sha256:1a89a12377800c81983db6be069ec068eee989748799b946cce2a6e80dcc54ca"}, + {file = "platformdirs-2.6.0.tar.gz", hash = "sha256:b46ffafa316e6b83b47489d240ce17173f123a9b9c83282141c3daf26ad9ac2e"}, ] pluggy = [ - {file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"}, - {file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"}, + {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, + {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, ] premailer = [ - {file = "premailer-3.9.0-py2.py3-none-any.whl", hash = "sha256:d674826981be58d2eaa51db25f31bfe02f2859760aa1ff9879de9110f48e6476"}, - {file = "premailer-3.9.0.tar.gz", hash = "sha256:da18b9e8cb908893b67ab9b7451276fef7c0ab179f40189378545f6bb0ab3695"}, + {file = "premailer-3.10.0-py2.py3-none-any.whl", hash = "sha256:021b8196364d7df96d04f9ade51b794d0b77bcc19e998321c515633a2273be1a"}, + {file = "premailer-3.10.0.tar.gz", hash = "sha256:d1875a8411f5dc92b53ef9f193db6c0f879dc378d618e0ad292723e388bfe4c2"}, +] +prompt-toolkit = [ + {file = "prompt_toolkit-3.0.36-py3-none-any.whl", hash = "sha256:aa64ad242a462c5ff0363a7b9cfe696c20d55d9fc60c11fd8e632d064804d305"}, + {file = "prompt_toolkit-3.0.36.tar.gz", hash = "sha256:3e163f254bef5a03b146397d7c1963bd3e2812f0964bb9a24e6ec761fd28db63"}, ] psycopg2-binary = [ - {file = "psycopg2-binary-2.9.1.tar.gz", hash = "sha256:b0221ca5a9837e040ebf61f48899926b5783668b7807419e4adae8175a31f773"}, - {file = "psycopg2_binary-2.9.1-cp36-cp36m-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:c250a7ec489b652c892e4f0a5d122cc14c3780f9f643e1a326754aedf82d9a76"}, - {file = "psycopg2_binary-2.9.1-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aef9aee84ec78af51107181d02fe8773b100b01c5dfde351184ad9223eab3698"}, - {file = "psycopg2_binary-2.9.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:123c3fb684e9abfc47218d3784c7b4c47c8587951ea4dd5bc38b6636ac57f616"}, - {file = "psycopg2_binary-2.9.1-cp36-cp36m-manylinux_2_24_aarch64.whl", hash = "sha256:995fc41ebda5a7a663a254a1dcac52638c3e847f48307b5416ee373da15075d7"}, - {file = "psycopg2_binary-2.9.1-cp36-cp36m-manylinux_2_24_ppc64le.whl", hash = "sha256:fbb42a541b1093385a2d8c7eec94d26d30437d0e77c1d25dae1dcc46741a385e"}, - {file = "psycopg2_binary-2.9.1-cp36-cp36m-win32.whl", hash = "sha256:20f1ab44d8c352074e2d7ca67dc00843067788791be373e67a0911998787ce7d"}, - {file = "psycopg2_binary-2.9.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f6fac64a38f6768e7bc7b035b9e10d8a538a9fadce06b983fb3e6fa55ac5f5ce"}, - {file = "psycopg2_binary-2.9.1-cp37-cp37m-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:1e3a362790edc0a365385b1ac4cc0acc429a0c0d662d829a50b6ce743ae61b5a"}, - {file = "psycopg2_binary-2.9.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f8559617b1fcf59a9aedba2c9838b5b6aa211ffedecabca412b92a1ff75aac1a"}, - {file = "psycopg2_binary-2.9.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a36c7eb6152ba5467fb264d73844877be8b0847874d4822b7cf2d3c0cb8cdcb0"}, - {file = "psycopg2_binary-2.9.1-cp37-cp37m-manylinux_2_24_aarch64.whl", hash = "sha256:2f62c207d1740b0bde5c4e949f857b044818f734a3d57f1d0d0edc65050532ed"}, - {file = "psycopg2_binary-2.9.1-cp37-cp37m-manylinux_2_24_ppc64le.whl", hash = "sha256:cfc523edecddaef56f6740d7de1ce24a2fdf94fd5e704091856a201872e37f9f"}, - {file = "psycopg2_binary-2.9.1-cp37-cp37m-win32.whl", hash = "sha256:1e85b74cbbb3056e3656f1cc4781294df03383127a8114cbc6531e8b8367bf1e"}, - {file = "psycopg2_binary-2.9.1-cp37-cp37m-win_amd64.whl", hash = "sha256:1473c0215b0613dd938db54a653f68251a45a78b05f6fc21af4326f40e8360a2"}, - {file = "psycopg2_binary-2.9.1-cp38-cp38-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:35c4310f8febe41f442d3c65066ca93cccefd75013df3d8c736c5b93ec288140"}, - {file = "psycopg2_binary-2.9.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8c13d72ed6af7fd2c8acbd95661cf9477f94e381fce0792c04981a8283b52917"}, - {file = "psycopg2_binary-2.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14db1752acdd2187d99cb2ca0a1a6dfe57fc65c3281e0f20e597aac8d2a5bd90"}, - {file = "psycopg2_binary-2.9.1-cp38-cp38-manylinux_2_24_aarch64.whl", hash = "sha256:aed4a9a7e3221b3e252c39d0bf794c438dc5453bc2963e8befe9d4cd324dff72"}, - {file = "psycopg2_binary-2.9.1-cp38-cp38-manylinux_2_24_ppc64le.whl", hash = "sha256:da113b70f6ec40e7d81b43d1b139b9db6a05727ab8be1ee559f3a69854a69d34"}, - {file = "psycopg2_binary-2.9.1-cp38-cp38-win32.whl", hash = "sha256:4235f9d5ddcab0b8dbd723dca56ea2922b485ea00e1dafacf33b0c7e840b3d32"}, - {file = "psycopg2_binary-2.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:988b47ac70d204aed01589ed342303da7c4d84b56c2f4c4b8b00deda123372bf"}, - {file = "psycopg2_binary-2.9.1-cp39-cp39-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:7360647ea04db2e7dff1648d1da825c8cf68dc5fbd80b8fb5b3ee9f068dcd21a"}, - {file = "psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca86db5b561b894f9e5f115d6a159fff2a2570a652e07889d8a383b5fae66eb4"}, - {file = "psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ced67f1e34e1a450cdb48eb53ca73b60aa0af21c46b9b35ac3e581cf9f00e31"}, - {file = "psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_24_aarch64.whl", hash = "sha256:0f2e04bd2a2ab54fa44ee67fe2d002bb90cee1c0f1cc0ebc3148af7b02034cbd"}, - {file = "psycopg2_binary-2.9.1-cp39-cp39-manylinux_2_24_ppc64le.whl", hash = "sha256:3242b9619de955ab44581a03a64bdd7d5e470cc4183e8fcadd85ab9d3756ce7a"}, - {file = "psycopg2_binary-2.9.1-cp39-cp39-win32.whl", hash = "sha256:0b7dae87f0b729922e06f85f667de7bf16455d411971b2043bbd9577af9d1975"}, - {file = "psycopg2_binary-2.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:b4d7679a08fea64573c969f6994a2631908bb2c0e69a7235648642f3d2e39a68"}, -] -py = [ - {file = "py-1.10.0-py2.py3-none-any.whl", hash = "sha256:3b80836aa6d1feeaa108e046da6423ab8f6ceda6468545ae8d02d9d58d18818a"}, - {file = "py-1.10.0.tar.gz", hash = "sha256:21b81bda15b66ef5e1a777a21c4dcd9c20ad3efd0b3f817e7a809035269e1bd3"}, + {file = "psycopg2-binary-2.9.5.tar.gz", hash = "sha256:33e632d0885b95a8b97165899006c40e9ecdc634a529dca7b991eb7de4ece41c"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-macosx_10_15_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:0775d6252ccb22b15da3b5d7adbbf8cfe284916b14b6dc0ff503a23edb01ee85"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2ec46ed947801652c9643e0b1dc334cfb2781232e375ba97312c2fc256597632"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3520d7af1ebc838cc6084a3281145d5cd5bdd43fdef139e6db5af01b92596cb7"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5cbc554ba47ecca8cd3396ddaca85e1ecfe3e48dd57dc5e415e59551affe568e"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-manylinux_2_24_aarch64.whl", hash = "sha256:5d28ecdf191db558d0c07d0f16524ee9d67896edf2b7990eea800abeb23ebd61"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-manylinux_2_24_ppc64le.whl", hash = "sha256:b9c33d4aef08dfecbd1736ceab8b7b3c4358bf10a0121483e5cd60d3d308cc64"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:05b3d479425e047c848b9782cd7aac9c6727ce23181eb9647baf64ffdfc3da41"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:1e491e6489a6cb1d079df8eaa15957c277fdedb102b6a68cfbf40c4994412fd0"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:9e32cedc389bcb76d9f24ea8a012b3cb8385ee362ea437e1d012ffaed106c17d"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:46850a640df62ae940e34a163f72e26aca1f88e2da79148e1862faaac985c302"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-win32.whl", hash = "sha256:3d790f84201c3698d1bfb404c917f36e40531577a6dda02e45ba29b64d539867"}, + {file = "psycopg2_binary-2.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:1764546ffeaed4f9428707be61d68972eb5ede81239b46a45843e0071104d0dd"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-macosx_10_9_universal2.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:426c2ae999135d64e6a18849a7d1ad0e1bd007277e4a8f4752eaa40a96b550ff"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7cf1d44e710ca3a9ce952bda2855830fe9f9017ed6259e01fcd71ea6287565f5"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:024030b13bdcbd53d8a93891a2cf07719715724fc9fee40243f3bd78b4264b8f"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bcda1c84a1c533c528356da5490d464a139b6e84eb77cc0b432e38c5c6dd7882"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-manylinux_2_24_aarch64.whl", hash = "sha256:2ef892cabdccefe577088a79580301f09f2a713eb239f4f9f62b2b29cafb0577"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-manylinux_2_24_ppc64le.whl", hash = "sha256:af0516e1711995cb08dc19bbd05bec7dbdebf4185f68870595156718d237df3e"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e72c91bda9880f097c8aa3601a2c0de6c708763ba8128006151f496ca9065935"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:e67b3c26e9b6d37b370c83aa790bbc121775c57bfb096c2e77eacca25fd0233b"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:5fc447058d083b8c6ac076fc26b446d44f0145308465d745fba93a28c14c9e32"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d892bfa1d023c3781a3cab8dd5af76b626c483484d782e8bd047c180db590e4c"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-win32.whl", hash = "sha256:2abccab84d057723d2ca8f99ff7b619285d40da6814d50366f61f0fc385c3903"}, + {file = "psycopg2_binary-2.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:bef7e3f9dc6f0c13afdd671008534be5744e0e682fb851584c8c3a025ec09720"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:6e63814ec71db9bdb42905c925639f319c80e7909fb76c3b84edc79dadef8d60"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:212757ffcecb3e1a5338d4e6761bf9c04f750e7d027117e74aa3cd8a75bb6fbd"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f8a9bcab7b6db2e3dbf65b214dfc795b4c6b3bb3af922901b6a67f7cb47d5f8"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-manylinux_2_24_aarch64.whl", hash = "sha256:56b2957a145f816726b109ee3d4e6822c23f919a7d91af5a94593723ed667835"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-manylinux_2_24_ppc64le.whl", hash = "sha256:f95b8aca2703d6a30249f83f4fe6a9abf2e627aa892a5caaab2267d56be7ab69"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:70831e03bd53702c941da1a1ad36c17d825a24fbb26857b40913d58df82ec18b"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:dbc332beaf8492b5731229a881807cd7b91b50dbbbaf7fe2faf46942eda64a24"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:2d964eb24c8b021623df1c93c626671420c6efadbdb8655cb2bd5e0c6fa422ba"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:95076399ec3b27a8f7fa1cc9a83417b1c920d55cf7a97f718a94efbb96c7f503"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-win32.whl", hash = "sha256:3fc33295cfccad697a97a76dec3f1e94ad848b7b163c3228c1636977966b51e2"}, + {file = "psycopg2_binary-2.9.5-cp36-cp36m-win_amd64.whl", hash = "sha256:02551647542f2bf89073d129c73c05a25c372fc0a49aa50e0de65c3c143d8bd0"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-macosx_10_15_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:63e318dbe52709ed10d516a356f22a635e07a2e34c68145484ed96a19b0c4c68"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a7e518a0911c50f60313cb9e74a169a65b5d293770db4770ebf004245f24b5c5"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b9d38a4656e4e715d637abdf7296e98d6267df0cc0a8e9a016f8ba07e4aa3eeb"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-manylinux_2_24_aarch64.whl", hash = "sha256:68d81a2fe184030aa0c5c11e518292e15d342a667184d91e30644c9d533e53e1"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-manylinux_2_24_ppc64le.whl", hash = "sha256:7ee3095d02d6f38bd7d9a5358fcc9ea78fcdb7176921528dd709cc63f40184f5"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:46512486be6fbceef51d7660dec017394ba3e170299d1dc30928cbedebbf103a"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:b911dfb727e247340d36ae20c4b9259e4a64013ab9888ccb3cbba69b77fd9636"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:422e3d43b47ac20141bc84b3d342eead8d8099a62881a501e97d15f6addabfe9"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c5682a45df7d9642eff590abc73157c887a68f016df0a8ad722dcc0f888f56d7"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-win32.whl", hash = "sha256:b8104f709590fff72af801e916817560dbe1698028cd0afe5a52d75ceb1fce5f"}, + {file = "psycopg2_binary-2.9.5-cp37-cp37m-win_amd64.whl", hash = "sha256:7b3751857da3e224f5629400736a7b11e940b5da5f95fa631d86219a1beaafec"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-macosx_10_15_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:043a9fd45a03858ff72364b4b75090679bd875ee44df9c0613dc862ca6b98460"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9ffdc51001136b699f9563b1c74cc1f8c07f66ef7219beb6417a4c8aaa896c28"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c15ba5982c177bc4b23a7940c7e4394197e2d6a424a2d282e7c236b66da6d896"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc85b3777068ed30aff8242be2813038a929f2084f69e43ef869daddae50f6ee"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-manylinux_2_24_aarch64.whl", hash = "sha256:215d6bf7e66732a514f47614f828d8c0aaac9a648c46a831955cb103473c7147"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-manylinux_2_24_ppc64le.whl", hash = "sha256:7d07f552d1e412f4b4e64ce386d4c777a41da3b33f7098b6219012ba534fb2c2"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a0adef094c49f242122bb145c3c8af442070dc0e4312db17e49058c1702606d4"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:00475004e5ed3e3bf5e056d66e5dcdf41a0dc62efcd57997acd9135c40a08a50"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:7d88db096fa19d94f433420eaaf9f3c45382da2dd014b93e4bf3215639047c16"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:902844f9c4fb19b17dfa84d9e2ca053d4a4ba265723d62ea5c9c26b38e0aa1e6"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-win32.whl", hash = "sha256:4e7904d1920c0c89105c0517dc7e3f5c20fb4e56ba9cdef13048db76947f1d79"}, + {file = "psycopg2_binary-2.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:a36a0e791805aa136e9cbd0ffa040d09adec8610453ee8a753f23481a0057af5"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-macosx_10_15_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl", hash = "sha256:25382c7d174c679ce6927c16b6fbb68b10e56ee44b1acb40671e02d29f2fce7c"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9c38d3869238e9d3409239bc05bc27d6b7c99c2a460ea337d2814b35fb4fea1b"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5c6527c8efa5226a9e787507652dd5ba97b62d29b53c371a85cd13f957fe4d42"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e59137cdb970249ae60be2a49774c6dfb015bd0403f05af1fe61862e9626642d"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-manylinux_2_24_aarch64.whl", hash = "sha256:d4c7b3a31502184e856df1f7bbb2c3735a05a8ce0ade34c5277e1577738a5c91"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-manylinux_2_24_ppc64le.whl", hash = "sha256:b9a794cef1d9c1772b94a72eec6da144c18e18041d294a9ab47669bc77a80c1d"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c5254cbd4f4855e11cebf678c1a848a3042d455a22a4ce61349c36aafd4c2267"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c5e65c6ac0ae4bf5bef1667029f81010b6017795dcb817ba5c7b8a8d61fab76f"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:74eddec4537ab1f701a1647214734bc52cee2794df748f6ae5908e00771f180a"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:01ad49d68dd8c5362e4bfb4158f2896dc6e0c02e87b8a3770fc003459f1a4425"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-win32.whl", hash = "sha256:937880290775033a743f4836aa253087b85e62784b63fd099ee725d567a48aa1"}, + {file = "psycopg2_binary-2.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:484405b883630f3e74ed32041a87456c5e0e63a8e3429aa93e8714c366d62bd1"}, ] pyasn1 = [ - {file = "pyasn1-0.4.8-py2.4.egg", hash = "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"}, - {file = "pyasn1-0.4.8-py2.5.egg", hash = "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf"}, - {file = "pyasn1-0.4.8-py2.6.egg", hash = "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00"}, - {file = "pyasn1-0.4.8-py2.7.egg", hash = "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8"}, {file = "pyasn1-0.4.8-py2.py3-none-any.whl", hash = "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d"}, - {file = "pyasn1-0.4.8-py3.1.egg", hash = "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86"}, - {file = "pyasn1-0.4.8-py3.2.egg", hash = "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7"}, - {file = "pyasn1-0.4.8-py3.3.egg", hash = "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576"}, - {file = "pyasn1-0.4.8-py3.4.egg", hash = "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12"}, - {file = "pyasn1-0.4.8-py3.5.egg", hash = "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2"}, - {file = "pyasn1-0.4.8-py3.6.egg", hash = "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359"}, - {file = "pyasn1-0.4.8-py3.7.egg", hash = "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776"}, {file = "pyasn1-0.4.8.tar.gz", hash = "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba"}, ] pycodestyle = [ - {file = "pycodestyle-2.7.0-py2.py3-none-any.whl", hash = "sha256:514f76d918fcc0b55c6680472f0a37970994e07bbb80725808c17089be302068"}, - {file = "pycodestyle-2.7.0.tar.gz", hash = "sha256:c389c1d06bf7904078ca03399a4816f974a1d590090fecea0c63ec26ebaf1cef"}, + {file = "pycodestyle-2.10.0-py2.py3-none-any.whl", hash = "sha256:8a4eaf0d0495c7395bdab3589ac2db602797d76207242c17d470186815706610"}, + {file = "pycodestyle-2.10.0.tar.gz", hash = "sha256:347187bdb476329d98f695c213d7295a846d1152ff4fe9bacb8a9590b8ee7053"}, ] pycparser = [ - {file = "pycparser-2.20-py2.py3-none-any.whl", hash = "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"}, - {file = "pycparser-2.20.tar.gz", hash = "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0"}, + {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, + {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, ] pydantic = [ - {file = "pydantic-1.8.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:05ddfd37c1720c392f4e0d43c484217b7521558302e7069ce8d318438d297739"}, - {file = "pydantic-1.8.2-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:a7c6002203fe2c5a1b5cbb141bb85060cbff88c2d78eccbc72d97eb7022c43e4"}, - {file = "pydantic-1.8.2-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:589eb6cd6361e8ac341db97602eb7f354551482368a37f4fd086c0733548308e"}, - {file = "pydantic-1.8.2-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:10e5622224245941efc193ad1d159887872776df7a8fd592ed746aa25d071840"}, - {file = "pydantic-1.8.2-cp36-cp36m-win_amd64.whl", hash = "sha256:99a9fc39470010c45c161a1dc584997f1feb13f689ecf645f59bb4ba623e586b"}, - {file = "pydantic-1.8.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a83db7205f60c6a86f2c44a61791d993dff4b73135df1973ecd9eed5ea0bda20"}, - {file = "pydantic-1.8.2-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:41b542c0b3c42dc17da70554bc6f38cbc30d7066d2c2815a94499b5684582ecb"}, - {file = "pydantic-1.8.2-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:ea5cb40a3b23b3265f6325727ddfc45141b08ed665458be8c6285e7b85bd73a1"}, - {file = "pydantic-1.8.2-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:18b5ea242dd3e62dbf89b2b0ec9ba6c7b5abaf6af85b95a97b00279f65845a23"}, - {file = "pydantic-1.8.2-cp37-cp37m-win_amd64.whl", hash = "sha256:234a6c19f1c14e25e362cb05c68afb7f183eb931dd3cd4605eafff055ebbf287"}, - {file = "pydantic-1.8.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:021ea0e4133e8c824775a0cfe098677acf6fa5a3cbf9206a376eed3fc09302cd"}, - {file = "pydantic-1.8.2-cp38-cp38-manylinux1_i686.whl", hash = "sha256:e710876437bc07bd414ff453ac8ec63d219e7690128d925c6e82889d674bb505"}, - {file = "pydantic-1.8.2-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:ac8eed4ca3bd3aadc58a13c2aa93cd8a884bcf21cb019f8cfecaae3b6ce3746e"}, - {file = "pydantic-1.8.2-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:4a03cbbe743e9c7247ceae6f0d8898f7a64bb65800a45cbdc52d65e370570820"}, - {file = "pydantic-1.8.2-cp38-cp38-win_amd64.whl", hash = "sha256:8621559dcf5afacf0069ed194278f35c255dc1a1385c28b32dd6c110fd6531b3"}, - {file = "pydantic-1.8.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8b223557f9510cf0bfd8b01316bf6dd281cf41826607eada99662f5e4963f316"}, - {file = "pydantic-1.8.2-cp39-cp39-manylinux1_i686.whl", hash = "sha256:244ad78eeb388a43b0c927e74d3af78008e944074b7d0f4f696ddd5b2af43c62"}, - {file = "pydantic-1.8.2-cp39-cp39-manylinux2014_i686.whl", hash = "sha256:05ef5246a7ffd2ce12a619cbb29f3307b7c4509307b1b49f456657b43529dc6f"}, - {file = "pydantic-1.8.2-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:54cd5121383f4a461ff7644c7ca20c0419d58052db70d8791eacbbe31528916b"}, - {file = "pydantic-1.8.2-cp39-cp39-win_amd64.whl", hash = "sha256:4be75bebf676a5f0f87937c6ddb061fa39cbea067240d98e298508c1bda6f3f3"}, - {file = "pydantic-1.8.2-py3-none-any.whl", hash = "sha256:fec866a0b59f372b7e776f2d7308511784dace622e0992a0b59ea3ccee0ae833"}, - {file = "pydantic-1.8.2.tar.gz", hash = "sha256:26464e57ccaafe72b7ad156fdaa4e9b9ef051f69e175dbbb463283000c05ab7b"}, + {file = "pydantic-1.10.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bb6ad4489af1bac6955d38ebcb95079a836af31e4c4f74aba1ca05bb9f6027bd"}, + {file = "pydantic-1.10.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a1f5a63a6dfe19d719b1b6e6106561869d2efaca6167f84f5ab9347887d78b98"}, + {file = "pydantic-1.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:352aedb1d71b8b0736c6d56ad2bd34c6982720644b0624462059ab29bd6e5912"}, + {file = "pydantic-1.10.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:19b3b9ccf97af2b7519c42032441a891a5e05c68368f40865a90eb88833c2559"}, + {file = "pydantic-1.10.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e9069e1b01525a96e6ff49e25876d90d5a563bc31c658289a8772ae186552236"}, + {file = "pydantic-1.10.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:355639d9afc76bcb9b0c3000ddcd08472ae75318a6eb67a15866b87e2efa168c"}, + {file = "pydantic-1.10.2-cp310-cp310-win_amd64.whl", hash = "sha256:ae544c47bec47a86bc7d350f965d8b15540e27e5aa4f55170ac6a75e5f73b644"}, + {file = "pydantic-1.10.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a4c805731c33a8db4b6ace45ce440c4ef5336e712508b4d9e1aafa617dc9907f"}, + {file = "pydantic-1.10.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d49f3db871575e0426b12e2f32fdb25e579dea16486a26e5a0474af87cb1ab0a"}, + {file = "pydantic-1.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37c90345ec7dd2f1bcef82ce49b6235b40f282b94d3eec47e801baf864d15525"}, + {file = "pydantic-1.10.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7b5ba54d026c2bd2cb769d3468885f23f43710f651688e91f5fb1edcf0ee9283"}, + {file = "pydantic-1.10.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:05e00dbebbe810b33c7a7362f231893183bcc4251f3f2ff991c31d5c08240c42"}, + {file = "pydantic-1.10.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:2d0567e60eb01bccda3a4df01df677adf6b437958d35c12a3ac3e0f078b0ee52"}, + {file = "pydantic-1.10.2-cp311-cp311-win_amd64.whl", hash = "sha256:c6f981882aea41e021f72779ce2a4e87267458cc4d39ea990729e21ef18f0f8c"}, + {file = "pydantic-1.10.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c4aac8e7103bf598373208f6299fa9a5cfd1fc571f2d40bf1dd1955a63d6eeb5"}, + {file = "pydantic-1.10.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81a7b66c3f499108b448f3f004801fcd7d7165fb4200acb03f1c2402da73ce4c"}, + {file = "pydantic-1.10.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bedf309630209e78582ffacda64a21f96f3ed2e51fbf3962d4d488e503420254"}, + {file = "pydantic-1.10.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:9300fcbebf85f6339a02c6994b2eb3ff1b9c8c14f502058b5bf349d42447dcf5"}, + {file = "pydantic-1.10.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:216f3bcbf19c726b1cc22b099dd409aa371f55c08800bcea4c44c8f74b73478d"}, + {file = "pydantic-1.10.2-cp37-cp37m-win_amd64.whl", hash = "sha256:dd3f9a40c16daf323cf913593083698caee97df2804aa36c4b3175d5ac1b92a2"}, + {file = "pydantic-1.10.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b97890e56a694486f772d36efd2ba31612739bc6f3caeee50e9e7e3ebd2fdd13"}, + {file = "pydantic-1.10.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9cabf4a7f05a776e7793e72793cd92cc865ea0e83a819f9ae4ecccb1b8aa6116"}, + {file = "pydantic-1.10.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:06094d18dd5e6f2bbf93efa54991c3240964bb663b87729ac340eb5014310624"}, + {file = "pydantic-1.10.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cc78cc83110d2f275ec1970e7a831f4e371ee92405332ebfe9860a715f8336e1"}, + {file = "pydantic-1.10.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:1ee433e274268a4b0c8fde7ad9d58ecba12b069a033ecc4645bb6303c062d2e9"}, + {file = "pydantic-1.10.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7c2abc4393dea97a4ccbb4ec7d8658d4e22c4765b7b9b9445588f16c71ad9965"}, + {file = "pydantic-1.10.2-cp38-cp38-win_amd64.whl", hash = "sha256:0b959f4d8211fc964772b595ebb25f7652da3f22322c007b6fed26846a40685e"}, + {file = "pydantic-1.10.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c33602f93bfb67779f9c507e4d69451664524389546bacfe1bee13cae6dc7488"}, + {file = "pydantic-1.10.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5760e164b807a48a8f25f8aa1a6d857e6ce62e7ec83ea5d5c5a802eac81bad41"}, + {file = "pydantic-1.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6eb843dcc411b6a2237a694f5e1d649fc66c6064d02b204a7e9d194dff81eb4b"}, + {file = "pydantic-1.10.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b8795290deaae348c4eba0cebb196e1c6b98bdbe7f50b2d0d9a4a99716342fe"}, + {file = "pydantic-1.10.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:e0bedafe4bc165ad0a56ac0bd7695df25c50f76961da29c050712596cf092d6d"}, + {file = "pydantic-1.10.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2e05aed07fa02231dbf03d0adb1be1d79cabb09025dd45aa094aa8b4e7b9dcda"}, + {file = "pydantic-1.10.2-cp39-cp39-win_amd64.whl", hash = "sha256:c1ba1afb396148bbc70e9eaa8c06c1716fdddabaf86e7027c5988bae2a829ab6"}, + {file = "pydantic-1.10.2-py3-none-any.whl", hash = "sha256:1b6ee725bd6e83ec78b1aa32c5b1fa67a3a65badddde3976bca5fe4568f27709"}, + {file = "pydantic-1.10.2.tar.gz", hash = "sha256:91b8e218852ef6007c2b98cd861601c6a09f1aa32bbbb74fab5b1c33d4a1e410"}, ] pyflakes = [ - {file = "pyflakes-2.3.1-py2.py3-none-any.whl", hash = "sha256:7893783d01b8a89811dd72d7dfd4d84ff098e5eed95cfa8905b22bbffe52efc3"}, - {file = "pyflakes-2.3.1.tar.gz", hash = "sha256:f5bc8ecabc05bb9d291eb5203d6810b49040f6ff446a756326104746cc00c1db"}, -] -pyparsing = [ - {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"}, - {file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"}, + {file = "pyflakes-3.0.1-py2.py3-none-any.whl", hash = "sha256:ec55bf7fe21fff7f1ad2f7da62363d749e2a470500eab1b555334b67aa1ef8cf"}, + {file = "pyflakes-3.0.1.tar.gz", hash = "sha256:ec8b276a6b60bd80defed25add7e439881c19e64850afd9b346283d4165fd0fd"}, ] pytest = [ - {file = "pytest-5.4.3-py3-none-any.whl", hash = "sha256:5c0db86b698e8f170ba4582a492248919255fcd4c79b1ee64ace34301fb589a1"}, - {file = "pytest-5.4.3.tar.gz", hash = "sha256:7979331bfcba207414f5e1263b5a0f8f521d0f457318836a7355531ed1a4c7d8"}, + {file = "pytest-7.2.0-py3-none-any.whl", hash = "sha256:892f933d339f068883b6fd5a459f03d85bfcb355e4981e146d2c7616c21fef71"}, + {file = "pytest-7.2.0.tar.gz", hash = "sha256:c4014eb40e10f11f355ad4e3c2fb2c6c6d1919c73f3b5a433de4708202cade59"}, ] pytest-cov = [ - {file = "pytest-cov-2.12.1.tar.gz", hash = "sha256:261ceeb8c227b726249b376b8526b600f38667ee314f910353fa318caa01f4d7"}, - {file = "pytest_cov-2.12.1-py2.py3-none-any.whl", hash = "sha256:261bb9e47e65bd099c89c3edf92972865210c36813f80ede5277dceb77a4a62a"}, + {file = "pytest-cov-4.0.0.tar.gz", hash = "sha256:996b79efde6433cdbd0088872dbc5fb3ed7fe1578b68cdbba634f14bb8dd0470"}, + {file = "pytest_cov-4.0.0-py3-none-any.whl", hash = "sha256:2feb1b751d66a8bd934e5edfa2e961d11309dc37b73b0eabe73b5945fee20f6b"}, ] python-dateutil = [ {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, ] python-dotenv = [ - {file = "python-dotenv-0.18.0.tar.gz", hash = "sha256:effaac3c1e58d89b3ccb4d04a40dc7ad6e0275fda25fd75ae9d323e2465e202d"}, - {file = "python_dotenv-0.18.0-py2.py3-none-any.whl", hash = "sha256:dd8fe852847f4fbfadabf6183ddd4c824a9651f02d51714fa075c95561959c7d"}, -] -python-editor = [ - {file = "python-editor-1.0.4.tar.gz", hash = "sha256:51fda6bcc5ddbbb7063b2af7509e43bd84bfc32a4ff71349ec7847713882327b"}, - {file = "python_editor-1.0.4-py2-none-any.whl", hash = "sha256:5f98b069316ea1c2ed3f67e7f5df6c0d8f10b689964a4a811ff64f0106819ec8"}, - {file = "python_editor-1.0.4-py2.7.egg", hash = "sha256:ea87e17f6ec459e780e4221f295411462e0d0810858e055fc514684350a2f522"}, - {file = "python_editor-1.0.4-py3-none-any.whl", hash = "sha256:1bf6e860a8ad52a14c3ee1252d5dc25b2030618ed80c022598f00176adc8367d"}, - {file = "python_editor-1.0.4-py3.5.egg", hash = "sha256:c3da2053dbab6b29c94e43c486ff67206eafbe7eb52dbec7390b5e2fb05aac77"}, + {file = "python-dotenv-0.21.0.tar.gz", hash = "sha256:b77d08274639e3d34145dfa6c7008e66df0f04b7be7a75fd0d5292c191d79045"}, + {file = "python_dotenv-0.21.0-py3-none-any.whl", hash = "sha256:1684eb44636dd462b66c3ee016599815514527ad99965de77f43e0944634a7e5"}, ] python-jose = [ {file = "python-jose-3.3.0.tar.gz", hash = "sha256:55779b5e6ad599c6336191246e95eb2293a9ddebd555f796a65f838f07e5d78a"}, @@ -1562,244 +2031,287 @@ python-multipart = [ {file = "python-multipart-0.0.5.tar.gz", hash = "sha256:f7bb5f611fc600d15fa47b3974c8aa16e93724513b49b5f95c81e6624c83fa43"}, ] pytz = [ - {file = "pytz-2021.1-py2.py3-none-any.whl", hash = "sha256:eb10ce3e7736052ed3623d49975ce333bcd712c7bb19a58b9e2089d4057d0798"}, - {file = "pytz-2021.1.tar.gz", hash = "sha256:83a4a90894bf38e243cf052c8b58f381bfe9a7a483f6a9cab140bc7f702ac4da"}, + {file = "pytz-2022.6-py2.py3-none-any.whl", hash = "sha256:222439474e9c98fced559f1709d89e6c9cbf8d79c794ff3eb9f8800064291427"}, + {file = "pytz-2022.6.tar.gz", hash = "sha256:e89512406b793ca39f5971bc999cc538ce125c0e51c27941bef4568b460095e2"}, ] pyyaml = [ - {file = "PyYAML-5.4.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:3b2b1824fe7112845700f815ff6a489360226a5609b96ec2190a45e62a9fc922"}, - {file = "PyYAML-5.4.1-cp27-cp27m-win32.whl", hash = "sha256:129def1b7c1bf22faffd67b8f3724645203b79d8f4cc81f674654d9902cb4393"}, - {file = "PyYAML-5.4.1-cp27-cp27m-win_amd64.whl", hash = "sha256:4465124ef1b18d9ace298060f4eccc64b0850899ac4ac53294547536533800c8"}, - {file = "PyYAML-5.4.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:bb4191dfc9306777bc594117aee052446b3fa88737cd13b7188d0e7aa8162185"}, - {file = "PyYAML-5.4.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:6c78645d400265a062508ae399b60b8c167bf003db364ecb26dcab2bda048253"}, - {file = "PyYAML-5.4.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:4e0583d24c881e14342eaf4ec5fbc97f934b999a6828693a99157fde912540cc"}, - {file = "PyYAML-5.4.1-cp36-cp36m-win32.whl", hash = "sha256:3bd0e463264cf257d1ffd2e40223b197271046d09dadf73a0fe82b9c1fc385a5"}, - {file = "PyYAML-5.4.1-cp36-cp36m-win_amd64.whl", hash = "sha256:e4fac90784481d221a8e4b1162afa7c47ed953be40d31ab4629ae917510051df"}, - {file = "PyYAML-5.4.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5accb17103e43963b80e6f837831f38d314a0495500067cb25afab2e8d7a4018"}, - {file = "PyYAML-5.4.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:e1d4970ea66be07ae37a3c2e48b5ec63f7ba6804bdddfdbd3cfd954d25a82e63"}, - {file = "PyYAML-5.4.1-cp37-cp37m-win32.whl", hash = "sha256:dd5de0646207f053eb0d6c74ae45ba98c3395a571a2891858e87df7c9b9bd51b"}, - {file = "PyYAML-5.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:08682f6b72c722394747bddaf0aa62277e02557c0fd1c42cb853016a38f8dedf"}, - {file = "PyYAML-5.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d2d9808ea7b4af864f35ea216be506ecec180628aced0704e34aca0b040ffe46"}, - {file = "PyYAML-5.4.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:8c1be557ee92a20f184922c7b6424e8ab6691788e6d86137c5d93c1a6ec1b8fb"}, - {file = "PyYAML-5.4.1-cp38-cp38-win32.whl", hash = "sha256:fa5ae20527d8e831e8230cbffd9f8fe952815b2b7dae6ffec25318803a7528fc"}, - {file = "PyYAML-5.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:0f5f5786c0e09baddcd8b4b45f20a7b5d61a7e7e99846e3c799b05c7c53fa696"}, - {file = "PyYAML-5.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:294db365efa064d00b8d1ef65d8ea2c3426ac366c0c4368d930bf1c5fb497f77"}, - {file = "PyYAML-5.4.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:74c1485f7707cf707a7aef42ef6322b8f97921bd89be2ab6317fd782c2d53183"}, - {file = "PyYAML-5.4.1-cp39-cp39-win32.whl", hash = "sha256:49d4cdd9065b9b6e206d0595fee27a96b5dd22618e7520c33204a4a3239d5b10"}, - {file = "PyYAML-5.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:c20cfa2d49991c8b4147af39859b167664f2ad4561704ee74c1de03318e898db"}, - {file = "PyYAML-5.4.1.tar.gz", hash = "sha256:607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e"}, + {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, + {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"}, + {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"}, + {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"}, + {file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"}, + {file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"}, + {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"}, + {file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"}, + {file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"}, + {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"}, + {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"}, + {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"}, + {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"}, + {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"}, + {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"}, + {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"}, + {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"}, + {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"}, + {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"}, + {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"}, + {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, ] raven = [ {file = "raven-6.10.0-py2.py3-none-any.whl", hash = "sha256:44a13f87670836e153951af9a3c80405d36b43097db869a36e92809673692ce4"}, {file = "raven-6.10.0.tar.gz", hash = "sha256:3fa6de6efa2493a7c827472e984ce9b020797d0da16f1db67197bcc23c8fae54"}, ] -regex = [ - {file = "regex-2021.7.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e6a1e5ca97d411a461041d057348e578dc344ecd2add3555aedba3b408c9f874"}, - {file = "regex-2021.7.6-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:6afe6a627888c9a6cfbb603d1d017ce204cebd589d66e0703309b8048c3b0854"}, - {file = "regex-2021.7.6-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:ccb3d2190476d00414aab36cca453e4596e8f70a206e2aa8db3d495a109153d2"}, - {file = "regex-2021.7.6-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:ed693137a9187052fc46eedfafdcb74e09917166362af4cc4fddc3b31560e93d"}, - {file = "regex-2021.7.6-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:99d8ab206a5270c1002bfcf25c51bf329ca951e5a169f3b43214fdda1f0b5f0d"}, - {file = "regex-2021.7.6-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:b85ac458354165405c8a84725de7bbd07b00d9f72c31a60ffbf96bb38d3e25fa"}, - {file = "regex-2021.7.6-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:3f5716923d3d0bfb27048242a6e0f14eecdb2e2a7fac47eda1d055288595f222"}, - {file = "regex-2021.7.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e5983c19d0beb6af88cb4d47afb92d96751fb3fa1784d8785b1cdf14c6519407"}, - {file = "regex-2021.7.6-cp36-cp36m-win32.whl", hash = "sha256:c92831dac113a6e0ab28bc98f33781383fe294df1a2c3dfd1e850114da35fd5b"}, - {file = "regex-2021.7.6-cp36-cp36m-win_amd64.whl", hash = "sha256:791aa1b300e5b6e5d597c37c346fb4d66422178566bbb426dd87eaae475053fb"}, - {file = "regex-2021.7.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:59506c6e8bd9306cd8a41511e32d16d5d1194110b8cfe5a11d102d8b63cf945d"}, - {file = "regex-2021.7.6-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:564a4c8a29435d1f2256ba247a0315325ea63335508ad8ed938a4f14c4116a5d"}, - {file = "regex-2021.7.6-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:59c00bb8dd8775473cbfb967925ad2c3ecc8886b3b2d0c90a8e2707e06c743f0"}, - {file = "regex-2021.7.6-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:9a854b916806c7e3b40e6616ac9e85d3cdb7649d9e6590653deb5b341a736cec"}, - {file = "regex-2021.7.6-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:db2b7df831c3187a37f3bb80ec095f249fa276dbe09abd3d35297fc250385694"}, - {file = "regex-2021.7.6-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:173bc44ff95bc1e96398c38f3629d86fa72e539c79900283afa895694229fe6a"}, - {file = "regex-2021.7.6-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:15dddb19823f5147e7517bb12635b3c82e6f2a3a6b696cc3e321522e8b9308ad"}, - {file = "regex-2021.7.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ddeabc7652024803666ea09f32dd1ed40a0579b6fbb2a213eba590683025895"}, - {file = "regex-2021.7.6-cp37-cp37m-win32.whl", hash = "sha256:f080248b3e029d052bf74a897b9d74cfb7643537fbde97fe8225a6467fb559b5"}, - {file = "regex-2021.7.6-cp37-cp37m-win_amd64.whl", hash = "sha256:d8bbce0c96462dbceaa7ac4a7dfbbee92745b801b24bce10a98d2f2b1ea9432f"}, - {file = "regex-2021.7.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:edd1a68f79b89b0c57339bce297ad5d5ffcc6ae7e1afdb10f1947706ed066c9c"}, - {file = "regex-2021.7.6-cp38-cp38-manylinux1_i686.whl", hash = "sha256:422dec1e7cbb2efbbe50e3f1de36b82906def93ed48da12d1714cabcd993d7f0"}, - {file = "regex-2021.7.6-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:cbe23b323988a04c3e5b0c387fe3f8f363bf06c0680daf775875d979e376bd26"}, - {file = "regex-2021.7.6-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:0eb2c6e0fcec5e0f1d3bcc1133556563222a2ffd2211945d7b1480c1b1a42a6f"}, - {file = "regex-2021.7.6-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:1c78780bf46d620ff4fff40728f98b8afd8b8e35c3efd638c7df67be2d5cddbf"}, - {file = "regex-2021.7.6-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:bc84fb254a875a9f66616ed4538542fb7965db6356f3df571d783f7c8d256edd"}, - {file = "regex-2021.7.6-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:598c0a79b4b851b922f504f9f39a863d83ebdfff787261a5ed061c21e67dd761"}, - {file = "regex-2021.7.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:875c355360d0f8d3d827e462b29ea7682bf52327d500a4f837e934e9e4656068"}, - {file = "regex-2021.7.6-cp38-cp38-win32.whl", hash = "sha256:e586f448df2bbc37dfadccdb7ccd125c62b4348cb90c10840d695592aa1b29e0"}, - {file = "regex-2021.7.6-cp38-cp38-win_amd64.whl", hash = "sha256:2fe5e71e11a54e3355fa272137d521a40aace5d937d08b494bed4529964c19c4"}, - {file = "regex-2021.7.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6110bab7eab6566492618540c70edd4d2a18f40ca1d51d704f1d81c52d245026"}, - {file = "regex-2021.7.6-cp39-cp39-manylinux1_i686.whl", hash = "sha256:4f64fc59fd5b10557f6cd0937e1597af022ad9b27d454e182485f1db3008f417"}, - {file = "regex-2021.7.6-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:89e5528803566af4df368df2d6f503c84fbfb8249e6631c7b025fe23e6bd0cde"}, - {file = "regex-2021.7.6-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:2366fe0479ca0e9afa534174faa2beae87847d208d457d200183f28c74eaea59"}, - {file = "regex-2021.7.6-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:f9392a4555f3e4cb45310a65b403d86b589adc773898c25a39184b1ba4db8985"}, - {file = "regex-2021.7.6-cp39-cp39-manylinux2014_i686.whl", hash = "sha256:2bceeb491b38225b1fee4517107b8491ba54fba77cf22a12e996d96a3c55613d"}, - {file = "regex-2021.7.6-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:f98dc35ab9a749276f1a4a38ab3e0e2ba1662ce710f6530f5b0a6656f1c32b58"}, - {file = "regex-2021.7.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:319eb2a8d0888fa6f1d9177705f341bc9455a2c8aca130016e52c7fe8d6c37a3"}, - {file = "regex-2021.7.6-cp39-cp39-win32.whl", hash = "sha256:eaf58b9e30e0e546cdc3ac06cf9165a1ca5b3de8221e9df679416ca667972035"}, - {file = "regex-2021.7.6-cp39-cp39-win_amd64.whl", hash = "sha256:4c9c3155fe74269f61e27617529b7f09552fbb12e44b1189cebbdb24294e6e1c"}, - {file = "regex-2021.7.6.tar.gz", hash = "sha256:8394e266005f2d8c6f0bc6780001f7afa3ef81a7a2111fa35058ded6fce79e4d"}, -] requests = [ - {file = "requests-2.26.0-py2.py3-none-any.whl", hash = "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24"}, - {file = "requests-2.26.0.tar.gz", hash = "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"}, + {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"}, + {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"}, +] +rfc3986 = [ + {file = "rfc3986-1.5.0-py2.py3-none-any.whl", hash = "sha256:a86d6e1f5b1dc238b218b012df0aa79409667bb209e58da56d0b94704e712a97"}, + {file = "rfc3986-1.5.0.tar.gz", hash = "sha256:270aaf10d87d0d4e095063c65bf3ddbc6ee3d0b226328ce21e036f946e421835"}, ] rsa = [ - {file = "rsa-4.7.2-py3-none-any.whl", hash = "sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2"}, - {file = "rsa-4.7.2.tar.gz", hash = "sha256:9d689e6ca1b3038bc82bf8d23e944b6b6037bc02301a574935b2dd946e0353b9"}, + {file = "rsa-4.9-py3-none-any.whl", hash = "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7"}, + {file = "rsa-4.9.tar.gz", hash = "sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21"}, +] +setuptools = [ + {file = "setuptools-65.6.3-py3-none-any.whl", hash = "sha256:57f6f22bde4e042978bcd50176fdb381d7c21a9efa4041202288d3737a0c6a54"}, + {file = "setuptools-65.6.3.tar.gz", hash = "sha256:a7620757bf984b58deaf32fc8a4577a9bbc0850cf92c20e1ce41c38c19e5fb75"}, +] +shapely = [ + {file = "Shapely-1.7.1-1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:46da0ea527da9cf9503e66c18bab6981c5556859e518fe71578b47126e54ca93"}, + {file = "Shapely-1.7.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:4c10f317e379cc404f8fc510cd9982d5d3e7ba13a9cfd39aa251d894c6366798"}, + {file = "Shapely-1.7.1-cp35-cp35m-macosx_10_6_intel.whl", hash = "sha256:17df66e87d0fe0193910aeaa938c99f0b04f67b430edb8adae01e7be557b141b"}, + {file = "Shapely-1.7.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:da38ed3d65b8091447dc3717e5218cc336d20303b77b0634b261bc5c1aa2bae8"}, + {file = "Shapely-1.7.1-cp35-cp35m-win32.whl", hash = "sha256:8e7659dd994792a0aad8fb80439f59055a21163e236faf2f9823beb63a380e19"}, + {file = "Shapely-1.7.1-cp35-cp35m-win_amd64.whl", hash = "sha256:791477edb422692e7dc351c5ed6530eb0e949a31b45569946619a0d9cd5f53cb"}, + {file = "Shapely-1.7.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e3afccf0437edc108eef1e2bb9cc4c7073e7705924eb4cd0bf7715cd1ef0ce1b"}, + {file = "Shapely-1.7.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:8f15b6ce67dcc05b61f19c689b60f3fe58550ba994290ff8332f711f5aaa9840"}, + {file = "Shapely-1.7.1-cp36-cp36m-win32.whl", hash = "sha256:60e5b2282619249dbe8dc5266d781cc7d7fb1b27fa49f8241f2167672ad26719"}, + {file = "Shapely-1.7.1-cp36-cp36m-win_amd64.whl", hash = "sha256:de618e67b64a51a0768d26a9963ecd7d338a2cf6e9e7582d2385f88ad005b3d1"}, + {file = "Shapely-1.7.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:182716ffb500d114b5d1b75d7fd9d14b7d3414cef3c38c0490534cc9ce20981a"}, + {file = "Shapely-1.7.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:4f3c59f6dbf86a9fc293546de492f5e07344e045f9333f3a753f2dda903c45d1"}, + {file = "Shapely-1.7.1-cp37-cp37m-win32.whl", hash = "sha256:6871acba8fbe744efa4f9f34e726d070bfbf9bffb356a8f6d64557846324232b"}, + {file = "Shapely-1.7.1-cp37-cp37m-win_amd64.whl", hash = "sha256:35be1c5d869966569d3dfd4ec31832d7c780e9df760e1fe52131105685941891"}, + {file = "Shapely-1.7.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:052eb5b9ba756808a7825e8a8020fb146ec489dd5c919e7d139014775411e688"}, + {file = "Shapely-1.7.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:90a3e2ae0d6d7d50ff2370ba168fbd416a53e7d8448410758c5d6a5920646c1d"}, + {file = "Shapely-1.7.1-cp38-cp38-win32.whl", hash = "sha256:a3774516c8a83abfd1ddffb8b6ec1b0935d7fe6ea0ff5c31a18bfdae567b4eba"}, + {file = "Shapely-1.7.1-cp38-cp38-win_amd64.whl", hash = "sha256:6593026cd3f5daaea12bcc51ae5c979318070fefee210e7990cb8ac2364e79a1"}, + {file = "Shapely-1.7.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:617bf046a6861d7c6b44d2d9cb9e2311548638e684c2cd071d8945f24a926263"}, + {file = "Shapely-1.7.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:b40cc7bb089ae4aa9ddba1db900b4cd1bce3925d2a4b5837b639e49de054784f"}, + {file = "Shapely-1.7.1-cp39-cp39-win32.whl", hash = "sha256:2df5260d0f2983309776cb41bfa85c464ec07018d88c0ecfca23d40bfadae2f1"}, + {file = "Shapely-1.7.1-cp39-cp39-win_amd64.whl", hash = "sha256:a5c3a50d823c192f32615a2a6920e8c046b09e07a58eba220407335a9cd2e8ea"}, + {file = "Shapely-1.7.1.tar.gz", hash = "sha256:1641724c1055459a7e2b8bbe47ba25bdc89554582e62aec23cb3f3ca25f9b129"}, ] six = [ {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, ] +sniffio = [ + {file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"}, + {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"}, +] sqlalchemy = [ - {file = "SQLAlchemy-1.3.24-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:87a2725ad7d41cd7376373c15fd8bf674e9c33ca56d0b8036add2d634dba372e"}, - {file = "SQLAlchemy-1.3.24-cp27-cp27m-win32.whl", hash = "sha256:f597a243b8550a3a0b15122b14e49d8a7e622ba1c9d29776af741f1845478d79"}, - {file = "SQLAlchemy-1.3.24-cp27-cp27m-win_amd64.whl", hash = "sha256:fc4cddb0b474b12ed7bdce6be1b9edc65352e8ce66bc10ff8cbbfb3d4047dbf4"}, - {file = "SQLAlchemy-1.3.24-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:f1149d6e5c49d069163e58a3196865e4321bad1803d7886e07d8710de392c548"}, - {file = "SQLAlchemy-1.3.24-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:14f0eb5db872c231b20c18b1e5806352723a3a89fb4254af3b3e14f22eaaec75"}, - {file = "SQLAlchemy-1.3.24-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:e98d09f487267f1e8d1179bf3b9d7709b30a916491997137dd24d6ae44d18d79"}, - {file = "SQLAlchemy-1.3.24-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:fc1f2a5a5963e2e73bac4926bdaf7790c4d7d77e8fc0590817880e22dd9d0b8b"}, - {file = "SQLAlchemy-1.3.24-cp35-cp35m-win32.whl", hash = "sha256:f3c5c52f7cb8b84bfaaf22d82cb9e6e9a8297f7c2ed14d806a0f5e4d22e83fb7"}, - {file = "SQLAlchemy-1.3.24-cp35-cp35m-win_amd64.whl", hash = "sha256:0352db1befcbed2f9282e72843f1963860bf0e0472a4fa5cf8ee084318e0e6ab"}, - {file = "SQLAlchemy-1.3.24-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:2ed6343b625b16bcb63c5b10523fd15ed8934e1ed0f772c534985e9f5e73d894"}, - {file = "SQLAlchemy-1.3.24-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:34fcec18f6e4b24b4a5f6185205a04f1eab1e56f8f1d028a2a03694ebcc2ddd4"}, - {file = "SQLAlchemy-1.3.24-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:e47e257ba5934550d7235665eee6c911dc7178419b614ba9e1fbb1ce6325b14f"}, - {file = "SQLAlchemy-1.3.24-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:816de75418ea0953b5eb7b8a74933ee5a46719491cd2b16f718afc4b291a9658"}, - {file = "SQLAlchemy-1.3.24-cp36-cp36m-win32.whl", hash = "sha256:26155ea7a243cbf23287f390dba13d7927ffa1586d3208e0e8d615d0c506f996"}, - {file = "SQLAlchemy-1.3.24-cp36-cp36m-win_amd64.whl", hash = "sha256:f03bd97650d2e42710fbe4cf8a59fae657f191df851fc9fc683ecef10746a375"}, - {file = "SQLAlchemy-1.3.24-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:a006d05d9aa052657ee3e4dc92544faae5fcbaafc6128217310945610d862d39"}, - {file = "SQLAlchemy-1.3.24-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:1e2f89d2e5e3c7a88e25a3b0e43626dba8db2aa700253023b82e630d12b37109"}, - {file = "SQLAlchemy-1.3.24-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:0d5d862b1cfbec5028ce1ecac06a3b42bc7703eb80e4b53fceb2738724311443"}, - {file = "SQLAlchemy-1.3.24-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:0172423a27fbcae3751ef016663b72e1a516777de324a76e30efa170dbd3dd2d"}, - {file = "SQLAlchemy-1.3.24-cp37-cp37m-win32.whl", hash = "sha256:d37843fb8df90376e9e91336724d78a32b988d3d20ab6656da4eb8ee3a45b63c"}, - {file = "SQLAlchemy-1.3.24-cp37-cp37m-win_amd64.whl", hash = "sha256:c10ff6112d119f82b1618b6dc28126798481b9355d8748b64b9b55051eb4f01b"}, - {file = "SQLAlchemy-1.3.24-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:861e459b0e97673af6cc5e7f597035c2e3acdfb2608132665406cded25ba64c7"}, - {file = "SQLAlchemy-1.3.24-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:5de2464c254380d8a6c20a2746614d5a436260be1507491442cf1088e59430d2"}, - {file = "SQLAlchemy-1.3.24-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:d375d8ccd3cebae8d90270f7aa8532fe05908f79e78ae489068f3b4eee5994e8"}, - {file = "SQLAlchemy-1.3.24-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:014ea143572fee1c18322b7908140ad23b3994036ef4c0d630110faf942652f8"}, - {file = "SQLAlchemy-1.3.24-cp38-cp38-win32.whl", hash = "sha256:6607ae6cd3a07f8a4c3198ffbf256c261661965742e2b5265a77cd5c679c9bba"}, - {file = "SQLAlchemy-1.3.24-cp38-cp38-win_amd64.whl", hash = "sha256:fcb251305fa24a490b6a9ee2180e5f8252915fb778d3dafc70f9cc3f863827b9"}, - {file = "SQLAlchemy-1.3.24-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:01aa5f803db724447c1d423ed583e42bf5264c597fd55e4add4301f163b0be48"}, - {file = "SQLAlchemy-1.3.24-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:4d0e3515ef98aa4f0dc289ff2eebb0ece6260bbf37c2ea2022aad63797eacf60"}, - {file = "SQLAlchemy-1.3.24-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:bce28277f308db43a6b4965734366f533b3ff009571ec7ffa583cb77539b84d6"}, - {file = "SQLAlchemy-1.3.24-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:8110e6c414d3efc574543109ee618fe2c1f96fa31833a1ff36cc34e968c4f233"}, - {file = "SQLAlchemy-1.3.24-cp39-cp39-win32.whl", hash = "sha256:ee5f5188edb20a29c1cc4a039b074fdc5575337c9a68f3063449ab47757bb064"}, - {file = "SQLAlchemy-1.3.24-cp39-cp39-win_amd64.whl", hash = "sha256:09083c2487ca3c0865dc588e07aeaa25416da3d95f7482c07e92f47e080aa17b"}, - {file = "SQLAlchemy-1.3.24.tar.gz", hash = "sha256:ebbb777cbf9312359b897bf81ba00dae0f5cb69fba2a18265dcc18a6f5ef7519"}, -] -sqlalchemy-stubs = [ - {file = "sqlalchemy-stubs-0.3.tar.gz", hash = "sha256:a3318c810697164e8c818aa2d90bac570c1a0e752ced3ec25455b309c0bee8fd"}, - {file = "sqlalchemy_stubs-0.3-py3-none-any.whl", hash = "sha256:ca1250605a39648cc433f5c70cb1a6f9fe0b60bdda4c51e1f9a2ab3651daadc8"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:f1d3fb02a4d0b07d1351a4a52f159e5e7b3045c903468b7e9349ebf0020ffdb9"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:9b7025d46aba946272f6b6b357a22f3787473ef27451f342df1a2a6de23743e3"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27m-win32.whl", hash = "sha256:26b8424b32eeefa4faad21decd7bdd4aade58640b39407bf43e7d0a7c1bc0453"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27m-win_amd64.whl", hash = "sha256:13578d1cda69bc5e76c59fec9180d6db7ceb71c1360a4d7861c37d87ea6ca0b1"}, + {file = "SQLAlchemy-1.4.45-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6cd53b4c756a6f9c6518a3dc9c05a38840f9ae442c91fe1abde50d73651b6922"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:ca152ffc7f0aa069c95fba46165030267ec5e4bb0107aba45e5e9e86fe4d9363"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06055476d38ed7915eeed22b78580556d446d175c3574a01b9eb04d91f3a8b2e"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:081e2a2d75466353c738ca2ee71c0cfb08229b4f9909b5fa085f75c48d021471"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96821d806c0c90c68ce3f2ce6dd529c10e5d7587961f31dd5c30e3bfddc4545d"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-win32.whl", hash = "sha256:c8051bff4ce48cbc98f11e95ac46bfd1e36272401070c010248a3230d099663f"}, + {file = "SQLAlchemy-1.4.45-cp310-cp310-win_amd64.whl", hash = "sha256:16ad798fc121cad5ea019eb2297127b08c54e1aa95fe17b3fea9fdbc5c34fe62"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:099efef0de9fbda4c2d7cb129e4e7f812007901942259d4e6c6e19bd69de1088"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:29a29d02c9e6f6b105580c5ed7afb722b97bc2e2fdb85e1d45d7ddd8440cfbca"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc10423b59d6d032d6dff0bb42aa06dc6a8824eb6029d70c7d1b6981a2e7f4d8"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-win32.whl", hash = "sha256:1a92685db3b0682776a5abcb5f9e9addb3d7d9a6d841a452a17ec2d8d457bea7"}, + {file = "SQLAlchemy-1.4.45-cp311-cp311-win_amd64.whl", hash = "sha256:db3ccbce4a861bf4338b254f95916fc68dd8b7aa50eea838ecdaf3a52810e9c0"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:a62ae2ea3b940ce9c9cbd675489c2047921ce0a79f971d3082978be91bd58117"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a87f8595390764db333a1705591d0934973d132af607f4fa8b792b366eacbb3c"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9a21c1fb71c69c8ec65430160cd3eee44bbcea15b5a4e556f29d03f246f425ec"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7944b04e6fcf8d733964dd9ee36b6a587251a1a4049af3a9b846f6e64eb349a"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-win32.whl", hash = "sha256:a3bcd5e2049ceb97e8c273e6a84ff4abcfa1dc47b6d8bbd36e07cce7176610d3"}, + {file = "SQLAlchemy-1.4.45-cp36-cp36m-win_amd64.whl", hash = "sha256:5953e225be47d80410ae519f865b5c341f541d8e383fb6d11f67fb71a45bf890"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:6a91b7883cb7855a27bc0637166eed622fdf1bb94a4d1630165e5dd88c7e64d3"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d458fd0566bc9e10b8be857f089e96b5ca1b1ef033226f24512f9ffdf485a8c0"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:88f4ad3b081c0dbb738886f8d425a5d983328670ee83b38192687d78fc82bd1e"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cd95a3e6ab46da2c5b0703e797a772f3fab44d085b3919a4f27339aa3b1f51d3"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-win32.whl", hash = "sha256:715f5859daa3bee6ecbad64501637fa4640ca6734e8cda6135e3898d5f8ccadd"}, + {file = "SQLAlchemy-1.4.45-cp37-cp37m-win_amd64.whl", hash = "sha256:2d1539fbc82d2206380a86d6d7d0453764fdca5d042d78161bbfb8dd047c80ec"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:01aa76f324c9bbc0dcb2bc3d9e2a9d7ede4808afa1c38d40d5e2007e3163b206"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:416fe7d228937bd37990b5a429fd00ad0e49eabcea3455af7beed7955f192edd"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7e32ce2584564d9e068bb7e0ccd1810cbb0a824c0687f8016fe67e97c345a637"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:561605cfc26273825ed2fb8484428faf36e853c13e4c90c61c58988aeccb34ed"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-win32.whl", hash = "sha256:55ddb5585129c5d964a537c9e32a8a68a8c6293b747f3fa164e1c034e1657a98"}, + {file = "SQLAlchemy-1.4.45-cp38-cp38-win_amd64.whl", hash = "sha256:445914dcadc0b623bd9851260ee54915ecf4e3041a62d57709b18a0eed19f33b"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:2db887dbf05bcc3151de1c4b506b14764c6240a42e844b4269132a7584de1e5f"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52b90c9487e4449ad954624d01dea34c90cd8c104bce46b322c83654f37a23c5"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f61e54b8c2b389de1a8ad52394729c478c67712dbdcdadb52c2575e41dae94a5"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e91a5e45a2ea083fe344b3503405978dff14d60ef3aa836432c9ca8cd47806b6"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-win32.whl", hash = "sha256:0e068b8414d60dd35d43c693555fc3d2e1d822cef07960bb8ca3f1ee6c4ff762"}, + {file = "SQLAlchemy-1.4.45-cp39-cp39-win_amd64.whl", hash = "sha256:2d6f178ff2923730da271c8aa317f70cf0df11a4d1812f1d7a704b1cf29c5fe3"}, + {file = "SQLAlchemy-1.4.45.tar.gz", hash = "sha256:fd69850860093a3f69fefe0ab56d041edfdfe18510b53d9a2eaecba2f15fa795"}, +] +sqlalchemy2-stubs = [ + {file = "sqlalchemy2-stubs-0.0.2a29.tar.gz", hash = "sha256:1bbc6aebd76db7c0351a9f45cc1c4e8ac335ba150094c2af091e8b87b9118419"}, + {file = "sqlalchemy2_stubs-0.0.2a29-py3-none-any.whl", hash = "sha256:ece266cdabf3797b13ddddba27561b67ae7dedc038942bf66e045e978a5e3a66"}, ] starlette = [ - {file = "starlette-0.14.2-py3-none-any.whl", hash = "sha256:3c8e48e52736b3161e34c9f0e8153b4f32ec5d8995a3ee1d59410d92f75162ed"}, - {file = "starlette-0.14.2.tar.gz", hash = "sha256:7d49f4a27f8742262ef1470608c59ddbc66baf37c148e938c7038e6bc7a998aa"}, + {file = "starlette-0.22.0-py3-none-any.whl", hash = "sha256:b5eda991ad5f0ee5d8ce4c4540202a573bb6691ecd0c712262d0bc85cf8f2c50"}, + {file = "starlette-0.22.0.tar.gz", hash = "sha256:b092cbc365bea34dd6840b42861bdabb2f507f8671e642e8272d2442e08ea4ff"}, ] tenacity = [ - {file = "tenacity-6.3.1-py2.py3-none-any.whl", hash = "sha256:baed357d9f35ec64264d8a4bbf004c35058fad8795c5b0d8a7dc77ecdcbb8f39"}, - {file = "tenacity-6.3.1.tar.gz", hash = "sha256:e14d191fb0a309b563904bbc336582efe2037de437e543b38da749769b544d7f"}, -] -toml = [ - {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, - {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, -] -typed-ast = [ - {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:2068531575a125b87a41802130fa7e29f26c09a2833fea68d9a40cf33902eba6"}, - {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:c907f561b1e83e93fad565bac5ba9c22d96a54e7ea0267c708bffe863cbe4075"}, - {file = "typed_ast-1.4.3-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:1b3ead4a96c9101bef08f9f7d1217c096f31667617b58de957f690c92378b528"}, - {file = "typed_ast-1.4.3-cp35-cp35m-win32.whl", hash = "sha256:dde816ca9dac1d9c01dd504ea5967821606f02e510438120091b84e852367428"}, - {file = "typed_ast-1.4.3-cp35-cp35m-win_amd64.whl", hash = "sha256:777a26c84bea6cd934422ac2e3b78863a37017618b6e5c08f92ef69853e765d3"}, - {file = "typed_ast-1.4.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f8afcf15cc511ada719a88e013cec87c11aff7b91f019295eb4530f96fe5ef2f"}, - {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:52b1eb8c83f178ab787f3a4283f68258525f8d70f778a2f6dd54d3b5e5fb4341"}, - {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:01ae5f73431d21eead5015997ab41afa53aa1fbe252f9da060be5dad2c730ace"}, - {file = "typed_ast-1.4.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:c190f0899e9f9f8b6b7863debfb739abcb21a5c054f911ca3596d12b8a4c4c7f"}, - {file = "typed_ast-1.4.3-cp36-cp36m-win32.whl", hash = "sha256:398e44cd480f4d2b7ee8d98385ca104e35c81525dd98c519acff1b79bdaac363"}, - {file = "typed_ast-1.4.3-cp36-cp36m-win_amd64.whl", hash = "sha256:bff6ad71c81b3bba8fa35f0f1921fb24ff4476235a6e94a26ada2e54370e6da7"}, - {file = "typed_ast-1.4.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0fb71b8c643187d7492c1f8352f2c15b4c4af3f6338f21681d3681b3dc31a266"}, - {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:760ad187b1041a154f0e4d0f6aae3e40fdb51d6de16e5c99aedadd9246450e9e"}, - {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:5feca99c17af94057417d744607b82dd0a664fd5e4ca98061480fd8b14b18d04"}, - {file = "typed_ast-1.4.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:95431a26309a21874005845c21118c83991c63ea800dd44843e42a916aec5899"}, - {file = "typed_ast-1.4.3-cp37-cp37m-win32.whl", hash = "sha256:aee0c1256be6c07bd3e1263ff920c325b59849dc95392a05f258bb9b259cf39c"}, - {file = "typed_ast-1.4.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9ad2c92ec681e02baf81fdfa056fe0d818645efa9af1f1cd5fd6f1bd2bdfd805"}, - {file = "typed_ast-1.4.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b36b4f3920103a25e1d5d024d155c504080959582b928e91cb608a65c3a49e1a"}, - {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_i686.whl", hash = "sha256:067a74454df670dcaa4e59349a2e5c81e567d8d65458d480a5b3dfecec08c5ff"}, - {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7538e495704e2ccda9b234b82423a4038f324f3a10c43bc088a1636180f11a41"}, - {file = "typed_ast-1.4.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:af3d4a73793725138d6b334d9d247ce7e5f084d96284ed23f22ee626a7b88e39"}, - {file = "typed_ast-1.4.3-cp38-cp38-win32.whl", hash = "sha256:f2362f3cb0f3172c42938946dbc5b7843c2a28aec307c49100c8b38764eb6927"}, - {file = "typed_ast-1.4.3-cp38-cp38-win_amd64.whl", hash = "sha256:dd4a21253f42b8d2b48410cb31fe501d32f8b9fbeb1f55063ad102fe9c425e40"}, - {file = "typed_ast-1.4.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f328adcfebed9f11301eaedfa48e15bdece9b519fb27e6a8c01aa52a17ec31b3"}, - {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_i686.whl", hash = "sha256:2c726c276d09fc5c414693a2de063f521052d9ea7c240ce553316f70656c84d4"}, - {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:cae53c389825d3b46fb37538441f75d6aecc4174f615d048321b716df2757fb0"}, - {file = "typed_ast-1.4.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:b9574c6f03f685070d859e75c7f9eeca02d6933273b5e69572e5ff9d5e3931c3"}, - {file = "typed_ast-1.4.3-cp39-cp39-win32.whl", hash = "sha256:209596a4ec71d990d71d5e0d312ac935d86930e6eecff6ccc7007fe54d703808"}, - {file = "typed_ast-1.4.3-cp39-cp39-win_amd64.whl", hash = "sha256:9c6d1a54552b5330bc657b7ef0eae25d00ba7ffe85d9ea8ae6540d2197a3788c"}, - {file = "typed_ast-1.4.3.tar.gz", hash = "sha256:fb1bbeac803adea29cedd70781399c99138358c26d05fcbd23c13016b7f5ec65"}, + {file = "tenacity-8.1.0-py3-none-any.whl", hash = "sha256:35525cd47f82830069f0d6b73f7eb83bc5b73ee2fff0437952cedf98b27653ac"}, + {file = "tenacity-8.1.0.tar.gz", hash = "sha256:e48c437fdf9340f5666b92cd7990e96bc5fc955e1298baf4a907e3972067a445"}, +] +tomli = [ + {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, + {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, ] typing-extensions = [ - {file = "typing_extensions-3.10.0.0-py2-none-any.whl", hash = "sha256:0ac0f89795dd19de6b97debb0c6af1c70987fd80a2d62d1958f7e56fcc31b497"}, - {file = "typing_extensions-3.10.0.0-py3-none-any.whl", hash = "sha256:779383f6086d90c99ae41cf0ff39aac8a7937a9283ce0a414e5dd782f4c94a84"}, - {file = "typing_extensions-3.10.0.0.tar.gz", hash = "sha256:50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342"}, + {file = "typing_extensions-4.4.0-py3-none-any.whl", hash = "sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e"}, + {file = "typing_extensions-4.4.0.tar.gz", hash = "sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa"}, ] urllib3 = [ - {file = "urllib3-1.26.6-py2.py3-none-any.whl", hash = "sha256:39fb8672126159acb139a7718dd10806104dec1e2f0f6c88aab05d17df10c8d4"}, - {file = "urllib3-1.26.6.tar.gz", hash = "sha256:f57b4c16c62fa2760b7e3d97c35b255512fb6b59a259730f36ba32ce9f8e342f"}, + {file = "urllib3-1.26.13-py2.py3-none-any.whl", hash = "sha256:47cc05d99aaa09c9e72ed5809b60e7ba354e64b59c9c173ac3018642d8bb41fc"}, + {file = "urllib3-1.26.13.tar.gz", hash = "sha256:c083dd0dce68dbfbe1129d5271cb90f9447dea7d52097c6e0126120c521ddea8"}, ] uvicorn = [ - {file = "uvicorn-0.14.0-py3-none-any.whl", hash = "sha256:2a76bb359171a504b3d1c853409af3adbfa5cef374a4a59e5881945a97a93eae"}, - {file = "uvicorn-0.14.0.tar.gz", hash = "sha256:45ad7dfaaa7d55cab4cd1e85e03f27e9d60bc067ddc59db52a2b0aeca8870292"}, + {file = "uvicorn-0.17.6-py3-none-any.whl", hash = "sha256:19e2a0e96c9ac5581c01eb1a79a7d2f72bb479691acd2b8921fce48ed5b961a6"}, + {file = "uvicorn-0.17.6.tar.gz", hash = "sha256:5180f9d059611747d841a4a4c4ab675edf54c8489e97f96d0583ee90ac3bfc23"}, ] uvloop = [ - {file = "uvloop-0.15.3-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:e71fb9038bfcd7646ca126c5ef19b17e48d4af9e838b2bcfda7a9f55a6552a32"}, - {file = "uvloop-0.15.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7522df4e45e4f25b50adbbbeb5bb9847495c438a628177099d2721f2751ff825"}, - {file = "uvloop-0.15.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae2b325c0f6d748027f7463077e457006b4fdb35a8788f01754aadba825285ee"}, - {file = "uvloop-0.15.3-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:0de811931e90ae2da9e19ce70ffad73047ab0c1dba7c6e74f9ae1a3aabeb89bd"}, - {file = "uvloop-0.15.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7f4b8a905df909a407c5791fb582f6c03b0d3b491ecdc1cdceaefbc9bf9e08f6"}, - {file = "uvloop-0.15.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d8ffe44ae709f839c54bacf14ed283f41bee90430c3b398e521e10f8d117b3a"}, - {file = "uvloop-0.15.3-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:63a3288abbc9c8ee979d7e34c34e780b2fbab3e7e53d00b6c80271119f277399"}, - {file = "uvloop-0.15.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5cda65fc60a645470b8525ce014516b120b7057b576fa876cdfdd5e60ab1efbb"}, - {file = "uvloop-0.15.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ff05116ede1ebdd81802df339e5b1d4cab1dfbd99295bf27e90b4cec64d70e9"}, - {file = "uvloop-0.15.3.tar.gz", hash = "sha256:905f0adb0c09c9f44222ee02f6b96fd88b493478fffb7a345287f9444e926030"}, + {file = "uvloop-0.17.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ce9f61938d7155f79d3cb2ffa663147d4a76d16e08f65e2c66b77bd41b356718"}, + {file = "uvloop-0.17.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:68532f4349fd3900b839f588972b3392ee56042e440dd5873dfbbcd2cc67617c"}, + {file = "uvloop-0.17.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0949caf774b9fcefc7c5756bacbbbd3fc4c05a6b7eebc7c7ad6f825b23998d6d"}, + {file = "uvloop-0.17.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ff3d00b70ce95adce264462c930fbaecb29718ba6563db354608f37e49e09024"}, + {file = "uvloop-0.17.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:a5abddb3558d3f0a78949c750644a67be31e47936042d4f6c888dd6f3c95f4aa"}, + {file = "uvloop-0.17.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8efcadc5a0003d3a6e887ccc1fb44dec25594f117a94e3127954c05cf144d811"}, + {file = "uvloop-0.17.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:3378eb62c63bf336ae2070599e49089005771cc651c8769aaad72d1bd9385a7c"}, + {file = "uvloop-0.17.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6aafa5a78b9e62493539456f8b646f85abc7093dd997f4976bb105537cf2635e"}, + {file = "uvloop-0.17.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c686a47d57ca910a2572fddfe9912819880b8765e2f01dc0dd12a9bf8573e539"}, + {file = "uvloop-0.17.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:864e1197139d651a76c81757db5eb199db8866e13acb0dfe96e6fc5d1cf45fc4"}, + {file = "uvloop-0.17.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:2a6149e1defac0faf505406259561bc14b034cdf1d4711a3ddcdfbaa8d825a05"}, + {file = "uvloop-0.17.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6708f30db9117f115eadc4f125c2a10c1a50d711461699a0cbfaa45b9a78e376"}, + {file = "uvloop-0.17.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:23609ca361a7fc587031429fa25ad2ed7242941adec948f9d10c045bfecab06b"}, + {file = "uvloop-0.17.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2deae0b0fb00a6af41fe60a675cec079615b01d68beb4cc7b722424406b126a8"}, + {file = "uvloop-0.17.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45cea33b208971e87a31c17622e4b440cac231766ec11e5d22c76fab3bf9df62"}, + {file = "uvloop-0.17.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:9b09e0f0ac29eee0451d71798878eae5a4e6a91aa275e114037b27f7db72702d"}, + {file = "uvloop-0.17.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:dbbaf9da2ee98ee2531e0c780455f2841e4675ff580ecf93fe5c48fe733b5667"}, + {file = "uvloop-0.17.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a4aee22ece20958888eedbad20e4dbb03c37533e010fb824161b4f05e641f738"}, + {file = "uvloop-0.17.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:307958f9fc5c8bb01fad752d1345168c0abc5d62c1b72a4a8c6c06f042b45b20"}, + {file = "uvloop-0.17.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ebeeec6a6641d0adb2ea71dcfb76017602ee2bfd8213e3fcc18d8f699c5104f"}, + {file = "uvloop-0.17.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1436c8673c1563422213ac6907789ecb2b070f5939b9cbff9ef7113f2b531595"}, + {file = "uvloop-0.17.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8887d675a64cfc59f4ecd34382e5b4f0ef4ae1da37ed665adba0c2badf0d6578"}, + {file = "uvloop-0.17.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:3db8de10ed684995a7f34a001f15b374c230f7655ae840964d51496e2f8a8474"}, + {file = "uvloop-0.17.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7d37dccc7ae63e61f7b96ee2e19c40f153ba6ce730d8ba4d3b4e9738c1dccc1b"}, + {file = "uvloop-0.17.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:cbbe908fda687e39afd6ea2a2f14c2c3e43f2ca88e3a11964b297822358d0e6c"}, + {file = "uvloop-0.17.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d97672dc709fa4447ab83276f344a165075fd9f366a97b712bdd3fee05efae8"}, + {file = "uvloop-0.17.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f1e507c9ee39c61bfddd79714e4f85900656db1aec4d40c6de55648e85c2799c"}, + {file = "uvloop-0.17.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c092a2c1e736086d59ac8e41f9c98f26bbf9b9222a76f21af9dfe949b99b2eb9"}, + {file = "uvloop-0.17.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:30babd84706115626ea78ea5dbc7dd8d0d01a2e9f9b306d24ca4ed5796c66ded"}, + {file = "uvloop-0.17.0.tar.gz", hash = "sha256:0ddf6baf9cf11a1a22c71487f39f15b2cf78eb5bde7e5b45fbb99e8a9d91b9e1"}, ] vine = [ - {file = "vine-1.3.0-py2.py3-none-any.whl", hash = "sha256:ea4947cc56d1fd6f2095c8d543ee25dad966f78692528e68b4fada11ba3f98af"}, - {file = "vine-1.3.0.tar.gz", hash = "sha256:133ee6d7a9016f177ddeaf191c1f58421a1dcc6ee9a42c58b34bed40e1d2cd87"}, + {file = "vine-5.0.0-py2.py3-none-any.whl", hash = "sha256:4c9dceab6f76ed92105027c49c823800dd33cacce13bdedc5b914e3514b7fb30"}, + {file = "vine-5.0.0.tar.gz", hash = "sha256:7d3b1624a953da82ef63462013bbd271d3eb75751489f9807598e8f340bd637e"}, ] watchgod = [ - {file = "watchgod-0.7-py3-none-any.whl", hash = "sha256:d6c1ea21df37847ac0537ca0d6c2f4cdf513562e95f77bb93abbcf05573407b7"}, - {file = "watchgod-0.7.tar.gz", hash = "sha256:48140d62b0ebe9dd9cf8381337f06351e1f2e70b2203fa9c6eff4e572ca84f29"}, + {file = "watchgod-0.8.2-py3-none-any.whl", hash = "sha256:2f3e8137d98f493ff58af54ea00f4d1433a6afe2ed08ab331a657df468c6bfce"}, + {file = "watchgod-0.8.2.tar.gz", hash = "sha256:cb11ff66657befba94d828e3b622d5fb76f22fbda1376f355f3e6e51e97d9450"}, ] wcwidth = [ {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"}, {file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"}, ] websockets = [ - {file = "websockets-9.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d144b350045c53c8ff09aa1cfa955012dd32f00c7e0862c199edcabb1a8b32da"}, - {file = "websockets-9.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:b4ad84b156cf50529b8ac5cc1638c2cf8680490e3fccb6121316c8c02620a2e4"}, - {file = "websockets-9.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:2cf04601633a4ec176b9cc3d3e73789c037641001dbfaf7c411f89cd3e04fcaf"}, - {file = "websockets-9.1-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:5c8f0d82ea2468282e08b0cf5307f3ad022290ed50c45d5cb7767957ca782880"}, - {file = "websockets-9.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:caa68c95bc1776d3521f81eeb4d5b9438be92514ec2a79fececda814099c8314"}, - {file = "websockets-9.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:d2c2d9b24d3c65b5a02cac12cbb4e4194e590314519ed49db2f67ef561c3cf58"}, - {file = "websockets-9.1-cp36-cp36m-win32.whl", hash = "sha256:f31722f1c033c198aa4a39a01905951c00bd1c74f922e8afc1b1c62adbcdd56a"}, - {file = "websockets-9.1-cp36-cp36m-win_amd64.whl", hash = "sha256:3ddff38894c7857c476feb3538dd847514379d6dc844961dc99f04b0384b1b1b"}, - {file = "websockets-9.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:51d04df04ed9d08077d10ccbe21e6805791b78eac49d16d30a1f1fe2e44ba0af"}, - {file = "websockets-9.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:f68c352a68e5fdf1e97288d5cec9296664c590c25932a8476224124aaf90dbcd"}, - {file = "websockets-9.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:b43b13e5622c5a53ab12f3272e6f42f1ce37cd5b6684b2676cb365403295cd40"}, - {file = "websockets-9.1-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:9147868bb0cc01e6846606cd65cbf9c58598f187b96d14dd1ca17338b08793bb"}, - {file = "websockets-9.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:836d14eb53b500fd92bd5db2fc5894f7c72b634f9c2a28f546f75967503d8e25"}, - {file = "websockets-9.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:48c222feb3ced18f3dc61168ca18952a22fb88e5eb8902d2bf1b50faefdc34a2"}, - {file = "websockets-9.1-cp37-cp37m-win32.whl", hash = "sha256:900589e19200be76dd7cbaa95e9771605b5ce3f62512d039fb3bc5da9014912a"}, - {file = "websockets-9.1-cp37-cp37m-win_amd64.whl", hash = "sha256:ab5ee15d3462198c794c49ccd31773d8a2b8c17d622aa184f669d2b98c2f0857"}, - {file = "websockets-9.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:85e701a6c316b7067f1e8675c638036a796fe5116783a4c932e7eb8e305a3ffe"}, - {file = "websockets-9.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:b2e71c4670ebe1067fa8632f0d081e47254ee2d3d409de54168b43b0ba9147e0"}, - {file = "websockets-9.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:230a3506df6b5f446fed2398e58dcaafdff12d67fe1397dff196411a9e820d02"}, - {file = "websockets-9.1-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:7df3596838b2a0c07c6f6d67752c53859a54993d4f062689fdf547cb56d0f84f"}, - {file = "websockets-9.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:826ccf85d4514609219725ba4a7abd569228c2c9f1968e8be05be366f68291ec"}, - {file = "websockets-9.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:0dd4eb8e0bbf365d6f652711ce21b8fd2b596f873d32aabb0fbb53ec604418cc"}, - {file = "websockets-9.1-cp38-cp38-win32.whl", hash = "sha256:1d0971cc7251aeff955aa742ec541ee8aaea4bb2ebf0245748fbec62f744a37e"}, - {file = "websockets-9.1-cp38-cp38-win_amd64.whl", hash = "sha256:7189e51955f9268b2bdd6cc537e0faa06f8fffda7fb386e5922c6391de51b077"}, - {file = "websockets-9.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e9e5fd6dbdf95d99bc03732ded1fc8ef22ebbc05999ac7e0c7bf57fe6e4e5ae2"}, - {file = "websockets-9.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:9e7fdc775fe7403dbd8bc883ba59576a6232eac96dacb56512daacf7af5d618d"}, - {file = "websockets-9.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:597c28f3aa7a09e8c070a86b03107094ee5cdafcc0d55f2f2eac92faac8dc67d"}, - {file = "websockets-9.1-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:ad893d889bc700a5835e0a95a3e4f2c39e91577ab232a3dc03c262a0f8fc4b5c"}, - {file = "websockets-9.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:1d6b4fddb12ab9adf87b843cd4316c4bd602db8d5efd2fb83147f0458fe85135"}, - {file = "websockets-9.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:ebf459a1c069f9866d8569439c06193c586e72c9330db1390af7c6a0a32c4afd"}, - {file = "websockets-9.1-cp39-cp39-win32.whl", hash = "sha256:be5fd35e99970518547edc906efab29afd392319f020c3c58b0e1a158e16ed20"}, - {file = "websockets-9.1-cp39-cp39-win_amd64.whl", hash = "sha256:85db8090ba94e22d964498a47fdd933b8875a1add6ebc514c7ac8703eb97bbf0"}, - {file = "websockets-9.1.tar.gz", hash = "sha256:276d2339ebf0df4f45df453923ebd2270b87900eda5dfd4a6b0cfa15f82111c3"}, + {file = "websockets-10.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d58804e996d7d2307173d56c297cf7bc132c52df27a3efaac5e8d43e36c21c48"}, + {file = "websockets-10.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bc0b82d728fe21a0d03e65f81980abbbcb13b5387f733a1a870672c5be26edab"}, + {file = "websockets-10.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ba089c499e1f4155d2a3c2a05d2878a3428cf321c848f2b5a45ce55f0d7d310c"}, + {file = "websockets-10.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:33d69ca7612f0ddff3316b0c7b33ca180d464ecac2d115805c044bf0a3b0d032"}, + {file = "websockets-10.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62e627f6b6d4aed919a2052efc408da7a545c606268d5ab5bfab4432734b82b4"}, + {file = "websockets-10.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38ea7b82bfcae927eeffc55d2ffa31665dc7fec7b8dc654506b8e5a518eb4d50"}, + {file = "websockets-10.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e0cb5cc6ece6ffa75baccfd5c02cffe776f3f5c8bf486811f9d3ea3453676ce8"}, + {file = "websockets-10.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ae5e95cfb53ab1da62185e23b3130e11d64431179debac6dc3c6acf08760e9b1"}, + {file = "websockets-10.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7c584f366f46ba667cfa66020344886cf47088e79c9b9d39c84ce9ea98aaa331"}, + {file = "websockets-10.4-cp310-cp310-win32.whl", hash = "sha256:b029fb2032ae4724d8ae8d4f6b363f2cc39e4c7b12454df8df7f0f563ed3e61a"}, + {file = "websockets-10.4-cp310-cp310-win_amd64.whl", hash = "sha256:8dc96f64ae43dde92530775e9cb169979f414dcf5cff670455d81a6823b42089"}, + {file = "websockets-10.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:47a2964021f2110116cc1125b3e6d87ab5ad16dea161949e7244ec583b905bb4"}, + {file = "websockets-10.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:e789376b52c295c4946403bd0efecf27ab98f05319df4583d3c48e43c7342c2f"}, + {file = "websockets-10.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7d3f0b61c45c3fa9a349cf484962c559a8a1d80dae6977276df8fd1fa5e3cb8c"}, + {file = "websockets-10.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f55b5905705725af31ccef50e55391621532cd64fbf0bc6f4bac935f0fccec46"}, + {file = "websockets-10.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:00c870522cdb69cd625b93f002961ffb0c095394f06ba8c48f17eef7c1541f96"}, + {file = "websockets-10.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f38706e0b15d3c20ef6259fd4bc1700cd133b06c3c1bb108ffe3f8947be15fa"}, + {file = "websockets-10.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f2c38d588887a609191d30e902df2a32711f708abfd85d318ca9b367258cfd0c"}, + {file = "websockets-10.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:fe10ddc59b304cb19a1bdf5bd0a7719cbbc9fbdd57ac80ed436b709fcf889106"}, + {file = "websockets-10.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:90fcf8929836d4a0e964d799a58823547df5a5e9afa83081761630553be731f9"}, + {file = "websockets-10.4-cp311-cp311-win32.whl", hash = "sha256:b9968694c5f467bf67ef97ae7ad4d56d14be2751000c1207d31bf3bb8860bae8"}, + {file = "websockets-10.4-cp311-cp311-win_amd64.whl", hash = "sha256:a7a240d7a74bf8d5cb3bfe6be7f21697a28ec4b1a437607bae08ac7acf5b4882"}, + {file = "websockets-10.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:74de2b894b47f1d21cbd0b37a5e2b2392ad95d17ae983e64727e18eb281fe7cb"}, + {file = "websockets-10.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e3a686ecb4aa0d64ae60c9c9f1a7d5d46cab9bfb5d91a2d303d00e2cd4c4c5cc"}, + {file = "websockets-10.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b0d15c968ea7a65211e084f523151dbf8ae44634de03c801b8bd070b74e85033"}, + {file = "websockets-10.4-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:00213676a2e46b6ebf6045bc11d0f529d9120baa6f58d122b4021ad92adabd41"}, + {file = "websockets-10.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:e23173580d740bf8822fd0379e4bf30aa1d5a92a4f252d34e893070c081050df"}, + {file = "websockets-10.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:dd500e0a5e11969cdd3320935ca2ff1e936f2358f9c2e61f100a1660933320ea"}, + {file = "websockets-10.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:4239b6027e3d66a89446908ff3027d2737afc1a375f8fd3eea630a4842ec9a0c"}, + {file = "websockets-10.4-cp37-cp37m-win32.whl", hash = "sha256:8a5cc00546e0a701da4639aa0bbcb0ae2bb678c87f46da01ac2d789e1f2d2038"}, + {file = "websockets-10.4-cp37-cp37m-win_amd64.whl", hash = "sha256:a9f9a735deaf9a0cadc2d8c50d1a5bcdbae8b6e539c6e08237bc4082d7c13f28"}, + {file = "websockets-10.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5c1289596042fad2cdceb05e1ebf7aadf9995c928e0da2b7a4e99494953b1b94"}, + {file = "websockets-10.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0cff816f51fb33c26d6e2b16b5c7d48eaa31dae5488ace6aae468b361f422b63"}, + {file = "websockets-10.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:dd9becd5fe29773d140d68d607d66a38f60e31b86df75332703757ee645b6faf"}, + {file = "websockets-10.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45ec8e75b7dbc9539cbfafa570742fe4f676eb8b0d3694b67dabe2f2ceed8aa6"}, + {file = "websockets-10.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f72e5cd0f18f262f5da20efa9e241699e0cf3a766317a17392550c9ad7b37d8"}, + {file = "websockets-10.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:185929b4808b36a79c65b7865783b87b6841e852ef5407a2fb0c03381092fa3b"}, + {file = "websockets-10.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7d27a7e34c313b3a7f91adcd05134315002aaf8540d7b4f90336beafaea6217c"}, + {file = "websockets-10.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:884be66c76a444c59f801ac13f40c76f176f1bfa815ef5b8ed44321e74f1600b"}, + {file = "websockets-10.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:931c039af54fc195fe6ad536fde4b0de04da9d5916e78e55405436348cfb0e56"}, + {file = "websockets-10.4-cp38-cp38-win32.whl", hash = "sha256:db3c336f9eda2532ec0fd8ea49fef7a8df8f6c804cdf4f39e5c5c0d4a4ad9a7a"}, + {file = "websockets-10.4-cp38-cp38-win_amd64.whl", hash = "sha256:48c08473563323f9c9debac781ecf66f94ad5a3680a38fe84dee5388cf5acaf6"}, + {file = "websockets-10.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:40e826de3085721dabc7cf9bfd41682dadc02286d8cf149b3ad05bff89311e4f"}, + {file = "websockets-10.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:56029457f219ade1f2fc12a6504ea61e14ee227a815531f9738e41203a429112"}, + {file = "websockets-10.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f5fc088b7a32f244c519a048c170f14cf2251b849ef0e20cbbb0fdf0fdaf556f"}, + {file = "websockets-10.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2fc8709c00704194213d45e455adc106ff9e87658297f72d544220e32029cd3d"}, + {file = "websockets-10.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0154f7691e4fe6c2b2bc275b5701e8b158dae92a1ab229e2b940efe11905dff4"}, + {file = "websockets-10.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c6d2264f485f0b53adf22697ac11e261ce84805c232ed5dbe6b1bcb84b00ff0"}, + {file = "websockets-10.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9bc42e8402dc5e9905fb8b9649f57efcb2056693b7e88faa8fb029256ba9c68c"}, + {file = "websockets-10.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:edc344de4dac1d89300a053ac973299e82d3db56330f3494905643bb68801269"}, + {file = "websockets-10.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:84bc2a7d075f32f6ed98652db3a680a17a4edb21ca7f80fe42e38753a58ee02b"}, + {file = "websockets-10.4-cp39-cp39-win32.whl", hash = "sha256:c94ae4faf2d09f7c81847c63843f84fe47bf6253c9d60b20f25edfd30fb12588"}, + {file = "websockets-10.4-cp39-cp39-win_amd64.whl", hash = "sha256:bbccd847aa0c3a69b5f691a84d2341a4f8a629c6922558f2a70611305f902d74"}, + {file = "websockets-10.4-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:82ff5e1cae4e855147fd57a2863376ed7454134c2bf49ec604dfe71e446e2193"}, + {file = "websockets-10.4-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d210abe51b5da0ffdbf7b43eed0cfdff8a55a1ab17abbec4301c9ff077dd0342"}, + {file = "websockets-10.4-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:942de28af58f352a6f588bc72490ae0f4ccd6dfc2bd3de5945b882a078e4e179"}, + {file = "websockets-10.4-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c9b27d6c1c6cd53dc93614967e9ce00ae7f864a2d9f99fe5ed86706e1ecbf485"}, + {file = "websockets-10.4-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:3d3cac3e32b2c8414f4f87c1b2ab686fa6284a980ba283617404377cd448f631"}, + {file = "websockets-10.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:da39dd03d130162deb63da51f6e66ed73032ae62e74aaccc4236e30edccddbb0"}, + {file = "websockets-10.4-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:389f8dbb5c489e305fb113ca1b6bdcdaa130923f77485db5b189de343a179393"}, + {file = "websockets-10.4-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09a1814bb15eff7069e51fed0826df0bc0702652b5cb8f87697d469d79c23576"}, + {file = "websockets-10.4-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ff64a1d38d156d429404aaa84b27305e957fd10c30e5880d1765c9480bea490f"}, + {file = "websockets-10.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:b343f521b047493dc4022dd338fc6db9d9282658862756b4f6fd0e996c1380e1"}, + {file = "websockets-10.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:932af322458da7e4e35df32f050389e13d3d96b09d274b22a7aa1808f292fee4"}, + {file = "websockets-10.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6a4162139374a49eb18ef5b2f4da1dd95c994588f5033d64e0bbfda4b6b6fcf"}, + {file = "websockets-10.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c57e4c1349fbe0e446c9fa7b19ed2f8a4417233b6984277cce392819123142d3"}, + {file = "websockets-10.4-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b627c266f295de9dea86bd1112ed3d5fafb69a348af30a2422e16590a8ecba13"}, + {file = "websockets-10.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:05a7233089f8bd355e8cbe127c2e8ca0b4ea55467861906b80d2ebc7db4d6b72"}, + {file = "websockets-10.4.tar.gz", hash = "sha256:eef610b23933c54d5d921c92578ae5f89813438fded840c2e9809d378dc765d3"}, ] diff --git a/{{cookiecutter.project_slug}}/backend/app/pyproject.toml b/{{cookiecutter.project_slug}}/backend/app/pyproject.toml index a245c8bf5e..5b17d9fefa 100644 --- a/{{cookiecutter.project_slug}}/backend/app/pyproject.toml +++ b/{{cookiecutter.project_slug}}/backend/app/pyproject.toml @@ -5,38 +5,45 @@ description = "" authors = ["Admin "] [tool.poetry.dependencies] -python = "^3.9" -inboard = {version = "^0.10.2", extras = ["fastapi"]} +python = "^3.9.4" +inboard = {version = "^0.37.0", extras = ["fastapi"]} python-multipart = "^0.0.5" -email-validator = "^1.0.5" -requests = "^2.23.0" -celery = "^4.4.2" -passlib = {extras = ["bcrypt"], version = "^1.7.2"} -tenacity = "^6.1.0" -emails = "^0.5.15" +email-validator = "^1.3.0" +requests = "^2.28.1" +celery = "^5.2.7" +passlib = {extras = ["bcrypt"], version = "^1.7.4"} +tenacity = "^8.1.0" +emails = "^0.6.0" raven = "^6.10.0" -jinja2 = "^2.11.2" -alembic = "^1.4.2" -sqlalchemy = {extras = ["postgresql_psycopg2binary"], version = "~1.3"} -pytest = "^5.4.1" -python-jose = {extras = ["cryptography"], version = "^3.1.0"} +jinja2 = "^3.1.2" +alembic = "^1.8.1" +sqlalchemy = {extras = ["postgresql_psycopg2binary"], version = "^1.4.45"} +python-jose = {extras = ["cryptography"], version = "^3.3.0"} +httpx = "^0.23.1" +neo4j = "^5.3.0" +neomodel = "^4.0.8" +psycopg2-binary = "^2.9.5" +setuptools = "^65.6.3" [tool.poetry.dev-dependencies] -mypy = "^0.770" -black = "^19.10b0" -isort = "^4.3.21" -autoflake = "^1.3.1" -flake8 = "^3.7.9" -pytest = "^5.4.1" -sqlalchemy-stubs = "^0.3" -pytest-cov = "^2.8.1" +mypy = "^0.991" +black = "^22.12.0" +isort = "^5.11.2" +autoflake = "^2.0.0" +flake8 = "^6.0.0" +pytest = "^7.2.0" +sqlalchemy2-stubs = "^0.0.2a29" +pytest-cov = "^4.0.0" [tool.isort] multi_line_output = 3 include_trailing_comma = true force_grid_wrap = 0 -line_length = 88 +line_length = 120 [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" + +[tool.black] +line-length = 120 diff --git a/{{cookiecutter.project_slug}}/backend/app/worker-start.sh b/{{cookiecutter.project_slug}}/backend/app/worker-start.sh index 172f08e6f8..d751246c74 100644 --- a/{{cookiecutter.project_slug}}/backend/app/worker-start.sh +++ b/{{cookiecutter.project_slug}}/backend/app/worker-start.sh @@ -3,4 +3,4 @@ set -e python /app/app/celeryworker_pre_start.py -celery worker -A app.worker -l info -Q main-queue -c 1 +celery -A app.worker worker -l info -Q main-queue -c 1 diff --git a/{{cookiecutter.project_slug}}/backend/backend.dockerfile b/{{cookiecutter.project_slug}}/backend/backend.dockerfile index b87c73287c..57be33d754 100644 --- a/{{cookiecutter.project_slug}}/backend/backend.dockerfile +++ b/{{cookiecutter.project_slug}}/backend/backend.dockerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/br3ndonland/inboard:fastapi-0.10.4-python3.9 +FROM ghcr.io/br3ndonland/inboard:fastapi-0.37.0-python3.9 # Copy poetry.lock* in case it doesn't exist in the repo COPY ./app/pyproject.toml ./app/poetry.lock* /app/ @@ -7,7 +7,14 @@ WORKDIR /app/ # Allow installing dev dependencies to run tests ARG INSTALL_DEV=false -RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; else poetry install --no-root --no-dev ; fi" +RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-interaction --no-root ; else poetry install --no-interaction --no-root --no-dev ; fi" +RUN pip install --upgrade setuptools + +# /start Project-specific dependencies +# RUN apt-get update && apt-get install -y --no-install-recommends \ +# && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* +# WORKDIR /app/ +# /end Project-specific dependencies # For development, Jupyter remote kernel, Hydrogen # Using inside the container: diff --git a/{{cookiecutter.project_slug}}/backend/celeryworker.dockerfile b/{{cookiecutter.project_slug}}/backend/celeryworker.dockerfile index 220f656775..89a44cfa54 100644 --- a/{{cookiecutter.project_slug}}/backend/celeryworker.dockerfile +++ b/{{cookiecutter.project_slug}}/backend/celeryworker.dockerfile @@ -3,7 +3,7 @@ FROM python:3.9 WORKDIR /app/ # Install Poetry -RUN curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | POETRY_HOME=/opt/poetry python && \ +RUN curl -sSL https://install.python-poetry.org | POETRY_HOME=/opt/poetry python && \ cd /usr/local/bin && \ ln -s /opt/poetry/bin/poetry && \ poetry config virtualenvs.create false @@ -15,6 +15,13 @@ COPY ./app/pyproject.toml ./app/poetry.lock* /app/ ARG INSTALL_DEV=false RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; else poetry install --no-root --no-dev ; fi" +# /start Project-specific dependencies +# RUN apt-get update && apt-get install -y --no-install-recommends \ +# && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + +WORKDIR /app/ +# /end Project-specific dependencies + # For development, Jupyter remote kernel, Hydrogen # Using inside the container: # jupyter lab --ip=0.0.0.0 --allow-root --NotebookApp.custom_display_url=http://127.0.0.1:8888 @@ -22,14 +29,9 @@ ARG INSTALL_JUPYTER=false RUN bash -c "if [ $INSTALL_JUPYTER == 'true' ] ; then pip install jupyterlab ; fi" ENV C_FORCE_ROOT=1 - COPY ./app /app WORKDIR /app - ENV PYTHONPATH=/app - COPY ./app/worker-start.sh /worker-start.sh - RUN chmod +x /worker-start.sh - CMD ["bash", "/worker-start.sh"] From 1003f556e76e3367272328bd15ea754dab4fbca9 Mon Sep 17 00:00:00 2001 From: Gavin Chait Date: Mon, 26 Dec 2022 14:33:01 +0100 Subject: [PATCH 26/81] Update README.md --- README.md | 289 ++++++++++++++++-------------------------------------- 1 file changed, 87 insertions(+), 202 deletions(-) diff --git a/README.md b/README.md index b0c94279a9..963856800f 100644 --- a/README.md +++ b/README.md @@ -1,64 +1,55 @@ -# Full Stack FastAPI and PostgreSQL - Base Project Generator +# Full Stack FastAPI, PostgreSQL, Neo4j & Nuxt 3 Base Project Generator [![Build Status](https://app.travis-ci.com/whythawk/full-stack-fastapi-postgresql.svg?branch=master)](https://app.travis-ci.com/whythawk/full-stack-fastapi-postgresql) +Accelerate your next web development project with this FastAPI/Nuxt.js base project generator. + +This project is a comprehensively updated fork of [Sebastián Ramírez's](https://github.com/tiangolo) [Full Stack FastAPI and PostgreSQL Base Project Generator](https://github.com/tiangolo/full-stack-fastapi-postgresql). FastAPI is updated to version 0.88 (November 2022), SQLAlchemy to version 1.4.45 (December 2022), and the frontend to Nuxt 3 (November 2022). + Generate a backend and frontend stack using Python, including interactive API documentation. ### Interactive API documentation -[![API docs](img/docs.png)](https://github.com/tiangolo/full-stack-fastapi-postgresql) +[![API docs](img/docs.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) ### Alternative API documentation -[![API docs](img/redoc.png)](https://github.com/tiangolo/full-stack-fastapi-postgresql) +[![API docs](img/redoc.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) ### Dashboard Login -[![API docs](img/login.png)](https://github.com/tiangolo/full-stack-fastapi-postgresql) +[![API docs](img/login.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) ### Dashboard - Create User -[![API docs](img/dashboard.png)](https://github.com/tiangolo/full-stack-fastapi-postgresql) - -## Features - -* Full **Docker** integration (Docker based). -* Docker Swarm Mode deployment. -* **Docker Compose** integration and optimization for local development. -* **Production ready** Python web server using Uvicorn and Gunicorn. -* Python **FastAPI** backend: - * **Fast**: Very high performance, on par with **NodeJS** and **Go** (thanks to Starlette and Pydantic). - * **Intuitive**: Great editor support. Completion everywhere. Less time debugging. - * **Easy**: Designed to be easy to use and learn. Less time reading docs. - * **Short**: Minimize code duplication. Multiple features from each parameter declaration. - * **Robust**: Get production-ready code. With automatic interactive documentation. - * **Standards-based**: Based on (and fully compatible with) the open standards for APIs: OpenAPI and JSON Schema. - * **Many other features** including automatic validation, serialization, interactive documentation, authentication with OAuth2 JWT tokens, etc. -* **Secure password** hashing by default. -* **JWT token** authentication. -* **SQLAlchemy** models (independent of Flask extensions, so they can be used with Celery workers directly). -* Basic starting models for users (modify and remove as you need). -* **Alembic** migrations. -* **CORS** (Cross Origin Resource Sharing). -* **Celery** worker that can import and use models and code from the rest of the backend selectively. -* REST backend tests based on **Pytest**, integrated with Docker, so you can test the full API interaction, independent on the database. As it runs in Docker, it can build a new data store from scratch each time (so you can use ElasticSearch, MongoDB, CouchDB, or whatever you want, and just test that the API works). -* Easy Python integration with **Jupyter Kernels** for remote or in-Docker development with extensions like Atom Hydrogen or Visual Studio Code Jupyter. -* **Vue** frontend: - * **JWT Authentication** handling. - * Login view. - * After login, main dashboard view. - * Main dashboard with user creation and edition. - * Self user edition. - * **TypeScript**. - * Docker server - * Docker multi-stage building, so you don't need to save or commit compiled code. - * Made as modular as possible, so it works out of the box, but you can re-generate as you need, and re-use what you want. - * It's also easy to remove it if you have an API-only app, check the instructions in the generated `README.md`. -* **PGAdmin** for PostgreSQL database, you can modify it to use PHPMyAdmin and MySQL easily. -* **Flower** for Celery jobs monitoring. -* Load balancing between frontend and backend with **Traefik**, so you can have both under the same domain, separated by path, but served by different containers. -* Traefik integration, including Let's Encrypt **HTTPS** certificates automatic generation. -* GitLab **CI** (continuous integration), including frontend and backend testing. +[![API docs](img/dashboard.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) + +## Key features + +- **Docker Compose** integration and optimization for local development. +- [**FastAPI**](https://github.com/tiangolo/fastapi) backend with [Inboard](https://inboard.bws.bio/) one-repo Docker images: + - **Authentication** user management schemas, models, crud and apis already built, with OAuth2 JWT token support & default hashing. + - **SQLAlchemy** version 1.4 support for models. + - **MJML** templates for common email transactions. + - **Metadata Schema** based on [Dublin Core](https://www.dublincore.org/specifications/dublin-core/dcmi-terms/#section-3) for inheritance. + - **Common CRUD** support via generic inheritance. + - **Standards-based**: Based on (and fully compatible with) the open standards for APIs: [OpenAPI](https://github.com/OAI/OpenAPI-Specification) and [JSON Schema](http://json-schema.org/). + - [**Many other features**]("https://fastapi.tiangolo.com/features/"): including automatic validation, serialization, interactive documentation, etc. +- [**Nuxt/Vue 3**](https://nuxt.com/) frontend: + - **Authentication** with JWT and cookie management, including `access` and `refresh` tokens, + - **Authorisation** via middleware for page access, including logged in or superuser. + - **Model blog** project, with [Nuxt Content](https://content.nuxtjs.org/) for writing Markdown pages. + - **Form validation** with [Vee-Validate 4](https://vee-validate.logaretm.com/v4/). + - **State management** with [Pinia](https://pinia.vuejs.org/), and persistance with [Pinia PersistedState](https://prazdevs.github.io/pinia-plugin-persistedstate/). + - **CSS and templates** with [TailwindCSS](https://tailwindcss.com/), [HeroIcons](https://heroicons.com/), and [HeadlessUI](https://headlessui.com/). +- **PostgreSQL** database. +- **PGAdmin** for PostgreSQL database management. +- **Celery** worker that can import and use models and code from the rest of the backend selectively. +- **Flower** for Celery jobs monitoring. +- **Neo4j** graph database, including integration into the FastAPI base project. +- Load balancing between frontend and backend with **Traefik**, so you can have both under the same domain, separated by path, but served by different containers. +- Traefik integration, including Let's Encrypt **HTTPS** certificates automatic generation. +- GitLab **CI** (continuous integration), including frontend and backend testing. ## How to use it @@ -66,7 +57,7 @@ Go to the directory where you want to create your project and run: ```bash pip install cookiecutter -cookiecutter https://github.com/tiangolo/full-stack-fastapi-postgresql +cookiecutter https://github.com/whythawk/full-stack-fastapi-postgresql ``` ### Generate passwords @@ -87,178 +78,72 @@ The generator (cookiecutter) will ask you for some data, you might want to have The input variables, with their default values (some auto generated) are: -* `project_name`: The name of the project -* `project_slug`: The development friendly name of the project. By default, based on the project name -* `domain_main`: The domain in where to deploy the project for production (from the branch `production`), used by the load balancer, backend, etc. By default, based on the project slug. -* `domain_staging`: The domain in where to deploy while staging (before production) (from the branch `master`). By default, based on the main domain. - -* `docker_swarm_stack_name_main`: The name of the stack while deploying to Docker in Swarm mode for production. By default, based on the domain. -* `docker_swarm_stack_name_staging`: The name of the stack while deploying to Docker in Swarm mode for staging. By default, based on the domain. - -* `secret_key`: Backend server secret key. Use the method above to generate it. -* `first_superuser`: The first superuser generated, with it you will be able to create more users, etc. By default, based on the domain. -* `first_superuser_password`: First superuser password. Use the method above to generate it. -* `backend_cors_origins`: Origins (domains, more or less) that are enabled for CORS (Cross Origin Resource Sharing). This allows a frontend in one domain (e.g. `https://dashboard.example.com`) to communicate with this backend, that could be living in another domain (e.g. `https://api.example.com`). It can also be used to allow your local frontend (with a custom `hosts` domain mapping, as described in the project's `README.md`) that could be living in `http://dev.example.com:8080` to communicate with the backend at `https://stag.example.com`. Notice the `http` vs `https` and the `dev.` prefix for local development vs the "staging" `stag.` prefix. By default, it includes origins for production, staging and development, with ports commonly used during local development by several popular frontend frameworks (Vue with `:8080`, React, Angular). -* `smtp_port`: Port to use to send emails via SMTP. By default `587`. -* `smtp_host`: Host to use to send emails, it would be given by your email provider, like Mailgun, Sparkpost, etc. -* `smtp_user`: The user to use in the SMTP connection. The value will be given by your email provider. -* `smtp_password`: The password to be used in the SMTP connection. The value will be given by the email provider. -* `smtp_emails_from_email`: The email account to use as the sender in the notification emails, it would be something like `info@your-custom-domain.com`. - -* `postgres_password`: Postgres database password. Use the method above to generate it. (You could easily modify it to use MySQL, MariaDB, etc). -* `pgadmin_default_user`: PGAdmin default user, to log-in to the PGAdmin interface. -* `pgadmin_default_user_password`: PGAdmin default user password. Generate it with the method above. - -* `traefik_constraint_tag`: The tag to be used by the internal Traefik load balancer (for example, to divide requests between backend and frontend) for production. Used to separate this stack from any other stack you might have. This should identify each stack in each environment (production, staging, etc). -* `traefik_constraint_tag_staging`: The Traefik tag to be used while on staging. -* `traefik_public_constraint_tag`: The tag that should be used by stack services that should communicate with the public. - -* `flower_auth`: Basic HTTP authentication for flower, in the form`user:password`. By default: "`admin:changethis`". - -* `sentry_dsn`: Key URL (DSN) of Sentry, for live error reporting. You can use the open source version or a free account. E.g.: `https://1234abcd:5678ef@sentry.example.com/30`. - -* `docker_image_prefix`: Prefix to use for Docker image names. If you are using GitLab Docker registry it would be based on your code repository. E.g.: `git.example.com/development-team/my-awesome-project/`. -* `docker_image_backend`: Docker image name for the backend. By default, it will be based on your Docker image prefix, e.g.: `git.example.com/development-team/my-awesome-project/backend`. And depending on your environment, a different tag will be appended ( `prod`, `stag`, `branch` ). So, the final image names used will be like: `git.example.com/development-team/my-awesome-project/backend:prod`. -* `docker_image_celeryworker`: Docker image for the celery worker. By default, based on your Docker image prefix. -* `docker_image_frontend`: Docker image for the frontend. By default, based on your Docker image prefix. - -## How to deploy - -This stack can be adjusted and used with several deployment options that are compatible with Docker Compose, but it is designed to be used in a cluster controlled with pure Docker in Swarm Mode with a Traefik main load balancer proxy handling automatic HTTPS certificates, using the ideas from DockerSwarm.rocks. - -Please refer to DockerSwarm.rocks to see how to deploy such a cluster in 20 minutes. - -## More details - -After using this generator, your new project (the directory created) will contain an extensive `README.md` with instructions for development, deployment, etc. You can pre-read [the project `README.md` template here too](./{{cookiecutter.project_slug}}/README.md). - -## Sibling project generators - -* Full Stack FastAPI Couchbase: [https://github.com/tiangolo/full-stack-fastapi-couchbase](https://github.com/tiangolo/full-stack-fastapi-couchbase). - -## Release Notes - -### Latest Changes - -* Update issue-manager. PR [#211](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/211). -* Add [GitHub Sponsors](https://github.com/sponsors/tiangolo) button. PR [#201](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/201). -* Add consistent errors for env vars not set. PR [#200](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/200). -* Upgrade Traefik to version 2, keeping in sync with DockerSwarm.rocks. PR [#199](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/199). -* Add docs about reporting test coverage in HTML. PR [#161](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/161). -* Run tests with `TestClient`. PR [#160](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/160). -* Refactor backend: - * Simplify configs for tools and format to better support editor integration. - * Add mypy configurations and plugins. - * Add types to all the codebase. - * Update types for SQLAlchemy models with plugin. - * Update and refactor CRUD utils. - * Refactor DB sessions to use dependencies with `yield`. - * Refactor dependencies, security, CRUD, models, schemas, etc. To simplify code and improve autocompletion. - * Change from PyJWT to Python-JOSE as it supports additional use cases. - * Fix JWT tokens using user email/ID as the subject in `sub`. - * PR [#158](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/158). -* Add docs about removing the frontend, for an API-only app. PR [#156](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/156). -* Simplify scripts and development, update docs and configs. PR [#155](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/155). -* Simplify `docker-compose.*.yml` files, refactor deployment to reduce config files. PR [#153](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/153). -* Simplify env var files, merge to a single `.env` file. PR [#151](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/151). - -### 0.5.0 +- `project_name`: The name of the project +- `project_slug`: The development friendly name of the project. By default, based on the project name +- `domain_main`: The domain in where to deploy the project for production (from the branch `production`), used by the load balancer, backend, etc. By default, based on the project slug. +- `domain_staging`: The domain in where to deploy while staging (before production) (from the branch `master`). By default, based on the main domain. +- `domain_base_api_url`: The domain url used by the frontend app for backend api calls. If deploying a localhost development environment, likely to be `http://localhost/api/v1` +- `domain_base_ws_url`: The domain url used by the frontend app for backend websocket calls. If deploying a localhost development environment, likely to be `ws://localhost/api/v1` -* Make the Traefik public network a fixed default of `traefik-public` as done in DockerSwarm.rocks, to simplify development and iteration of the project generator. PR [#150](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/150). -* Update to PostgreSQL 12. PR [#148](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/148). by [@RCheese](https://github.com/RCheese). -* Use Poetry for package management. Initial PR [#144](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/144) by [@RCheese](https://github.com/RCheese). -* Fix Windows line endings for shell scripts after project generation with Cookiecutter hooks. PR [#149](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/149). -* Upgrade Vue CLI to version 4. PR [#120](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/120) by [@br3ndonland](https://github.com/br3ndonland). -* Remove duplicate `login` tag. PR [#135](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/135) by [@Nonameentered](https://github.com/Nonameentered). -* Fix showing email in dashboard when there's no user's full name. PR [#129](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/129) by [@rlonka](https://github.com/rlonka). -* Format code with Black and Flake8. PR [#121](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/121) by [@br3ndonland](https://github.com/br3ndonland). -* Simplify SQLAlchemy Base class. PR [#117](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/117) by [@airibarne](https://github.com/airibarne). -* Update CRUD utils for users, handling password hashing. PR [#106](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/106) by [@mocsar](https://github.com/mocsar). -* Use `.` instead of `source` for interoperability. PR [#98](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/98) by [@gucharbon](https://github.com/gucharbon). -* Use Pydantic's `BaseSettings` for settings/configs and env vars. PR [#87](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/87) by [@StephenBrown2](https://github.com/StephenBrown2). -* Remove `package-lock.json` to let everyone lock their own versions (depending on OS, etc). -* Simplify Traefik service labels PR [#139](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/139). -* Add email validation. PR [#40](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/40) by [@kedod](https://github.com/kedod). -* Fix typo in README. PR [#83](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/83) by [@ashears](https://github.com/ashears). -* Fix typo in README. PR [#80](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/80) by [@abjoker](https://github.com/abjoker). -* Fix function name `read_item` and response code. PR [#74](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/74) by [@jcaguirre89](https://github.com/jcaguirre89). -* Fix typo in comment. PR [#70](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/70) by [@daniel-butler](https://github.com/daniel-butler). -* Fix Flower Docker configuration. PR [#37](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/37) by [@dmontagu](https://github.com/dmontagu). -* Add new CRUD utils based on DB and Pydantic models. Initial PR [#23](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/23) by [@ebreton](https://github.com/ebreton). -* Add normal user testing Pytest fixture. PR [#20](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/20) by [@ebreton](https://github.com/ebreton). +- `docker_swarm_stack_name_main`: The name of the stack while deploying to Docker in Swarm mode for production. By default, based on the domain. +- `docker_swarm_stack_name_staging`: The name of the stack while deploying to Docker in Swarm mode for staging. By default, based on the domain. -### 0.4.0 +- `secret_key`: Backend server secret key. Use the method above to generate it. +- `first_superuser`: The first superuser generated, with it you will be able to create more users, etc. By default, based on the domain. +- `first_superuser_password`: First superuser password. Use the method above to generate it. +- `backend_cors_origins`: Origins (domains, more or less) that are enabled for CORS (Cross Origin Resource Sharing). This allows a frontend in one domain (e.g. `https://dashboard.example.com`) to communicate with this backend, that could be living in another domain (e.g. `https://api.example.com`). It can also be used to allow your local frontend (with a custom `hosts` domain mapping, as described in the project's `README.md`) that could be living in `http://dev.example.com:8080` to communicate with the backend at `https://stag.example.com`. Notice the `http` vs `https` and the `dev.` prefix for local development vs the "staging" `stag.` prefix. By default, it includes origins for production, staging and development, with ports commonly used during local development by several popular frontend frameworks (Vue with `:8080`, React, Angular). +- `smtp_port`: Port to use to send emails via SMTP. By default `587`. +- `smtp_host`: Host to use to send emails, it would be given by your email provider, like Mailgun, Sparkpost, etc. +- `smtp_user`: The user to use in the SMTP connection. The value will be given by your email provider. +- `smtp_password`: The password to be used in the SMTP connection. The value will be given by the email provider. +- `smtp_emails_from_email`: The email account to use as the sender in the notification emails, it could be something like `info@your-custom-domain.com`. +- `smtp_emails_from_name`: The email account name to use as the sender in the notification emails, it could be something like `Symona Adaro`. +- `smtp_emails_to_email`: The email account to use as the recipient for `contact us` emails, it could be something like `requests@your-custom-domain.com`. -* Fix security on resetting a password. Receive token as body, not query. PR [#34](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/34). +- `postgres_password`: Postgres database password. Use the method above to generate it. (You could easily modify it to use MySQL, MariaDB, etc). +- `pgadmin_default_user`: PGAdmin default user, to log-in to the PGAdmin interface. +- `pgadmin_default_user_password`: PGAdmin default user password. Generate it with the method above. -* Fix security on resetting a password. Receive it as body, not query. PR [#33](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/33) by [@dmontagu](https://github.com/dmontagu). +- `neo4j_password`: Neo4j database password. Use the method above to generate it. -* Fix SQLAlchemy class lookup on initialization. PR [#29](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/29) by [@ebreton](https://github.com/ebreton). +- `traefik_constraint_tag`: The tag to be used by the internal Traefik load balancer (for example, to divide requests between backend and frontend) for production. Used to separate this stack from any other stack you might have. This should identify each stack in each environment (production, staging, etc). +- `traefik_constraint_tag_staging`: The Traefik tag to be used while on staging. +- `traefik_public_constraint_tag`: The tag that should be used by stack services that should communicate with the public. -* Fix SQLAlchemy operation errors on database restart. PR [#32](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/32) by [@ebreton](https://github.com/ebreton). +- `flower_auth`: Basic HTTP authentication for flower, in the form`user:password`. By default: "`admin:changethis`". -* Fix locations of scripts in generated README. PR [#19](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/19) by [@ebreton](https://github.com/ebreton). +- `sentry_dsn`: Key URL (DSN) of Sentry, for live error reporting. You can use the open source version or a free account. E.g.: `https://1234abcd:5678ef@sentry.example.com/30`. -* Forward arguments from script to `pytest` inside container. PR [#17](https://github.com/tiangolo/full-stack-fastapi-postgresql/pull/17) by [@ebreton](https://github.com/ebreton). +- `docker_image_prefix`: Prefix to use for Docker image names. If you are using GitLab Docker registry it would be based on your code repository. E.g.: `git.example.com/development-team/my-awesome-project/`. +- `docker_image_backend`: Docker image name for the backend. By default, it will be based on your Docker image prefix, e.g.: `git.example.com/development-team/my-awesome-project/backend`. And depending on your environment, a different tag will be appended ( `prod`, `stag`, `branch` ). So, the final image names used will be like: `git.example.com/development-team/my-awesome-project/backend:prod`. +- `docker_image_celeryworker`: Docker image for the celery worker. By default, based on your Docker image prefix. +- `docker_image_frontend`: Docker image for the frontend. By default, based on your Docker image prefix. -* Update development scripts. - -* Read Alembic configs from env vars. PR #9 by @ebreton. - -* Create DB Item objects from all Pydantic model's fields. - -* Update Jupyter Lab installation and util script/environment variable for local development. - -### 0.3.0 - -* PR #14: - * Update CRUD utils to use types better. - * Simplify Pydantic model names, from `UserInCreate` to `UserCreate`, etc. - * Upgrade packages. - * Add new generic "Items" models, crud utils, endpoints, and tests. To facilitate re-using them to create new functionality. As they are simple and generic (not like Users), it's easier to copy-paste and adapt them to each use case. - * Update endpoints/*path operations* to simplify code and use new utilities, prefix and tags in `include_router`. - * Update testing utils. - * Update linting rules, relax vulture to reduce false positives. - * Update migrations to include new Items. - * Update project README.md with tips about how to start with backend. - -* Upgrade Python to 3.7 as Celery is now compatible too. PR #10 by @ebreton. - -### 0.2.2 - -* Fix frontend hijacking /docs in development. Using latest https://github.com/tiangolo/node-frontend with custom Nginx configs in frontend. PR #6. - -### 0.2.1 - -* Fix documentation for *path operation* to get user by ID. PR #4 by @mpclarkson in FastAPI. - -* Set `/start-reload.sh` as a command override for development by default. - -* Update generated README. - -### 0.2.0 +## How to deploy -**PR #2**: +This stack can be adjusted and used with several deployment options that are compatible with Docker Compose, but it is designed to be used in a cluster controlled with pure Docker in Swarm Mode with a Traefik main load balancer proxy handling automatic HTTPS certificates, using the ideas from DockerSwarm.rocks. -* Simplify and update backend `Dockerfile`s. -* Refactor and simplify backend code, improve naming, imports, modules and "namespaces". -* Improve and simplify Vuex integration with TypeScript accessors. -* Standardize frontend components layout, buttons order, etc. -* Add local development scripts (to develop this project generator itself). -* Add logs to startup modules to detect errors early. -* Improve FastAPI dependency utilities, to simplify and reduce code (to require a superuser). +Please refer to DockerSwarm.rocks to see how to deploy such a cluster in 20 minutes. -### 0.1.2 +## More details -* Fix path operation to update self-user, set parameters as body payload. +After using this generator, your new project (the directory created) will contain an extensive `README.md` with instructions for development, deployment, etc. You can pre-read [the project `README.md` template here too](./{{cookiecutter.project_slug}}/README.md). -### 0.1.1 +## Release Notes -Several bug fixes since initial publication, including: +### Latest Changes -* Order of path operations for users. -* Frontend sending login data in the correct format. -* Add https://localhost variants to CORS. +- Inboard 0.10.4 -> 0.37.0, including FastAPI 0.88 +- SQLAlchemy 1.3 -> 1.4 +- Authentication refresh token tables and schemas for long-term issuing of a new access token. +- Postgresql 12 -> 14 +- Neo4j pinned to 5.2.0 +- Nuxt.js 2.5 -> 3.0 +- Pinia for state management (replaces Vuex) +- Vee-Validate 3 -> 4 +- Tailwind 2.2 -> 3.2 + +[Historic changes from original](https://github.com/tiangolo/full-stack-fastapi-postgresql#release-notes) ## License From e3e1f60805694b4e84e04133379522a602ccc975 Mon Sep 17 00:00:00 2001 From: Gavin Chait Date: Mon, 26 Dec 2022 14:45:06 +0100 Subject: [PATCH 27/81] Added sample blog copyright. --- .../frontend/content/blog/20160708-theranos-and-elitism.md | 2 ++ .../frontend/content/blog/20160721-lament-for-the-auther.md | 2 ++ .../frontend/content/blog/20170203-summer-of-99.md | 2 ++ 3 files changed, 6 insertions(+) diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md index 6025a95c44..4146fbeea4 100644 --- a/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md @@ -49,3 +49,5 @@ Theranos was forced to void all their test results. One of their main labs has b Along the way, Walmart fell for the hype and entered into a costly partnership, and hundreds of normally reasonable investors have lost their shirts. Theranos is now worth nothing. Magical thinking is not science and, given the range of challenges humanity faces, it’s time we took it a bit more seriously. + +_:copyright: Gavin Chait 2016. All rights reserved._ diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md index 117402f6e5..158b56541a 100644 --- a/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md @@ -51,3 +51,5 @@ Despite all the uncertainty - and the supposed destruction of mainstream publish I hope you’re interested in reading about how my hero escapes from an orbital prison, survives the subsequent fall and crash-landing in a small Nigerian village, and escapes the interest of a local warlord. Continues me, ‘It’ll be out on Friday. Like a real book, with pages and everything. It’s called “Lament for the Fallen”, go buy it.’ + +_:copyright: Gavin Chait 2016. All rights reserved._ diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md index c9eb871a2b..a8e48cd82e 100644 --- a/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md @@ -47,3 +47,5 @@ The second is that you should never stop building and believing. It is easy to r We need people who dream, who build and are willing to share those dreams and ambitions. Start businesses anyway. Organise protests anyway. Work together across the things that divide us anyway. Because everyone should get to have that summer. + +_:copyright: Gavin Chait 2017. All rights reserved._ From 5a01af720199a7f69c449e3c6190881ee9114787 Mon Sep 17 00:00:00 2001 From: Gavin Chait Date: Mon, 26 Dec 2022 14:47:58 +0100 Subject: [PATCH 28/81] Modified sample blog content --- .../frontend/content/blog/20160708-theranos-and-elitism.md | 2 ++ .../frontend/content/blog/20160721-lament-for-the-auther.md | 4 +++- .../frontend/content/blog/20170203-summer-of-99.md | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md index 4146fbeea4..0a875e52eb 100644 --- a/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md @@ -50,4 +50,6 @@ Along the way, Walmart fell for the hype and entered into a costly partnership, Magical thinking is not science and, given the range of challenges humanity faces, it’s time we took it a bit more seriously. +--- + _:copyright: Gavin Chait 2016. All rights reserved._ diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md index 158b56541a..d66f8ecbd9 100644 --- a/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md @@ -50,6 +50,8 @@ Despite all the uncertainty - and the supposed destruction of mainstream publish I hope you’re interested in reading about how my hero escapes from an orbital prison, survives the subsequent fall and crash-landing in a small Nigerian village, and escapes the interest of a local warlord. -Continues me, ‘It’ll be out on Friday. Like a real book, with pages and everything. It’s called “Lament for the Fallen”, go buy it.’ +Continues me, ‘It’ll be out on Friday. Like a real book, with pages and everything. It’s called [“Lament for the Fallen”](https://gavinchait.com/lament-for-the-fallen/), go buy it.’ + +--- _:copyright: Gavin Chait 2016. All rights reserved._ diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md index a8e48cd82e..aed436733a 100644 --- a/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md @@ -48,4 +48,6 @@ We need people who dream, who build and are willing to share those dreams and am Because everyone should get to have that summer. +--- + _:copyright: Gavin Chait 2017. All rights reserved._ From 4bb9d3b6d9fb7c2b876eeaa22e6485e2561b0133 Mon Sep 17 00:00:00 2001 From: Gavin Chait Date: Mon, 26 Dec 2022 14:54:05 +0100 Subject: [PATCH 29/81] Updated readme --- README.md | 19 ++++++++++++------- img/docs.png | Bin 98515 -> 58932 bytes img/landing.png | Bin 0 -> 271691 bytes img/redoc.png | Bin 103288 -> 62263 bytes 4 files changed, 12 insertions(+), 7 deletions(-) create mode 100644 img/landing.png diff --git a/README.md b/README.md index 963856800f..7be4f39b0f 100644 --- a/README.md +++ b/README.md @@ -8,22 +8,27 @@ This project is a comprehensively updated fork of [Sebastián Ramírez's](https: Generate a backend and frontend stack using Python, including interactive API documentation. -### Interactive API documentation - -[![API docs](img/docs.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) - -### Alternative API documentation +### App landing page -[![API docs](img/redoc.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) +[![API docs](img/landing.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) ### Dashboard Login [![API docs](img/login.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) -### Dashboard - Create User +### Dashboard User Management [![API docs](img/dashboard.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) +### Interactive API documentation + +[![API docs](img/docs.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) + +### Alternative API documentation + +[![API docs](img/redoc.png)](https://github.com/whythawk/full-stack-fastapi-postgresql) + + ## Key features - **Docker Compose** integration and optimization for local development. diff --git a/img/docs.png b/img/docs.png index d61c2071c7a5cd8bbe9ec568892bba3628a03c6a..54fd746933791b240091f3267d48baca3275a93a 100644 GIT binary patch literal 58932 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 literal 98515 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

      paju$ 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

      #} zq*Q8a?`W#i@*FEI%Q($<4u(Z3Ic8cLr8TC+08j~`m73}_9E-ZH10dAeFh+fs4Tq6d za&~qG6EYZ%@7>#9TU&-mF~;Tp&E9**+IF4yf#2%8o_*@=uie+!i&!L5q&g*8y;vGK zwq-d%Ja#adnZyVXAcGkU5V%Y%#~w^FiaC-j$&%G9n=-8~QWPm#EFvkkSIEcL?z{Kh zbM9%o?^WlIOR5+eJN7sT6!Z7T0nT1HYps3u0``aR`+dKk)?1rf+L%taJKUMh=0#ab z49};|oiV!wL2%DIHv@n}Kp6voT~j&E*vje(=L}&~*L9v|lj*c+lr?rYb?mGI08B^_ z_*!Y_fC*upOOhmtLQ45)XKa-14HhUPjZ|^cyYXc=U3bF`o7=;MrKNp)_Yq_Qj|omN z28@ZdMsVr?i~*$$W0W$cl%|x_bqx+zjl3|OeB*0hfBNC?-EzxKQdYCsJdTsPs-iGr zltxiF+#V+FmepFy=H$r}vZ>2F?RNW^(3f0)<11hFS|EgS))=L%0f4Ge#=6?rtgMVd zAs5TN1Y>86-mR)KN{u$sT14o0I&GBHh?G)VV-Q%3$*$_XQo8MXj54W=RMHb-*L!D{ z4MSr-V-F?JX^YXrfvX*9S&yS);%kh8-gBM3QwwK(42 z>4%gNj6BW(0mjHU*BG6aC9=pUBM1sPq5FknkL0B1$5aN_Ide;$>Ip+Wz z!lY^%hLE-9#S-C98|rhP_{dk!SB>Xi{g2=Mvf!sMx&nZtf9cI#{CCq_!hW*Q`svpU zcoF}V;Bo3xed*-~Qh71W(ALHD#%tqSu0M#hOhP`M%mDe99oYwV1v&flsf~W8m!(_2 z$Ht{;&ZfR_2iDrXSp4PVr)!Dhq`k2iwM%_I%gbY@&t1;|D!|k0Ez*=kjOM}zrx3WAx)L&~g^=zIcak~}8s@9m0x>NzC!7~WZ_vdI6HZN$@9J1#KvJpQik&gW*yI z0x;SD0*o-B7-2ME%X>oCN zc|}=U7TIKHC>z=7bulHA`7~;^6*y_Nv6c|x2>}3}h1e6m5D1V~no$yRK`@yVg)y2^ zHkr=}Az=`BhHC&uh}Mb`Ob9XBXloH84k4v=nipwVIfNJ`j1U9(%;u(c7GV?$9tc6f z^*hNtD<~nM=Xrt)&Pt^kDRo&oYj*M!IVTwH#c@@Ywvk=o#X_{B7@T92O066?ipjpk zJ|SdUl(W1jm111%@=4B5Cl|AHYdYJvu&9(8?(8teFXm}IpJsL4^1O~8HsJbEOdJ%d z*|APw+@hRwHr19A?5s5aAs5!5*c07ePass)Rp6Y@IYALcgkmIRbAGhl4 z#S-C98)$O%4cFaz^Nly%a5$#q@2D&FUmFM$`ghf|WUb|+%k974{k({O2-wYIfiClN z_f025KWGiNCQV(mW9aw$7@({TW)xvG8s=KcK{sx+4g@>2zRZa3w8dXOa^d*1+htyR zRIRVC9y+kHJ=`G#Rdu0^Ey{9b(CbAkj$5Uo3FBepfB*RA%F;j^CpBPX0lBT* z1q1t57qr!ki99O_VSea`p_pcMyW2w02*%R10z|`57^Nn&dS{#qpLrZjQ&mgZYQ=e0 zHA*H)M>cwOb+O-zFs5D*hEd2EO_DI3mto{Bt#s3@mdXgub$SabT@R7%Q#)Adp&TMU4q{ z4y>v)S52D`68OF`Hp^=-2naz+DQmRnd(NSljDMyn$%Ot{tb7C#NIGi`im6Zgk>a3iOXV0BF{m8@LJ9YBejc3nHwx_}mFyMWA z_N=b14h9R|Zf`u9Xsx}#7rvjg+iQE*+U?Hb($dQ6%JRxG_k7{|UKm-79mdj_Mj6Ve zwT@tdF*e{3MuFhq9L6Z}I02`TE44NN&H+Z4A{+<-&Pk;>B@t(o5UEYAb*UO{OkOtz zAoN7P6>Fo%Y3`hh1PcOxW3)4`>Z(y`o+E%XFSbULNt%y#X0v&Y8Jm~IxF|{~ODQF| zn`TG zvHIv>sUO5@*A9q@#1o6H)?%yEYsH9hOoTGP2*SuZj2WXo(1sPADls z*<2!osRg2{ow~Bep4sVj<8~Z_MZ=xKLEZ0l>&hgFx3=1?8}pi%AIZwWY0pi zz1Sv;OPv$XUJM1n0`l5!T$rx)a8;R3J8aYp*JZ!oO7rUJXE*n*3_(QfhI?1r1nDH^%DU}Q+EnJ+tJXu09$o8=bF**Hd}k+>vaXe07__yKfiJ8@R?9pq zw-NC?u9S7IEXzDiiz1tQK4*>F8D{NPkR;yDNT>6(-HD{OMJbu^va&gRXi=(d*))!a zog`Z5hSPqxsLG2Mr^teF&LMJcb4Obi1i||LI0`%_@YZlVoNgmbcP8^72pMDDPE^;8 zb0`j@vN+@UVH^brqdYH^wow?RX$sCU!e`Sgn-`2zV_gtM!{Ml%#Bm%u=c=kkh(u8& zrOETM92T8U?Frs)FA;(nB}oz&#rB}z9*<`RP~dUONLG{%S^EPnm9@?}K*TDoDfWm6 zL!WV)(V>(km>W zys9ZG!O)$T@_Nbl_>7RV7tgNfmgU63hu+8VsB@9us+4 z)r}N{v=Xlqg-4f`FU}^NcBj^;T&n;8AOJ~3K~#})QdOLit?4upBCxI>1PFmL&Szwn zn0 zm1c}#Q%`Nse&)<1i6R7!b6;B&1)|#y!NDwTPCj=YA*{6=jk7$j{6JKdWth!J^L9Jj znPzn@IVWY=IA@33Q_rKmFDBFc=%E$HNSf8gK~>8%EtVDrf$x=79moF0=GJuHOs8q5 z8?GN*2?KvN&%wE+#m;zV!WeJ2!)`Z8(|mJlHXhG?k2|Z1S|2}kAqc~*?ddElr8J)B zGs>gL#}rv>TkY2Rfwflb$5AL4O`;&roAIpiJz}jZn?`URhkhLSc~NNtyNXr_0eik( z9cgWi1%!~+I*bBJ*g%CfGi##*Pf!5DMSj4_N6N+~7CS|hj+ zg2z$l3tr?I=agccO(*$e(xlmZw7op&?cKA|ibFu|+}5OS6haXABJ$~=6AOZ7v-z1* z&wc-qM=?TM7q_dXsTxTs2?D=SRnwG%r9l)0=g*(P82N!Oyl^(prM22w$_QhWQj7sO zW4q>t)&V9|JFtL-5UnueoF{RMBNPZh2_YCqQ5<@{vxX9aF`A@VTGrFNRN8oq1)PVT zCkP?PIcES+o|lx;DDV&?Lx1)~%KIF} zsQ*`80Ie*>r3wB&Z1u`~Zm^&jnrwD)XEtwa6bO*T)@VE{l;;bI&3w2snx%#apOYV* zcPFm{!2v+YN-ALVZ)T`Dl}{Vwv;VSOHlyn@S4=Pj0L~Ug280ugz}EB9dHio!-5OOC z6=Ae0QcS(S{#ZGqva+I-VT5#(Wr}dD@=P+1{gf7z|GuyrV9n?AZ++#{dl$XX^STLX z8s(hVNTjqO*nqQPKv$Rj#cnw0dplF}#POlhO%R6n-v3lysC{egeS5n7o|xAPn??{7 zc}mHq?bBHB$S2R98nq)tz|ITOj{_cZWUZ7^c;4yFX;IYuZbUG2l5o(Et44E91jCH7 z(InFrYmKvcgN${^)>fZ8yM+*L8hP;OvTSNfoF9nI?QCn9?p+&*z#k5$vsqTxjqpSm z_(f3)LCd-&??? zEO%{m2}VM2&S)5g+L$2p;#QQU1p*v|zEaBbg00PAUCS`^Cp+_AzvKH}o|W6%lleT; z+HlS&Ba~6!_morw6NFIRNNZmZ!g3BFBm_qoDW$8b&hye}o99(kHL}r4TBS@`l)IXu z)&T-UFvb`G0&u&|!h{hD&M7Gy+3f1w5Q6F|7mPS9JMB2jX6;TQJXTfJ=1$5PYe%A! z1id6=*j+e({><5Pk3W6f5sC<%<;BvnndkX#WeNZY#ztG`oZy@@Di{qs!3YUGKk|J>D8<;r#2Ity#4~44pAJ1=HquyK zODUCVl&%|9N_BBMPs^H7>=TNuv&J~&1Q%sp0U(SKAvh2`_We+BK?%b+4gvy5Fpd#6 z#t;m?5K_rqISj#Q?1}Z|g#*ijOZKlGT3tB2wzPj`5$G->i5O$RS>NLeopvllAUJW( zW3;Yo*(k;s!DP1wlp-uBqZk6uql6e^q&AIG)`4?QTQjSwd0lVLXAWSo)tVK>IM1}! zEA7@w9LIunW1oO?&KYY2!we915OLNCgSH>E1z${BKBWhGy-OCChV%KfDmfD#r7e%| zX@~ndt>sqBXN(dOFfK6S7-4V#AeFU%7^Bh{ZH>oh;)zBzvG4VK-{%ZDG%HKN1tw%# zSCuvdlUho_Xc7d15I`ua<>~Rxq^w>Hu>Q7a&VKJZAN#~tHmdT>#%T`p8(;d&R~{eE zhr`UWFhBMmKKbY8hWYXH+sjKUolyME^8o6xk7oOh zEd3xH(9QIF_ul`&19$)VW7|5fmJh8*&)1yi#~wNtugR}{=;4){5BonpshVv(yxANW z{G_{c_Al@HY}PtTCy#&gu18Lu+dQ*1Ocs03JaqScPoCX4eSxg3@SVrM{ME-#Z=JnR z`j_qf5h;!NbHD%1CvUlQ9RXZ8^~kC7u(Fc;jrZG}{>JUcy_@#`mnC&&+mGM#waqh-_DW3if_z5APwcGngj{MMb}+EstOID$^M?)=V! z%WLZa!xx|a%3o|HhyC++-En5`HG6-mL>2!2@j?b`^wm55=v6OS+dF6xVk!5}U6>Ac zW}S8r`UD{xwS1q6UZ

    1. vUpirL`mp<7!$LBFbFzH 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�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 R?*M==AQTdPu@2#x@_+Al5)J?W literal 0 HcmV?d00001 diff --git a/img/redoc.png b/img/redoc.png index 09243741d02ddd026276235169b1284b02f48d58..53da8cb620475872b41b44100e6aca1bd52dbe84 100644 GIT binary patch literal 62263 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 z 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

      J-dW&W z5(eHMakqGcg{fhpT#@S8KRu>^>*m~b!9nxO#tr&Nv!kioAp_PyGsa9vQUi@(t&vEL zAi0c0T8EqO@w0DHEVr61`w{ht`sLw$$in%;5p>BuF#np-mZ49MJs0Y|^k#&incOY< zW~HfPD%XvP4b&s&L2p}h6<3T1oX{rl%yY>y+f1KX+5oVnc zt(}2zO>KtK)`so#lEdEc;N!(#M_C>=BB;To+KJ&#SENr(N}@c!`<8K<*8v^ruWT7R z^I`tu2Q$%Q{c_jf)HZ~=?-8*9*WD-ZqK!5KM$xoI zzD@p&=F&6_uk z$Ni=z7mi68I2|M7RGw*QJOJlBVtOjGg02JsT*SJ0nx}(9fwYLw%Rkq_^v~XeZf38RsoEIyDXm~7Gfvm0~1UE(JJ#?zC; zq8So9i=0eiiCY3Bk(AF-(Q{qmziluC%7j_Tcn?VU%-ZP4nG)|He>9F#|NhR#Ggcfn z))VK5GFn}fnpnt_bDjM);^TZ1H58AzX=3KIa=J#?H?kwB$3{u&zW3&K+IV5{Rai-R?~<3@rU^vm`FL$79rzx7L7=8kyfegZ^nzbxIO7+q-Vu;ERW-IYnFEbMp$rmcJ)xV-%*=gBfT z$1OzIwONg9wI59lzf+H6&bYs0GJl=B{WNR<)=^#zxi-;8Q%dDnBXM`&MwD{%>aU)VFr?KP3hkmY_Q+ zKuz2&(|g8$U|OW{T|J#7@k6n)=&kqbK1YD-dp?_uXUR>!1vX~$DV|{s4YJ^4xCnk; z(5}qPT;}->O&j{J&{qIV=X0_tk1Aywa+UC}t$`KQ1kQwA03o!twV{nS(FRoD#f3vm z*8ujE-*w7`z()<;+I;C*bLJ@4~sPh|G$9I~S5-lgv;^JG49%}{zu>wTRXoR>0qt&4^kX^8SXMsd_~^_0Rn z%E{HY&6^UD^QoWmA|^h4Qr2`&-_e|Lm~<(}Cm@nox8C%qY?S$eb%B=->05WuIy7e| z0;GiRI|V)j(p7GMUqilNH;lLd>~Lez=6GO23#P1KB`o&Mn=L9b@-7sC@AiMR&t8RA z_AUSGd{|dBp-uc)ucQ#+;F}10oYK(<+Cmisw{6umEtkNk?<=@kL43)zGc&&1w`0D4 z|E^pgr^8J>2!la$SI(WPBYUF2LZfLO+Mq6!BM=h@o=O!n&0Q(hQCKX%=tg^ynWoRSh#=sw#z--6f>N>(bY zaA0nDQ$^(alLGTqFWo&mr|-Tb_w}4Op9{MNG zFt$DOM>a{c`uibxGeXDUf@5F2%(K@G6}n-jYMO(S)4Nk>_97-G1W+Oc8f`iQGui@l zq2N!UlUF6KIUJ_*U{=}n7v{Z*H?(dw`2MfbDXv_6E43yXFg4*LD?0cwMltV7I1n|g ztaH(A*4`vR`dFmFN$`)AjrP4R&-V`zL(jRj zrg4%#Ss^}4?Mu0fdLlfd)z1bTooX-ZNgY>v`!`n&YIV8iYkNOt*hX#Z_02NA`z|`L z-@{2Y>&Y_y@bm3AdG(n0jJoBj5XIB+9B;@hT1{-{y3Mtdhi$$bQQPub_jkV=2^Q*{ zJ>Cs4>0`;Vv@PRGsAhA7R#X|_oVtXA49V%Ath2Hy8z->nSVc$9@t zovuDc%lGE@Ot-rGQDwi|$uE2T+xl!FY5uy#s>-}Lo;bMGzQO%^$QpVEg;zcI@7~i( zsg}5asC_EO-212ex$Id1IR(W-1qF#!Z{HhAQioq{ex5@~dIRo=sEyo)NxP)lJP}-d z4oA;RLW?*G+*U|zL_MZ>R#Q!bZ_rK=>|NnpaKe43eS10Zj z*b8p~;&Z51eYBLh^lzp>ss3fKY%0B2qRlPA6pq>j|Jq*mf9{1tZ9LKyGhprBS-G`X zCcp603GOm|;_`||mNS*B_98}=KOadg*H9%_7|J@hm^FuYG4*Vw3#@$bo*bjQu_42{C8p@Nm@7_%UJSISUC#YF>GZ7sycOyZcTzMp^0|6NhQ367Uqe>02b|}@@Ru-(^$7@ecmcCV zlLcU+j$Z>lzG$~PK+Udla)#Je)ih?b{6`CL7#PIt6AwnV=wQF8sVTHKbA1r08CY*X zVH%Z?0Fh7nI}6=V_!PkVgA`!=G$lmXpcN|{TQl>U|6KLoXMK+3DOPCsAB;MhCZ$Vf zM7*fK>WZ6H)c@2;aadM$kz|;e8{~O#O0*|YpyUv8ZGYr%V}j?a(_;Z{jq%{54sZ<4 zAG89~N7AU)H@y}n8xyrwV-*Q#lU8XI2`>7=@$-|zg@B;@H={OY;7pCig8Xampt0r$ z53WGp{0i)!*DAIZ@5#tun)m*o1b<_w2-TCh9sER-6}Psxc|0WHMmP(g8N8Vf22}^o z@jmIUikGn1QCk)g@V;r98Wc!;a+_%)X2HvJO-tUujWg$T@o(meiS0K_8uOusW?W*` zLf^)}I|7J#yZwXDBb7A|?orZX#KB``NQ+;Qk&n6q~HW;NV(5su0iX z2Z$NK&Zj1nl$48d@1p_RJ_VEaOAHKNin+^9Vu#=uzu29ME0h=t&h9Z{tWdu%EG#&x zncCQJyObx#$J3B7h}3{vaOvu=VYCM=kW<@AkIxkq4tzR0S3Y0MBgR@*HSAq?Jm{Tm zjH7yRW993d$#j-gliByXp;;)t+rkLSQkSgVa)(T34#NGcdJC5%lSQh!Bk9f(ANlHm z#2#O>zcS(5PJiVq{$4MslcEX4Uf&!FRQq;R10BEmI;w_AD|wO8Y`8pp<9Do!#Mzi? znH=^}@%r&gu|n6`-z@x7GrQa03fx9;89WYknBMl1b-rIwouiXT);Cm8AOeut1guPF znH;aTxZWD}uA1T;1V8i0xVUC8?VTJK2K&;{I~jRC$E(6{G69Xl;pz*I6c~s~q|bJx zNG3wm83i@9Japa&uPyxB7JqB>MUDv5A%6h8X`Q;-Mj#X6<;$0VSqFXjauxjIiECgf zH^B4v0L;++e2B&d3tmpeQxXqg$OR_m*Xn z>U))ZVZSujzkF+!sB+UXCpnSmiPnXP@{`9+ibsAk_n1|!yNdQn()7H@BQk2*==?smM`q0Ln~jY$rW>Zs*YtzL3r zT1j@p3xtu-(d|`Dvg_&ciGEg9oDf9R$;nfr&KIM)dZ`u-VCjX@4uKsd6C$ zl(=5R$z-LVi0O5^T32SiLL1>BlbL9d)DtPOwYK5vseo_x65ErbPDG+YpA1ty!o?4o z`ChbH%0K9K7<1p?@=+9hyFBh%*q{}#hODUjB!W#iyHaG)`yN=PEx;J;fN8=4%Wh1x zkN)j`ZO5j5u3NWmUAhQS2Gq;_x#~fW1BxI98rnn^n~05H!#3jcCSWZ5At|ZjTDXL= z;W1e7zU#G+w6(5WDQIsSVFKT3Af$nM_@thz>v8jZfA~@cX&W!P9n#VSzv`VX-|XPJ zQnzq*SocBpf*q%+0GH8=5A>=*WtsvB5ft}MF*v9m6EA707Yr^++V0+RphB%`?+N)! zI|yt9?7RQ4xU%=8(A{Jv)r;4G)8F!2!QxYq$`rSRuRjdpd*b-!YRzaVgaa;ZnsP2~ zyUlfnvwKY3kXq1=(m&>=s@}xO&E~oCYdxXA^TVFNwI-WSJujl%So+?wyHXSW^1#DI zf6-a1?e`O3B%dfdj!KtY6@%#O+OD|6ub!MDg{>L~H*5!(Ci3^0SgMoU7rk7AIdWxWI*M!Eu|iZ6OODVSHIoq+GnP|!kHS%W+hM0 zbh1GCWzGA3!W)OK1O?V}yK=W_VpheZx4jmP=7L)j{-i0r&bB3!IAAPY8^I!jhlh7X zP%s+2{lC}G+HyfG3p(hdqCx@=zk7fV0qq3TB4tp0Et<`N?jK@0jOyOt3tA6F1G4YX zuj7h76zK%b?|=>P0eBCC3f9=zIM4AMv?@KEOMDl?dDc6L_J0?)WwI$wg!l*aowhC> z1zm4z$IflbJ}|TnAN1Nnoz471Xrm(^0MD`$VL)56!wv>)XXvO69Jqe)xL-=`e%m~4 z0Q4-FtkWTo@~}35P?7|D>l=?_VYmZr^Yl0-DmuCWA_W!(3(ekH$)T~>NWxX}mg_$Y zz2`5=G5g#$8=ss|>02Ht-EH9uj>n~8Hyj)?qji%KzwS-T+%clm%toib!D!eOefzqE zkYCF4;PP9ao+;^8*fLh8^UR+$5A}H8;X;+JwON;*EC36Nw((toU_@7y&i!ZAb-?NWV_r?1l$J&^~ zpO|$%mwEZ$sFr><8ME3)NjKrpz^eKz#nc7HDZ}|0B@NH%YIjx#p2sB2uD86MvQDsq z@T{L_ckpv1nhLOFv%5NHxc_mvZjnqON}SGr{ZIqW+7Kp5y4?QY_Srhq!k7URJgCuP zW`GZV`y~my^BDpQ3k&SyiELc$33fK`z6TCE`6p3iHFP$i`rG*;H)GL2Uv+=M^@#AYi!x^pSOP5`^|%grTwL{beeu0JNDM`(AMMePk z!Q8oI)CL^j>rx~=;{mt?kFR;C#F{7VcmX^WvKe{MllBC?&W`uj%?9!e+$wd^{$H^? zdR-=QI&uaEEZErCCVMKdTYM{6UeHGZ#+gj^X;qA|FXy*Xfe{gU6j+)(L+X zdOyj&lahJzv0pHb{`yZXqJiWt{Zz2s54(hjV;b2IslOTNs1WExN7wujN5dXxBib z5B_E3K5V{{0I*@8Gc+J_iDR1%ZpayBQ#kDAQ{Ri#a?y&92VINw}cs z@FrlR3pJCF7+g&R?8Nrp7U{)-g0)Fe>}%iYXdfn`JpBz!I$X{EZ%__F`8kwRf1G+v zX24Zn+Rn+~vOiBuw5n3+?H~Vz=FqyOaM3@^>6@{$L&_CNg>RWM^9~3M7CH#!N*ppA zQjDcJ{s#ye_(Lu2KcF?UOKR6#iR5$2PPm2IN04t*I1qR{RkZ2keyXiUne^2>+mWh` zm|mJMVT8qGpvg&vLqvlvyADB2^8H0|j&y{}FX%vYZ8xLQkSZXgh(GQ&#pSY3x87o6 z;UxV@dLx&b-*5;*Ktz6ga&jj`D!fC^Ujtu$@J$Cc!2QuKe}cjp=efOcWN@Qf6`?t; z^XA-$1!eEfjGo}t)VE<_tYTsx^W=mDepDyy>mi=pnhxAKj`RuPnZ%V_bdj-i-OCv56z1431FVFZt zoA+o}>FK%2c`pe3o$C7>M=>&?$i!h(G#|CsZLfXXL!clxd6P73uAFO7e%*haY*}cH zZGOY`XH@aEH%}jPdkRqUL9=+dRGS+T#!L6dJl$s^<>4*PLEp5Qd*Ge(=FOXE@#uXw zpbTf`=MiyxXHb5iV=#`_s}V13D`O504pgLy^YS7xrtNRRIup&DQRi43mrp+RypHq}cDO$X~1;jJBBwiR#QI*P!Y(eUS^65+c( z+M=RET=HVaOm>8j2sLl`<33HE_%(BCU#GVpGRK~T_%w8JAkX|?5Z@iJGq7~WMU`1m zk4Nu+`{AH2S7|&S(;xJ^nD_0|$C#pPG#`n)BKcO|v*`=ZF&hsK#JO{f%Gl*mrW3yQ zAf1fSpy1A#?qpjD@c|Q#C6X^6a$lW%R~y+}&oLWIc!!#hemA==^^7^j^qR|rxm3p9 zjrFP{41}?J#%04Rxi$9`%IV!vDPO02zS~c^91ul1t@VFcM3T%fN3smqc!lkI^!^do zlAR$(Cs|3MP8?xdy=QKI6J2UUt16GeG89r#Rdwo{6*T|-3Q{VfVq@i?6bD;>uKfWx zlc5prdhDsg9p_8Z2)-+j!EqN*I3HgV2LJvfMwmnXVJ@nF5! z6zB2vIJTd6ng2oYw;fm{CB+qdkv#FNivy2vhP8XeHz&lC-N<+c7!NKy>Pj%Rv?oL= zRbYo@QorJ`=N-S1QlTd$UF(yZkA+08*mdNMZykTP68cg`JacG+)owlAI)q8)Fni6* z;l^dmwra9Vr9Yu{O@y>Oewz^yh~mi`Ue)$J-90NsfgG<6T?audHK-fRv=yN>KyQZV zP%NlEpp&?adZE?ys1~wRAUrP`f;^%J(2Fw8Z4@GTAmPbfYj>e9n_kar6B}$mukrG3 zL}PtmXJ=Q<){6P`>B@f=DJ?{F&pLW~e_eTisb7Cov;-cZ@8>U8FkU2(sdI8)3!f7M8g0MCxzVvy+C!mVZ6F!du;l?Kb(_)7D zxQ}6+dqWEwusEnAkI{ zT9rfXCg)ZMnM`oeBnmcE>f?_|dghM_Uw3()@=H04mTu} zeqyu?Ynw98h{=uuBW2yU>F`iJo;-0%+>Xr1|ETOA&CFGYCNwZ78e546pNvOIUdCwd zNzEJSCRGXgh2bV_U3<19ezD^0YFGbQt=ALv4&j{(HN|Gk_p#QSy}XeEw}#4nDExX@ zUv~z&&NFF`qhu%KQJ7KqUQ#RJQo;Eqj(B)Ahl4~H*v^^}ItyNoNo&dffOtuK*bx04 zhSIM{OGKF=3!cZ*-L9!Lit|l$txub(?zgVn`y+6+8u+o7&w1IaY4&586DLy|ky|Wx zGYxsj@pf*QuJlbZLdp9#zR%5@aoDMmB)p(M%+8!OU^GQp%CWf1EjGJufS1Xr-i;_Gl{Y@v|8*M4 zs-0rel5`(joD}!qFrOOMzx9O+;Zt|6PK=h~t|KfJGqhFa!`#%e8=s1{>HXqiqn1&< zIL93~dFCSY^&2zyK=AhIyE4sxUd&-`+!y^;W(%bbl#*;K!%w?v$;dA-k^Yhoy1Y*B z!5pSO*5uPqhDXvwriI`0T<2t-j$Rmk_{cAq`v!P~jbs#|886aRZuOHfzFU1~AQC8z zi-~!l&8^UxsBe*s#}|_?B^vTY9??if6`1=SZ#lGo^5b5SP5i&N>e7EtHL+t@X;iCK zUcHK;!5RCw%m?A~D?;3M-N}Gp`|!QMg-(+bo5pGOFHGT{9GZb~Qt z@bs>G;v7|p&10eBc9f#r8ud#*Eo7IM%MFPMe(U^~v8SjX9MIbQt7dyPBR;kCu>}qk z2cPP#C7t8`%X3z7qJmVoiU#wZ?_i?K0?B`Qg(fwOdnndL5!(t4Y`54Sv<*yO5k~s# zQEHssFq&H_)nAodUlnZ>Ge*qN$gd^zHzp)Ll#|1urKSBkKdbz8KkuKV^|nP*KyQWM zAn($jV>uf|hXR-6M7kK#jpo;6L#R}tps|FmduF%AoI|fvUb$eD7A)pHZGT!4o%BFJ z+%)S-z1^INErU06s<_fb4~NVnmq%T;Av6_%!&1zOFUAw70Ui6m>?%C9xprI0BdgXm zqR5v@x$wD89Z&aO()-crAb#Fun=0=r$HCSA5#H^|3a)j1TS`hgg=PEX2QEDZb%172 zOSn}dS2$^^ul8?t-PZp`cfASzeJ2kBT)PGEiA7q(BEpL|$i%5v>JrG5R1K&|7>v`Y z?hLW;_Y@4AE=vey4Lk`OzI&GDoONKpsOg(}5XSDxMKOMoqT}l?L`zlCY)Mb>$aa5q zZh7B#!peceyU$KbYMUF>xeybE@3nQPAjNdKD?B{RP_1hJ@6!BZlg$#+_?X#VwpY>1 zK`SHUya2lV^^HX38_?kUd zyjXPNsemD}N|MLqSaDjH9i6nh`ari}q~TMREe*<%pB9HO|A~j=`h=8VrYb|Pz>w=^ zHU9LWl{*26jEKRi?bPQ5qo6Y};D4Q@5-OvU;ezEi{?0Rvza&vo3qN0!H;}~D`=VVKAH>%av|25qCzrs=N15-?<=TRVG zZ@&M0-Iu|am=~+y)_c5LB_CeQ+LWegrY+nk{QFzG-Jz48Be&YBRHqPrk2Sevu{N7B z#`)s=-<8`_xOq4R1ba-J>g{K4`rzVi!|F$CjGe zs~~)X+H}KMXW!95Sh?6pCQL!EErm45pwPu0fuQ#(h3N|c7qvh*U z6XF&=$p;e&J@N9NHahF9e?AgCQva^0`QVcgL63Z8=RB@*zNBz`cACBzYWy-zVEOXs zo%eZK*&@kZmdY*=&j?AFpP-b=F(L`VDj&_Eza|_4g*V`7a@9VkFlQIXrI+3VtSk|r zCto22PCZ)^Lfcq)c_ScM)*i-%VUT!ZclY$MyBGtBva&KBAz^*z>Yp`2nS17%OSgDMdIp>eBt}yZ9V^(6HAG99r3&>XLMvUYLQ@lV z5e9z=OM~zUsmKJ3ZgM5#ge>Z9=i(#mmTDiOL+Tn;a8+DagNac5yB~%PCH6#lx*mMm z40cSA_LbsOk?X$Ef!KQGd@N3cNS2LyxGn(0GEy`HuNr(qjnqC&JINc{os@^WE!V6P zAr5u^oTDUbs9DIof@>dcLiYhxi!_%49UBMw$)#QOlDxF+6gyJnzz^!`vJ*J&(yiDx7(C z5~OBLnY-RryP018wyWbL55sZQ?Dl5i!PdM}mU>Z`kh0Bcd$iOOJe;J!J6DgM7`|R- zHEsB~dGL~b{ZFtjsja+;5*CeD#--iM^@*pVbu};XQXQR0Kfbwm`PYr_H%`}f&E%&x z$sbGpbYZuzY~m|;I9r!OV18$v`iQ*3OVmD2jBC)M(IP;=UyR{w^5;u6LjUdSdfXw` z3{N!50xyTD?EDyyQ4j1juHQnOt>B}?X+?htIG;Ysc|}1{97d;b`mIMv3GLPJ2R4yA7%@AKjKIxo&9XEtChB`G6u8gldx{i|80$$crX|yMdk| z1Pl}AD2{L>04SV?868s~G(r6FR@8BB!cL^igIx<|u}DCoeiiT($fb>ljI4!N<2pbu z--d>oK-4(|)H1$;xJ7h8Db@xg;yFSP0AuB~n68;-ne9NcB3vvuNdROT#+Al2NZ#~H{4lHJ?c)*?V z*P4bTr`CyzBqyOZD_2E?Ld)(etC9PsnU_7d``@Mp_Na`irNpn8&6X71YPP!&7;F=s zJydz(ShKFcIE=s!#P}g(-l`+%N&Z|o)SsR0zUj)xxv0Z1pwv3t5@m+H<88tweo9K0Zc**FplUixYc9mYg{% z^*m$Os%$3y25WJL!y@L4t?QqE%v0F_d79=uX~e)?0`)mLJNw+?2u(`B&iAa^$D5Oi zkf(Bo98}k7fJb6Tz<8XX#oxEU2BNdmVGyPkVn1p5jq#u@MWf3KNg~}bFzLm@#YOx| ze7zzH!fbh6RuH*K&okA!zuYIpNO7N|g-~el|8Rr>NRZqH36Ht?g9u=usqJ|&Oc zWdSNO;y#}ofJ)TNh78t7P)C9hESgb;{y)lcXcd&Rhf~2kkcM#uV%0&$2n33Q?isMM zq4dHZAYC#pjvBh^&!A_!V{iwZRm~vbMg~1JG_fy7%Wh);pqdKP4nY6fPc`5}N@Sxy zDYdWK!GE*>Qg4IgyTj!mZTuoIHW0i7b~b2&4d#06TwT*&_N18*+%z>aL(?7^gtEGpM4Xw-rzW)*p%>xLf#v|o9nNbEn81xJB78Vxy-sdH*a8R{# z#P9mdorkR~msq~8oG_M+J)0?+-k05bBg9EgB%T!gi0P79Hn#bs`4;}I;{Eys+PC|A zsq@%HVXWU?n@#RFc{6V#iD%tk9`(p3jXe{#?z)K+qg?&NkJ7H(=)$@z<+k6bd&cVK zbwLY;o-Z{KzOSPZ!u%$6*Bzw2QX*>ZXi4l+8S(V&4A=OEOhkT;qM=y7yP>j9rHROU z8W7Cg^YWHbB@4>f%GouEm7>ar68~m_Og_F+YO;c5cU_0P(rbk7hQrH(!a_b80)zmh zbwJ#-XRRQq(86$NpO9kLQ^nEu|KBU4taAa8O#8<-7|C;dJyy>q$Vz=)RKQ zys^1iYg4>Ejyj8jL}7AZxYE^}%HVw)rdE++k?FrD+EZ zEXm-RYKWzUL}nUc8-|301Tue4HLBJe<>A1;VDG!�g>>zNgaFG^ zwOrj~5VfmE*fobSI<1W)0D}af-VZ=3gT{Vf=Ewlx$Ph+xDoB?e86CwZCcbgw21wG* zH^c!-gpGFg-BruJk|pY!;-8FM#jKM%XBc1R7%?plA0lz9|M33U)x?yh_Ze^87}D%d zsP+vn-V-vslezUfOT3#s*o}J+>Fvp7ADpn;sVR>0F?;5tmkuUZafNK3_i51b&mQAC zap_Rwc0_IVN7DT-OMi+rVxyPEVv8*WmR;s_9Xv+__6vZ-s^hP`Mc%hULgzW}@Q13S zk~Cnuvpo2a>sW!2li_UL!-rRI$U|9ChQ_=3XXAVgvkLu>AZJMNToXmhh0yV`D}#lAlVK6avnE%vw>EC=?0kJ3#|<&!RIktx z^J!1$D=I4?beUr<+5AHJ?5ekPj(8AC(hwSWgv?x3o^e*HR(`hkY$6MQYC8&9vV zBPI7o>Y*m_tD8`Roh(DIy2{c?7vi4>N*&E2D^^{^VLkn{9*%{3d2(_BBfL!IuIo4i z{Zy48E$2<_EGaFWgl_|a0c{u&v<*ifm|=)j6&CbB{{!d{&(6+n{6az+RpDSuYwPEG z0R%+!LLHP}IXc4_#kDb8LCsMJhi5-J5Zb16mI~OBcZrGga9(_aklxFeFPF%PeN-FXmntzdL)!wNpx{$qeRvJ`TpD8LMmNhXLgj>Lx zcY!M2#R*BLxBAW?{5+kuIhXWC1V?Pk0A52#^NYo++1m?k+V# z2K2&cxiE*CSDj_<6PH;X*mKa-vLu7UD7#*j1Q5kAasZ>N??bGJiHNSlgcW!csHye2 zr|JT2EefMVkw%~i7hxcQnQP^lgM=$5Fy}r9njTnIux6v8qEx1GW^w#K4?IzWaaMSF zj{GOEbip5%*K^ORqN2iltinBGofti~m?Y->UL{>I-}~5wfdscXoOvFSo>eo|LRVI- zpoP-zFNfTF*!2nbZ0+oLA$lE-@(9r7_2e1Izz)?4H2_H5Q77}#_j9DTgMtN2%yFI1 zx2s`FQu2=#l?%KgOJ%DVGN(BT@jaAz5w?7jvzlIZZQA*mm4U9`)bS4oe*7{X*oh?) zpFc?8ebqzuAj)jagoSEr!|BP3Fqh{IabiZM1r8zD{R}2G+j~K7FS}&y6w4l4hi6-e z%RRAezF8AtTf6AI_mfM>LN?S$?(&^(4~zjiQZwu6Kkd0^GeMl}vtE8LEOn25?rQdY zd(5+Kr6_Y{RO%q!hI+yOLavysV#?zgQSZLlEK9F-pO5k7ETr56=~u^nj=A6|Ypk#L zhXHtq`nn6gm95AhJ?|O~Yn$hhmwqC=_Y#(mO*=pGc^^4JW1_UbHtJXR>^@xA5s0Hd zI6N%vV|Efto)4wE@LePSDo`ls$nDQsML%-%jSEdX(E}feLe^l_x{f^oYp9{Q8Gb0o)=FNK2<-eg)EfFTkPSPxrYI zY9>9HFyZ2N*zCYz1zw{bi3}eZ`BI4Ur>7@FBYz5ec^Hz?UDifg;pko*D$2}6z;5TZ zl#%{OAuch|Qx|m}$k5sNM8_`B>>XxZyN+ThVN&%^C+hK(FPL=&eba4woxQ7;*m$#b zS!x_Fep!9?MV%2bibVq<4708a1Nk$NZ6N+f=b6E4Y_Aj|`Qe-gQc8P%bad4Hc(wRl zXy`Y+Y9EP{jrt1I+3^TS;4sj?K&`+FB?ej(Y9;g{e-_T;La#&cWl0U5k%Uog@G`JG z+F7gz#Z}!lQaZN?Z}uZ}owx+)tE{Z7aA*A>@f>RIhNh+|Cow3D;SYblKf4ALHrz5p z7~sjtsD+yfWY1H8AFjI7hsuGXs~+uuL5E!e&ki6Ac4El`Rzm$avM}tEB;j7r5c%c? zJ_(6S_Mv(b)ZrVTsl^QNlY(7WJ>f=W`gK;;KSh@6P@+yAl|hRH#|ax$&`@pUfh|V= z&Nz&%K^Kj6IVX6@N$l~6!D-(M+Z!-B4uYk+Is*CDpnw2_;^9Lmx^ORtg`J=a^43=S zZ{k4A0a50mkH)=h44IZ*6B3#;wLaa)aDLN5oR!t{0U0mlUABBIP=4V>wwgj(9dRTH zlSIpFY{K_EmNgha?8&ApCbuAwJT7cAz|)~OC)kcaphOcY*Iz2&Cj}NpVqFDT8&`sfqxmyUVeYVgtcKaT9$9o zdkbBMgVF-HaFDfVtDY{yy?{sbkrx+aza^tDHpsCj?L@wV+e=0&9tAl$KtbOCnYbSo z6cjYQy7~kr@xeGmJXy?n3dp*Ko*oJq?Skd;8ctUD`mc{-ZYd-Rg@VmQlJK7aBs_(q zV}(L5HleDp9j^i{)<<9*se&8tLHD|`w}(TJ&d4n7Q=wqVe*PGY$9;ZLY@_Ju7lq}^ zaPwrNOh6aSAl$#8-k*vcTvfg>fq1L!4NfrWJ(????>kLXKYjYtpzornNHR7y)~Hx6 zEzBHLZ?Ag=IcW!V!F%G3m|hTxeFxn(h|)MVKLQpe0Rh*(576!x(AP_^mqCF+rTKp1 z9-6Bz9|L>^p2}y3NuV2r_beajc|KbX)ihcQE}4bqS%l*|9Ag(tX<+8v!CS9TF8(|g zx+TWhRDNtqdm;Ri3Gtg`P2`65+S(e}Go!v8xi0<*0JS?jF_T(Ko7!e_v&j%jH{Slo zwXtYipI2M?6`6=FMJ&wJZh@B!zxnSglHbo?Ni_R>*g^UI)@(ZkC1oR&HfJu@$FS?5 z=hiGKXyC}WROc4`-$bR8t&iD(lZ_i~)2udt%@DpM3b&(^hh z@bR2DQExcdoQB-ShW`FIIA$qmXj;BLj4GLpebE+u_AO5Li&1kJL{T#O*V?u24iuV^ z!oc<&gNZE=@5|o5ud}yD=YzsB^M6~wW(QtyKOdv7(u~6&NF9aiYl!xl0!XL9blme?;83X0Uq(S6x0tML}cdgnhsr1RXz+&rXN*M}JY1CsXu9g@#wQChKx#f>08u zwnQ2!T|a|Ei?<#Z#m2z(b{>PK>WpdrRpk9`OM3iP_JDD51`)GP|ElnN{~_ zN2GD+`=hOfW~<+}Jnv3dVg`?;T4>6&o2hto6^xCq>y$Z7f~K z)Om7S0s#Lzv1gZtbkJk2Lw#p)mapkZ83r|2dMS#w;?3l`O!TaOtr)20e1;3 zgp2_c^R2YEttJSipY$>$^ZNC5BU9^n|4W%pyQF35=2Ayt&O?kU-B5w8v4Yu3L*hVd z>3aF~xq~yv)2Y@dmN7$2-P{Y ze!hiL3k|hmpk0cXJXiSO5U1rcya-UjENo;ffUmuyU;{r4ST$>jZdCrd zVn5x)r(c6XciW=j!;QyilmlQGr`4g|HsO(R()!J)jS-rSJ*iXntPtjUA>W|SX2Ki0 z>?fi}mlQoSjZ zT&u4Sf6LM;dJnhXkUs$f&WsX!I@?>5Mselzfft$)((|+RnydV(Id2P_y~*6enXaH8 z<5I(a9^FZt=jG~?w!W>l(g`4!C_ggKLkSoXoYTHmZr>|I~Y(TLyt|1QQXtx zf=sdT;u5K>!dbGrNlEIu^!Na{k$$BHcUX6w4%LsJ~4R3V`XIoQ_Tm5QHxqp z^la1Y?I^*t{Nm?-*1*5lmU7lkLZ*Ql(yaH0;U}~PZzZrGO9-!YalLC#Y z;dV=VJM8MO;J8jwWCP?2T2peh9Btav?uDW6#_h3O#-^rJiQ%orSH;DLcO8NAfC?jS zUZ%HR(g56e7}tXqnhlP5Ode}UzkXdlY(&G4)1-J&9`oXXkzEqglK}y8t=oQ|mFlFA zYLmk4$6Sk#Dx8&QLlgKG07~A6dU11qpGOD*C-NpB@;%V{!WrEB zo{|G5GNeJBx};~5xxFWsXUNnTYUZ?8Lh3Q1Zm3nitwi;tKND_fd3k-FUx1!jPJikR z^sZ}m2#%PyDs5K?(Jzw%jiN|m*- zgYuxGL*W7z79Y(cQs3FRxv9Ciz__@6_j#D7$sb-lIEs~O?6)ZT5EnN;#QW{jr<&U) zrGik6sb*7V!gGI1r-{2w$CkK51!YQqoi6b5Rj@iqw5{ z1rU7~>J#XunyrNNs+m_LB=86b{&b$NqhJ(g2C(c0P&+5w(H9X;@KTN{`-g#zZH41(_C{#O zq<)Ep-Nx<7@u)Z4W2jqn;xBik7&Sq!8uUk`vi9a;Q~%XFZcQg&1xF43`7C^%@W35r-MPX3nnVD$T$XEB@f@^nk3DlT1C9^aKj|um~TnHtuiXVNePkab&(Z zL%-kij}n5O(8t_^LCs~wW(C8SOy>`K_>4$h*YdV^B#VDb9P-kK`Vrv?ZFf-960NDm zM9U2RC3V`GW4BFloinf+dL{nHMPN`Zj6iyICVS;E;RTb^pRZpQ#$Jk}zZ0Xc#E|il zfwVNr&q$t(a?Kl?&W7dC*K?xp1^%|6wlc}PT;l1Xy+Td9V%u)+&XZW`pythu4`$|z zg4&xe%q1$457#>wAv`MQ-wpaj< zljTscW|{Uxn}1l6|K;V;z<$fqw#~K}b7SOu&-jOdC4qLu7&l*nyz3oDRs-_0{ z_+~=m8%BKl?XlY#f~t-B2q_lKQaaj>mv!6e$bXw%UEd`^Z5t?|Qq<+8+Z*09Z>|SQ z#U&Mbs!2Getr~7jv9af3zW--!UELC%u+Qeu&(a9!A6=<9t=Dxq9F-f>oUg!?xyyR0 zj*>0juxoO)3_SkB9AB#`PNg>$*1G0y?{(0pNLRrZ?Bg69Mzdqt6Kub?j9lz2Y z&@!5-aq!~)Q5SQwq#~B4bhdue2y!55`Ax*|TL!VDG3QE5!XQ+6QheyJh}+Wjgp`=l zBBXiBqBib$1tMN*$y!P};{9rAt<`Ppobo3Ly4E|6i+WPpt zUeq7+iWO!mzTIgak@)3?`gH#1>x<1jlJqJ}kGPQWC2v@kvE0hWxTOw^nJ0NVCR)qP zumzJ%s}P4Q@36-8pU>xgIn^p+G}0?}JlI6#m7I#ps<)U7TcTJenMo-sT%;^rm}?F3 zuKu+2O<5ZLFwwL4C^I}!AjLK1D3I#3{=j0=?8K)dL~?_wER5zcD$s}EjW=k$3-PeLaU3?cJ@g8(xwTyL zHbEw*t>wvoRv5?Z5H|j(WXAexAj^2i7T59N;03pp$w4h*8c$Cec#{4q4R=zoaqyQX zL}tG<-D4`+N~Fa5eupB;@6laMRXgNt^z>A)>u_NJGV^}HC!0l;_rPF3&=!b$&1V!Z z^g{|$5vy-?o%iIL_^F-`!Z$Gbns2{c+KDAY;n{8fNrRUwVwx#7NTsxg4=@0Db~pM< zSaGQ;f_nKEniBpl;`Aso@=eoDuKUY6i`OY18%|hb?2!t_jn%rwCC>bO$(h>9`*h*n zUBLq6=KFivx;ayUo@(Uzo{Z5vkKOx-!hDNg7fZ(5(DOh->^6uF+7e2SzsFAgcf*(P+CBd9Co~4N1$Rp{;^446( z1+6Px?%tD^%2c;D+#PIQN$Aijj?u)pUbwL{*<8ha;%YOsh?Vd%L^m&`+xOeaG@I!2 z{4mSwFJ6ZIdOsJ{MSK&NCW-CP!GPh?v{}#XuX)E6ORlpq2G!l(he{HBXCz|sDABSm zroSJ2_K&vRrtH7J@Tyt=J@l<%_hZWs)&P|hMoi*`(|dY84An^`o=ul=zHrC(zV9VS z>+$DiJZGPOZGFTN`j=!5W*^q?WU1$gw^MqA7vWA$w;hD{RSTi5mhMCTE4QI>NQ;-uL@t)TJTdvdgJ-;fHuk?m7 z-N47IuK8B$T#x*?m)KMrO>rW%P1}^>9VviobQox?&tlX`Wa^z{|~2oUw$hg1ZOL|Z+nYRBWos6!OgHnZB_S7biy?)Y!!Jy2ID#X z&zYPQ$wPVBL;h%7)eIRo{Mv`<85d%r>DFOc9fjkcPw&UNa?6(vFL*2q>S|Pm;~vW=jpGIh?Zj&^ zwP0_Fe2B&-zM#`j^I*1yPx|T!k%>h$#q|9#uWOjAhzZo$Gi+Xio$VVf$ad$xY~?Fs z!{Hw=@4MWT`snn35%(t0T()c9FiA>E$}B34W+C%XnjbsM?`I(q6k3#f(+NJxo75@7y_PS2C zY^*ug-r|`*)6-lyALz2{g<<=MTm86u8b!r<>yz0lL)ULe@7|d(G@wvfmdE0Dnb}ii zp3NtA#!~35po_P`@wB+h4jJN!=0@fpZCCgG2vgBC5_LHGY~bn9*&B=FdGTTouAX$r zm9r6QbW;_2m#BU?|5@{a%fnhC?<&0ohn>U4w(NT(KA_v>WzZ;f5Txpl=kRUxInem3`?FI*7$7Gr-m_dZGFVb^$b?B<4>J@g}% zzx2bsPg-#%d=@bLDRh9&SUv6AqRlg9``#FTvugc+WjTyZS%P<|%$~dPV{`Gd?YncY z=3HIJ!Fu|MMB_gGN%pFu?N29v8OlGC@p6qf(jS}r{N?xOub*VLAN?k{H%ztOZOqqp zmD$^Amr~6qzNDNRbg|z%ZxHTaw)Qy_U6&@`*SA9vri{}64X+{h^pCTA zeAd_=m%)~4DH~yRv!d-)w*1M?nx~HHEZE7bMf*k>#Yrp{Z5A1PV)A2&sm1slC540y zZ=;cN&){_$dHG%M#7BnYAMu=P`egxrAmZb~5mf}XoJeg$YM)rSSc|Ni*vDQ8_ z?k)={!SPe#Q~vcoTZ_f$K|1fk+c7b{h0!Zyz2(9^doP-@g$vQ&mvU>r-m4Qq=n0cO zGrM{2A?0auQ_OTPcbJiwx7a57M#}CX3 zT$tdbnoX*eN&EZJO^-zq6DWvDv^+E#Z4|{P1#RP+;C$3Ms3Nj z=Y}@chB;-`Q@7k9I!(!oLdgf$W=n3WoMbrM}f8{RxxBb`OZa*Y=8n%3BJqoTS z>3nxa;xzvE_U+p{-zFOY#RS(%VF}Qo!f;&I)vqDPO#x04&{4lEX6WAO=7giAA1EZw zeQS4uDMYbCMiz|*^w(;Cr7J0o$4{Ji5gFN*(1Tn6{O|PNdBruLPr!^E&bTp1aUsom zC){}%UGsqENk}ZXgPlNz=;fzxB0_84Vv26!SDp7d4)OW!n{UY_YH@P?TEURU#{c(8 z@{Lad#*7BqOZa|3apNFqth!1Vz9P*qlI{UGBRXd9`!Q>?yxg3#co)K z;L~7tE@ay8g=-LC<|x`^C!U)DD=Xl*e!E-%lS*Vl^#q>;X1fY~WGx1LJ@aNzX5pcn`Z~p}ic8pL3DTrEH|KkT3 zUV(EtAV3!&K`&AS^ni#Ee&+0(GadvA1?A-DwlJVeXhlFYqo68849Xbas>iEfd>Dbx zASVM8#JDGPF*rQjRi^>cJ_@j)Iu6}TVAl>GJGL5N4j6u#w%grs8xjlGP}Yfye@%OFJY$-Ma)luw)Xgqmkqbshm$2h6?;zWbM8IaAY^RIGnw*a;C&5@bFI z7TLtccKiwNxytfZfJ)>qfGZdqdjZM7C$ol{N#%I$j6f_rz*NRiE+Hs*l^)1b;`qcP zQVEqj@LnUyek6}(bY#zLbstbz3Y-JXjq*U8L5wt{SZo1!PTV|@!DW1tFa7eRu(1(v z5Adm_>0$+Z7PqKq08}%C>%!8aoE|Bl2fxM#tc;{`lfQ~+V+QxUQ&Fl)1KtkfJq+yZ zWypgysgL87mzST1tZ8Dfk>w_?k73iM0?1wVveJRTN&qc|M+U~I6 zaz#ucNC6sh8(`1eEMGuai%^56f zjy&E4&KP0w>JN)RGs1lvlqM@ABoyxWi-&sktJN9JmEb}ha93v_IK<1nLJtTOsGgCo z0M)U+mwpLItikI+DG7icK-x=Sjmz3NlbSnF2O;dyPG^xr+-xf*Nn`7+&T(_gp6TIG zXM?EY6$CsaY2+xE!yRO=-N$>of&_^>JIfN^_-3g`_>%;i-pcVY)#JyX<05t@3yF&d z0>%SqUi{Kez6{(2vNrgWRPlg|dn4Q`2@UwOsgv+?l9H^R1qTrD;J@#*sHi9y2M9DQ ze|_VD_JYLT@bcal%9(%E)z!83&tdSlfc#`9z8-9H9C(kh19*+J4MMet2%n$rBIBp9 zC<#*=xGKOBjuDJh_Wu1A74QQS$ zRzsu`W(~E|cNpI(D%(0D7ws zVH1oEu7v5Ud;aM|Ml^j_A*_o|s9d=nK4!vDIQ(fa0yg{-Tf@XqbI8cZh{zKbE-sy} z%+-vmJ}d9q1WA{e*^h@1=|J@f@0=dCy11=>h?s_GOSSEq2?vC*#AMSlM2j{udV5j^KSq%b9C?m12fNrNeg`G|R=ug8dS5j|J7UD$! zB@06A^{MA8zz`M~iv|ANOGHIbQX9PmI`oOr%s*Pj|T^qz5BT*7ocd$k({LkvWV5dvPX{iG2m5uiLXOJ zBJ$zTjX$P?Z5FF{10!P;%N=a7CAP|-6VjePu?@@1*{J;B-aWmZir^oEH%QcDS7`vY zeKETxtK!2kCUtM03=G#$K~S-o}y|@RbV*f zEU0b)^ktw4T>(fFVjKegj4d!1-1E{2&bu_rp3mTsV`Xu$k?@^i>Qm9{i?xwpo6D zs&8h}GBPfwG)}Hq22U&dC8P;7iS5q>@$Z0b$$G=x<*uC&+~t#}7YT8bGnOebhgN)m z+I0LokFu)jZtPB2w3HqP3P3tTxcYZ& zd}|TmQEmLWwKd}1yLa3si3tg>wbHEpFJn96~|b%BakD7}(s zc5Ll*aEN40wUD!!z^;7f-{nG!0?j0&lM94nL^y&JXZ#rz^Ff(q667AoX9@ zY$RCKV?2MA8kbPnKv{G-vEj9Djy#yn%q}s|A8n8{7$8=WqR?0NDzX;w183@%m(_Q^ z7FqA!K4s@OkOx}@~3<#P=S%fSGC9lb`(b0Af79BkZ)gj-25FKv!8$PQ= zLcTc9j~0V`U$s$>Ai0N#bU=L(@e_8b*XQ4}i-&wk+I9+> z;oYj?{5B(l51=RQ=gX=)#Bq~KRknujYi+1932tk> za2mz3IjuohpmPyK`P!|jPlYM>&@Cb(C(^RGmU=BSqwe>cl!eh!gybO;GcuZe$r>4$ zUdJYKhwQJ34VC3oTOrGUv>OuiT>)=ODxV{ulwZ6GujoevU~o@Li@tyo<89``pT_;| z>&wH#!wm%EacOvPC+VMs_M!|Sb2@NrK9jH*qP;%VSM3h5(intrXRw3X+o$sNZH68f z#4l_fP?n%nft6PsWe5@7%HD13cSUdB#6K@qmOCND{h_+Fb>O9x(=O`=55gTViFFUf|YfuhM;kIqt3|jV+$#RF{I1l1&4*j!YH_f8t zsp&i$qfE!chbRP7rx%lw^{VYyIOj7MemA9&ijcQ&mm9~wG$Lie+D=vLPDJPFlv!?4eGWS8IfRF_LRDxkiqA%kmhUF!*U&?uPNlz(FUtil33*Agd5)FBw1YirfjgyFYSt0cng5FjrvFr+paPLFOyh4!3FX|qvE*Z~cGBIXb>=G9!&>Z}><0w# z{j{i{J>D%Wya7iG##$)r>1`#V?LbX)9<^E0PNMFsL9?K=e!~j1bj3`O54^oQ|Ix23 zu5z2?yc=~;GN|eng|HXtmxw*M#{!8GJ*~f726^w&jFpcD79?1W6 z9mKkO-Thia_rBt_en-FEP0PY1v#-P8G1G_jR%GCzFfG^PKDLd#UIY26Ig) z<`>##cDGj;7pSp~e0TaVMQ~q3y{kQG^@j8^`QS(y_(iP4 z`f6k7VLQ|V_7Qg(d(JNGuy7uZ;Pkls@xn2%?!@FnS`hfLR(RC<(a^E(NApkq9%@P| zA`pef2a_eVXVAsnOHEDX?pDQ!0vNfFDn?fNdQW%AvoLO;E9d)%wyo1tpb2ke*1+%5``7S%F zKt38J`8!Y99;VXBYsb*2klQa<);g7=c+{(1AeOcl%fXEtJe5$e8uUV$M zRcL%P;L63UHyhYTSbpumW6URsX*lC4I3&!w&{TH2)63_gRfLEu(YTs>6+Kr4(uS~@ z*OI6Yl;#*(MKah4V1U6uRVapnC9SwoA?2H=1U!4DamCRBafr;`uZ}gK)FCGyDgRSi z9M{^}*=eMhpM=2r$+b__tND7}r}~$YG{kScGb<^%L)$GB+EPVx#y3|&q0OwC^=I?x zX=;y`EN(x}vu?d^gTkw?j*2<{j=bDtEZu?l?!~j~ zS1s{Mo)J%o{kb~&tjM@YjYU^r{O!SG(n;>Ll3n#4i$fVtgRX8BbKAKkMt4@)vvkXY zOP23A81lj?epJLr8m@lP|8+F;NA@g}snyRa&3o%Obj%(Kk0xEp{O&5gcIc0Q<4cj8 z?!tB}*~~6B4e5BZt)esTd+Fw@y&HL*!sYdMN(?gg+;y=xab{#-VLP_ZJVGU?Zr$`% z>nmOd+~eZ z$;m;}OiU7k+Np+CC`;p23hLd~>$=da?~T~LdTp8bqpuAUH|VN-iqd|GHtovs84r{m z`DXcAb8T;_n#Yo=Z`i%s!HK1+KPyK5)D$cS)3S6wqgf-+t?@M{dW%f<(jy@=YDvE* z1%A#o38EiXIkbtLefjfE{Iq0w#Zto9-n#x{y0tplN;B&MJiCPg&38mr9cmd^FuGT| zeZfhGbAf*opX=uwj@hOtKM#M}DTOK-qe<^Phey|zHs}4=x31x9#?ZOuzkyz#cozJ zli!lFx(TwmU4ecLLtPajy{pDbKkCBN?*3Dx=hnGH<}Fm~LRLJStfe)qSa=|prm{NC zr{sA-zji&x2g~W4a<7I|ANLrQNBtLrHRm4m1XtQ>ZSQ&DnIgKBMeXdmCuD`1fq6eD zhM?!+5HINeD%Q0WuJ`g(HF(=n>lfoB-m}z@F`oLmtkADB;#Tk_CQ8Z!jEn~v_gSs| zqLn@?y0ccxy8M%v=0vpNGYtv8j0Wqv5JSV@dI7$mGO=+($E=IN4z*2ohYOjg8$8(z zpSEu4+e3NZl)ZIoppLI6wAZXkib_;BqHv4l=DAzcwalr$7kmA;(V3j47RvoJt~TqY z9p1jrZZxlB;ZU~Nljqe#K}**9tD{akpQ{{F%4_2xOwR8Q z-`V6SCxf5!YgAQcZ!he&c6d2_M7BKX%2%fa3;S4{-f4Zq&N^H`FgwXCzDPKL&?9d` zhCzEm<4|i(1Zu%Cv|2pkW3O{2YdFW*uP3bX)LES~EpJ?n_gvoC zPkb5llc%IFUz(QO8-Pg{`{#0bSEhFR2ZkIxB;}@DbYE=swf*k*;wJcqk7w_FDkJ;l zsVwg%gY1tn=28-W(ykTA$jWsJPZnoa0ji#k)a94ab@J`^8bZJP}B=M4TK#GxWZCdc7obK*7GWVQj zbcv6y!D8{r9QXW)f?Y*@5r2P^9g7+t+1ZqCJHMSh3YFP-kfNyFI;)l;IsmsmyZ1QTP{pF&KF zbpQ%5V9X>;5-m{NsS%I_-7qn>|8BS~m`F}9_zi>>hZ71FU0vk?s3T!A!GL;`4H|Nk zWw%SOSf4zbVBRbZn}v5XOsu;^MQbPFRjA!8?>t>}et)bXbwG%$$m(#%^&P+Rwb!+! z1#Od~>TOhOThyUmY8bPWUyyBTUE4cxk-D+fiN10$BeJ-YT6Fi4seEP7(exV@ta2+8 z5}x;Ve(h%n)wF9fV+K92Tu7A&e0?MwMCEBXQk141>-(N}y8ZXc*&!L-p55Om%rE@- zFu8NKsf1Q4>sEinmY9Y z-pjRI=#H^NaE#dh=ZdSp)UUHEXO>^gmZge5m)-RyL(|pZ zdwuvsSR+zJsSm{KW_hyKo63C2;nir_&l{6izKP+Kb7at1gx}0_MQM!M0yzZ5J zL0?z}^(16_AiS7~C6nIo_FfC8siDDV%koK>RS_$y_1hIK;6Wg;S_Ya)S3NLT3zhZR zIIUoSOr!W6IR1_!AQZ-_!lB*ZpMY9KKwJI6tU&}o&S$jS!NQmFlXT7EBA``ZHpmo1rYujhfwXYT?OC6 zB2sq*cN%5Ao}4h9&&sBk^t0T<J&qxYjQL@IIbO#QBPd?val4Q8M1u&#P<9V&Y} zNh$Awm*=0DQ&QWazcPf~zqK)v{yx(CbumElyXuu6&%ATEe@I?lyF1wCjb0z;A)SPz2(K|Yol7cH z`L(yMEKIA0I}d5|R&bq=i!Yk65cNEobNq$o)UkJ_*=@Z?v>hs^Y6N7PeYdoqvJ`L( zv~l;Y%!|Fs^p;tz<@nY-`Tlu(5f*N5Uxwg`1?z0_$w-^eZ_1naR@cmFAL@$MNVD#K zrErJUhg8jkbiiztWq~N|qN{_w{RnwN(=x`wBbcx#Z1zJK^~VV4ph6bi>+grrv7_sR zak+Cq(|#--?{KPXoK~6$8C8on6@&yJ;OkBgOqb)Btlbyh98|QJD*y7^C_krg|Kj)e zk^3V1C)^y`lTM16Zm>01&ZEd*L1i-k`_Nq`(M=ysmXueybXM`H-OVtZm)kcUFY9RT zaw<}&SYD}kT(Fy+M2ib;+4f{sdXtCBVdoH5*Guk8WbDVv> z;Hj-uKx-?gS+wE8EdVkwRqWA?`fMg@4Bi5Rc+)RF7x`3!M&WP6`D>@xKhzK8 zmHWqw=(kDpQnQvMQE%Ada_K>S<}YoB%l3j6*%Oj->sss|dLDH@YM;=5De$r7d}f=| z%-ld)rqm_jFq_O#QG)<;`sX(ytTH)ug{fX>em^d*%vq(NDl;;=_i{Pa@OpO#(Qje0 zTzWNqS}m+ol5&GBk8KPC&OP7e_aJ?W_Ubmj3Wt|{DNUXE+%Z0xw6^`yu0IZMa<%`O zY9SL%r=?gyBh;z;Oq;{mMA&fi_T4A1T!=S$>P*+gk?-(9_2@5Go%uZ{R1WSD*p=zG zw7Yi3a^&EAbDR4XhbWHuHw{*F@e&f0T4OqtlCm7tIo;gh!*zb~E2xa;=XZoZ_|CEu z9d#I>Sd|EQ(y0y3pC%X#P?%k>jIL-+CW8z_e#!ZLFW#wYS-+A! zp*3V%hY#YYDmUxNymE_U(*|}`3%$y>{8x|2Tv%EZI?J|Ld5-!{?z!;R?t$)_$@e$^ zWnt>lr(M&1zdOh~@@~J<_rt;VBI{(c~!0}i!gd(`<`MIRS6hev;WyQ~+- zb$6-eojeD$|L@P4WS(UhiyRINJe`ch2=e#mu@&uqi8{(8J^m#=;^sC8RV2osvPCET-Pdr9avLF?i5ffec1&mK@lFnFfxz{aG(#AE#gl6aLH zH~!eR#(y!q3^oN$Qj(ej^5Fiw9T+pEq0Y}# zc%KgG=(L=St;Z1cXG9u9xtzJlO&&8NLC*-gjyD9Nia1(^w94$IMJLphLTRp`x9S&C zK^|=dn+8N56C%oiyO9C4;2&-*q_{0DDhUG_PLz5GH!b`BBg>l1xduaKKR8YD9{Av*y=Tm#+}ht@O%N*^`e^8?w(;yayUu1#b@ zu*VXk8<9FeTd)((T%n=>Sf0@7Z$?u3RMLtj+}o4*H&i84(vVk`YL< zFKta#BPPe?O8|9?3va-JoRSCu_0@~Xw zeSI~GY<$`m{AXP*I=(kx=!n<>D-rZK=O@hJz!U__o(eX=_Q)Cz;kzzpKeBacaVm!( z=itb%|N6E@K|z56vZyLB(#EaXa?rKVFAKgXB)0892JqNG&A!de4i9C$C!@750M0i4 zHmXz65)MGwS}9TEz3klYL^y~TZX&sbJa<@>2@48^kigkRH0;sfsyza2hg+KK#y)^p zgkpyg9|_iw5=5^^n2ep_!t5kb6hJ-H(cXRli<1%tzh3Mu(QvbaGEC2B@sC}cvq=1C z*{+E7auBQ-Sm;aOR!LA7ngme@ZPKsz6S@opGiII!goT}i6&?Kv^h29sliF+!!tY1I zKU5>+uMd3pDfDI`8C%4vg)dbI_b_=6v2&A^3|5j*KcQ-8&TK^7&EY^zer6DG6sz1R zQTBrLMVd~W2+-t-i3!DKkNC3)+Jia$l~PbmylxKnfWq8wQ8G0H+Zz$BVZam7c7Z+- z5fPEJ>R5>jw(*Ib#uZ|opxalPclVRs8GYn_hW#V%E|q4_O~UpsY`^en?Y zJ!!xZ^L}~<>?F>r47#a;PbRfkNYDLIuU$2**6r#bhi%3g69A`FMq3FumeG zF6A=&Nl`J)uvhann0*8Qm^38p#5RsdGWB|$m(>?uJ2_$1jZE+_ZkZw>We6C$b^8Ni zTu<&l;GIMAkTJrR0z79WBmwuEk2*T0$L?z`#FH4BZD?%FDEY9WUJcwl7K#D>(sH=g zcR5i1_=JRn1WR}@1Nu96)b_$GajDFC<=h&OOE#v1gydN{6#> zJ6cKPl!K~;6b8S>*~JC6y?@S2K?&I%^V?S_)_=6){Km;V6Tmkp>0ZyiYj$>)nXOL& zX_*NDOplKozf2KMzcNNSSP|n)py2W`)dtP5_KB^H4PTvW)vzeSk6@&2ahP1<>8&JEx>2nIm==iZJ5CN1}$;(gviNo$u2Sj0-^cKglA1R&GFJxU=)%`SXDT zTPPrl(|*63oHd8qRONTIcc)8mSc@JPoj%jjIn_COp|s?Bhx!nE2JeyugGG!)`;7QG z^Rmg7kpZ4=snAMk-C;xJ?lLADdG3@5T+g4OW+hMyB;x{^Rd|5|ubL&A8hpI4M?Efd zU=nJ9c&Sh`3_>H13qp*z+)*6OpbL_|cJ1O;UyzU#^85Pr6eb?rth?HcETStozhRc_ zNcVN`9T-qTK-ilyM+b)|j^}kHBvJ-y&ZJ5vnbsTP-tucEzxz5y1Yp=Q(+tl-elQiE zt^z3=jP5pG22d(N5Ln~ROR63gd8(!A-EE(#BGza1O`TEyrSQXxW>w4KV->o6(|(Ih zYK1IDh3rkWqTx?zex4o}`o3enlV@?bMRMrZ&wG)k^S`sleRkXT6#wQf_vvpP9}5^x z$g{jgW4XDpL_(%k>D>1=+0tYmn&TNB@iAh)&cb)XReklL+yvI~jDgCj_D$;s9c?Fr z0GSIn;*Bn!$ZmOVU5=oyc9_sRaL$n&1k6bDgV=IB+PRbqLIuQf=@BI-hxh}C=+e_S z>j;2d!MvT%crVEA<0m_|8vo?H#N{+|uz*D%;}If9L@k(hs@R@fZOmVDZSm^o&!0a) zMGHeZ<&Sh*Q!j&qkdUbgHMe%(yh#B$FLExnK|qLX7VY}kek4J{XqhwOP|}ZtvZ{US zJMm^8J9#qeZKMd!Q|!Oi2$_qF3?YwJd%(uV1|m$b{D=OY0$S4#7LP{Uq~tSFz2d(m zpzwK;(Hb_j5Za{{uP4GaDh3C2czH@KuQVGbjBj7O96oY{Y`TiNEma(H zj-Lj4QRR?%7@Dra=F#CJ(L(ZhAj81V zL}ZCA#=)E$N*@q}be4#hp!h*bM|Iu(4{&&s(;uJ|i8zUsSHaQ;L!1_CFgzoeS(tSG z-RYOBARLN;#vrKK0tXR98p_Ya*5DDV4`dG%BCr6zyT34~j zntnWjZHw@do7aVPi;pd8o*2>Yv;AcKyLD}FmcE>4W%Q#V2E}HsD&ZGjIH#{I-r2p| zC2w(4T4uG~_V8{Ek-n_Orf#t|$v;$UqXpU;Uj}!D9DF@qvf=Kh*ZE1Gw9DpA0c_6>-&Qfau-SB2lg@>a#hm{xVt^agMZu_k=v}HuB`Q_T|L+CJ1EX9|LX7&im zU&xFo35pgG`?-)%oJiAJ@K8|Kdg+(ksSL{93S5O83@@KHbtrnjy6r+E>TrchJacx% zmicF&-?Xl(wu=j<^_vfKOI}l#an77gUHZmFtHh@*4>|(_LqbAUD5h;A6ed(;A1?4i ze8xyS1Q|0KI|xh~%-U!fUp(W_8@V?r<09M?LhMjU8-I~>LdhNh<1S>6|pmM zirN!ZB(b&CWs1|NGISe?yN3@Sau;V^@Z*vzfp+l|W;Qij+y_XwPC~5S3 zU*CzZraEfBwI?9vV{??~r!c9)p`8{ZIuY%e(o@umVQ+p1FYPKg5;aofNp-JWp|pPc z(Xr#dMU|gf(QoT9TQ3k+79yIwzws!Au%zlozPgAz)tzs)oagH7UzfR1A7n3M%_US! z@cskywqFIgLS!C0s^qSTt~IqcsMvTrg0nnyc3W!9@Re#)q47`GWE0~>#6)+xm6xm8 zeVvb3>Zm&<(ImP)@kRudTW)eYXZT`?N`!iAuZOUZwcY!+FZJPI1swRbG5{ZLRwdUWWYO)-+E+ozs{7I~?Kcd@T987;e>zqGg~UOen=AR6}+DJW(( zW)$oC1)5#Fc+q*f-4o7|+bDHMA>2I!agqK(+n3eHaOOf--|K&ri|0muL@S?3a(BnX z?}qX8Z|cVb*tFMeiO3h2wj2EEQP56umK`ORTe*?mZiPk0&0X&`N7Z}#^5mt8q>za_~%9UNr~=r8kBm59;1 zzD4)#4adM3iG{MSHcpo8+{U$YigU-DMzm#{zWeRA3%}LZL6!4TN#U|mJI7(!K8EZcjCwNr`N<2xCIqgB z1VD*j7qOq9(}+ZW?_Pu9;ToJsIHWw6)jkY7`4<9(TFgWqYF5xaUlr@4mB>b4netea zfq}!v?YSasjq7^)ycn&&>^|;icHqkMEc*@GG8y-Y3bE+K|6#Orl3Yvd3>UC$S|%;6AgQz zYV~jQoMZvXrB!zvq6FBABbS)3Ym5D;kqlG||8XmRbZS=Ku^6<4Ei~9F zkW;=X*X2Dlp9o4Zgljokhv$2Q^bRpc9mn~&5A2tATx(rB7{aJA^dloc?#Wda+5%rr zc`pxk79VQk?$7>=iW-j#x)|vdaToE zw+R23M!Hn+p4JYY#qWC=g)j5=Dp{uGYbRA0iuzV4x8*;*<16|m>V*}}a=C|!Z*jG` z#4N>=%dtzBSk${kiUr*)XcouD>57(alqFTzJ5mk1ehB^3+syt zDwjL5r6+u*JnwS$g^5L+HVx1kc&{mcY1U0ma5I1T5#NTOvECJm66Gp^@1^=Q2E{@~ zE9D9q20SL>HR9v$xQY8yd)jD~^Jkn-G;^vvr|ai5D=+?APTNwsiuRD0nPRBj`Zo?t zCUd8DEQQUlX%wl7aDQ@nY4KS^!dU$4mUXw7NbJTFUTUT_t0{TKeRkQ^ZA=c&I6pNJ z=A6)HRH=2gNUO4zs`sH(v0BUQ@?UnMQ<%T**zcZ${@sC#H$&3$I*IliCU7Hoe zAHd=)(X&=o~G3g+QA~_Y+42ka0hAZccOSZop%K9~6 zRW4n6_YJgzCJ;dznmM#JUlO*so8DQwNZs=Bq(OdLOH_!9WqI{cHR}iS1>$ z2rPe&hwb1}Ua437=e@xv-gjLZU+f(j*L_y`GSBB1$WeNK$iKc@l37;pSF+aitXRJ> zrfcf616IxRT6`+1etfci1AO(rGP|V8wv=BHX|Cy&uv?^`a7j%wfBX+pdc2>FO+5>- zB%^T=vFCjDG;RuF?70q3o1X1ZSV>~6hjW&~p|B=15&?n6ax51dDf5U3wV17X&HoK(aMrYOvZs=vE%z|4%_-`^iT9gOJI){o7HW(PgWD2^AjB8Y!F zCZSEfp}8r*z$oRXGE1I(yb4JFM@!r1m<4kg89Nps??U3hph-RT>b}-(YdX^9=|9K)d}1_7fL` zC_V}3ZzcZFVc>mANkzrk!(NYb5qw=KGyFBhLYMdK>s$m|zearr;}J{b`=F~poMjb2+&cyB1UE)yk7OW-f{oA?m^CC&!*PHzk6?)~bgVq} zwU7i6N?^n@;l2SlK^ayIvlodag*9Wx&YgSpKi^aA%|LDwVj1_cdoLM34hSef)|KS- zz6}U01nR-etBKHaaf=pZXsxf0la<_+97U?0puMKw`NILr;{w<3M`ASbQb|atKiPg} z1;#)Ca4}WR$Hc{C^X3y6h{`5wFAQ%98P7 zP0Wj@ft#|!ae2$s3@ZX_mi7P(ygK=sCYfV-lah+0apP|C)V+JpZS4T(ig#g$BVNF3 z#Mw)7)qs3=pl?|=J1#8@yJ48`Biv0O+ggo<@LnSO7v@k(#!u7Qn7aC=5<%jh_a(Ov z!@^`!%xQ;iTLYopKM3OG*qK_@U4>o#JTs zGi}^0wPQr}koieWazS$Fvv(_LchP;kz#li1%@QQ1@TYYq_+f;7hnJ!OiM$;f^|5{K7cOTxce;S{m|{X$i_GR@!|Q3Wezp% zeKU8n&-=|Yw)EfLE8X$TOZsM*cu8)lqk_wIQFo8()H}bRp^(Q6y_y@sx2O&HT|JGJ z9ZPm&pr^lEvN!;wU^K%iPhhN)d3)4+% zk8>^wx+{WEK&v?Y;}rWZuH$SmkvJeffS-c%Xpkde7{*oI(=))%Nc3kju{wahZ5|ma zT4luBnkD>9RaKf+Kw+-Vly0_X$57zX-pSEw=SQg_1~0if{cmj#w)sI>$^Sh^BounS z!*;(a^oNT(+2-vP5WrV_xhlKtldej?d0E7Fh*@F9d!NqrPtjJg&T5m!#-An9!TCG` z!-3&ahxMiS*2fpkPrj6RBi!~yQDBXg;*Ap`p4Te5ovzQBu)8h1msV@#IJl0U>d)nz zQBxhM=94pO95OffF~Y$RC(k#FuQzF=ub+BFZUcTwY%gVUs{Rc0_n{t+>S_br&Vzxcbh+wN~uDU7EDeRQJ za4$&rSg$wz>@VN42;aZUf!yS3bNgDEm~9W!KaSKsvW*JU40O|DOLWb)f5D(Tugtdj zq*dV62w(S{k9!MO+-wkfwCZH%>M!3u?;PuW`S0q|{BB51v*cJQ3!AjL>_Ud?At_y| zJNu&SGNjF9Q(8<`M;)G8#qa!v-j8OsquPLfIEkL$%B_J%W@diUZG=99K{tR+Gh8C+ zZuaX89yjSp4lxQMT>SeZ@fg;mJd-NBNA|)DH#r+qT5=06er&r{zw^X}wnqbQLiN8s z*A_&|@K{qlRgTu2o$sk!x|K~YQSb9N+09>sM-FigDc71LTPAIi-ZC_G16f%E*{uX?H?=Ex-58kdIx2i>c-Z6=HxlT5BQoU}hZ5VfMS&qDrf(Fb%dUOdHebtKOd{`Pe6zNkat+ z6*JCDfXEQnFpQq+Iu0IWoDse*a<4DuxXJ)4CsJC+5n6UIXPFZT1B!Fj`(qXQCJ+Mhs*Omh#i>Q zNLder+Y1ww$ydRje1YNe4Q3V*M*e+D3#eB$39Y|R^&8TGqa>j}*dZ^^Md9Y=2De=~ z4hWEt++t#n;b!aT?WNfd7y26D^0+Jt3)_ygH#DPY$D zUeSLFXLZv8kXBd}ht197%#$BW{q3zptlp#7NN*=^)*0Tb$O=eFA}98?x%Y6mKd;9? z+k5v`6ZH!CKEm%H=r%QtXW*VAcbVS0rxJ{sR&n zuo>^Q{dE>Q0tsY?V1S5t7`7jIY%llUwgM#0yJ5`p!e2!X-`*X+iFLs z)r!>iNC?5bcAIN#r66f94(I|&lZhP&sS~Ghxsj24o#>?ztuKvbi!J#y=6aBf8l+oS zAkzUKPCQPXodp>Cwelve3NaK$0BFy?JzHwag?-~n{+%^(%=aj;LtMtIk94B7=$v5k zMUfi=h<>MzD$2Q%%1T3YDCm}fa}Z}BR7`bW0yzLl$i34_dxQmwF7Fun6UYiWK?xLH zO-g{O1P|>9Ze1`2PGF4DCG63%vwbg#CJQkLkT4WOhv8Y<--VqU!kc^0^WtiH*lld^ zmI5?bmC>w%WlZ{g@H)_8MSh*Z8RF5`*T*ezO^BJ9`3M#(2~0=uN1O}fB+x04JEc8` zwn+f1AQyAenV1gag+w6FXN2us?>__mmLIZ{kUA0xqcv*a5HhMK!_I=jb*7sIJH`>b zs5fuB=|LAlf_?Dz!2e%_@NW{-fHnUDdmaUOb^v9_CIvAVJpOvQ4~J7HG!nSy+LP6A;3H1v5YiT~Aq$+PVX;B%Ic)fVOa6*I{Wp^TPP^lM zFq=DPzfV!@&p+0U+Fr52dhItN9v?8L?{%NVEkSdHt!#&&;ClDGHb)DD2@u6d<0sSl z^{T2>`crlQ3)0h4C{#b#K6DQ;?Sse%!*L?Q(L>`}k%GA#Fh#0&MqT z;EG5>70esR(!$<@hzd!kKm530Krbz}F6i1ws0-$P9i*3oI5XT-8+$5H286ATV7we= znvirSoc;JskPIP+`ZKE-QR@M);CsB|TDE=j%*e#O-H&b$=a?T}+H-eG_F*$5nLI=V zM~)nTe2Zg2Ia)z35%hhLTkr4>@;Bee$U3#h0fPrtqWy)i2iheSAV{Z#l}5-^K|rvp z*RLl)NlfjU{W$q?d%LihKI?xxg}ttRa-T)ZW`vVqLL}@IQP|BPja+#XhsgTPk|Z4m zuom_;FTDC``TLRj@psIXhX#lG>r=M~aQAm+xh&4^|FeF3?+c!WiDCfqJ$(M-DC*5w?7lSuYPz`Syci(`HaAjxE#oZP~r`tX2&PFjU! z0RDbwG%qw<{sV&~2qRd;1K=b;6kyCq3`+Zs`7!*=<@>gfG#XgpABBd}S(cXCBZNed zBU+mugZ7}lhTt=RZuVV03`O5HGQSS`F-Rg8 z&ut-+OEHU_; zUf7{l7$zbm{}|Cpk~y#V?fUq3xO6-SMDKkx%^{FD23(!ehIsM}>XgXH*c;FyLRTwv z0SZ*qb?D`TSU2AF^sL3$OLa~n7xhR#hjR(qz|OZE%Pm(2D`XO(f1G!F(O{y(N0->E zhYxA#o<(8>Sn*u_k8PcuYCBTPOH1==YZFV9Th+_VQxHD&S1vIERGrw082c5?QW}E+ zMxk8DdSP`G`zy+V!c~6fW0^b)kkn%5Z;K5ZdG<;wH_tx13=B-a_zZts943r-&krr4 zz9L%M<)DdUq!UyKo_O#ewk7#rK-TMwkM~Np>~t&G^_%a!c0|}k>(Y=}f8KNEQh0d@ zY|in)!O2P2W|&O@sQ2mUPvusi8|hFu4dg}yKQ+S^Z??YCc?joZ0Z z*6nxA$~(OSvs09pP$mLt0qr2}$hr)_KO${S7rp-KiQ@Nz1j?;AFU7?Qv?+%m`~XK%SFqf@2Sq&`S%pHf-u6$C zW&;o;6X3ef4Nw*C;OBn;j7pBq+9}IUHLU2=URI-D7h$Vx8$9=6{)$MKjPO}nzVy>$ zCZXp!?(()v)`|$*JKXf7xnkg6yQW*vS;{UtN`GXMnqKtohf{Rh@~HU|Y;yhSTf!yP zD)nF6o2S*CSR7SL^;mhUYFLA>;a%4jnG}^My0!H5yJclFzjX^SaW6K!re5|yJpR6p zehs3U*c29R0STcpiXsQojvX5|ZnV}s`w%LA@C*?3_CD&yih@vaIS~xi6RD7~A!?_j zQ=tNTsgou7Gbv*@@a;>S@GNWA;ASY{gpQZo(S!yB6H2bzHjhnB#h~y-R?Vx=*Rp4? z^5iTeuR(STMj~O$g1kd<*gTCl?VxUMmaBH?QB^%h^9`$(#x4{;D0r{9RfT?2WmKnq z_9FL6ns(*#TeeArmXI{A9NA;k!IcmEyJ>OIv zOs$Laav7}Z+Ra%we@NlCsaw%#tz+m>zs{CSo@h#!4{k{-<{ovY78X6s8QxlSeoF6m zGZRH|g2hLd*`?pjcJ_>Q9Yv#d$x*xSuq)DMx$o~g#&GtTJ{1!KpY^$C+}t;^Uf;WU zf87An0Y>UWS@-Ynd9n4d^qQ=LHy^g#kjRk9QDA1_-ocob<8&!IqPMiuurfHeDtU(x&mIc=m*a7 z5$Ne+Ic1W|4HGf{(fow6@;90-&XI^3*|Tli0f>eiAv?vsyJrDP@Sj;uDIjN_1P8zQ z{Q3LXZ065TRxjsWbIdbGkJP=psFs%IFpELn*D~ zSMgQZ<(*TNYrkbW=o*jrT)`lsq-%}mq1p`G;j=|S2j_V;PWGyevGbN zyH*X)KgpuiHR&4P|Ha;W05$o2?V?yw5U?TAMT1CJkS;+%O6a{qEEMS-qy-fLMT!Ih z(t8UXfzS~VkzPZGp!D8}5CUh1-~Io;Gjs3EIrlqr&%JZ!%S;A%dEexH*Is+=wVt)s zvw7k5#$bs+c3NnKGF+^li$k<^c4EOy6ao#Ou)e&adNg<&f>g;60I6nny|5rF;=4bq zr>Hmz0b9!hDWYMKcMm|lVi~9n2YaQcfxVhECaQN;#dJZm9Vh0J1(XXU)XHCs)c_hW zUjVpp@$hH^8;1qEps6H?YJhIxaK#wD0)S$XZU-~rZd5V`_@i=3+2$%^K9J!{DxKg6 z4i44^0E!SO=HFfDH395RQJ_!jY8v=X8?bBkmRB8@Np+chy=O{V+HEoJ$6?&n=imh0 z{D`_IlAa!G7x}gw6sZqAWJ;x5q}&gg^vX+DCc1oY4Y2}y@N(VzH3a+@w_{>c86d5lotZ(Wq&$Wu^KYD+Sl3fk4TI#Sd}9x9 zNeB7JML|BfvFpeW?M|VnSX!uViIqZ2Z;MN5DrB(s*L)|}>;QmQ= z0}bFafPmx!X2BUQ z5@^1A*g{yt|P$j>DeGzgxC#G6piNE~_RXjMdan%Q6<{kTQ9ThHU&e&Ux`Q@E%)C&zQlUG z6v%jB1K^H0k#)+K%t3|I{QigiDh zA<+1P;?$B0qG8nqOE&-_#ACB^d5whg48G1~`@jL!u{R(V!;}Fc{{$-D8|1DZ|kwq=_Qq#RH*QqaG zzBH7p^*{74nw|z+zr~;_FJV&{SbkGKq7Xo1Q~)H^gJhqx8UiG?fZ?+dN7eLsY!*80 zJ8D}oC3*4F*$eK3)-gBoim{X@zQoNIYjd-V?q#KDz_=ggk=A6?@}QrB zh6b`byN7(8GKz}zHlC8d-EGWQ(<~$8%c~J@SLo5coxWOyZl{jp_GS9a7iQY`IJ_~c zmSymCWBPzFW={M9M@I4e*nogi5j%)?-kfH@7KNu-1_g_cv0SdE042qBXFE78LOlG; zd6JxgF64M004X_GYii*Ji@J2;NkvvCEE-p=y8Oc(CS%V0s*0hM! zRx<(8D#0Nk+7=dB8U5Y2B~U;Kfr${Z8B{hc(gO<1TTcrQ@7JyfCVQR8L&{Xc#$pEUs zzg#o`0h{m9{yZ1FzV`O_CM=)?^##l7Qh#7G-J<(*gtoQQ&z1NQDMOsD^c3<)Eiy0HA(d6gTLg_@*>U z=>!VT*Og{*Z|UE196i7DNI6w4oQg+8rSU6HLT zjbkb)CUMJcnUlyj&YW0kuh%zGwABK-mFsYoMU^1O_w!v<+PhH1?AR_Jj1TDoKwFz|ufL zN!ee3p{8ci4w3=?(FDLFI}8-n4}z8vZH#^0)G+8nQvx~1D2NVP+W-ug=yVBb?oIj~ z`vN3K8K5)S2~=D#0)Dk0K+`BN7?XA0M>k-Wc;=!_2@=abC;KmpPd8ushoT%Y7 z_znKS;MsQbn}MK2DVIgEI!06#B#)~>FUbywgzt%q8v?JqC*?`P74=6=_ZTiG{X(1< zv^l=Im54$PO5V79Vv{y7^?Q3u*!GgVI@Ue2 z<}08WgVYFaA3BLNjtvY(M&@hnU%ZH)T7J)fJ=zw$2=LU-EB=s0(EHQ}oX8!Jq*}^~ zw?9bs@dF7kRnU9$``Pb=5o>Mp%Ove0qf0oBjeTDnD77wO0P26vPoMs#EPe8yBM%dG z!HaLN0q6AdlanK4e_3C?JW)#Ur_CM6*?*4mgnj?AxCU7fSN}OUb?`g8`O?*s z)3Y1F^q~vzUawYhv%yjv)gM0#w!i5Ul$3N|BgSnF5+B;|@#I8xCNNj%GPzKH+|2Rq z4{f@PS4SG)7qMs<5}1!0JjNO94g4`6!2iSE>86rw>MWkv=%&&?KqJLF*hkBa0&CT% zkWG$X10tB0_FBH6_oR>53U#?XRyw&OF`G!Psh#^G!M^&4L8rjDO2MesG`ZerCo;M~ zKlgNu64f#myQ_!S$^9}tMzCvEEI52wzE-#G?z_8+H>|KmfvoHRu}=w`>pOOP%%y7l z;IO@@jMMWg6LnCWh<$#ZH$JNAIlt!mW5r;L?)aiQ0u5K8w3tbMcFYps=g;W+eJ3}L z*zB`9S)*qD;w3ioCAr(Hu{eXMT%%Mq7xSr_{+{k0)!r=ZN9ByeA zleHLUblzrmNr-eYD`G46fQl)9#%}E0t}!2GjRC4j1KoRHVLMisZnfxTJ}R-~J z;_Xp9*(RmCTtEXINNkd`UXobnx+AEC<3BL)2={pm=l=`U=a=A+AEK^S;jcf43$rkL zHNOTnIyrP%@*|kE@!z{JNN^i*-le~<4nHIq(O#cf#^H!5%l369QvCb8`j#@zrG>SK zH_+JafGra~UXv0{4{Fw2j->c+@h8zOPhjkOGCoCeP0gM4bvm>miVMxe$`A8e_NOU- zy{K6yw9oFgIBbf1c#Nam+34?nwO6~(@Vd#(FgYsU0imB0aa<`cKHVZ80Wya|`pl`Q0-+y(`@V^KI?yuw>uO zO!u{s^l)5a)(rrvBB6;Qa5bpZ6PNk}L;nL@N=OG!DB=(%WHqebZ;F8Ze*PS|nM1rX zN2x8z-cLT&$8lsgr4D7)WrNU(_sjOjwDdHyxGWa0KUSSbFY3?lHGtg}f=ILE%_llG zwl|-?OR#pS+vaK_Gn#U94NF~PZH42L{I(td&w8JT@D-S+bbHk=e)F?OoCP{H8%dZP$c&j1F8J;*QjrBZW_!L*zq#!0LAkszUa zkJ&+~!Bh{eX`H~NNBuq(cUY_*J2JxHhEop+3VWJTCbESDsZVn?AMiKGcN%qb-MWnF9h#>@0HWoao2l$D!`7jcH zy^j%kR+D7gP@ea^5;j%E#?5+YFT?xRiJ|60j7MJnCi}bmWB2m1n&lGdU0-9b zr)pm~n2)>6)7{#Ry8hY`W}&Mak$jhGnVf&ZO`Iw2XmB}hW9AwNPkYP!REC7kkT1{G z1TH;mOYN_?1Gbh&0>~{2K81v!fzRUN|(dlaYcnK>y5IaSZj%l-T61-i#sKfO(=sE7(X%+4j~=oA_ZxwGhwZnQQ4y zg?ZlaT=3=uPU1S45HwQ6{G_A}WLDjw=Er3gap$K{#9T1`5R%)G0+1JgKy#lk^OwKk8%)u~Y(6aVwjk4q8%8HWTE!N?22ViZ>pk^n$RBQh6+>oh&92f8f|VBn@m~Bok^3e^7`;=2fPkReat~o=`VYI}XsK+!RBXX1 zk4wE0tOy9Ky4Fa~e0Jv5-=^s@*L_8HyOA^x=%E74r~+-57cILN5gk!TVD);+J(Q0H zJaulzUz|qk9Fo_nS8t2}`~d2*z3n>Y+f?=!V{TYwk@)k`en@nIaVBA{TBcV+!xCGx zX2ORZrDELu;c~6azDcfNtXM;>?!E?cpin38St6M6R!d{+OMt?8uv!IXSnZ5jV-Qxv z;3SNJ_s*qP5yBv3n*y|}z|Z&aBeKG_w{Mnv_dsI3b2&fs{ z*43%J|6ZxvJqltF{DUwVtxufvS(KHOn$?-W_cS3-3vQm@ZGeh07RmPC^&&RY?R;<7 za%(BRf;_DzzJ^<0nli8Q3l9IJ<|+*p<44O~Vjx!iKX*eY$Y5_BS6;X+Y+UiAkOa5QU6CxW8Q!+Kne)Q< zoEWq0ahCJ8i3}<(I*WDAH>>v0hgr-^o3<@l%gpTQN5am5PjGnNt(u7=%;-8W63%}= zBv1!&Me&1)uWC^AZMN_CfOhj!*>kM=TY7vkMnPKP_wI_zWxiC}{7G7%-%vi)b>9;! zivKcv_pf-WoDi5q#aY2lw5mqg()-SqWd*-JTwvGEb2r`d%vy1;L2Cy~+0|_n-^b<{ zmj4ic{yY_ph!ZDi?we1H`2UEPz^d;^Jz8#`xsqUf{=_soYTSaHedBW9_Ls?}lLJ#} zjk6$ZI=S}$uhGx^vkPR#ImS>-DdqNz5b@FpNHtaKbW^xl^bV~BO}TP%EZ}8%C;RwB zKmMw1#39V-<_yr?Br~uODSRRxpZP<=e*~NV(^2XF@`-=rDSY^74=9y*_&2J$st${` ze9mnh)X_B$+qI3SW{cG4!Hg`DD(uk`GLgdFQSIw&|9cC3F2a=x*7x?^9fo?ZQiR$V1ZJ&Ok!o5sb4n-lgGBmPLtHuDTSfIq zpM1i~`KJ4B&X*iNVS04%b94S*n-cn;(Rm2w^hwlco~dhj|DcrS=fYMasa|Fw0v8XY zOkqTXJjVLRQY#YDbpJZz)qzjo>S#ZqJQJHeT-;=Q4ed&zaZS=W%MvrnB^WaCA3Y}M8vnVwwH*b?q z)%95(*H|@jI&+VdSheCfB1L#e_mps6@Zu@`zLh#k?7h2BLSNX>8d+-1QQNgmW*%Xy zlePCc-)6S)b@Z!XyFKl-h@+A5XdUzpCdQB{8TWgbH_WMSfmJUguJMtI-4 zReYJGM>2qxOKRPU%qRd*7qjxCXzEd`IBOs7;aSo`(~xWds@63^uk2cy6wH-KwB^86S~6qU7Pxx6rHlIROWQuOkClPa3dEy zdO3|y_Q*GKkB+I=twA!4pXTs3=jBJH``hIxiGkN6$1&>TAR2XYu5p*Xw%*JOP*m94J8=}i215^ zj4a+-W{{fMJ##tQTy3dy)g=tI+Lt3#v@nQE?u|~Ui}RbJGbwrfzG7zO;@WbfP|>R& zOPp;RX3Ie`?O4y=y3wQ>{>r0;axJ%}KKXKX%kb!oLM$zK(zV)ePDii1J*qeHEvTig zp3x4wrP2k{0%av6r0URq*GNF_c$Da1PCIA4Qa!Xg9EkaQ`3x8@(e*E|3*Vg4Pk&e` zZeM9k+4$-{{i)*~LGV@wS4V%;+?{t{`&G4pQiy6PBkwxIX6}4vnlLU1N@Kd>yf2B& zxLhNs&oOZ0Hmr@OLua96wi$JdEx1@$_P{&)fRDaFc$Oj8!AIW2WWR4Jq^94~ZP^w@ z{c*6C`kI-bZ8fIL&6-F|G>k9N!QP&J2wjAG744=s(tCH?dZ|TL_~eI=LNi-Ll(ib# zVwPg>;uVl_(dYt8k@})ME;t$(oKYi31(MAWZpwNqRM=CDjdUGIOjVGttRHUB-xgO@ ze-RtF6_21YJqj7Lu$C+LwGA>Wzm>Q`L?B&4xK z{ba?ZmRjN`Y?`uUopb9MWX7O5!&1Ay(z`L-MmqQ&f2E01F}Ol2!S zSe&lI*}N*Sd6>3F2J3T4J?<+l3svM9Q+Ke7=SW^08e-;XwHS6al6G)A++>;1*+x&* zlPuws5AYG5!Te064~J4VicbB`Cjn{ER;#3nMD)%X{ykOWO6ZP;0_~-^!P2Vu1Cw%(FvEqAB)MZXrJy zCtHObD?)FYvTt3(vW<#DQXz{|0k%eye79hH@vl^Lpovop%jK6hg?IDD4IJ!fIvkA? zstrGyGv2tkYLE7+I?v~)dGr$h$#s;e<+LS!W`Kx*V#^7GDlN@E*IxFoDWbFs#a37^TOw!{_a4{ zhm~12)$-9d=(NR`r7=e!GxRN^Ag$Bfmj;18G?q$PUcRAcnqU~A^RS|^z^n3zH?Gz# zTCOlQZErU2-oPABN#Z$EOd9hQ*=QXK%5j(CZ}YlQcZ@kElkb0LDZJoa36_Pec5Tf; zKIVH0RMBvgs>nwcsa!#NJ>LtpgnWlYyr7FRt6fUHQr7T1ja_@B*(>`Nx`*JgI!6iq zaz%+~7TRk&Q+A{gEqsYtd(<%yagBI?jhq z)TqlGzt(^@sCA1FgZRQ7yxV+bC2mJ8UhMGcz}M*9g=8ssh6rl1H0Z?!h&5LX?U1Ma z$!5eA+%R8S#*zE=XYjJ-c|Db_8+0zSmetXSmeAuXl9$RZq%IsPm;MwP#!gbxLlfYg z@vQzxaU2-cgDi%e`Q9wAyIhaGM!Ou+$FZ8syH)&=Az~AmvFb_wuDxRR?3#w2q_}Bn z;MX5p4NJuKGu62Vv(=dgDCFs{Bj>RTxvfUf-nH86LSpV!WtcA<%zB?f`X_5;WTT0$ zGc-aUa#O9ZI4R=IxQF74a$f%K2j0_Ythah%n}}Y9q%vk;AvbArRdsZ2Z`{|}6VQ_N zu6k)>mhtI~t`mJuOIL;rX`9;biP?k)4%X|+*ueAdthw$UdPZ5Sn5NX&>`GV}`JK<6 z+}Wmt~@SON=PE zc*eKqzzO>yOb@#uD(Ss))rut1ziPi5*~xf{{L0tj`h4DJ2+~}@%&hb#a{p|f#-rU` zY3pjHl|oJM)jtcpO(9uy7*Qh2t2CrFkz-9-RKsTD zt=i@c3{goutx@gsgA!x&+&}4a4<2A?Ehu$>&hv_vDQiys=E1QT-!MK7M8_;f)=`!V zc@#kwTbj7t=7TqZt80D3NZu_Cy%aFB2(0bwKE=+|sNOF2?KjE&^V-XWA6o@oduYGB z#oV@w3@l25v<{S}GYW0sIm$((ED=LjL_>vco@H3WTG3A7nG767eioea2 zoh19Z8k#^=^L(g@>ilAz3H;ociKY~Em{`uDPe5<^o=<_=sd^Xnd6#*%*`TuA`+M;sl4L7?N&aKv}5q)#^4Dl~cyGft#QN49d z(%A2FLZAtz;I*#j zHymwJMUGvb*PtkoptYv#jpuDSOCYGm%RjWmLa;
    2. ~%mgQmuZmO$eA*3R39O0r@ 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

      PQt<9765(wyKA&o1D(RbrSZECh+o$hYZdq?kb` zEHHb!W0Wf7s_Ye};0_YHBH}IyTn%CU2Y5mn;`NB1vk20@5ks?sV%K@w3=P_Ra^v)* zO-U*y!L4^~H@a9lN}Ad`KL-69?Pc6w-`h70)|(u&RI#^aOzwA*qlG)06e+9`EB=An z=I%JTVrU2aVPXqQcy&rDkK7k0mSfLpWN0b9)ds65^kfMX#sf^SWoi=CFUd{Qp|@5M98GM8pl2J&`-38 zvLUk*YO*kwv7#AvUe*u5W0$fr`i36NN}Tx|D<)x^c6AJVqzz?elc)ra`p6Ep-~elB zDm4wU#6aBKbM+zHXC52%rq5cIdg~l`Y3=7-xe=c#^^;101Vb(>xXZLN#e7YZn+9N+@vpf4)Kpg^jLR%uo|%Wz1leviyahR4FGe>c z6=p2e^o&7$%P#yR-`m$)7Tk1G)m;Dp#PK^F13fKZPZWQ_t*w^x)-Q)vdkY&N2l*HW zUMLV50exa}{N|Ir&Z%8vqO+!&YYc)H_7j2^4l?wngx2Y5rT)egrk>a0GEt*T$ zCg<181#XSk?cYqp`i?|l&f|IK$wtibegEtSGh=0pHZERN z1dX;`Q0No(Cy}$Zbrq1mZ@Hxz!LZ04$#M2P>TcN#dA>nFgA7d4>%$FWq)a)GDW^y% z!DE=*7_iE8`BQBvY?}PRfQiPDbABRou`>)0@7@lgvwL9|Pt|hbI_mAl0;Ln8 zQ`df9th6aqh!Z0!xF_PJc+4F$*ynFfEGtW;oY;ILew#^`%{8Lb$G?XVczYnwc=2UX zlgF3NQ<};D5LN{TmyX78q;jw71s!X>?rhe?xSelR>-L4kD^O_1PO*!$CINbv3S!rGTPFLCzPV^e}b@N zqy~hm9g6oe*;G>;y(Qge!a<8)uoXR|W0rQZuvsH4?0B5(Bg*EE|CsI61-^gzKq%XL z2^FkDm)TdXI8Ew^o=>(pN~AHAPx3ORASzWI!Qix(Hyh=L?OIWiuc*bx-H*N(RUj{0 z)t(KB`(*OBxK^%u05ocvEiV$WnDOWGL9Z$Kd-Y^6LWIF-EEgW^zx01aHA9|6l&7U= z^`sMNwr%mC8jUL=Ro%0bh83bHMUX&kQ?xOrnS{SPMj3pSb?T+n)*w} z)|}9CiP}UnweLmV(-?byg z^uL6EIW02-nqj6*F9HVRpx84$3zVy#xmZ7kpCmKRU-D*e6!}b_;<+*_dN5GSxLE+O z*5_uK$`gxa69^BmBe3IS!}_6POBwczh2O=pdc{Z&{!74eN?$aqfDB>;b5UyA4AZ<5 zjlZOUY-KVx8aQk_DgqSqOjST&%bZcNxt<=ag9hq$WLuQbI~#mf#+%|>lQr?hS~>f% zV|~oSJb-pbwMr?rUuC*7xbvPZ$3YP(4fS8Fv7CxVmgKY0CfYQ-OlMRpqw-H@o?ra| zTI*k%k8qsX#Pj*!_XHgc@AE{MEK*4g>=0 zfKqidm$F)eip3CNo${32j^g@8H`>`E=1tUH+NO+2*12yAe%rI3i7iMlT%Ts>0I||N z|GpxNTu0eUi>KHQD{WuI>BK|ccbFJ`(WOL-d6`wAL+=f0*ZgVJwOXq3J+^$w?E2z` zuZfd`x?y;kCu$&;6g6Id?Q@xi#R3s6@TI{LjOkC;&xJ!jYXAIKV9@6=6FU3XKR&xt=v*(#lb&S~`q46|~*7cq>FYmO82f z09apWsQ8fqxBzoePVNRggnytg`Dq1LrFoOkVeaPyLg!loS*u2zPV0Xe`|KkDBcZk` zhlIx2tj0{XLM%(~Ez5|ycB(^yzN7^>t}H@dl$Emt+a%<_Fd%k)Ef zWKWQ!Re3hywS79qK8ht6L>>cuJmEuh=Jw{wdHU4G@%r~ih3gXEpn+OI7Vlz88 z73H>BQUy2lN*!7=qXC2QHS^isnP=^N-JX0kjm-gGREHumwx|;gdPM*3xr#EjIvkhH z1!28%P6KzGBZl;Yd`;yu;{9fbS}2!0kT^tzVXNAdva&s67m`L4T7=tU`5)?s68k`A za*^^Brc1R}9p~;~uFlGs=l=>M{(}fNxh8;vec|T5`h*fDkLFmpT69$^+{dKsqDz?| z>XdhZ5%m^a;YF+TnOIf+(a^*!!c8YfTNYT-EM4m>&%XI#1Pkrpsm?=LGm{kQeeNa|UA&_pJpu@QwcPoe;I*RB(XBV3^#XN5P=VJV zY*&ZGHJ)KwE8f&iLiMO!m$Ta{=UWxgpZhw6`^1noD?_ zqvhlc{F84NKxfAU?+z+RrG zIum|iw-Ee%E|oxWCTsVNM+h-{y4R(H+pDM4JbBE+wzEpMT!cIp$(AsNm?hp!e3*j{x3pu?Etr*d5@58noD2O97|x)<^$3|^NLdwT8EHrT`LnH2RI0x3b+=}+i%D5TlcDFev25Kv_^o8O6^ zMuB?AJ!rAJsion#crz*#tH?E@>0D~8OTf3zz>pSSabgq!wPY7ap9~x7 ztqrkO`7soy&U3zK9-F`uR}bjDRqOTQRf7?5SAa1n^z(%&w4VP6otW0{xWD~L?=%qW z&ecul={W! zYX==W{(!rIkc6p^Vo*0wR|b&7#+1N*JimGmA}~c4c+2?b%PO{R5^BC`zQt+_nauRL zdO^k2;}}8fmt^&;9Te}rN6ljK{u%|8)VM{~69vOU9u~lG5bKy9qfRSa^fsbrgc#)U z3Y*@2)=Xa#_w*~Z?mUcU-r|);g z{vqJWxvO55-Mcv8_|yGTfMypM_Nv?S$dvsu;D+Yuuo-pJ_apu<5IV#cJUW3!eXFtl zec@t)ysEl2ZL*^e^4G)NV^jO}ZK40&{dC(Yuv>RO;A&w|@jJfxd$9P{yQTZhn}d@~ z(Wb2JfbHSZNuzgsLJt>0qumcgU7h%j4=LsNS-neL0T*{uSG*p(?E!huPnOUx?|sJ_ zFtJ3^H<#OW>YSl%j}91b2eSR>p1_F z6B^+Ad||kBnL}&=Ijf#j?I`g1&gm^klw>?~qbGPs(p)e4WrOeGx;cfsBC)jN^X z_iwW7uH-KZZ~BfO{CBsY3INdu!_JK0z-^%bbAlYf+m5ky878qe+5WZf-;M5keNSti zx*?n(fmr6;^~V)3i^Jpi-)FJiuKP4^dXk-AqGHcOl5eC_Lp}kV4`UCGZ$Y{DPv!V$ z-?L#{_H!XBtqusAZP2M|QMoTyJEca;x*qzEhhVaBr#O& zl;tZo$T|M=ni!Ao-0)-D^RZ>X66r%d$Lq}oH+%ke>2vpYk(|4ijrye@VsGvKkgUn6 z>~M4lczf-Qbe;7kdy3uvVsvzvV>!Px@|T=uhL7Cr-G(R`cGSO(@<}tK{?&j+8bZDC7W-SV)@Y%QMfwe6gwdv zDSVq!_`>~;hRQS81%xL6-^~eV|NBd^%hhv2dNjz<`hF;Tws$X5%XWXgQ5#)l>%7QG z)MSltRr=%IRtQAh-&69wn4R(N*&+q zOE_owM83XodKU(HIOy&6?^^bvJbyOudXC$ufuwKVsJ=S-20A>3n#j6g!nF~<-oJji zrwJWl8Ox;%tW4VU@{Jk%22XOf@Uxw)N;Y_EEtz3s>dZ?_B8=3L9pUq!ZO1p|l@%SBZAVB6r0aFCrnBq1 zXQH0`RndR!X_EQt%;S^?D%eK>EW}=vLytyrIJy1@a<3mUY#`idjq&!>dyzhj+I_dQ z4X!TKelxHfBkjNUHF+4K>agJrc(x#eK}=sKt`^&Z0eL98uM51Deq9qe!&&+U-xGrV zV(A`x&F(3Eh*bI!^0%qQfSS~{uYsu z!Q;+k#{1wA?_GxNN|NLUkrO$C!?Xhn_0)n58-oR)xmzA)5lT>yr|9a9F4JIL_Q&F3 zjNl{ck@Hbj&ND+=w5%8`35GE)8G+(XE%i26-mGZ%!|?w6O4_|4QVzTnT;|_YA>xR* zD(gSKy{Ezm350R8Jlaugix(T-ZrkpLAXK+oIxSj&o*OT=?7U`nqp=ZQY6CJmFY(^S z#oKn|`MvPZ9!MPhlGjA^yAF3>*m;UhN4I+~Ziz1%Mfkm_NnoyimG-BJiu#<1_@41O z_a+7E;?TFxk)Ji^9_M;FK5A=U^4*&r62X5UX*>N5rVc^h828u+t}!5pTI(0;iYt9} zxhJ&rhB-p_zeoA@l+l@HxOxox`LWuzqNaw?9~?aC{p0vKtog<7VRbHQp~8wFfE=U5 z;tzIN-WX!=*Qz2ydJFk`OY!ynu8%i;bZu0Q!?$9JcDo-~N= zhSR(6oq4X?D`cfNcLAn%kj~VA6M)+RlhWB;yg)e_;v1*-!{(z?%XPlfP}O!(eN^<) zHh1p+o4~qdj>Z-V$jcSdzw|?>+Re69Mpt9c+8uvu2H~O3b%!0SZam<%+SuM=_RFX- zHuq-mWV37XIp-j{{fYbm0rbEs%G0lUCgjiHdvv{zE2fs!KD4WH?w>989D6d{RbNk* zO%H8TVd((~cgPRel*We;e;46-*)jZf7$bz_dv?nYem@v$>0@`i?mG8Zw%VP&{ZEyy zq-s~ub6LR?Xfw1io+;;+)Sveur)ob9Q4-F9{AKcX!NXuhz=L$KrSuyKZY$;j5zly| z3f8Km1*198#5XU$cE@o7>G5Dxf|yhZ?t3l504o~3C5Rp$%T^1PA&N?Yq0`!pg>ZC2 zuiV<9eH1D~N`>_V`>db;W|2hPc%E4lpoFoHL>Q_yGe=?3>jXNjUuEjIx_)}{%Yzv< z+Y4m1Ehkq4O@vRnPKnjHnxOkSTfWNkyzXy5cVRxYx21tm(fv&yrYW6*Rsus1I6TWp z;Jxqay$|t8NOG}86CZwA0Yh3<>7R_HHP|kFk58RJ+a~g|DSX(M2|qWl@lM@J9Liyiyn-QjKz=6 z5x>8M3q?O{_~}RZFAh7P0n%7%ottdmEig-$kbyhcL)IUuU3 za##}~E=ai(a%t2?U*!^q$-T^GY>9V%df5jp1N zQ?=n|lmm7$<~y(o6?`85h@l&rLqNb|&@bRucAOlc_rhC3WeUGTHdXeUz1BkC z(eI|ugzsnEwxSnu$?`Ii)^Cu~TXVs!Nb~)g0Kdl%UDrx&#+lF0Elkt88h+PfNA7`7 z@066cXPNsxdN|MY-q=0#o%vdYk+%pL1b81trn%?*js+thx&7XbIcGNFzTMT{8S+Tu z^YM5p))2eE=4Lk=MfpY)!Q zzdhqSZHHEC^m%ZYd1~9O2HL(+8}oX<57_@sLXbz%16VQweD(2z>3#paMTnjxfPwzf9|+&-p-t}F0+{~n4vf7Jvw?BY272i3`!Y`KyWNg}rQ6lN z`buOANw&H=JKE4;_F2Gw7`99>h@Tzpou3H%A=kgct3`uUTj@dHgHLO~U3Y-j=1$AI zMsoM}N5wVA9Vg-aMjZhcZAKM>aXC*}J5l&<_g$7372Q}R$TB?|M(b;xX#I+p`FvAd z+jgrWq-1T;Pd&zBn@hVDgtBZ zppbAFa8Dkf^!DrX%ZkVA!C$~>#GO`YSI7O2Dgyshus>qHS<8-3j(XQ)?lXI9x%Z0o zH`TO~ySgTiK2RHxrgPj@}lQqu2td3aghS zkoy3hJnpvkNgDq9xpMVF~RG3+ZNj32HjpAk4?Ea zXXJkq7RK5v^ZJchitPr6&4--y=|=6;w7QY6y7>-!g62@+J({LA{9 z&g1QSw>|D72-4@R$ z2}@hgPDwGVzRI?%+*@X=XEnuwSd_Dm$UVFcr4M}&R$c0Zf(&$I4-G-BFLvFwY5L8p z_9BD1T_f(oRjWtev-bJy^O97*Yj8W9MV^mqfSCC7DjXX=Q%KCX>VJRY_GpcL57W|@ z?c1ck?xCYhpR4UVRWGQI=n$m>`ucZOLL+porGo#ECt#M&V^Z+#fQ(IrE$4gKX4`sh z>(Cjs;C{?b#uVG6;pvvu+=#=_9I)!Vz=dyC2VIzcmmxZ_dTl3r@Aw)!Q~orm29oJ+jYB z5IdF6J6J_MS6vh?_oAb(C-3NM^1p7Ytf&hgkOb`L1*bgnqV87y|I7}bD zRMQ#(FE|kZnMPTtT;j4k>eQQR`KPOzeQlr1g|v%$qGEt7lQVhctNIetz`+5rLGq@% znoPzp=ZW2xXBy>YmLTbn-ifLBH!W_pGuG}G+P9(C4)B}H_ridaxwiPPvbgzbhkMnO z2p9m!TklnpcAC-VPQV4AQ?VI?TcZAher1UJGGS^=-$%%y?FVA$HMC#VW0&$k*rO|V z}$q*9ze%6KZ@a`NPQkVxK>`&c_%Tl|glBSoz%Yo%{OxN||QW z8;SB!__XHL4efX$thFtBZjl6NPp=pf&Cnx)iX)_T?({n{x@#?7LQ3`?nsIWIHURN9 zZG$?QLd;tZqp(tD1`oWAm`{X%5GJWkP8r^p4;;d68xF-b{ROqR!ti@a0Jqg?G zF%dLjQ9UK3kN7=#<-yx8R%$Slu~81%?zA4{D0NHR@%!C=u<)9-7{VAPi5c(UMq&Qw z4rOsrYvvWaS*Sx@MDLh-VE49|Hl9DXTx#7wp$ti$^dgRUhfEZpveS$Xv$PqZVu+i{ zjJzha3EA11#b&6+zKOvg+Vl|M^ezsXb}pMoASj$AKEFzHYZscX*RZT#&Xee& zK-Y}uwlgJMn{mgC^1cpC++IH_rGVLpPu(01cfGMT)5P`V9AzhY4U{6)0`sV)<~>1$ zl-v1|F4vDCV(NAyjIQ0k;-f9n*?(X_ged{AimG3dK{V0O?)Pb`6q9NV32{dw7_B*T ziOhtCv#l~lc<)1D80TOtygh9PuhNRluK{2wQT={i^`FX4`l`7|cmk~}T z-MN@0R?dJwVF6E6hTs&f8P6;zHPrQRt&Lcu^Vms5Mv41>yZc$L&_hDK>si8k zv*`UBpiT=u@c+Wxil%rXY9*h{vzV&S)DfYkDDx`DW%$1Mv4M~7b(nf)|4Zn)AxoD6 z(33Iq@rn~OCn8;TEjF`5PYKH641q9wos%cqnDMw$Cf8IeoP853a+Nrwou_{?T2){D zYQOGS@s!SSP3HY`j~p{AYvL-;qFRKW9FU5D?aXha9KUd4c>I>1ia79Qo;VMBQezv0 zUo$GKO$$I~X|x`wNa;5+z_ zvmUW(jK;FZ$);FW3g0gHTZYmusi3_7PI;EEr=`;IQv>{#Tg8mNp4c%ZRt+;1FHTYI zgQ_4MBJH5r4UMB=raTf7&-GD;u0vIF2SVlQQNcfb4?o>F=C5~o%#)n-Xi04FQ35A$ zba9yK)Q{F6X*Wk5BvdN8VEE%zDobVYMJHf`X)HNN1yg@JDk1*WPTXLYh2L%uM zHv%^f2MPDNy$G~x+O$IHl&)p7rYrL6_dOKL&i^kz>?mNc`40>lNqp)Usv84~h zDSWBXyVbywiIH^C_xe3Bv136QCS_sW&PHU|MvM z0CoCQn4Aa}`f@FD{~m^yOF<}Jz?P1Qy*N`skO{P+;olMc)V5#tx>uDscr+S{vt)a| z6PZXyD`NXm)*VNK>$gi|_$N%pv^krUe0x<%!Wkd-`=E#dTU`ApkN3qwrq3-=7(8|7 zbjl!QybS$VwsG$!S5-MNsCo)Et+Kx;rG zK2izscA#N=9GO<P!%4I0YFZV$aMnw3$#|n(B3riG+$2OL8CcT|vXw$IGGvALPDA}$fr@NVr^+s7 zIIJB%?Gdxj;dFm_TbQuI{SzC|QpYdu110#hR!*?b3TRTpk)(eovcKo_mq1jPmM5B{ zNt4@~mlHH!Ijz#lYAeHI3=`C0435-O_$~1x88ot7$1*n1k3tD;oy`X{CKyKh2MkU# z2WDo`SL`%I>?mQ_UEs&a!Qzjl@^>+DG<52Ni)LO_Oi>bF6+1)Z3)CtaQgWG5m0>(-9C7j;qEe;4+E1 z2{om1YG$Irhi&H}Jxls+uX%HpVss!qa%%7=atUdg&kIvi{kCCoQw3Z8xA7&Y`U(j9MnWt>z{uLqFL5$op*Hp_!LA2hS%#@w=+vgtaY!q5 zRri`)e&c~T^WE)WG9t$m%*9k+I0-*v7hyYDL+EwTh;9Y_cdmdMv`jPmi(sc=;8_J z(y)P1fN*u=!CTZH~jlP4Pwt=(mp|omgV}-IQp{&BoE2*O3ek#C#o*DHQ{NmTH1Mfjnag?Du*9VVrwnD%Tneq2K~6<@h0bo3IzhMuaeapOA2;tg|B8Jk zUNX`77l?td#$}JZmv+_ZR?C**tZ=5DUp-t0(TFj^J454jAK1h=J(_M>+aQl+5ugZ( zDvO&TeyUP8K}}IFhTbJX$>V?q0pq*WGLBa9qPm)^ zY~UDYjw4!De!1mXQB*a^I10!zZOi*o2uLqI&Ih&9IAs`N+R&Ht8i_9PB_`GsVkc8-X(|!U5_^X$)Dyk{O>A1-MD4+Jm=&FefrkivzM-@K9g1P5IV0c7 zHs7Y8R4(uF;d7-2aIj!p9De1^uD;@@0N#CPt(4o49}IM0fjZ z1WZ)OEw2enh-`G){9H(ituq8C{zE*Jm)PoBZ|U{|ZC|wOUUXwK2*nr%o}*)!am}xJ zPl%iZa33vp_ym^LE%-}v2ku=_J@?<#aJt>R+jLJ_YYh2-@UZbt%VmT^i^}~1IkAbJ zOP=gen6j=!KKbYO_`IvAqLm*pU}r}c69<0YMfy+sD(W~@-!oC6&YgkV21WehFTPcL zdo%cDr990(^sGrl*v8h5G0Ofu+ziRlqCUqRi3j9uyuN@K|^vv>k70)Wtt!J-xBF5gNs7DSM2s)&2~oa z5} z)hTEKY724^pex|IA4@^YW^9Jb0VX7ojF<@Sl_LygSb86AdTsppBR8JopAk`g+UBGK znyVGJO~mNf&>%}}iQIv=!M;$LL?K8ym+a+DD9orMer%!P`>(Z`-n=OUMK|raR7NH3 z%v0r?IIu6Y4G)p_0GA<(Rt#8YdYkkd&Hi>Tpn-^DWPqD|^ zC$$$^r~yZTmV?j6I_l5#C`Gd`R(VmO=LoXsdKWJ$LgTxJWtEwO85dmkmEOdXlv==bIrKB_M$Py2ELx=JC7t|%rN1ALS_n3U8`D9Q5lhD<`3=tb zo#u5L*#LHEdpOqUz9i~8v4;*Tz8-W9=(r!I4@ZA9=r%H5uz(zF9_NU@7sL^L5JP{x zTRbO!b*jA-H_rSt{v)7`sZwOnsO{J9Zr?e_l;_E_u48H6+u{D9L)>3M6YP4oliXob z&#}EvgqjB~#6wZx^p;w*6K<3Y0@dA0B&6#l3sv%2zXfxSic=N=@|9}Ol64WPd~$9& z8{fF>F~2_*G=RnrYpS@`^$RvK6BA?-s7PO7tRSU6% zh)=Z?d#3^-C~&UXw!0qaFBUPTJ+t`A0IRzDqVxY+y2^mInk9-B_u}sE(Bc}P!MzaNg1dWhclYA%ZpGc* zp%iy0ZsqZ{FTe6DcQSW&X7}uzGtcE?Z0Z6m_F>ab*_hS^dQ=qpVq_J}>Uc|x;6t}G zp|8>wO7#TE*%0N{*|`inyEMt?0`?gtS(nI%cXYfUnkO>oy0W zbb$=?(Mg*WM%(XggiIeJ!)wY&g>EOsbDr)ePkcJ==V@Cv&%E?SHX-NPGFy5f4%Pdk zHGIZC%s*?9L6Dc{N^pUq4y}uo`*?h&uX?ENaP-O;ro=mygVJ&*!0 ztLN)rG^ug#eVbYXxr6oi9LMAxI4DjA{WF)hUr_-H=f^rV*b5VCyiR^f96!4uO<>uG z{1{auyGzQH3}#UShR=Ar35)b2;8BcV`$XC>bhC}PEch%I>vnz{sP!5UQr#^Vd}_@v zx+P64B3Gj_jD8%aZOmL-M2Oa#E&-Rj)Wmz19DEuLt=?*qMj0abn=Oz|ePeT;UsZ(N zOloI(T&IZxW4x-K5^OIcNTZfIERH*;{4@N@%}@+HK4kU2_Fq*0!4H}2IX<%`JYQK@ zJ1tdVQ#+JbsZIBQmF^uU0Bz-~5rZzwtyu+Xd>=^bRTLho(qgiOUe33OD>9n6nEEtq zsLo~n*u2JLW|XP{Wl^C9U1_V5GPwMJZM3}Q+;qIIZ(&dw;zmbcvv(?xv%RAMnNrz1 zo8~3^P(TpI2~ij$CVrg|B@#Bo<{fEUQ`l(zZDX$ndoecUZGK7FCA%iyt=}?_ED>M7>()Ss`pgJn z*g2XjY5zRUsz4MR$?_V2HQ^tmP ziMT6me{ZAm`+4oV&nt9cTj~R=+kDlS4I8vjzm=9|JJ!lI^bx4FM>}~)O^m9LUH1_& z8IkJ;vtD*@yyUn>-r-S6ZLqYV!kw4?aG_282@ml||8q?Z`}!B80~dGDFS4x;+V4^- zI;ZU^7nLn*`R2boZBR`@1nh6goIMWF&s!_oC?T@d6?!n?k&QGtVrq0&?UX0c(-pQt z9;xKL$g-ZPJ5K`mn3+cGQgGWyiJj)E;z_8{Sfi^yij1G6YnO=mmWB+v?TZ#9{n)*# z+_ASEXIJFEa+$E_jOu%bS2V~{XO42$=6px}{N!WWIwd(}X_4}JNH{rRKEOG79QvnX zeA`5pgB%BN=5Kn;alz{U@suD8t}QtY5FF<$`Fu3Cc(gaD%rTn@a5koYw{e&M6VBXO#@&0@SwLo5cvwT_kwh$gr@zVv+*a?d;YkBKO= z^4U_DCs%V*SGW0xCElO|#SB)ZxyUj6g1hPwM;p+TdMLMlw1D2ci$Te!RoOhsYJX_& z`z8h3r!S+)$GBnkNqS3%WBW74lbL%p`4Z)Y_mqe%oo%t{*QJhoQLux5`{u9gMg%b% zsO`%K<^9zvL8d}|jp>rtr?dzMqCv1bqV(=$Hi~)Ln9f1qJnZuH9DCdY9+Qm4Fg|8%QCvG-^5*WYk&}ke&MHnOrARC$23cI2dy8SNZF*(|9Y_MQY z0}Z6z6&fnkYFd^m@Jg)707DhKzI!O;p2x1zMosmRrGHoUwuAD7W(0Hs-zyX+zLeQ`TNY$#Q6`SbH zY2B1%%klL&dyk7X*=Kj{gAfVvh`KtYl^aPoKu5Z3BUy#Ep9DmWJ9Jh%($)jc;`sN5 z-p%0J(2uaF0)Z;cGv>t*KQ-is+zKen2O!Hw3L-{1`gSfmpgoaDQd(NscjY*fy8zTZv#szbU~`Z+g1q&@d*Dc2sPpzdYdN1|%t|Iva238p z58+PGVN=C0aF|bl}fL4j2K7$h`#dpuzL{RNc^Eg?+KNAZsF_TAh4YDGCe+Kkj&GtOle;jW|5=M77i^ZW4yIWffx^yB6Rv_N6Cz_|)sV zp@w-$Q%A|OJSBNtaWn2dMH-K~6n)U{~*=9%(hnpe0PY<(2(R5O;vMBHHw zYmw(Q&2rA3ke+gh<_^1J)ESmms8l=oa!~i-vgYd$11g=AQwS#Z!hWVMGhH#&)ll%} zo;}G|@6Q^({J(Rf@{QiRmLTi^st*h;3~V7UDu#H2Vts(~uGcL$$ zJuDYrKY|h%Uk?OelI@F3z$V>s`pmzhQrKOun|(O!_=6ONT`p0)sk=S%7cnsLM8nh) zn+D}Dac{R2v`}W54$&o19PEBTJqMMLqfeF9nw7uD)X3_n?!7(=#@@uH>b8>2{YX@o z2^&aSmlP}WJKDK9r2&)E^xmpEPOe9uoD-<*a^={*NoLstRH-X7;Yk<>EGUcZ#6 zbX93Q*o4iKbj7u7d@R2LA6VTZGI%xG64VuBR6%*MAhctQG)?7I3Bs`Oc)UDWr%Y#V zbuar2jo#%7aec17RvaomsA$rEWGecRzLd~zfkiEWD(ub6s`NaVaaEa8dp%GtK-6!M z(m_D0`g5528~FV0mY#2a@rzN;bwx7y??aNrlGzW~CiK^0%EwUBo=20^2rS|2aovcJ zyT1sM`MM&zYc+Sy9mTndQ(tEPk4y&k6X93lSV^`~gvqvjX&&OtF&rzW|9_##u?jDXAR7|J8j^B(I3oynHSFu^hv z49+2|Ro=6587I#SoWfQaJJA1!Zpqyfn}jqQf2S6stHAN%Fj1#7R{ET8g3{LFW}W#> z_7ke)KmP>ReN0agAP4h#Fvdwcu$d>vL?DFeIZ)Xz(dhW|ag;JknrQF4yMSayd2K(rHclz>Bod`##DDNLEV=t9T6?;Nk)X#f?*e5BRWwoj zQ$R^f-n@JV_nWA+EJu$%(aBNq-L;Q2>_X&s)nl^5VVJtIr!0cyi<`U7b=7%3xm~#K zU$0yJM&1YO(Z_K8A8#K%1ZKe$-%#qEgaK!&2HPQMxOkM!#Nyo|pQxh~OQK5x9n4eL zK#q|aUZu_oM8t9@p`pf%CyVV={=lxWar>A9V=`}Njx~VMUc&q*4Id>bDr-_di}8O& zx~3%OsbKMPreMgi{Cb8!c0A|4GG77HG=WcHl{Ow$dT;($f%m{x0lvj&x>8DN4tXsP z#rwcx4@5IQ4Uhf!n;dv`=J|qa;ASq#S5HvbB!2}1hch?aKd0nV&9OiXihg$AJ;(!) z>|S3L?!LV6X1TFd=I>HDrWzdzsKZm6!PG_@bAYVOArm#E+eifqwaZ0$eLc)d$c%oC zK$eu1G07ZgSHxo<69+cjCT+DnW&}A#)JPRoVg7TFltTGq;1gty6!i7daQ0lQz^vGD zjbrM~xj>)02M33*HAh$-c~V0aN^ya<|J2=yEQ{hv86Hk#bw1hL^%66dL84xwJV64G zCay<4${8R#s}W=84Erwz`$AeJhGhBThni3c6ENqfXCQ&$voA#+Zrp>K9LeX}6!xuG za|BBXxCt=$<*(LXB%T_eWX3D0UKmzonEL9NW{PTmw-<0Pik0R`g|?+X*Bk#;jd0WW z0)w_P$9JCx>XH?}mR{Tf#$aWewsNF)Jts{cJ5Y<+%@P&VswaEg0CYwedV%q(V@wt_ zGD@A1>`n7DX+&`?xya;j3GF=zu!{nP%2wP}jgAs?7z9_ZZ-w$As4(d!*{O=Qi2AD+ z<0H;EHk=n8c`sPF=F9=+pEvxwmA{kcVbwTAyl7^-(XO)3QUokWH;1CePSD<^h+`ps zHq+!R#q!R>k*uskGXipby2BJqcb(L%;W(0W&1;w7#MKSNO_z?yFxO}e6y%WAq5t;^ z(MaW?0AZX3F_B*h!BKwm=(E)zaleq;PE4g)1~M86Jo@sZ?}d?H63WT|S)oOuDx)Pk zFm~%D7;^6{(lC!iUNUSYxgW3&0=RYv2`no-7XOb7AO%^&@GxPFP6>kTUSO)g6cK?# zW#J={kjjZH2qk0jG84~yl~GLHL8sS|?45#~g3?3Y@NE5f#}5=9Ns>Xuk^54+M1VwT zS+l3k82~TETz=zL!&LEpNc>N6rSAY9bL52c_%er&X6o(mGBhQqHrPy{Cr0(F!6vGl zA(KIYZLFySR^0t2?`PfF<)&S>j4xxjpc3}_MZ5L!>e+OKqI7uZB%DgTzn?5kP;a?iPrIl0PXA<}n9c=Y(2oo;sKcB=0N2Gl$H2aO3r(@@$Kpftm*S_$IHW-72=)a z5Pm=R$!kFZz`lPh*Kb5oEv1y-!cxSQfNYL58^7gg=wk}5UZ|aakVKm`;3}3gCA=l1 zn&&0cXv#HSbKfmHy(mdBG(s;CpeOFEzNTL{MS7K?qeDr$Dz#+|-Ot^qQ9XL4|CNl1 zPNl?T90`Mf59Lk=t#MfxEh$9a(It<|(#L-1N=fUh$EaiGCA{hRROP?RzN^qj!TgT$CRJK%fO*zTnI~wYv_sPn z_MN`E^J|~{a=Aj9bNz%>lxtH{lZdh^VRS$S>sQNa^4u{40(&Y7^?fg)#$AX& z;hd`26AOh9da9|O3IFepMDBgDjGuN87mT?sxa3u^x-h;m$#eL9Q^Z@Bg}IT8XS50z z4uW5ugDSE9dbHTBccKOCXUnm!O1nY6y`kBN-DPH;>4%Q+L_Iz}tJ}Y_yNvT;i~{~M zyNF3EDrs4GTBnx0=p?rdz~qKM~)};01$Q7!I|?% z);PmNHIxNGstt?WWF3C<5Lqh*_U`y{n!G$ZF*^?)@ZFEtaZZRC9juXs%y#=5w)%h3 zTpNaVrJlrjgpdPw+Q3{emGq|NSRCJyd#)Fe4czWsU!28|Jje`9INxYA|0mI{I!C=4M*cXtR_G0(68B%% zN-8Vg&cPu+q~aLUt8uzk!^D;GLb{}uHb;0rPQtbmtz$=F<5!=@R`pQU>q|Y%TNyqp z6eQ`X%JcMsL(=>?JrygoR8JvyG^GN3AKGuJ28LJ;9*!~4kxnboa=&G(D!@yp>UqXjr(2@Xxg z85ogmybh3=$=t)cNm0gulsgiipg4Uri8hIKBoCZPALNNzRuISVA6|eOr#DYw@skC^ zf1?XNkR000YU$&0ocGU9z9JcHCv^RSoEy$AbTG_|+dCZUP!(El2>u?9yZq&m)=q!F zyN5l1xPKx2B;y8tC-hIlf8_K*$`s03x_mgTJ0$h&&9Iy8pm9UDRYED>R{}I`NhyyO$}QDL&08iSAI$p*IOS4q3Y@8n|m_pRBfA?kso0SI;N0}3v_ z6c`J@6Wz~??Z_i#g9Sg6QJn^Dwc%ghnq9#%(K~$TuvDJ=Z^Ev5OuvM_$x@3-?^P!M zh>8qD(8_CBSrGUjVmG0k&&mkNm?T|DGL0;cYQ^CF_^f$Y5T^cfgjl1Jb}HjXGyyTE z>Mc#-z9bg?T9YsvWtllOR}_|IGBVx);Ys3Q;8^6RxJU&E2<#^yKvcB=svTEWPy72v zm4%oXv|MIS%2-XA$W26^>3OYjjm#gS&&a5SiQt-3nxg2cLTC8O7{%e2K*osY&j@^t zu)}D3oG|5cSiUw08l|cXxAEvQT#!Konb*OR%S3~x4j0#)_0wU|Jo_zPZg$4epKy;g zAsM((P#gP%eEBHwjKsh$LeVrD_^nf`IZvkGFUB=hxUN$O)<3iwkf70u$T+VVoR!FJ z$=0fjo7AQ!WNjj#68v7+M9Tm4d#8vD4|ih?6!Evn4Vfb^_G})yEqy+Vh|Cv$PcY+D z`i07+^PNvzES~fHhsP!R&1&8@bB2t=#b?111PEyrt#Y?yeAb||mcf|a&!B>6z7O^( zY$BN?hqi($iEHJH&f7aSP2fNyqj(|_LR~nxyi>vtkp7hIW_$TNc*-t5Hc^SfI$PRG{vb=XgwXKF z(zPq7>A@Zi_{ZOgs$+SxF$2WGI|6VNyM8d$IgQuog)u$;y)C_&iONmZnoA$NV!Q^j z!Et()Pab=wvQX*_Nz$)z9y{qyrfR1`{0!(el}0r;=vB^j!BLx4SGQ)L<2PLgOYsY` zXerx;t5Wf^=Y`B^k6p{L9}w=Stk)P;44bXj&Rn#XZXMn)G0i^iEa-pfz$hZ}h0niC zfSa+-_Clr_PjwX;&Ins}+2S3ZJ5IU z$r6)-aMDK%+v3Td+DkLFUP~~+C;BVr6v7ItJ2J$`O1J~c&nUPWZ1(JPvD+2(wF`z| zhPn#IWh9aMigHCLX8oupeb!Hk?qGT;MxKjU8-~;f{dGhm`a*CU2j41w3?~}7CLM$J z5;hJ`;%7`OlCHyNMQQr6Hi17$9i#)=*GzX6dY0>am^2)JmsIwg**jrv{GBQKf@-^z zm1V%f%UbIFJ_5Z*nY+@BkwZwx8h%Msey(VUF|#f+q9@^yb-fL1w%U_Tb>orlmx=Vs z__1Y|uJqL*hqb&=njaZqW?~Z#COPm*_88?))e_^BqzI4)ZhN{zn`P-FX+jn9f=3+B zb*dR99?+mFf!oCKgpC|8eZlI(>6GbDqumF-&|0-wRy`i6~V4P}Yo; z#`%c-WZyA;)z4R3;q4E?6!qVQ<@xd9=fP(^K??r6S73~k$|Z$U>5?C6KGx`~y?&FX zT0*72lw62UaPgg_RtvTp?B45{@7pUa#nQ>bNPa0zkMhFW*}j^!mZ(#r6u%A&E=H%W z8sLR*2PD!KtSQfrlz#nOR@TO+ZXdFNJ`f2H&{|p$3>d3(d-zH}@OB~Cs?8D|uqbxX zCzW4@8Y|Y(Ze8TN;uolpzo7ar#K4WPw^;3Co^RZ~IqA3QwZBq-5%7O6WBVNaLxx1i zC>a$WXMN=GYvwl5(xUT#rl6$f`}o8T64uj%{f>cxLrvvv$$q+yY->g^thJK-ye({n zZB3eY)}U}4Oob{#(i47GHMMZvbY`_3q-Mbm@*b2!x5#P}dbaJSj3>qb{Bi82nII0U zQ-s^^oU=%xrn+}w;gu?SRPsDY~vONw&1 z=EPB%HRYhR!L#nHimB!`Ghev-R3{o+aplR=VfDBBUo$yKT2=q7AULwh*}mWa$=x*Q zSX&7GLhONyhLA*)*9wthS{HOhb!fLj!SrW%n8a(!1o!UPw1~amkf*vqeZYtHG>6ST z=K6%_Y$5oyS_H5fEs3wyU|5$^jYpqcWQo?W3UU)7Y1OS>{`%!X&HC#}8%17uBE|3J zxIo_qgk$U|UoLR+xA)SeyhW?)?IUajYd-eqqzu6t*)M{=9_kS3Bx@z@x6MIWSyL4f z%BXEB^DYh?oH>h`4_zlf{95DRh)&+ zs;TvZ+|?w_n-hOE_vVIhQ~a1%zFG6vyux@~`*SaT8j1X50mEl=Sa|#xZ`w<_1FcqgYQx|r1_ZkD; ziz-j`Ch7JiY+!l``Y1twZv!mh)t!hC4L-BKt*ROz1vc_9Ju?2rdppno;o&*cr>8{{=-ZL0!<$kjoq>;PImCrrhX!W-T9X=o9%i3NX@+v5k_BQwgze<*NXmioW8j30v@qw)-9?Vi z13jCcK&Q(LU~UZYMvNyga9<$id&Ezkj3EVl#&tn@&l?j@c`42pLFw-IrB1cP-6u&EPtw{Te3{w_UOd%OaX?ffrtUYK-X6u!r0!IRg+o$_6^2^H zqR+PKv^5kn8W))jkjK-v{RrUkawrBW8@Q&d1QHISUQ8exY$z{z>U9(*PPnwIb`pwEscur-(Bp+t zOcxH2x3*HJ+C5ZG|KiipgXFR*#R zD~i0O+~_{374Go~AhtUX=>?&N5aT$Tf8h#3>o5WTcGR&8s_l-_dRf$SqhVCif#;YW zDI8(6GS72i!FN5d-%9m-z##QO*{~4YZkHT-i<)+C-%#}ZS-IGjo)oJq`oU^%WVaMt zPl~ysK`!lg?lw9*JaOulD&v1Ls-=-MnTAM z+cp~eSLwWiTRvW1c5srM$Z$ILSzf2eTCS1W;1x19I$RwYrI+#bJ|H2ivmZ)Xk0%2Aq6UAHML@)zwnzd4$uXh6P3?1ItVbOKLzbT7(Mf;Hg>U?($&g23_9fHx zs8g;48xE1O!QOta?&jx-9+H3ri-t!m{OpPWo!X5c+^;U-L4WGAKA2buv)61M&*9tE z5Rin`UWy@gpv;)hvc5qAru*y_SBqPf9S(YIzUqZ0E(&(jkGz zUB5`tz%YNq!t68QK2B~kOqVVltVl(jfOkKkf>&c-(y3^}a(Z+vWgmf}>Q}|4L(Uj@ z=Tbe5(-DHI9D3dxE!@<0Rotz)Vf_tTmS9%U&i7Kw>0EhpIi6RRw23_F_~ z1UGpTQbI=wV%Com+a<52?*|wmNoX zM&|#H%t?G$tZzHgQv-^@)yqta;YcxB*MYsul~bR5RMl$2ORLUzIQdu<0TPMPb$%DK ztQPsGfoJ@N!G)@wCi2gl8`+wA%ep~^vdjYE<{GJY828#qN~s;fB=Xp&Pc#mly7z(k zm9a6yJM}mVVE6K(p6SA`T(cvdCvSpnFAnmu{~eN3j)#f+_8D=Cy$$)LONJf;RP^d{ z_WQYy4zZp&09y6KHze0~(}7P)SZfs}eTgNdAK8_zfD9Bg5~?W@JPAF;EUYJp zOWUN0fEkwlD8jZJg+bF3%e>YL<17gPmrmec@2FpX&iaT2h1xYNq6p0E44Q#5?zV#n zKrA*RmHDuSHW!9#?k?B9&`cZe9VximpY^TcTap1u?~I@Ujr&i(sAY7Cgd_K#_scHl zc8BCrxsV&v>dwELrh3Mk>X^Ctmz85_EADW7X1(X{F{ZKy2x79i?@oF z6h{>Qxu{Ef>XBWNhs{ct&~WNrYP_a8s*;1UNcI`$l$ZG7sWD$|mVri46@UKN^jr)9+ot)AY+v5{H)S0!@4E@^+qkuVOHgCZbwnD3gR0 zeUE|%jFzkTGQf}L(ZlRl>(f?Mk1Npy&EM13R=H=gxJw}MMv?(^7CHoTL^u;0E^rE~ zB&5CnrDx1#r#Mt--OohREoEya78=>Uof%ICAItq)?wVinAS4N@l&r*%$LdL2Eo9AxC{`t!>S}*k)B7{A+<; znZnzvFk&C(FDhUD`X3F=WwUicH5j3!_(!9GjyOPP*4@xH~)v`fv@C$TfXCqh5L-lw~rTtaW$9;l_eHlW2}+A-YrV=*lz6Wh8MK4V@BJL zr(~1g%HHLt*GFHP)~W_e;lHW^Rs-g$q6Lf7(o)=aV*NQ|DhPt2wE1QB0V6QPrklSJX_{Y^w1-XP?ize8<4*ckiZGrp)XgI`f zI^jm}yB|o96L`()-1?5a?*ajMdn;WC7b>m(L(Rz-`Ka>`dHeQbF8Vg|xXz+OdxXi@ z)Hjd$?TaMr=!~FhNkmqdE4&%sR(VlCbezWS{dE*m@!!Z1#H;t y<@g$=t`@gpRSGroHfnjMZZy1T`G7iP-k@K)#@qcLXp|t{KR^k2K$V!j|Nj6UIx=Yh literal 80994 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'frontend' project name with your own. +```bash +# yarn +yarn install + +# npm +npm install +``` -### Yarn +## Development + +Start the development server on http://localhost:3000 ```bash -# install dependencies -$ yarn install +# yarn +yarn dev + +# npm +npm run dev +``` -# serve with hot reload at localhost:3000 -$ yarn dev +## Production -# build for production and launch server -$ yarn build -$ yarn start +Build the application for production: -# generate static project -$ yarn generate +```bash +# yarn +yarn build + +# npm +npm run build ``` -Hot reload does not work in WSL2 (only WSL1, as of 1 April 2021). For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). +Locally preview production build: -### Docker +```bash +#yarn +yarn preview + +# npm +npm run preview +``` + +Checkout the [deployment documentation](https://v3.nuxtjs.org/guide/deploy/presets) for more information. + +## Docker A [Docker](https://www.docker.com/) configuration is also provided. The _Dockerfile_ is divided into four [build stages](https://docs.docker.com/develop/develop-images/multistage-build/): @@ -63,32 +86,6 @@ docker run --env-file $(pwd)/.env -it -p 3000:3000 localhost/whythawk/nuxt-for-f Then browse to http://localhost:3000 to see the homepage. -## Nuxt.js and components - -- [Nuxt.js](https://nuxtjs.org/) -- [Nuxt-property-decorator](https://github.com/nuxt-community/nuxt-property-decorator) -- [Vue Class Component](https://class-component.vuejs.org/) - -## TailwindCSS - -- [Tailwindcss](https://tailwindcss.com/) -- [Tailwind heroicons](https://heroicons.com/) -- [Tailwind typography](https://github.com/tailwindlabs/tailwindcss-typography) - -## Helpers - -- [Nuxt/content](https://content.nuxtjs.org/) -- [Vee-validate](https://vee-validate.logaretm.com/v3/) -- [Nuxt/PWA](https://pwa.nuxtjs.org/) - -Nuxt/PWA is a zero config PWA solution: - -- Registers a service worker for offline caching. -- Automatically generate manifest.json file. -- Automatically adds SEO friendly meta data with manifest integration. -- Automatically generates app icons with different sizes. -- Free background push notifications using OneSignal. - ## Licence This project is licensed under the terms of the MIT license. diff --git a/{{cookiecutter.project_slug}}/frontend/api.ts b/{{cookiecutter.project_slug}}/frontend/api.ts deleted file mode 100644 index 17af8872b9..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/api.ts +++ /dev/null @@ -1,74 +0,0 @@ -import axios from "axios" -import { - IUserProfile, - IUserProfileUpdate, - IUserProfileCreate, - IUserOpenProfileCreate, -} from "./interfaces" - -function authHeaders(token: string) { - return { - headers: { - Authorization: `Bearer ${token}`, - }, - } -} - -export const api = { - async logInGetToken(username: string, password: string) { - const params = new URLSearchParams() - params.append("username", username) - params.append("password", password) - return await axios.post( - `${process.env.apiUrl}/api/v1/login/access-token`, - params - ) - }, - async createMe(data: IUserOpenProfileCreate) { - return await axios.post(`${process.env.apiUrl}/api/v1/users/open`, data) - }, - async getMe(token: string) { - return await axios.get( - `${process.env.apiUrl}/api/v1/users/me`, - authHeaders(token) - ) - }, - async updateMe(token: string, data: IUserProfileUpdate) { - return await axios.put( - `${process.env.apiUrl}/api/v1/users/me`, - data, - authHeaders(token) - ) - }, - async getUsers(token: string) { - return await axios.get( - `${process.env.apiUrl}/api/v1/users/`, - authHeaders(token) - ) - }, - async updateUser(token: string, userId: number, data: IUserProfileUpdate) { - return await axios.put( - `${process.env.apiUrl}/api/v1/users/${userId}`, - data, - authHeaders(token) - ) - }, - async createUser(token: string, data: IUserProfileCreate) { - return await axios.post( - `${process.env.apiUrl}/api/v1/users/`, - data, - authHeaders(token) - ) - }, - async passwordRecovery(email: string) { - return await axios.post( - `${process.env.apiUrl}/api/v1/password-recovery/${email}` - ) - }, - async resetPassword(password: string, token: string) { - return await axios.post(`${process.env.apiUrl}/api/v1/reset-password/`, { - new_password: password, - token, - }) - }, -} diff --git a/{{cookiecutter.project_slug}}/frontend/api/auth.ts b/{{cookiecutter.project_slug}}/frontend/api/auth.ts new file mode 100644 index 0000000000..757279da36 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/api/auth.ts @@ -0,0 +1,133 @@ +import { + IUserProfile, + IUserProfileUpdate, + IUserProfileCreate, + IUserOpenProfileCreate, + ITokenResponse, + ISendEmail, + IMsg + } from "@/interfaces" +import { apiCore } from "./core" + +export const apiAuth = { + // TEST + async getTestText() { + return await useFetch(`${apiCore.url()}/users/tester`) + }, + // MEMBER AUTH N AUTH + async logInGetToken(username: string, password: string) { + // Version of this: https://github.com/unjs/ofetch/issues/37#issuecomment-1262226065 + // useFetch is borked, so you'll need to ignore errors https://github.com/unjs/ofetch/issues/37 + const params = new URLSearchParams() + params.append("username", username) + params.append("password", password) + return await useFetch(`${apiCore.url()}/login/access-token`, + { + method: "POST", + body: params, + // @ts-ignore + headers: { "Content-Disposition": params } + } + ) + }, + async getRefreshedToken(token: string) { + return await useFetch(`${apiCore.url()}/login/refresh-token`, + { + method: "POST", + headers: apiCore.headers(token) + } + ) + }, + async revokeRefreshedToken(token: string) { + return await useFetch(`${apiCore.url()}/login/revoke-token`, + { + method: "POST", + headers: apiCore.headers(token) + } + ) + }, + async createProfile(data: IUserOpenProfileCreate) { + return await useFetch(`${apiCore.url()}/users/`, + { + method: "POST", + body: data, + } + ) + }, + async getProfile(token: string) { + return await useFetch(`${apiCore.url()}/users/`, + { + headers: apiCore.headers(token) + } + ) + }, + async updateProfile(token: string, data: IUserProfileUpdate) { + return await useFetch(`${apiCore.url()}/users/`, + { + method: "PUT", + body: data, + headers: apiCore.headers(token) + } + ) + }, + async recoverPassword(email: string) { + return await useFetch(`${apiCore.url()}/password-recovery/${email}`, + { + method: "POST", + } + ) + }, + async resetPassword(password: string, token: string) { + return await useFetch(`${apiCore.url()}/reset-password`, + { + method: "POST", + body: { + new_password: password, + token, + } + } + ) + }, + async requestValidationEmail(token: string) { + return await useFetch(`${apiCore.url()}/users/send-validation-email`, + { + method: "POST", + headers: apiCore.headers(token) + } + ) + }, + async validateEmail(token: string, validation: string) { + return await useFetch(`${apiCore.url()}/users/validate-email`, + { + method: "POST", + body: { validation }, + headers: apiCore.headers(token) + } + ) + }, + async getAllUsers(token: string) { + return await useFetch(`${apiCore.url()}/users/all`, + { + headers: apiCore.headers(token) + } + ) + }, + async toggleUserState(token: string, data: IUserProfileUpdate) { + return await useFetch(`${apiCore.url()}/users/toggle-state`, + { + method: "POST", + body: data, + headers: apiCore.headers(token) + } + ) + }, + async createUserProfile(token: string, data: IUserProfileCreate) { + return await useFetch(`${apiCore.url()}/users/create`, + { + method: "POST", + body: data, + headers: apiCore.headers(token) + } + ) + }, +} \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/api/core.ts b/{{cookiecutter.project_slug}}/frontend/api/core.ts new file mode 100644 index 0000000000..9ee9e17fca --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/api/core.ts @@ -0,0 +1,14 @@ +export const apiCore = { + url(): string { + return useRuntimeConfig().public.apiUrl + }, + // WS(): string { + // return useRuntimeConfig().public.apiWS + // }, + headers(token: string) { + return { + "Cache-Control": "no-cache", + Authorization: `Bearer ${token}` + } + } +} \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/api/index.ts b/{{cookiecutter.project_slug}}/frontend/api/index.ts new file mode 100644 index 0000000000..840fc3ec19 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/api/index.ts @@ -0,0 +1,4 @@ +import { apiCore } from "./core" +import { apiAuth } from "./auth" + +export { apiCore, apiAuth } \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/app.vue b/{{cookiecutter.project_slug}}/frontend/app.vue new file mode 100644 index 0000000000..b3e93b2902 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/app.vue @@ -0,0 +1,7 @@ + diff --git a/{{cookiecutter.project_slug}}/frontend/app/router.scrollBehavior.ts b/{{cookiecutter.project_slug}}/frontend/app/router.scrollBehavior.ts deleted file mode 100644 index e2363bb71b..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/app/router.scrollBehavior.ts +++ /dev/null @@ -1,4 +0,0 @@ -export default function (to: any, from: any, savedPosition: any) { - // https://router.vuejs.org/guide/advanced/scroll-behavior.html - return { x: 0, y: 0 } -} diff --git a/{{cookiecutter.project_slug}}/frontend/assets/css/main.css b/{{cookiecutter.project_slug}}/frontend/assets/css/main.css new file mode 100644 index 0000000000..cc7b82d24b --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/assets/css/main.css @@ -0,0 +1,9 @@ +@tailwind base; + +html,body, #__nuxt, #__layout{ + height:100%!important; + width: 100%!important; + } + +@tailwind components; +@tailwind utilities; \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/assets/css/tailwind.css b/{{cookiecutter.project_slug}}/frontend/assets/css/tailwind.css deleted file mode 100644 index 60e84d58a2..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/assets/css/tailwind.css +++ /dev/null @@ -1,4 +0,0 @@ -/* ./assets/css/tailwind.css */ -@tailwind base; -@tailwind components; -@tailwind utilities; \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/HeadingBar.vue b/{{cookiecutter.project_slug}}/frontend/components/HeadingBar.vue deleted file mode 100644 index 58296964af..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/components/HeadingBar.vue +++ /dev/null @@ -1,21 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/components/Logo.vue b/{{cookiecutter.project_slug}}/frontend/components/Logo.vue deleted file mode 100644 index 9872bf6fa0..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/components/Logo.vue +++ /dev/null @@ -1,35 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/components/NavBar.vue b/{{cookiecutter.project_slug}}/frontend/components/NavBar.vue deleted file mode 100644 index 1a2a0fa132..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/components/NavBar.vue +++ /dev/null @@ -1,301 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/components/NotificationsBar.vue b/{{cookiecutter.project_slug}}/frontend/components/NotificationsBar.vue deleted file mode 100644 index a56eb07c9d..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/components/NotificationsBar.vue +++ /dev/null @@ -1,145 +0,0 @@ - - - diff --git a/{{cookiecutter.project_slug}}/frontend/components/alerts/Button.vue b/{{cookiecutter.project_slug}}/frontend/components/alerts/Button.vue new file mode 100644 index 0000000000..047f4ee407 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/alerts/Button.vue @@ -0,0 +1,14 @@ + + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/authentication/Navigation.vue b/{{cookiecutter.project_slug}}/frontend/components/authentication/Navigation.vue new file mode 100644 index 0000000000..c997a04b5c --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/authentication/Navigation.vue @@ -0,0 +1,61 @@ + + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/layouts/Notification.vue b/{{cookiecutter.project_slug}}/frontend/components/layouts/Notification.vue new file mode 100644 index 0000000000..4d7e251cb8 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/layouts/Notification.vue @@ -0,0 +1,49 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/layouts/default/Footer.vue b/{{cookiecutter.project_slug}}/frontend/components/layouts/default/Footer.vue new file mode 100644 index 0000000000..76888cd45e --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/layouts/default/Footer.vue @@ -0,0 +1,47 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/layouts/default/Navigation.vue b/{{cookiecutter.project_slug}}/frontend/components/layouts/default/Navigation.vue new file mode 100644 index 0000000000..e68c0d83b1 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/layouts/default/Navigation.vue @@ -0,0 +1,59 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/layouts/home/Navigation.vue b/{{cookiecutter.project_slug}}/frontend/components/layouts/home/Navigation.vue new file mode 100644 index 0000000000..3253e7dd9c --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/layouts/home/Navigation.vue @@ -0,0 +1,59 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/moderation/CheckState.vue b/{{cookiecutter.project_slug}}/frontend/components/moderation/CheckState.vue new file mode 100644 index 0000000000..796505b017 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/moderation/CheckState.vue @@ -0,0 +1,22 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/moderation/CheckToggle.vue b/{{cookiecutter.project_slug}}/frontend/components/moderation/CheckToggle.vue new file mode 100644 index 0000000000..3665f708d6 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/moderation/CheckToggle.vue @@ -0,0 +1,21 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/moderation/CreateUser.vue b/{{cookiecutter.project_slug}}/frontend/components/moderation/CreateUser.vue new file mode 100644 index 0000000000..5d9cc61aa8 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/moderation/CreateUser.vue @@ -0,0 +1,78 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/moderation/ToggleActive.vue b/{{cookiecutter.project_slug}}/frontend/components/moderation/ToggleActive.vue new file mode 100644 index 0000000000..c65693560c --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/moderation/ToggleActive.vue @@ -0,0 +1,38 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/moderation/ToggleMod.vue b/{{cookiecutter.project_slug}}/frontend/components/moderation/ToggleMod.vue new file mode 100644 index 0000000000..fb366751de --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/moderation/ToggleMod.vue @@ -0,0 +1,38 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/moderation/UserTable.vue b/{{cookiecutter.project_slug}}/frontend/components/moderation/UserTable.vue new file mode 100644 index 0000000000..555873ef24 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/moderation/UserTable.vue @@ -0,0 +1,58 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/settings/Password.vue b/{{cookiecutter.project_slug}}/frontend/components/settings/Password.vue new file mode 100644 index 0000000000..7d260e746c --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/settings/Password.vue @@ -0,0 +1,68 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/settings/Profile.vue b/{{cookiecutter.project_slug}}/frontend/components/settings/Profile.vue new file mode 100644 index 0000000000..7b3eb75f5d --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/settings/Profile.vue @@ -0,0 +1,82 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/components/settings/ValidateEmailButton.vue b/{{cookiecutter.project_slug}}/frontend/components/settings/ValidateEmailButton.vue new file mode 100644 index 0000000000..de659eb9a0 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/components/settings/ValidateEmailButton.vue @@ -0,0 +1,25 @@ + + + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/content/about.md b/{{cookiecutter.project_slug}}/frontend/content/about.md new file mode 100644 index 0000000000..2deaddf3cb --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/content/about.md @@ -0,0 +1,131 @@ +--- +title: Getting started with a base project +description: "Accelerate your next web development project with this FastAPI/Nuxt.js base project generator." +navigation: false +--- + +# Getting started with a base project + +Accelerate your next web development project with this FastAPI/Nuxt.js base project generator. + +This project is a comprehensively updated fork of [Sebastián Ramírez's](https://github.com/tiangolo) [Full Stack FastAPI and PostgreSQL Base Project Generator](https://github.com/tiangolo/full-stack-fastapi-postgresql). FastAPI is updated to version 0.88 (November 2022), SQLAlchemy to version 1.4.45 (December 2022), and the frontend to Nuxt 3 (November 2022). + +--- + +- [Key features](#key-features) +- [How to use it](#how-to-use-it) + - [Generate passwords](#generate-passwords) + - [Input variables](#input-variables) +- [How to deploy](#how-to-deploy) +- [More details](#more-details) +- [Licence](#licence) + +--- + +## Key features + +- **Docker Compose** integration and optimization for local development. +- [**FastAPI**](https://github.com/tiangolo/fastapi) backend with [Inboard](https://inboard.bws.bio/) one-repo Docker images: + - **Authentication** user management schemas, models, crud and apis already built, with OAuth2 JWT token support & default hashing. + - **SQLAlchemy** version 1.4 support for models. + - **MJML** templates for common email transactions. + - **Metadata Schema** based on [Dublin Core](https://www.dublincore.org/specifications/dublin-core/dcmi-terms/#section-3) for inheritance. + - **Common CRUD** support via generic inheritance. + - **Standards-based**: Based on (and fully compatible with) the open standards for APIs: [OpenAPI](https://github.com/OAI/OpenAPI-Specification) and [JSON Schema](http://json-schema.org/). + - [**Many other features**]("https://fastapi.tiangolo.com/features/"): including automatic validation, serialization, interactive documentation, etc. +- [**Nuxt/Vue 3**](https://nuxt.com/) frontend: + - **Authentication** with JWT and cookie management, including `access` and `refresh` tokens, + - **Authorisation** via middleware for page access, including logged in or superuser. + - **Model blog** project, with [Nuxt Content](https://content.nuxtjs.org/) for writing Markdown pages. + - **Form validation** with [Vee-Validate 4](https://vee-validate.logaretm.com/v4/). + - **State management** with [Pinia](https://pinia.vuejs.org/), and persistance with [Pinia PersistedState](https://prazdevs.github.io/pinia-plugin-persistedstate/). + - **CSS and templates** with [TailwindCSS](https://tailwindcss.com/), [HeroIcons](https://heroicons.com/), and [HeadlessUI](https://headlessui.com/). +- **PostgreSQL** database. +- **PGAdmin** for PostgreSQL database management. +- **Celery** worker that can import and use models and code from the rest of the backend selectively. +- **Flower** for Celery jobs monitoring. +- **Neo4j** graph database, including integration into the FastAPI base project. +- Load balancing between frontend and backend with **Traefik**, so you can have both under the same domain, separated by path, but served by different containers. +- Traefik integration, including Let's Encrypt **HTTPS** certificates automatic generation. +- GitLab **CI** (continuous integration), including frontend and backend testing. + +## How to use it + +Go to the directory where you want to create your project and run: + +```bash +pip install cookiecutter +cookiecutter https://github.com/whythawk/full-stack-fastapi-postgresql +``` + +### Generate passwords + +You will be asked to provide passwords and secret keys for several components. Open another terminal and run: + +```bash +openssl rand -hex 32 +# Outputs something like: 99d3b1f01aa639e4a76f4fc281fc834747a543720ba4c8a8648ba755aef9be7f +``` + +Copy the contents and use that as password / secret key. And run that again to generate another secure key. + +### Input variables + +The generator (cookiecutter) will ask you for some data, you might want to have at hand before generating the project. + +The input variables, with their default values (some auto generated) are: + +- `project_name`: The name of the project +- `project_slug`: The development friendly name of the project. By default, based on the project name +- `domain_main`: The domain in where to deploy the project for production (from the branch `production`), used by the load balancer, backend, etc. By default, based on the project slug. +- `domain_staging`: The domain in where to deploy while staging (before production) (from the branch `master`). By default, based on the main domain. +- `domain_base_api_url`: The domain url used by the frontend app for backend api calls. If deploying a localhost development environment, likely to be `http://localhost/api/v1` +- `domain_base_ws_url`: The domain url used by the frontend app for backend websocket calls. If deploying a localhost development environment, likely to be `ws://localhost/api/v1` + +- `docker_swarm_stack_name_main`: The name of the stack while deploying to Docker in Swarm mode for production. By default, based on the domain. +- `docker_swarm_stack_name_staging`: The name of the stack while deploying to Docker in Swarm mode for staging. By default, based on the domain. + +- `secret_key`: Backend server secret key. Use the method above to generate it. +- `first_superuser`: The first superuser generated, with it you will be able to create more users, etc. By default, based on the domain. +- `first_superuser_password`: First superuser password. Use the method above to generate it. +- `backend_cors_origins`: Origins (domains, more or less) that are enabled for CORS (Cross Origin Resource Sharing). This allows a frontend in one domain (e.g. `https://dashboard.example.com`) to communicate with this backend, that could be living in another domain (e.g. `https://api.example.com`). It can also be used to allow your local frontend (with a custom `hosts` domain mapping, as described in the project's `README.md`) that could be living in `http://dev.example.com:8080` to communicate with the backend at `https://stag.example.com`. Notice the `http` vs `https` and the `dev.` prefix for local development vs the "staging" `stag.` prefix. By default, it includes origins for production, staging and development, with ports commonly used during local development by several popular frontend frameworks (Vue with `:8080`, React, Angular). +- `smtp_port`: Port to use to send emails via SMTP. By default `587`. +- `smtp_host`: Host to use to send emails, it would be given by your email provider, like Mailgun, Sparkpost, etc. +- `smtp_user`: The user to use in the SMTP connection. The value will be given by your email provider. +- `smtp_password`: The password to be used in the SMTP connection. The value will be given by the email provider. +- `smtp_emails_from_email`: The email account to use as the sender in the notification emails, it could be something like `info@your-custom-domain.com`. +- `smtp_emails_from_name`: The email account name to use as the sender in the notification emails, it could be something like `Symona Adaro`. +- `smtp_emails_to_email`: The email account to use as the recipient for `contact us` emails, it could be something like `requests@your-custom-domain.com`. + +- `postgres_password`: Postgres database password. Use the method above to generate it. (You could easily modify it to use MySQL, MariaDB, etc). +- `pgadmin_default_user`: PGAdmin default user, to log-in to the PGAdmin interface. +- `pgadmin_default_user_password`: PGAdmin default user password. Generate it with the method above. + +- `neo4j_password`: Neo4j database password. Use the method above to generate it. + +- `traefik_constraint_tag`: The tag to be used by the internal Traefik load balancer (for example, to divide requests between backend and frontend) for production. Used to separate this stack from any other stack you might have. This should identify each stack in each environment (production, staging, etc). +- `traefik_constraint_tag_staging`: The Traefik tag to be used while on staging. +- `traefik_public_constraint_tag`: The tag that should be used by stack services that should communicate with the public. + +- `flower_auth`: Basic HTTP authentication for flower, in the form`user:password`. By default: "`admin:changethis`". + +- `sentry_dsn`: Key URL (DSN) of Sentry, for live error reporting. You can use the open source version or a free account. E.g.: `https://1234abcd:5678ef@sentry.example.com/30`. + +- `docker_image_prefix`: Prefix to use for Docker image names. If you are using GitLab Docker registry it would be based on your code repository. E.g.: `git.example.com/development-team/my-awesome-project/`. +- `docker_image_backend`: Docker image name for the backend. By default, it will be based on your Docker image prefix, e.g.: `git.example.com/development-team/my-awesome-project/backend`. And depending on your environment, a different tag will be appended ( `prod`, `stag`, `branch` ). So, the final image names used will be like: `git.example.com/development-team/my-awesome-project/backend:prod`. +- `docker_image_celeryworker`: Docker image for the celery worker. By default, based on your Docker image prefix. +- `docker_image_frontend`: Docker image for the frontend. By default, based on your Docker image prefix. + +## How to deploy + +This stack can be adjusted and used with several deployment options that are compatible with Docker Compose, but it is designed to be used in a cluster controlled with pure Docker in Swarm Mode with a Traefik main load balancer proxy handling automatic HTTPS certificates, using the ideas from DockerSwarm.rocks. + +Please refer to DockerSwarm.rocks to see how to deploy such a cluster in 20 minutes. + +## More details + +After using this generator, your new project (the directory created) will contain an extensive `README.md` with instructions for development, deployment, etc. You can pre-read [the project `README.md` template here too](./{{cookiecutter.project_slug}}/README.md). + +## Licence + +This project is licensed under the terms of the MIT license. diff --git a/{{cookiecutter.project_slug}}/frontend/content/article-content.md b/{{cookiecutter.project_slug}}/frontend/content/article-content.md deleted file mode 100644 index 4c370d5603..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/content/article-content.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: Article content -description: 'Empower your NuxtJS application with @nuxt/content module: write in a content/ directory and fetch your Markdown, JSON, YAML and CSV files through a MongoDB like API, acting as a Git-based Headless CMS.' ---- - -Empower your NuxtJS application with `@nuxtjs/content` module: write in a `content/` directory and fetch your Markdown, JSON, YAML and CSV files through a MongoDB like API, acting as a **Git-based Headless CMS**. - -## Writing content - -Learn how to write your `content/`, supporting Markdown, YAML, CSV and JSON: https://content.nuxtjs.org/writing. - -## Fetching content - -Learn how to fetch your content with `$content`: https://content.nuxtjs.org/fetching. - -## Displaying content - -Learn how to display your Markdown content with the `` component directly in your template: https://content.nuxtjs.org/displaying. \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md new file mode 100644 index 0000000000..6025a95c44 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20160708-theranos-and-elitism.md @@ -0,0 +1,51 @@ +--- +title: Theranos and the elitist belief in magical thinking +description: "If an African leader stood up at a meeting of European investors and declared that his country’s agricultural success could be attributed to traditional muthi, he would be regarded with an embarrassed sigh." +author: Gavin Chait +publishedAt: 2016-07-08 +categories: science, superstition +--- + +# Theranos and the elitist belief in magical thinking + +_Gavin Chait, 8 July 2016_ + +If an African leader stood up at a meeting of European investors and declared that his country’s agricultural success could be attributed to traditional _muthi_, he would be regarded with an embarrassed sigh. + +Except when it’s the British aristocrat, Prince Charles, and he’s talking about using homeopathy to treat his cows, then he’s treated with polite applause. + +Nowhere is that hypocrisy more visible than in the story of President Yahyah Jammeh of Gambia who claims his homeopathy can cure AIDS. He is supported by Ainsworths, a homeopathic dealer which operates under a royal seal of appointment from Prince Charles. + +Superstition is alive and well in the West, only instead of skins and furs, it wears a white lab coat and attempts to look respectable. + +There are two ways in which this is having a destructive effect on humanity. + +The first is in adaptation to Climate Change. + +There is near universal scientific support for the theory that global warming is real and caused by people. Greenpeace and other pressure groups are in full accord with scientific thinking here. + +Scientists also have near universal agreement on the benefits of genetically modified organisms. Greenpeace and other pressure groups refuse to accept scientific thinking on this topic, promoting the woolly world of ‘organic’ instead. + +Their thinking can be summarised as being that climate change confirms Greenpeace’s bias against large corporations as the cause of all evil, while accepting genetically modified crops as being healthy would contradict that belief, since it demonstrates that large corporations are key to solving the world’s problems. + +Each could be true, but Greenpeace insists that corporations can only be evil, hence their loathing of GM. + +This has become so worrying – being that it denies life-saving crops to African countries already suffering under drought and famine – that more than 109 Nobel Prize- winners have signed an open letter demanding that Greenpeace end their campaign against GM foods: “Scientific and regulatory agencies around the world have repeatedly and consistently found crops and foods improved through biotechnology to be as safe as, if not safer than those derived from any other method of production.” + +Magical thinking against real and working science prevents access for those people who would most benefit from it. + +The second destructive outcome is where magical thinking, dressed up in scientific garb, undermines real science. + +The worst and most recent of many such scandals involves Theranos, a US-based medical laboratory service. Theranos promised investors and medical professionals an end to painful and unpleasant needle-based blood specimen collection, and a world of cheap and easily available medical tests. + +The ‘secret’ was their heavily secret blood-testing device called Edison. Instead of traditional venepuncture (a needle, to the rest of us), they used a few drops of blood from a finger-stick puncture. Forget that actual medical professionals and scientists pointed out that such a small amount of blood, drawn from a peripheral part of the body, would produce wildly varying results no matter how clever the diagnostic machine, investors hurled $400 million at it. + +By 2014, the company – and its charming, blonde, blue-eyed CEO Elizabeth Holmes – was estimated to be worth $9 billion. + +Eventually, at the top of the hype train, the Food and Drug Administration began to look into the company, pointing out that there was almost no quality control and that - far from using some secret technology – most tests were being run on traditional devices. + +Theranos was forced to void all their test results. One of their main labs has been shut down. Last week Holmes was banned from operating any lab for two years. + +Along the way, Walmart fell for the hype and entered into a costly partnership, and hundreds of normally reasonable investors have lost their shirts. Theranos is now worth nothing. + +Magical thinking is not science and, given the range of challenges humanity faces, it’s time we took it a bit more seriously. diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md new file mode 100644 index 0000000000..117402f6e5 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20160721-lament-for-the-auther.md @@ -0,0 +1,53 @@ +--- +title: A lament for the author +description: "‘I’ve got a book out,’ says me hopefully, my hands twisted on the keyboard." +author: Gavin Chait +publishedAt: 2016-07-21 +categories: publishing +--- + +# A lament for the author + +_21 July 2016, Gavin Chait_ + +‘I’ve got a book out,’ says me hopefully, my hands twisted on the keyboard. + +Three years ago, I took a month off and set out to start and finish writing a novel. A science fiction novel set in Nigeria, no less. + +The first month allowed me to knock out 60,000 words. It took the next 18 months to make time to expand and polish that core. + +‘Nobody knows anything,’ said William Goldman in describing Hollywood’s ability to pick winners (and their investors’ regular ability to produce financial disasters). + +I’ve wanted to write novels since before I was in my teens, but it always seemed overly intimidating. Swatting out a few short articles a week is one thing. Sitting down and committing to produce 100,000 words is quite another. + +The not knowing is also about not knowing what’s involved in producing the thing, let alone whether it will be successful. + +And the economics are fairly harsh. If you want to make, for example, R20 from each book, you’re going to have to sell tens of thousands every year before you can quit your day-job. + +In exchange, you need to commit months of time unpaid in the insecure hope that what you produce is – at the very least – read. + +Each day an estimated thousand to two thousand books are published, adding to the 31 million paperbacks or the 3.1 million ebooks already available on Amazon.com. + +Maybe you’ve heard of the self-publishing phenomenon, and of the miraculous stories of people like Hugh Howey who self-published his Wool and Sand series and became a best-seller, or Mark Dawson’s series about an assassin which earns him $450,000 a year? + +Sadly, out of the well over half a million new novels published every year, very few are going to make that sort of money. For most writers, scribbling in any spare time they can manage, they are unlikely to experience that kind of success. + +There are numerous lightning strikes you need to navigate, many lottery tickets which need to be won in sequence before the final lottery of which ‘nobody knows anything’: why does one book become a best-seller but another, similar book, goes read only by close friends and relatives of the author? + +You can throw runes and try divining their meaning; is it price? Is it the cover? How about the day of week or time of day when it is launched? Summer or winter? + +George RR Martin published his first novel in 1983, but it wasn’t till 1996 that he released ‘A Game of Thrones’, and it wasn’t till the fourth in that series – 2005’s ‘A Feast for Crows’ – that he began to achieve success. The HBO ‘Game of Thrones’ adaptation of his novels has made him world famous. + +At the other end is Andy Weir who published his first novel, ‘The Martian’, in 2011, achieved runaway success immediately, and saw it turned into a madly successful movie in 2015. + +Writers can achieve success instantly, languish in obscurity and then achieve success, or languish in obscurity indefinitely. + +Figuring out what and who will connect is, well, you know already. + +Weirdly, the same is true of newspaper columns I’ve written. I’ve had relatively obscure topics explode my inbox, and others where I thought it would result in some controversy result in the gentle sound of crickets at midnight. + +Despite all the uncertainty - and the supposed destruction of mainstream publishers - 60% of all commercial sales still accrue to the big six publishers. In the US, that’s an astonishing $27 billion industry total a year. + +I hope you’re interested in reading about how my hero escapes from an orbital prison, survives the subsequent fall and crash-landing in a small Nigerian village, and escapes the interest of a local warlord. + +Continues me, ‘It’ll be out on Friday. Like a real book, with pages and everything. It’s called “Lament for the Fallen”, go buy it.’ diff --git a/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md b/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md new file mode 100644 index 0000000000..c9eb871a2b --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/content/blog/20170203-summer-of-99.md @@ -0,0 +1,49 @@ +--- +title: The summer of '99 +description: "I remember what it was like being a student after the fall of the Berlin Wall, the collapse of Communism, the release of Nelson Mandela, and the ignominious end of Apartheid." +author: Gavin Chait +publishedAt: 2017-02-03 +categories: hope, equality, liberty +--- + +# The summer of ‘99 + +I remember what it was like being a student after the fall of the Berlin Wall, the collapse of Communism, the release of Nelson Mandela, and the ignominious end of Apartheid. + +I remember the blue clarity of its summer skies. The way, driving from the university into the city, the green slopes of Table Mountain would open to the vast bright glare of the ocean. The smell of fynbos and roar of cicadas and of hope so tangible it felt as if everyone was bouncing as they walked. + +An entire generation raised on the notion that evil could be vanquished, that the brutalised could be made whole again, and that anything was possible. + +Some of us dedicated our lives to building Nelson Mandela’s vision of a ‘new South Africa’, working in the townships building houses, bringing healthcare and education, or creating jobs. Others, like Elon Musk and Mark Shuttleworth, headed to the US and became billionaires. + +It is symbolic of the time that social confidence – belief in the possible – was so high that some of the largest companies founded in recent years were all immigrants to the US. + +eBay founded by Frenchman Pierre Omidyar. Google founded by Russian Sergey Brin. Yahoo founded by Taiwanese Jerry Yang. And there are countless others, less well known but equally as dynamic and exciting. + +So confident was the period that Francis Fukuyama could pronounce the ‘end of history’, with an important caveat. He worried we would forget what it had cost us to achieve our freedom, and we would chafe with resentment as the established pecking order was disrupted. And then the despots would return. + +I remember when that darkness began to loom. It was 9 July 2000 when Nkosi Johnson rose to address the 13th International AIDS Conference in Durban. + +"Care for us and accept us - we are all human beings. We are normal. We have hands. We have feet. We can walk, we can talk, we have needs just like everyone else - don't be afraid of us - we are all the same!" + +Powerful words. Thabo Mbeki scowled in disgust and walked out. + +If you had to pick a moment when the forces of truth and science and knowledge were cast aside in favour of lies, ‘fake news’, bigotry and superstition, it was that moment. Thabo Mbeki deserves nothing but scorn and contempt. + +And I remember the sense of our world being utterly destroyed on 11 September 2001 when hatred and scorn emerged from the sixteenth century, and liberalism gave way to mutual suspicion. + +There was a brief window when being young was not about crisis and rebellion, but about hope and building. + +It would be nice to say, well, that’s just white racism. It isn’t only. There are violent suppressions of liberal values in almost every country. From Rodrigo Duterte’s massacre of alleged drug-dealers and users in the Philippines, to Recep Erdoğan’s arrest of tens of thousands of ordinary people in the aftermath of a coup attempt in Turkey. The African Union has backed mass withdrawal of all African countries from the International Criminal Court. + +This is the return of politics and history with a vengeance. + +But the summer of ’99 existed. It could exist again. + +The first lesson of the fall of the Berlin Wall is that sustained mass protest works (with the important proviso that – with a nod to Egypt of 2013, China of 1989, and South Africa of 1960 – any government willing to massacre its own protesting citizens can impose anything it likes). + +The second is that you should never stop building and believing. It is easy to run away, more difficult and dangerous to run towards. + +We need people who dream, who build and are willing to share those dreams and ambitions. Start businesses anyway. Organise protests anyway. Work together across the things that divide us anyway. + +Because everyone should get to have that summer. diff --git a/{{cookiecutter.project_slug}}/frontend/content/get-started.md b/{{cookiecutter.project_slug}}/frontend/content/get-started.md deleted file mode 100644 index 5aead98648..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/content/get-started.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: Getting started -description: 'Accelerate your next FastAPI Base Project Generator frontend development by replacing Vue.js with NuxtJS, an open source framework making web development simple and powerful.' ---- - -Accelerate your next FastAPI Base Project Generator frontend development by replacing Vue.js with NuxtJS, an open source framework making web development simple and powerful. - -## Build Setup - -First deploy FastAPI's [Base Project Generator](https://github.com/tiangolo/full-stack-fastapi-postgresql), then replace the entire `frontend` folder with this one, updating the `.env` settings, and `nuxt.config.js`, and `package.json` 'frontend' project name with your own. - -```bash -# install dependencies -$ yarn install - -# serve with hot reload at localhost:3000 -$ yarn dev - -# build for production and launch server -$ yarn build -$ yarn start - -# generate static project -$ yarn generate -``` - -Hot reload does not work in WSL2 (only WSL1, as of 1 April 2021). For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). - -## Nuxt.js and components - -- [Nuxt.js](https://nuxtjs.org/) -- [Nuxt-property-decorator](https://github.com/nuxt-community/nuxt-property-decorator) -- [Vue Class Component](https://class-component.vuejs.org/) - -## TailwindCSS - -- [Tailwindcss](https://tailwindcss.com/) -- [Tailwind heroicons](https://heroicons.com/) -- [Tailwind typography](https://github.com/tailwindlabs/tailwindcss-typography) - -## Helpers - -- [Nuxt/content](https://content.nuxtjs.org/) -- [Vee-validate](https://vee-validate.logaretm.com/v3/) -- [Nuxt/PWA](https://pwa.nuxtjs.org/) - -Nuxt/PWA is a zero config PWA solution: - -- Registers a service worker for offline caching. -- Automatically generate manifest.json file. -- Automatically adds SEO friendly meta data with manifest integration. -- Automatically generates app icons with different sizes. -- Free background push notifications using OneSignal. - -## Licence - -This project is licensed under the terms of the MIT license. \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/interfaces/index.ts b/{{cookiecutter.project_slug}}/frontend/interfaces/index.ts index 9a594b7242..e8783d0e7e 100644 --- a/{{cookiecutter.project_slug}}/frontend/interfaces/index.ts +++ b/{{cookiecutter.project_slug}}/frontend/interfaces/index.ts @@ -1,30 +1,30 @@ -/* eslint-disable camelcase */ -export interface IUserProfile { - email: string - is_active: boolean - is_superuser: boolean - full_name: string - id: number -} - -export interface IUserProfileUpdate { - email?: string - full_name?: string - password?: string - is_active?: boolean - is_superuser?: boolean -} +import { + IUserProfile, + IUserProfileUpdate, + IUserProfileCreate, + IUserOpenProfileCreate +} from "./profile" -export interface IUserProfileCreate { - email: string - full_name?: string - password?: string - is_active?: boolean - is_superuser?: boolean -} +import { + ITokenResponse, + ISendEmail, + IMsg, + INotification +} from "./utilities" -export interface IUserOpenProfileCreate { - email: string - full_name?: string - password: string +// https://stackoverflow.com/a/64782482/295606 +interface IKeyable { + [key: string]: any | any[] } + +export { + IKeyable, + IUserProfile, + IUserProfileUpdate, + IUserProfileCreate, + IUserOpenProfileCreate, + ITokenResponse, + ISendEmail, + IMsg, + INotification +} \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/interfaces/profile.ts b/{{cookiecutter.project_slug}}/frontend/interfaces/profile.ts new file mode 100644 index 0000000000..9d0ce61b65 --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/interfaces/profile.ts @@ -0,0 +1,32 @@ +/* eslint-disable camelcase */ +export interface IUserProfile { + id: string + email: string + email_validated: boolean + is_active: boolean + is_superuser: boolean + full_name: string +} + +export interface IUserProfileUpdate { + email?: string + full_name?: string + password?: string + is_active?: boolean + is_superuser?: boolean +} + +export interface IUserProfileCreate { + email: string + full_name?: string + password?: string + is_active?: boolean + is_superuser?: boolean +} + +export interface IUserOpenProfileCreate { + email: string + full_name?: string + password: string +} + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/interfaces/utilities.ts b/{{cookiecutter.project_slug}}/frontend/interfaces/utilities.ts new file mode 100644 index 0000000000..7cae73a58b --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/interfaces/utilities.ts @@ -0,0 +1,25 @@ +/* eslint-disable camelcase */ + +export interface ITokenResponse { + access_token: string + refresh_token: string + token_type: string +} + +export interface ISendEmail { + email: string + subject: string + content: string +} + +export interface IMsg { + msg: string +} + +export interface INotification { + uid?: string + title: string + content: string + icon?: "success" | "error" | "information" + showProgress?: boolean +} \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/jest.config.js b/{{cookiecutter.project_slug}}/frontend/jest.config.js deleted file mode 100644 index 152978fd64..0000000000 --- a/{{cookiecutter.project_slug}}/frontend/jest.config.js +++ /dev/null @@ -1,18 +0,0 @@ -module.exports = { - moduleNameMapper: { - '^@/(.*)$': '/$1', - '^~/(.*)$': '/$1', - '^vue$': 'vue/dist/vue.common.js', - }, - moduleFileExtensions: ['ts', 'js', 'vue', 'json'], - transform: { - '^.+\\.ts$': 'ts-jest', - '^.+\\.js$': 'babel-jest', - '.*\\.(vue)$': 'vue-jest', - }, - collectCoverage: true, - collectCoverageFrom: [ - '/components/**/*.vue', - '/pages/**/*.vue', - ], -} diff --git a/{{cookiecutter.project_slug}}/frontend/layouts/authentication.vue b/{{cookiecutter.project_slug}}/frontend/layouts/authentication.vue new file mode 100644 index 0000000000..28900c8fab --- /dev/null +++ b/{{cookiecutter.project_slug}}/frontend/layouts/authentication.vue @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/{{cookiecutter.project_slug}}/frontend/layouts/content.vue b/{{cookiecutter.project_slug}}/frontend/layouts/content.vue index 30f36dbfae..240696298f 100644 --- a/{{cookiecutter.project_slug}}/frontend/layouts/content.vue +++ b/{{cookiecutter.project_slug}}/frontend/layouts/content.vue @@ -1,14 +1,14 @@ +