From 317dadb23dfd5688f693ed38f4277023a8c88c61 Mon Sep 17 00:00:00 2001 From: benoit74 Date: Mon, 2 Oct 2023 10:16:16 +0200 Subject: [PATCH 01/21] Move scraper to a subfolder --- .github/workflows/Publish.yml | 5 ++++- .github/workflows/QA.yml | 6 +++++- .github/workflows/Tests.yml | 7 ++++-- .gitignore | 20 +++++++++--------- Dockerfile | 15 +++++++------ MANIFEST.in | 4 ---- .../dump_channel_to_fs.py | 0 get_js_deps.sh => scraper/get_js_deps.sh | 0 hatch_build.py => scraper/hatch_build.py | 0 pyproject.toml => scraper/pyproject.toml | 2 +- {src => scraper/src}/kolibri2zim/__about__.py | 0 {src => scraper/src}/kolibri2zim/__init__.py | 0 {src => scraper/src}/kolibri2zim/__main__.py | 0 {src => scraper/src}/kolibri2zim/constants.py | 0 {src => scraper/src}/kolibri2zim/database.py | 0 {src => scraper/src}/kolibri2zim/debug.py | 0 .../src}/kolibri2zim/entrypoint.py | 0 {src => scraper/src}/kolibri2zim/nodes.py | 0 .../src}/kolibri2zim/processing.py | 0 {src => scraper/src}/kolibri2zim/scraper.py | 0 .../src}/kolibri2zim/templates/about.html | 0 .../kolibri2zim/templates/assets/document.js | 0 .../templates/assets/epub_embed.css | 0 .../templates/assets/epub_embed.html | 0 .../templates/assets/epub_embed.js | 0 .../templates/assets/perseus_exercise.js | 0 .../src}/kolibri2zim/templates/audio.html | 0 .../src}/kolibri2zim/templates/base.html | 0 .../src}/kolibri2zim/templates/card.html | 0 .../src}/kolibri2zim/templates/document.html | 0 .../src}/kolibri2zim/templates/epub.html | 0 .../kolibri2zim/templates/kolibri-logo.png | Bin .../src}/kolibri2zim/templates/node_meta.html | 0 .../templates/perseus_exercise.html | 0 .../src}/kolibri2zim/templates/topic.html | 0 .../src}/kolibri2zim/templates/video.html | 0 tasks.py => scraper/tasks.py | 0 {tests => scraper/tests}/conftest.py | 0 .../tests}/test_sanitize_inputs.py | 0 39 files changed, 33 insertions(+), 26 deletions(-) delete mode 100644 MANIFEST.in rename dump_channel_to_fs.py => scraper/dump_channel_to_fs.py (100%) rename get_js_deps.sh => scraper/get_js_deps.sh (100%) rename hatch_build.py => scraper/hatch_build.py (100%) rename pyproject.toml => scraper/pyproject.toml (99%) rename {src => scraper/src}/kolibri2zim/__about__.py (100%) rename {src => scraper/src}/kolibri2zim/__init__.py (100%) rename {src => scraper/src}/kolibri2zim/__main__.py (100%) rename {src => scraper/src}/kolibri2zim/constants.py (100%) rename {src => scraper/src}/kolibri2zim/database.py (100%) rename {src => scraper/src}/kolibri2zim/debug.py (100%) rename {src => scraper/src}/kolibri2zim/entrypoint.py (100%) rename {src => scraper/src}/kolibri2zim/nodes.py (100%) rename {src => scraper/src}/kolibri2zim/processing.py (100%) rename {src => scraper/src}/kolibri2zim/scraper.py (100%) rename {src => scraper/src}/kolibri2zim/templates/about.html (100%) rename {src => scraper/src}/kolibri2zim/templates/assets/document.js (100%) rename {src => scraper/src}/kolibri2zim/templates/assets/epub_embed.css (100%) rename {src => scraper/src}/kolibri2zim/templates/assets/epub_embed.html (100%) rename {src => scraper/src}/kolibri2zim/templates/assets/epub_embed.js (100%) rename {src => scraper/src}/kolibri2zim/templates/assets/perseus_exercise.js (100%) rename {src => scraper/src}/kolibri2zim/templates/audio.html (100%) rename {src => scraper/src}/kolibri2zim/templates/base.html (100%) rename {src => scraper/src}/kolibri2zim/templates/card.html (100%) rename {src => scraper/src}/kolibri2zim/templates/document.html (100%) rename {src => scraper/src}/kolibri2zim/templates/epub.html (100%) rename {src => scraper/src}/kolibri2zim/templates/kolibri-logo.png (100%) rename {src => scraper/src}/kolibri2zim/templates/node_meta.html (100%) rename {src => scraper/src}/kolibri2zim/templates/perseus_exercise.html (100%) rename {src => scraper/src}/kolibri2zim/templates/topic.html (100%) rename {src => scraper/src}/kolibri2zim/templates/video.html (100%) rename tasks.py => scraper/tasks.py (100%) rename {tests => scraper/tests}/conftest.py (100%) rename {tests => scraper/tests}/test_sanitize_inputs.py (100%) diff --git a/.github/workflows/Publish.yml b/.github/workflows/Publish.yml index 7061f40..a59ca22 100644 --- a/.github/workflows/Publish.yml +++ b/.github/workflows/Publish.yml @@ -16,16 +16,19 @@ jobs: - name: Set up Python uses: actions/setup-python@v4 with: - python-version-file: pyproject.toml + python-version-file: scraper/pyproject.toml architecture: x64 - name: Build packages + working-directory: scraper run: | pip install -U pip build python -m build --sdist --wheel - name: Upload to PyPI uses: pypa/gh-action-pypi-publish@release/v1.8 + with: + packages-dir: scraper/dist/ - name: Build and push Docker image uses: openzim/docker-publish-action@v10 diff --git a/.github/workflows/QA.yml b/.github/workflows/QA.yml index a9d2172..b67dfb6 100644 --- a/.github/workflows/QA.yml +++ b/.github/workflows/QA.yml @@ -16,19 +16,23 @@ jobs: - name: Set up Python uses: actions/setup-python@v4 with: - python-version-file: pyproject.toml + python-version-file: scraper/pyproject.toml architecture: x64 - name: Install dependencies (and project) + working-directory: scraper run: | pip install -U pip pip install -e .[lint,check,scripts,test] - name: Check black formatting + working-directory: scraper run: inv lint-black - name: Check ruff + working-directory: scraper run: inv lint-ruff - name: Check pyright + working-directory: scraper run: inv check-pyright diff --git a/.github/workflows/Tests.yml b/.github/workflows/Tests.yml index 838269f..d0946ba 100644 --- a/.github/workflows/Tests.yml +++ b/.github/workflows/Tests.yml @@ -16,15 +16,17 @@ jobs: - name: Set up Python uses: actions/setup-python@v4 with: - python-version-file: pyproject.toml + python-version-file: scraper/pyproject.toml architecture: x64 - name: Install dependencies (and project) + working-directory: scraper run: | pip install -U pip pip install -e .[test,scripts] - name: Run the tests + working-directory: scraper run: inv coverage --args "-vvv" - name: Upload coverage report to codecov @@ -40,10 +42,11 @@ jobs: - name: Set up Python uses: actions/setup-python@v4 with: - python-version-file: pyproject.toml + python-version-file: scraper/pyproject.toml architecture: x64 - name: Ensure we can build Python targets + working-directory: scraper run: | pip install -U pip build python3 -m build --sdist --wheel diff --git a/.gitignore b/.gitignore index db971bd..38b98b3 100644 --- a/.gitignore +++ b/.gitignore @@ -368,16 +368,16 @@ pyrightconfig.json # assets that we download .dockerignore -src/kolibri2zim/templates/assets/bootstrap/ -src/kolibri2zim/templates/assets/pdfjs/ -src/kolibri2zim/templates/assets/videojs/ -src/kolibri2zim/templates/assets/jquery.min.js -src/kolibri2zim/templates/assets/ogvjs/ -src/kolibri2zim/templates/assets/videojs-ogvjs.js -src/kolibri2zim/templates/assets/epub.min.js -src/kolibri2zim/templates/assets/bootstrap-icons/ -src/kolibri2zim/templates/assets/jszip.min.js -src/kolibri2zim/templates/assets/perseus/ +scraper/src/kolibri2zim/templates/assets/bootstrap/ +scraper/src/kolibri2zim/templates/assets/pdfjs/ +scraper/src/kolibri2zim/templates/assets/videojs/ +scraper/src/kolibri2zim/templates/assets/jquery.min.js +scraper/src/kolibri2zim/templates/assets/ogvjs/ +scraper/src/kolibri2zim/templates/assets/videojs-ogvjs.js +scraper/src/kolibri2zim/templates/assets/epub.min.js +scraper/src/kolibri2zim/templates/assets/bootstrap-icons/ +scraper/src/kolibri2zim/templates/assets/jszip.min.js +scraper/src/kolibri2zim/templates/assets/perseus/ # output dir output diff --git a/Dockerfile b/Dockerfile index 2b96101..00f5e05 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,19 +12,20 @@ RUN apt-get update \ pip # Copy pyproject.toml and its dependencies -COPY pyproject.toml README.md get_js_deps.sh hatch_build.py /src/ -COPY src/kolibri2zim/__about__.py /src/src/kolibri2zim/__about__.py +COPY README.md /src/ +COPY scraper/pyproject.toml scraper/get_js_deps.sh scraper/hatch_build.py /src/scraper/ +COPY scraper/src/kolibri2zim/__about__.py /src/scraper/src/kolibri2zim/__about__.py # Install Python dependencies -RUN pip install --no-cache-dir /src +RUN pip install --no-cache-dir /src/scraper # Copy code + associated artifacts -COPY src /src/src -COPY *.md LICENSE *.py /src/ +COPY scraper/src /src/scraper/src +COPY *.md LICENSE /src/ # Install + cleanup -RUN pip install --no-cache-dir /src \ - && rm -rf /src +RUN pip install --no-cache-dir /src/scraper \ + && rm -rf /src/scraper # default output directory RUN mkdir -p /output diff --git a/MANIFEST.in b/MANIFEST.in deleted file mode 100644 index 15b313b..0000000 --- a/MANIFEST.in +++ /dev/null @@ -1,4 +0,0 @@ -include *.md -include get_js_deps.sh -include requirements.txt -recursive-include kolibri2zim * diff --git a/dump_channel_to_fs.py b/scraper/dump_channel_to_fs.py similarity index 100% rename from dump_channel_to_fs.py rename to scraper/dump_channel_to_fs.py diff --git a/get_js_deps.sh b/scraper/get_js_deps.sh similarity index 100% rename from get_js_deps.sh rename to scraper/get_js_deps.sh diff --git a/hatch_build.py b/scraper/hatch_build.py similarity index 100% rename from hatch_build.py rename to scraper/hatch_build.py diff --git a/pyproject.toml b/scraper/pyproject.toml similarity index 99% rename from pyproject.toml rename to scraper/pyproject.toml index a002b7b..3bc18d1 100644 --- a/pyproject.toml +++ b/scraper/pyproject.toml @@ -8,7 +8,7 @@ authors = [{ name = "Kiwix", email = "dev@kiwix.org" }] keywords = ["kiwix", "zim", "offline", "kolibri"] requires-python = ">=3.11" description = "Make ZIM file from Kolibri Channels" -readme = "README.md" +readme = "../README.md" license = { text = "GPL-3.0-or-later" } classifiers = [ "Programming Language :: Python :: 3", diff --git a/src/kolibri2zim/__about__.py b/scraper/src/kolibri2zim/__about__.py similarity index 100% rename from src/kolibri2zim/__about__.py rename to scraper/src/kolibri2zim/__about__.py diff --git a/src/kolibri2zim/__init__.py b/scraper/src/kolibri2zim/__init__.py similarity index 100% rename from src/kolibri2zim/__init__.py rename to scraper/src/kolibri2zim/__init__.py diff --git a/src/kolibri2zim/__main__.py b/scraper/src/kolibri2zim/__main__.py similarity index 100% rename from src/kolibri2zim/__main__.py rename to scraper/src/kolibri2zim/__main__.py diff --git a/src/kolibri2zim/constants.py b/scraper/src/kolibri2zim/constants.py similarity index 100% rename from src/kolibri2zim/constants.py rename to scraper/src/kolibri2zim/constants.py diff --git a/src/kolibri2zim/database.py b/scraper/src/kolibri2zim/database.py similarity index 100% rename from src/kolibri2zim/database.py rename to scraper/src/kolibri2zim/database.py diff --git a/src/kolibri2zim/debug.py b/scraper/src/kolibri2zim/debug.py similarity index 100% rename from src/kolibri2zim/debug.py rename to scraper/src/kolibri2zim/debug.py diff --git a/src/kolibri2zim/entrypoint.py b/scraper/src/kolibri2zim/entrypoint.py similarity index 100% rename from src/kolibri2zim/entrypoint.py rename to scraper/src/kolibri2zim/entrypoint.py diff --git a/src/kolibri2zim/nodes.py b/scraper/src/kolibri2zim/nodes.py similarity index 100% rename from src/kolibri2zim/nodes.py rename to scraper/src/kolibri2zim/nodes.py diff --git a/src/kolibri2zim/processing.py b/scraper/src/kolibri2zim/processing.py similarity index 100% rename from src/kolibri2zim/processing.py rename to scraper/src/kolibri2zim/processing.py diff --git a/src/kolibri2zim/scraper.py b/scraper/src/kolibri2zim/scraper.py similarity index 100% rename from src/kolibri2zim/scraper.py rename to scraper/src/kolibri2zim/scraper.py diff --git a/src/kolibri2zim/templates/about.html b/scraper/src/kolibri2zim/templates/about.html similarity index 100% rename from src/kolibri2zim/templates/about.html rename to scraper/src/kolibri2zim/templates/about.html diff --git a/src/kolibri2zim/templates/assets/document.js b/scraper/src/kolibri2zim/templates/assets/document.js similarity index 100% rename from src/kolibri2zim/templates/assets/document.js rename to scraper/src/kolibri2zim/templates/assets/document.js diff --git a/src/kolibri2zim/templates/assets/epub_embed.css b/scraper/src/kolibri2zim/templates/assets/epub_embed.css similarity index 100% rename from src/kolibri2zim/templates/assets/epub_embed.css rename to scraper/src/kolibri2zim/templates/assets/epub_embed.css diff --git a/src/kolibri2zim/templates/assets/epub_embed.html b/scraper/src/kolibri2zim/templates/assets/epub_embed.html similarity index 100% rename from src/kolibri2zim/templates/assets/epub_embed.html rename to scraper/src/kolibri2zim/templates/assets/epub_embed.html diff --git a/src/kolibri2zim/templates/assets/epub_embed.js b/scraper/src/kolibri2zim/templates/assets/epub_embed.js similarity index 100% rename from src/kolibri2zim/templates/assets/epub_embed.js rename to scraper/src/kolibri2zim/templates/assets/epub_embed.js diff --git a/src/kolibri2zim/templates/assets/perseus_exercise.js b/scraper/src/kolibri2zim/templates/assets/perseus_exercise.js similarity index 100% rename from src/kolibri2zim/templates/assets/perseus_exercise.js rename to scraper/src/kolibri2zim/templates/assets/perseus_exercise.js diff --git a/src/kolibri2zim/templates/audio.html b/scraper/src/kolibri2zim/templates/audio.html similarity index 100% rename from src/kolibri2zim/templates/audio.html rename to scraper/src/kolibri2zim/templates/audio.html diff --git a/src/kolibri2zim/templates/base.html b/scraper/src/kolibri2zim/templates/base.html similarity index 100% rename from src/kolibri2zim/templates/base.html rename to scraper/src/kolibri2zim/templates/base.html diff --git a/src/kolibri2zim/templates/card.html b/scraper/src/kolibri2zim/templates/card.html similarity index 100% rename from src/kolibri2zim/templates/card.html rename to scraper/src/kolibri2zim/templates/card.html diff --git a/src/kolibri2zim/templates/document.html b/scraper/src/kolibri2zim/templates/document.html similarity index 100% rename from src/kolibri2zim/templates/document.html rename to scraper/src/kolibri2zim/templates/document.html diff --git a/src/kolibri2zim/templates/epub.html b/scraper/src/kolibri2zim/templates/epub.html similarity index 100% rename from src/kolibri2zim/templates/epub.html rename to scraper/src/kolibri2zim/templates/epub.html diff --git a/src/kolibri2zim/templates/kolibri-logo.png b/scraper/src/kolibri2zim/templates/kolibri-logo.png similarity index 100% rename from src/kolibri2zim/templates/kolibri-logo.png rename to scraper/src/kolibri2zim/templates/kolibri-logo.png diff --git a/src/kolibri2zim/templates/node_meta.html b/scraper/src/kolibri2zim/templates/node_meta.html similarity index 100% rename from src/kolibri2zim/templates/node_meta.html rename to scraper/src/kolibri2zim/templates/node_meta.html diff --git a/src/kolibri2zim/templates/perseus_exercise.html b/scraper/src/kolibri2zim/templates/perseus_exercise.html similarity index 100% rename from src/kolibri2zim/templates/perseus_exercise.html rename to scraper/src/kolibri2zim/templates/perseus_exercise.html diff --git a/src/kolibri2zim/templates/topic.html b/scraper/src/kolibri2zim/templates/topic.html similarity index 100% rename from src/kolibri2zim/templates/topic.html rename to scraper/src/kolibri2zim/templates/topic.html diff --git a/src/kolibri2zim/templates/video.html b/scraper/src/kolibri2zim/templates/video.html similarity index 100% rename from src/kolibri2zim/templates/video.html rename to scraper/src/kolibri2zim/templates/video.html diff --git a/tasks.py b/scraper/tasks.py similarity index 100% rename from tasks.py rename to scraper/tasks.py diff --git a/tests/conftest.py b/scraper/tests/conftest.py similarity index 100% rename from tests/conftest.py rename to scraper/tests/conftest.py diff --git a/tests/test_sanitize_inputs.py b/scraper/tests/test_sanitize_inputs.py similarity index 100% rename from tests/test_sanitize_inputs.py rename to scraper/tests/test_sanitize_inputs.py From 01612ee3bcbf40830683e9604266a15851dbccc7 Mon Sep 17 00:00:00 2001 From: benoit74 Date: Mon, 2 Oct 2023 13:15:57 +0200 Subject: [PATCH 02/21] Minimal Vue.js-based UI pushed to the ZIM --- Dockerfile | 12 + README.md | 4 +- scraper/get_js_deps.sh | 2 +- scraper/pyproject.toml | 3 + scraper/src/kolibri2zim/database.py | 2 +- scraper/src/kolibri2zim/entrypoint.py | 10 + scraper/src/kolibri2zim/schemas.py | 30 + scraper/src/kolibri2zim/scraper.py | 241 +- scraper/src/kolibri2zim/templates/about.html | 2 +- scraper/src/kolibri2zim/templates/audio.html | 12 +- scraper/src/kolibri2zim/templates/base.html | 18 +- scraper/src/kolibri2zim/templates/card.html | 8 - .../src/kolibri2zim/templates/document.html | 7 +- scraper/src/kolibri2zim/templates/epub.html | 10 - .../templates/perseus_exercise.html | 54 +- scraper/src/kolibri2zim/templates/topic.html | 20 - scraper/src/kolibri2zim/templates/video.html | 12 +- zimui/.eslintignore | 0 zimui/.eslintrc.cjs | 32 + zimui/.gitignore | 13 + zimui/.prettierignore | 5 + zimui/.prettierrc.json | 4 + zimui/index.html | 13 + zimui/package.json | 57 + zimui/postcss.config.js | 5 + zimui/public/.gitignore | 4 + zimui/public/vite.svg | 1 + zimui/src/App.vue | 32 + .../a886c13e06bd9f7fed9e661b31897edc.png | Bin 0 -> 37320 bytes zimui/src/assets/card_default_bg.png | Bin 0 -> 132430 bytes .../ebe9e09a4d0e417b051d60ff9891f98e.png | Bin 0 -> 46710 bytes zimui/src/components/TopicCard.vue | 140 + zimui/src/components/TopicHome.vue | 150 + zimui/src/components/TopicSection.vue | 134 + zimui/src/fonts/lato-v24-latin-regular.ttf | Bin 0 -> 60540 bytes zimui/src/fonts/lato-v24-latin-regular.woff2 | Bin 0 -> 23580 bytes zimui/src/main.ts | 33 + zimui/src/pages/HomePage.vue | 38 + zimui/src/routes.ts | 6 + zimui/src/stores/main.ts | 39 + zimui/src/style.css | 14 + zimui/src/vite-env.d.ts | 1 + zimui/tsconfig.json | 21 + zimui/tsconfig.node.json | 10 + zimui/vite.config.ts | 14 + zimui/yarn.lock | 3165 +++++++++++++++++ 46 files changed, 4254 insertions(+), 124 deletions(-) create mode 100644 scraper/src/kolibri2zim/schemas.py delete mode 100644 scraper/src/kolibri2zim/templates/card.html delete mode 100644 scraper/src/kolibri2zim/templates/epub.html delete mode 100644 scraper/src/kolibri2zim/templates/topic.html create mode 100644 zimui/.eslintignore create mode 100644 zimui/.eslintrc.cjs create mode 100644 zimui/.gitignore create mode 100644 zimui/.prettierignore create mode 100644 zimui/.prettierrc.json create mode 100644 zimui/index.html create mode 100644 zimui/package.json create mode 100644 zimui/postcss.config.js create mode 100644 zimui/public/.gitignore create mode 100644 zimui/public/vite.svg create mode 100644 zimui/src/App.vue create mode 100644 zimui/src/assets/a886c13e06bd9f7fed9e661b31897edc.png create mode 100644 zimui/src/assets/card_default_bg.png create mode 100644 zimui/src/assets/ebe9e09a4d0e417b051d60ff9891f98e.png create mode 100644 zimui/src/components/TopicCard.vue create mode 100644 zimui/src/components/TopicHome.vue create mode 100644 zimui/src/components/TopicSection.vue create mode 100644 zimui/src/fonts/lato-v24-latin-regular.ttf create mode 100644 zimui/src/fonts/lato-v24-latin-regular.woff2 create mode 100644 zimui/src/main.ts create mode 100644 zimui/src/pages/HomePage.vue create mode 100644 zimui/src/routes.ts create mode 100644 zimui/src/stores/main.ts create mode 100644 zimui/src/style.css create mode 100644 zimui/src/vite-env.d.ts create mode 100644 zimui/tsconfig.json create mode 100644 zimui/tsconfig.node.json create mode 100644 zimui/vite.config.ts create mode 100644 zimui/yarn.lock diff --git a/Dockerfile b/Dockerfile index 00f5e05..f9a4598 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,3 +1,10 @@ +FROM node:20-alpine as zimui + +WORKDIR /src +COPY zimui /src +RUN yarn install --frozen-lockfile +RUN yarn build + FROM python:3.11-bookworm LABEL org.opencontainers.image.source https://github.com/openzim/kolibri @@ -27,8 +34,13 @@ COPY *.md LICENSE /src/ RUN pip install --no-cache-dir /src/scraper \ && rm -rf /src/scraper +# Copy zimui build output +COPY --from=zimui /src/dist /src/zimui + # default output directory RUN mkdir -p /output WORKDIR /output +ENV KOLIBRI_ZIMUI_DIST=/src/zimui + CMD ["kolibri2zim", "--help"] diff --git a/README.md b/README.md index 3b3a3e3..109c136 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ Installation ## Virtualenv -`kolibri2zim` is a Python3 software. If you are not using the +`kolibri2zim` is a Python3 software. If you are not using the [Docker](https://docker.com) image, you are advised to use it in a virtual environment to avoid installing software dependencies on your system. @@ -59,6 +59,8 @@ Before contributing be sure to check out the To test epubs and pdfs rendering, a potential usefull command is: ```bash kolibri2zim --name "Biblioteca Elejandria" --output /output --tmp-dir /tmp --zim-file Biblioteca_Elejandria.zim --channel-id "fed29d60e4d84a1e8dcfc781d920b40e" --node-ids 'd92c07655128458f8248416154b18a68,89fe2f86ee3f4fbaa7fb2bf9bd56d088,75f99e6b97d14b14a4e74762ad77391f,89fe2f86ee3f4fbaa7fb2bf9bd56d088' + +hatch run kolibri2zim --name "Biblioteca Elejandria" --output output --zim-file Biblioteca_Elejandria.zim --channel-id "fed29d60e4d84a1e8dcfc781d920b40e" --node-ids 'd92c07655128458f8248416154b18a68,89fe2f86ee3f4fbaa7fb2bf9bd56d088,75f99e6b97d14b14a4e74762ad77391f,89fe2f86ee3f4fbaa7fb2bf9bd56d088' ``` License diff --git a/scraper/get_js_deps.sh b/scraper/get_js_deps.sh index 8954e5b..00fa103 100755 --- a/scraper/get_js_deps.sh +++ b/scraper/get_js_deps.sh @@ -100,7 +100,7 @@ mkdir -p $ASSETS_PATH/perseus mv standalone-perseus-1.1.4/* $ASSETS_PATH/perseus rm -rf standalone-perseus-1.1.4/ rm -f v1.1.4.zip -sed -i $SEDEXT '1s/""/"assets\/perseus\/"/' $ASSETS_PATH/perseus/build/frame-perseus.js +sed -i $SEDEXT '1s/""/"..\/assets\/perseus\/"/' $ASSETS_PATH/perseus/build/frame-perseus.js if command -v fix_ogvjs_dist > /dev/null; then echo "fixing JS files" diff --git a/scraper/pyproject.toml b/scraper/pyproject.toml index 3bc18d1..daabde1 100644 --- a/scraper/pyproject.toml +++ b/scraper/pyproject.toml @@ -22,6 +22,8 @@ dependencies = [ "pif==0.8.2", "beautifulsoup4==4.9.3", "retrying==1.3.4", + "pydantic==2.4.2", + "python-slugify==8.0.1", ] dynamic = ["version"] @@ -105,6 +107,7 @@ all = "inv checkall --args '{args}'" [tool.black] line-length = 88 target-version = ['py311'] +exclude="(src/kolibri2zim/templates/.*|.hatch/.*)" [tool.ruff] target-version = "py311" diff --git a/scraper/src/kolibri2zim/database.py b/scraper/src/kolibri2zim/database.py index 7ecfa6e..bdcc17d 100644 --- a/scraper/src/kolibri2zim/database.py +++ b/scraper/src/kolibri2zim/database.py @@ -102,7 +102,7 @@ def get_node_children(self, node_id, left=None, right=None): right = node["right"] for row in self.get_rows( - "SELECT id, title, kind " + "SELECT id, title, description, kind, lft as left, rght as right " "FROM content_contentnode WHERE lft > ? AND rght < ? " "AND parent_id=?" "ORDER BY level ASC", diff --git a/scraper/src/kolibri2zim/entrypoint.py b/scraper/src/kolibri2zim/entrypoint.py index 34bc34b..b5f89a3 100755 --- a/scraper/src/kolibri2zim/entrypoint.py +++ b/scraper/src/kolibri2zim/entrypoint.py @@ -2,6 +2,7 @@ # vim: ai ts=4 sts=4 et sw=4 nu import argparse +import os import sys from kolibri2zim.constants import NAME, SCRAPER, Global, get_logger, set_debug @@ -127,6 +128,15 @@ def main(): "Receives all data (storage space)", ) + parser.add_argument( + "--zimui-dist", + type=str, + help=( + "Directory containing Vite build output from the Zim UI Vue.JS application" + ), + default=os.getenv("KOLIBRI_ZIMUI_DIST", "../zimui/dist"), + ) + parser.add_argument( "--zim-file", help="ZIM file name (based on --name if not provided)", diff --git a/scraper/src/kolibri2zim/schemas.py b/scraper/src/kolibri2zim/schemas.py new file mode 100644 index 0000000..196b413 --- /dev/null +++ b/scraper/src/kolibri2zim/schemas.py @@ -0,0 +1,30 @@ +from pydantic import BaseModel + + +class TopicSubSection(BaseModel): + slug: str + title: str + description: str + kind: str + thumbnail: str | None + + +class TopicSection(BaseModel): + slug: str + title: str + description: str + kind: str + thumbnail: str | None + subsections: list[TopicSubSection] + + +class Topic(BaseModel): + parents: list[str] + title: str + description: str + sections: list[TopicSection] + thumbnail: str | None + + +class Channel(BaseModel): + root: str diff --git a/scraper/src/kolibri2zim/scraper.py b/scraper/src/kolibri2zim/scraper.py index e812305..7465baf 100644 --- a/scraper/src/kolibri2zim/scraper.py +++ b/scraper/src/kolibri2zim/scraper.py @@ -17,6 +17,7 @@ from bs4 import BeautifulSoup from kiwixstorage import KiwixStorage from pif import get_public_ip +from slugify import slugify from zimscraperlib.constants import ( MAXIMUM_DESCRIPTION_METADATA_LENGTH as MAX_DESC_LENGTH, ) @@ -40,6 +41,7 @@ get_size_and_mime, safer_reencode, ) +from kolibri2zim.schemas import Channel, Topic, TopicSection, TopicSubSection logger = get_logger() options = [ @@ -131,6 +133,7 @@ def go(option): if go("tmp_dir"): Path(go("tmp_dir")).mkdir(parents=True, exist_ok=True) # pyright: ignore self.build_dir = Path(tempfile.mkdtemp(dir=go("tmp_dir"))) + self.zimui_dist = Path(go("zimui_dist") or "../zimui/dist") # performances options self.nb_threads = int(go("threads") or 1) @@ -155,6 +158,9 @@ def go(option): loader=jinja2.FileSystemLoader(str(self.templates_dir)), autoescape=True ) + self.nodes_slugs_list = [] + self.nodes_slugs_dict = {} + @property def templates_dir(self): return ROOT_DIR.joinpath("templates") @@ -188,6 +194,95 @@ def schedule_node(item): if self.node_ids is None or node["id"] in self.node_ids: schedule_node((node["id"], node["kind"])) + def get_or_create_node_slug(self, node) -> str: + if node["id"] in self.nodes_slugs_dict: + return self.nodes_slugs_dict[node["id"]] + slug = slugify(str(node.get("title", node["id"]))) + if slug in self.nodes_slugs_list: + suffix = 1 + while True: + if f"{slug}_{suffix}" not in self.nodes_slugs_list: + break + suffix += 1 + slug = f"{slug}_{suffix}" + self.nodes_slugs_list.append(slug) + self.nodes_slugs_dict[node["id"]] = slug + return slug + + def write_topic_json(self, node_id): + node = self.db.get_node(node_id=node_id, with_parents=True, with_children=True) + slug = self.get_or_create_node_slug(node) + Path("/output/topics").mkdir(exist_ok=True) + + with open(f"/output/topics/{slug}.json", "w") as fh: + json.dump( + Topic( + parents=[ + self.get_or_create_node_slug(parent) + for parent in node["parents"] + ], + title=node["title"], + description=node["description"], + sections=[ + TopicSection( + slug=self.get_or_create_node_slug(section), + title=section["title"], + description=section["description"], + kind=section["kind"], + thumbnail=self.db.get_thumbnail_name(section["id"]), + subsections=[ + TopicSubSection( + slug=self.get_or_create_node_slug(subsection), + title=subsection["title"], + description=subsection["description"], + kind=subsection["kind"], + thumbnail=self.db.get_thumbnail_name( + subsection["id"] + ), + ) + for subsection in self.db.get_node_children( + section["id"], + section["left"], + section["right"], + ) + ], + ) + for section in node["children"] + ], + thumbnail=self.db.get_thumbnail_name(node_id), + ).model_dump(), + fh, + indent=2, + ) + + def write_channel_json(self): + node = self.db.get_node( + node_id=self.root_id, with_parents=True, with_children=True + ) + with open("/output/channel.json", "w") as fh: + json.dump( + Channel(root=self.get_or_create_node_slug(node)).model_dump(), + fh, + indent=2, + ) + + def add_channel_json(self): + node = self.db.get_node( + node_id=self.root_id, with_parents=True, with_children=True + ) + + with self.creator_lock: + self.creator.add_item_for( + path="channel.json", + title=node["title"], + content=json.dumps( + Channel(root=self.get_or_create_node_slug(node)).model_dump(), + indent=2, + ), + mimetype="application/json", + is_front=False, + ) + def add_node(self, item): """process a content node from the tuple in queue""" node_id, kind = item @@ -202,18 +297,18 @@ def add_node(self, item): # add thumbnail to zim if there's one for this node thumbnail = self.db.get_node_thumbnail(node_id) if thumbnail: - self.funnel_file(thumbnail["id"], thumbnail["ext"]) + self.funnel_file(thumbnail["id"], thumbnail["ext"], "thumbnails/") # fire the add_{kind}_node() method which will actually process it handler(node_id) - def funnel_file(self, fid, fext): + def funnel_file(self, fid, fext, path_prefix=""): """directly add a Kolibri file to the ZIM using same name""" url, fname = get_kolibri_url_for(fid, fext) size, mimetype = get_size_and_mime(url) item_kw = { - "path": fname, + "path": path_prefix + fname, "title": "", "mimetype": mimetype, "delete_fpath": True, @@ -307,19 +402,55 @@ def add_topic_node(self, node_id): Topic nodes are used only for hierarchy and solely contains metadata""" # fetch details including parents for breadcrumb and children to link to - node = self.db.get_node(node_id, with_parents=True, with_children=True) + node = self.db.get_node(node_id=node_id, with_parents=True, with_children=True) + node_slug = self.get_or_create_node_slug(node) - html = self.jinja2_env.get_template("topic.html").render( - node_id=node_id, **node - ) with self.creator_lock: self.creator.add_item_for( - path=node_id, + path=f"topics/{node_slug}.json", title=node["title"], - content=html, - mimetype="text/html", + content=json.dumps( + Topic( + parents=[ + self.get_or_create_node_slug(parent) + for parent in node["parents"] + ], + title=node["title"], + description=node["description"], + sections=[ + TopicSection( + slug=self.get_or_create_node_slug(section), + title=section["title"], + description=section["description"], + kind=section["kind"], + thumbnail=self.db.get_thumbnail_name(section["id"]), + subsections=[ + TopicSubSection( + slug=self.get_or_create_node_slug(subsection), + title=subsection["title"], + description=subsection["description"], + kind=subsection["kind"], + thumbnail=self.db.get_thumbnail_name( + subsection["id"] + ), + ) + for subsection in self.db.get_node_children( + section["id"], + section["left"], + section["right"], + ) + ], + ) + for section in node["children"] + ], + thumbnail=self.db.get_thumbnail_name(node_id), + ).model_dump(), + indent=2, + ), + mimetype="application/json", + is_front=False, ) - logger.debug(f"Added topic #{node_id}") + logger.debug(f"Added topic #{node_id} - {node_slug}") def add_video_node(self, node_id): """Add content from this `video` node to zim @@ -424,6 +555,7 @@ def add_video_node(self, node_id): ) node = self.db.get_node(node_id, with_parents=True) + node_slug = self.get_or_create_node_slug(node) html = self.jinja2_env.get_template("video.html").render( node_id=node_id, video_filename=video_filename, @@ -435,12 +567,13 @@ def add_video_node(self, node_id): ) with self.creator_lock: self.creator.add_item_for( - path=node_id, + path=f"static/{node_slug}", title=node["title"], content=html, mimetype="text/html", + is_front=True, ) - logger.debug(f"Added video #{node_id}") + logger.debug(f"Added video #{node_id} - {node_slug}") def add_video_upon_completion(self, future): """adds the converted video inside this future to the zim @@ -528,6 +661,7 @@ def add_audio_node(self, node_id): self.funnel_file(file["id"], file["ext"]) node = self.db.get_node(node_id, with_parents=True) + node_slug = self.get_or_create_node_slug(node) html = self.jinja2_env.get_template("audio.html").render( node_id=node_id, filename=filename_for(file), @@ -538,12 +672,13 @@ def add_audio_node(self, node_id): ) with self.creator_lock: self.creator.add_item_for( - path=node_id, + path=f"static/{node_slug}", title=node["title"], content=html, mimetype="text/html", + is_front=True, ) - logger.debug(f"Added audio #{node_id}") + logger.debug(f"Added audio #{node_id} - {node_slug}") def add_exercise_node(self, node_id): """Add content from this `exercise` node to zim @@ -590,22 +725,25 @@ def add_exercise_node(self, node_id): ) assessment_items.append(perseus_content) + node = self.db.get_node(node_id, with_parents=True, with_children=False) + node_slug = self.get_or_create_node_slug(node) + # add all support files to ZIM for ark_member in zip_ark.namelist(): if ark_member == manifest_name: continue - path = f"{node_id}/{ark_member}" + path = f"static/{node_id}/{ark_member}" with self.creator_lock: self.creator.add_item_for( path=path, title="", content=read_from_zip(zip_ark, ark_member), + is_front=False, ) logger.debug(f"Added exercise support file {path}") # prepare and add exercise HTML article - node = self.db.get_node(node_id, with_parents=True, with_children=False) html = self.jinja2_env.get_template("perseus_exercise.html").render( node_id=node_id, perseus_content=f"[{', '.join(assessment_items)}]", @@ -614,12 +752,13 @@ def add_exercise_node(self, node_id): ) with self.creator_lock: self.creator.add_item_for( - path=node_id, + path=f"static/{node_slug}", title=node["title"], content=html, mimetype="text/html", + is_front=True, ) - logger.debug(f"Added exercise node #{node_id}") + logger.debug(f"Added exercise node #{node_id} - {node_slug}") def add_document_node(self, node_id): """Add content from this `document` node to zim @@ -640,9 +779,11 @@ def add_document_node(self, node_id): def target_for(file): filename = filename_for(file) if file["ext"] == "pdf": - return f"./assets/pdfjs/web/viewer.html?file=../../../{filename}" + return ( + f"../assets/pdfjs/web/viewer.html?file=../../../static/{filename}" + ) if file["ext"] == "epub": - return f"./assets/epub_embed.html?url=../{filename}" + return f"../assets/epub_embed.html?url=../static/{filename}" # record the actual document files = self.db.get_node_files(node_id, thumbnail=False) @@ -662,10 +803,12 @@ def target_for(file): alt_document = None for file in files: - self.funnel_file(file["id"], file["ext"]) + self.funnel_file(file["id"], file["ext"], path_prefix="static/") file["target"] = target_for(file) node = self.db.get_node(node_id, with_parents=True) + node_slug = self.get_or_create_node_slug(node) + # convert generator to list as we might read it twice node["parents"] = list(node["parents"]) @@ -678,6 +821,7 @@ def target_for(file): for is_alt in options: html = self.jinja2_env.get_template("document.html").render( node_id=node_id, + node_slug=node_slug, main_document=filename_for(main_document), main_document_ext=main_document["ext"], alt_document=filename_for(alt_document) if alt_document else None, @@ -687,7 +831,7 @@ def target_for(file): **node, ) with self.creator_lock: - path = node_id + path = f"static/{node_slug}" if is_alt: path += "_alt" self.creator.add_item_for( @@ -695,8 +839,9 @@ def target_for(file): title=node["title"], content=html, mimetype="text/html", + is_front=is_alt, ) - logger.debug(f"Added document #{node_id}") + logger.debug(f"Added document #{node_id} - {node_slug}") def add_html5_node(self, node_id): """Add content from this `html5` node to zim @@ -713,6 +858,9 @@ def add_html5_node(self, node_id): if not file: return + node = self.db.get_node(node_id) + node_slug = self.get_or_create_node_slug(node) + # download ZIP file to memory ark_url, ark_name = get_kolibri_url_for(file["id"], file["ext"]) ark_data = io.BytesIO() @@ -724,7 +872,9 @@ def add_html5_node(self, node_id): if not self.dedup_html_files: with self.creator_lock: self.creator.add_item_for( - path=f"{node_id}/{ark_member}", + path=f"static/{node_slug}/{ark_member}" + if ark_member != "index.html" + else f"static/{node_slug}", content=zip_ark.open(ark_member).read(), ) continue @@ -739,16 +889,20 @@ def add_html5_node(self, node_id): self.creator.add_item_for( path=f"html5_files/{content_hash}", content=content, + is_front=False, ) # add redirect to the unique sum-based entry for that file's path with self.creator_lock: self.creator.add_redirect( - path=f"{node_id}/{ark_member}", + path=f"static/{node_slug}/{ark_member}" + if ark_member != "index.html" + else f"static/{node_slug}", target_path=f"html5_files/{content_hash}", + is_front=ark_member == "index.html", ) - logger.debug(f"Added HTML5 node #{node_id}") + logger.debug(f"Added HTML5 node #{node_id} - {node_slug}") def run(self): if self.s3_url_with_credentials and not self.s3_credentials_ok(): @@ -811,7 +965,7 @@ def run(self): return 1 self.creator = Creator( filename=self.output_dir.joinpath(self.clean_fname), - main_path=self.root_id, + main_path="index.html", # self.root_id, ignore_duplicates=True, ) self.creator.config_metadata( @@ -830,6 +984,8 @@ def run(self): succeeded = False try: self.add_favicon() + self.add_zimui() + self.add_custom_about_and_css() # add static files @@ -859,6 +1015,8 @@ def run(self): # only awaits future completion and doesn't include callbacks self.videos_executor.shutdown() + self.add_channel_json() + succeeded = ( not result.not_done and sum([1 if fs.exception() else 0 for fs in result.done]) == 0 @@ -867,7 +1025,8 @@ def run(self): # DEBUG: raise first exception if not succeeded and result.done: logger.info( - f"FAILURE not_done={len(result.not_done)} done={len(result.done)}" + f"FAILURE not_done={len(result.not_done)}" + f"done={len(result.done)}" ) for future in result.done: if future.exception(): @@ -1014,8 +1173,21 @@ def retrieve_favicon(self): def add_favicon(self): self.creator.add_illustration(96, self.favicon_96_fpath.read_bytes()) - self.creator.add_item_for("favicon.png", fpath=self.favicon_96_fpath) - self.creator.add_item_for("favicon.ico", fpath=self.favicon_ico_path) + self.creator.add_item_for( + "favicon.png", fpath=self.favicon_96_fpath, is_front=False + ) + self.creator.add_item_for( + "favicon.ico", fpath=self.favicon_ico_path, is_front=False + ) + + def add_zimui(self): + logger.info(f"Adding files in {self.zimui_dist}") + for file in self.zimui_dist.rglob("*"): + if file.is_dir(): + continue + path = str(Path(file).relative_to(self.zimui_dist)) + logger.debug(f"Adding {path} to ZIM") + self.creator.add_item_for(path, fpath=file, is_front=False) def add_custom_about_and_css(self): channel_meta = self.db.get_channel_metadata(self.channel_id) @@ -1047,10 +1219,11 @@ def add_custom_about_and_css(self): ) with self.creator_lock: self.creator.add_item_for( - path="about", + path="static/about", title=title, content=html, mimetype="text/html", + is_front=False, ) del html @@ -1067,7 +1240,9 @@ def add_custom_about_and_css(self): else: content = "" - self.creator.add_item_for("custom.css", content=content, mimetype="text/css") + self.creator.add_item_for( + "custom.css", content=content, mimetype="text/css", is_front=False + ) logger.debug("Added about page and custom CSS") def ensure_js_deps_are_present(self): diff --git a/scraper/src/kolibri2zim/templates/about.html b/scraper/src/kolibri2zim/templates/about.html index 046fc84..00d6622 100644 --- a/scraper/src/kolibri2zim/templates/about.html +++ b/scraper/src/kolibri2zim/templates/about.html @@ -8,7 +8,7 @@

About {{ title }}

{{ description }}

{% if author %}

Created by {{ author }}

{% endif %} {% if last_updated %}

Updated on {{ last_updated }}

{% endif %} -

+

{% endif %} {% endblock %} diff --git a/scraper/src/kolibri2zim/templates/audio.html b/scraper/src/kolibri2zim/templates/audio.html index 3153cbe..07e6ff3 100644 --- a/scraper/src/kolibri2zim/templates/audio.html +++ b/scraper/src/kolibri2zim/templates/audio.html @@ -1,7 +1,7 @@ {% extends "base.html" %} {% block head %} - + {% block head %}{% endblock %} - +
- {% if parents_count %} + {% if false and parents_count %} +
- + {% block script %}{% endblock %} diff --git a/scraper/src/kolibri2zim/templates/card.html b/scraper/src/kolibri2zim/templates/card.html deleted file mode 100644 index c08a1da..0000000 --- a/scraper/src/kolibri2zim/templates/card.html +++ /dev/null @@ -1,8 +0,0 @@ - -
-
-
{{ child.title }}
-
- {% if child.thumbnail %}{% endif %} -
-
diff --git a/scraper/src/kolibri2zim/templates/document.html b/scraper/src/kolibri2zim/templates/document.html index 18dba86..8ecac3a 100644 --- a/scraper/src/kolibri2zim/templates/document.html +++ b/scraper/src/kolibri2zim/templates/document.html @@ -31,11 +31,11 @@ + {% endblock %} {% block script %} - + {% endblock %} diff --git a/scraper/src/kolibri2zim/templates/epub.html b/scraper/src/kolibri2zim/templates/epub.html deleted file mode 100644 index 00f949c..0000000 --- a/scraper/src/kolibri2zim/templates/epub.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - {{ title }} - - -

You should get an epub reader here someday. In the mean time, just Open EPUB directly

- - diff --git a/scraper/src/kolibri2zim/templates/perseus_exercise.html b/scraper/src/kolibri2zim/templates/perseus_exercise.html index 5848458..94019c3 100644 --- a/scraper/src/kolibri2zim/templates/perseus_exercise.html +++ b/scraper/src/kolibri2zim/templates/perseus_exercise.html @@ -2,17 +2,17 @@ {% block pre_head %} - - - - - - - - - - - + + + + + + + + + + + diff --git a/zimui/src/assets/a886c13e06bd9f7fed9e661b31897edc.png b/zimui/src/assets/a886c13e06bd9f7fed9e661b31897edc.png new file mode 100644 index 0000000000000000000000000000000000000000..6cadac87e33dd8f89cc9bcd03bf9660c9bfe6cd0 GIT binary patch literal 37320 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 literal 0 HcmV?d00001 diff --git a/zimui/src/assets/card_default_bg.png b/zimui/src/assets/card_default_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..c65ba049470c3572d168417e37c58b0af36ace01 GIT binary patch literal 132430 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 |mDXw5uS)m%4 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 literal 0 HcmV?d00001 diff --git a/zimui/src/assets/ebe9e09a4d0e417b051d60ff9891f98e.png b/zimui/src/assets/ebe9e09a4d0e417b051d60ff9891f98e.png new file mode 100644 index 0000000000000000000000000000000000000000..3bd1b177f41b5e06dc4c1d8861d99e8c34424334 GIT binary patch literal 46710 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⁢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 literal 0 HcmV?d00001 diff --git a/zimui/src/components/TopicCard.vue b/zimui/src/components/TopicCard.vue new file mode 100644 index 0000000..f971328 --- /dev/null +++ b/zimui/src/components/TopicCard.vue @@ -0,0 +1,140 @@ + + + + + diff --git a/zimui/src/components/TopicHome.vue b/zimui/src/components/TopicHome.vue new file mode 100644 index 0000000..9ad25c2 --- /dev/null +++ b/zimui/src/components/TopicHome.vue @@ -0,0 +1,150 @@ + + + + + diff --git a/zimui/src/components/TopicSection.vue b/zimui/src/components/TopicSection.vue new file mode 100644 index 0000000..6db3d37 --- /dev/null +++ b/zimui/src/components/TopicSection.vue @@ -0,0 +1,134 @@ + + + + + diff --git a/zimui/src/fonts/lato-v24-latin-regular.ttf b/zimui/src/fonts/lato-v24-latin-regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..85b266320a4e88defb20d5ae1de336837ead2b55 GIT binary patch literal 60540 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 b!_5tbFISX$`vdtot{iWPcX2}j{t*5j_O0cf literal 0 HcmV?d00001 diff --git a/zimui/src/fonts/lato-v24-latin-regular.woff2 b/zimui/src/fonts/lato-v24-latin-regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ff60934dd0ea9cdd93f961d2dfd1e158357f2a77 GIT binary patch literal 23580 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 QOFh<%JiLFgmWQ+r07g396aWAK literal 0 HcmV?d00001 diff --git a/zimui/src/main.ts b/zimui/src/main.ts new file mode 100644 index 0000000..2015265 --- /dev/null +++ b/zimui/src/main.ts @@ -0,0 +1,33 @@ +import { createApp } from 'vue' +import { createRouter, createWebHashHistory } from 'vue-router' +import App from './App.vue' +import { routes } from './routes' +import 'bootstrap/dist/css/bootstrap.min.css' +import 'bootstrap' +import { library } from '@fortawesome/fontawesome-svg-core' +import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome' +import { faFolderOpen, faFileLines } from '@fortawesome/free-regular-svg-icons' +import { faArrowLeft, faArrowRight } from '@fortawesome/free-solid-svg-icons' +import './style.css' +import VueScreen from 'vue-screen' +import { createPinia } from 'pinia' + +library.add(faFolderOpen, faArrowLeft, faArrowRight, faFileLines) + +const app = createApp(App) + +app.component('FontAwesomeIcon', FontAwesomeIcon) + +app.use(VueScreen, 'bootstrap5') + +const router = createRouter({ + history: createWebHashHistory(), + routes: routes, +}) + +app.use(router) + +const pinia = createPinia() +app.use(pinia) + +app.mount('#app') diff --git a/zimui/src/pages/HomePage.vue b/zimui/src/pages/HomePage.vue new file mode 100644 index 0000000..cc97f10 --- /dev/null +++ b/zimui/src/pages/HomePage.vue @@ -0,0 +1,38 @@ + + + + + diff --git a/zimui/src/routes.ts b/zimui/src/routes.ts new file mode 100644 index 0000000..b8e0840 --- /dev/null +++ b/zimui/src/routes.ts @@ -0,0 +1,6 @@ +import HomePage from './pages/HomePage.vue' + +export const routes = [ + { path: '/', component: HomePage }, + { path: '/:topic', component: HomePage }, +] diff --git a/zimui/src/stores/main.ts b/zimui/src/stores/main.ts new file mode 100644 index 0000000..2ddf2fc --- /dev/null +++ b/zimui/src/stores/main.ts @@ -0,0 +1,39 @@ +import { defineStore } from 'pinia' +import axios from 'axios' +export const useMainStore = defineStore('main', { + state: () => ({ + channel_data: null, + is_loading: false, + error: '', + }), + getters: {}, + actions: { + async fetchChannel() { + this.is_loading = true + this.error = '' + try { + const data = await axios.get('./channel.json') + this.channel_data = data.data + } catch (error) { + this.error = 'Failed to load channel data' + this.channel_data = null + return false + } + this.is_loading = false + return true + }, + async fetchTopic(slug: string) { + this.is_loading = true + this.error = '' + try { + const data = await axios.get('./topics/' + slug + '.json') + this.is_loading = false + return data.data + } catch (error) { + this.error = 'Failed to load node ' + slug + ' data' + this.is_loading = false + return null + } + }, + }, +}) diff --git a/zimui/src/style.css b/zimui/src/style.css new file mode 100644 index 0000000..b7e254c --- /dev/null +++ b/zimui/src/style.css @@ -0,0 +1,14 @@ + + +.container, +.container-fluid, +.container-lg, +.container-md, +.container-sm, +.container-xl { + width: 100%; + padding-right: 76px; + padding-left: 76px; + margin-right: auto; + margin-left: auto; +} diff --git a/zimui/src/vite-env.d.ts b/zimui/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/zimui/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/zimui/tsconfig.json b/zimui/tsconfig.json new file mode 100644 index 0000000..5c7d36d --- /dev/null +++ b/zimui/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "target": "ESNext", + "useDefineForClassFields": true, + "module": "ESNext", + "moduleResolution": "Node", + "strict": true, + "jsx": "preserve", + "resolveJsonModule": true, + "isolatedModules": true, + "esModuleInterop": true, + "lib": ["ESNext", "DOM"], + "skipLibCheck": true, + "noEmit": true, + "paths": { + "@/*": ["./src/*"] + } + }, + "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"], + "references": [{ "path": "./tsconfig.node.json" }] +} diff --git a/zimui/tsconfig.node.json b/zimui/tsconfig.node.json new file mode 100644 index 0000000..9704ec5 --- /dev/null +++ b/zimui/tsconfig.node.json @@ -0,0 +1,10 @@ +{ + "compilerOptions": { + "composite": true, + "module": "ESNext", + "moduleResolution": "Node", + "esModuleInterop": true, + "allowSyntheticDefaultImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/zimui/vite.config.ts b/zimui/vite.config.ts new file mode 100644 index 0000000..4516376 --- /dev/null +++ b/zimui/vite.config.ts @@ -0,0 +1,14 @@ +import * as path from 'path' +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +// https://vitejs.dev/config/ +export default defineConfig({ + base: './', + plugins: [vue()], + resolve: { + alias: { + '@': path.resolve(__dirname, './src'), + }, + }, +}) diff --git a/zimui/yarn.lock b/zimui/yarn.lock new file mode 100644 index 0000000..567c8b0 --- /dev/null +++ b/zimui/yarn.lock @@ -0,0 +1,3165 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@aashutoshrathi/word-wrap@^1.2.3": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" + integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== + +"@babel/parser@^7.20.15", "@babel/parser@^7.21.3": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" + integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== + +"@codemirror/autocomplete@^6.0.0": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@codemirror/autocomplete/-/autocomplete-6.9.1.tgz#e0989c6a33a37604b5d2c896dcca7562ae3d7c61" + integrity sha512-yma56tqD7khIZK4gy4X5lX3/k5ArMiCGat7HEWRF/8L2kqOjVdp2qKZqpcJjwTIjSj6fqKAHqi7IjtH3QFE+Bw== + dependencies: + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.17.0" + "@lezer/common" "^1.0.0" + +"@codemirror/commands@6.x", "@codemirror/commands@^6.0.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@codemirror/commands/-/commands-6.3.0.tgz#cb7ad6ddc1e8af3a3c352135bd0348e6950b4e9d" + integrity sha512-tFfcxRIlOWiQDFhjBSWJ10MxcvbCIsRr6V64SgrcaY0MwNk32cUOcCuNlWo8VjV4qRQCgNgUAnIeo0svkk4R5Q== + dependencies: + "@codemirror/language" "^6.0.0" + "@codemirror/state" "^6.2.0" + "@codemirror/view" "^6.0.0" + "@lezer/common" "^1.1.0" + +"@codemirror/lang-javascript@^6.1.6": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@codemirror/lang-javascript/-/lang-javascript-6.2.1.tgz#8068d44365d13cdb044936fb4e3483301c12ef95" + integrity sha512-jlFOXTejVyiQCW3EQwvKH0m99bUYIw40oPmFjSX2VS78yzfe0HELZ+NEo9Yfo1MkGRpGlj3Gnu4rdxV1EnAs5A== + dependencies: + "@codemirror/autocomplete" "^6.0.0" + "@codemirror/language" "^6.6.0" + "@codemirror/lint" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.17.0" + "@lezer/common" "^1.0.0" + "@lezer/javascript" "^1.0.0" + +"@codemirror/language@6.x", "@codemirror/language@^6.0.0", "@codemirror/language@^6.6.0": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@codemirror/language/-/language-6.9.1.tgz#97e2c3e44cf4ff152add865ed7ecec73868446a4" + integrity sha512-lWRP3Y9IUdOms6DXuBpoWwjkR7yRmnS0hKYCbSfPz9v6Em1A1UCRujAkDiCrdYfs1Z0Eu4dGtwovNPStIfkgNA== + dependencies: + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + "@lezer/common" "^1.1.0" + "@lezer/highlight" "^1.0.0" + "@lezer/lr" "^1.0.0" + style-mod "^4.0.0" + +"@codemirror/lint@^6.0.0": + version "6.4.2" + resolved "https://registry.yarnpkg.com/@codemirror/lint/-/lint-6.4.2.tgz#c13be5320bde9707efdc94e8bcd3c698abae0b92" + integrity sha512-wzRkluWb1ptPKdzlsrbwwjYCPLgzU6N88YBAmlZi8WFyuiEduSd05MnJYNogzyc8rPK7pj6m95ptUApc8sHKVA== + dependencies: + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + crelt "^1.0.5" + +"@codemirror/search@^6.0.0": + version "6.5.4" + resolved "https://registry.yarnpkg.com/@codemirror/search/-/search-6.5.4.tgz#54005697bf581f7dccbbb4a0c34d3a7aa25a513a" + integrity sha512-YoTrvjv9e8EbPs58opjZKyJ3ewFrVSUzQ/4WXlULQLSDDr1nGPJ67mMXFNNVYwdFhybzhrzrtqgHmtpJwIF+8g== + dependencies: + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + crelt "^1.0.5" + +"@codemirror/state@6.x", "@codemirror/state@^6.0.0", "@codemirror/state@^6.1.4", "@codemirror/state@^6.2.0": + version "6.2.1" + resolved "https://registry.yarnpkg.com/@codemirror/state/-/state-6.2.1.tgz#6dc8d8e5abb26b875e3164191872d69a5e85bd73" + integrity sha512-RupHSZ8+OjNT38zU9fKH2sv+Dnlr8Eb8sl4NOnnqz95mCFTZUaiRP8Xv5MeeaG0px2b8Bnfe7YGwCV3nsBhbuw== + +"@codemirror/view@6.x", "@codemirror/view@^6.0.0", "@codemirror/view@^6.17.0": + version "6.21.0" + resolved "https://registry.yarnpkg.com/@codemirror/view/-/view-6.21.0.tgz#c073e4bef3dbed5a7494f0dbf65f6b4df82ed940" + integrity sha512-JI3asAk/fZ7h2ATjY9ErDFGWoWe4Bu7XgzR31G26RU3M/DLjfdQK8Im7hL1P/PAyprfVrf0uRNqxu02TkBcm3g== + dependencies: + "@codemirror/state" "^6.1.4" + style-mod "^4.1.0" + w3c-keyname "^2.2.4" + +"@cspotcode/source-map-support@^0.8.0": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== + dependencies: + "@jridgewell/trace-mapping" "0.3.9" + +"@esbuild/android-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz#984b4f9c8d0377443cc2dfcef266d02244593622" + integrity sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ== + +"@esbuild/android-arm@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.20.tgz#fedb265bc3a589c84cc11f810804f234947c3682" + integrity sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw== + +"@esbuild/android-x64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.20.tgz#35cf419c4cfc8babe8893d296cd990e9e9f756f2" + integrity sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg== + +"@esbuild/darwin-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz#08172cbeccf95fbc383399a7f39cfbddaeb0d7c1" + integrity sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA== + +"@esbuild/darwin-x64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz#d70d5790d8bf475556b67d0f8b7c5bdff053d85d" + integrity sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ== + +"@esbuild/freebsd-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz#98755cd12707f93f210e2494d6a4b51b96977f54" + integrity sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw== + +"@esbuild/freebsd-x64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz#c1eb2bff03915f87c29cece4c1a7fa1f423b066e" + integrity sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ== + +"@esbuild/linux-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz#bad4238bd8f4fc25b5a021280c770ab5fc3a02a0" + integrity sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA== + +"@esbuild/linux-arm@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz#3e617c61f33508a27150ee417543c8ab5acc73b0" + integrity sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg== + +"@esbuild/linux-ia32@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz#699391cccba9aee6019b7f9892eb99219f1570a7" + integrity sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA== + +"@esbuild/linux-loong64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz#e6fccb7aac178dd2ffb9860465ac89d7f23b977d" + integrity sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg== + +"@esbuild/linux-mips64el@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz#eeff3a937de9c2310de30622a957ad1bd9183231" + integrity sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ== + +"@esbuild/linux-ppc64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz#2f7156bde20b01527993e6881435ad79ba9599fb" + integrity sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA== + +"@esbuild/linux-riscv64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz#6628389f210123d8b4743045af8caa7d4ddfc7a6" + integrity sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A== + +"@esbuild/linux-s390x@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz#255e81fb289b101026131858ab99fba63dcf0071" + integrity sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ== + +"@esbuild/linux-x64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz#c7690b3417af318a9b6f96df3031a8865176d338" + integrity sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w== + +"@esbuild/netbsd-x64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz#30e8cd8a3dded63975e2df2438ca109601ebe0d1" + integrity sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A== + +"@esbuild/openbsd-x64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz#7812af31b205055874c8082ea9cf9ab0da6217ae" + integrity sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg== + +"@esbuild/sunos-x64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz#d5c275c3b4e73c9b0ecd38d1ca62c020f887ab9d" + integrity sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ== + +"@esbuild/win32-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz#73bc7f5a9f8a77805f357fab97f290d0e4820ac9" + integrity sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg== + +"@esbuild/win32-ia32@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz#ec93cbf0ef1085cc12e71e0d661d20569ff42102" + integrity sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g== + +"@esbuild/win32-x64@0.18.20": + version "0.18.20" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz#786c5f41f043b07afb1af37683d7c33668858f6d" + integrity sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ== + +"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0": + version "4.4.0" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" + integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== + dependencies: + eslint-visitor-keys "^3.3.0" + +"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": + version "4.9.0" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.9.0.tgz#7ccb5f58703fa61ffdcbf39e2c604a109e781162" + integrity sha512-zJmuCWj2VLBt4c25CfBIbMZLGLyhkvs7LznyVX5HfpzeocThgIj5XQK4L+g3U36mMcx8bPMhGyPpwCATamC4jQ== + +"@eslint/eslintrc@^2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.2.tgz#c6936b4b328c64496692f76944e755738be62396" + integrity sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^9.6.0" + globals "^13.19.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + +"@eslint/js@8.50.0": + version "8.50.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.50.0.tgz#9e93b850f0f3fa35f5fa59adfd03adae8488e484" + integrity sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ== + +"@fortawesome/fontawesome-common-types@6.4.2": + version "6.4.2" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.2.tgz#1766039cad33f8ad87f9467b98e0d18fbc8f01c5" + integrity sha512-1DgP7f+XQIJbLFCTX1V2QnxVmpLdKdzzo2k8EmvDOePfchaIGQ9eCHj2up3/jNEbZuBqel5OxiaOJf37TWauRA== + +"@fortawesome/fontawesome-svg-core@^6.4.2": + version "6.4.2" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.2.tgz#37f4507d5ec645c8b50df6db14eced32a6f9be09" + integrity sha512-gjYDSKv3TrM2sLTOKBc5rH9ckje8Wrwgx1CxAPbN5N3Fm4prfi7NsJVWd1jklp7i5uSCVwhZS5qlhMXqLrpAIg== + dependencies: + "@fortawesome/fontawesome-common-types" "6.4.2" + +"@fortawesome/free-regular-svg-icons@^6.4.2": + version "6.4.2" + resolved "https://registry.yarnpkg.com/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.4.2.tgz#aee79ed76ce5dd04931352f9d83700761b8b1b25" + integrity sha512-0+sIUWnkgTVVXVAPQmW4vxb9ZTHv0WstOa3rBx9iPxrrrDH6bNLsDYuwXF9b6fGm+iR7DKQvQshUH/FJm3ed9Q== + dependencies: + "@fortawesome/fontawesome-common-types" "6.4.2" + +"@fortawesome/free-solid-svg-icons@^6.4.2": + version "6.4.2" + resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.4.2.tgz#33a02c4cb6aa28abea7bc082a9626b7922099df4" + integrity sha512-sYwXurXUEQS32fZz9hVCUUv/xu49PEJEyUOsA51l6PU/qVgfbTb2glsTEaJngVVT8VqBATRIdh7XVgV1JF1LkA== + dependencies: + "@fortawesome/fontawesome-common-types" "6.4.2" + +"@fortawesome/vue-fontawesome@^3.0.3": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.3.tgz#633e2998d11f7d4ed41f0d5ea461a22ec9b9d034" + integrity sha512-KCPHi9QemVXGMrfuwf3nNnNo129resAIQWut9QTAMXmXqL2ErABC6ohd2yY5Ipq0CLWNbKHk8TMdTXL/Zf3ZhA== + +"@humanwhocodes/config-array@^0.11.11": + version "0.11.11" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.11.tgz#88a04c570dbbc7dd943e4712429c3df09bc32844" + integrity sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA== + dependencies: + "@humanwhocodes/object-schema" "^1.2.1" + debug "^4.1.1" + minimatch "^3.0.5" + +"@humanwhocodes/module-importer@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== + +"@humanwhocodes/object-schema@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== + +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + +"@jridgewell/resolve-uri@^3.0.3": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.15": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + +"@lezer/common@^1.0.0", "@lezer/common@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@lezer/common/-/common-1.1.0.tgz#2e5bfe01d7a2ada6056d93c677bba4f1495e098a" + integrity sha512-XPIN3cYDXsoJI/oDWoR2tD++juVrhgIago9xyKhZ7IhGlzdDM9QgC8D8saKNCz5pindGcznFr2HBSsEQSWnSjw== + +"@lezer/highlight@^1.0.0", "@lezer/highlight@^1.1.3": + version "1.1.6" + resolved "https://registry.yarnpkg.com/@lezer/highlight/-/highlight-1.1.6.tgz#87e56468c0f43c2a8b3dc7f0b7c2804b34901556" + integrity sha512-cmSJYa2us+r3SePpRCjN5ymCqCPv+zyXmDl0ciWtVaNiORT/MxM7ZgOMQZADD0o51qOaOg24qc/zBViOIwAjJg== + dependencies: + "@lezer/common" "^1.0.0" + +"@lezer/javascript@^1.0.0": + version "1.4.7" + resolved "https://registry.yarnpkg.com/@lezer/javascript/-/javascript-1.4.7.tgz#4ebcce2db6043c07fbe827188c07cb001bc7fe37" + integrity sha512-OVWlK0YEi7HM+9JRWtRkir8qvcg0/kVYg2TAMHlVtl6DU1C9yK1waEOLBMztZsV/axRJxsqfJKhzYz+bxZme5g== + dependencies: + "@lezer/highlight" "^1.1.3" + "@lezer/lr" "^1.3.0" + +"@lezer/lr@^1.0.0", "@lezer/lr@^1.3.0": + version "1.3.12" + resolved "https://registry.yarnpkg.com/@lezer/lr/-/lr-1.3.12.tgz#ee65d79f5528d8f5c042cd8123325a48c411109b" + integrity sha512-5nwY1JzCueUdRtlMBnlf1SUi69iGCq2ABq7WQFQMkn/kxPvoACAEnTp4P17CtXxYr7WCwtYPLL2AEvxKPuF1OQ== + dependencies: + "@lezer/common" "^1.0.0" + +"@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: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@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== + +"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": + 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: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + +"@popperjs/core@^2.11.8": + version "2.11.8" + resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" + integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== + +"@tsconfig/node10@^1.0.7": + version "1.0.9" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" + integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== + +"@tsconfig/node12@^1.0.7": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" + integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== + +"@tsconfig/node14@^1.0.0": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" + integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== + +"@tsconfig/node16@^1.0.2": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" + integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== + +"@types/chai-subset@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@types/chai-subset/-/chai-subset-1.3.3.tgz#97893814e92abd2c534de422cb377e0e0bdaac94" + integrity sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw== + dependencies: + "@types/chai" "*" + +"@types/chai@*", "@types/chai@^4.3.4": + version "4.3.6" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.6.tgz#7b489e8baf393d5dd1266fb203ddd4ea941259e6" + integrity sha512-VOVRLM1mBxIRxydiViqPcKn6MIxZytrbMpd6RJLIWKxUNr3zux8no0Oc7kJx0WAPIitgZ0gkrDS+btlqQpubpw== + +"@types/glob@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.1.0.tgz#b63e70155391b0584dce44e7ea25190bbc38f2fc" + integrity sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w== + dependencies: + "@types/minimatch" "^5.1.2" + "@types/node" "*" + +"@types/json-schema@^7.0.9": + version "7.0.13" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.13.tgz#02c24f4363176d2d18fc8b70b9f3c54aba178a85" + integrity sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ== + +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== + +"@types/marked@^4.0.8": + version "4.3.2" + resolved "https://registry.yarnpkg.com/@types/marked/-/marked-4.3.2.tgz#e2e0ad02ebf5626bd215c5bae2aff6aff0ce9eac" + integrity sha512-a79Yc3TOk6dGdituy8hmTTJXjOkZ7zsFYV10L337ttq/rec8lRMDBpV7fL3uLx6TgbFCa5DU/h8FmIBQPSbU0w== + +"@types/minimatch@^5.1.2": + version "5.1.2" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" + integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== + +"@types/node@*": + version "20.8.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.0.tgz#10ddf0119cf20028781c06d7115562934e53f745" + integrity sha512-LzcWltT83s1bthcvjBmiBvGJiiUe84NWRHkw+ZV6Fr41z2FbIzvc815dk2nQ3RAKMuN2fkenM/z3Xv2QzEpYxQ== + +"@types/semver@^7.3.12": + version "7.5.3" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.3.tgz#9a726e116beb26c24f1ccd6850201e1246122e04" + integrity sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw== + +"@typescript-eslint/eslint-plugin@^5.58.0", "@typescript-eslint/eslint-plugin@^5.59.1": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" + integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== + dependencies: + "@eslint-community/regexpp" "^4.4.0" + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/type-utils" "5.62.0" + "@typescript-eslint/utils" "5.62.0" + debug "^4.3.4" + graphemer "^1.4.0" + ignore "^5.2.0" + natural-compare-lite "^1.4.0" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/parser@^5.58.0", "@typescript-eslint/parser@^5.59.1": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" + integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== + dependencies: + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/typescript-estree" "5.62.0" + debug "^4.3.4" + +"@typescript-eslint/scope-manager@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" + integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + +"@typescript-eslint/type-utils@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a" + integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew== + dependencies: + "@typescript-eslint/typescript-estree" "5.62.0" + "@typescript-eslint/utils" "5.62.0" + debug "^4.3.4" + tsutils "^3.21.0" + +"@typescript-eslint/types@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" + integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== + +"@typescript-eslint/typescript-estree@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" + integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/utils@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" + integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/typescript-estree" "5.62.0" + eslint-scope "^5.1.1" + semver "^7.3.7" + +"@typescript-eslint/visitor-keys@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" + integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== + dependencies: + "@typescript-eslint/types" "5.62.0" + eslint-visitor-keys "^3.3.0" + +"@vitejs/plugin-vue@^4.1.0": + version "4.3.4" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-4.3.4.tgz#a289dff38e01949fe7be581d5542cabaeb961dec" + integrity sha512-ciXNIHKPriERBisHFBvnTbfKa6r9SAesOYXeGDzgegcvy9Q4xdScSHAmKbNT0M3O0S9LKhIf5/G+UYG4NnnzYw== + +"@vitest/expect@0.30.1": + version "0.30.1" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-0.30.1.tgz#3c92a3fc23a198315ce8cd16689dc2d5aeac40b8" + integrity sha512-c3kbEtN8XXJSeN81iDGq29bUzSjQhjES2WR3aColsS4lPGbivwLtas4DNUe0jD9gg/FYGIteqOenfU95EFituw== + dependencies: + "@vitest/spy" "0.30.1" + "@vitest/utils" "0.30.1" + chai "^4.3.7" + +"@vitest/runner@0.30.1": + version "0.30.1" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-0.30.1.tgz#534db590091e5d40682f47b9478f64b776073c50" + integrity sha512-W62kT/8i0TF1UBCNMRtRMOBWJKRnNyv9RrjIgdUryEe0wNpGZvvwPDLuzYdxvgSckzjp54DSpv1xUbv4BQ0qVA== + dependencies: + "@vitest/utils" "0.30.1" + concordance "^5.0.4" + p-limit "^4.0.0" + pathe "^1.1.0" + +"@vitest/snapshot@0.30.1": + version "0.30.1" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-0.30.1.tgz#25e912557b357ecb89d5ee35e8d7c4c7a5ecfe32" + integrity sha512-fJZqKrE99zo27uoZA/azgWyWbFvM1rw2APS05yB0JaLwUIg9aUtvvnBf4q7JWhEcAHmSwbrxKFgyBUga6tq9Tw== + dependencies: + magic-string "^0.30.0" + pathe "^1.1.0" + pretty-format "^27.5.1" + +"@vitest/spy@0.30.1": + version "0.30.1" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-0.30.1.tgz#e3344d4513407afd922963737fb9733a7787a2bf" + integrity sha512-YfJeIf37GvTZe04ZKxzJfnNNuNSmTEGnla2OdL60C8od16f3zOfv9q9K0nNii0NfjDJRt/CVN/POuY5/zTS+BA== + dependencies: + tinyspy "^2.1.0" + +"@vitest/utils@0.30.1": + version "0.30.1" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-0.30.1.tgz#0e5bf8c1b81a6dfa2b70120c2aa092a651440cda" + integrity sha512-/c8Xv2zUVc+rnNt84QF0Y0zkfxnaGhp87K2dYJMLtLOIckPzuxLVzAtFCicGFdB4NeBHNzTRr1tNn7rCtQcWFA== + dependencies: + concordance "^5.0.4" + loupe "^2.3.6" + pretty-format "^27.5.1" + +"@volar/language-core@1.10.1", "@volar/language-core@~1.10.0": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-1.10.1.tgz#76789c5b0c214eeff8add29cbff0333d89b6fc4a" + integrity sha512-JnsM1mIPdfGPxmoOcK1c7HYAsL6YOv0TCJ4aW3AXPZN/Jb4R77epDyMZIVudSGjWMbvv/JfUa+rQ+dGKTmgwBA== + dependencies: + "@volar/source-map" "1.10.1" + +"@volar/source-map@1.10.1", "@volar/source-map@~1.10.0": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-1.10.1.tgz#b806845782cc615f2beba94624ff34a700f302f5" + integrity sha512-3/S6KQbqa7pGC8CxPrg69qHLpOvkiPHGJtWPkI/1AXCsktkJ6gIk/5z4hyuMp8Anvs6eS/Kvp/GZa3ut3votKA== + dependencies: + muggle-string "^0.3.1" + +"@volar/typescript@~1.10.0": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-1.10.1.tgz#b20341c1cc5785b4de0669ea645e1619c97a4764" + integrity sha512-+iiO9yUSRHIYjlteT+QcdRq8b44qH19/eiUZtjNtuh6D9ailYM7DVR0zO2sEgJlvCaunw/CF9Ov2KooQBpR4VQ== + dependencies: + "@volar/language-core" "1.10.1" + +"@vue/compiler-core@3.3.4": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.3.4.tgz#7fbf591c1c19e1acd28ffd284526e98b4f581128" + integrity sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g== + dependencies: + "@babel/parser" "^7.21.3" + "@vue/shared" "3.3.4" + estree-walker "^2.0.2" + source-map-js "^1.0.2" + +"@vue/compiler-dom@3.3.4", "@vue/compiler-dom@^3.3.0": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz#f56e09b5f4d7dc350f981784de9713d823341151" + integrity sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w== + dependencies: + "@vue/compiler-core" "3.3.4" + "@vue/shared" "3.3.4" + +"@vue/compiler-sfc@3.3.4": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz#b19d942c71938893535b46226d602720593001df" + integrity sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ== + dependencies: + "@babel/parser" "^7.20.15" + "@vue/compiler-core" "3.3.4" + "@vue/compiler-dom" "3.3.4" + "@vue/compiler-ssr" "3.3.4" + "@vue/reactivity-transform" "3.3.4" + "@vue/shared" "3.3.4" + estree-walker "^2.0.2" + magic-string "^0.30.0" + postcss "^8.1.10" + source-map-js "^1.0.2" + +"@vue/compiler-ssr@3.3.4": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz#9d1379abffa4f2b0cd844174ceec4a9721138777" + integrity sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ== + dependencies: + "@vue/compiler-dom" "3.3.4" + "@vue/shared" "3.3.4" + +"@vue/devtools-api@^6.5.0": + version "6.5.0" + resolved "https://registry.yarnpkg.com/@vue/devtools-api/-/devtools-api-6.5.0.tgz#98b99425edee70b4c992692628fa1ea2c1e57d07" + integrity sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q== + +"@vue/eslint-config-prettier@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@vue/eslint-config-prettier/-/eslint-config-prettier-7.1.0.tgz#97936379c7fb1d982b9d2c6b122306e3c2e464c8" + integrity sha512-Pv/lVr0bAzSIHLd9iz0KnvAr4GKyCEl+h52bc4e5yWuDVtLgFwycF7nrbWTAQAS+FU6q1geVd07lc6EWfJiWKQ== + dependencies: + eslint-config-prettier "^8.3.0" + eslint-plugin-prettier "^4.0.0" + +"@vue/eslint-config-standard@^8.0.1": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@vue/eslint-config-standard/-/eslint-config-standard-8.0.1.tgz#d6e5f87bf99d142fc7adaaa5c32bc8d6af626ae3" + integrity sha512-+FsTb8kOf2GSbXXTwbigRBRRur/byMbwL6Ijii2JoXW4hsLB4arl9lbgV54OUOV5o20INLHDmBVONO16rP/a1g== + dependencies: + eslint-config-standard "^17.0.0" + eslint-import-resolver-custom-alias "^1.3.0" + eslint-import-resolver-node "^0.3.6" + eslint-plugin-import "^2.26.0" + eslint-plugin-n "^15.2.4" + eslint-plugin-promise "^6.0.0" + +"@vue/eslint-config-typescript@^11.0.2": + version "11.0.3" + resolved "https://registry.yarnpkg.com/@vue/eslint-config-typescript/-/eslint-config-typescript-11.0.3.tgz#c720efa657d102cd2945bc54b4a79f35d57f6307" + integrity sha512-dkt6W0PX6H/4Xuxg/BlFj5xHvksjpSlVjtkQCpaYJBIEuKj2hOVU7r+TIe+ysCwRYFz/lGqvklntRkCAibsbPw== + dependencies: + "@typescript-eslint/eslint-plugin" "^5.59.1" + "@typescript-eslint/parser" "^5.59.1" + vue-eslint-parser "^9.1.1" + +"@vue/language-core@1.8.15": + version "1.8.15" + resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-1.8.15.tgz#e84536f529f706c072037d495bfd610d4661fbae" + integrity sha512-zche5Aw8kkvp3YaghuLiOZyVIpoWHjSQ0EfjxGSsqHOPMamdCoa9x3HtbenpR38UMUoKJ88wiWuiOrV3B/Yq+A== + dependencies: + "@volar/language-core" "~1.10.0" + "@volar/source-map" "~1.10.0" + "@vue/compiler-dom" "^3.3.0" + "@vue/reactivity" "^3.3.0" + "@vue/shared" "^3.3.0" + minimatch "^9.0.0" + muggle-string "^0.3.1" + vue-template-compiler "^2.7.14" + +"@vue/reactivity-transform@3.3.4": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz#52908476e34d6a65c6c21cd2722d41ed8ae51929" + integrity sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw== + dependencies: + "@babel/parser" "^7.20.15" + "@vue/compiler-core" "3.3.4" + "@vue/shared" "3.3.4" + estree-walker "^2.0.2" + magic-string "^0.30.0" + +"@vue/reactivity@3.3.4", "@vue/reactivity@^3.3.0": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.3.4.tgz#a27a29c6cd17faba5a0e99fbb86ee951653e2253" + integrity sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ== + dependencies: + "@vue/shared" "3.3.4" + +"@vue/runtime-core@3.3.4": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.3.4.tgz#4bb33872bbb583721b340f3088888394195967d1" + integrity sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA== + dependencies: + "@vue/reactivity" "3.3.4" + "@vue/shared" "3.3.4" + +"@vue/runtime-dom@3.3.4": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz#992f2579d0ed6ce961f47bbe9bfe4b6791251566" + integrity sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ== + dependencies: + "@vue/runtime-core" "3.3.4" + "@vue/shared" "3.3.4" + csstype "^3.1.1" + +"@vue/server-renderer@3.3.4": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.3.4.tgz#ea46594b795d1536f29bc592dd0f6655f7ea4c4c" + integrity sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ== + dependencies: + "@vue/compiler-ssr" "3.3.4" + "@vue/shared" "3.3.4" + +"@vue/shared@3.3.4", "@vue/shared@^3.3.0": + version "3.3.4" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.3.4.tgz#06e83c5027f464eef861c329be81454bc8b70780" + integrity sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ== + +"@vue/typescript@1.8.15": + version "1.8.15" + resolved "https://registry.yarnpkg.com/@vue/typescript/-/typescript-1.8.15.tgz#ee8f7a99cf93597fa5503dc27125ddad3bcd32a7" + integrity sha512-qWyanQKXOsK84S8rP7QBrqsvUdQ0nZABZmTjXMpb3ox4Bp5IbkscREA3OPUrkgl64mAxwwCzIWcOc3BPTCPjQw== + dependencies: + "@volar/typescript" "~1.10.0" + "@vue/language-core" "1.8.15" + +acorn-jsx@^5.3.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn-walk@^8.1.1, acorn-walk@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" + integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== + +acorn@^8.10.0, acorn@^8.4.1, acorn@^8.8.2, acorn@^8.9.0: + version "8.10.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" + integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== + +ajv@^6.12.4: + 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" + +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== + +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== + +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" + +ansi-styles@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== + +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== + +arg@^4.1.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== + +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== + +array-buffer-byte-length@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" + integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A== + dependencies: + call-bind "^1.0.2" + is-array-buffer "^3.0.1" + +array-includes@^3.1.6: + version "3.1.7" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.7.tgz#8cd2e01b26f7a3086cbc87271593fe921c62abda" + integrity sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + get-intrinsic "^1.2.1" + is-string "^1.0.7" + +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.prototype.findlastindex@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz#b37598438f97b579166940814e2c0493a4f50207" + integrity sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + es-shim-unscopables "^1.0.0" + get-intrinsic "^1.2.1" + +array.prototype.flat@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18" + integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + es-shim-unscopables "^1.0.0" + +array.prototype.flatmap@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz#c9a7c6831db8e719d6ce639190146c24bbd3e527" + integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + es-shim-unscopables "^1.0.0" + +arraybuffer.prototype.slice@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz#98bd561953e3e74bb34938e77647179dfe6e9f12" + integrity sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw== + dependencies: + array-buffer-byte-length "^1.0.0" + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + get-intrinsic "^1.2.1" + is-array-buffer "^3.0.2" + is-shared-array-buffer "^1.0.2" + +assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== + +autoprefixer@^10.4.14: + version "10.4.16" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.16.tgz#fad1411024d8670880bdece3970aa72e3572feb8" + integrity sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ== + dependencies: + browserslist "^4.21.10" + caniuse-lite "^1.0.30001538" + fraction.js "^4.3.6" + normalize-range "^0.1.2" + picocolors "^1.0.0" + postcss-value-parser "^4.2.0" + +available-typed-arrays@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" + integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== + +axios@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.5.1.tgz#11fbaa11fc35f431193a9564109c88c1f27b585f" + integrity sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A== + dependencies: + follow-redirects "^1.15.0" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + +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== + +blueimp-md5@^2.10.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/blueimp-md5/-/blueimp-md5-2.19.0.tgz#b53feea5498dcb53dc6ec4b823adb84b729c4af0" + integrity sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w== + +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== + +bootstrap@^5.3.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-5.3.2.tgz#97226583f27aae93b2b28ab23f4c114757ff16ae" + integrity sha512-D32nmNWiQHo94BKHLmOrdjlL05q1c8oxbtBphQFb9Z5to6eGRDCm0QgeaZ4zFBHzfg2++rqa2JkqCcxDy0sH0g== + +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" + +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: + balanced-match "^1.0.0" + +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" + +browserslist@^4.21.10: + version "4.22.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" + integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== + dependencies: + caniuse-lite "^1.0.30001541" + electron-to-chromium "^1.4.535" + node-releases "^2.0.13" + update-browserslist-db "^1.0.13" + +builtins@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-5.0.1.tgz#87f6db9ab0458be728564fa81d876d8d74552fa9" + integrity sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ== + dependencies: + semver "^7.0.0" + +cac@^6.7.14: + version "6.7.14" + resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" + integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== + +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" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +caniuse-lite@^1.0.30001538, caniuse-lite@^1.0.30001541: + version "1.0.30001542" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001542.tgz#823ddb5aed0a70d5e2bfb49126478e84e9514b85" + integrity sha512-UrtAXVcj1mvPBFQ4sKd38daP8dEcXXr5sQe6QNNinaPd0iA/cxg9/l3VrSdL73jgw5sKyuQ6jNgiKO12W3SsVA== + +chai@^4.3.7: + version "4.3.10" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.10.tgz#d784cec635e3b7e2ffb66446a63b4e33bd390384" + integrity sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.3" + deep-eql "^4.1.3" + get-func-name "^2.0.2" + loupe "^2.3.6" + pathval "^1.1.1" + type-detect "^4.0.8" + +chalk@^4.0.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +check-error@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== + dependencies: + get-func-name "^2.0.2" + +codemirror@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-6.0.1.tgz#62b91142d45904547ee3e0e0e4c1a79158035a29" + integrity sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg== + dependencies: + "@codemirror/autocomplete" "^6.0.0" + "@codemirror/commands" "^6.0.0" + "@codemirror/language" "^6.0.0" + "@codemirror/lint" "^6.0.0" + "@codemirror/search" "^6.0.0" + "@codemirror/state" "^6.0.0" + "@codemirror/view" "^6.0.0" + +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.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== + +combined-stream@^1.0.8: + 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" + +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== + +concordance@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/concordance/-/concordance-5.0.4.tgz#9896073261adced72f88d60e4d56f8efc4bbbbd2" + integrity sha512-OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw== + dependencies: + date-time "^3.1.0" + esutils "^2.0.3" + fast-diff "^1.2.0" + js-string-escape "^1.0.1" + lodash "^4.17.15" + md5-hex "^3.0.1" + semver "^7.3.2" + well-known-symbols "^2.0.0" + +create-require@^1.1.0: + 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== + +crelt@^1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/crelt/-/crelt-1.0.6.tgz#7cc898ea74e190fb6ef9dae57f8f81cf7302df72" + integrity sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g== + +cross-spawn@^7.0.0, cross-spawn@^7.0.2: + 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" + +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== + +csstype@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" + integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== + +date-time@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/date-time/-/date-time-3.1.0.tgz#0d1e934d170579f481ed8df1e2b8ff70ee845e1e" + integrity sha512-uqCUKXE5q1PNBXjPqvwhwJf9SwMoAHBgWJ6DcrnS5o+W2JOiIILl0JEdVD8SGujrNS02GGxgwAg2PN2zONgtjg== + dependencies: + time-zone "^1.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 sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== + +debug@^3.2.7: + 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.1.1, debug@^4.3.2, debug@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +deep-eql@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.3.tgz#7c7775513092f7df98d8df9996dd085eb668cc6d" + integrity sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw== + dependencies: + type-detect "^4.0.0" + +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +define-data-property@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.0.tgz#0db13540704e1d8d479a0656cf781267531b9451" + integrity sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g== + dependencies: + get-intrinsic "^1.2.1" + gopd "^1.0.1" + has-property-descriptors "^1.0.0" + +define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== + +diff@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" + integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== + +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" + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +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-serializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" + integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.2" + entities "^4.2.0" + +domelementtype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== + +domhandler@^5.0.2, domhandler@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" + integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== + dependencies: + domelementtype "^2.3.0" + +domutils@^3.0.1: + version "3.1.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e" + integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA== + dependencies: + dom-serializer "^2.0.0" + domelementtype "^2.3.0" + domhandler "^5.0.3" + +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== + +electron-to-chromium@^1.4.535: + version "1.4.537" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.537.tgz#aac4101db53066be1e49baedd000a26bc754adc9" + integrity sha512-W1+g9qs9hviII0HAwOdehGYkr+zt7KKdmCcJcjH0mYg6oL8+ioT3Skjmt7BLoAQqXhjf40AXd+HlR4oAWMlXjA== + +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== + +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== + +entities@^4.2.0, entities@^4.4.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== + +es-abstract@^1.22.1: + version "1.22.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.2.tgz#90f7282d91d0ad577f505e423e52d4c1d93c1b8a" + integrity sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA== + dependencies: + array-buffer-byte-length "^1.0.0" + arraybuffer.prototype.slice "^1.0.2" + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + es-set-tostringtag "^2.0.1" + es-to-primitive "^1.2.1" + function.prototype.name "^1.1.6" + get-intrinsic "^1.2.1" + get-symbol-description "^1.0.0" + globalthis "^1.0.3" + gopd "^1.0.1" + has "^1.0.3" + has-property-descriptors "^1.0.0" + has-proto "^1.0.1" + has-symbols "^1.0.3" + internal-slot "^1.0.5" + is-array-buffer "^3.0.2" + is-callable "^1.2.7" + is-negative-zero "^2.0.2" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.2" + is-string "^1.0.7" + is-typed-array "^1.1.12" + is-weakref "^1.0.2" + object-inspect "^1.12.3" + object-keys "^1.1.1" + object.assign "^4.1.4" + regexp.prototype.flags "^1.5.1" + safe-array-concat "^1.0.1" + safe-regex-test "^1.0.0" + string.prototype.trim "^1.2.8" + string.prototype.trimend "^1.0.7" + string.prototype.trimstart "^1.0.7" + typed-array-buffer "^1.0.0" + typed-array-byte-length "^1.0.0" + typed-array-byte-offset "^1.0.0" + typed-array-length "^1.0.4" + unbox-primitive "^1.0.2" + which-typed-array "^1.1.11" + +es-set-tostringtag@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" + integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== + dependencies: + get-intrinsic "^1.1.3" + has "^1.0.3" + has-tostringtag "^1.0.0" + +es-shim-unscopables@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" + integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== + dependencies: + has "^1.0.3" + +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" + +esbuild@^0.18.10: + version "0.18.20" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.18.20.tgz#4709f5a34801b43b799ab7d6d82f7284a9b7a7a6" + integrity sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA== + optionalDependencies: + "@esbuild/android-arm" "0.18.20" + "@esbuild/android-arm64" "0.18.20" + "@esbuild/android-x64" "0.18.20" + "@esbuild/darwin-arm64" "0.18.20" + "@esbuild/darwin-x64" "0.18.20" + "@esbuild/freebsd-arm64" "0.18.20" + "@esbuild/freebsd-x64" "0.18.20" + "@esbuild/linux-arm" "0.18.20" + "@esbuild/linux-arm64" "0.18.20" + "@esbuild/linux-ia32" "0.18.20" + "@esbuild/linux-loong64" "0.18.20" + "@esbuild/linux-mips64el" "0.18.20" + "@esbuild/linux-ppc64" "0.18.20" + "@esbuild/linux-riscv64" "0.18.20" + "@esbuild/linux-s390x" "0.18.20" + "@esbuild/linux-x64" "0.18.20" + "@esbuild/netbsd-x64" "0.18.20" + "@esbuild/openbsd-x64" "0.18.20" + "@esbuild/sunos-x64" "0.18.20" + "@esbuild/win32-arm64" "0.18.20" + "@esbuild/win32-ia32" "0.18.20" + "@esbuild/win32-x64" "0.18.20" + +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-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== + +eslint-config-prettier@^8.3.0, eslint-config-prettier@^8.8.0: + version "8.10.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz#3a06a662130807e2502fc3ff8b4143d8a0658e11" + integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg== + +eslint-config-standard@^17.0.0: + version "17.1.0" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz#40ffb8595d47a6b242e07cbfd49dc211ed128975" + integrity sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q== + +eslint-import-resolver-custom-alias@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-custom-alias/-/eslint-import-resolver-custom-alias-1.3.2.tgz#e509097e87de7a10b8c205c24644c3eb3fdf03c4" + integrity sha512-wBPcZA2k6/IXaT8FsLMyiyVSG6WVEuaYIAbeKLXeGwr523BmeB9lKAAoLJWSqp3txsnU4gpkgD2x1q6K8k0uDQ== + dependencies: + glob-parent "^6.0.2" + resolve "^1.22.2" + +eslint-import-resolver-node@^0.3.6, eslint-import-resolver-node@^0.3.7: + version "0.3.9" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac" + integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== + dependencies: + debug "^3.2.7" + is-core-module "^2.13.0" + resolve "^1.22.4" + +eslint-module-utils@^2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz#e439fee65fc33f6bba630ff621efc38ec0375c49" + integrity sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw== + dependencies: + debug "^3.2.7" + +eslint-plugin-es@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz#f0822f0c18a535a97c3e714e89f88586a7641ec9" + integrity sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ== + dependencies: + eslint-utils "^2.0.0" + regexpp "^3.0.0" + +eslint-plugin-html@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-html/-/eslint-plugin-html-7.1.0.tgz#aec2a3772b40ccf51a5be4f972f07600539d3b3e" + integrity sha512-fNLRraV/e6j8e3XYOC9xgND4j+U7b1Rq+OygMlLcMg+wI/IpVbF+ubQa3R78EjKB9njT6TQOlcK5rFKBVVtdfg== + dependencies: + htmlparser2 "^8.0.1" + +eslint-plugin-import@^2.26.0: + version "2.28.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz#63b8b5b3c409bfc75ebaf8fb206b07ab435482c4" + integrity sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A== + dependencies: + array-includes "^3.1.6" + array.prototype.findlastindex "^1.2.2" + array.prototype.flat "^1.3.1" + array.prototype.flatmap "^1.3.1" + debug "^3.2.7" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.7" + eslint-module-utils "^2.8.0" + has "^1.0.3" + is-core-module "^2.13.0" + is-glob "^4.0.3" + minimatch "^3.1.2" + object.fromentries "^2.0.6" + object.groupby "^1.0.0" + object.values "^1.1.6" + semver "^6.3.1" + tsconfig-paths "^3.14.2" + +eslint-plugin-n@^15.2.4: + version "15.7.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-n/-/eslint-plugin-n-15.7.0.tgz#e29221d8f5174f84d18f2eb94765f2eeea033b90" + integrity sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q== + dependencies: + builtins "^5.0.1" + eslint-plugin-es "^4.1.0" + eslint-utils "^3.0.0" + ignore "^5.1.1" + is-core-module "^2.11.0" + minimatch "^3.1.2" + resolve "^1.22.1" + semver "^7.3.8" + +eslint-plugin-prettier@^4.0.0, eslint-plugin-prettier@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz#651cbb88b1dab98bfd42f017a12fa6b2d993f94b" + integrity sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ== + dependencies: + prettier-linter-helpers "^1.0.0" + +eslint-plugin-promise@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz#269a3e2772f62875661220631bd4dafcb4083816" + integrity sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig== + +eslint-plugin-vue@^9.10.0: + version "9.17.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.17.0.tgz#4501547373f246547083482838b4c8f4b28e5932" + integrity sha512-r7Bp79pxQk9I5XDP0k2dpUC7Ots3OSWgvGZNu3BxmKK6Zg7NgVtcOB6OCna5Kb9oQwJPl5hq183WD0SY5tZtIQ== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + natural-compare "^1.4.0" + nth-check "^2.1.1" + postcss-selector-parser "^6.0.13" + semver "^7.5.4" + vue-eslint-parser "^9.3.1" + xml-name-validator "^4.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-scope@^7.1.1, eslint-scope@^7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" + integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== + dependencies: + esrecurse "^4.3.0" + estraverse "^5.2.0" + +eslint-utils@^2.0.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-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + +eslint-visitor-keys@^1.1.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.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== + +eslint@^8.38.0: + version "8.50.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.50.0.tgz#2ae6015fee0240fcd3f83e1e25df0287f487d6b2" + integrity sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@eslint-community/regexpp" "^4.6.1" + "@eslint/eslintrc" "^2.1.2" + "@eslint/js" "8.50.0" + "@humanwhocodes/config-array" "^0.11.11" + "@humanwhocodes/module-importer" "^1.0.1" + "@nodelib/fs.walk" "^1.2.8" + ajv "^6.12.4" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.3.2" + doctrine "^3.0.0" + escape-string-regexp "^4.0.0" + eslint-scope "^7.2.2" + eslint-visitor-keys "^3.4.3" + espree "^9.6.1" + esquery "^1.4.2" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + find-up "^5.0.0" + glob-parent "^6.0.2" + globals "^13.19.0" + graphemer "^1.4.0" + ignore "^5.2.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + is-path-inside "^3.0.3" + js-yaml "^4.1.0" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.1.2" + natural-compare "^1.4.0" + optionator "^0.9.3" + strip-ansi "^6.0.1" + text-table "^0.2.0" + +espree@^9.3.1, espree@^9.6.0, espree@^9.6.1: + version "9.6.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" + integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== + dependencies: + acorn "^8.9.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^3.4.1" + +esquery@^1.4.0, esquery@^1.4.2: + version "1.5.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" + integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== + dependencies: + estraverse "^5.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.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +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== + +esutils@^2.0.2, esutils@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + 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, fast-diff@^1.2.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0" + integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== + +fast-glob@^3.2.9: + version "3.3.1" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4" + integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg== + dependencies: + "@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" + +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: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + +fastq@^1.6.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" + integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== + dependencies: + reusify "^1.0.4" + +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" + +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" + +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +flat-cache@^3.0.4: + version "3.1.0" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.1.0.tgz#0e54ab4a1a60fe87e2946b6b00657f1c99e1af3f" + integrity sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew== + dependencies: + flatted "^3.2.7" + keyv "^4.5.3" + rimraf "^3.0.2" + +flatted@^3.2.7: + version "3.2.9" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.9.tgz#7eb4c67ca1ba34232ca9d2d93e9886e611ad7daf" + integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ== + +follow-redirects@^1.15.0: + version "1.15.3" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" + integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== + +for-each@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== + dependencies: + is-callable "^1.1.3" + +foreground-child@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d" + integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^4.0.1" + +form-data@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +fraction.js@^4.3.6: + version "4.3.6" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.6.tgz#e9e3acec6c9a28cf7bc36cbe35eea4ceb2c5c92d" + integrity sha512-n2aZ9tNfYDwaHhvFTkhFErqOMIb8uyzSQ+vGJBjZyanAKZVbGUQ1sngfk9FdkBw7G26O7AgNjLcecLffD1c7eg== + +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== + +fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +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== + +function.prototype.name@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd" + integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + functions-have-names "^1.2.3" + +functions-have-names@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== + +get-func-name@^2.0.0, get-func-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== + +get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82" + integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-proto "^1.0.1" + has-symbols "^1.0.3" + +get-symbol-description@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" + integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.1.1" + +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: + is-glob "^4.0.1" + +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: + is-glob "^4.0.3" + +glob@^10.2.1: + version "10.3.10" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" + integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.3.5" + minimatch "^9.0.1" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-scurry "^1.10.1" + +glob@^7.1.3: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + 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" + +globals@^13.19.0: + version "13.22.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.22.0.tgz#0c9fcb9c48a2494fbb5edbfee644285543eba9d8" + integrity sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw== + dependencies: + type-fest "^0.20.2" + +globalthis@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" + integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== + dependencies: + define-properties "^1.1.3" + +globby@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== + dependencies: + get-intrinsic "^1.1.3" + +graphemer@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" + integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== + +has-bigints@^1.0.1, has-bigints@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== + +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-property-descriptors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" + integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== + dependencies: + get-intrinsic "^1.1.1" + +has-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" + integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== + +has-symbols@^1.0.2, has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + +has-tostringtag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== + dependencies: + has-symbols "^1.0.2" + +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" + +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== + +htmlparser2@^8.0.1: + version "8.0.2" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.2.tgz#f002151705b383e62433b5cf466f5b716edaec21" + integrity sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.3" + domutils "^3.0.1" + entities "^4.4.0" + +ignore@^5.1.1, ignore@^5.2.0: + version "5.2.4" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" + integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== + +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" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +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" + +inherits@2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +internal-slot@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986" + integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== + dependencies: + get-intrinsic "^1.2.0" + has "^1.0.3" + side-channel "^1.0.4" + +is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" + integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.2.0" + is-typed-array "^1.1.10" + +is-bigint@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" + +is-boolean-object@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== + +is-core-module@^2.11.0, is-core-module@^2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db" + integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ== + dependencies: + has "^1.0.3" + +is-date-object@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.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 sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +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-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-negative-zero@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" + integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== + +is-number-object@^1.0.4: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== + dependencies: + has-tostringtag "^1.0.0" + +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-path-inside@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + +is-regex@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-shared-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" + integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== + dependencies: + call-bind "^1.0.2" + +is-string@^1.0.5, is-string@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== + dependencies: + has-tostringtag "^1.0.0" + +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + dependencies: + has-symbols "^1.0.2" + +is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9: + version "1.1.12" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.12.tgz#d0bab5686ef4a76f7a73097b95470ab199c57d4a" + integrity sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg== + dependencies: + which-typed-array "^1.1.11" + +is-weakref@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" + integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== + dependencies: + call-bind "^1.0.2" + +isarray@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +jackspeak@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" + integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + +js-string-escape@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" + integrity sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== + +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: + argparse "^2.0.1" + +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + +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-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 sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== + +json5@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== + dependencies: + minimist "^1.2.0" + +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== + +keyv@^4.5.3: + version "4.5.3" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.3.tgz#00873d2b046df737963157bd04f294ca818c9c25" + integrity sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug== + dependencies: + json-buffer "3.0.1" + +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" + +local-pkg@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.4.3.tgz#0ff361ab3ae7f1c19113d9bb97b98b905dbc4963" + integrity sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g== + +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + +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@^4.17.15, lodash@^4.17.21: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +loupe@^2.3.6: + version "2.3.6" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.6.tgz#76e4af498103c532d1ecc9be102036a21f787b53" + integrity sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA== + dependencies: + get-func-name "^2.0.0" + +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" + +"lru-cache@^9.1.1 || ^10.0.0": + version "10.0.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a" + integrity sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g== + +magic-string@^0.30.0: + version "0.30.4" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.4.tgz#c2c683265fc18dda49b56fc7318d33ca0332c98c" + integrity sha512-Q/TKtsC5BPm0kGqgBIF9oXAs/xEf2vRKiIB4wCRQTJOQIByZ1d+NnUOotvJOvNpi5RNIgVOMC3pOuaP1ZTDlVg== + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.15" + +make-error@^1.1.1: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +marked@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/marked/-/marked-4.3.0.tgz#796362821b019f734054582038b116481b456cf3" + integrity sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A== + +md5-hex@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/md5-hex/-/md5-hex-3.0.1.tgz#be3741b510591434b2784d79e556eefc2c9a8e5c" + integrity sha512-BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw== + dependencies: + blueimp-md5 "^2.10.0" + +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== + +micromatch@^4.0.4: + 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" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^9.0.0, minimatch@^9.0.1: + version "9.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" + integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.2.0, minimist@^1.2.6: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": + version "7.0.4" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" + integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== + +mlly@^1.2.0: + version "1.4.2" + resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.4.2.tgz#7cf406aa319ff6563d25da6b36610a93f2a8007e" + integrity sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg== + dependencies: + acorn "^8.10.0" + pathe "^1.1.1" + pkg-types "^1.0.3" + ufo "^1.3.0" + +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== + +muggle-string@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/muggle-string/-/muggle-string-0.3.1.tgz#e524312eb1728c63dd0b2ac49e3282e6ed85963a" + integrity sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg== + +nanoid@^3.3.6: + version "3.3.6" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" + integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== + +natural-compare-lite@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +node-releases@^2.0.13: + version "2.0.13" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" + integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== + +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== + +nth-check@^2.1.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: + boolbase "^1.0.0" + +object-inspect@^1.12.3, object-inspect@^1.9.0: + version "1.12.3" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" + integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== + +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.assign@^4.1.4: + version "4.1.4" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" + integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + has-symbols "^1.0.3" + object-keys "^1.1.1" + +object.fromentries@^2.0.6: + version "2.0.7" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.7.tgz#71e95f441e9a0ea6baf682ecaaf37fa2a8d7e616" + integrity sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +object.groupby@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.1.tgz#d41d9f3c8d6c778d9cbac86b4ee9f5af103152ee" + integrity sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + get-intrinsic "^1.2.1" + +object.values@^1.1.6: + version "1.1.7" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.7.tgz#617ed13272e7e1071b43973aa1655d9291b8442a" + integrity sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +once@^1.3.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: + wrappy "1" + +optionator@^0.9.3: + version "0.9.3" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" + integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== + dependencies: + "@aashutoshrathi/word-wrap" "^1.2.3" + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.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-limit@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" + integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== + dependencies: + yocto-queue "^1.0.0" + +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +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" + +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.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +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.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== + +path-scurry@^1.10.1: + version "1.10.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698" + integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ== + dependencies: + lru-cache "^9.1.1 || ^10.0.0" + minipass "^5.0.0 || ^6.0.2 || ^7.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== + +pathe@^1.1.0, pathe@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.1.tgz#1dd31d382b974ba69809adc9a7a347e65d84829a" + integrity sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q== + +pathval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== + +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== + +picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +pinia@^2.0.34: + version "2.1.6" + resolved "https://registry.yarnpkg.com/pinia/-/pinia-2.1.6.tgz#e88959f14b61c4debd9c42d0c9944e2875cbe0fa" + integrity sha512-bIU6QuE5qZviMmct5XwCesXelb5VavdOWKWaB17ggk++NUwQWWbP5YnsONTk3b752QkW9sACiR81rorpeOMSvQ== + dependencies: + "@vue/devtools-api" "^6.5.0" + vue-demi ">=0.14.5" + +pkg-types@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.0.3.tgz#988b42ab19254c01614d13f4f65a2cfc7880f868" + integrity sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A== + dependencies: + jsonc-parser "^3.2.0" + mlly "^1.2.0" + pathe "^1.1.0" + +postcss-selector-parser@^6.0.13: + version "6.0.13" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b" + integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +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== + +postcss@^8.1.10, postcss@^8.4.23, postcss@^8.4.27: + version "8.4.31" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" + integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== + dependencies: + nanoid "^3.3.6" + picocolors "^1.0.0" + source-map-js "^1.0.2" + +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== + +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@^2.8.7: + version "2.8.8" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" + integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== + +pretty-format@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" + integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== + dependencies: + ansi-regex "^5.0.1" + ansi-styles "^5.0.0" + react-is "^17.0.1" + +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + +punycode@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + +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== + +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== + +regexp.prototype.flags@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz#90ce989138db209f81492edd734183ce99f9677e" + integrity sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + set-function-name "^2.0.0" + +regexpp@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + +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@^1.22.1, resolve@^1.22.2, resolve@^1.22.4: + version "1.22.6" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.6.tgz#dd209739eca3aef739c626fea1b4f3c506195362" + integrity sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +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== + +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" + +rollup@^3.27.1: + version "3.29.4" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.29.4.tgz#4d70c0f9834146df8705bfb69a9a19c9e1109981" + integrity sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw== + optionalDependencies: + fsevents "~2.3.2" + +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" + +safe-array-concat@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.0.1.tgz#91686a63ce3adbea14d61b14c99572a8ff84754c" + integrity sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.2.1" + has-symbols "^1.0.3" + isarray "^2.0.5" + +safe-regex-test@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" + integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.1.3" + is-regex "^1.1.4" + +semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^7.0.0, semver@^7.3.2, semver@^7.3.6, semver@^7.3.7, semver@^7.3.8, semver@^7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +set-function-name@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.1.tgz#12ce38b7954310b9f61faa12701620a0c882793a" + integrity sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA== + dependencies: + define-data-property "^1.0.1" + functions-have-names "^1.2.3" + has-property-descriptors "^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@^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== + +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" + +siginfo@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/siginfo/-/siginfo-2.0.0.tgz#32e76c70b79724e3bb567cb9d543eb858ccfaf30" + integrity sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g== + +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +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@^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== + +stackback@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/stackback/-/stackback-0.0.2.tgz#1ac8a0d9483848d1695e418b6d031a3c3ce68e3b" + integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== + +std-env@^3.3.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.4.3.tgz#326f11db518db751c83fd58574f449b7c3060910" + integrity sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q== + +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0: + name string-width-cjs + 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.1" + +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: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +string.prototype.trim@^1.2.8: + version "1.2.8" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" + integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +string.prototype.trimend@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz#1bb3afc5008661d73e2dc015cd4853732d6c471e" + integrity sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +string.prototype.trimstart@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz#d4cdb44b83a4737ffbac2d406e405d43d0184298" + integrity sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", 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.1" + +strip-ansi@^7.0.1: + version "7.1.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" + integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== + dependencies: + ansi-regex "^6.0.1" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== + +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== + +strip-literal@^1.0.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/strip-literal/-/strip-literal-1.3.0.tgz#db3942c2ec1699e6836ad230090b84bb458e3a07" + integrity sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg== + dependencies: + acorn "^8.10.0" + +style-mod@^4.0.0, style-mod@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/style-mod/-/style-mod-4.1.0.tgz#a313a14f4ae8bb4d52878c0053c4327fb787ec09" + integrity sha512-Ca5ib8HrFn+f+0n4N4ScTIA9iTOQ7MaGS1ylHcoVqW9J7w2w8PzN6g9gKmTYgGEBH8e120+RCmhpje6jC5uGWA== + +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-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== + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== + +time-zone@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/time-zone/-/time-zone-1.0.0.tgz#99c5bf55958966af6d06d83bdf3800dc82faec5d" + integrity sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA== + +tinybench@^2.4.0: + version "2.5.1" + resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.5.1.tgz#3408f6552125e53a5a48adee31261686fd71587e" + integrity sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg== + +tinypool@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-0.4.0.tgz#3cf3ebd066717f9f837e8d7d31af3c127fdb5446" + integrity sha512-2ksntHOKf893wSAH4z/+JbPpi92esw8Gn9N2deXX+B0EO92hexAVI9GIZZPx7P5aYo5KULfeOSt3kMOmSOy6uA== + +tinyspy@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-2.1.1.tgz#9e6371b00c259e5c5b301917ca18c01d40ae558c" + integrity sha512-XPJL2uSzcOyBMky6OFrusqWlzfFrXtE0hPuMgW8A2HmaqrPo4ZQHRN/V0QXN3FSjKxpsbRrFc5LI7KOwBsT1/w== + +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" + +ts-node@^10.9.1: + version "10.9.1" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" + integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== + dependencies: + "@cspotcode/source-map-support" "^0.8.0" + "@tsconfig/node10" "^1.0.7" + "@tsconfig/node12" "^1.0.7" + "@tsconfig/node14" "^1.0.0" + "@tsconfig/node16" "^1.0.2" + acorn "^8.4.1" + acorn-walk "^8.1.1" + arg "^4.1.0" + create-require "^1.1.0" + diff "^4.0.1" + make-error "^1.1.1" + v8-compile-cache-lib "^3.0.1" + yn "3.1.1" + +tsconfig-paths@^3.14.2: + version "3.14.2" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz#6e32f1f79412decd261f92d633a9dc1cfa99f088" + integrity sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.2" + minimist "^1.2.6" + strip-bom "^3.0.0" + +tslib@^1.8.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tsutils@^3.21.0: + 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" + +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-detect@^4.0.0, 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== + +typed-array-buffer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" + integrity sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.2.1" + is-typed-array "^1.1.10" + +typed-array-byte-length@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz#d787a24a995711611fb2b87a4052799517b230d0" + integrity sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA== + dependencies: + call-bind "^1.0.2" + for-each "^0.3.3" + has-proto "^1.0.1" + is-typed-array "^1.1.10" + +typed-array-byte-offset@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz#cbbe89b51fdef9cd6aaf07ad4707340abbc4ea0b" + integrity sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg== + dependencies: + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + for-each "^0.3.3" + has-proto "^1.0.1" + is-typed-array "^1.1.10" + +typed-array-length@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" + integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== + dependencies: + call-bind "^1.0.2" + for-each "^0.3.3" + is-typed-array "^1.1.9" + +typescript@^4.9.3: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== + +ufo@^1.3.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.3.1.tgz#e085842f4627c41d4c1b60ebea1f75cdab4ce86b" + integrity sha512-uY/99gMLIOlJPwATcMVYfqDSxUR9//AUcgZMzwfSTJPDKzA1S8mX4VLqa+fiAtveraQUBCz4FFcwVZBGbwBXIw== + +unbox-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== + dependencies: + call-bind "^1.0.2" + has-bigints "^1.0.2" + has-symbols "^1.0.3" + which-boxed-primitive "^1.0.2" + +update-browserslist-db@^1.0.13: + version "1.0.13" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" + integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== + dependencies: + escalade "^3.1.1" + picocolors "^1.0.0" + +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" + +util-deprecate@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +v8-compile-cache-lib@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== + +vite-node@0.30.1: + version "0.30.1" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-0.30.1.tgz#ab0ed1553019c7d81ac95529c57ab8ac9e82347d" + integrity sha512-vTikpU/J7e6LU/8iM3dzBo8ZhEiKZEKRznEMm+mJh95XhWaPrJQraT/QsT2NWmuEf+zgAoMe64PKT7hfZ1Njmg== + dependencies: + cac "^6.7.14" + debug "^4.3.4" + mlly "^1.2.0" + pathe "^1.1.0" + picocolors "^1.0.0" + vite "^3.0.0 || ^4.0.0" + +"vite@^3.0.0 || ^4.0.0", vite@^4.2.0: + version "4.4.9" + resolved "https://registry.yarnpkg.com/vite/-/vite-4.4.9.tgz#1402423f1a2f8d66fd8d15e351127c7236d29d3d" + integrity sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA== + dependencies: + esbuild "^0.18.10" + postcss "^8.4.27" + rollup "^3.27.1" + optionalDependencies: + fsevents "~2.3.2" + +vitest@^0.30.1: + version "0.30.1" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-0.30.1.tgz#351d4a2f27aa8cc0245e3583e3ed45e30efc71d6" + integrity sha512-y35WTrSTlTxfMLttgQk4rHcaDkbHQwDP++SNwPb+7H8yb13Q3cu2EixrtHzF27iZ8v0XCciSsLg00RkPAzB/aA== + dependencies: + "@types/chai" "^4.3.4" + "@types/chai-subset" "^1.3.3" + "@types/node" "*" + "@vitest/expect" "0.30.1" + "@vitest/runner" "0.30.1" + "@vitest/snapshot" "0.30.1" + "@vitest/spy" "0.30.1" + "@vitest/utils" "0.30.1" + acorn "^8.8.2" + acorn-walk "^8.2.0" + cac "^6.7.14" + chai "^4.3.7" + concordance "^5.0.4" + debug "^4.3.4" + local-pkg "^0.4.3" + magic-string "^0.30.0" + pathe "^1.1.0" + picocolors "^1.0.0" + source-map "^0.6.1" + std-env "^3.3.2" + strip-literal "^1.0.1" + tinybench "^2.4.0" + tinypool "^0.4.0" + vite "^3.0.0 || ^4.0.0" + vite-node "0.30.1" + why-is-node-running "^2.2.2" + +vue-codemirror@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/vue-codemirror/-/vue-codemirror-6.1.1.tgz#246697ef4cfa6b2448dd592ade214bb7ff86611f" + integrity sha512-rTAYo44owd282yVxKtJtnOi7ERAcXTeviwoPXjIc6K/IQYUsoDkzPvw/JDFtSP6T7Cz/2g3EHaEyeyaQCKoDMg== + dependencies: + "@codemirror/commands" "6.x" + "@codemirror/language" "6.x" + "@codemirror/state" "6.x" + "@codemirror/view" "6.x" + +vue-demi@>=0.14.5: + version "0.14.6" + resolved "https://registry.yarnpkg.com/vue-demi/-/vue-demi-0.14.6.tgz#dc706582851dc1cdc17a0054f4fec2eb6df74c92" + integrity sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w== + +vue-eslint-parser@^9.1.1, vue-eslint-parser@^9.3.1: + version "9.3.1" + resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-9.3.1.tgz#429955e041ae5371df5f9e37ebc29ba046496182" + integrity sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g== + dependencies: + debug "^4.3.4" + eslint-scope "^7.1.1" + eslint-visitor-keys "^3.3.0" + espree "^9.3.1" + esquery "^1.4.0" + lodash "^4.17.21" + semver "^7.3.6" + +vue-router@4: + version "4.2.5" + resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-4.2.5.tgz#b9e3e08f1bd9ea363fdd173032620bc50cf0e98a" + integrity sha512-DIUpKcyg4+PTQKfFPX88UWhlagBEBEfJ5A8XDXRJLUnZOvcpMF8o/dnL90vpVkGaPbjvXazV/rC1qBKrZlFugw== + dependencies: + "@vue/devtools-api" "^6.5.0" + +vue-screen@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/vue-screen/-/vue-screen-2.3.2.tgz#5ce82765b64d1c2f8785c6e62873a24faabca4b0" + integrity sha512-xydUP1vC6slHPOFb90k6v4nT2gW7LSIhH+5nTrUUei8iJFdKQ8NY39K42HCyjVOZII1gN1jHMJeZjhMN6BsJ8g== + +vue-template-compiler@^2.7.14: + version "2.7.14" + resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz#4545b7dfb88090744c1577ae5ac3f964e61634b1" + integrity sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ== + dependencies: + de-indent "^1.0.2" + he "^1.2.0" + +vue-tsc@^1.2.0: + version "1.8.15" + resolved "https://registry.yarnpkg.com/vue-tsc/-/vue-tsc-1.8.15.tgz#e00faee4215b65e797efc29200ab9ad9432318df" + integrity sha512-4DoB3LUj7IToLmggoCxRiFG+QU5lem0nv03m1ocqugXA9rSVoTOEoYYaP8vu8b99Eh+/cCVdYOeIAQ+RsgUYUw== + dependencies: + "@vue/language-core" "1.8.15" + "@vue/typescript" "1.8.15" + semver "^7.3.8" + +vue@^3.2.47: + version "3.3.4" + resolved "https://registry.yarnpkg.com/vue/-/vue-3.3.4.tgz#8ed945d3873667df1d0fcf3b2463ada028f88bd6" + integrity sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw== + dependencies: + "@vue/compiler-dom" "3.3.4" + "@vue/compiler-sfc" "3.3.4" + "@vue/runtime-dom" "3.3.4" + "@vue/server-renderer" "3.3.4" + "@vue/shared" "3.3.4" + +w3c-keyname@^2.2.4: + version "2.2.8" + resolved "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-2.2.8.tgz#7b17c8c6883d4e8b86ac8aba79d39e880f8869c5" + integrity sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ== + +well-known-symbols@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/well-known-symbols/-/well-known-symbols-2.0.0.tgz#e9c7c07dbd132b7b84212c8174391ec1f9871ba5" + integrity sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q== + +which-boxed-primitive@^1.0.2: + 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-typed-array@^1.1.11: + version "1.1.11" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.11.tgz#99d691f23c72aab6768680805a271b69761ed61a" + integrity sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew== + dependencies: + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.0" + +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" + +why-is-node-running@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.2.2.tgz#4185b2b4699117819e7154594271e7e344c9973e" + integrity sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA== + dependencies: + siginfo "^2.0.0" + stackback "0.0.2" + +"wrap-ansi-cjs@npm: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" + +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + 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 sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +xml-name-validator@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" + integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== + +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== + +yn@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== + +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== + +yocto-queue@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.0.0.tgz#7f816433fb2cbc511ec8bf7d263c3b58a1a3c251" + integrity sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g== From c543c9d6b92d1dbcf951fcfaa4dcca37d0458c5b Mon Sep 17 00:00:00 2001 From: benoit74 Date: Tue, 10 Oct 2023 16:49:55 +0200 Subject: [PATCH 03/21] Fix UI bug when rendering an ePub with a hack --- scraper/src/kolibri2zim/scraper.py | 4 ++++ scraper/src/kolibri2zim/templates/base.html | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/scraper/src/kolibri2zim/scraper.py b/scraper/src/kolibri2zim/scraper.py index 7465baf..a8c65f5 100644 --- a/scraper/src/kolibri2zim/scraper.py +++ b/scraper/src/kolibri2zim/scraper.py @@ -785,6 +785,9 @@ def target_for(file): if file["ext"] == "epub": return f"../assets/epub_embed.html?url=../static/{filename}" + def get_is_epub(file): + return file["ext"] == "epub" + # record the actual document files = self.db.get_node_files(node_id, thumbnail=False) if not files: @@ -828,6 +831,7 @@ def target_for(file): alt_document_ext=alt_document["ext"] if alt_document else None, target=target_for(alt_document if is_alt else main_document), is_alt=is_alt, + is_epub=get_is_epub(alt_document if is_alt else main_document), **node, ) with self.creator_lock: diff --git a/scraper/src/kolibri2zim/templates/base.html b/scraper/src/kolibri2zim/templates/base.html index f3f4abe..98a0efc 100644 --- a/scraper/src/kolibri2zim/templates/base.html +++ b/scraper/src/kolibri2zim/templates/base.html @@ -37,6 +37,13 @@ {% endif %} + + {% if is_epub %} +

 

+ {% endif %} + {% block content %}{% endblock %} {% block footer %} From bee8a154332cad0e9612535802050821d1141a3f Mon Sep 17 00:00:00 2001 From: benoit74 Date: Thu, 12 Oct 2023 09:43:24 +0200 Subject: [PATCH 04/21] Fix format + lint issues --- zimui/package.json | 2 +- zimui/src/App.vue | 2 +- zimui/src/components/TopicCard.vue | 24 ++++++++++++++++++------ zimui/src/components/TopicHome.vue | 12 +++++++----- zimui/src/components/TopicSection.vue | 2 +- zimui/src/pages/HomePage.vue | 5 ++--- zimui/src/style.css | 2 -- 7 files changed, 30 insertions(+), 19 deletions(-) diff --git a/zimui/package.json b/zimui/package.json index 4986841..532d6de 100644 --- a/zimui/package.json +++ b/zimui/package.json @@ -9,7 +9,7 @@ "preview": "vite preview", "test": "vitest", "lint": "eslint --ignore-path .eslintignore --ext .js,.ts,.vue ./src", - "format": "prettier . --write" + "format": "prettier . --write" }, "dependencies": { "@codemirror/lang-javascript": "^6.1.6", diff --git a/zimui/src/App.vue b/zimui/src/App.vue index c7f184c..dac4ca5 100644 --- a/zimui/src/App.vue +++ b/zimui/src/App.vue @@ -17,7 +17,7 @@ } div { - font-family: "Lato"; + font-family: 'Lato'; } @font-face { diff --git a/zimui/src/components/TopicCard.vue b/zimui/src/components/TopicCard.vue index f971328..9cfb9a0 100644 --- a/zimui/src/components/TopicCard.vue +++ b/zimui/src/components/TopicCard.vue @@ -43,15 +43,21 @@ defineProps({
-
{{ data.title }}
- +
+ {{ data.title }} +
+ {{ data.description }}

- -  EXPLORE + +  EXPLORE

@@ -68,8 +74,14 @@ defineProps({
-
{{ data.title }}
- +
+ {{ data.title }} +
+ {{ data.description }}
diff --git a/zimui/src/components/TopicHome.vue b/zimui/src/components/TopicHome.vue index 9ad25c2..aba5372 100644 --- a/zimui/src/components/TopicHome.vue +++ b/zimui/src/components/TopicHome.vue @@ -1,7 +1,7 @@ @@ -90,9 +94,7 @@ const hasTopicAndNonTopicSection = (inputArray: any[]) => {

- - In this section: - + In this section:

diff --git a/zimui/src/components/TopicSection.vue b/zimui/src/components/TopicSection.vue index 6db3d37..d6be17f 100644 --- a/zimui/src/components/TopicSection.vue +++ b/zimui/src/components/TopicSection.vue @@ -19,7 +19,7 @@ const splitChunks = (inputArray: any[], perChunk: number) => { }, []) } -const limitCardsPerSections = (inputArray: any[], section_slug:string) => { +const limitCardsPerSections = (inputArray: any[], section_slug: string) => { const maxCardPerSection = 10 if (inputArray.length > maxCardPerSection) { const inputSliced = inputArray.slice(0, maxCardPerSection) diff --git a/zimui/src/pages/HomePage.vue b/zimui/src/pages/HomePage.vue index cc97f10..eb77ba0 100644 --- a/zimui/src/pages/HomePage.vue +++ b/zimui/src/pages/HomePage.vue @@ -1,6 +1,6 @@ @@ -179,4 +184,8 @@ const parentSlug = (): string | null => { background-color: rgba(18, 39, 42, 0.1); color: #12272a; } + +footer { + text-align: center; +} From 56dcad22b71e22082a72240d7af3d856ca875285 Mon Sep 17 00:00:00 2001 From: benoit74 Date: Sun, 22 Oct 2023 17:36:51 +0200 Subject: [PATCH 21/21] Typo fix + simplify code + add meaningful variable names --- zimui/src/components/TopicSection.vue | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/zimui/src/components/TopicSection.vue b/zimui/src/components/TopicSection.vue index dec3b46..4e1f949 100644 --- a/zimui/src/components/TopicSection.vue +++ b/zimui/src/components/TopicSection.vue @@ -16,7 +16,7 @@ const uid = ref('carroussel_' + instance?.uid) /** * Keep only the 10 first items of the input array. If more than 10 items - * where present in the list, a "magic/virtual" 11th item is created to indicate + * were present in the list, a "magic/virtual" 11th item is created to indicate * that more items are available. * @param subsections - array of items to limit * @param sectionSlug - amount of items per chunk @@ -52,10 +52,16 @@ const splitCardsListIntoChunks = ( cardsPerChunk: number, ): TopicCardData[][] => { return cards.reduce( - (all: TopicCardData[][], one: TopicCardData, i: number) => { - const ch = Math.floor(i / cardsPerChunk) - all[ch] = ([] as TopicCardData[]).concat(all[ch] || [], one) - return all + ( + cardsByChunks: TopicCardData[][], + oneCard: TopicCardData, + cardIndex: number, + ) => { + const chunkIndex = Math.floor(cardIndex / cardsPerChunk) + cardsByChunks[chunkIndex] = (cardsByChunks[chunkIndex] || []).concat( + oneCard, + ) + return cardsByChunks }, [], )